c637da2eb7
Pin mesh-sdk c54648e74346 and mesh-contracts ec9529022c44, the group's heads (issue 1966)
jschoubben2026-11-04 17:46:08 +01:00
7390652f33
One guarded handler slot for a bundle's event and heartbeat handlers, so a reload never races the consumer's loop
jschoubben2026-11-04 16:28:08 +01:00
db3b5fe63d
F-tools: the runner's views consumer is proven on the real bus; the heartbeat is asked of the bus only when a bundle wants it, with no race; a seat record says when the bus wrote it; the beat test counts ticks, not sleeps
jschoubben2026-11-04 16:26:50 +01:00
76e025dbbc
J2: a state read carries the time the bus wrote the value, as at (stdio.StateEntry.At)
jschoubben2026-11-04 14:31:36 +01:00
f87c9720ed
J2: the tool runner tells a subscribed bundle how its module's consumer stands, as mesh/heartbeat (stdio.OnHeartbeat), at each idle beat and once Missed (ADR 0615, ADR 0621, issue 1966)
jschoubben2026-11-04 14:10:25 +01:00
d71cd5cef6
TLS-5, TLS-6: the views package is mesh-sdk's (go/views), and mesh_first_view_again is recorded through mesh-hand-acts before it is done (ADR 0615 §6, ADR 0565 §10, issue 1966)
jschoubben2026-11-04 12:14:14 +01:00
31247dff6b
TLS-5, TLS-6: the tool runner holds the indexer's manifests and modules and the assigner's placement and seat-holders from their first views and views events, never their state, and the console gains mesh_first_views and mesh_first_view_again (ADR 0615, ADR 0621, issue 1966)
jschoubben2026-11-04 12:06:20 +01:00
8b1ab467a9
TLS-1, TLS-2, TLS-3: the runner declares its own secret ledgers, refuses a bundle tool named as a ledger repair, and states the capabilities of its calls in its PING (issue 1966)
jschoubben2026-11-04 11:40:03 +01:00
84ede95c4a
Merge pull request 'L3 final: tool-runner back in node-tools' manifest (issue 774)' (#60) from feat/l3-final into main
mesh-tools2026-11-04 00:24:03 +00:00
7fd9d893c0
Give node-tools new manifest bytes (version 2), the recovery of the moment for a stale verdict
jschoubben2026-11-04 00:44:17 +01:00
0fb4591c9d
Pin mesh-sdk 85ba0a9a70d8, the group's head of feat/l3-final (issue 774)
jschoubben2026-11-03 23:43:11 +01:00
7da4c55752
Put tool-runner back in node-tools' manifest (L3 final, issue 774)
jschoubben2026-11-03 23:09:34 +01:00
b4819dc1fb
Merge pull request 'L3 recovery: take tool-runner out of node-tools' manifest until the judge that knows it runs (issue 774, issue 1585)' (#59) from fix/l3-words-after-judge into main
mesh-tools2026-11-03 21:09:06 +00:00
40e0e8282b
Take tool-runner out of node-tools' manifest until the judge that knows it runs
jschoubben2026-11-03 21:28:29 +01:00
01ee2ef394
Merge pull request 'L3: the tool runner says it is the tool runner, and the dead TypeScript callers of the old catalog module are gone (ADR 0604)' (#58) from feat/l3b-bus into main
mesh-tools2026-11-03 20:13:02 +00:00
8b8a760047
Pin mesh-sdk b7abe203a929, the group's head of feat/l3b-bus: it keeps, deprecated, the exported names the running parts still use
jschoubben2026-11-03 18:50:12 +01:00
db3dd04be7
Pin mesh-sdk cf5812101b0b, the group's final head of feat/l3b-bus (the module graph left mesh-sdk)
jschoubben2026-11-03 17:01:56 +01:00
d13890b944
Pin mesh-sdk 65b7adc8bdd9, the group's head of feat/l3b-bus
jschoubben2026-11-03 16:25:11 +01:00
b3903446f9
Remove the TypeScript runtime code that called the old catalog module's tools; a test finds no file naming one (ADR 0604 section 4, issue 774)
jschoubben2026-11-03 16:18:12 +01:00
e550c87a29
Pin mesh-sdk e7ce86ff62b5, the group's head of feat/l3b-bus (review round 2)
jschoubben2026-11-03 14:12:50 +01:00
ff7661a136
Pin mesh-sdk 825483043549, the group's head of feat/l3b-bus (review round 1)
jschoubben2026-11-03 14:05:07 +01:00
84533edf2e
Pin mesh-sdk 09ec82cb3551, the group's head of feat/l3b-bus (ADR 0601)
jschoubben2026-11-03 13:46:47 +01:00
ea516ece5a
node-tools says it is the tool runner (tool-runner), so mesh-sdk and its readers never know it by its name; pinned at mesh-sdk a973bfa (issue 774, the operator 2026-11-03)
jschoubben2026-11-03 12:01:58 +01:00
8c1e04dd37
Merge pull request 'Bus state by template: the tool runner's objects, stream, work-queue and ledger calls with the proven author (issue 1966, B1)' (#57) from feat/bus-state into main
mesh-tools2026-11-03 15:24:40 +00:00
43d3fba501
Pin the group's mesh-sdk head f8bd12e in place of the local replace (issue 1966)
jschoubben2026-11-03 15:35:30 +01:00
df929b48b5
Leave the own secret ledgers out of node-tools' manifest until the vault holds it on every machine, reading a missing file as no ledger credentials; grant the test's ledger account as the grants part does (issue 1966 T6)
jschoubben2026-11-03 15:29:47 +01:00
961ec0ef96
Append and snapshot a ledger on mesh-sdk's ledger subjects, the ones its account is granted, refusing a binding naming others (issue 1966 T6)
jschoubben2026-11-03 15:17:12 +01:00
5a9e997349
Check a ledger operation against the types its binding carries, refusing a ledger bound with none (issue 1966 T2)
jschoubben2026-11-03 15:15:58 +01:00
fadc73f73b
Key and answer a ledger index by mesh-sdk's IndexKey and IndexEntry, the one shape the owner's watcher also writes (issue 1966 T3)
jschoubben2026-11-03 15:15:00 +01:00
d206b0dde1
Prove against the real bus that the ledger keeps its promises: one writer wins, the state never goes back, a cut or full state catches up, the snapshot rebuilds, the repairs repair, a forged author is refused (issue 1966 T7)
jschoubben2026-11-03 13:52:58 +01:00
2bb0a6461d
Publish a module's ledger history and snapshots only on its own ledger connection, read from the runner's own secret ledgers and followed without a restart (issue 1966 T6)
jschoubben2026-11-03 13:51:47 +01:00
38a634723b
Stamp a ledger operation with the caller the runner proved for the call in flight it names, refusing another module's call or one not in flight; serve the ledger calls on the pipe (issue 1966 T5)
jschoubben2026-11-03 13:49:15 +01:00
8fe7ef3b82
Serve a ledger owner its repairs rebuild, reindex, snapshot and lag as tools, its own ledgers only, marked acts or reads (issue 1966 T4)
jschoubben2026-11-03 13:46:54 +01:00
63c1e3faa2
Read a ledger: an instance's state, its history oldest first with sequence and author, a watch of its states, a declared index (issue 1966 T3)
jschoubben2026-11-03 13:42:33 +01:00
ad22c5e9fe
Apply a ledger operation: check it against its type, append it with the last sequence expected, derive the state at the revision read, write the snapshot (issue 1966 T2)
jschoubben2026-11-03 13:40:40 +01:00
d6c516ab44
Serve a bundle its own bound objects, streams and work queues on its pipe (issue 1966 T1)
jschoubben2026-11-03 13:34:32 +01:00
b8e42cf54c
Merge pull request 'sdk1: node-tools reads per-node states through mesh-sdk's pernode' (#56) from feat/sdk1 into main
mesh-tools2026-11-02 20:43:23 +00:00
24c0ec0d32
Pin mesh-sdk at f02f142, the sdk1 head whose tests no longer leak package globals, so the group's check builds against it
jschoubben2026-11-02 20:14:16 +01:00
bd24ceafa9
Pin mesh-sdk at the sdk1 group's head 1c7356c, so the group's check builds every module against the narrowed SDK it was written for
jschoubben2026-11-02 19:29:53 +01:00
3f538027e9
Read a per-node state through mesh-sdk's pernode package, so the runtime and a process share one copy of its rules
jschoubben2026-11-02 18:31:18 +01:00
8114b45884
Serve a per-node state to a bundle as one state: get by the key's node, keys and watch over every node's bucket, a later bucket too
jschoubben2026-11-02 18:27:34 +01:00
d7d908cf67
Merge pull request 'node-tools without the controller's paging and handover reads (issue 1126 group B)' (#55) from feat/1126-removal into main
mesh-tools2026-11-02 13:41:43 +00:00
e475d9f849
Pin mesh-sdk to the group head of issue 1126
jschoubben2026-11-02 12:27:34 +01:00
e6f27a5f74
Pin mesh-sdk to the group head of issue 1126
jschoubben2026-11-02 12:20:14 +01:00
c678511871
Pin mesh-sdk to the group head of issue 1126
jschoubben2026-11-02 11:56:55 +01:00
4f636b7080
Name no controller verb in hints and drop its handover and paging reads, since the controller ended (issue 1126 B19)
jschoubben2026-11-02 11:23:14 +01:00
49f9269376
Merge pull request 'node-tools follows memberships from the grants part's state alone (issue 774)' (#54) from feat/l3-removal into main
mesh-tools2026-11-02 00:35:50 +00:00
29fd452628
Pin mesh-sdk at c21d8fd, the removal group's head, so every member builds the same contract (issue 774)
jschoubben2026-11-02 00:53:42 +01:00
331fa06b54
The tool runner reads the memberships state again until it can, instead of giving a module up at its one follow
jschoubben2026-11-02 00:51:19 +01:00
5b2ff5e321
Test that node-tools' manifest is not refused by the lease write's check (ADR 0571 §13)
jschoubben2026-11-02 00:26:04 +01:00
4fbfdfad13
The tool runner reads its membership from the grants part's state alone: no stream read, no subject heard (ADR 0571 §10)
jschoubben2026-11-02 00:25:19 +01:00
75943ca7b0
Merge pull request 'The tool runner waits on the self-check's checked, not the controller's (design 47 L7)' (#53) from feat/l5-l7-main into main
mesh-tools2026-11-01 13:54:02 +00:00
fb6631aee1
Pin group A's mesh-sdk head on main
jschoubben2026-11-01 09:57:49 +01:00
d41bee158c
node-tools waits on the self-check's checked, not the controller's (ADR 0571 clause 13, issue 1955)
jschoubben2026-11-01 03:28:41 +01:00
110e55cb48
Merge pull request 'The tool runner declares the credential form of its mcp-endpoint (ADR 0579)' (#52) from feat/judge-once into main
mesh-tools2026-11-01 07:55:09 +00:00
67635ef89f
node-tools waits on the self-check's checked, not the controller's (ADR 0571 clause 13, issue 1955)
jschoubben2026-11-01 03:28:41 +01:00
c494018074
Pin the group's mesh-sdk head after the gofmt fix
jschoubben2026-11-01 03:27:07 +01:00
4cdf63443d
Pin mesh-sdk to the group's head after review round 1
jschoubben2026-11-01 03:13:22 +01:00
1e9995faba
Pin mesh-sdk to the delivery group's head
jschoubben2026-11-01 02:46:53 +01:00
f6c401ecd2
Declare credential form none for the provision, which hands consumers no credential
jschoubben2026-11-01 02:43:23 +01:00
c2f01bf10b
Merge pull request 'Read and write placement per node and module (issue 774)' (#51) from feat/072-moves into main
mesh-tools2026-10-31 10:31:18 +00:00
be2fc2e9b6
Pin mesh-sdk at the group's head acbf80a (issue 774)
jschoubben2026-10-31 10:25:46 +01:00
aa05629375
Pin mesh-sdk at the group's head (issue 774)
jschoubben2026-10-31 09:30:08 +01:00
35a7ff70fe
Read the seat mesh-placement's state through the sdk's PlacementsOf, and write the test mesh's placement as the seat does, one key per module and node (issue 774, research 072 row 37)
jschoubben2026-10-31 09:29:32 +01:00
747bfa71aa
Merge pull request 'A state watch given up hands nothing more to its bundle (issue 774)' (#50) from fix/sweep-2026-10-30 into main
jschoubben2026-10-30 18:13:12 +00:00
316a5a2fc3
A watch given up or stopped hands over nothing more; arrival of current values restarts its bound (issue 774)
jschoubben2026-10-30 18:22:01 +01:00
0edcd2501d
Merge pull request 'The tool runner reads the grants part's memberships through the mesh-sdk codec (issue 774)' (#49) from fix/memberships-shape into main
jschoubben2026-10-30 14:42:20 +00:00
ac645e2cae
Refuse a held-back membership's old wrapper in the tool runner, pinning mesh-sdk's review-round-1 codec
jschoubben2026-10-30 15:38:40 +01:00
a479a90fb2
Read the grants part's memberships through mesh-sdk's codec, so the tool runner serves its node's modules
jschoubben2026-10-30 15:31:26 +01:00
3c9068f99a
Merge pull request 'Design 47's last milestones in the tool runner: per-key TTL, log verbs, memberships and seat holders from the bus (issues 1952, 1954, 1955)' (#48) from feat/774-l3-reland into main
mesh-tools2026-10-30 11:02:19 +00:00
07ab8069a4
Pin the group's mesh-sdk head, whose stdio reads a module's own stream through this runtime
jschoubben2026-10-30 10:54:32 +01:00
b90376ba59
Let a module read its own streams back by a batch direct get, as it reads its log, so its tools can answer what the stream holds (a build step's whole failure output)
jschoubben2026-10-30 10:54:05 +01:00
250aa73a56
Pin mesh-sdk 2da0de7, the release's final head with main merged in, so mesh-tools builds with the group's one SDK (issue 1955)
jschoubben2026-10-30 01:12:55 +01:00
e32eef2379
Pin mesh-sdk 6e4a301, the release's final head, so mesh-tools builds with the group's one SDK (issue 1955)
jschoubben2026-10-30 00:16:11 +01:00
070ae53128
Pin mesh-sdk 007b6fd, the release's final head, so mesh-tools builds with the group's one SDK (issue 1955)
jschoubben2026-10-30 00:05:45 +01:00
8c0618cfc5
Prove a later assignments-stream membership changes nothing once the grants part's state has given one (issue 1955, ADR 0571 clause 7)
jschoubben2026-10-29 23:44:19 +01:00
54680238a0
Read memberships from the grants part's state, what the mesh holds from the indexer and placement, and give bundles newest, since and watch on logs, so the tool runner asks the controller for nothing it keeps (issue 1955, ADR 0571 clauses 1, 4, 5, 7)
jschoubben2026-10-29 23:42:43 +01:00
200249a84f
Let the TypeScript mesh client take every role's tools from the console on its machine, so it asks the controller for none (issue 1955, ADR 0571 clause 5)
jschoubben2026-10-29 23:19:55 +01:00
67850457ef
Read seat verbs' replaces from mesh-sdk's seat contract and seat holders from placement's seat-holders state, so the console asks the controller for neither (issue 1955, ADR 0571 clauses 4 and 5)
jschoubben2026-10-29 23:13:42 +01:00
9d67b0995f
Bind node-tools' consumers by mesh-provisioner's plans and provisions alone, dropping the read of the controller's assignments the sdk's helper no longer makes (issue 1954 L6-T1)
jschoubben2026-10-29 22:43:58 +01:00
e9009b7f04
Answer mesh/state.info with a bucket's fill and caps, so a bundle's tools can say how full its state is (issue 1952)
jschoubben2026-10-29 22:43:58 +01:00
9fc97e45c9
Let node-tools' provider helper read mesh-provisioner's provisions and plans by mesh-sdk's names, so the runtime follows ADR 0570's records off the controller (issue 1954 L6-T1)
jschoubben2026-10-29 22:34:34 +01:00
1583fa85d9
Let a bundle write a state key with its own time to live and hear its end, so wakes need no in-process timer (issue 1952)
jschoubben2026-10-29 22:11:39 +01:00
95a12105cf
Merge pull request 'The bus state guard lets a provider reference under a provision named like a credential pass (L2's seed, issue 1126)' (#47) from fix/1126-state-guard into main
mesh-tools2026-10-28 21:01:24 +00:00
2966c1e32c
Runtime state guard: hold a provider reference's node and module to the mesh's name pattern, so no credential rides in one (issue 1126)
jschoubben2026-10-28 21:49:52 +01:00
1a0424117a
Runtime state guard: a credential-shaped name passes only holding an exact provider reference, node and module, so a placement's binding is kept and nothing else gets through (issue 1126)
jschoubben2026-10-28 21:48:27 +01:00
23f5babe33
Runtime state guard: a name holding an object is data, not a credential, so a placement's binding of the provision secret is kept (issue 1126)
jschoubben2026-10-28 21:46:35 +01:00
27266f99a3
Merge pull request 'node-tools starts no bundle again once it is stopping (group fix/shutdown-bound, issue 1126)' (#46) from fix/shutdown-bound into main
mesh-tools2026-10-28 15:05:13 +00:00
a9b02bc676
node-tools: keep the stopping-runtime test under a second, and start no first bundle once stopping
jschoubben2026-10-28 15:40:39 +01:00
f016c67a72
node-tools: start no bundle again once the runtime itself is stopping (issue 1126)
jschoubben2026-10-28 15:30:12 +01:00
6cc3398880
Merge pull request 'node-tools waits for its broker credential instead of exiting, and retries a refusal within that bound (issue 1496)' (#45) from fix/1496-start-health into main
mesh-tools2026-10-26 21:38:04 +00:00
8cdb7c3032
The credential wait's test stays under a second, and a failed watch says the re-read, not a restart (issue 1496)
jschoubben2026-10-26 22:18:12 +01:00
3baeaece61
A module's runtime waits for its broker credential and its account at a start, bounded, instead of exiting (issue 1496)
jschoubben2026-10-26 22:03:04 +01:00
a5097dc69a
Merge pull request 'mesh_search leaves out filler words, so a question in plain words finds its tool' (#44) from fix/search-ignores-filler into main
mesh-tools2026-10-26 13:39:24 +00:00
9f25e5c9f6
mesh_search: filler words of a question (did, our, on, all) need not match, so the operator's own words find a tool; a query of filler finds nothing
jschoubben2026-10-26 14:03:49 +01:00
bb6a0e3192
Merge pull request 'node-tools: a consumer deleted or made again while no pull waits is noticed at the next rebind, so a module is not deaf for a heartbeat (issue 1945)' (#43) from fix/bus-consumer-remade-flake into main
mesh-tools2026-10-25 15:22:24 +00:00