A build is taken in where its outcome is heard, and the build tool answers at once (issue 176) #179

Merged
mesh-admin merged 1 commits from fix/176-a-build-is-registered-where-it-is-heard into main 2026-09-30 23:27:29 +00:00
Contributor

novox/hq issue 176. One function takes a build's outcome in — records it, parses the manifest, refuses a definition naming an installation, registers the module with its source as the seat and path the request carried — and both the waiting command and the daemon that follows the role's built event call it. So a build asked for by a tool that could not wait still reaches the catalogue.

  • build --wait 0 asks and returns with the build's id; builds --log <id> follows it (ADR 0157).
  • The seat verb says --self for a repository given without a scheme, so novox/mesh-catalog is read as a path on the git seat and not handed to git as written.
  • The request carries the seat form of its source and the outcome echoes it, so whoever registers records the seat and the path, never the URL (ADR 0111).

Tests: the shared take-in against a raised store (registered with the seat source; a definition naming an installation recorded and refused; a failure said in the builder's words); the tool's mapping of a forge path vs a URL. make check shows only the two failures main already has (TestConvergingPreviewsThenChangesAndAdoptingKeepsWhatWasTaken, TestAConvergedDeclarationIsByteForByteWhatItWas — a hosts field on containers changed a converged declaration; not this branch's).

Roll-out: controller and builder rebuild from this merge (the builder echoes the source); live check after: mesh-controller.build {repository: "novox/mesh-catalog", path: "modules/website"} answers with the id, and the daemon's log says the module was registered when the outcome came.

novox/hq issue 176. One function takes a build's outcome in — records it, parses the manifest, refuses a definition naming an installation, registers the module with its source as the seat and path the request carried — and both the waiting command and the daemon that follows the role's `built` event call it. So a build asked for by a tool that could not wait still reaches the catalogue. - `build --wait 0` asks and returns with the build's id; `builds --log <id>` follows it (ADR 0157). - The seat verb says `--self` for a repository given without a scheme, so `novox/mesh-catalog` is read as a path on the git seat and not handed to git as written. - The request carries the seat form of its source and the outcome echoes it, so whoever registers records the seat and the path, never the URL (ADR 0111). Tests: the shared take-in against a raised store (registered with the seat source; a definition naming an installation recorded and refused; a failure said in the builder's words); the tool's mapping of a forge path vs a URL. `make check` shows only the two failures main already has (`TestConvergingPreviewsThenChangesAndAdoptingKeepsWhatWasTaken`, `TestAConvergedDeclarationIsByteForByteWhatItWas` — a `hosts` field on containers changed a converged declaration; not this branch's). Roll-out: controller and builder rebuild from this merge (the builder echoes the source); live check after: `mesh-controller.build {repository: "novox/mesh-catalog", path: "modules/website"}` answers with the id, and the daemon's log says the module was registered when the outcome came.
mesh-admin added 1 commit 2026-09-30 23:27:22 +00:00
The console's `build` tool answered "no build machine answered within 0s", handed a forge path to
git as written, and a build heard afterwards was recorded and never registered: recording and
registration lived only in the waiting caller, and the tool did not wait.

Now one function takes a build's outcome in — records it, parses the manifest, refuses a definition
naming an installation, registers the module with its source as the seat and path the request
carried — and both the waiting command and the daemon that follows the role's `built` event call
it. `build --wait 0` asks and returns with the id; `builds --log <id>` follows it. The seat verb
says `--self` for a repository given without a scheme.
mesh-admin merged commit 7661f57833 into main 2026-09-30 23:27:29 +00:00
mesh-admin deleted branch fix/176-a-build-is-registered-where-it-is-heard 2026-09-30 23:27:29 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-controller#179