Design 41: every file on a node is managed through node-files (WP9, ADR 0394) #380

Merged
jschoubben merged 6 commits from design/41-node-files into main 2026-10-16 12:24:18 +00:00
Member

Adds work package 9 to design 41: the node seat node-files on every node, held by the tool runner, with a verb for every file action (list, stat, read, search, write, copy, move across nodes, delete, mkdir, chmod, chown, trash and restore). It may touch every file, keeps owners and modes, keeps deleted or overwritten files 7 days, refuses a path a module owns unless overridden, asks no Approve, and never returns a credential's content. ADR 0394, issue 900, as the operator set it on 2026-10-16.

A design edit (playbook 08 step 4): the operator's word on this pull request is its review. sh merge-check.sh passes.

Adds work package 9 to design 41: the node seat `node-files` on every node, held by the tool runner, with a verb for every file action (list, stat, read, search, write, copy, move across nodes, delete, mkdir, chmod, chown, trash and restore). It may touch every file, keeps owners and modes, keeps deleted or overwritten files 7 days, refuses a path a module owns unless overridden, asks no Approve, and never returns a credential's content. ADR 0394, issue 900, as the operator set it on 2026-10-16. A design edit (playbook 08 step 4): the operator's word on this pull request is its review. `sh merge-check.sh` passes.
mesh-tools added 1 commit 2026-10-16 09:01:14 +00:00
Design 41: every file on a node is managed through node-files (WP9, ADR 0394, issue 900)
mesh/merge-gate waiting in the build queue since 11:01
mesh/delivery superseded: a newer head of the same pull request
cf56649845
Author
Member

Delivery novox/hq@300be928144e — delivered since 2026-10-16T12:24:20Z

Delivery plan — builds nothing: the change touches no module of the mesh's graph

Transitions

  • 2026-10-16 11:31 (new) → proposed (announced): novox/hq#380's head announced
  • 2026-10-16 11:32 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
  • 2026-10-16 11:32 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
  • 2026-10-16 12:24 ready → proposed (trunk moved): out of date: judged against trunk b9af4e373d, the trunk is now 06998cc8d95b; judged again on a recheck or when it is merged
  • 2026-10-16 12:24 proposed → delivered (done): merged, and nothing for a walk to move: builds nothing: the change touches no module of the mesh's graph

The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.

<!-- mesh-delivery:view --> **Delivery** `novox/hq@300be928144e` — **delivered** since 2026-10-16T12:24:20Z **Delivery plan** — builds nothing: the change touches no module of the mesh's graph **Transitions** - 2026-10-16 11:31 (new) → proposed (announced): novox/hq#380's head announced - 2026-10-16 11:32 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit - 2026-10-16 11:32 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail - 2026-10-16 12:24 ready → proposed (trunk moved): out of date: judged against trunk b9af4e373dc0, the trunk is now 06998cc8d95b; judged again on a recheck or when it is merged - 2026-10-16 12:24 proposed → delivered (done): merged, and nothing for a walk to move: builds nothing: the change touches no module of the mesh's graph The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
jschoubben added 1 commit 2026-10-16 09:01:47 +00:00
Design 41 WP9: node-files is held by a module of its own, mesh-files, beside mesh-reads
mesh/merge-gate waiting in the build queue since 11:01
mesh/delivery superseded: a newer head of the same pull request
330d341618
jschoubben added 1 commit 2026-10-16 09:06:35 +00:00
Design 41 WP9: mesh-files runs as the operator account with sudo where needed, and replaces node-reads (ADR 0394)
mesh/merge-gate head 7ac5194bcbdc merged into trunk b9af4e373dc0 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 7ac5194bcbdc merged into trunk b9af4e373dc0 — pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
7ac5194bcb
jschoubben added 1 commit 2026-10-16 09:11:55 +00:00
Design 41: WP8's node-reads is replaced by WP9's node-files (ADR 0394 supersedes ADR 0310)
mesh/merge-gate head 1f5a12e07e42 merged into trunk b9af4e373dc0 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 1f5a12e07e42 merged into trunk b9af4e373dc0 — pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
1f5a12e07e
Author
Member

