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

OCTOBER-REVIEW-REVISIONS 6b: lichen-site's files move into folders by job #50

targeting base/october-review-revisions-u6b from view/october-review-revisions-u6b
Closed opened by and assigned to notplants-bot.bsky.social
targeting base/october-review-revisions-u6b from view/october-review-revisions-u6b

lichen-site's source files are moved into folders by job, with no change to behaviour: the root files go from 45 to 31.

  • sandbox/ (workers, children, git, tree, spawns, permissions), security/ (ssrf_guard, access, token_scope, symlink, credentials, deploy_key), runtime/, settings/cache.rs, publish/ (outcome, record, build, area, the last from admin_area/publish.rs) and ipc/ (link, identity, routes, site_owner, beside socket/).
  • preview.rs is folded in and site_process/session.rs merges into security/credentials.rs.
  • Confined git goes to sandbox/git.rs (the git module is feature-gated and ungated modules call it); the site tree goes to sandbox/tree.rs; the registry keeps its own file, runtime/registry.rs.
  • The git feature is gated once per module instead of line by line.

OCTOBER-REVIEW-REVISIONS, subunit 6b. Plan: https://tangled.org/notplants-bot.bsky.social/lichen-orchestrator/blob/main/machine-docs/plans/OCTOBER-REVIEW-REVISIONS-2026-10-28.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 #

  • #3415 s/784-orr-u6b-site-moves — ORR 6b: lichen-site's moves (sandbox/, security/, runtime/, publish/, ipc/; the git feature gated once)

    OCTOBER-REVIEW-REVISIONS unit 6b, product: lichen-site's moves, one PR for the crate (the operator, 2026-10-30). Moves only; renames are unit 7's.

    • Layout: the root files go from 45 to 31.
      • New folders and files:
        • sandbox/: workers.rs, children.rs, git.rs, tree.rs, spawns.rs, permissions.rs (B4);
        • security/: ssrf_guard.rs, access.rs, token_scope.rs, symlink.rs, credentials.rs, deploy_key.rs (B5);
        • runtime/ (D1);
        • settings/cache.rs;
        • publish/outcome.rs, record.rs, build.rs and area.rs, the last from admin_area/publish.rs (D2);
        • ipc/link.rs, identity.rs, routes.rs and site_owner.rs beside socket/ (A7).
      • Folded or merged: preview.rs is folded in (D3). site_process/session.rs merges into security/credentials.rs (A7).
    • The "or" placements:
      • confined git → sandbox/git.rs, since the git module is feature-gated and ungated modules call it;
      • the site tree → sandbox/tree.rs, since storage.rs is the allowance and weight;
      • the registry keeps its own file, runtime/registry.rs;
      • admin_area/publish.rs becomes publish/area.rs, not publish/publish.rs (module inception).
    • The git feature, gated once per module (D6): the gated halves of hub_repo and hub are with_git.rs submodules, declared and re-exported under one gate, so no caller's path changes. Gates go from 79 to 15 and from 35 to 23. publish/run.rs is gated once where it is declared (33 to 0). asks.rs keeps 2 gates (a constant and its array entry).
    • Kept where it was: site_process/probe.rs stays. It is test-routes code built into test servers, and moving it to tests/ hid it from the product scans (the route contract, the permission snapshot, the socket-pair, git-starter and kept-statics scans).
    • AST, on lichen-ci (per-sha, the checker built from ast-checker/): equal=True errors=0 for B4, D1, D2, D3, A7, the follow-up fix, the D6 move and the probe move-back.
      • B5's 3 errors were in shortcodes/tests/proxy.rs, a file no module loads. The follow-up commit updates it, and it checks equal.

Commits #

  • 746a08983 ORR 6b: orr-u6b-site-moves (#3415)

Count and shas #

count-product-code-lines 8b237e65b9a7..746a08983fb8: NET -3135 · counted +4876 -8011 · moved out of the counted set +0 · comment-only deletions flagged 41 · macros flagged 0 · tests-folder code flagged 0

Base 8b237e65b9a76de6db8734066ebc230391464509 (tip of s/783-orr-u6a-guard-no-hash-tests). Head 746a08983fb838135f21afab230730eca9e5d85a. 125 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/784-orr-u6b-site-moves.

Commits 0