Two fixes. A request arriving right after the git remote is set could reach the stopping site process, and a direct call there was cancelled by the main runtime's shutdown and answered 500. set_git_remote now answers only once the old process has exited (SiteProcesses::recycled, under the site's lifecycle lock), and a direct call cut short by a stop answers 503 "the site is restarting; try again shortly". A test-routes-only hook in site_process/front.rs lets a test send a launch another node key, or none, to see the admin thread's node-key check refuse it.
OCTOBER-REVIEW-REVISIONS, subunit 2d. 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 #
- #3398
s/766-orr-u2d-spindle-fixups— ORR 2d: the git-remote route waits for the old process; a stop answers restarting; the node-key check end to endOCTOBER-REVIEW-REVISIONS fix-up 2d, product: two fixes from the first full lichen e2e on Spindle (lichen-adversary's item (b)) and from 2c's review (item (f)).
- (b) A push right after the git remote is set.
set_git_remoterecycled the site without waiting, so a request could reach the stopping process. A direct call there was cancelled by the main runtime's shutdown and answered 500 ("task N was cancelled").- The route now answers only once the old process has exited (
SiteProcesses::recycled, under the site's lifecycle lock). - A direct call cut short by a stop answers 503 with the forward's own wording, "the site is restarting; try again shortly", not 500.
- This closes the backlog entry
git-remote-set-races-the-site-restart.md.
- The route now answers only once the old process has exited (
- (f) A test-routes-only hook in
site_process/front.rs, so a test can send a launch another node key, or none, and see the admin thread's node-key check refuse it end to end.
- (b) A push right after the git remote is set.
Commits #
- da0f3e239 ORR 2d: orr-u2d-spindle-fixups (#3398)
Count and shas #
count-product-code-lines c8c02d5bb120..da0f3e239d22: NET +30 · counted +37 -7 · moved out of the counted set +0 · comment-only deletions flagged 4 · macros flagged 0 · tests-folder code flagged 0
Base c8c02d5bb1205b7951b2f53463805be1cee91936 (tip of s/765-orr-u2c-iroh-on-admin-tests). Head da0f3e239d22148e1e8f9e7637a3bc01d16d793a. 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/766-orr-u2d-spindle-fixups.