diff --git a/BURNIN.md b/BURNIN.md index 18f1587..61752d6 100644 --- a/BURNIN.md +++ b/BURNIN.md @@ -10,7 +10,7 @@ implementation work. ## Burn-in build identity -`6f9300b549362c4c5788f8845b56aaff9672d993` +`77a2b323fabcf080d7542061ae2d7b3c34eef5b7` Both halves must report exactly this revision before a task is created. Neither needs a credential now: the coordinator prints it in `docker logs orchestra-api` @@ -411,3 +411,78 @@ decisions none source for every task, so the three queued `correx` tasks have their external ids looked up in `kami/test-e2e`. A source should only reconcile the tasks that came from it. Likely why those three never lease. + +## Fix pass before run 2, 2026-08-26 23:50 + +Burn-in identity is now `77a2b32`. The coordinator is deployed at it. The worker +is staged at it, sha256 `2a850f2d1102d390...`, still needing root to install. + +### Closed + +- **F7, security.** `authz.RequireCredentials` refuses startup when a + full-control surface has no token, rather than logging it. + `ORCHESTRA_TUI_TOKEN` is set in the coordinator `.env`. Verified live: an + unauthenticated `POST` on the TUI surface now returns 401. Web is exempt + because `Sessions` makes its login mandatory. `ORCHESTRA_MCP_TOKEN`, + `ORCHESTRA_MAVEN_TOKEN` and `ORCHESTRA_AGENT_TOKEN` remain unset, so those + surfaces are still unauthenticated for reads and for their three request + endpoints. Bounded by capability, worth closing, not startup-fatal. +- **F5, lifecycle.** Every eligibility gate now records a `router.Rejection`, + exposed at `GET /v1/router/health` and reset per pass. No gate was weakened. + The live output immediately explained the three stuck `correx` tasks: + `worker has not declared project correx`. A queued task in retry backoff was + skipped before the candidate loop and recorded nothing at all, which is the + shape that hid the original case; it now reports + `retry backoff until