Commit Graph

  • 08580d25d2 Merge pull request 'Registry milestone: mesh-contracts (issue 1966)' (#1) from feat/registry-milestone into main main mesh-tools 2026-11-07 14:19:16 +00:00
  • b77560786a Complete go.mod and go.sum for the externals each module builds with pre/registry-milestone jschoubben 2026-11-06 00:51:22 +01:00
  • 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) jschoubben 2026-11-05 21:57:16 +01:00
  • 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) jschoubben 2026-11-05 21:39:56 +01:00
  • 07ec4b1f31 Regenerate the contracts' TypeScript: the key parsers name their parameter apart from the parts (issue 1966) jschoubben 2026-11-05 21:24:07 +01:00
  • 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) jschoubben 2026-11-05 19:36:21 +01:00
  • bc7763a9c0 Merge branch 'b9j/registry' into feat/registry-milestone jschoubben 2026-11-05 19:26:06 +01:00
  • 276e5e2aef The delivery SDK's enginereads, findings and heard leave for the clients of their seats (ADR 0634 sections 1 and 2, issue 1966) jschoubben 2026-11-05 19:22:05 +01:00
  • 828b5b1d38 No client names a holder: each reader keeps its own constant, held to its manifest (ADR 0625 section 4, issue 1966) jschoubben 2026-11-05 18:37:28 +01:00
  • 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) jschoubben 2026-11-05 18:23:43 +01:00
  • a2a321dfa2 Require the external packages a module's build reaches (issue 1966) jschoubben 2026-11-05 18:11:56 +01:00
  • 036f39a5a5 Require every mesh package of the group at the floor version (ADR 0573 sections 2 and 4, issue 1966) jschoubben 2026-11-05 16:56:39 +00:00
  • 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) jschoubben 2026-11-05 16:46:25 +01:00
  • 396ccc0e11 Operator-channel client: the bench shapes tested against their written wire, with no mesh-sdk channel import (B6j; ADR 0634 §5; issue 1966) jschoubben 2026-11-05 16:45:22 +01:00
  • 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) jschoubben 2026-11-05 16:21:28 +01:00
  • 311654f224 node-engine client: RootContract, the contract from which an engine judges an account's root (B5g; ADR 0634 §4; issue 1966) jschoubben 2026-11-05 16:02:42 +01:00
  • 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) jschoubben 2026-11-05 16:02:00 +01:00
  • 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) jschoubben 2026-11-05 15:58:13 +01:00
  • 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) jschoubben 2026-11-05 15:54:21 +01:00
  • 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) jschoubben 2026-11-05 15:43:25 +01:00
  • 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) jschoubben 2026-11-05 15:35:17 +01:00
  • 71c8b9f964 Merge branch 'b4/registry' into feat/registry-milestone jschoubben 2026-11-05 15:35:02 +01:00
  • 54a42db4ec Module assigner client: the placement and seat-holders states by name, and the machines a placement names (ADR 0634 §4; issue 1966) jschoubben 2026-11-05 15:28:18 +01:00
  • 57dd579234 Wants seat: the backup answer of a want is again or skip (ADR 0634; issue 1966) jschoubben 2026-11-05 15:27:08 +01:00
  • 6d5fe4572d Placement seat: the tunnel found on a node is a typed record, not a free object (ADR 0634 §1; issue 1966) jschoubben 2026-11-05 15:25:57 +01:00
  • 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) jschoubben 2026-11-05 15:19:03 +01:00
  • 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) jschoubben 2026-11-05 15:16:34 +01:00
  • 82b02ff099 The Connectivity folder leaves mesh-contracts for mesh-connectivity-contracts, which holds the same seven definitions (ADR 0636 §5, §6; issue 1966) jschoubben 2026-11-05 15:14:57 +01:00
  • 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) jschoubben 2026-11-05 15:14:57 +01:00
  • 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) jschoubben 2026-11-05 15:14:16 +01:00
  • 181441e91b The generated contracts write date-time as time.Time (seatgen of B5d); the conditions and vault clients follow (ADR 0634; issue 1966) jschoubben 2026-11-05 15:06:14 +01:00
  • 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) jschoubben 2026-11-05 15:05:08 +01:00
  • cd2615f094 operator-channel: the times of the bench events are date-time, so the generated types are time.Time (B5d; ADR 0634; issue 1966) jschoubben 2026-11-05 15:01:57 +01:00
  • 29dc84a38b operatorchannelclient: the bench subjects and words the router and the channels share (B5d; ADR 0634 §1; issue 1966) jschoubben 2026-11-05 14:56:40 +01:00
  • 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) jschoubben 2026-11-05 14:53:24 +01:00
  • 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) jschoubben 2026-11-05 14:51:46 +01:00
  • 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) jschoubben 2026-11-05 14:50:04 +01:00
  • 074032e9d4 mesh-module-assigner client: CheckProposalID, the id a proposal and the ask about it carry (ADR 0634 §4; issue 1966) jschoubben 2026-11-05 14:49:56 +01:00
  • 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) jschoubben 2026-11-05 14:49:14 +01:00
  • 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) jschoubben 2026-11-05 14:45:30 +01:00
  • bd49b184a2 Merge b4/registry: Placement and Identity-and-access contracts, the domain on their definitions (ADR 0634 §7, §9; ADR 0636 §5; issue 1966) jschoubben 2026-11-05 14:42:12 +01:00
  • 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) jschoubben 2026-11-05 14:40:27 +01:00
  • 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) jschoubben 2026-11-05 14:34:07 +01:00
  • af804f5abf Hand-acts recorder is mesh-sdk's views.HandActs; the conditions client writes a part's findings as views.FindingWriter (ADR 0634 §4, ADR 0635 §4; issue 1966) jschoubben 2026-11-05 14:16:53 +01:00
  • fb5451f694 mesh-vault and mesh-node-enroller clients: the signing, the node's two logins and the own-secret drift; the token and the redeem proof (ADR 0634 §4; C-10; issue 1966) jschoubben 2026-11-05 14:16:00 +01:00
  • 97b7da6128 mesh-provisioner: the provision's plan entry typed in the definition, and fixtures for its two states (ADR 0634 §6; issue 1966) jschoubben 2026-11-05 14:15:36 +01:00
  • 935a0c7753 Each generated TypeScript package gets its lock, its package.json without dependencies and its type-check config (ADR 0634 §8, F7; issue 1966) jschoubben 2026-11-05 14:14:32 +01:00
  • c5fc93644f mesh-module-assigner client: the placement keys assembled into a node's placement, who stands where since when, who holds a seat, what a placement says to the composition; the node key's digest kept as the first writer made it (ADR 0634 §4; C-6; issue 1966) jschoubben 2026-11-05 14:14:01 +01:00
  • 929bf5539e Every seat definition names its glossary domain; the schema requires it (ADR 0636 §5; issue 1966) jschoubben 2026-11-05 14:11:19 +01:00
  • 326d729c0b Placement and Identity-and-access contracts: mesh-module-assigner and mesh-wants whole with states, mesh-vault moves, mesh-node-enroller whole, node-secret-service moves; the two seats renamed (ADR 0634 §7, §9; C-5, C-10; issue 1966) jschoubben 2026-11-05 14:09:45 +01:00
  • a3106a4b64 Provisioner client: the key and plan layouts, the provider and its harness, moved from mesh-sdk; the provider's 31 tests are 6 tables, the plan stays typed in the client (ADR 0634, ADR 0635; issue 1966) jschoubben 2026-11-05 14:09:06 +01:00
  • f7cc1ba920 Connectivity seat-list files join their folder; root module.json drops the seat-set and operator-channel packages (ADR 0634, ADR 0636; issue 1966) jschoubben 2026-11-05 13:24:11 +01:00
  • 211bdcaa5e Regenerate the domain contracts; hand-acts and conditions clients; operator-channel client moves; the seat-set package ends (ADR 0634, ADR 0635; issue 1966) jschoubben 2026-11-05 13:19:37 +01:00
  • 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) jschoubben 2026-11-05 12:51:40 +01:00
  • b6c127f237 Seat definition format: states replace records, operator-channel's asks first (ADR 0608 §1, ADR 0634 §6; issue 1966) jschoubben 2026-11-05 12:46:33 +01:00
  • 4d7b2a3778 Registry seats: no seat delivers artifact-store, and the two store seats serve list (ADR 0632 §2, §3; issue 1966) jschoubben 2026-11-04 20:52:15 +01:00
  • ae5266e776 Pin the clients' requires: mesh-sdk f94abb95 and this repository's seats at 347a3053, the group's final heads (issue 1966) jschoubben 2026-11-04 18:43:44 +01:00
  • 347a305358 Pin the clients' requires again: mesh-sdk 3526e9ef2a42 and this repository's seats at 859da7b1ce, the group's heads after review round 2 (issue 1966) jschoubben 2026-11-04 18:22:18 +01:00
  • 859da7b1ce Registry seats: remove answers and says kept when a tagged version shares its digest jschoubben 2026-11-04 18:12:34 +01:00
  • ec9529022c Pin the clients' requires: mesh-sdk 719956b7451a and this repository's seats at 5b440ca877, the group's heads (issue 1966) jschoubben 2026-11-04 17:40:00 +01:00
  • 5b440ca877 README: name where seatgen -check now lives jschoubben 2026-11-04 16:58:34 +01:00
  • 7d8f090b75 Registry seats: the removal reasons are constants, a release of nothing held answers released false, packages carry their own language's names jschoubben 2026-11-04 16:32:15 +01:00
  • 5118c5f425 J7 (1): the operator-channel client reads an ask its keeper carries back, held to its id and an option jschoubben 2026-11-04 15:38:46 +01:00
  • d9af39256e J4 (A2j finding 2): the checker's verdict event names each series change, so a reader never loses one to a cut status line jschoubben 2026-11-04 14:52:52 +01:00
  • 4afce1aac8 Drop node-engine's optional verb pull-waits: no record gives the seat that verb jschoubben 2026-11-04 13:52:54 +01:00
  • 22abe5c955 ADR 0627 §1: node-engine's client holds the checks of compose-candidate's ask and answer jschoubben 2026-11-04 13:50:00 +01:00
  • 252b619470 Join the forge's main (its first commit, the README) into the registry milestone jschoubben 2026-11-04 13:46:26 +01:00
  • 652606f59a Join lead-47's node-engine seat whole into the registry milestone, in its own Go module and npm package jschoubben 2026-11-04 13:46:05 +01:00
  • a6f859de3f ADR 0625 §1: each seat defined whole is an npm package of its own, declared in module.json jschoubben 2026-11-04 13:40:54 +01:00
  • 9d57c09594 ADR 0625 §10: the README says where a seat's definition, contract and client go, and how each is checked jschoubben 2026-11-04 13:34:41 +01:00
  • 3368a055a4 SD-M2c (A2d): a registry outcome names the Go module path a Go package is fetched under jschoubben 2026-11-04 13:32:24 +01:00
  • 4ce5dec682 SD-M2d: operator-channel's offered and closed are on the router's stream asks, mesh.stream.<holder>.event.* jschoubben 2026-11-04 13:31:16 +01:00
  • 1bcb18d1c7 SD-M2d, ADR 0627 §1: the vault's sign, enrolment-token and node-account answers and its signed event are typed jschoubben 2026-11-04 13:29:47 +01:00
  • 6fd4eca51c ADR 0627 §1: operator-channel's client holds a process connection's state to its Store jschoubben 2026-11-04 13:27:00 +01:00
  • cc2d3aafdb SD-M2b, SD-M2d: the checker's and mesh-config's events kept in their own streams are mesh.stream.<holder>.event.* jschoubben 2026-11-04 13:17:26 +01:00
  • 323e6a6be2 SD-M2a: mesh-broker's Held says the entry's state and why, so show says why an entry is in its state jschoubben 2026-11-04 13:15:18 +01:00
  • b5db9466c2 ADR 0627 §1: operator-channel's client holds the asking and the warrant's checks over the contract's types jschoubben 2026-11-04 13:13:43 +01:00
  • a1ef06b20e ADR 0627 §1: the four registry seats' clients publish a file in parts over their own seat jschoubben 2026-11-04 13:08:59 +01:00
  • f32ea4ba75 SD-M2d: the checker's tag-wanted names the pull request's branch jschoubben 2026-11-04 12:53:49 +01:00
  • 96b7eeeaf7 SD-M2b: mesh-broker's events on the shared events stream, 7 days jschoubben 2026-11-04 12:53:19 +01:00
  • c62ce1c309 ADR 0625: each seat defined whole is a Go module and a package artifact of its own jschoubben 2026-11-04 12:48:57 +01:00
  • 87412fd307 SD-M2d: operator-channel's decided kept 7 days, on the shared events stream jschoubben 2026-11-04 12:42:35 +01:00
  • f31de828e9 SD-M2b: mesh-broker's events on mesh.seat.mesh-broker.said.<event> jschoubben 2026-11-04 12:42:16 +01:00
  • 7498d689e2 The node-engine seat whole: every verb's answer, its events' bodies, and ADR 0618's manifest-reads and manifest-reads-changed jschoubben 2026-11-04 12:36:10 +01:00
  • f3a9cd17d6 SD-M2b: mesh-broker's events carry the binding and the verdict's revision (the lead's ruling, 12:4x) jschoubben 2026-11-04 12:35:30 +01:00
  • e9c97f9e9f SD-M2a, SD-M2b: the registry and broker verbs are optional until their holders serve them (design 33 §7) jschoubben 2026-11-04 12:33:59 +01:00
  • 52b05d50cb SD-M4: mesh-contracts declares its Go and TypeScript packages, series 0.1, generated from its definitions (design 26) jschoubben 2026-11-04 12:27:55 +01:00
  • 88972faf08 SD-M2a: a publish-part chunk is at most 760 KiB, so its message stays under the bus's 1 MiB with its fields jschoubben 2026-11-04 12:26:44 +01:00
  • 5b4239e6d9 SD-M3: the node-engine seat's read-only verb pull-waits (design 51, A7's ENG-9) jschoubben 2026-11-04 12:19:52 +01:00
  • 7f0b0f3b42 SD-M2c: retire takes ask jschoubben 2026-11-04 12:01:18 +01:00
  • a6e3b3bb4f SD-M2a, SD-M2b: keep the record that made npm-package-registry and mesh-broker seats as their decision jschoubben 2026-11-04 11:55:32 +01:00
  • f0a2feb778 SD-M3: each whole seat's package lists its verbs and events jschoubben 2026-11-04 11:54:38 +01:00
  • c7fb8d6689 SD-M3: the Go and TypeScript generated from the definitions (design 26 *The generator*) jschoubben 2026-11-04 11:50:54 +01:00
  • df74b712c0 SD-M3: every other seat at the seat list's grain, in its reading order (ADR 0613 §2) jschoubben 2026-11-04 11:50:54 +01:00
  • bf880e9f7f SD-M2d: mesh-delivery-checker and operator-channel whole (ADR 0620 §1, §2) jschoubben 2026-11-04 11:50:54 +01:00
  • f7b3744a90 SD-M2c: mesh-config and mesh-vault whole, renames and retire new; the holders' own events beside them (ADR 0620 §1-§3, design 32) jschoubben 2026-11-04 11:50:54 +01:00
  • 4f37cc2db9 SD-M2b: mesh-broker whole: its eight verbs, nine events and the bus-state binding (design 25 § 12.3, ADR 0595 §5, §6) jschoubben 2026-11-04 11:50:54 +01:00
  • 2fade8d603 SD-M2a: the four registry seats whole, their shared verbs written once (design 51, ADR 0605, ADR 0611, ADR 0617 §2) jschoubben 2026-11-04 11:50:54 +01:00
  • 166aad0a99 SD-M1: the seat definition's format and its own schema (ADR 0608 §1, design 26) jschoubben 2026-11-04 11:41:29 +01:00
  • f9c3be614f Start the seat contracts' repository (ADR 0608 §5) jschoubben 2026-11-04 11:39:11 +01:00