Commit Graph
2856 Commits
Author SHA1 Message Date
jschoubben 0098960b5a W16.3: mesh-provisioner reads modules and manifests from the catalog half through meshcatalogclient's branch follower (milestone 47/G)
Builds: design 47 G §196, §594, §614; lead answers A-5, A-15

Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
2026-11-11 23:24:35 +01:00
jschoubben 095e23ecda W16.4: mesh-self-check reads which modules exist and their manifests from the catalog half through meshcatalogclient's branch follower (milestone 47/G)
Builds: design 47 G §196, §594, §614; lead answers A-5, A-15

Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
2026-11-11 23:21:31 +01:00
jschoubben 469763547c Merge branch 'feat/47-G-findings4b' into feat/47-G-dev4-join 2026-11-11 22:25:53 +01:00
jschoubben 9aae6244d5 Merge branch 'feat/47-G-findings4' into feat/47-G-dev4-join 2026-11-11 22:25:53 +01:00
jschoubben 6a612c58cb G findings: mesh-config, gitea and distribution declare their finding events in the foundation form, the stream <module>-findings in streams
Builds: design 47 G A-30, §529, §577
2026-11-11 22:24:58 +01:00
jschoubben d03ffa8038 G findings: mesh-config's and mesh-vault's owner views are followed by the reader (Follow), not adopted: they hear the owner's own views event
Adopt subscribes a seat's event with further parts (<seat>.<event>.>), which never matches the plain views event of an owner; the reader's Follow hears it and asks again on a gap. Also the distribution whole test counts its own two events by subject, as the writer's are said beside them.

Builds: design 47 G A-28, A-26, A-30
2026-11-11 22:22:24 +01:00
jschoubben f06dd01bfe GATE A-39, A-29, A-37, A-30, A-40, §592: the gate's findings go through one held writer over its own findings state, approval-carried-open is written for each approval carried and cleared by the seat git's pull-merged and pull-closed
Builds: design 47 G A-39, A-29, A-37, A-30, A-17, A-40, §542, §592

Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
2026-11-11 22:19:53 +01:00
jschoubben c81915b039 G findings: distribution-tools and package-registry make the held writer at once and start it after Serve, as it seeds at Start
Builds: design 47 G A-40, A-32
2026-11-11 22:19:22 +01:00
jschoubben 839147b146 G findings: artifact-store-tools and mesh-config read what their held writer holds, so a restart neither drops nor rewrites their findings
Their in-memory open sets go.

Builds: design 47 G A-32, A-29, A-38
2026-11-11 22:17:21 +01:00
jschoubben 14699713b9 GATE A-39: every change of a record owes its pull requests a note line and the delivery view, and a comment when it ends failed or held
Builds: design 47 G A-39, A-35, §158, §161 to §167

Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
2026-11-11 22:16:16 +01:00
jschoubben 652493e2ac G: the package seats' whole test plays the runtime's put and get sessions
Builds: design 47 G A-21, §518, §490

Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
2026-11-11 22:15:42 +01:00
jschoubben fc83f204f4 G findings: the held writers of the stdio bundles are made once the runtime has its channel
The held writer reads the keys of its state when it is made, so it is made after Serve answers state calls; the keeper says a finding is not said before it exists.

Builds: design 47 G A-32, A-29, A-37
2026-11-11 22:15:42 +01:00
jschoubben 3eee45aa49 GATE: the gate's whole-module test opens a record and a source key from a take-in.taken, and its test bus declares the template states
The test bus made buckets from the old state section alone, so a template state (deliveries, groups, owed, conditions) was 'not declared'; it now
makes a bucket for each requires entry of the template state under its local name (A-20).

Builds: design 47 G §613, A-20, A-33, A-34 (G-17, G-20)
2026-11-11 22:13:07 +01:00
jschoubben 9f4d4eecba G: the holder's test of a part sent again says what the receiver does since design 51 (chunk 0 again starts the part afresh, a chunk out of sequence is refused)
Builds: design 47 G A-21
2026-11-11 22:12:21 +01:00
jschoubben f0c7d468c3 GATE A-33, A-34: a take-in.taken opens one delivery record and moves its branch's source, saying source-moved
Builds: design 47 G §151, §291, §592, A-33, A-34 (G-3, G-5, G-16, G-20)
2026-11-11 22:11:59 +01:00
jschoubben 18fd2a32bf G findings: distribution and gitea's package registry write through the held writer, so a restart neither drops nor rewrites their findings
Their in-memory open sets go.

