Repository navigation
Description
Destination
Run 4 has been dispatched against a seal written before the first dispatch, scored by
someone who did not run it, and written into the findings register. It ran on a chain
where no claim about its own work is believed unless it derives from the artefact that
claim names, and where no outward act happens before the claim that authorises it. It is
the first walk that ends in a merge, onto a long-lived integration branch, and the first
whose output the client has seen render.
The map is done when the answer is on record — not when the run finishes.
Notes
Domain. The plugin is unic-archon-dlc
in this repository; the Consumer is DXP-DesignSystem on Azure DevOps. The parent effort is
#373 — read its body for the destination this
one serves. Run 3's map is #456, closed.
This map carries execution, deliberately, the way #456 did. /wayfinder plans by default and its
tickets are decisions; an effort overrides that in these Notes, and this one does. Most of what gates
run 4 is work — six plugin fixes, a baseline measurement, a dispatch — and splitting the doing from the
deciding would leave the map unable to say what is left.
What run 3 settled, and what it opened
Run 3 answered the question runs 1 to 3 existed to ask: mechanisms reach the implementer where
documents did not. Four rules run 2 broke with the rule written in front of it were honoured once a
check stood in front of it. That line of enquiry is closed; nothing here reopens it.
What run 3 opened instead, unplanned: the review workflow cannot be trusted about what is fixed.
Two review iterations on a byte-identical commit, and the second did not mention six of the first
round's findings, so reconcile marked them fixed and post resolved their threads. Nothing checks
a fixed against the code. Eighteen findings about the instrument came out of that run, filed as
§ G of the findings register.
The destination's third condition
Two of the finish conditions are ordinary: run 4's three review iterations have run, and reconcile marks
nothing fixed that it cannot derive. The third is what makes this a destination rather than eight fixes:
A written list of every claim the chain makes about its own work, each carrying the artefact it
derives from, or marked as not derivable. The six we know are #482, #483, #487, #488, #489 and #439.
The list is what says whether there is a seventh. Without it we fix #482 and it returns next year
under another number.
The bench
Changed 2026-10-27 by the maintainer. The bench was two review iterations on a byte-identical
commit, with fixed: 0 known by construction. #482's
grilling decided that a fixed needs the finding's file to change between the two iterations' recorded
heads. On an identical head no file changes, so fixed: 0 now holds by construction and proves nothing
about #482. A byte-identical pair is also not how a review is used: the real flow is review, fix,
review again.
What stays true:
- A rerun on the same head is a real case, not a lab one. A
postthat fails halfway, a run killed by
a lost connection or an OS update, and a/pr-reviewstarted without a push all produce one. Run 4
tests it as a robustness case (below), not as the experiment. - The variance measurement still needs identical code. It belongs to
#501, on the frozen input below, separate from
run 4. It is the input spike(unic-archon-dlc): the review Box is not deterministic across iterations on identical code #485 needs, and it now also answers a question bug(unic-archon-dlc):reconcilemarks a finding fixed when the next review omits it, andpostresolves the thread #482 raised: how often a
review omits a finding whose file did not change. Each such omission becomes anunverifiedreply.
| Input | 08e2523 on archon/task-unic-dlc-build-1789577744739, confirmed on origin 2026-09-17 21:12 CEST |
| Procedure | run unic-dlc-pr-review on one pull request N times without changing a byte between iterations (#501) |
| Measures | the reviewer's variance; not the correctness of any verdict |
| Subject | the plugin |
Run 3 produced n=1 by accident: fixed: 6 · still_present: 7 · new: 4 where the truth was
fixed: 0 · still_present: 13. That is the "before" for #482.
The review iterations in run 4 cover four of the eight tickets. #482, #485, #486 and #487 are
unic-dlc-pr-review; #483, #488, #489 and #439 are unic-dlc-build, /tickets and /qa, and no replay
of the review Box can reach them. That is why run 4 is a full walk with the review iterations inside it.
Run 4's shape
seal (both legs, three arms, both the green and the red branch — written before the first dispatch)
↓
/specs → /tickets → /build (gates.build: afk) exercises #483 #488 #489 #439
↓
pull request opened against integration/dlc
↓
review iteration 1 (afk, posts)
review iteration 2 (afk, same head, killed during post) ← rerun after a complete run
rerun of iteration 2 (afk, same head, posts) ← rerun after a partial post
↓
one fix commit (see the rules below)
↓
review iteration 3 (afk, posts) ← fixed vs unverified; exercises #482 #486 #487
↓
the maintainer reads the posted threads on the pull request
↓
further fix commits, if any
↓
/qa merges to integration/dlc closes the grouping ticket, #439 criterion 18
↓
demo to Jessi on a shared screen, from a local Storybook
↓
integration/dlc → develop, an ordinary pull request, a human act outside the run
Rules this shape depends on, each of which is easy to lose:
- The head does not move from iteration 1 to the rerun of iteration 2. Iteration 2 is a rerun after
a complete run. Expected: nothing is resolved, and each finding it omits gets oneunverifiedreply. - Iteration 2 is killed on purpose during
post, afterposthas written at least one reply and
before it finishes. The run record says how and when. Expected from the rerun: it finishes whatpost
left undone and repeats no reply that already exists. - Exactly one fix commit lands before iteration 3. It changes the file of at least one iteration-1
finding and leaves the file of at least one other finding untouched. Without both, iteration 3 cannot
tellfixedfromunverified. The correct answer for each prior finding is derivable from
git diff --name-onlybetween the two recorded heads. - The names above are the map's, not the pull request's.
postwrites the summary, with its
iteration number, before the threads, so the killed iteration 2 keeps its number and the rerun is
numbered 3 on the pull request. The map's iteration 3 is iteration 4 there
(#482, rerun case). - The review gate runs
afk. Ahitlgate would let a human filter the findings before they post,
andreconcilewould then compare against what the human let through rather than what the Box
produced. The maintainer's review happens afterwards, on the pull request, as its sole human reviewer. gates.buildrunsafk. A pause inside/buildputs the maintainer's judgement in the middle of
what is being measured. The cost is recorded rather than hidden:build-pr-gategoes unexercised for
a second consecutive run (register § G row G14).- The seal is written before the first dispatch, and it covers both legs. Run 3's arm 3 was written
at 16:30 with/specsalready dispatched, and the register marks it a weakened seal. It also predicts
both branches: what holds if the build comes out green, and what holds if it comes out red. - A red verdict is a result, not an accident. bug(unic-archon-dlc): open-pr precedes its gate, and a config-value gate has no safe middle #439 criterion 4 makes a red build open no pull
request and end the runcancelled. If run 4 goes red, that is the demonstration that bug(unic-archon-dlc): open-pr precedes its gate, and a config-value gate has no safe middle #439 works. It
is scored, fixed, and re-dispatched as run 4b on the same frozen version. No escape hatch is built
into the gate this map exists to build.
The class rule, and why the eight tickets are not one class
| Class | Tickets | What it needs |
|---|---|---|
| Correct answer known a priori | #482 #483 #487 #488 #489 | no baseline; for #482, derivable from the diff between two recorded heads |
| Plumbing upstream of #482 | #486 | the dedup destroys cross-iteration continuity, which is how a finding vanishes. Run 3's instance was rescued by the semantic fallback, by luck |
| Treatment visible only against a distribution | #485 | a pre-fix baseline, or nobody can say whether variance fell or only moved |
Eight are preconditions of the dispatch: #425, #439, #482, #483, #486, #487, #488 and #505. Two land after the
run: #485's Standards-axis seeding, because reducing variance is a different subject from deriving a
claim; and #489's controls node, because run 3 ran the four positive controls by hand and the ritual
survives one more run.
Standing constraints
- Predictions are sealed before dispatch and scored afterwards by someone who did not run it. Held
for run 3 and stays. - The plugin is held at one version for the length of a run, so the run measures one version. The
precondition fixes land first, then the version is frozen, then the run is dispatched. - No dependency upgrade until phase 1 ships its first stable release. Archon is held; #425 gates any
upgrade. The hold was overtaken on one machine: the maintainer's macOS machine runs Archon
0.10.1, so "held at 0.8.0" is now a property of a machine, not of the project. Which Archon
version run 4 is dispatched on is a decision the grilling of #425 has to take,
because the Boxes carry no floor of their own. - The maintainer types the planning skills. An agent cannot invoke
/wayfinder,/grill-with-docs,
/to-specor/to-tickets— all four carrydisable-model-invocation, measured 2026-09-17. - Links, never bare ids, inherited from wayfinder: unic-archon-dlc is prose, and proven at a Consumer #373: in prose, a GitHub issue number or an ADO work item
always carries its URL.
Delivery, in two acts
Decided while charting, 2026-09-17. Runs 2 and 3 each wiped the previous run's artefacts so the next run
started from an empty develop (d09feff, 5e39db6). Run 4 merges instead, which would make every
future run start from a tree that carries a component — a different question from the one three runs
have asked.
So the merge is split. Act 1, inside run 4: /qa merges to integration/dlc, a long-lived branch.
develop stays as it is, comparability survives, and the branch is resettable. Act 2, outside run 4:
after the demo, if Jessi agrees, integration/dlc reaches develop through an ordinary pull request.
develop then receives the component by a human decision rather than as a side effect of a measurement.
Two costs, recorded so neither arrives as a surprise: a push --force with a reset on integration/dlc
destroys the baseline run 5 would use, so a reset is a decision and not a tidy-up; and integration/dlc
diverges from develop while act 2 waits, so a slow act 2 leaves run 5 building on a stale base.
The merge is a demo, not a code review
The maintainer and Jessi decide the merge together on a shared screen, from a locally-run Storybook.
Jessi does not review code she does not understand, and the Consumer has no CI to publish Storybook —
giving it one stays out of scope, on #373. So "Storybook runs locally and shows the component" is a
precondition of the demo, not a detail.
For the pull request itself the maintainer is the sole human reviewer.
Measured environment, as of 2026-09-17 21:10 CEST
Facts, not assumptions. Each is owed a re-measure before dispatch rather than a transcription — run 3's
lesson from #414 was that a transcribed measurement goes stale within hours.
- The Consumer runs Node 24.15.0.
nodeVersion: 24.20.0inpnpm-workspace.yamlis a dead pin under
pnpm 11 (it governs theenginescheck only) andpackage.jsoncarries nodevEngines.runtime.
Consumer PR 5876 replaced one dead pin with another. Any run 4 check that depends on the Node version
runs on 24.15.0. ADO 43102 is the Consumer's ticket for it. - Archon CLI v0.8.0 on the Omarchy machine, bun 1.4.2. The macOS machine runs Archon v0.10.1 and
bun 1.3.14, measured 2026-09-22 — two machines, two versions, and the measurements below were
taken on whichever one was in front of the session. One codebase row
_git/DXP-DesignSystem | repo | develop, pluginunic-archon-dlc0.28.0 at project scope,
.archon/clean, gatesbuild: afk/qa: hitl/pr-review: afk/explore: hitl. - A workflow node reaches no MCP server unless the node declares one. Measured on 0.10.1,
2026-09-22: a node with nomcp:field sees zeromcp__tools, while the same Claude binary in
the same directory outside a workflow sees them. See #425. A node with
mcp: .mcp.jsonsees 118 tools acrossatlassian,azure-devopsandfigma, authenticated.
Dispatching run 4 before this lands runs every Box with no tracker, no Confluence and no Figma,
silently, with the prompts still telling each node to use them. DXP-DesignSystemdevelop=7f8fedd. Run 3's branch (08e2523) and run 2's (b8bb0332) both
survive onorigin. PR 5881 is abandoned with its source branch intact and fifteen threads attached;
ADO reactivates an abandoned pull request, and a fresh one can be opened from the same branch with no
thread history.- Unsettled and it will bite a dispatch:
docs/agents/agent-tool-traps.mdand
.claude/skills/archon/references/cli-commands.mddisagree about what--branchdoes versus--from.
One is measured, the other documented, and nobody has run the dispatch that settles it. - Unverified: whether
SendMessagereaches an Archon-spawned worker. No worker has been live to
measure against.
How the tracker is organised, and why
Decided while charting, 2026-09-17, because the maintainer needs to read dependencies and groupings in
the tools rather than in prose.
Parenthood groups; dependency blocks. GitHub allows one parent per issue (POST /sub_issues takes
replace_parent, which is the proof) and up to eight levels of nesting. So a ticket cannot belong to a
stream and to a map at once, and the map wins: a stream with no children is closed, and a gate that
crosses the map's boundary is drawn as a native blocked_by edge, which the GitHub UI renders anyway.
#494 was closed by this charting: its seven
children moved to this map and its body was a pointer to register § G, which now lives in these Notes.
The Azure DevOps mirror, so the client sees this work. The client has no GitHub access and the daily
runs off ADO. This map is mirrored as two Features under Epic 42980, each holding one User Story per
ticket. Each Story carries title, a link to its GitHub issue, story points, hours and state — never a
copy of the body, so nothing can drift. The Features carry no points of their own; the board rolls the
Stories up, so nothing is counted twice. Tasks 43100, 43101 and 43102 stay where they are: they are
Consumer work, and two of them belong to #495.
Two Features rather than one, cut at the dispatch. 43124 holds everything that gates and
performs the run, and closes when the seal is scored. 43125 holds what the map places after
the run: act 2 of the delivery, and the two instrument stories that seed the next run. One Feature would
have stayed open months past the point where run 4's question was answered, which is the same reason
this map refused to hang off Feature 42975.
#439 moved. Its mirror 43036 left Feature 42975 for 43124. It was already a User
Story, so the move was a change of parent and nothing else. This settles the question this map's
#504 left open, and the answer is "it moves".
Hours are the maintainer's own time — reading, grilling, deciding, reviewing — not the agent's
elapsed time. Both estimates were made on 2026-09-21, before any grilling closed. Created 2026-09-21,
recut into two Features 2026-09-22.
43124 — DLC - Run 4: are the chain's claims about its own work derived from the work?
Twenty-four Stories, 114 points, 69 hours, read from Azure DevOps on 2026-10-28. The points and hours of #657, #652, #660, #658, #484, #492 and the follow-ups #662, #664, #666, #667 and #670 were proposed by unic-sdlc-orchestrator-8 and approved by the maintainer on 2026-10-28. The follow-ups are mirrored at needs-triage, because triage is work too, whatever its outcome. #484 and #492 are children of #495, not of this map, and sit here because they block #502. #439's points went from 13 to 8 in Azure DevOps, and #483's from 5 to 8 on 2026-10-28.
| GitHub | Azure DevOps | Points | Hours |
|---|---|---|---|
| #502 | 43126 | 13 | 8 |
| #425 | 43143 | 3 | 2 |
| #439 | 43036 | 8 | 6 |
| #482 | 43127 | 8 | 4 |
| #499 | 43128 | 8 | 5 |
| #483 | 43129 | 8 | 3 |
| #486 | 43130 | 5 | 3 |
| #501 | 43131 | 5 | 4 |
| #505 | 43132 | 5 | 3 |
| #487 | 43133 | 3 | 2 |
| #500 | 43134 | 3 | 3 |
| #488 | 43135 | 2 | 1 |
| #504 | 43136 | 2 | 1 |
| #657 | 43344 | 5 | 3 |
| #652 | 43360 | 5 | 2 |
| #660 | 43364 | 5 | 3 |
| #658 | 43357 | 5 | 3 |
| #484 | 43366 | 2 | 1 |
| #492 | 43367 | 3 | 2 |
| #662 | 43373 | 5 | 3 |
| #664 | 43374 | 2 | 1 |
| #666 | 43375 | 3 | 2 |
| #667 | 43376 | 3 | 2 |
| #670 | 43377 | 3 | 2 |
43125 — DLC - Deliver the component, and what run 4 leaves open.
Four Stories, 21 points, 10 hours.
| GitHub | Azure DevOps | Points | Hours |
|---|---|---|---|
| #489 | 43137 | 8 | 4 |
| #485 | 43138 | 5 | 2 |
| #379 | 43139 | 5 | 2 |
| #503 | 43140 | 3 | 2 |
Every Azure DevOps Story title starts with DLC #NNN -, NNN the GitHub issue, and each GitHub blocked_by edge between two mirrored tickets is a Predecessor link (2026-10-28). No tracker expresses the GitHub-to-ADO edge itself. It is hand-maintained, and that residue is the price of two
trackers, not a defect to fix here.
Ticket order, and what the frontier offers first
The frontier is the open, unassigned, unblocked children, and first in map order wins. That order:
- #425 — a workflow node reaches no MCP server unless it declares one. Measured
on Archon 0.10.1 on 2026-09-22, after this map was charted. Every Box routes its tracker, docs and
design access through an MCP server, so a run dispatched before this lands produces artefacts the
seal would score as the chain's claims about work it did without any of them. The fix is one line
per node and the file it points at is already tracked in the Consumer; what is not decided is who
owns that file and what a Box does in a repository that has none. This is the first grilling
under the two-ticket shape: the decision ticket closes on approval and the implementation is
filed as its own ticket with its own Azure DevOps Story. - #439 — re-grilled before anything is
dispatched from it. It has carriedready-for-agentsince 2026-09-04 and has waited twelve days.
That label means its criteria were settled, not that it may be dispatched, and the rootAGENTS.md
says a ticket that has sat more than a few days is re-grilled rather than trusted. Nineteen criteria,
written against the tree #430 left. - #499 — the claims list, because the seal
cannot predict over a set nobody has written down. - #501 — the variance baseline, which runs
in parallel with everything else and blocks only bug(unic-archon-dlc):synthesizededupes before identity is assigned and merged across two files against its own rule #486. - #505 — no Box can target a base
branch that is not the trunk, so act 1 has nowhere to merge. Measured after this map was charted;
it editsunic-dlc-build.yaml, which bug(unic-archon-dlc): open-pr precedes its gate, and a config-value gate has no safe middle #439 edits too, so whichever is grilled second says which
lands first. - #482, then bug(unic-archon-dlc):
goals-checkcounts, the precheck reads, and only the counter reachesevidence.json#483, bug(unic-archon-dlc): the summary's § "Checks this review did not run" is false when a sub-agent ran a declared command #487, bug(unic-archon-dlc):report.mdsays "nothing was flaky" fromverification's single final run #488 — the four
remaining precondition fixes. - #504 — the ADO mirror, whenever; it
blocks nothing and the client reads the board daily.
Then #500 (the seal), then #502 (the dispatch), then #503 (the demo and act 2), then #379, #485 and #489.
The tree, as it stands
#373 wayfinder: unic-archon-dlc is prose, and proven at the Consumer
├── #456 run 3's map (closed, adopted retroactively)
├── #498 THIS MAP
│ ├── #425 nodes lose their MCP servers on 0.9+ precondition · grill first
│ ├── #439 open-pr precedes its gate precondition · re-grill
│ ├── #482 reconcile marks fixed on omission precondition
│ ├── #483 goals-check counts, the precheck reads precondition
│ ├── #486 synthesize dedupes before identity precondition · blocked by #501
│ ├── #487 "this review executed none of them" precondition
│ ├── #488 "nothing was flaky" precondition
│ ├── #505 no Box can target a non-trunk base precondition
│ ├── #499 the claims list
│ ├── #500 the seal blocked by #499
│ ├── #501 the variance baseline parallel
│ ├── #502 dispatch run 4 and score it blocked by 11
│ ├── #503 demo to Jessi, act 2 blocked by #502
│ ├── #504 the ADO mirror
│ ├── #379 land a rendering component blocked by #503
│ ├── #485 seed the Standards axis after the run · blocked by #502
│ └── #489 a controls node in /build after the run · blocked by #502
├── #382 #384 #385 #408
└── (16 closed)
#495 stream: Archon and the machine underneath out of scope, a candidate map of its own
├── #484 runtime: bun, undeclared → blocks #502
├── #492 folder project swallows child clones → blocks #502
└── #490 #491 #493
Skills
/grill-with-docs for a ticket whose criteria are not settled — typed by the maintainer, never
/grilling alone, which has nowhere for a decision to land. /writing-for-agents for anything an agent
reads. /code-review before any pull request, and its four reads run twice: once on the criteria, once
on the diff. /domain-modeling when a term is in play.
Two plugin conventions a ticket on this map will trip over. The ADR convention since
#452 is inline revision —
Accepted (YYYY-MM-DD, revised YYYY-MM-DD), no amendment block
(apps/claude-code/unic-archon-dlc/docs/adr/README.md:18). And
#460 has not landed, so the baton is still
issues.json across 22 plugin files; #439 criterion 13 turns it into an object without renaming it.
A measured tracker trap. issue_dependencies_summary.blocked_by, which the frontier query in
docs/agents/issue-tracker.md compares against 0, lags a dependency write by seconds. Measured
2026-09-17 23:02 CEST: immediately after a tenth blocker was added to #502 the summary read 9 while
GET /dependencies/blocked_by listed 10, and it agreed on a later read. A session that wires edges and
then runs the frontier query in the same breath can be offered a blocked ticket. Read the list endpoint
when it matters.
Every ticket carries a session opener — a comment titled "How to start this session". When a ticket
carries more than one, the newest is authoritative and older ones are marked stale. Read it before
starting; it is not a restatement of the body.
Start a session with /wayfinder <this map> to take the next frontier ticket, or
/wayfinder <this map> #<n> to take a named one. One ticket per session, except research, which runs in
parallel.
Decisions so far
-
Act 1 keeps
integration/dlc; No Box can target a base branch that is not the trunk, so run 4 cannot merge to integration/dlc #505 stays a precondition — decided by the maintainer 2026-09-17 23:35 CEST, "mantener, aunque sea una excepción, al menos de momento": the two-act split stands, comparability with runs 1 to 3 is the reason, and No Box can target a base branch that is not the trunk, so run 4 cannot merge to integration/dlc #505 is grilled as the seventh precondition of #502. Recorded as an exception for now; nothing on the map depends on it becoming permanent. The trade-off it closed is in this body's history. -
Can an Archon node reach a plugin agent, command or skill?: yes, on v0.10.1, once the plugin is installed on the machine. An agent reaches a node by
subagent_typewith no declaration. A command reaches a node as the whole prompt, or throughskills:. A skill reaches a node only throughskills:.settingSources: [project]removes user-scope plugins. Committed settings alone reach nothing. -
The pr-review summary's § "Checks this review did not run" is false when a sub-agent ran a declared command: keep the instruction and make the block true to it. It no longer claims nothing ran. A sub-agent's reported check is attributed, named by need, and kept out of "What's good". ADR-0037 §8 is amended. Implemented by the pr-review summary states what the Box instructed.
-
Archon 0.9.0 stops workflow nodes inheriting MCP servers: no Box-level fix inside Archon, because the measured facts on 0.13.0 rule it out. The maintainer decided to leave Archon for a new plugin: Does the DLC stay on Archon, or move to a new plugin that does not run on it?. Run 4 is on hold until Is run 4 still worth running on Archon, now that the plugin is being replaced? closes.
-
Is run 4 still worth running on Archon, now that the plugin is being replaced?: no. Run 4 is dropped, Dispatch run 4, end it in a merge, and score the seal #502 and this map close,
unic-archon-dlcis frozen, and every open child closes as superseded. The claim-derivation principle and a list of the failures that broke it go to Product spec for the DLC successor plugin #687 as the successor's requirement.
(what was decided before this map was charted is in #373
and #456, each § Decisions so far)
Not yet specified
- Run 5, as a contingency only. Run 4 ends in a merge, so the delivery question Land a rendering component on develop, so the client sees the walk's output #379 carried is
answered inside it. Run 5 exists if run 4's output turns out not to be mergeable after the demo, and
its question would then be what delivers instead. Nothing is charted for it until that is known. - When act 2 happens, and what divergence it can tolerate.
integration/dlcdrifts fromdevelop
while the demo waits. Nobody has said how long is too long, and the answer probably depends on what
else lands ondevelopin the meantime. - Whether
build-pr-gateis ever exercised. Two consecutive runs will have skipped it by running
afk. A gate nothing has ever fired is indistinguishable from a gate that cannot fire — the same
shape fix(unic-archon-dlc): /specs skips the grilling its config requires and reports halts that never fired #441 shipped and bug(unic-archon-dlc): open-pr precedes its gate, and a config-value gate has no safe middle #439 criterion 7 caught. It is not run 4's subject and it is not nothing. - Whether
/qa's three unrecorded node outputs matter — #458.
/qais on run 4's path for the first time, because run 4 merges. Ruled outside run 3 when/qawas
not on the path; that reason has expired and nobody has looked again. - Whether the three upstream-Archon tickets are filed on Archon's own tracker — bug(unic-archon-dlc, upstream: Archon):
archon complete <branch> --forcedeletes the branch onorigin, silently #491, bug(unic-archon-dlc, upstream: Archon): a folder project registered on a parent directory swallows every child clone, anddoctorpasses it #492, bug(unic-archon-dlc, upstream: Archon): a loop node reports its last iteration's duration as the node's #493. The
maintainer's call, as with #425. Two of them
gate this map's dispatch regardless of where they are filed.
Out of scope
/qa's and Archon's machine defects — #495
and its five children. None of them is about a verdict: they are the workflow runner and the machine.
bug(unic-archon-dlc): two Box nodes declareruntime: bunand nothing declares the dependency #484 and bug(unic-archon-dlc, upstream: Archon): a folder project registered on a parent directory swallows every child clone, anddoctorpasses it #492 stay out as tickets and come back asblocked_byedges on the dispatch, because they are
gates on a dispatch rather than members of this effort.- Giving
DXP-DesignSystema pipeline, or publishing Storybook. It has no CI of any kind; the demo is
a local Storybook on a shared screen, by design. Recorded on wayfinder: unic-archon-dlc is prose, and proven at a Consumer #373, not this map's job. - Whether mechanisms carry knowledge where documents did not. Answered by run 3, scored in the
register § "The sealed prediction, scored — run 3". Nothing here reopens it. - Reducing the reviewer's variance. spike(unic-archon-dlc): the review Box is not deterministic across iterations on identical code #485's Standards-axis seeding is a treatment for a different
subject and lands after this run. The pre-fix baseline is taken now because it stops being observable
once bug(unic-archon-dlc):synthesizededupes before identity is assigned and merged across two files against its own rule #486 changessynthesize.
Activity
reconcilemarks a finding fixed when the next review omits it, andpostresolves the thread #482goals-checkcounts, the precheck reads, and only the counter reachesevidence.json#483synthesizededupes before identity is assigned and merged across two files against its own rule #486report.mdsays "nothing was flaky" fromverification's single final run #488controlsnode in/buildwritesinertorcan-failper check intoevidence.json#48910 remaining items
orioltf commentedon Oct 21, 2026
/afk-looprun report for #498, 2026-10-21. Theafk-498session ran it, with merge authority granted in its instructions ("merge authorised").Merged
c97fbac4as merge commit579b4ef4ondevelop, and releasedunic-archon-dlc0.31.0. The three Boxes now read the run's base from Archon's$BASE_BRANCH. The base-branch decision is ADR-0039, renumbered from 0038 because PR #649 landed first and took 0038 and 0.30.0. No Box can target a base branch that is not the trunk, so run 4 cannot merge to integration/dlc #505 is closed and labelledclosed. The worktree, the local branch and the remote branch are removed.How it got there:
ARCHON_HOME(first comment). Sub-item 4 was re-run on the final Box after the round 2 fixes (second comment). The installed Archon still reports v0.10.1./pr-reviewfell back toHEAD~1without a word and reported the review clean.prepnow fetches the target, and a newguard-no-diff-basenode cancels the run when the base does not resolve. The/pr-reviewpipeline diagram gained that node, and its two PNGs were exported again. Round 1 also fixed six Mediums: the stub scan used a local ref only;/setup's base was wrong on Archon below 0.12; the approval messages named no branch; a bootstrap comment made a false claim about the worktree; andverify-pr-basefailed open on a tracker error.prepblocks on a failed tracker query,preplogs a failed fetch and the ref that resolved, the cancel message gives advice that works in each case, and/build's precheck fetches the base. It also corrected doc claims about Archon 0.12 and about/setup's "Verified" label.git fetch origin <base>writes onlyFETCH_HEAD. Both fetches now use an explicit+refs/heads/<b>:refs/remotes/origin/<b>refspec, which the orchestrator checked with a--single-branchclone. The thread is answered and resolved.c97fbac4,license/claincluded.Stopped
The run stopped with an empty queue. No open, unassigned and unblocked child of #498 carries
ready-for-agent.Tickets left as they are
ready-for-agent, assigned toorioltf. Merging No Box can target a base branch that is not the trunk, so run 4 cannot merge to integration/dlc #505 removed its last open blocker, so it can be dispatched now. It is assigned, so the loop did not take it.ready-for-agent, assigned toorioltf, with one open blocker./buildopens its PR against--base, and that/qarefuses a mismatched base./specsand/ticketsstill hard-codedevelop. The guard's cancel path andprep's failed-query path are unmeasured too, because a throwaway repository has no PR. ADR-0039 says so.Follow-ups filed
Both are sub-issues of #498 at
needs-triage. Each carries a nativeblocked_byon #505, which is now closed./qaends green without merging when no open PR exists. This behaviour predates PR feat(unic-archon-dlc): read the run's base branch from $BASE_BRANCH #650./setupassumes that a trunk outside Gitflow is calledmain.Waiting on a human
$BASE_BRANCHwhen the tracker returns no PR. PR feat(unic-archon-dlc): read the run's base branch from $BASE_BRANCH #650 now cancels the run when the tracker query fails, and falls back to$BASE_BRANCHonly when a query confirms that no PR exists, or when the tracker contract names no PR tool. Without this, an auth error or a timeout would silently review the wrong diff. ADR-0039 decision 3 and the 0.31.0 changelog record the choice. If it is wrong, revert it in a follow-up./afk-looptakes it, or keep it for yourself./qaends green on paths where nothing merged #652 and bug(unic-archon-dlc):/setupassumes a non-Gitflow trunk is calledmain#653.orioltf commentedon Oct 27, 2026
Map changed: run 4 no longer runs a byte-identical bench (maintainer, 2026-10-27, written by
unic-sdlc-orchestrator-7).#482's grilling decided that a
fixedneeds the finding's file to change between the two iterations' recorded heads. Two iterations on one head now givefixed: 0by construction, so the bench proved nothing about #482. A byte-identical pair is also not how a review is used.What changed in the body:
post. A rerun on the same head follows. Then one fix commit, then iteration 3.post, and exactly one fix commit changes the file of one finding and leaves another finding's file untouched.A rerun on the same head stays in run 4 as a robustness case. A lost connection, an OS update or a
/pr-reviewstarted without a push all produce one.unverifiedfinding has no way out of the ledger #662/qareports failedresolvedwrites only on the console #664/buildthat cannot open its pull request endscompleted#666orioltf commentedon Oct 28, 2026
/afk-loop 498report, run of 2026-10-28 (sessionafk-loop-498-20261028, merge authority granted for this run)Merged
2f6f6236,unic-archon-dlc0.32.0. Two review rounds and a final review of the last fixes. The maintainer confirmed in session that a retired thread with a fixed reply marker stays open after a run killed between the reply and the status change.d6a9d338,unic-archon-dlc0.33.0. The criterion 0 probe on Archon 0.12.1 passed all three items, and bug(unic-archon-dlc): open-pr precedes its gate, and a config-value gate has no safe middle #439 cites it.Both tickets are
CLOSEDwith the labelclosed. Their worktrees and branches are removed.Stopped
The run stopped at #439, on the stop condition "a finding shows that the ticket's criteria are wrong or contradict each other". Criterion 6 asks for one node that commits and pushes, and for a failed push to end the run
failed. A prompt node cannot fail by reporting, so the worker used two nodes, and the maintainer has not answered whether that is accepted.PR #665 is ready at
0e3a3084: two review rounds and a final review of the last fixes, CI green, the leak check clean,MERGEABLE, no open thread. The question and the merge command are on the PR.State as the run leaves it
resolvedready-for-agentready-for-agentFollow-up tickets filed
All are sub-issues of #498 at
needs-triage:unverifiedfinding has no way out of the ledger./qareports failedresolvedwrites only on the console./buildthat cannot open its pull request endscompleted.A comment on #502 lists the branches of the new
/pr-reviewbehaviour that run 4 does not exercise.Waits on a human
/qaand/pr-reviewin a Consumer before thedeveloptomainrelease. Nothing in this repository proves the new prompts against a real tracker.unverifiedfinding has no way out of the ledger #662, bug(unic-archon-dlc):/qareports failedresolvedwrites only on the console #664 and bug(unic-archon-dlc): a green/buildthat cannot open its pull request endscompleted#666./afk-loop 498for bug(unic-archon-dlc): the pr-review summary states what the Box instructed, and attributes a check a sub-agent reports #660 once feat(unic-archon-dlc)!: open no pull request on a verdict other than pass #665 is settled.Notes on the run
orioltf commentedon Oct 28, 2026
/afk-loop 498report, second run of 2026-10-28 (sessionafk-loop-498-20261028, merge authority granted for this run)This run picked up where the first run's report stopped, at #439. It ended on an empty queue.
Merged
c6743c0a,unic-archon-dlc0.34.0. The maintainer accepted the two-node shape and merged it. This run removed the worktree and both branches.799ae169,unic-archon-dlc0.35.0. Two review rounds and a final review of the last fixes.evidencereads the four pre-check fields throughwith:, so no pre-check text is parsed as code. A hard finding makes the verdictfail, a blocked or half review makes itunresolved, and/buildnow needs Archon 0.10.0 or later.f83bbf61,unic-archon-dlc0.36.0. Three review rounds and a final review of the last fixes. The PR goes beyond #487's criteria in five ways, listed in its body under "Beyond bug(unic-archon-dlc): the summary's § "Checks this review did not run" is false when a sub-agent ran a declared command #487's criteria". The maintainer held the merge to weigh that scope,unic-sdlc-orchestrator-8recommended accepting it, and the maintainer then approved the merge.All three tickets are
CLOSEDwith the labelclosed, and their worktrees and branches are removed.Stopped
Nothing stopped. The queue is empty: no open, unassigned
ready-for-agentchild of #498 remains. #379 isready-for-agentbut has an assignee, so the loop does not take it.Follow-up tickets filed
Commands I ransection reads as one that ran no check.p3,needs-triage, a sub-issue of wayfinder: run 4 — are the chain's claims about its own work derived from the work? #498, blocked by bug(unic-archon-dlc): the pr-review summary states what the Box instructed, and attributes a check a sub-agent reports #660.The first run filed #662, #664 and #666. They are still at
needs-triage.Waits on a human
/buildand/pr-reviewin a Consumer before thedeveloptomainrelease. Nothing in this repository proves the changes from PR feat(unic-archon-dlc): gate the build verdict on the pre-check #668 and PR fix(unic-archon-dlc): attribute reported checks in the pr-review summary #669 against a real tracker.unverifiedfinding has no way out of the ledger #662, bug(unic-archon-dlc):/qareports failedresolvedwrites only on the console #664, bug(unic-archon-dlc): a green/buildthat cannot open its pull request endscompleted#666, fix(unic-archon-dlc): /build pushes a branch that lacks a source file commit-session left out #667 and bug(unic-archon-dlc): a review sub-agent that omits its Commands I ran section reads as one that ran no check #670.license/clastatus stopped arriving after 09:44Z. GitHub delivered everypull_requestevent to the CLA assistant webhook with a success response, and the status for PR fix(unic-archon-dlc): attribute reported checks in the pr-review summary #669's head arrived only at 10:39Z. The webhook acts through one person's account, so the CLA check depends on that account's token. A comment@cla-assistant checkcannot trigger it, because the webhook does not subscribe to comment events.Notes on the run
review.jsonon every stop, caused round 3's High: a stopped review published as clean. The round 3 fix closed it, and the final review confirmed that.ARCHON_HOMEinside its probe directory.orioltf commentedon Oct 30, 2026
Map closed, 2026-10-30. #678's resolution drops run 4, and the maintainer approved it. Every open child is closed as superseded, with the
rejectedlabel and a comment that gives its reason. Their Azure DevOps mirrors are Removed. The destination's principle becomes a requirement of the successor plugin and goes to #687, with #499's claims table and the lines the resolution lists. § Not yet specified lapses with the map.—
unic-sdlc-orchestrator-9