Add SameRepository and BuildRecord.IsTrunkBuild to go/delivery (issue 1281) #40

Merged
mesh-tools merged 1 commits from fix/1281-trunk-builds-by-repository into main 2026-10-19 20:58:09 +00:00
Member

Issue 1281: the indexer wrote no module fingerprint because a build record names its repository by clone URL (the forge says "novox/mesh-catalog") and a build a delivery plan asked after a merge carries no ref. This adds what the indexer and the view share, in go/delivery/trunk.go.

  • RepositoryName and SameRepository: a clone URL (with or without .git or a trailing slash) and the forge's name are one repository; another owner or name is not. Test: TestSameRepository (1281/AC1).
  • BuildRecord.IsTrunkBuild: state built, source inputs recorded, ref main or none; another branch, a commit, another state, or no inputs is not. Test: TestIsTrunkBuild (1281/AC2). Checked first against the live builds: the last 100 are 96 at main and 4 with no ref, all four asked by a plan; the controller writes a pull request's head to no build record.

Group: the mesh-delivery pull request of the same branch name (fix/1281-trunk-builds-by-repository) needs this one first.

Reviewed-by: review-1281@shanks at 84a7643723

Issue 1281: the indexer wrote no module fingerprint because a build record names its repository by clone URL (the forge says "novox/mesh-catalog") and a build a delivery plan asked after a merge carries no ref. This adds what the indexer and the view share, in go/delivery/trunk.go. - `RepositoryName` and `SameRepository`: a clone URL (with or without `.git` or a trailing slash) and the forge's name are one repository; another owner or name is not. Test: `TestSameRepository` (1281/AC1). - `BuildRecord.IsTrunkBuild`: state built, source inputs recorded, ref `main` or none; another branch, a commit, another state, or no inputs is not. Test: `TestIsTrunkBuild` (1281/AC2). Checked first against the live builds: the last 100 are 96 at main and 4 with no ref, all four asked by a plan; the controller writes a pull request's head to no build record. Group: the mesh-delivery pull request of the same branch name (fix/1281-trunk-builds-by-repository) needs this one first. Reviewed-by: review-1281@shanks at 84a76437233704e9cbcf026b3a0d0468b1bb23e1
Author
Member

Delivery novox/mesh-sdk@84a764372337 — delivered since 2026-10-19T21:23:49Z

Delivery plan — builds mesh-sdk (+41 dependent(s)) → ace, g14, novox, shanks; no bus step; 9 wait(s) for a person

  • tier 0: mesh-sdk
  • tier 1: mesh-tools
  • tier 2: audit-logger, baserow, bazarr, bookshelf, confluence, gitea, gitlab, grafana, home-assistant, icecast, influxdb, jackett, jira, kometa, lab, letta, lidarr, mailu, mesh-catalog, minio, model-usage, mongodb, mosquitto, mssql, netcheck, nextcloud, nftables, nodered, ombi, openai-consumer, radarr, redis, route-adapter, searxng, showcase, sonarr, tautulli, umami, unifi, zsh
  • ace: receives baserow, bazarr, bookshelf, grafana, home-assistant, icecast, influxdb, jackett, kometa, letta, lidarr, mosquitto, netcheck, nodered, ombi, radarr, redis, searxng, sonarr, tautulli, unifi, zsh; waits for a person: mssql, nftables
  • g14: receives netcheck, zsh; waits for a person: nftables
  • novox: receives gitea, mesh-catalog, netcheck, nextcloud, umami, zsh; waits for a person: mailu, minio, mongodb, mssql, nftables
  • shanks: receives lab, netcheck, zsh; waits for a person: nftables
  • baserow keeps data (ADR 0233): what it holds is backed up before it moves
  • bazarr keeps data (ADR 0233): what it holds is backed up before it moves
  • bookshelf keeps data (ADR 0233): what it holds is backed up before it moves
  • gitea provides npm-package-registry, git, gitea-read, forge-account: its consumers are sent again after it
  • gitea keeps data (ADR 0233): what it holds is backed up before it moves
  • grafana keeps data (ADR 0233): what it holds is backed up before it moves
  • home-assistant keeps data (ADR 0233): what it holds is backed up before it moves
  • icecast keeps data (ADR 0233): what it holds is backed up before it moves
  • influxdb provides influxdb-api: its consumers are sent again after it
  • influxdb keeps data (ADR 0233): what it holds is backed up before it moves
  • jackett provides jackett-api: its consumers are sent again after it
  • jackett keeps data (ADR 0233): what it holds is backed up before it moves
  • kometa keeps data (ADR 0233): what it holds is backed up before it moves
  • lab keeps data (ADR 0233): what it holds is backed up before it moves
  • lidarr provides lidarr-api: its consumers are sent again after it
  • lidarr keeps data (ADR 0233): what it holds is backed up before it moves
  • mailu waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends
  • mailu provides smtp: its consumers are sent again after it
  • mailu keeps data (ADR 0233): what it holds is backed up before it moves
  • minio waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends
  • minio provides s3-bucket: its consumers are sent again after it
  • minio keeps data (ADR 0233): what it holds is backed up before it moves
  • mongodb waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends
  • mongodb provides mongodb-database: its consumers are sent again after it
  • mongodb keeps data (ADR 0233): what it holds is backed up before it moves
  • mosquitto provides mqtt-topic: its consumers are sent again after it
  • mosquitto keeps data (ADR 0233): what it holds is backed up before it moves
  • mssql waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends
  • mssql provides mssql-database: its consumers are sent again after it
  • mssql keeps data (ADR 0233): what it holds is backed up before it moves
  • nextcloud keeps data (ADR 0233): what it holds is backed up before it moves
  • nftables waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends
  • nodered keeps data (ADR 0233): what it holds is backed up before it moves
  • ombi keeps data (ADR 0233): what it holds is backed up before it moves
  • radarr provides radarr-api: its consumers are sent again after it
  • radarr keeps data (ADR 0233): what it holds is backed up before it moves
  • redis provides redis-cache: its consumers are sent again after it
  • redis keeps data (ADR 0233): what it holds is backed up before it moves
  • searxng keeps data (ADR 0233): what it holds is backed up before it moves
  • sonarr provides sonarr-api: its consumers are sent again after it
  • sonarr keeps data (ADR 0233): what it holds is backed up before it moves
  • tautulli keeps data (ADR 0233): what it holds is backed up before it moves
  • umami provides analytics: its consumers are sent again after it
  • umami keeps data (ADR 0233): what it holds is backed up before it moves
  • unifi keeps data (ADR 0233): what it holds is backed up before it moves
  • grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before baserow, bazarr, bookshelf, grafana, home-assistant, icecast, influxdb, jackett, kometa, lab, letta, lidarr, mosquitto, netcheck, nodered, ombi, radarr, redis, searxng, sonarr, tautulli, unifi, zsh is judged on its first machine

Group fix/1281-trunk-builds-by-repository: novox/mesh-delivery@4b8e71370c, novox/mesh-sdk@84a7643723

  • composed together: pass — every machine composes with the change as it did without (4 of 4 compose)

