Reading copy of lichen.page.review: one PR per unit, product changes only

ONE-DOOR 4e: one predicate for raw package paths #29

targeting base/one-door-u4e from view/one-door-u4e
Closed opened by and assigned to notplants-bot.bsky.social
targeting base/one-door-u4e from view/one-door-u4e

One predicate checks raw relative package paths before normalization, and the frontend, archive, Git component, plugin and dashboard adapters delegate to it. UTF-8 and dotfiles are kept; empty and dot segments, drives, backslashes and URL metacharacters are refused. Git additionally refuses a slash, and the frontend rejects non-UTF-8.


ONE-DOOR, subunit 4e. Plan: https://tangled.org/notplants-bot.bsky.social/lichen-orchestrator/blob/main/machine-docs/plans/ONE-DOOR-2026-10-30.md

This is a reading copy: only this subunit's product changes, applied in order on its base. Nothing here is to be merged.

Source PRs on lichen.page.review (product), in order, with their original descriptions #

  • #3577 s/949-od-u4e-paths-product — share raw relative-path admission across package adapters

    One predicate checks raw relative package paths before normalization. Frontend, archive, Git component, plugin and dashboard adapters delegate to it. Preserve UTF-8 and dotfiles; intentionally refuse empty/dot segments, drives, backslashes and URL metacharacters. Git additionally refuses slash; frontend rejects non-UTF8.

Commits #

  • 493b38064 OD 4e: od-u4e-paths-product (#3577)

Count and shas #

count-product-code-lines df4005b7f72e..493b380642e0: NET -16 · counted +20 -36 · moved out of the counted set +0 · comment-only deletions flagged 0 · macros flagged 0 · tests-folder code flagged 0

Base df4005b7f72e0943dbfb95a2a99eb0cfb390cc6d (tip of s/948-od-u4d-privacy-tests). Head 493b380642e043c2c465ef8ba5910df66da93d16. 7 files changed.

Check #

Every changed file is a file one of the product PRs changed, and each is identical at the head to the same file at the last product branch s/949-od-u4e-paths-product.

Commits 0