- First fixture dependency closure omitted top-level undici; --version failed before any service installation. Added the external roots from the repo's boundary list. @connectrpc/connect-node was not installed/used here and was skipped. All five final fixture --version checks succeeded.
- First handcrafted archive omitted a wrapper directory. The actual installer strips one directory level; validation then failed ENOENT. Retained failure in friction-archive-layout.log; repack.sh rebuilt checksum manifests with wrapper directories. Final fixtures.mjs also emits the correct layout. No production logic was changed.
- The initial scratch setup placed service.env in runtime/. Corrected to the production baseDir/service.env before a successful service run. setup.sh now has the corrected location.
- No old artifacts/accounts were reused. Exact-head build succeeded without changing tracked files or package.json. No tests repeated, browser work, forge comments/edits, commits, or pushes.
- Row3's final start was the sixth rapid unit start inside systemd's 300-second / five-start window. The manager refused it with Result=start-limit-hit; no app startup was attempted. row3-console.log preserves failure. row3-restart-console.log records Result, reset-failed for this unit only, and the resumed restart proof. The final runtime.py resets the counter before the independent row3 so a straight rerun avoids this cross-scenario harness limit. This does not change app logic, unit settings, or persisted service state.
