Migrated from monorepo during Forgejo registry consolidation 2026-05-07
Find a file
Viktor Barzin e34640cc47
Some checks failed
Build and Push / lint-and-test (push) Has been cancelled
Build and Push / build (push) Has been cancelled
Build and Push / deploy (push) Has been cancelled
Build and Push / notify-failure (push) Has been cancelled
afk: wire the T3 adapter to the REAL orchestration contract + fix priority
The T3 dispatch adapter was written against a guessed wire shape that the test
fake accepted but the live t3-afk server 400s — so the previously-green suite did
NOT mean the loop was actually wired to T3. Reverse-engineered the real contract
from the v0.0.27 binary, verified it live against t3-afk (including multi-turn),
and rewrote the adapter to match:

- dispatch sends BARE commands keyed by `type` (not a `command` string), with
  client-minted threadId/commandId/messageId + createdAt; the server replies
  {sequence}, so dispatch returns the id it generated (never one parsed back).
- a thread lives in a project (workspaceRoot = the repo checkout the agent runs
  in), so dispatch ensures the repo's project (snapshot -> project.create iff
  absent) before thread.create + thread.turn.start.
- add send_turn() for follow-up turns on an existing thread — multi-turn context
  retention is verified live (turn 2 recalled turn 1).
- watcher reads thread liveness from latestTurn.state (completed->idle,
  running/in_progress/pending->running, errored->error), not a non-existent
  top-level `status` field.

Guard against recurrence: the test fake now REJECTS any command lacking a `type`
discriminator (the original bug fails loudly), plus an opt-in live smoke test
(tests/test_afk_t3_live.py) so "green" can mean "wired to T3".

Also align dispatch_policy to lower-priority-value-first (P0 before P1), matching
tracker conventions and Issue.priority's own docstring — it had deliberately
diverged to higher-first. Loop still ships DISABLED (kill switch on, empty
allowlist). 416 tests pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-15 22:27:00 +00:00
.github/workflows ci: move image build off-infra to GHA -> ghcr (ADR-0002) 2026-06-13 01:45:36 +00:00
.woodpecker ci: move image build off-infra to GHA -> ghcr (ADR-0002) 2026-06-13 01:45:36 +00:00
agents breakglass: in-cluster emergency-recovery UI for the devvm 2026-06-12 21:36:05 +00:00
app afk: wire the T3 adapter to the REAL orchestration contract + fix priority 2026-06-15 22:27:00 +00:00
beads Initial extraction from monorepo 2026-05-07 17:07:12 +00:00
docs docs: capture AFK implementation pipeline design + ADRs 0002-0004 2026-06-14 19:09:12 +00:00
frontend breakglass UI v2: attachable sessions (tmux model) + mobile-first redesign 2026-06-14 19:19:03 +00:00
tests afk: wire the T3 adapter to the REAL orchestration contract + fix priority 2026-06-15 22:27:00 +00:00
.dockerignore Initial extraction from monorepo 2026-05-07 17:07:12 +00:00
.gitignore breakglass: in-cluster emergency-recovery UI for the devvm 2026-06-12 21:36:05 +00:00
CONTEXT.md docs: capture breakglass design (CONTEXT glossary + ADR 0001) 2026-06-12 20:59:13 +00:00
docker-entrypoint-breakglass.sh breakglass: in-cluster emergency-recovery UI for the devvm 2026-06-12 21:36:05 +00:00
Dockerfile breakglass: in-cluster emergency-recovery UI for the devvm 2026-06-12 21:36:05 +00:00
LICENSE.txt Initial extraction from monorepo 2026-05-07 17:07:12 +00:00
requirements-dev.txt Initial extraction from monorepo 2026-05-07 17:07:12 +00:00
requirements.txt Initial extraction from monorepo 2026-05-07 17:07:12 +00:00