The node-engine says its events once through a transport fault, and an unsaid one at the next link (ADR 0668; issue 1966; group fix/1966-call-made-once)
#222
Merged
mesh-toolsmerged 4 commits from fix/1966-call-made-once into main2026-11-10 07:20:32 +00:00
Member of group fix/1966-call-made-once (mesh-sdk #185 merges first; mesh-contracts, mesh-delivery). The full description, tests, validator verdicts and review record are on mesh-sdk #185.
This member: the node-engine publishes its seat events (manifest-reads-changed among them) once under a message id, called again through a transport fault (no responders, as nats.ErrNoStreamResponse too, and a deadline), and keeps an event it could not say to say it at the next link.
Member of group fix/1966-call-made-once (mesh-sdk #185 merges first; mesh-contracts, mesh-delivery). The full description, tests, validator verdicts and review record are on mesh-sdk #185.
This member: the node-engine publishes its seat events (manifest-reads-changed among them) once under a message id, called again through a transport fault (no responders, as nats.ErrNoStreamResponse too, and a deadline), and keeps an event it could not say to say it at the next link.
Issue 1966 (notes 152-160); decision ADR 0668 (accepted).
Reviewed-by: mesh-code-reviewer@shanks (3 rounds and a narrow check of round 3's fixes) at mesh-sdk 13998c2362d35f0d150e5cdc2d6234800fb5519e, mesh-contracts bb16f99e2d5e854bb8f6552ce4b256e7c10e8ea0, mesh-host 9cd03a7430cc6b7dca3f5a97a08a5a799a84c673, mesh-delivery 262d21c431b3682f91190363689ab8f58cdb5032
Pushed-by: lead-47@shanks
https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
One publish of manifest-reads-changed with a 10 s deadline was the likely loss behind note 155; the
stream takes the id once, so publishing again is safe.
Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
A failed say was only a line in the engine's log; now it is said again when a link opens, beside the
statement made while no link was open (proved by a step of the node key test, with H1's publish).
Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
mesh/check failed: mesh-delivery-checker: no published of the tagged version of go-meshconditions of mesh-health-and-re… | 9cd03a7430cc on f50442ac7a2d
mesh/delivery closed: a newer head of the same pull request
mesh/delivery-group group fix/1966-call-made-once rejected: composed together: the checker's verdict at the members' heads (c54b617d200d): mesh-delivery-checker
Deliverynovox/mesh-host@d581acdedae3 — merged since 2026-11-10T07:20:34Z
Source — source.main moved to novox/mesh-host@783a2d2207. Whether it reached the machines is mesh-delivery-view's, derived from source.main, the wants and the haves.
composed together: fail — the checker's verdict at the members' heads (6985553d412c): mesh-delivery-checker
Transitions
2026-11-10 05:03 (new) → proposed (announced): novox/mesh-host#222's head announced
2026-11-10 05:03 proposed → ready (accepted): a verdict names this commit and the trunk's head as its trunk commit, the gate passed or warned, and the repository's own check did not fail; or the check gates no merge (check-gates-merge false)
2026-11-10 07:20 ready → merged (merged): on the trunk its modules follow: merged there
The commit's note under refs/notes/mesh-plan keeps every transition of this change up to its merge: git log --notes=mesh-plan.
<!-- mesh-delivery:view -->
**Delivery** `novox/mesh-host@d581acdedae3` — **merged** since 2026-11-10T07:20:34Z
**Source** — source.main moved to novox/mesh-host@783a2d22073f. Whether it reached the machines is `mesh-delivery-view`'s, derived from `source.main`, the wants and the haves.
**Group** `fix/1966-call-made-once`: novox/mesh-contracts@bb16f99e2d5e, novox/mesh-delivery@262d21c431b3, novox/mesh-host@d581acdedae3, novox/mesh-sdk@32b14ce0ef4b
- composed together: fail — the checker's verdict at the members' heads (6985553d412c): mesh-delivery-checker
**Transitions**
- 2026-11-10 05:03 (new) → proposed (announced): novox/mesh-host#222's head announced
- 2026-11-10 05:03 proposed → ready (accepted): a verdict names this commit and the trunk's head as its trunk commit, the gate passed or warned, and the repository's own check did not fail; or the check gates no merge (check-gates-merge false)
- 2026-11-10 07:20 ready → merged (merged): on the trunk its modules follow: merged there
The commit's note under `refs/notes/mesh-plan` keeps every transition of this change up to its merge: `git log --notes=mesh-plan`.
mesh-delivery: the operator's Approve of this pull request's merge into main is ended: a head it covers moved on: the heads it covers are no longer the group's heads. Nothing is merged on it. The operator is asked again once the checks pass at the new head.
mesh-delivery: the operator's Approve of this pull request's merge into main is ended: a head it covers moved on: the heads it covers are no longer the group's heads. Nothing is merged on it. The operator is asked again once the checks pass at the new head.
Since mesh-catalog 6b8e7fc6 the build modules ask the capability seat-settle-delay of the machine, so on
the stand-in builder without it mesh-build-go and mesh-build-node were left out as unhostable and both
toolchain tests failed against the catalogue's main, on mesh-host's trunk as on this group's head.
Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
mesh-delivery: the operator's Approve of this pull request's merge into main is ended: its head 9cd03a7430 is no longer the pull request's head, or the pull request closed. Nothing is merged on it. The operator is asked again once the checks pass at the new head.
mesh-delivery: the operator's Approve of this pull request's merge into main is ended: its head 9cd03a7430cc is no longer the pull request's head, or the pull request closed. Nothing is merged on it. The operator is asked again once the checks pass at the new head.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Member of group fix/1966-call-made-once (mesh-sdk #185 merges first; mesh-contracts, mesh-delivery). The full description, tests, validator verdicts and review record are on mesh-sdk #185.
This member: the node-engine publishes its seat events (manifest-reads-changed among them) once under a message id, called again through a transport fault (no responders, as nats.ErrNoStreamResponse too, and a deadline), and keeps an event it could not say to say it at the next link.
Issue 1966 (notes 152-160); decision ADR 0668 (accepted).
Reviewed-by: mesh-code-reviewer@shanks (3 rounds and a narrow check of round 3's fixes) at mesh-sdk 13998c2362d35f0d150e5cdc2d6234800fb5519e, mesh-contracts bb16f99e2d5e854bb8f6552ce4b256e7c10e8ea0, mesh-host
9cd03a7430, mesh-delivery 262d21c431b3682f91190363689ab8f58cdb5032Pushed-by: lead-47@shanks
https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
Delivery
novox/mesh-host@d581acdedae3— merged since 2026-11-10T07:20:34ZSource — source.main moved to novox/mesh-host@783a2d2207. Whether it reached the machines is
mesh-delivery-view's, derived fromsource.main, the wants and the haves.Group
fix/1966-call-made-once: novox/mesh-contracts@bb16f99e2d, novox/mesh-delivery@262d21c431, novox/mesh-host@d581acdeda, novox/mesh-sdk@32b14ce0efTransitions
The commit's note under
refs/notes/mesh-plankeeps every transition of this change up to its merge:git log --notes=mesh-plan.mesh-delivery: the operator's Approve of this pull request's merge into main is ended: a head it covers moved on: the heads it covers are no longer the group's heads. Nothing is merged on it. The operator is asked again once the checks pass at the new head.
mesh-delivery: the operator's Approve of this pull request's merge into main is ended: its head
9cd03a7430is no longer the pull request's head, or the pull request closed. Nothing is merged on it. The operator is asked again once the checks pass at the new head.