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

OCTOBER-REVIEW-REVISIONS 5a: lichen-site's tests live beside their code, and lichen-server's re-exports go #46

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

lichen-site's tests move next to their code: its source files include them with #[cfg(test)] #[path = "tests/…"] mod tests;. All 24 pub use lichen_site::… re-exports in lichen-server are removed, and callers in lichen-server, lichen-cli and lichen-tauri name lichen-site directly. Test-only hooks become cfg(test) (hub_repo's staging count, staged/staging_takes, inbound::forget); the hooks lichen-server's remaining tests still drive stay on test-support. 22 wrapper items only the moved tests used are deleted.


OCTOBER-REVIEW-REVISIONS, subunit 5a. 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 #

  • #3406 s/774-orr-u5a-tests-home — ORR 5a: lichen-site's tests come home where a move can; the lichen_site re-exports go

    OCTOBER-REVIEW-REVISIONS unit 5a, product: lichen-site's tests come home where a move can bring them (C2). The product side of the move:

    • #[cfg(test)] #[path = "tests/…"] mod tests; includes in lichen-site's source files, for the tests that moved beside their code.
    • All 24 pub use lichen_site::… re-exports in lichen-server go, with those that passed lichen-site items on (git, publish, token, users, lib.rs's SiteRecord and HUB_CHECK). Callers in lichen-server, lichen-cli and lichen-tauri name lichen-site directly. The 23 pub(crate) forwarders in lichen-server's own src are outside the plan's 24 and stay.
    • What becomes cfg(test): hooks used only by tests that came home (hub_repo's staging count, staged/staging_takes, inbound::forget). hub_repo's for_tests is cfg(any(test, test-support)), since lichen-site's own tests now use it too.
    • What stays on test-support: the outbound, inbound, rewrite and publish-run hooks, is_opened, and each for_tests module, because lichen-server's remaining tests still drive them.
    • 22 wrapper items that only the moved tests used are removed.

Commits #

  • 0393774dc ORR 5a: orr-u5a-tests-home (#3406)

Count and shas #

count-product-code-lines e48510ca45df..0393774dc2af: NET -91 · counted +158 -249 · moved out of the counted set +0 · comment-only deletions flagged 2 · macros flagged 0 · tests-folder code flagged 0

Base e48510ca45df9d6c17c871f0b1e6d881a95b700c (tip of s/773-orr-u3c-invariant-tests). Head 0393774dc2af20bb22ea4aefd25a9d6228c803b3. 40 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/774-orr-u5a-tests-home.

Commits 0