Commit Graph
17 Commits
Author SHA1 Message Date
jschoubben 7d730a4a75 K6 (one capabilities event): the node-engine seat says manifest-reads-changed alone
capabilities-changed and its body go, the one event of a node's stated capabilities is manifest-reads-changed, which
already carries why. Generated code waits for K21.

Builds: design 47 G §590

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 20:26:26 +01:00
jschoubben 5e8dce621b K3 (running healthy): running says the health of the build that runs
The node-engine seat's Running gains healthy, a nullable boolean so that a false survives the wire and a running
said by a node-engine of before G, with none, is told apart and reads as healthy; stopped is said only when the
have no longer holds the module. Two fixtures read healthy true and false; the one without it still decodes.
Generated code waits for K21.

Builds: design 47 G §520

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 15:51:53 +01:00
jschoubben 3ccc3cc3cb K2 (node-engine verbs): the seat is claimed as one module, and its first views are seat verbs
The definition drops held-by-the-engine, so one module's claim of the seat is read as any other. It gains
first-views (read; any person and the healers) and first-view-again (act; the operator and the healers), not
optional, their inputs and answers those of the view's two tools mesh-sdk's runtime serves; a fixture reads
first-view-again's input. Generated code waits for K21.

Builds: design 47 G §508, §422, §204, §400

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 15:50:06 +01:00
jschoubben 5f7610f521 C5 (answer): the node-engine's verbs name their class
hand-over and access-act are warrants, compose an act, the other six without callers reads.

Builds: design 47 G §391, §393, §447

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 10:45:58 +01:00
jschoubben 77e583be44 C3, C5, C11 (answers): mesh-broker's write verbs name module:nats, node-engine's seat-list verbs the callers its code names, mesh-conditions declares findings-views
create and apply are of class act; recreate and drop of class warrant; all four called by module:nats.
seat-list and seat-list-again name persons, sessions and healers as SeatListCallers does.

Builds: design 47 G §336, §388, §391, §392, §393

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 10:44:34 +01:00
jschoubben 91818305e7 C5: the node-engine seat says composed, running (kept last per subject, no age limit, or stopped) and capabilities-changed, acts in compose, and serves process-builds
Rewritten from the earlier branch to the final lines: keep as an object, stopped on running, process-builds a
read for persons, sessions and healers and not optional, the compose rule with the step's default bound.
The eleven verbs' callers (§393) wait on a question; the generated Go and TypeScript wait on the generator.

Builds: design 47 G §177, §199, §203, §260, §261, §266, §396, §404, §440

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 10:39:23 +01:00
jschoubben f33c1d4b78 C3: the callers of mesh-broker's four reads, mesh-config's renames, mesh-vault's retire and node-engine's seat-list verbs are lists
mesh-broker list, show, check, orphans and mesh-config renames name invokers; mesh-vault retire names
seat:mesh-config; node-engine seat-list names persons and healers, seat-list-again the operator and the
healers. mesh-broker create, apply, recreate and drop keep their text: the design names no form for them.

Builds: design 47 G §336, §392, §204

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 10:38:50 +01:00
jschoubben 8e51d93c2f node-engine seat: a node's windows, busy, strays and filters are lists, as the engine writes them (the contract said objects and refused every real value; ADR 0634; issue 1966)
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 15:19:03 +01:00
jschoubben f00aac3847 node-engine: typed layouts for the states have (both forms), composed (both forms, wire names), data and health, with fixtures; Candidates typed as CandidateAnswer (ADR 0634 §1, §6; issue 1966)
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 14:50:04 +01:00
jschoubben 551870d8d5 Fixtures captured from the holders' own read tools for the states that had none (conditions, findings, presence, stuck, would, resolved, asks, packages); the packages item requires absent (ADR 0634 §6; issue 1966)
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 14:40:27 +01:00
jschoubben f4a69e85f2 node-engine: the verbs seat-list and seat-list-again (the operator and the healers) and the state findings, with fixtures (ADR 0636 §1, §7; issue 1966) 2026-11-05 14:34:07 +01:00
jschoubben 929bf5539e Every seat definition names its glossary domain; the schema requires it (ADR 0636 §5; issue 1966) 2026-11-05 14:11:19 +01:00
jschoubben 23a759c78b Domain contracts folders: health-and-repair, provisioning, connectivity, operator-and-conversation hold their seats' definitions with states; node-engine and mesh-config gain states (ADR 0634, ADR 0635; issue 1966)
Generated code, clients and the seat-set removal wait for the seatgen change.

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
2026-11-05 12:51:40 +01:00
jschoubben 4afce1aac8 Drop node-engine's optional verb pull-waits: no record gives the seat that verb
The lead's ruling (14:2x): the pull waits ENG-9 shows are carried in the engine's have, read through node_haves, as
ENG-9 allows, so the seat serves no verb of its own for them. Regenerated; seatgen -check finds nothing out of step.

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
2026-11-04 13:52:54 +01:00
jschoubben 7498d689e2 The node-engine seat whole: every verb's answer, its events' bodies, and ADR 0618's manifest-reads and manifest-reads-changed
The seat's area changes in this milestone, so it moves whole into its contracts (ADR 0613 §3): the eleven verbs it serves
get their answers as the engine writes them, asked, done and refused their body, and the seat serves the optional verb
manifest-reads (ADR 0618 §3) and says manifest-reads-changed (§4). Each event is published per node, the node's name its
last token (by-caller), and kept with the seat's events for seven days. compose-candidate's input is a boolean, as the
engine and the checker read it. Fixtures for every event, compose-candidate's input and three answers.

Claude-Session: https://claude.ai/code/session_01JG73KG7AfSdh6FP8VrBqCn
2026-11-04 12:39:56 +01:00
jschoubben 5b4239e6d9 SD-M3: the node-engine seat's read-only verb pull-waits (design 51, A7's ENG-9)
Optional until every engine serves it; answers each failed pull waiting on a store's holder.

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
2026-11-04 12:19:52 +01:00
jschoubben df74b712c0 SD-M3: every other seat at the seat list's grain, in its reading order (ADR 0613 §2)
Converted mechanically from mesh-sdk's compiled list at 5a38a12 by a program kept out of the repository; the three new
registry seats follow npm-package-registry, operator-channel the mesh's own seats.

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
2026-11-04 11:50:54 +01:00