Context
agent-relay-code[bot] pushes pr-reviewer fixes to PR branches ~5 minutes after merge (observed on #244 → salvaged as #247, and now on #246). This issue parks the second orphan, 17ec640 ("chore: apply pr-reviewer fixes for #246" on the dead fix/245-ws-flake-hardening branch), per in-run triage: both changes are real but neither blocked the #244+#246+#247 release cut, and the run had converged to operator handoff.
Diff refs: git diff 26e838c 17ec640 (drop the .trajectories/* bookkeeping).
The two changes
(a) runCloudLogin callback: flush HTTP responses before signaling — operational caveat
cmd/relayfile-cli/main.go: the login callback handler writes its HTTP response (success page or error) and then signals tokenCh/errCh — the process can proceed/exit before the response is flushed, leaving the browser tab hanging or blank. The orphan adds an explicit http.NewResponseController(w).Flush() after every write.
⚠️ If relayfile login hangs a browser tab during a credential unblock, this fix is the first suspect/remedy. The login path demonstrably works today (#212), so this is a robustness fix, not a known active failure — but it touches the exact path operators walk to mint workspace credentials (e.g. for the staged rw_7ccfea89 residue sweep), so review it carefully rather than rubber-stamping. Per claude-1's ruling: this change must NOT ride into the imminent #244+#246+#247 release cut — it waits for normal review on its own schedule.
(b) workspace-seeder-tar.test.ts: mock ./client.js instead of @relayfile/sdk
Mocking the package self-import requires the SDK's own dist to exist (vitest fails collection with "Failed to resolve entry for package @relayfile/sdk" on a fresh checkout until npm run build has run — reproduced in-run on the #244 branch). Mocking the relative module removes the build-order dependency. Pure DX fix.
Process note
The bot's ~5-min post-merge push cadence means every merge in this pipeline should EXPECT an orphan push and triage it (stale vs actionable), not be surprised by it. The bot's in-run record: 4-for-4 real catches pre-merge plus two orphan encores, all substantive.
🤖 Generated with Claude Code
Context
agent-relay-code[bot]pushes pr-reviewer fixes to PR branches ~5 minutes after merge (observed on #244 → salvaged as #247, and now on #246). This issue parks the second orphan,17ec640("chore: apply pr-reviewer fixes for #246" on the deadfix/245-ws-flake-hardeningbranch), per in-run triage: both changes are real but neither blocked the #244+#246+#247 release cut, and the run had converged to operator handoff.Diff refs:
git diff 26e838c 17ec640(drop the.trajectories/*bookkeeping).The two changes
(a)
runCloudLogincallback: flush HTTP responses before signaling — operational caveatcmd/relayfile-cli/main.go: the login callback handler writes its HTTP response (success page or error) and then signalstokenCh/errCh— the process can proceed/exit before the response is flushed, leaving the browser tab hanging or blank. The orphan adds an explicithttp.NewResponseController(w).Flush()after every write.relayfile loginhangs a browser tab during a credential unblock, this fix is the first suspect/remedy. The login path demonstrably works today (#212), so this is a robustness fix, not a known active failure — but it touches the exact path operators walk to mint workspace credentials (e.g. for the staged rw_7ccfea89 residue sweep), so review it carefully rather than rubber-stamping. Per claude-1's ruling: this change must NOT ride into the imminent #244+#246+#247 release cut — it waits for normal review on its own schedule.(b)
workspace-seeder-tar.test.ts: mock./client.jsinstead of@relayfile/sdkMocking the package self-import requires the SDK's own
distto exist (vitest fails collection with "Failed to resolve entry for package @relayfile/sdk" on a fresh checkout untilnpm run buildhas run — reproduced in-run on the #244 branch). Mocking the relative module removes the build-order dependency. Pure DX fix.Process note
The bot's ~5-min post-merge push cadence means every merge in this pipeline should EXPECT an orphan push and triage it (stale vs actionable), not be surprised by it. The bot's in-run record: 4-for-4 real catches pre-merge plus two orphan encores, all substantive.
🤖 Generated with Claude Code