ready at 1f5a12e07e

The operator's word, 2026-10-16 ("approved"), is this design edit's review (playbook 08 step 4).

ready at 1f5a12e07e42fcf6ff474a82b61e538b83bee7a8 The operator's word, 2026-10-16 ("approved"), is this design edit's review (playbook 08 step 4).
Author
Member

mesh-delivery: the ready mark at is cleared: the head is now 1f5a12e07e, pushed after it. Mark the new head ready once it is reviewed.

mesh-delivery: the ready mark at is cleared: the head is now 1f5a12e07e42fcf6ff474a82b61e538b83bee7a8, pushed after it. Mark the new head ready once it is reviewed.
jschoubben added 1 commit 2026-10-16 09:14:03 +00:00
Design 41: node-reads goes in the delivery after node-files is held on every node (ADR 0394 §9)
mesh/merge-gate head 26073f30b0de merged into trunk b9af4e373dc0 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 26073f30b0de merged into trunk b9af4e373dc0 — pass: its merge-check.sh passed
mesh/delivery superseded: a newer head of the same pull request
26073f30b0
Author
Member

ready at 26073f30b0

Only the timing of node-reads' removal changed since the operator's word (the next delivery, once node-files is on every node; ADR 0394 §9).

ready at 26073f30b0dea3395d1287ad9adbd1b288ef6f52 Only the timing of node-reads' removal changed since the operator's word (the next delivery, once node-files is on every node; ADR 0394 §9).
Author
Member

mesh-delivery: the ready mark at is cleared: the head is now 26073f30b0, pushed after it. Mark the new head ready once it is reviewed.

mesh-delivery: the ready mark at is cleared: the head is now 26073f30b0dea3395d1287ad9adbd1b288ef6f52, pushed after it. Mark the new head ready once it is reviewed.
jschoubben added 1 commit 2026-10-16 11:31:46 +00:00
Design 41 WP9: readlink and the account and group lookup are node-files verbs too (ADR 0394 §1; review)
mesh/merge-gate head 300be928144e merged into trunk b9af4e373dc0 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 300be928144e merged into trunk b9af4e373dc0 — pass: its merge-check.sh passed
mesh/delivery delivered
300be92814
Author
Member

ready at 300be92814

Approved by the independent review of 2026-10-16, its one point (readlink and the account and group lookup in WP9's verb list) fixed in this head; the operator delegated the review.

ready at 300be928144ee5b24c1f9b58e6b250945d26b8b2 Approved by the independent review of 2026-10-16, its one point (readlink and the account and group lookup in WP9's verb list) fixed in this head; the operator delegated the review.
mesh-tools added the mesh/ready label 2026-10-16 11:31:59 +00:00
mesh-tools removed the mesh/ready label 2026-10-16 11:33:10 +00:00
Author
Member

mesh-delivery: the ready mark at is cleared: the head is now 300be92814, pushed after it. Mark the new head ready once it is reviewed.

mesh-delivery: the ready mark at is cleared: the head is now 300be928144ee5b24c1f9b58e6b250945d26b8b2, pushed after it. Mark the new head ready once it is reviewed.
jschoubben added the mesh/ready label 2026-10-16 12:06:41 +00:00
mesh-tools removed the mesh/ready label 2026-10-16 12:07:44 +00:00
Author
Member

mesh-delivery: the ready mark at is cleared: the head is now 300be92814, pushed after it. Mark the new head ready once it is reviewed.

mesh-delivery: the ready mark at is cleared: the head is now 300be928144ee5b24c1f9b58e6b250945d26b8b2, pushed after it. Mark the new head ready once it is reviewed.
jschoubben merged commit 1ddc2f5cbf into main 2026-10-16 12:24:18 +00:00
jschoubben deleted branch design/41-node-files 2026-10-16 12:24:18 +00:00
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/hq#380