jschoubben
0ae7cb7a76
C5: the operator-channel seat declares its verb asks' input (key, state, since, bound) and answer (asks with key and state, cut, matched), as the router serves it (issue 1966, ADR 0668 §4; review round 1, finding 5)
...
The assigner's read at its consumer's bind calls the verb with them; regenerated with seatgen, whose -check passes.
Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-10 04:20:04 +01:00
jschoubben
c6689bfdb3
C4: a statement keeps since when its engine is unanswered, and the keeper names each node unanswered past a bound while heard (issue 1966, ADR 0668 §3; review round 1, finding 4)
...
Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-10 04:15:01 +01:00
jschoubben
c584f4570b
C3: the engine-reads keeper keeps the fallback or the last statement at the first fault while the kept call asks on (issue 1966, ADR 0668 §3; review round 1, finding 1)
...
A part whose node answers nothing waited out busretry.Bound (30 s) before it acted on the node's record: Once asks the verb once, and its fault is taken at once.
Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-10 04:11:07 +01:00
jschoubben
e1303f1542
C2: the finding kind call-unanswered of the seat mesh-conditions (issue 1966, ADR 0668 §3)
...
A kept call still unanswered past five minutes is said in the caller's findings, keyed call.<id>.call-unanswered.
Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-10 02:54:44 +01:00
jschoubben
5c29bea0b3
C1: the engine-reads keeper calls every node again at its part's consumer bind (issue 1966, ADR 0668)
...
A manifest-reads-changed said before the part's consumer existed was never heard (note 155), and the
statement taken while an engine restarted stood. AtBind is registered on the hub's OnBound.
Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-10 02:54:44 +01:00
mesh-tools
66e0c611bf
Merge pull request 'Record a merge through the merge gate (issue 1966, bootstrap)' ( #2 ) from fix/1966-gate-record into main
2026-11-07 20:19:51 +00:00
jschoubben
1aa5dee992
Record a merge through the merge gate so the new indexer reads this repository's seat definitions on its merge (issue 1966, the operator's bootstrap)
mesh/delivery merged: source.main moved to novox/mesh-contracts@66e0c611bf83
mesh/delivery-group group fix/1966-gate-record merged: every member is merged
mesh/check pass 1aa5dee99226 on 66e0c611bf83 | carried from 08580d25d2dc, mesh-networking 5af7189cad82 | unit 14 run, 270 kept | integration 0 run, 27…
2026-11-07 21:13:54 +01:00
mesh-tools
08580d25d2
Merge pull request 'Registry milestone: mesh-contracts (issue 1966)' ( #1 ) from feat/registry-milestone into main
2026-11-07 14:19:16 +00:00
jschoubben
b77560786a
Complete go.mod and go.sum for the externals each module builds with
...
mesh/delivery merged: source.main moved to novox/mesh-contracts@08580d25d2dc
mesh/delivery-group group feat/registry-milestone merged: every member is merged
mesh/check checking b77560786a6a on 08580d25d2dc | novox/mesh-contracts#1 in group feat/registry-milestone
A check's tests run without network, so each module must carry every external module it builds with.
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-06 00:51:22 +01:00
jschoubben
76de6889fc
The assigner's seat says assignments throughout: the type, the events and the defs; the legacy key form placement.<node> leaves the client (issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 21:57:16 +01:00
jschoubben
fdcec5d384
The Placement domain goes: the module assigner and the four node seats move to the Core place, the assigner's state and verb placement become assignments, mesh-wants goes to mesh-delivery (issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 21:39:56 +01:00
jschoubben
07ec4b1f31
Regenerate the contracts' TypeScript: the key parsers name their parameter apart from the parts (issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 21:24:07 +01:00
jschoubben
f0ed2d9b12
No client names the holder of the seat mesh-provisioner: each reader keeps its own constant, held to its manifest (ADR 0625 section 4, issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 19:36:21 +01:00
jschoubben
bc7763a9c0
Merge branch 'b9j/registry' into feat/registry-milestone
2026-11-05 19:26:06 +01:00
jschoubben
276e5e2aef
The delivery SDK's enginereads, findings and heard leave for the clients of their seats (ADR 0634 sections 1 and 2, issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 19:22:05 +01:00
jschoubben
828b5b1d38
No client names a holder: each reader keeps its own constant, held to its manifest (ADR 0625 section 4, issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 18:37:28 +01:00
jschoubben
70fe186d7f
Move node-service-manager, node-package-manager, node-container-runtime and node-environment to mesh-placement-contracts: their domain is Placement (ADR 0635 §2, ADR 0636 §5; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 18:23:43 +01:00
jschoubben
a2a321dfa2
Require the external packages a module's build reaches (issue 1966)
...
Versions are the ones the workspace already resolves, with their go.sum lines.
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 18:11:56 +01:00
jschoubben
036f39a5a5
Require every mesh package of the group at the floor version (ADR 0573 sections 2 and 4, issue 1966)
...
A member's go.mod names the oldest version a module accepts; the check builds the group's own heads whatever it names. go.sum lines of mesh packages are left out.
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 16:56:39 +00:00
jschoubben
6b8c6e2721
Conditions client: Observation, Raise, Clear, Says, EncodeFinding and DecodeFinding raise and clear an observer's finding in the seat's layout, goldens from go/health's output (B5l; ADR 0634 §4; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 16:46:25 +01:00
jschoubben
396ccc0e11
Operator-channel client: the bench shapes tested against their written wire, with no mesh-sdk channel import (B6j; ADR 0634 §5; issue 1966)
2026-11-05 16:45:22 +01:00
jschoubben
70da0dd17e
Watchdogs client: the keys, check and codec of presence, pulse and stuck over the seat mesh-watchdogs, goldens from go/delivery's output (B7n2; ADR 0634 §4; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 16:21:28 +01:00
jschoubben
311654f224
node-engine client: RootContract, the contract from which an engine judges an account's root (B5g; ADR 0634 §4; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 16:02:42 +01:00
jschoubben
2e0563e983
mesh-config seat: the state kept typed (an approved held value, under owner.repository.number.node.module.key), a fixture from the holder's test values, regenerated; a client meshconfigclient with the keys and the check the checker and the assigner share (B2f; ADR 0565 §5, ADR 0634 §4; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 16:02:00 +01:00
jschoubben
9c80664492
Wants client: the keys, check and codec of a want, a node's own want and a hold over the seat mesh-wants, goldens from go/delivery's output (B7h; ADR 0634 §4; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 15:58:13 +01:00
jschoubben
d8d319e3ff
node-engine client: the adoption handing's two ends (HandAccounts, OpenHanded, HandedAccount, KeyFingerprint, IsBcrypt) over the seat's AccountsHanded (B5f; ADR 0634 §4; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 15:54:21 +01:00
jschoubben
bb2140c236
Module assigner client: the operations of a proposal's change and the states of an open proposal, for its holder and for the enrolment that builds add-node (B7f finding 4; ADR 0634 §4; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 15:43:25 +01:00
jschoubben
5f8b8edd20
node-engine client: a candidate's composition key is its own, over mesh-sdk keys; the client no longer imports go/delivery (ADR 0634 §4; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 15:35:17 +01:00
jschoubben
71c8b9f964
Merge branch 'b4/registry' into feat/registry-milestone
2026-11-05 15:35:02 +01:00
jschoubben
54a42db4ec
Module assigner client: the placement and seat-holders states by name, and the machines a placement names (ADR 0634 §4; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 15:28:18 +01:00
jschoubben
57dd579234
Wants seat: the backup answer of a want is again or skip (ADR 0634; issue 1966)
2026-11-05 15:27:08 +01:00
jschoubben
6d5fe4572d
Placement seat: the tunnel found on a node is a typed record, not a free object (ADR 0634 §1; issue 1966)
2026-11-05 15:25:57 +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
8c5f85e86b
node-engine client: the node key of the have, the codecs of the health report and of the data items (ADR 0634 §1, §4; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 15:16:39 +01:00
jschoubben
82b02ff099
The Connectivity folder leaves mesh-contracts for mesh-connectivity-contracts, which holds the same seven definitions (ADR 0636 §5, §6; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 15:14:57 +01:00
jschoubben
ed7cf77659
The Delivery domain's seats leave mesh-contracts for mesh-delivery-contracts: the 13 definitions, the registry part, the four registry clients, the checker's generated packages (ADR 0636 §5; ADR 0634; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 15:14:57 +01:00
jschoubben
db2a6da471
node-engine client: the codec and the comparison of the have and the node's facts, and the phases and healths a have names (ADR 0634 §1, §4; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 15:14:16 +01:00
jschoubben
181441e91b
The generated contracts write date-time as time.Time (seatgen of B5d); the conditions and vault clients follow (ADR 0634; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 15:06:14 +01:00
jschoubben
25da1f8879
node-engine client: the exported fingerprint key part is mesh-catalog's client's, the codec checks the field's form itself (a client imports no other seat's client; ADR 0625 §4, ADR 0634 §2; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 15:05:08 +01:00
jschoubben
cd2615f094
operator-channel: the times of the bench events are date-time, so the generated types are time.Time (B5d; ADR 0634; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 15:01:57 +01:00
jschoubben
29dc84a38b
operatorchannelclient: the bench subjects and words the router and the channels share (B5d; ADR 0634 §1; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 14:56:40 +01:00
jschoubben
35aa61f4d9
operator-channel: the state asks typed to the router's projection; mesh-node-enroller: redeem's answer typed, with a fixture and a client test (ADR 0634 §6; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 14:53:24 +01:00
jschoubben
ce9d39d3f0
node-engine client: the codec, the digest and the comparison of a composition, in the field order its first writer used (ADR 0634 §1, §4; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 14:51:46 +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
074032e9d4
mesh-module-assigner client: CheckProposalID, the id a proposal and the ask about it carry (ADR 0634 §4; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 14:49:56 +01:00
jschoubben
99adc0eb98
node-engine client: the keys of its states have and composed (HaveKey, ParseHaveKey, ComposedKey, ParseComposedKey) that the assigner's ask keys and the readers share (ADR 0634 §4; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 14:49:14 +01:00
jschoubben
6d61992183
operator-channel: the bench shapes of channel and intake (Message, Button, Sender, Choice, LinkAsked, Failed, Standing, Code, ProofAnswer) in the definition, with a test against mesh-sdk's channel wire (C-12; ADR 0634 §1; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 14:45:30 +01:00
jschoubben
bd49b184a2
Merge b4/registry: Placement and Identity-and-access contracts, the domain on their definitions (ADR 0634 §7, §9; ADR 0636 §5; issue 1966)
...
Claude-Session: https://claude.ai/code/session_01NcbgfFSnn24M3GcqttoU7i
2026-11-05 14:42:12 +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