Machines

  • mesh-delivery-indexer on every machine running it: sent
  • mesh-delivery-view on every machine running it: sent
  • mesh-sdk on every machine running it: sent
  • mesh-tools on every machine running it: sent
  • audit-logger on every machine running it: sent
  • baserow on every machine running it: sent
  • bazarr on every machine running it: sent
  • bookshelf on every machine running it: sent
  • confluence on every machine running it: sent
  • gitea on every machine running it: sent
  • gitlab on every machine running it: sent
  • grafana on every machine running it: sent
  • home-assistant on every machine running it: sent
  • icecast on every machine running it: sent
  • influxdb on every machine running it: sent
  • jackett on every machine running it: sent
  • jira on every machine running it: sent
  • kometa on every machine running it: sent
  • lab on every machine running it: sent
  • letta on every machine running it: sent
  • lidarr on every machine running it: sent
  • mesh-catalog on every machine running it: sent
  • model-usage on every machine running it: sent
  • mosquitto on every machine running it: sent
  • netcheck on every machine running it: sent
  • nextcloud on every machine running it: sent
  • nodered on every machine running it: sent
  • ombi on every machine running it: sent
  • openai-consumer on every machine running it: sent
  • radarr on every machine running it: sent
  • redis on every machine running it: sent
  • route-adapter on every machine running it: sent
  • searxng on every machine running it: sent
  • showcase on every machine running it: sent
  • sonarr on every machine running it: sent
  • tautulli on every machine running it: sent
  • umami on every machine running it: sent
  • unifi on every machine running it: sent
  • zsh on every machine running it: sent

Transitions

  • 2026-10-19 20:39 (new) → proposed (announced): novox/mesh-sdk#40's head announced
  • 2026-10-19 20:45 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
  • 2026-10-19 20:45 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
  • 2026-10-19 20:59 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
  • 2026-10-19 20:59 published → delivering (go): its walk started: let go by this owner in its group's order, by a person, or on the controller's own path — not a failed walk that carried a later commit for it, after which it waits for a walk of its own commit
  • 2026-10-19 21:23 delivering → delivered (done): its walk is done, carrying its own commit: every machine of its deploy plan passed, or was left as its policy says

The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.

<!-- mesh-delivery:view --> **Delivery** `novox/mesh-sdk@84a764372337` — **delivered** since 2026-10-19T21:23:49Z **Delivery plan** — builds mesh-sdk (+41 dependent(s)) → ace, g14, novox, shanks; no bus step; 9 wait(s) for a person - tier 0: mesh-sdk - tier 1: mesh-tools - tier 2: audit-logger, baserow, bazarr, bookshelf, confluence, gitea, gitlab, grafana, home-assistant, icecast, influxdb, jackett, jira, kometa, lab, letta, lidarr, mailu, mesh-catalog, minio, model-usage, mongodb, mosquitto, mssql, netcheck, nextcloud, nftables, nodered, ombi, openai-consumer, radarr, redis, route-adapter, searxng, showcase, sonarr, tautulli, umami, unifi, zsh - ace: receives baserow, bazarr, bookshelf, grafana, home-assistant, icecast, influxdb, jackett, kometa, letta, lidarr, mosquitto, netcheck, nodered, ombi, radarr, redis, searxng, sonarr, tautulli, unifi, zsh; waits for a person: mssql, nftables - g14: receives netcheck, zsh; waits for a person: nftables - novox: receives gitea, mesh-catalog, netcheck, nextcloud, umami, zsh; waits for a person: mailu, minio, mongodb, mssql, nftables - shanks: receives lab, netcheck, zsh; waits for a person: nftables - baserow keeps data (ADR 0233): what it holds is backed up before it moves - bazarr keeps data (ADR 0233): what it holds is backed up before it moves - bookshelf keeps data (ADR 0233): what it holds is backed up before it moves - gitea provides npm-package-registry, git, gitea-read, forge-account: its consumers are sent again after it - gitea keeps data (ADR 0233): what it holds is backed up before it moves - grafana keeps data (ADR 0233): what it holds is backed up before it moves - home-assistant keeps data (ADR 0233): what it holds is backed up before it moves - icecast keeps data (ADR 0233): what it holds is backed up before it moves - influxdb provides influxdb-api: its consumers are sent again after it - influxdb keeps data (ADR 0233): what it holds is backed up before it moves - jackett provides jackett-api: its consumers are sent again after it - jackett keeps data (ADR 0233): what it holds is backed up before it moves - kometa keeps data (ADR 0233): what it holds is backed up before it moves - lab keeps data (ADR 0233): what it holds is backed up before it moves - lidarr provides lidarr-api: its consumers are sent again after it - lidarr keeps data (ADR 0233): what it holds is backed up before it moves - mailu waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends - mailu provides smtp: its consumers are sent again after it - mailu keeps data (ADR 0233): what it holds is backed up before it moves - minio waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends - minio provides s3-bucket: its consumers are sent again after it - minio keeps data (ADR 0233): what it holds is backed up before it moves - mongodb waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends - mongodb provides mongodb-database: its consumers are sent again after it - mongodb keeps data (ADR 0233): what it holds is backed up before it moves - mosquitto provides mqtt-topic: its consumers are sent again after it - mosquitto keeps data (ADR 0233): what it holds is backed up before it moves - mssql waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends - mssql provides mssql-database: its consumers are sent again after it - mssql keeps data (ADR 0233): what it holds is backed up before it moves - nextcloud keeps data (ADR 0233): what it holds is backed up before it moves - nftables waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends - nodered keeps data (ADR 0233): what it holds is backed up before it moves - ombi keeps data (ADR 0233): what it holds is backed up before it moves - radarr provides radarr-api: its consumers are sent again after it - radarr keeps data (ADR 0233): what it holds is backed up before it moves - redis provides redis-cache: its consumers are sent again after it - redis keeps data (ADR 0233): what it holds is backed up before it moves - searxng keeps data (ADR 0233): what it holds is backed up before it moves - sonarr provides sonarr-api: its consumers are sent again after it - sonarr keeps data (ADR 0233): what it holds is backed up before it moves - tautulli keeps data (ADR 0233): what it holds is backed up before it moves - umami provides analytics: its consumers are sent again after it - umami keeps data (ADR 0233): what it holds is backed up before it moves - unifi keeps data (ADR 0233): what it holds is backed up before it moves - grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before baserow, bazarr, bookshelf, grafana, home-assistant, icecast, influxdb, jackett, kometa, lab, letta, lidarr, mosquitto, netcheck, nodered, ombi, radarr, redis, searxng, sonarr, tautulli, unifi, zsh is judged on its first machine **Group** `fix/1281-trunk-builds-by-repository`: novox/mesh-delivery@4b8e71370cc2, novox/mesh-sdk@84a764372337 - composed together: pass — every machine composes with the change as it did without (4 of 4 compose) **Machines** - mesh-delivery-indexer on every machine running it: sent - mesh-delivery-view on every machine running it: sent - mesh-sdk on every machine running it: sent - mesh-tools on every machine running it: sent - audit-logger on every machine running it: sent - baserow on every machine running it: sent - bazarr on every machine running it: sent - bookshelf on every machine running it: sent - confluence on every machine running it: sent - gitea on every machine running it: sent - gitlab on every machine running it: sent - grafana on every machine running it: sent - home-assistant on every machine running it: sent - icecast on every machine running it: sent - influxdb on every machine running it: sent - jackett on every machine running it: sent - jira on every machine running it: sent - kometa on every machine running it: sent - lab on every machine running it: sent - letta on every machine running it: sent - lidarr on every machine running it: sent - mesh-catalog on every machine running it: sent - model-usage on every machine running it: sent - mosquitto on every machine running it: sent - netcheck on every machine running it: sent - nextcloud on every machine running it: sent - nodered on every machine running it: sent - ombi on every machine running it: sent - openai-consumer on every machine running it: sent - radarr on every machine running it: sent - redis on every machine running it: sent - route-adapter on every machine running it: sent - searxng on every machine running it: sent - showcase on every machine running it: sent - sonarr on every machine running it: sent - tautulli on every machine running it: sent - umami on every machine running it: sent - unifi on every machine running it: sent - zsh on every machine running it: sent **Transitions** - 2026-10-19 20:39 (new) → proposed (announced): novox/mesh-sdk#40's head announced - 2026-10-19 20:45 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit - 2026-10-19 20:45 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail - 2026-10-19 20:59 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move - 2026-10-19 20:59 published → delivering (go): its walk started: let go by this owner in its group's order, by a person, or on the controller's own path — not a failed walk that carried a later commit for it, after which it waits for a walk of its own commit - 2026-10-19 21:23 delivering → delivered (done): its walk is done, carrying its own commit: every machine of its deploy plan passed, or was left as its policy says The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
Author
Member