Builds: design 47 G A-32, A-29, A-37
2026-11-11 22:11:12 +01:00
jschoubben 7cc4a33cc5 GATE A-24, §172, §431, §592, §593, §613: the gate keeps no merge states; deliveries, show, groups and stalled answer the delivery records
Removes holder, table, approval, ready, onestatus, pullkey, checks, group_merge, the effects, the forge reads, the teller's
and the view's reads, kvOperator, kvPulls, delivery_merge_again and their tests. deliveries, show, groups and stalled answer
the records as kept (stalled: a record open past a day, and an act owed unanswered past 15 minutes, read from the record's
acts); the switch reads the old section deliveries and says approval-carried for each unperformed merges key. The manifest
drops pulls, asks, reads, the forge, teller and view consumes and invokes, and the events group and merged.

Builds: design 47 G §172, §431, §592, §593, §613, A-24, A-35 (G-3, G-9, G-16, G-17, G-20)

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 22:10:42 +01:00
jschoubben 8255640d00 G findings: claude-code, mesh-provisioner, distribution, mesh-config and gitea declare the writer's three events
The writer listens to mesh-conditions.findings-asked, so each also consumes it, as the modules that moved before.

Builds: design 47 G A-30, §383, §686

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 22:10:19 +01:00
jschoubben 3215e5eeb9 G findings: distribution and gitea's package registry delete their old finding keys once at start
Builds: design 47 G A-31, A-14, A-22

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 22:08:33 +01:00
jschoubben 1cc67aa9d7 G findings: mesh-config's and mesh-vault's own followers go through a views.Reader holding the writer, adopted
Builds: design 47 G A-28, A-26, A-22, §687

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 22:07:02 +01:00
jschoubben 06ebd7e8cf G findings: the writers name the ask's subject from the contract; the readers take the writer whole
WriterConfig.Asked is the generated mesh-conditions contract's SubjectFindingsAsked (A-17), a reader's Findings is the
module's writer itself (A-22, A-26), and mesh-build-go's single manifest ask writes and clears its first-view-unanswered
finding through the writer with the contract's Finding (A-28). mesh-config and mesh-vault's own followers (A-28) are not
yet moved onto a views.Reader: they do not compile at mesh-sdk 24f876a.

Builds: design 47 G §687, §689, A-17, A-22, A-26, A-28

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 22:03:09 +01:00
jschoubben cd24677756 mesh-self-check and mesh-healers give the writer the findings-asked subject of the seat's contract, and the reader the writer itself
Builds: design 47 G A-17, A-16

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:59:18 +01:00
jschoubben 05fcebf9c5 COND A-22: the keeper holds findings as the contract's generic Finding and takes its own through the writer's wire form
Builds: design 47 G §434, §437, §439, A-3, A-22 (G-20)

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:58:08 +01:00
jschoubben 95f29d6c54 G findings: the modules with findings of their own write them through mesh-sdk's writer
artifact-store-tools (image-missing, sweep-refused), distribution (program and tools bundle, one writer each over its own
kinds), gitea's package-registry (and the token-refused key the TypeScript bundle watches) and mesh-config keep their
findings open and write and clear them through the generic writer; mesh-vault states its assignments view's. A part of an
id told apart by a ref is in the id (<id>.<ref>), each escaped; the writer starts once Serve has the runtime's channel; the
removed findings helpers and resolved words go.

