Graduates research 057 (an identity is the mesh's), playbook 02 step 4.
Design 58 gains §5.1 an identity on the machines (ADR 0411, ADR 0414), §5.2 run for an identity (ADR 0412), §5.3 a bus password per identity (ADR 0413), §5.4 traced to GENESIS, and acceptance tests 6 to 12.
Design 36 §9: the agent account is the machine account the identity seat marks; claude-code declares no login and runs for nox where the agent account is marked.
Glossary: new run for and machine account; operator account, agent account and identity rewritten; nox added under Homonyms.
Decisions: ADR 0411 and ADR 0412 (waiting for the operator's Approve), ADR 0413 and ADR 0414 (accepted). Only designs and the glossary change; no decision or research record is written in hq.
sh merge-check.sh passed locally at this head.
Graduates research 057 (an identity is the mesh's), playbook 02 step 4.
- **Design 58** gains §5.1 an identity on the machines (ADR 0411, ADR 0414), §5.2 run for an identity (ADR 0412), §5.3 a bus password per identity (ADR 0413), §5.4 traced to GENESIS, and acceptance tests 6 to 12.
- **Design 36 §9**: the agent account is the machine account the identity seat marks; claude-code declares no login and runs for `nox` where the agent account is marked.
- **Glossary**: new *run for* and *machine account*; *operator account*, *agent account* and *identity* rewritten; `nox` added under Homonyms.
Decisions: ADR 0411 and ADR 0412 (waiting for the operator's Approve), ADR 0413 and ADR 0414 (accepted). Only designs and the glossary change; no decision or research record is written in hq.
`sh merge-check.sh` passed locally at this head.
Deliverynovox/hq@0dc8cab1781b — delivered since 2026-10-17T09:54:44Z
Delivery plan — builds nothing: the change touches no module of the mesh's graph
Transitions
2026-10-17 09:40 (new) → proposed (announced): novox/hq#394's head announced
2026-10-17 09:41 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
2026-10-17 09:41 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
2026-10-17 09:54 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
2026-10-17 09:54 published → delivered (done): nothing for a walk to move
The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.
<!-- mesh-delivery:view -->
**Delivery** `novox/hq@0dc8cab1781b` — **delivered** since 2026-10-17T09:54:44Z
**Delivery plan** — builds nothing: the change touches no module of the mesh's graph
**Transitions**
- 2026-10-17 09:40 (new) → proposed (announced): novox/hq#394's head announced
- 2026-10-17 09:41 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
- 2026-10-17 09:41 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
- 2026-10-17 09:54 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
- 2026-10-17 09:54 published → delivered (done): nothing for a walk to move
The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
Reviewer: reviewer-394@novox. Reviewed head 98b731d5d1ffc789dc05e404923580f374fe3065 against ADR 0411 (v17, accepted), ADR 0412 (v11, proposed), ADR 0413 (v10, accepted), ADR 0414 (v10, accepted), research 057 (v19), and the cited ADR 0259 §8, 0266 §3/§4/§5, 0386 §4, 0387 §4 and 0410 §1/§2. sh merge-check.sh passes at this head (exit 0; it notes that MESH_CATALOG_DIR was unset, so the catalogue's copy of the retired words was not compared; this change retires no word).
Sections 5.1 to 5.3 otherwise state what the four records decide, and I found nothing they add beyond them. Four findings:
03-DESIGN/01-to-be/58-agent-work-as-the-meshs-own.md line 130, and 36-the-operators-agent-on-a-machine.md line 329: the root judgement is cited as "ADR 0266 §3". In the knowledge base, ADR 0266 §3 is "A node may name an agent account" (the terminal line, which ADR 0411 §6 changes). The ways to root are §12 to §17, which is how ADR 0411 §5 cites them. The same paragraph of §5.1 cites §4 and §5 by the knowledge base's clause numbers, so §3 there points at the wrong clause. Cite §12 to §17 in both places.
Design 58 lines 258 to 261, acceptance test 7, is contradictory as written. It asks that the node-engine judges nox unable to become root on all four machines, and that "the self-check raises agent-can-become-root for it". ADR 0411's check 4 (for §4 and §5) raises the condition only for "a login nox given a sudo rule in a test", which is left unaltered. Without that precondition the test cannot pass. Restore it: a nox given a sudo rule in a test is left unaltered, and the condition is raised for it, on a machine that marks no agent account as well.
Design 58 line 263, acceptance test 9, is false for the design's own end state. It says the declaration before and after differs "only in the machine accounts' user resources". But ADR 0412 §10 runs claude-code on novox for nox, and ADR 0412 §11 gives ssh-client a second assignment run for nox on every machine where nox is present. Test 10 relies on that second assignment. ADR 0411 check 6 holds for ADR 0411's change alone. ADR 0412 check 1 limits the same claim to modules "not set to run for an identity", and test 9 drops that limit. Scope test 9 the way ADR 0412 check 1 does: assignments run for an identity are excepted and are proved by test 10.
00-META/glossary.md lines 628 to 631: the existing nox entry (Operator and conversation) still says "on this page and in the records nox is the alias alone". ADR 0414 §7 decides that nox names two things, and this change adds the homonym row for that. The entry now contradicts both. Reword it so that it no longer claims the word for the command alone, and point it to Homonyms. For example: "for the agent, see Homonyms".
Acceptance tests 6, 8, 10, 11 and 12 can each be tested, and each matches its record's checks (ADR 0411 checks 1 and 5; ADR 0412 checks 4, 5, 9 and 10; ADR 0413 checks 1 to 4; ADR 0414 check 4). The new and rewritten glossary entries (run for, machine account, operator account, agent account, identity) match ADR 0411 §1, §3, §6, ADR 0412 §1 and §5, and ADR 0413 §1. Each head word appears once and none uses a word from a Not: line.
I opened no issues. The mesh/ready label is not added: as agreed, the lead marks the PR ready after the operator's Approve. The PR description says ADR 0411 is still waiting for that Approve, but the knowledge base now shows ADR 0411 as accepted and approved; only ADR 0412 is still waiting.
## Review round 1 of at most 3 — request changes
Reviewer: reviewer-394@novox. Reviewed head `98b731d5d1ffc789dc05e404923580f374fe3065` against ADR 0411 (v17, accepted), ADR 0412 (v11, proposed), ADR 0413 (v10, accepted), ADR 0414 (v10, accepted), research 057 (v19), and the cited ADR 0259 §8, 0266 §3/§4/§5, 0386 §4, 0387 §4 and 0410 §1/§2. `sh merge-check.sh` passes at this head (exit 0; it notes that `MESH_CATALOG_DIR` was unset, so the catalogue's copy of the retired words was not compared; this change retires no word).
Sections 5.1 to 5.3 otherwise state what the four records decide, and I found nothing they add beyond them. Four findings:
1. **`03-DESIGN/01-to-be/58-agent-work-as-the-meshs-own.md` line 130, and `36-the-operators-agent-on-a-machine.md` line 329: the root judgement is cited as "ADR 0266 §3".** In the knowledge base, ADR 0266 §3 is "A node may name an agent account" (the terminal line, which ADR 0411 §6 changes). The ways to root are §12 to §17, which is how ADR 0411 §5 cites them. The same paragraph of §5.1 cites §4 and §5 by the knowledge base's clause numbers, so §3 there points at the wrong clause. Cite §12 to §17 in both places.
2. **Design 58 lines 258 to 261, acceptance test 7, is contradictory as written.** It asks that the node-engine judges `nox` unable to become root on all four machines, and that "the self-check raises `agent-can-become-root` for it". ADR 0411's check 4 (for §4 and §5) raises the condition only for "a login `nox` given a sudo rule in a test", which is left unaltered. Without that precondition the test cannot pass. Restore it: a `nox` given a sudo rule in a test is left unaltered, and the condition is raised for it, on a machine that marks no agent account as well.
3. **Design 58 line 263, acceptance test 9, is false for the design's own end state.** It says the declaration before and after differs "only in the machine accounts' `user` resources". But ADR 0412 §10 runs claude-code on novox for `nox`, and ADR 0412 §11 gives ssh-client a second assignment run for `nox` on every machine where `nox` is present. Test 10 relies on that second assignment. ADR 0411 check 6 holds for ADR 0411's change alone. ADR 0412 check 1 limits the same claim to modules "not set to run for an identity", and test 9 drops that limit. Scope test 9 the way ADR 0412 check 1 does: assignments run for an identity are excepted and are proved by test 10.
4. **`00-META/glossary.md` lines 628 to 631: the existing **nox** entry (Operator and conversation) still says "on this page and in the records *nox* is the alias alone".** ADR 0414 §7 decides that `nox` names two things, and this change adds the homonym row for that. The entry now contradicts both. Reword it so that it no longer claims the word for the command alone, and point it to [Homonyms](#homonyms). For example: "for the agent, see Homonyms".
Acceptance tests 6, 8, 10, 11 and 12 can each be tested, and each matches its record's checks (ADR 0411 checks 1 and 5; ADR 0412 checks 4, 5, 9 and 10; ADR 0413 checks 1 to 4; ADR 0414 check 4). The new and rewritten glossary entries (*run for*, *machine account*, *operator account*, *agent account*, *identity*) match ADR 0411 §1, §3, §6, ADR 0412 §1 and §5, and ADR 0413 §1. Each head word appears once and none uses a word from a *Not:* line.
I opened no issues. The `mesh/ready` label is not added: as agreed, the lead marks the PR ready after the operator's Approve. The PR description says ADR 0411 is still waiting for that Approve, but the knowledge base now shows ADR 0411 as accepted and approved; only ADR 0412 is still waiting.
Correction to the description: ADR 0411, 0412, 0413 and 0414 are all accepted in the knowledge base with the operator's Approve. Head 0dc8cab fixes review round 1's four findings.
Correction to the description: ADR 0411, 0412, 0413 and 0414 are all accepted in the knowledge base with the operator's Approve. Head 0dc8cab fixes review round 1's four findings.
Reviewer: reviewer-394@novox. Reviewed head 0dc8cab1781ba82175f473228397d6c6a3e57c45, checking only the change since 98b731d.
All four round-1 findings are fixed, and no finding remains:
The root judgement is now cited as ADR 0266 §12 to §17 in design 58 §5.1 and design 36 §9, as ADR 0411 §5 cites it.
Acceptance test 7 now has ADR 0411 check 4's precondition: a login nox given a sudo rule in a test is left unaltered, and the self-check raises agent-can-become-root for it.
Acceptance test 9 is now limited to modules not set to run for an identity, as ADR 0412 check 1 is.
The glossary's nox entry now says that nox is also the agent (ADR 0414 §7) and points to Homonyms.
The change since 98b731d adds nothing new that a record does not decide. sh merge-check.sh passes at this head (exit 0, run on a copy exported from the commit).
I am not adding mesh/ready: the lead marks the pull request ready.
## Review round 2 of at most 3: approve
Reviewer: reviewer-394@novox. Reviewed head `0dc8cab1781ba82175f473228397d6c6a3e57c45`, checking only the change since `98b731d`.
All four round-1 findings are fixed, and no finding remains:
1. The root judgement is now cited as ADR 0266 §12 to §17 in design 58 §5.1 and design 36 §9, as ADR 0411 §5 cites it.
2. Acceptance test 7 now has ADR 0411 check 4's precondition: a login `nox` given a sudo rule in a test is left unaltered, and the self-check raises `agent-can-become-root` for it.
3. Acceptance test 9 is now limited to modules not set to run for an identity, as ADR 0412 check 1 is.
4. The glossary's **nox** entry now says that *nox* is also the agent (ADR 0414 §7) and points to Homonyms.
The change since `98b731d` adds nothing new that a record does not decide. `sh merge-check.sh` passes at this head (exit 0, run on a copy exported from the commit).
I am not adding `mesh/ready`: the lead marks the pull request ready.
Reviewed by reviewer-394@novox: Round 2 of 3 approves: the four round-1 findings are fixed; ADR 0411 to 0414 accepted. Marked through mesh-delivery.mark-ready (novox/hq issue 913).
ready at 0dc8cab1781ba82175f473228397d6c6a3e57c45
Reviewed by reviewer-394@novox: Round 2 of 3 approves: the four round-1 findings are fixed; ADR 0411 to 0414 accepted. Marked through mesh-delivery.mark-ready (novox/hq issue 913).
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Graduates research 057 (an identity is the mesh's), playbook 02 step 4.
noxwhere the agent account is marked.noxadded under Homonyms.Decisions: ADR 0411 and ADR 0412 (waiting for the operator's Approve), ADR 0413 and ADR 0414 (accepted). Only designs and the glossary change; no decision or research record is written in hq.
sh merge-check.shpassed locally at this head.Delivery
novox/hq@0dc8cab1781b— delivered since 2026-10-17T09:54:44ZDelivery plan — builds nothing: the change touches no module of the mesh's graph
Transitions
The commit's note under
refs/notes/mesh-plankeeps every transition:git log --notes=mesh-plan.Review round 1 of at most 3 — request changes
Reviewer: reviewer-394@novox. Reviewed head
98b731d5d1ffc789dc05e404923580f374fe3065against ADR 0411 (v17, accepted), ADR 0412 (v11, proposed), ADR 0413 (v10, accepted), ADR 0414 (v10, accepted), research 057 (v19), and the cited ADR 0259 §8, 0266 §3/§4/§5, 0386 §4, 0387 §4 and 0410 §1/§2.sh merge-check.shpasses at this head (exit 0; it notes thatMESH_CATALOG_DIRwas unset, so the catalogue's copy of the retired words was not compared; this change retires no word).Sections 5.1 to 5.3 otherwise state what the four records decide, and I found nothing they add beyond them. Four findings:
03-DESIGN/01-to-be/58-agent-work-as-the-meshs-own.mdline 130, and36-the-operators-agent-on-a-machine.mdline 329: the root judgement is cited as "ADR 0266 §3". In the knowledge base, ADR 0266 §3 is "A node may name an agent account" (the terminal line, which ADR 0411 §6 changes). The ways to root are §12 to §17, which is how ADR 0411 §5 cites them. The same paragraph of §5.1 cites §4 and §5 by the knowledge base's clause numbers, so §3 there points at the wrong clause. Cite §12 to §17 in both places.Design 58 lines 258 to 261, acceptance test 7, is contradictory as written. It asks that the node-engine judges
noxunable to become root on all four machines, and that "the self-check raisesagent-can-become-rootfor it". ADR 0411's check 4 (for §4 and §5) raises the condition only for "a loginnoxgiven a sudo rule in a test", which is left unaltered. Without that precondition the test cannot pass. Restore it: anoxgiven a sudo rule in a test is left unaltered, and the condition is raised for it, on a machine that marks no agent account as well.Design 58 line 263, acceptance test 9, is false for the design's own end state. It says the declaration before and after differs "only in the machine accounts'
userresources". But ADR 0412 §10 runs claude-code on novox fornox, and ADR 0412 §11 gives ssh-client a second assignment run fornoxon every machine wherenoxis present. Test 10 relies on that second assignment. ADR 0411 check 6 holds for ADR 0411's change alone. ADR 0412 check 1 limits the same claim to modules "not set to run for an identity", and test 9 drops that limit. Scope test 9 the way ADR 0412 check 1 does: assignments run for an identity are excepted and are proved by test 10.00-META/glossary.mdlines 628 to 631: the existing nox entry (Operator and conversation) still says "on this page and in the records nox is the alias alone". ADR 0414 §7 decides thatnoxnames two things, and this change adds the homonym row for that. The entry now contradicts both. Reword it so that it no longer claims the word for the command alone, and point it to Homonyms. For example: "for the agent, see Homonyms".Acceptance tests 6, 8, 10, 11 and 12 can each be tested, and each matches its record's checks (ADR 0411 checks 1 and 5; ADR 0412 checks 4, 5, 9 and 10; ADR 0413 checks 1 to 4; ADR 0414 check 4). The new and rewritten glossary entries (run for, machine account, operator account, agent account, identity) match ADR 0411 §1, §3, §6, ADR 0412 §1 and §5, and ADR 0413 §1. Each head word appears once and none uses a word from a Not: line.
I opened no issues. The
mesh/readylabel is not added: as agreed, the lead marks the PR ready after the operator's Approve. The PR description says ADR 0411 is still waiting for that Approve, but the knowledge base now shows ADR 0411 as accepted and approved; only ADR 0412 is still waiting.Correction to the description: ADR 0411, 0412, 0413 and 0414 are all accepted in the knowledge base with the operator's Approve. Head
0dc8cabfixes review round 1's four findings.Review round 2 of at most 3: approve
Reviewer: reviewer-394@novox. Reviewed head
0dc8cab1781ba82175f473228397d6c6a3e57c45, checking only the change since98b731d.All four round-1 findings are fixed, and no finding remains:
noxgiven a sudo rule in a test is left unaltered, and the self-check raisesagent-can-become-rootfor it.The change since
98b731dadds nothing new that a record does not decide.sh merge-check.shpasses at this head (exit 0, run on a copy exported from the commit).I am not adding
mesh/ready: the lead marks the pull request ready.ready at
0dc8cab178Reviewed by reviewer-394@novox: Round 2 of 3 approves: the four round-1 findings are fixed; ADR 0411 to 0414 accepted. Marked through mesh-delivery.mark-ready (novox/hq issue 913).