Merge check at 680a78ba
Judged: head 680a78bae270 merged into trunk 9ebfb87b5d0c; read beside it: mesh-catalog 66aa204f6779, mesh-controller 880207649956, mesh-controller-main 880207649956, mesh-host 2474bf28330f, mesh-tools 7412c5b6c9c5

  • mesh/merge-gate: PASS, WITH A NOTE — a merge rebuilds 42 module(s) in 3 tier(s) (modules: mesh-sdk; built after them: audit-logger, baserow, bazarr, bookshelf, confluence, gitea, gitlab, grafana, home-assistant, icecast, influxdb, jackett, jira, kometa, lab, letta, lidarr, mailu, mesh-catalog, mesh-tools, minio, model-usage, mongodb, mosquitto, mssql, netcheck, nextcloud, nftables, nodered, ombi, openai-consumer, radarr, redis, route-adapter, searxng, showcase, sonarr, tautulli, umami, unifi, zsh)
  • mesh/repo-check: FAIL — merge-check.sh (typescript) passed; its go/merge-check.sh failed: panic: test timed out after 10m0s

Delivery plan — builds mesh-sdk (+41 dependent(s)) → ace, g14, novox, shanks; no bus step; 9 wait(s) for a person

  • tier 0: mesh-sdk
  • tier 1: mesh-tools
  • tier 2: audit-logger, baserow, bazarr, bookshelf, confluence, gitea, gitlab, grafana, home-assistant, icecast, influxdb, jackett, jira, kometa, lab, letta, lidarr, mailu, mesh-catalog, minio, model-usage, mongodb, mosquitto, mssql, netcheck, nextcloud, nftables, nodered, ombi, openai-consumer, radarr, redis, route-adapter, searxng, showcase, sonarr, tautulli, umami, unifi, zsh
  • ace: receives baserow, bazarr, bookshelf, grafana, home-assistant, icecast, influxdb, jackett, kometa, letta, lidarr, mosquitto, netcheck, nodered, ombi, radarr, redis, searxng, sonarr, tautulli, unifi, zsh; waits for a person: mssql, nftables
  • g14: receives netcheck, zsh; waits for a person: nftables
  • novox: receives gitea, mesh-catalog, netcheck, nextcloud, umami, zsh; waits for a person: mailu, minio, mongodb, mssql, nftables
  • shanks: receives lab, netcheck, zsh; waits for a person: nftables
  • baserow keeps data (ADR 0233): what it holds is backed up before it moves
  • bazarr keeps data (ADR 0233): what it holds is backed up before it moves
  • bookshelf keeps data (ADR 0233): what it holds is backed up before it moves
  • gitea provides npm-package-registry, git, gitea-read, forge-account: its consumers are sent again after it
  • gitea keeps data (ADR 0233): what it holds is backed up before it moves
  • grafana keeps data (ADR 0233): what it holds is backed up before it moves
  • home-assistant keeps data (ADR 0233): what it holds is backed up before it moves
  • icecast keeps data (ADR 0233): what it holds is backed up before it moves
  • influxdb provides influxdb-api: its consumers are sent again after it
  • influxdb keeps data (ADR 0233): what it holds is backed up before it moves
  • jackett provides jackett-api: its consumers are sent again after it
  • jackett keeps data (ADR 0233): what it holds is backed up before it moves
  • kometa keeps data (ADR 0233): what it holds is backed up before it moves
  • lab keeps data (ADR 0233): what it holds is backed up before it moves
  • lidarr provides lidarr-api: its consumers are sent again after it
  • lidarr keeps data (ADR 0233): what it holds is backed up before it moves
  • mailu waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends
  • mailu provides smtp: its consumers are sent again after it
  • mailu keeps data (ADR 0233): what it holds is backed up before it moves
  • minio waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends
  • minio provides s3-bucket: its consumers are sent again after it
  • minio keeps data (ADR 0233): what it holds is backed up before it moves
  • mongodb waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends
  • mongodb provides mongodb-database: its consumers are sent again after it
  • mongodb keeps data (ADR 0233): what it holds is backed up before it moves
  • mosquitto provides mqtt-topic: its consumers are sent again after it
  • mosquitto keeps data (ADR 0233): what it holds is backed up before it moves
  • mssql waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends
  • mssql provides mssql-database: its consumers are sent again after it
  • mssql keeps data (ADR 0233): what it holds is backed up before it moves
  • nextcloud keeps data (ADR 0233): what it holds is backed up before it moves
  • nftables waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends
  • nodered keeps data (ADR 0233): what it holds is backed up before it moves
  • ombi keeps data (ADR 0233): what it holds is backed up before it moves
  • radarr provides radarr-api: its consumers are sent again after it
  • radarr keeps data (ADR 0233): what it holds is backed up before it moves
  • redis provides redis-cache: its consumers are sent again after it
  • redis keeps data (ADR 0233): what it holds is backed up before it moves
  • searxng keeps data (ADR 0233): what it holds is backed up before it moves
  • sonarr provides sonarr-api: its consumers are sent again after it
  • sonarr keeps data (ADR 0233): what it holds is backed up before it moves
  • tautulli keeps data (ADR 0233): what it holds is backed up before it moves
  • umami provides analytics: its consumers are sent again after it
  • umami keeps data (ADR 0233): what it holds is backed up before it moves
  • unifi keeps data (ADR 0233): what it holds is backed up before it moves
  • grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before baserow, bazarr, bookshelf, grafana, home-assistant, icecast, influxdb, jackett, kometa, lab, letta, lidarr, mosquitto, netcheck, nodered, ombi, radarr, redis, searxng, sonarr, tautulli, unifi, zsh is judged on its first machine