Builds: design 47 G §686, §687, §689, A-3, A-14, A-16, A-22

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:58:08 +01:00
jschoubben a587125047 GATE A-23, §431: the gate serves recovery, marking the delivery record's field recovery, and no longer serves checks
Builds: design 47 G §81, §132, §431, A-23 (G-20), A-18 as corrected

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:55:57 +01:00
jschoubben ab5423f87f GATE: the gate's manifest consumes the seat git's events with the hyphens the seat gives them
Builds: design 47 G §396, §310 (G-9: the seat git's events take hyphens)

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:52:11 +01:00
jschoubben cbd4da3a11 GATE §613: deliveries, groups, owed and conditions are template state entries under the same names, taking the buckets they had
merges and source stay in the old state section; pulls and asks wait for the removal of the merge states.

Builds: design 47 G §613, A-8, A-20 (G-17, G-20)

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:49:54 +01:00
jschoubben b78e90c0c7 mesh-healers writes its findings through mesh-sdk's finding writer and the generated finding
Builds: design 47 G §686, §689, A-3, A-13, A-14, A-16

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:49:17 +01:00
jschoubben 11d1be3ef8 GATE A-18: the gate's record type drops the remove operation, and table, recheck and close go with their handlers and tools
Builds: design 47 G §587, §305, A-18 (G-20)

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:48:19 +01:00
jschoubben 9677f200f3 mesh-self-check writes its findings through mesh-sdk's finding writer and the generated finding
Builds: design 47 G §686, §687, §689, A-3, A-13, A-14, A-16

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:47:00 +01:00
jschoubben dd4449de61 G findings: the view-only modules write their reader's findings through mesh-sdk's stdio writer
nfs-server, minio object-store, claude-code, mesh-watcher, mesh-provisioner and mesh-build-go hand their views reader
views.WriterFindings over views.NewStdioWriter and start it; the removed meshconditionsclient.FindingWriter goes.

Builds: design 47 G §686, §687, §689, A-3, A-16, A-17

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:46:49 +01:00
jschoubben 846291069b GATE17, GATE11: the gate removes a record by the runtime's ledger removal and reads the plain fill; settle and its ask machinery go
GATE17: record.go Remove asks buscalls.LedgerRemove, recordfill.go reads buscalls.Fill, the manifest names ledger-upkeep-calls.
GATE11: the verb settle, its ask, EvSettled and the Settle field leave with the merge states.

Builds: design 47 G §587, §431

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:44:05 +01:00
jschoubben d786477a0d GATE7 (source part, §690): the gate's source answers a branch's source key, or the branches it keeps
The gate's source value is the contract's SourceByBranchValue and its key SourceKey(branch); the verb takes an optional
branch and answers branches alone when given none. The whole-module package does not compile on the join for GATE11
(settle) and GATE17 (ledger fill and remove), so the unit suite was run with those five sites stubbed in a scratch edit,
never committed: green apart from the stubbed removal case.

Builds: design 47 G §690, §614, §15

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:35:26 +01:00
jschoubben b90d3a4556 The delivery gate names the ledger's fill answer as the sdk has it: buscalls.Fill
The sdk (02bea66) answers the ledger's fill call as one buscalls.Fill; the gate's LedgerFilled is a name that is gone.

Builds: design 47 G §462

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:26:20 +01:00
jschoubben 9c1cb63c3b mesh-provisioner uses the catalog key's codec meshcatalogkey, as meshcatalogclient's wrappers go
Builds: design 47 G §670

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:18:40 +01:00
jschoubben fa0f851f81 mesh-build-go, mesh-build-image and mesh-build-node read a step key's node as SD4 has it: ParseStepKey answers asker, node and id
Builds: design 47 G §484, §649

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:16:18 +01:00
jschoubben 65570636b2 Merge branch 'feat/47-G-conditions' into feat/47-G-dev2-join 2026-11-11 21:06:13 +01:00
jschoubben 1af839fb72 COND9 (moved-stream half): the keeper keeps a moved part's conditions, drops the old source and asks once on the new stream
Builds: design 47 G §663, §690

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 20:44:44 +01:00
jschoubben ecf597adce COND11 (in part): the keeper's ask bound and first-view bound are settings read at its start; the two hours wait on COND7
Builds: design 47 G §557

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 20:32:33 +01:00
jschoubben 811b59b454 COND9: the keeper takes a part whose finding stream the bus module made as a source (the moved-stream half stops on a question)
Builds: design 47 G §515, §663

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 20:27:47 +01:00
jschoubben 8f4f70f088 COND6: the keeper follows one catalog view per watched branch and adopts a branch registered while it runs
Builds: design 47 G §365, §479, §521, §532

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 20:26:40 +01:00
jschoubben ef60e5d09e COND2 (whole): the keeper's whole test starts with a kept source and no view of the catalog half
Builds: design 47 G §388

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 15:49:13 +01:00
jschoubben 26c82a507a OBS4: artifact-store-tools, mesh-watcher, minio and nfs-server ask findings and finding-events in requires
Builds: design 47 G §529, §387

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 15:48:35 +01:00
jschoubben 76be864bff HEAL2 (manifest only): mesh-healers asks findings and finding-events in requires; the writer's use waits on the contracts' finding subjects
Builds: design 47 G §529, §384, §461

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 15:48:35 +01:00
jschoubben 9e2311029a COND2: the keeper keeps its sources in the state findings-views and hears them before its first view of the catalog half
Builds: design 47 G §388, §365

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 15:46:35 +01:00
jschoubben bea1c446ea NATS10: the bus module serves no restore point tool and keeps no state kept
Reverts bbd9f638, c2e017a4 and b6884796; cmd/mesh-nats-snapshot/restore.go is as before them. The manifest test
asserts the claim serves only the reading verbs and the keeper's state is asked, requests, spent.

Builds: design 47 G §554, §555

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 15:45:03 +01:00
jschoubben 1e55ea8e4e Merge branch 'feat/47-G-build-conditions' into feat/47-G-conditions 2026-11-11 15:44:22 +01:00
jschoubben 9f62e0a2ba BLD6: the real unit level's broken fixture fails in its tests alone, go vet being the lint step's
Builds: design 47 G §328, §417

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 14:59:16 +01:00
jschoubben 579cd33cd5 GATE2: the whole-module test counts the merges handed in the state merges, the merge as an owed act being left out of the join
Builds: design 47 G §160, tests 34, 39 (eb131beb left out, G §167, §542)

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 14:55:49 +01:00
jschoubben d3286ad0eb BLD3, BLD4: the joined step test carries no names list, the lint's fixed-name rule being taken out
Builds: design 47 G §7, §328, §329

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 14:53:43 +01:00