Commit Graph
8 Commits
Author SHA1 Message Date
jschoubben 4d7b2a3778 Registry seats: no seat delivers artifact-store, and the two store seats serve list (ADR 0632 §2, §3; issue 1966)
The store's address is the registry seat holder's listen, so the provision
artifact-store retires; the sweep and the read tools read the store through
list, never by its files or its read side.

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
2026-11-04 20:52:15 +01:00
jschoubben 859da7b1ce Registry seats: remove answers and says kept when a tagged version shares its digest
A store that cannot remove a tag alone (another tag names its digest) kept the tag and the holder said
removed, so the builder and every follower believed the tagged version gone while it stayed pullable:
work reported done that was not done. The shared registry part gains the outcome kept: in remove's
answer (kept, the reason shared-digest, the tags still naming the digest) and as its own event, in all
four registry seats. Regenerated with mesh-catalog's seatgen (join-mesh-catalog ccb7eaff); seatgen
-check passes; fixtures for the answer and the event in each seat.

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
2026-11-04 18:12:34 +01:00
jschoubben 7d8f090b75 Registry seats: the removal reasons are constants, a release of nothing held answers released false, packages carry their own language's names
seatgen writes a string's enum as Go constants, so the sweep names
RemoveInputReasonRetention instead of the literal. release of what is not
held is no error. The package seats' fixtures name a package as design 32
does (git.novox.be/novox/mesh-sdk/go, @novox/mesh-sdk), name says so, and
module equals name for a Go package. Generated with mesh-catalog's seatgen
(wip/registry-a3); seatgen -check passes.

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
2026-11-04 16:32:15 +01:00
jschoubben 3368a055a4 SD-M2c (A2d): a registry outcome names the Go module path a Go package is fetched under
go-package-registry's published says the module (field module), so a reader fetches the version by its path. The
four registry seats take their events whole from the part registry, which refuses a seat redefining one, so the
field is the part's, optional and empty for every other kind.

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
2026-11-04 13:32:24 +01:00
jschoubben 96b7eeeaf7 SD-M2b: mesh-broker's events on the shared events stream, 7 days
The lead's ruling of 13:0x replaces 12:5x's said-subject: mesh-broker's events follow every seat, on
mesh.seat.mesh-broker.event.<event> in the shared events stream, 7 days; the bus module keeps a longer history on a
stream of its own module. So every seat family is that stream filtered to the seat's subjects: a definition says 7
days and no cap of its own, and the reader refuses anything else.

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
2026-11-04 12:53:19 +01:00
jschoubben c62ce1c309 ADR 0625: each seat defined whole is a Go module and a package artifact of its own
ADR 0625 §1-§3 (accepted 12:45): the seat set stays the root Go module's package; each seat defined whole is a Go
module of its own, since the fingerprint counts a Go module's go.mod and go.sum, so a change of one seat moves only
its importers. A seat's module imports nothing: the registry part's types are written into each registry seat whole,
so no seat module requires a sibling's version.

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
2026-11-04 12:48:57 +01:00
jschoubben f0a2feb778 SD-M3: each whole seat's package lists its verbs and events
Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
2026-11-04 11:54:38 +01:00
jschoubben c7fb8d6689 SD-M3: the Go and TypeScript generated from the definitions (design 26 *The generator*)
go/seats the seat list every reader compiles and every seat's name; a package per whole seat with its names, subjects,
types and a test of its fixtures; ts/ the same as a TypeScript package. Written by seatgen, never by hand.

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