Run by the build seat on ace as build-1792437709462411277 (builds --log build-1792437709462411277).

  duration_ms: 0.330862
  type: 'test'
  ...
# Subtest: an adapter that classes its own errors is believed
ok 45 - an adapter that classes its own errors is believed
  ---
  duration_ms: 173.179259
  type: 'test'
  ...
# Subtest: the first success since start is announced once
ok 46 - the first success since start is announced once
  ---
  duration_ms: 117.425364
  type: 'test'
  ...
# Subtest: without announce the standing is said through the SDK's emit
ok 47 - without announce the standing is said through the SDK's emit
  ---
  duration_ms: 172.637839
  type: 'test'
  ...
# Subtest: a bundle on stdio lists its tools and answers a call, a seat's verb among them
ok 48 - a bundle on stdio lists its tools and answers a call, a seat's verb among them
  ---
  duration_ms: 124.866243
  type: 'test'
  ...
# Subtest: a bundle served as its module lists the seat's verbs as the seat's, whichever registered first (ADR 0193)
ok 49 - a bundle served as its module lists the seat's verbs as the seat's, whichever registered first (ADR 0193)
  ---
  duration_ms: 82.948192
  type: 'test'
  ...
# Subtest: a launched tool's emit is asked of the runtime, and the call answers once the runtime has published (ADR 0193)
ok 50 - a launched tool's emit is asked of the runtime, and the call answers once the runtime has published (ADR 0193)
  ---
  duration_ms: 82.537029
  type: 'test'
  ...
# Subtest: a launched bundle subscribes as it is imported, handles events the runtime hands it, and asks through it (ADR 0198)
ok 51 - a launched bundle subscribes as it is imported, handles events the runtime hands it, and asks through it (ADR 0198)
  ---
  duration_ms: 3197.488972
  type: 'test'
  ...
# Subtest: a subscribe the runtime refused leaves no handler behind, so one event is handled once (novox/hq issue 276)
ok 52 - a subscribe the runtime refused leaves no handler behind, so one event is handled once (novox/hq issue 276)
  ---
  duration_ms: 82.13808
  type: 'test'
  ...
# Subtest: a launched bundle watches its state as it is imported, has the current values before it goes on, and keeps state through the runtime (ADR 0201)
ok 53 - a launched bundle watches its state as it is imported, has the current values before it goes on, and keeps state through the runtime (ADR 0201)
  ---
  duration_ms: 284.979316
  type: 'test'
  ...
# Subtest: topics match as the runtime's do: * one segment, \# and ** any number
ok 54 - topics match as the runtime's do: * one segment, \# and ** any number
  ---
  duration_ms: 2.752315
  type: 'test'
  ...
1..54
# tests 54
# suites 0
# pass 54
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 3943.236557
NOT TESTED HERE: go/ (the Go binding) — the Go toolchain runs it from go/merge-check.sh
NOT TESTED HERE: python/, rust/, c/ — no toolchain of theirs runs a merge check
--- its go/merge-check.sh (go toolchain)
NOT RACE-CHECKED: the Go binding's check runs without the race detector
unit level: 188 tests (0 skipped), 1.04 s (bound 2 s)
    state_counter_test.go:193: 2000 increments, 939 writes lost to the other writer and tried again
panic: test timed out after 10m0s
	running tests:
		TestARefusedSubscribeLeavesNoHandlerBehind (10m0s)

goroutine 5804 [running]:
testing.(*M).startAlarm.func1()
	/usr/local/go/src/testing/testing.go:2802 +0x354
created by time.goFunc
	/usr/local/go/src/time/sleep.go:215 +0x2d

goroutine 1 [chan receive, 9 minutes]:
testing.(*T).Run(0x3fe300f70008, {0x605698?, 0x0?}, 0x60a498)
	/usr/local/go/src/testing/testing.go:2109 +0x4e5
testing.runTests.func1(0x3fe300f70008)
	/usr/local/go/src/testing/testing.go:2585 +0x3e
testing.tRunner(0x3fe300f70008, 0x3fe300f65c58)
	/usr/local/go/src/testing/testing.go:2036 +0xea
testing.runTests({0x601522, 0x1e}, {0x601522, 0x1e}, 0x3fe300f2c048, {0x789540, 0x13, 0x13}, {0xc2adba1237bd5489, 0x8bb2ccb21d, ...})
	/usr/local/go/src/testing/testing.go:2583 +0x505
testing.(*M).Run(0x3fe300f1e320)
	/usr/local/go/src/testing/testing.go:2443 +0x6ac
main.main()
	_testmain.go:82 +0x9b

goroutine 6245 [chan receive, 9 minutes]:
git.novox.be/novox/mesh-sdk/go.TestARefusedSubscribeLeavesNoHandlerBehind(0x3fe300f70248)
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio_test.go:208 +0xa73
testing.tRunner(0x3fe300f70248, 0x60a498)
	/usr/local/go/src/testing/testing.go:2036 +0xea
created by testing.(*T).Run in goroutine 1
	/usr/local/go/src/testing/testing.go:2101 +0x4c5

goroutine 140 [select, 10 minutes]:
io.(*pipe).write(0x3fe300f2e1e0, {0x3fe3014de000, 0x53, 0x100})
	/usr/local/go/src/io/pipe.go:86 +0x1e5
io.(*PipeWriter).Write(0x7?, {0x3fe3014de000?, 0x3fe3014c6cc0?, 0x5f14c0?})
	/usr/local/go/src/io/pipe.go:161 +0x1a
encoding/json.(*Encoder).Encode(0x3fe300f2e2a0, {0x5c8360, 0x3fe3014c6cc0})
	/usr/local/go/src/encoding/json/stream.go:233 +0x1f0
git.novox.be/novox/mesh-sdk/go.(*channel).say(0x3fe300f2e300, 0x3fe3014c6cc0)
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:95 +0xd0
git.novox.be/novox/mesh-sdk/go.ServeOn.func1({0x5c2980, 0x3fe301092240}, {{0x5f90a9, 0x4}, {0x0, 0x0}, 0x0, 0x3fe300f264f0}, 0x3fe300f020c8?, {0x5f9d32, ...})
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:251 +0x585
created by git.novox.be/novox/mesh-sdk/go.ServeOn in goroutine 170
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:241 +0x1827

goroutine 6246 [sync.Mutex.Lock, 9 minutes]:
internal/sync.runtime_SemacquireMutex(0x9?, 0xc8?, 0x513d19?)
	/usr/local/go/src/runtime/sema.go:95 +0x25
internal/sync.(*Mutex).lockSlow(0x3fe300f2e4e0)
	/usr/local/go/src/internal/sync/mutex.go:149 +0x15d
