Issue 742: an agent session could not run merge-check-typescript.sh (no toolchain holding @novox/mesh-sdk), so a module's TypeScript was first checked by the forge after a push. Outside the toolchain image the script now assembles the same node_modules in the check's own throwaway workspace: mesh-tools' node-tools/package.json and lock read from the forge (so a pull request cannot steer what is installed), npm ci --ignore-scripts, then @novox/mesh-sdk@latest from the forge's registry, without a credential; npm's config and cache stay in the workspace. Inside the image (TOOLCHAIN_MODULES or /app/node_modules present) nothing changes and nothing is fetched. An unreachable forge says NOT CHECKED, never a pass.
Reviewed locally before this push (playbook 07): APPROVE at local 9c34cf12, same tree. Runs: lab type-checks and passes 44 of 44; merge-check.sh passes. showcase fails on main already (the SDK no longer exports tool and provisioner), unrelated to this change.
Follow-up the review noted: an origin URL carrying credentials would be printed; this clone's origin has none.
Issue 742: an agent session could not run `merge-check-typescript.sh` (no toolchain holding @novox/mesh-sdk), so a module's TypeScript was first checked by the forge after a push. Outside the toolchain image the script now assembles the same node_modules in the check's own throwaway workspace: mesh-tools' node-tools/package.json and lock read from the forge (so a pull request cannot steer what is installed), `npm ci --ignore-scripts`, then `@novox/mesh-sdk@latest` from the forge's registry, without a credential; npm's config and cache stay in the workspace. Inside the image (TOOLCHAIN_MODULES or /app/node_modules present) nothing changes and nothing is fetched. An unreachable forge says NOT CHECKED, never a pass.
Reviewed locally before this push (playbook 07): APPROVE at local 9c34cf12, same tree. Runs: lab type-checks and passes 44 of 44; merge-check.sh passes. showcase fails on main already (the SDK no longer exports `tool` and `provisioner`), unrelated to this change.
Follow-up the review noted: an origin URL carrying credentials would be printed; this clone's origin has none.
mesh/repo-check head 3e16c055be8e merged into trunk 0361c44a03a0 — pass: THE CHANGE ALTERS ITS OWN CHECK (merge-check-typescript.sh): main's version judged…
Outside the image, assemble the same node_modules in the check's own
workspace from mesh-tools' lock on the forge, so a module's TypeScript is
checked locally before a push.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Deliverynovox/mesh-catalog@3e16c055be8e — delivered since 2026-10-14T21:06:55Z
Delivery plan — builds nothing: the change touches no module of the mesh's graph
Transitions
2026-10-14 21:04 (new) → proposed (announced): novox/mesh-catalog#307's head announced
2026-10-14 21:05 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
2026-10-14 21:05 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
2026-10-14 21:06 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
2026-10-14 21:06 published → delivered (done): nothing for a walk to move
The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.
<!-- mesh-delivery:view -->
**Delivery** `novox/mesh-catalog@3e16c055be8e` — **delivered** since 2026-10-14T21:06:55Z
**Delivery plan** — builds nothing: the change touches no module of the mesh's graph
**Transitions**
- 2026-10-14 21:04 (new) → proposed (announced): novox/mesh-catalog#307's head announced
- 2026-10-14 21:05 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
- 2026-10-14 21:05 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
- 2026-10-14 21:06 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
- 2026-10-14 21:06 published → delivered (done): nothing for a walk to move
The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
Verdict: APPROVE at 3e16c055be
The patch is the one approved locally at 9c34cf12 (same patch-id b5aa4753, merge-check-typescript.sh only), and the checks were run again on this tree (main with #306).
merge-check.sh: exit 0.
merge-check-typescript.sh, lab: toolchain assembled from the forge, 44 of 44 tests pass.
merge-check-typescript.sh, gitea (what #306 changed): 104 of 104 tests pass.
merge-check-typescript.sh, showcase: fails as known (TS2724 provisioner, TS2305 tool against SDK 0.1.14), not caused by this change.
#306 changes only modules/gitea/token.ts and its test; this change only merge-check-typescript.sh. They touch no common file.
While the forge answered HTTP 502 for a few minutes, the script said NOT CHECKED with exit 1, as it should.
Verdict: APPROVE at 3e16c055be8ec4744da084b459ff54aba401a78a
The patch is the one approved locally at 9c34cf12 (same patch-id b5aa4753, merge-check-typescript.sh only), and the checks were run again on this tree (main with #306).
- merge-check.sh: exit 0.
- merge-check-typescript.sh, lab: toolchain assembled from the forge, 44 of 44 tests pass.
- merge-check-typescript.sh, gitea (what #306 changed): 104 of 104 tests pass.
- merge-check-typescript.sh, showcase: fails as known (TS2724 `provisioner`, TS2305 `tool` against SDK 0.1.14), not caused by this change.
- #306 changes only modules/gitea/token.ts and its test; this change only merge-check-typescript.sh. They touch no common file.
- While the forge answered HTTP 502 for a few minutes, the script said NOT CHECKED with exit 1, as it should.
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.
Issue 742: an agent session could not run
merge-check-typescript.sh(no toolchain holding @novox/mesh-sdk), so a module's TypeScript was first checked by the forge after a push. Outside the toolchain image the script now assembles the same node_modules in the check's own throwaway workspace: mesh-tools' node-tools/package.json and lock read from the forge (so a pull request cannot steer what is installed),npm ci --ignore-scripts, then@novox/mesh-sdk@latestfrom the forge's registry, without a credential; npm's config and cache stay in the workspace. Inside the image (TOOLCHAIN_MODULES or /app/node_modules present) nothing changes and nothing is fetched. An unreachable forge says NOT CHECKED, never a pass.Reviewed locally before this push (playbook 07): APPROVE at local 9c34cf12, same tree. Runs: lab type-checks and passes 44 of 44; merge-check.sh passes. showcase fails on main already (the SDK no longer exports
toolandprovisioner), unrelated to this change.Follow-up the review noted: an origin URL carrying credentials would be printed; this clone's origin has none.
Delivery
novox/mesh-catalog@3e16c055be8e— delivered since 2026-10-14T21:06:55ZDelivery plan — builds nothing: the change touches no module of the mesh's graph
Transitions
The commit's note under
refs/notes/mesh-plankeeps every transition:git log --notes=mesh-plan.Verdict: APPROVE at
3e16c055beThe patch is the one approved locally at 9c34cf12 (same patch-id b5aa4753, merge-check-typescript.sh only), and the checks were run again on this tree (main with #306).
provisioner, TS2305toolagainst SDK 0.1.14), not caused by this change.