Commit Graph
461 Commits
Author SHA1 Message Date
mesh-admin c0b1225f6d Merge pull request 'A suite run in which no test passed exits non-zero and names its skips (issue 693)' (#105) from fix/693-a-run-that-proved-nothing-is-not-passed into main 2026-10-14 05:05:36 +00:00
jochen 5ba88c69fa Read the runner's last summary and NOT REACHED in any case (issue 693, review 253)
mesh/merge-gate head 5ba88c69fa80 merged into trunk f9be71b9ad44 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 5ba88c69fa80 merged into trunk f9be71b9ad44 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
mesh/delivery-group group fix/693-a-run-that-proved-nothing-is-not-passed delivered: every member is delivered
A test that printed a summary-shaped line before it skipped was read as the
runner's totals: "ℹ pass 5" made a run that proved nothing pass.
2026-10-14 03:28:14 +02:00
jochen 8635560993 A suite run in which no test passed exits non-zero and names its skips (issue 693)
mesh/merge-gate head 8635560993aa merged into trunk f9be71b9ad44 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 8635560993aa merged into trunk f9be71b9ad44 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery-group group fix/693-a-run-that-proved-nothing-is-not-passed ready: every member ready, and composed together they pass
mesh/delivery superseded: a newer head of the same pull request
The runner exits 0 when every test skipped, so a bed that stopped before its
subject and skipped its only test as NOT REACHED was recorded as passed, "0
passed, 0 failed". The suite now collects each skip and its reason through a
reporter of its own, prints NOT PASSED and a skipped line per skip after its
recorded line, keeps them in the receipt, and exits 1 when no test passed or a
test was not reached. A skip for a declared reason beside passes stays passed.
2026-10-14 03:14:05 +02:00
mesh-admin f9be71b9ad Merge pull request 'A bed's forge takes the lab's shallow checkouts (issue 689)' (#103) from fix/689-a-shallow-checkout-reaches-the-forge into main 2026-10-14 00:52:06 +00:00
mesh-admin 307dd23d6d Merge pull request 'The lab's phone shows an HTML message as Telegram does, so a tap carries back the words shown (issue 692)' (#104) from fix/692-the-fake-phone-reads-html into main 2026-10-14 00:45:34 +00:00
jochen dcaf843b8a The lab's phone shows an HTML message as Telegram does, so a tap carries back the words shown (issue 692)
mesh/merge-gate head dcaf843b8a6e merged into trunk 1316a405a630 — pass: the change touches no module of the mesh's graph
mesh/repo-check head dcaf843b8a6e merged into trunk 1316a405a630 — pass: THE CHANGE ALTERS ITS OWN CHECK (asks/merge-check.sh): main's version judged it; t…
mesh/delivery delivered
Since mesh-catalog #278 the channel sends every message in HTML (issues 383, 639). The fake Bot API kept
the text as sent, tags and entities included, and gave that back on a tap; the channel compares a tap by
the plain words it showed, so the proof's tap was refused as "this message does not show what the mesh put
there". Telegram reads the markup and gives the plain words back; the fake now does too.
2026-10-14 02:37:06 +02:00
jochen 7ed7da1398 Let a bed's forge take the lab's shallow checkouts (issue 689)
mesh/delivery delivered
mesh/merge-gate head 7ed7da1398df merged into trunk 307dd23d6d2a — pass: the change touches no module of the mesh's graph
mesh/repo-check head 7ed7da1398df merged into trunk 307dd23d6d2a — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
The lab module clones every repository with --depth 50, and a fresh bare
repository refuses a push whose history ends in a cut, so the genesis bed
raised its anchor and forge and then skipped. The three beds that carry a
checkout into a forge now share one helper that sets receive.shallowUpdate
on the bare repository. Unshallowing instead cannot work in a lab run: the
forge credential is removed once the run's clones are done.
2026-10-14 02:21:21 +02:00
mesh-admin 1316a405a6 Merge pull request 'Register R164: a credential only a person can give was made anyway (hq issue 164)' (#102) from fix/164-replay into main 2026-10-13 11:21:00 +00:00
jochen a0754ab06d Point R164 at the merge of its fix (mesh-controller #298) now it is merged
mesh/merge-gate head a0754ab06d59 merged into trunk a8d86bb10b9d — pass: the change touches no module of the mesh's graph
mesh/repo-check head a0754ab06d59 merged into trunk a8d86bb10b9d — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
2026-10-13 13:11:01 +02:00
jochen adaf525a88 Register R164: a credential only a person can give was made anyway (hq issue 164)
The replay lives in mesh-controller (TestReplay164) and is proved against the main its fix branched
from until the fix merges: go run ./cmd/prove R164 says it fails before and passes on the fix.
2026-10-13 13:10:03 +02:00
mesh-admin a8d86bb10b Merge pull request 'Register R614: a new SDK planned alone, rebuilding neither its toolchain nor its bundles (hq issue 614)' (#100) from fix/614-replay into main 2026-10-13 09:40:22 +00:00
jochen 9deefc6370 R614's fix is the merge of mesh-controller #296 (hq issue 614)
mesh/merge-gate head 9deefc637065 merged into trunk d7098c4b2781 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 9deefc637065 merged into trunk d7098c4b2781 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
Proved against the merge: fails on its first parent, passes on it.
2026-10-13 11:36:37 +02:00
mesh-admin d7098c4b27 Merge pull request 'Serve the Go toolchain's repository to the genesis bed's installer (issue 616)' (#101) from fix/616-the-forge-serves-the-go-toolchain into main 2026-10-13 09:23:08 +00:00
jochen d21949c041 Serve the Go toolchain's repository to the genesis bed's installer (hq issue 616)
mesh/merge-gate head d21949c04150 merged into trunk f71250c3ddd5 — pass: the change touches no module of the mesh's graph
mesh/repo-check head d21949c04150 merged into trunk f71250c3ddd5 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
Genesis's base step now builds mesh-tools-go beside mesh-tools, from the repository beside --tools-source;
the bed's forge served only the four repositories genesis cloned before, so the step would find nothing
there.
2026-10-13 11:13:58 +02:00
jochen 7806a42c45 Register R614: a new SDK planned alone, rebuilding neither its toolchain nor the bundles in it (hq issue 614)
mesh/merge-gate out of date: judged against trunk f71250c3ddd5, the trunk is now d7098c4b2781; judged again on a recheck or when it is merged
mesh/repo-check out of date: judged against trunk f71250c3ddd5, the trunk is now d7098c4b2781; judged again on a recheck or when it is merged
mesh/delivery superseded: a newer head of the same pull request
Its replay (mesh-controller #296) holds the plan of 2026-10-13, "builds mesh-sdk, sent
nowhere", against the fix that reads a built module's build edges from what is kept of it.
Proved: fails on main, passes on the fix.
2026-10-13 11:10:16 +02:00
mesh-admin f71250c3dd Merge pull request 'Measure that the postgres module's image initialises where genesis raises the store (issue 609, hq ADR 0338 §5)' (#99) from fix/609-the-store-genesis-raises-initialises into main 2026-10-13 08:55:43 +00:00
jochen ba2806b985 Measure that the postgres module's image initialises where genesis now raises the store (hq issue 609, ADR 0338 §5)
mesh/merge-gate head ba2806b985ce merged into trunk 9497dda9291c — pass: the change touches no module of the mesh's graph
mesh/repo-check head ba2806b985ce merged into trunk 9497dda9291c — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
The genesis bundle raises the store as the postgres module's server: its pgvector image, its data in a
directory made before the store starts and owned as the module declares it, its password from a file.
The decision names one measurement before it is relied on: that image, on such a directory, empty,
initialises a store that answers with that password. The image and the owner are read from the
catalogue's manifest, so the measurement moves with the module's pin.
2026-10-13 10:47:34 +02:00
mesh-admin 9497dda929 Merge pull request 'Register the replay of issue 239: a module's name is not taken over by another repository (hq issue 239)' (#98) from fix/239-replay into main 2026-10-13 05:37:14 +00:00
jochen 3b4ba29bec Register the replay of issue 239: a module's name is not taken over by another repository
mesh/merge-gate head 3b4ba29becc8 merged into trunk 3eb48c949fc2 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 3b4ba29becc8 merged into trunk 3eb48c949fc2 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
mesh/delivery-group group fix/239-replay delivered: every member is delivered
Its replay (mesh-controller #294) holds the photo app's outage of 2026-10-04 against the fix that
refuses a build from a repository other than the module's own (mesh-controller #174).
2026-10-13 07:25:26 +02:00
mesh-admin 3eb48c949f Merge pull request 'Register R363: a README-only merge made a new digest of an unchanged Go program (hq issue 363)' (#97) from fix/363-replay into main 2026-10-13 05:08:19 +00:00
jochen 5f13bf0aff Register R363: a README-only merge made a new digest of an unchanged Go program (hq issue 363)
mesh/merge-gate head 5f13bf0aff9c merged into trunk 73800225c3d0 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 5f13bf0aff9c merged into trunk 73800225c3d0 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
mesh/delivery-group group fix/363-replay stopped: a member was stopped
Proved with replays/cmd/prove: it fails on mesh-controller #292's first parent
and passes on its merge.
2026-10-13 07:01:47 +02:00
mesh-admin 73800225c3 Merge pull request 'Register R348: a fault from before a send failed the builds sent after it (hq issue 348)' (#96) from fix/348-replay into main 2026-10-13 04:39:44 +00:00
jochen becff66e0a Register R348: a fault from before a send failed the builds sent after it (hq issue 348)
mesh/merge-gate head becff66e0a8a merged into trunk 2aebf8f40e25 — pass: the change touches no module of the mesh's graph
mesh/repo-check head becff66e0a8a merged into trunk 2aebf8f40e25 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
mesh/delivery-group group fix/348-replay delivered: every member is delivered
Proved with replays/cmd/prove: it fails on mesh-controller #179's first parent
and passes on the fix. The resolver's half (mesh-catalog #161) has no replay:
the module had no Go before it, and the binding's loss never reproduced past
its burst; the entry says so.
2026-10-13 06:09:50 +02:00
mesh-admin 2aebf8f40e Merge pull request 'Register R349: a merge acted on late superseded the merge after it (hq issue 349)' (#95) from fix/349-replay into main 2026-10-13 03:54:15 +00:00
mesh-admin 0ca7a83e0b Merge pull request 'Register R92 as a bed: genesis on a runtime that trusts no registry (hq issue 92) — NOT PROVED, blocked by issue 146' (#85) from fix/92-replay into main 2026-10-13 03:49:20 +00:00
jochen d16c3db9d2 Point R349 at the replay that reaches main's batch cut (review of mesh-controller #290)
mesh/merge-gate head d16c3db9d2d0 merged into trunk 0ca7a83e0b62 — pass: the change touches no module of the mesh's graph
mesh/repo-check head d16c3db9d2d0 merged into trunk 0ca7a83e0b62 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
mesh/delivery-group group fix/349-replay delivered: every member is delivered
2026-10-13 05:49:05 +02:00
jochen 39ec294853 Register R349: a merge acted on late superseded the merge after it (hq issue 349)
mesh/merge-gate head 39ec2948539f merged into trunk 6ba65a12f218 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 39ec2948539f merged into trunk 6ba65a12f218 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery-group group fix/349-replay checking: 1 of 2 member(s) ready
mesh/delivery superseded: a newer head of the same pull request
Issue 349 is a core issue and resolves with a replay. The replay lives in
mesh-controller (#290) and is proved to fail on #179's parent and pass on it.
2026-10-13 05:22:56 +02:00
mesh-admin 6ba65a12f2 Merge pull request 'Register R340: a verb set what every agent session obeys (hq issue 340)' (#94) from fix/340-replay into main 2026-10-13 01:07:06 +00:00
jochen ea24e7890f Register R340: a verb set what every agent session obeys (hq issue 340)
mesh/merge-gate head ea24e7890f57 merged into trunk 51fa3a73ab3d — pass: the change touches no module of the mesh's graph
mesh/repo-check head ea24e7890f57 merged into trunk 51fa3a73ab3d — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
mesh/delivery-group group fix/340-replay delivered: every member is delivered
Issue 340 is a core issue and resolves with a replay; the test lives in
mesh-controller and is proved against the commit before #172.
2026-10-13 03:00:43 +02:00
jochen 0714f7a509 Pin R92 to today's genesis: main with every genesis fix, and the same without #91 (hq issue 92)
mesh/merge-gate head 0714f7a50933 merged into trunk 6ba65a12f218 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 0714f7a50933 merged into trunk 6ba65a12f218 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
At the fix's merge no genesis got past step 6 (issue 146), so neither side of the replay reached the
push it replays. Fix is mesh-host main 0d11b4fc; Before is that main with #91 reverted, on the
unmerged branch replay/r92-before; the controller and catalogue at their mains on both sides.
2026-10-13 02:59:45 +02:00
jochen d03f87b00d Register R92 as a bed: genesis on a runtime that trusts no registry (hq issue 92)
The lab's base image trusts the documentation ranges as plain-HTTP registries, so no genesis bed could
see the push to an untrusted registry that issue 92 is about (reviews 73 and 76 on mesh-host #91). The
bed takes that trust off the anchor before the installer runs and asks the runtime it trusts loopback
only, then runs genesis with --registry 192.0.2.10:5000 and holds that the control plane reaches the
registry, trusted by the mesh's name too.

The prover gains a bed kind: it builds the node-engine and its installer at each commit, the carried
builder from the pinned controller, and raises the bed; a bed that never reached the step it replays
skips, and a skip is an error, never the fault reproduced.

Not proved yet: genesis stops at step 6 on both sides, because the temporary controller has no
MESH_BUS_NATS and the bus template is refused by the installer (issue 146).
2026-10-13 02:57:21 +02:00
mesh-admin 51fa3a73ab Merge pull request 'Name the build agent where genesis needs the module that builds (issue 596)' (#93) from fix/596-genesis-names-the-build-agent into main 2026-10-13 00:57:03 +00:00
mesh-admin 383176a7ea Merge pull request 'Register R279 and R412: a folder could not follow its module's account; a seat named no paths (hq issues 279, 412)' (#90) from fix/279-412-replays into main 2026-10-13 00:45:30 +00:00
jochen 671d56a08a Register R279 and R412: a folder could not follow its module's account; a seat named no paths (hq issues 279, 412)
mesh/merge-gate head 671d56a08a47 merged into trunk b7f46559f053 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 671d56a08a47 merged into trunk b7f46559f053 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
mesh/delivery-group group fix/279-412-replays delivered: every member is delivered
Both proved with cmd/prove: each fails on the commit before its fix (mesh-controller #260, #267) and passes on it.
The replays' files are in mesh-controller fix/279-412-replays (3bdab29).
2026-10-13 02:40:08 +02:00
mesh-admin b7f46559f0 Merge pull request 'Register R166: a requirement could not be optional (hq issue 166)' (#92) from fix/166-replay into main 2026-10-13 00:38:10 +00:00
jochen abc022eece Name the build agent where genesis needs the module that builds (hq issue 596)
mesh/merge-gate head abc022eece61 merged into trunk 383176a7eab3 — pass: the change touches no module of the mesh's graph
mesh/repo-check head abc022eece61 merged into trunk 383176a7eab3 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
The beds checked the catalogue for builder/module.json before running genesis and the mesh beds held
'builder' among a raised mesh's modules; the catalogue retired builder for build-agent on 2026-10-03
(ADR 0190), so every genesis bed stopped before the installer ran.
2026-10-13 02:29:19 +02:00
jochen 87eca0c9a9 Register R166: a requirement could not be optional (hq issue 166)
mesh/merge-gate head 87eca0c9a9e8 merged into trunk e5ccf484684d — pass: the change touches no module of the mesh's graph
mesh/repo-check head 87eca0c9a9e8 merged into trunk e5ccf484684d — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
Issue 166 resolves with its replay. TestReplay166 in the controller (mesh-controller #287) uses only
what the catalogue had before #281, so the prover lays it over the commit before: it fails there and
passes on the fix.
2026-10-13 02:28:18 +02:00
mesh-admin e5ccf48468 Merge pull request 'Raise genesis past its broker step and hold that the bus is kept (issue 590, hq ADR 0333 §5)' (#91) from fix/590-genesis-keeps-its-bus into main 2026-10-13 00:22:07 +00:00
jochen c7c7268db0 Raise genesis past its broker step and hold that the bus is kept (hq issue 590, ADR 0333 §5)
mesh/merge-gate head c7c7268db08c merged into trunk d3ef6fa44caf — pass: the change touches no module of the mesh's graph (run 2)
mesh/repo-check head c7c7268db08c merged into trunk d3ef6fa44caf — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
The bed runs the installer from bare twice: first with a catalogue missing the nats module, so it stops
at the broker step by name and the bed reads the bus there; then with the whole catalogue, through the
step. It passes only when exactly one bus container runs, it is mesh-broker-nats on the module's image,
every stream that held something before the step is still the same stream, and the mesh still hears
from the first node. A first run that never reaches the step skips with the reason; a second run that
stops at the step fails.

The judgement is a pure function, test/integration/bus-kept.ts, held by unit tests without a lab.
2026-10-13 02:13:35 +02:00
mesh-admin d3ef6fa44c Merge pull request 'Name the one genesis bundle in every bed and the README (issue 146, ADR 0331)' (#89) from fix/146-one-genesis-bundle into main 2026-10-12 21:12:13 +00:00
jochen 1af6efb356 Name the one genesis bundle in every bed and the README (hq issue 146, ADR 0331)
mesh/merge-gate head 1af6efb35677 merged into trunk 782aa9f73791 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 1af6efb35677 merged into trunk 782aa9f73791 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
mesh-host now carries one genesis bundle, foundation-first-node.lock, on the bus the
mesh runs on; the NATS one it replaces is deleted. Beds that still named it would point
at a file that is gone, and the harness's rewrite for the previous broker's image
rewrote nothing.
2026-10-12 22:50:50 +02:00
mesh-admin 782aa9f737 Merge pull request 'Register R201: a plan sent the control node a controller older than the one running there (hq issue 201)' (#88) from fix/201-replay into main 2026-10-12 20:22:43 +00:00
jochen a96226f228 Register R201: a plan sent the control node a controller older than the one running there (hq issue 201)
mesh/merge-gate head a96226f22819 merged into trunk 5c1c6f56c9d9 — pass: the change touches no module of the mesh's graph
mesh/repo-check head a96226f22819 merged into trunk 5c1c6f56c9d9 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
Proved: fails on mesh-controller 84deb53^1, passes on 84deb53 (the fix, #273).
The replay is mesh-controller #275's TestReplay201ThePlansSend, since the
fix's own TestReplay201 reads what the fix added.
2026-10-12 21:18:59 +02:00
mesh-admin 5c1c6f56c9 Merge pull request 'Register R401 and R561: an outside secret nobody gave was made; a plan's id was pasted into SQL (hq issues 401, 561)' (#87) from fix/401-replay into main 2026-10-12 18:22:12 +00:00
jochen 3c655d83e1 Register R561: a plan's id was pasted into the SQL that reads it (hq issue 561)
mesh/merge-gate head 3c655d83e11e merged into trunk 24b833d19dad — pass: the change touches no module of the mesh's graph
mesh/repo-check head 3c655d83e11e merged into trunk 24b833d19dad — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery delivered
mesh/delivery-group group fix/401-replay delivered: every member is delivered
Proved: fails on mesh-controller f8daec0^1, passes on f8daec0 (the fix, #268).
2026-10-12 19:01:18 +02:00
jochen e63459dd70 Register R401: the send made a value for an own secret issued outside the mesh that nobody gave (hq issue 401)
mesh/delivery-group group fix/401-replay checking: 0 of 2 member(s) ready
mesh/merge-gate head e63459dd702a merged into trunk 24b833d19dad — pass: the change touches no module of the mesh's graph
mesh/repo-check head e63459dd702a merged into trunk 24b833d19dad — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/delivery superseded: a newer head of the same pull request
Proved: fails on mesh-controller 1e28342^1, passes on 1e28342 (the fix, #262). The replay is mesh-controller #274's TestReplay401, since the fix's own test reads what the fix added.
2026-10-12 18:37:30 +02:00
mesh-admin 24b833d19d Merge pull request 'Register R341: a check judged the head alone and let a merge that does not compile through (hq issue 341)' (#86) from feat/341-a-merge-check-judges-the-merge into main 2026-10-12 16:11:30 +00:00
jschoubben 79108a72a0 Register R341: a check judged the head alone and let a merge that does not compile through
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript), replays/merge-check.sh (go), asks/merge-check.sh …
mesh/delivery delivered
mesh/delivery-group group feat/341-a-merge-check-judges-the-merge delivered: every member is delivered
Proved with replays/cmd/prove: TestReplay341 fails on the controller's main
and passes on its fix (novox/hq ADR 0323, issue 341).
2026-10-12 17:29:59 +02:00
mesh-admin 930b13ff47 Merge pull request 'Register R233: a declaration that restores the package manager applies while it does not answer (hq issue 233)' (#84) from fix/233-replay-2 into main 2026-10-12 14:53:24 +00:00
mesh-admin 39531a9972 Register R233: a declaration that restores the package manager applies while it does not answer (hq issue 233)
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript), replays/merge-check.sh (go), asks/merge-check.sh …
mesh/delivery delivered
Proved with go run ./cmd/prove R233: fails on mesh-host#90's commit before
(36704b5), passes on the fix (a1f9856, mesh-host#90). Placed after R237,
which merged first (#83); replaces #82.
2026-10-12 14:41:40 +00:00