internal/sync.(*Mutex).Lock(...)
	/usr/local/go/src/internal/sync/mutex.go:70
sync.(*Mutex).Lock(...)
	/usr/local/go/src/sync/mutex.go:46
git.novox.be/novox/mesh-sdk/go.ServeOn({0x0?, 0x0?}, {0x3fe300f67f90, 0x1, 0x1?}, {0x60db80, 0x3fe300f2e3c0}, {0x60dba0, 0x3fe300f2e420})
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:190 +0x605
git.novox.be/novox/mesh-sdk/go.TestARefusedSubscribeLeavesNoHandlerBehind.func1()
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio_test.go:154 +0x116
created by git.novox.be/novox/mesh-sdk/go.TestARefusedSubscribeLeavesNoHandlerBehind in goroutine 6245
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio_test.go:153 +0x268

goroutine 6247 [select, 9 minutes]:
io.(*pipe).write(0x3fe300f2e420, {0x3fe300f48200, 0x55, 0x80})
	/usr/local/go/src/io/pipe.go:86 +0x1e5
io.(*PipeWriter).Write(0x797580?, {0x3fe300f48200?, 0x3fe30108a750?, 0x4881c5?})
	/usr/local/go/src/io/pipe.go:161 +0x1a
encoding/json.(*Encoder).Encode(0x3fe300f2e480, {0x5c8360, 0x3fe30108a750})
	/usr/local/go/src/encoding/json/stream.go:233 +0x1f0
git.novox.be/novox/mesh-sdk/go.(*channel).say(0x3fe300f2e4e0, 0x3fe30108a750)
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:95 +0xd0
git.novox.be/novox/mesh-sdk/go.ServeOn.func1({0x5c2980, 0x3fe3013a4408}, {{0x5f9355, 0x5}, {0x0, 0x0}, 0x0, 0x3fe300f32300}, 0x3fe3014fe6d0?, {0x5f9d32, ...})
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:251 +0x585
created by git.novox.be/novox/mesh-sdk/go.ServeOn in goroutine 6246
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:241 +0x1827

goroutine 5802 [sync.Mutex.Lock, 9 minutes]:
internal/sync.runtime_SemacquireMutex(0x3fe301600bd0?, 0x0?, 0x60ab90?)
	/usr/local/go/src/runtime/sema.go:95 +0x25
internal/sync.(*Mutex).lockSlow(0x3fe300f2e4e0)
	/usr/local/go/src/internal/sync/mutex.go:149 +0x15d
internal/sync.(*Mutex).Lock(...)
	/usr/local/go/src/internal/sync/mutex.go:70
sync.(*Mutex).Lock(...)
	/usr/local/go/src/sync/mutex.go:46
git.novox.be/novox/mesh-sdk/go.(*channel).askAs(0x3fe300f2e4e0, {0x3fe3010e4000, 0x8}, {0x5fbaf9, 0xe}, {0x5c8360, 0x3fe3013a0000}, 0x6fc23ac00)
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:125 +0x336
git.novox.be/novox/mesh-sdk/go.(*channel).ask(0x3fe300f2e4e0, {0x5fbaf9, 0xe}, {0x5c8360, 0x3fe3013a0000}, 0x6fc23ac00)
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:100 +0x5a
git.novox.be/novox/mesh-sdk/go.Subscribe({0x5fddfe, 0x14}, 0x3fe3010a6030)
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:424 +0x20c
git.novox.be/novox/mesh-sdk/go.TestARefusedSubscribeLeavesNoHandlerBehind.func1.1.1()
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio_test.go:157 +0xb6
created by git.novox.be/novox/mesh-sdk/go.TestARefusedSubscribeLeavesNoHandlerBehind.func1.1 in goroutine 6247
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio_test.go:155 +0x90
FAIL	git.novox.be/novox/mesh-sdk/go	600.035s
PASS
ok  	git.novox.be/novox/mesh-sdk/go/asker	0.003s
PASS
ok  	git.novox.be/novox/mesh-sdk/go/asks	0.003s
PASS
ok  	git.novox.be/novox/mesh-sdk/go/cli	1.039s
PASS
ok  	git.novox.be/novox/mesh-sdk/go/delivery	0.005s
?   	git.novox.be/novox/mesh-sdk/go/example	[no test files]
PASS
ok  	git.novox.be/novox/mesh-sdk/go/health	0.003s
PASS
ok  	git.novox.be/novox/mesh-sdk/go/internal/testbus	0.142s
PASS
ok  	git.novox.be/novox/mesh-sdk/go/outward	0.054s
PASS
ok  	git.novox.be/novox/mesh-sdk/go/process	6.465s
PASS
ok  	git.novox.be/novox/mesh-sdk/go/provider	0.118s
PASS
ok  	git.novox.be/novox/mesh-sdk/go/provider/harness	0.115s
PASS
ok  	git.novox.be/novox/mesh-sdk/go/seal	0.006s
FAIL
integration level: 203 tests (0 skipped), 600 s
the integration level failed (go test exited 1)
--- what failed, picked from the whole of its output (the whole is in the build's log)
panic: test timed out after 10m0s
	running tests:
		TestARefusedSubscribeLeavesNoHandlerBehind (10m0s)

goroutine 5804 [running]:
testing.(*M).startAlarm.func1()
	/usr/local/go/src/testing/testing.go:2802 +0x354
created by time.goFunc
	/usr/local/go/src/time/sleep.go:215 +0x2d

goroutine 1 [chan receive, 9 minutes]:
testing.(*T).Run(0x3fe300f70008, {0x605698?, 0x0?}, 0x60a498)
	/usr/local/go/src/testing/testing.go:2109 +0x4e5
testing.runTests.func1(0x3fe300f70008)
	/usr/local/go/src/testing/testing.go:2585 +0x3e
testing.tRunner(0x3fe300f70008, 0x3fe300f65c58)
	/usr/local/go/src/testing/testing.go:2036 +0xea
testing.runTests({0x601522, 0x1e}, {0x601522, 0x1e}, 0x3fe300f2c048, {0x789540, 0x13, 0x13}, {0xc2adba1237bd5489, 0x8bb2ccb21d, ...})
	/usr/local/go/src/testing/testing.go:2583 +0x505
testing.(*M).Run(0x3fe300f1e320)
	/usr/local/go/src/testing/testing.go:2443 +0x6ac
main.main()
	_testmain.go:82 +0x9b

goroutine 6245 [chan receive, 9 minutes]:
git.novox.be/novox/mesh-sdk/go.TestARefusedSubscribeLeavesNoHandlerBehind(0x3fe300f70248)
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio_test.go:208 +0xa73
testing.tRunner(0x3fe300f70248, 0x60a498)
	/usr/local/go/src/testing/testing.go:2036 +0xea
created by testing.(*T).Run in goroutine 1
	/usr/local/go/src/testing/testing.go:2101 +0x4c5

goroutine 140 [select, 10 minutes]:
io.(*pipe).write(0x3fe300f2e1e0, {0x3fe3014de000, 0x53, 0x100})
	/usr/local/go/src/io/pipe.go:86 +0x1e5
io.(*PipeWriter).Write(0x7?, {0x3fe3014de000?, 0x3fe3014c6cc0?, 0x5f14c0?})
	/usr/local/go/src/io/pipe.go:161 +0x1a
encoding/json.(*Encoder).Encode(0x3fe300f2e2a0, {0x5c8360, 0x3fe3014c6cc0})
	/usr/local/go/src/encoding/json/stream.go:233 +0x1f0
git.novox.be/novox/mesh-sdk/go.(*channel).say(0x3fe300f2e300, 0x3fe3014c6cc0)
	/var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:95 +0xd0
FAIL	git.novox.be/novox/mesh-sdk/go	600.035s
**Merge check** at `680a78ba` Judged: head `680a78bae270` merged into trunk `9ebfb87b5d0c`; read beside it: mesh-catalog `66aa204f6779`, mesh-controller `880207649956`, mesh-controller-main `880207649956`, mesh-host `2474bf28330f`, mesh-tools `7412c5b6c9c5` - `mesh/merge-gate`: **PASS, WITH A NOTE** — a merge rebuilds 42 module(s) in 3 tier(s) (modules: mesh-sdk; built after them: audit-logger, baserow, bazarr, bookshelf, confluence, gitea, gitlab, grafana, home-assistant, icecast, influxdb, jackett, jira, kometa, lab, letta, lidarr, mailu, mesh-catalog, mesh-tools, minio, model-usage, mongodb, mosquitto, mssql, netcheck, nextcloud, nftables, nodered, ombi, openai-consumer, radarr, redis, route-adapter, searxng, showcase, sonarr, tautulli, umami, unifi, zsh) - `mesh/repo-check`: **FAIL** — merge-check.sh (typescript) passed; its go/merge-check.sh failed: panic: test timed out after 10m0s **Delivery plan** — builds mesh-sdk (+41 dependent(s)) → ace, g14, novox, shanks; no bus step; 9 wait(s) for a person - tier 0: mesh-sdk - tier 1: mesh-tools - tier 2: audit-logger, baserow, bazarr, bookshelf, confluence, gitea, gitlab, grafana, home-assistant, icecast, influxdb, jackett, jira, kometa, lab, letta, lidarr, mailu, mesh-catalog, minio, model-usage, mongodb, mosquitto, mssql, netcheck, nextcloud, nftables, nodered, ombi, openai-consumer, radarr, redis, route-adapter, searxng, showcase, sonarr, tautulli, umami, unifi, zsh - ace: receives baserow, bazarr, bookshelf, grafana, home-assistant, icecast, influxdb, jackett, kometa, letta, lidarr, mosquitto, netcheck, nodered, ombi, radarr, redis, searxng, sonarr, tautulli, unifi, zsh; waits for a person: mssql, nftables - g14: receives netcheck, zsh; waits for a person: nftables - novox: receives gitea, mesh-catalog, netcheck, nextcloud, umami, zsh; waits for a person: mailu, minio, mongodb, mssql, nftables - shanks: receives lab, netcheck, zsh; waits for a person: nftables - baserow keeps data (ADR 0233): what it holds is backed up before it moves - bazarr keeps data (ADR 0233): what it holds is backed up before it moves - bookshelf keeps data (ADR 0233): what it holds is backed up before it moves - gitea provides npm-package-registry, git, gitea-read, forge-account: its consumers are sent again after it - gitea keeps data (ADR 0233): what it holds is backed up before it moves - grafana keeps data (ADR 0233): what it holds is backed up before it moves - home-assistant keeps data (ADR 0233): what it holds is backed up before it moves - icecast keeps data (ADR 0233): what it holds is backed up before it moves - influxdb provides influxdb-api: its consumers are sent again after it - influxdb keeps data (ADR 0233): what it holds is backed up before it moves - jackett provides jackett-api: its consumers are sent again after it - jackett keeps data (ADR 0233): what it holds is backed up before it moves - kometa keeps data (ADR 0233): what it holds is backed up before it moves - lab keeps data (ADR 0233): what it holds is backed up before it moves - lidarr provides lidarr-api: its consumers are sent again after it - lidarr keeps data (ADR 0233): what it holds is backed up before it moves - mailu waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends - mailu provides smtp: its consumers are sent again after it - mailu keeps data (ADR 0233): what it holds is backed up before it moves - minio waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends - minio provides s3-bucket: its consumers are sent again after it - minio keeps data (ADR 0233): what it holds is backed up before it moves - mongodb waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends - mongodb provides mongodb-database: its consumers are sent again after it - mongodb keeps data (ADR 0233): what it holds is backed up before it moves - mosquitto provides mqtt-topic: its consumers are sent again after it - mosquitto keeps data (ADR 0233): what it holds is backed up before it moves - mssql waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends - mssql provides mssql-database: its consumers are sent again after it - mssql keeps data (ADR 0233): what it holds is backed up before it moves - nextcloud keeps data (ADR 0233): what it holds is backed up before it moves - nftables waits for a person: its policy records (module) — unless on a machine its move recreates none of its containers and moves none of its data, which the walk judges and then sends - nodered keeps data (ADR 0233): what it holds is backed up before it moves - ombi keeps data (ADR 0233): what it holds is backed up before it moves - radarr provides radarr-api: its consumers are sent again after it - radarr keeps data (ADR 0233): what it holds is backed up before it moves - redis provides redis-cache: its consumers are sent again after it - redis keeps data (ADR 0233): what it holds is backed up before it moves - searxng keeps data (ADR 0233): what it holds is backed up before it moves - sonarr provides sonarr-api: its consumers are sent again after it - sonarr keeps data (ADR 0233): what it holds is backed up before it moves - tautulli keeps data (ADR 0233): what it holds is backed up before it moves - umami provides analytics: its consumers are sent again after it - umami keeps data (ADR 0233): what it holds is backed up before it moves - unifi keeps data (ADR 0233): what it holds is backed up before it moves - grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before baserow, bazarr, bookshelf, grafana, home-assistant, icecast, influxdb, jackett, kometa, lab, letta, lidarr, mosquitto, netcheck, nodered, ombi, radarr, redis, searxng, sonarr, tautulli, unifi, zsh is judged on its first machine Run by the build seat on ace as `build-1792437709462411277` (`builds --log build-1792437709462411277`). ``` duration_ms: 0.330862 type: 'test' ... # Subtest: an adapter that classes its own errors is believed ok 45 - an adapter that classes its own errors is believed --- duration_ms: 173.179259 type: 'test' ... # Subtest: the first success since start is announced once ok 46 - the first success since start is announced once --- duration_ms: 117.425364 type: 'test' ... # Subtest: without announce the standing is said through the SDK's emit ok 47 - without announce the standing is said through the SDK's emit --- duration_ms: 172.637839 type: 'test' ... # Subtest: a bundle on stdio lists its tools and answers a call, a seat's verb among them ok 48 - a bundle on stdio lists its tools and answers a call, a seat's verb among them --- duration_ms: 124.866243 type: 'test' ... # Subtest: a bundle served as its module lists the seat's verbs as the seat's, whichever registered first (ADR 0193) ok 49 - a bundle served as its module lists the seat's verbs as the seat's, whichever registered first (ADR 0193) --- duration_ms: 82.948192 type: 'test' ... # Subtest: a launched tool's emit is asked of the runtime, and the call answers once the runtime has published (ADR 0193) ok 50 - a launched tool's emit is asked of the runtime, and the call answers once the runtime has published (ADR 0193) --- duration_ms: 82.537029 type: 'test' ... # Subtest: a launched bundle subscribes as it is imported, handles events the runtime hands it, and asks through it (ADR 0198) ok 51 - a launched bundle subscribes as it is imported, handles events the runtime hands it, and asks through it (ADR 0198) --- duration_ms: 3197.488972 type: 'test' ... # Subtest: a subscribe the runtime refused leaves no handler behind, so one event is handled once (novox/hq issue 276) ok 52 - a subscribe the runtime refused leaves no handler behind, so one event is handled once (novox/hq issue 276) --- duration_ms: 82.13808 type: 'test' ... # Subtest: a launched bundle watches its state as it is imported, has the current values before it goes on, and keeps state through the runtime (ADR 0201) ok 53 - a launched bundle watches its state as it is imported, has the current values before it goes on, and keeps state through the runtime (ADR 0201) --- duration_ms: 284.979316 type: 'test' ... # Subtest: topics match as the runtime's do: * one segment, \# and ** any number ok 54 - topics match as the runtime's do: * one segment, \# and ** any number --- duration_ms: 2.752315 type: 'test' ... 1..54 # tests 54 # suites 0 # pass 54 # fail 0 # cancelled 0 # skipped 0 # todo 0 # duration_ms 3943.236557 NOT TESTED HERE: go/ (the Go binding) — the Go toolchain runs it from go/merge-check.sh NOT TESTED HERE: python/, rust/, c/ — no toolchain of theirs runs a merge check --- its go/merge-check.sh (go toolchain) NOT RACE-CHECKED: the Go binding's check runs without the race detector unit level: 188 tests (0 skipped), 1.04 s (bound 2 s) state_counter_test.go:193: 2000 increments, 939 writes lost to the other writer and tried again panic: test timed out after 10m0s running tests: TestARefusedSubscribeLeavesNoHandlerBehind (10m0s) goroutine 5804 [running]: testing.(*M).startAlarm.func1() /usr/local/go/src/testing/testing.go:2802 +0x354 created by time.goFunc /usr/local/go/src/time/sleep.go:215 +0x2d goroutine 1 [chan receive, 9 minutes]: testing.(*T).Run(0x3fe300f70008, {0x605698?, 0x0?}, 0x60a498) /usr/local/go/src/testing/testing.go:2109 +0x4e5 testing.runTests.func1(0x3fe300f70008) /usr/local/go/src/testing/testing.go:2585 +0x3e testing.tRunner(0x3fe300f70008, 0x3fe300f65c58) /usr/local/go/src/testing/testing.go:2036 +0xea testing.runTests({0x601522, 0x1e}, {0x601522, 0x1e}, 0x3fe300f2c048, {0x789540, 0x13, 0x13}, {0xc2adba1237bd5489, 0x8bb2ccb21d, ...}) /usr/local/go/src/testing/testing.go:2583 +0x505 testing.(*M).Run(0x3fe300f1e320) /usr/local/go/src/testing/testing.go:2443 +0x6ac main.main() _testmain.go:82 +0x9b goroutine 6245 [chan receive, 9 minutes]: git.novox.be/novox/mesh-sdk/go.TestARefusedSubscribeLeavesNoHandlerBehind(0x3fe300f70248) /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio_test.go:208 +0xa73 testing.tRunner(0x3fe300f70248, 0x60a498) /usr/local/go/src/testing/testing.go:2036 +0xea created by testing.(*T).Run in goroutine 1 /usr/local/go/src/testing/testing.go:2101 +0x4c5 goroutine 140 [select, 10 minutes]: io.(*pipe).write(0x3fe300f2e1e0, {0x3fe3014de000, 0x53, 0x100}) /usr/local/go/src/io/pipe.go:86 +0x1e5 io.(*PipeWriter).Write(0x7?, {0x3fe3014de000?, 0x3fe3014c6cc0?, 0x5f14c0?}) /usr/local/go/src/io/pipe.go:161 +0x1a encoding/json.(*Encoder).Encode(0x3fe300f2e2a0, {0x5c8360, 0x3fe3014c6cc0}) /usr/local/go/src/encoding/json/stream.go:233 +0x1f0 git.novox.be/novox/mesh-sdk/go.(*channel).say(0x3fe300f2e300, 0x3fe3014c6cc0) /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:95 +0xd0 git.novox.be/novox/mesh-sdk/go.ServeOn.func1({0x5c2980, 0x3fe301092240}, {{0x5f90a9, 0x4}, {0x0, 0x0}, 0x0, 0x3fe300f264f0}, 0x3fe300f020c8?, {0x5f9d32, ...}) /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:251 +0x585 created by git.novox.be/novox/mesh-sdk/go.ServeOn in goroutine 170 /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:241 +0x1827 goroutine 6246 [sync.Mutex.Lock, 9 minutes]: internal/sync.runtime_SemacquireMutex(0x9?, 0xc8?, 0x513d19?) /usr/local/go/src/runtime/sema.go:95 +0x25 internal/sync.(*Mutex).lockSlow(0x3fe300f2e4e0) /usr/local/go/src/internal/sync/mutex.go:149 +0x15d internal/sync.(*Mutex).Lock(...) /usr/local/go/src/internal/sync/mutex.go:70 sync.(*Mutex).Lock(...) /usr/local/go/src/sync/mutex.go:46 git.novox.be/novox/mesh-sdk/go.ServeOn({0x0?, 0x0?}, {0x3fe300f67f90, 0x1, 0x1?}, {0x60db80, 0x3fe300f2e3c0}, {0x60dba0, 0x3fe300f2e420}) /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:190 +0x605 git.novox.be/novox/mesh-sdk/go.TestARefusedSubscribeLeavesNoHandlerBehind.func1() /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio_test.go:154 +0x116 created by git.novox.be/novox/mesh-sdk/go.TestARefusedSubscribeLeavesNoHandlerBehind in goroutine 6245 /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio_test.go:153 +0x268 goroutine 6247 [select, 9 minutes]: io.(*pipe).write(0x3fe300f2e420, {0x3fe300f48200, 0x55, 0x80}) /usr/local/go/src/io/pipe.go:86 +0x1e5 io.(*PipeWriter).Write(0x797580?, {0x3fe300f48200?, 0x3fe30108a750?, 0x4881c5?}) /usr/local/go/src/io/pipe.go:161 +0x1a encoding/json.(*Encoder).Encode(0x3fe300f2e480, {0x5c8360, 0x3fe30108a750}) /usr/local/go/src/encoding/json/stream.go:233 +0x1f0 git.novox.be/novox/mesh-sdk/go.(*channel).say(0x3fe300f2e4e0, 0x3fe30108a750) /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:95 +0xd0 git.novox.be/novox/mesh-sdk/go.ServeOn.func1({0x5c2980, 0x3fe3013a4408}, {{0x5f9355, 0x5}, {0x0, 0x0}, 0x0, 0x3fe300f32300}, 0x3fe3014fe6d0?, {0x5f9d32, ...}) /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:251 +0x585 created by git.novox.be/novox/mesh-sdk/go.ServeOn in goroutine 6246 /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:241 +0x1827 goroutine 5802 [sync.Mutex.Lock, 9 minutes]: internal/sync.runtime_SemacquireMutex(0x3fe301600bd0?, 0x0?, 0x60ab90?) /usr/local/go/src/runtime/sema.go:95 +0x25 internal/sync.(*Mutex).lockSlow(0x3fe300f2e4e0) /usr/local/go/src/internal/sync/mutex.go:149 +0x15d internal/sync.(*Mutex).Lock(...) /usr/local/go/src/internal/sync/mutex.go:70 sync.(*Mutex).Lock(...) /usr/local/go/src/sync/mutex.go:46 git.novox.be/novox/mesh-sdk/go.(*channel).askAs(0x3fe300f2e4e0, {0x3fe3010e4000, 0x8}, {0x5fbaf9, 0xe}, {0x5c8360, 0x3fe3013a0000}, 0x6fc23ac00) /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:125 +0x336 git.novox.be/novox/mesh-sdk/go.(*channel).ask(0x3fe300f2e4e0, {0x5fbaf9, 0xe}, {0x5c8360, 0x3fe3013a0000}, 0x6fc23ac00) /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:100 +0x5a git.novox.be/novox/mesh-sdk/go.Subscribe({0x5fddfe, 0x14}, 0x3fe3010a6030) /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:424 +0x20c git.novox.be/novox/mesh-sdk/go.TestARefusedSubscribeLeavesNoHandlerBehind.func1.1.1() /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio_test.go:157 +0xb6 created by git.novox.be/novox/mesh-sdk/go.TestARefusedSubscribeLeavesNoHandlerBehind.func1.1 in goroutine 6247 /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio_test.go:155 +0x90 FAIL git.novox.be/novox/mesh-sdk/go 600.035s PASS ok git.novox.be/novox/mesh-sdk/go/asker 0.003s PASS ok git.novox.be/novox/mesh-sdk/go/asks 0.003s PASS ok git.novox.be/novox/mesh-sdk/go/cli 1.039s PASS ok git.novox.be/novox/mesh-sdk/go/delivery 0.005s ? git.novox.be/novox/mesh-sdk/go/example [no test files] PASS ok git.novox.be/novox/mesh-sdk/go/health 0.003s PASS ok git.novox.be/novox/mesh-sdk/go/internal/testbus 0.142s PASS ok git.novox.be/novox/mesh-sdk/go/outward 0.054s PASS ok git.novox.be/novox/mesh-sdk/go/process 6.465s PASS ok git.novox.be/novox/mesh-sdk/go/provider 0.118s PASS ok git.novox.be/novox/mesh-sdk/go/provider/harness 0.115s PASS ok git.novox.be/novox/mesh-sdk/go/seal 0.006s FAIL integration level: 203 tests (0 skipped), 600 s the integration level failed (go test exited 1) --- what failed, picked from the whole of its output (the whole is in the build's log) panic: test timed out after 10m0s running tests: TestARefusedSubscribeLeavesNoHandlerBehind (10m0s) goroutine 5804 [running]: testing.(*M).startAlarm.func1() /usr/local/go/src/testing/testing.go:2802 +0x354 created by time.goFunc /usr/local/go/src/time/sleep.go:215 +0x2d goroutine 1 [chan receive, 9 minutes]: testing.(*T).Run(0x3fe300f70008, {0x605698?, 0x0?}, 0x60a498) /usr/local/go/src/testing/testing.go:2109 +0x4e5 testing.runTests.func1(0x3fe300f70008) /usr/local/go/src/testing/testing.go:2585 +0x3e testing.tRunner(0x3fe300f70008, 0x3fe300f65c58) /usr/local/go/src/testing/testing.go:2036 +0xea testing.runTests({0x601522, 0x1e}, {0x601522, 0x1e}, 0x3fe300f2c048, {0x789540, 0x13, 0x13}, {0xc2adba1237bd5489, 0x8bb2ccb21d, ...}) /usr/local/go/src/testing/testing.go:2583 +0x505 testing.(*M).Run(0x3fe300f1e320) /usr/local/go/src/testing/testing.go:2443 +0x6ac main.main() _testmain.go:82 +0x9b goroutine 6245 [chan receive, 9 minutes]: git.novox.be/novox/mesh-sdk/go.TestARefusedSubscribeLeavesNoHandlerBehind(0x3fe300f70248) /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio_test.go:208 +0xa73 testing.tRunner(0x3fe300f70248, 0x60a498) /usr/local/go/src/testing/testing.go:2036 +0xea created by testing.(*T).Run in goroutine 1 /usr/local/go/src/testing/testing.go:2101 +0x4c5 goroutine 140 [select, 10 minutes]: io.(*pipe).write(0x3fe300f2e1e0, {0x3fe3014de000, 0x53, 0x100}) /usr/local/go/src/io/pipe.go:86 +0x1e5 io.(*PipeWriter).Write(0x7?, {0x3fe3014de000?, 0x3fe3014c6cc0?, 0x5f14c0?}) /usr/local/go/src/io/pipe.go:161 +0x1a encoding/json.(*Encoder).Encode(0x3fe300f2e2a0, {0x5c8360, 0x3fe3014c6cc0}) /usr/local/go/src/encoding/json/stream.go:233 +0x1f0 git.novox.be/novox/mesh-sdk/go.(*channel).say(0x3fe300f2e300, 0x3fe3014c6cc0) /var/lib/build-agent/workspace/check/mesh-sdk/go/stdio.go:95 +0xd0 FAIL git.novox.be/novox/mesh-sdk/go 600.035s ```
jschoubben added 1 commit 2026-10-19 20:39:30 +00:00
Add the repository-identity and trunk-build tests both delivery readers need (issue 1281)
mesh/repo-check head 84a764372337 merged into trunk 8360a3bba2b4 — pass: its merge-check.sh passed, each part in its toolchain: merge-check.sh (typescript)…
mesh/merge-gate head 84a764372337 merged into trunk 8360a3bba2b4 — pass: group fix/1281-trunk-builds-by-repository composed: every machine composes with th…
mesh/delivery delivered
mesh/delivery-group group fix/1281-trunk-builds-by-repository delivered: every member is delivered
84a7643723
A build record names its repository by clone URL and a plan-asked build carries no ref; the indexer and view compared both naively.
jschoubben force-pushed fix/1281-trunk-builds-by-repository from 680a78bae2 to 84a7643723 2026-10-19 20:39:30 +00:00 Compare
mesh-tools merged commit 1536dfa745 into main 2026-10-19 20:58:09 +00:00
mesh-tools deleted branch fix/1281-trunk-builds-by-repository 2026-10-19 20:58:09 +00:00
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-sdk#40