[PR #7002] [MERGED] test(verifiers): assert shared command diagnostics and identity #7563

Closed
opened 2026-11-03 13:38:44 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/morluto/rea/pull/7002
Author: @gensokyo-dev
Created: 10/24/2026
Status: ✅ Merged
Merged: 10/24/2026
Merged by: @gensokyo-dev

Base: main ← Head: test/package-verifier-contracts-20261024


📝 Commits (1)

  • 1455108 test(verifiers): assert shared command diagnostics and identity

📊 Changes

2 files changed (+58 additions, -32 deletions)

View changed files

📝 tests/boundary/process/packagedWasmVerifierOwnership.test.ts (+21 -15)
📝 tests/boundary/process/packedBridgeVerification.test.ts (+37 -17)

📄 Description

Problem and outcome

The shared command-owner refactor changed failure diagnostics and command identities, but package fixtures still read Node execFile's former top-level stderr and require the retired rea-package-command- prefix. This causes ten packed-Python failures on Windows and Linux, plus three packaged-Wasm ownership failures.

Read the canonical VerifierCommandExitError tag, numeric exit code and snapshot.stderr.text. In Wasm lifecycle fixtures, record the nonce allocated at the real launcher boundary and require the leader and descendant to receive that exact nonce, distinct from the inherited parent nonce. Share those checks across normal cleanup, permission denial/retry and harness failure. Record authority before process acquisition so a fixture log failure cannot strand a process. Remove the obsolete prefix checks; production contracts and implementations are unchanged.

Executed validation

Pinned Node 24.22.1 / npm 11.16.0, Linux x64, two CPUs:

  • Unchanged production/test files at 2250e67bc, identical to base 73320bb2c: 13 failed / 14 passed (36.03 s wall / 31.07 s CPU / 754.1 MiB sampled process-family RSS).
  • Changed pair: 27 passed. Final related command-ownership/semantics suite: four files, 38 passed (33.25 / 26.38 s / 738.0 MiB).
  • Negative controls: bypassing the actual Python AST parse fails the invalid-syntax assertion; a real descendant reporting a forged nonce fails identity matching. Both fail with assertions (2.34 s / 336.4 MiB; 5.87 s / 568.1 MiB), and both mutations were restored. No production diff remains.
  • Final npm run check and git diff --check: passed (23.70 / 43.69 s / 2927.9 MiB; 2/6 static tasks cached).

Real Python parsing, Node processes, private roots, ownership observation and cleanup ran. Packaging/install/WABT boundaries remain authored fixtures; this does not qualify a real WABT engine. The Windows failures are executed CI evidence; local execution was Linux, and current-head CI passed, including Windows, Source, all eight built shards, selected native-package baselines and the final required gate. The merged report contains 32066 passed / 0 failed / 233 conditionally skipped. Codex and Greptile completed without findings at exact head 14551085e (no inline threads). Main advanced independently with firmware-budget remediation 2e86294c8; this PR result does not qualify that combined tree. Existing malformed input, ambient-import isolation, source non-execution, capacity, denied cleanup, cleanup retry and child-before-root-release assertions remain.

RSS sums descendants every 100 ms and may double-count shared pages or miss brief/reparented children; it is not a hard aggregate cap. Focused tests used a 3 GiB sampled stop, static checks an 8 GiB stop, and commands had elapsed guards. No OOM occurred. These are validation costs, not a speedup claim; runtime agent tokens were not measured. The independent agentenv descendant-lifecycle failure remains tracked; main CI is not yet green.

Author readiness

Human owner: @gensokyo-dev

The owner explicitly delegated readiness declarations and agent-managed review. Inspection and execution were performed by Codex; no separate human inspection is claimed.

  • I reviewed the final diff and relevant existing code, understand the change and its edge cases, and take responsibility for the complete PR, including AI-assisted work.
  • I checked the evidence above, confirmed it supports the current change, and recorded meaningful validation gaps.
  • I declare this PR ready for initial maintainer review.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/morluto/rea/pull/7002 **Author:** [@gensokyo-dev](https://github.com/gensokyo-dev) **Created:** 10/24/2026 **Status:** ✅ Merged **Merged:** 10/24/2026 **Merged by:** [@gensokyo-dev](https://github.com/gensokyo-dev) **Base:** `main` ← **Head:** `test/package-verifier-contracts-20261024` --- ### 📝 Commits (1) - [`1455108`](https://github.com/morluto/rea/commit/14551085e62ad90d9acf8edb89b33025e9aa0e15) test(verifiers): assert shared command diagnostics and identity ### 📊 Changes **2 files changed** (+58 additions, -32 deletions) <details> <summary>View changed files</summary> 📝 `tests/boundary/process/packagedWasmVerifierOwnership.test.ts` (+21 -15) 📝 `tests/boundary/process/packedBridgeVerification.test.ts` (+37 -17) </details> ### 📄 Description ## Problem and outcome The shared command-owner refactor changed failure diagnostics and command identities, but package fixtures still read Node execFile's former top-level `stderr` and require the retired `rea-package-command-` prefix. This causes ten packed-Python failures on [Windows](https://github.com/morluto/rea/actions/runs/40089760299/job/120861752412) and Linux, plus three packaged-Wasm ownership failures. Read the canonical `VerifierCommandExitError` tag, numeric exit code and `snapshot.stderr.text`. In Wasm lifecycle fixtures, record the nonce allocated at the real launcher boundary and require the leader and descendant to receive that exact nonce, distinct from the inherited parent nonce. Share those checks across normal cleanup, permission denial/retry and harness failure. Record authority before process acquisition so a fixture log failure cannot strand a process. Remove the obsolete prefix checks; production contracts and implementations are unchanged. ## Executed validation Pinned Node 24.22.1 / npm 11.16.0, Linux x64, two CPUs: - Unchanged production/test files at `2250e67bc`, identical to base `73320bb2c`: **13 failed / 14 passed** (36.03 s wall / 31.07 s CPU / 754.1 MiB sampled process-family RSS). - Changed pair: **27 passed**. Final related command-ownership/semantics suite: four files, **38 passed** (33.25 / 26.38 s / 738.0 MiB). - Negative controls: bypassing the actual Python AST parse fails the invalid-syntax assertion; a real descendant reporting a forged nonce fails identity matching. Both fail with assertions (2.34 s / 336.4 MiB; 5.87 s / 568.1 MiB), and both mutations were restored. No production diff remains. - Final `npm run check` and `git diff --check`: passed (23.70 / 43.69 s / 2927.9 MiB; 2/6 static tasks cached). Real Python parsing, Node processes, private roots, ownership observation and cleanup ran. Packaging/install/WABT boundaries remain authored fixtures; this does not qualify a real WABT engine. The Windows failures are executed CI evidence; local execution was Linux, and [current-head CI](https://github.com/morluto/rea/actions/runs/40094148530) passed, including Windows, Source, all eight built shards, selected native-package baselines and the final required gate. The merged report contains **32066 passed / 0 failed / 233 conditionally skipped**. Codex and Greptile completed without findings at exact head `14551085e` (no inline threads). Main advanced independently with firmware-budget remediation `2e86294c8`; this PR result does not qualify that combined tree. Existing malformed input, ambient-import isolation, source non-execution, capacity, denied cleanup, cleanup retry and child-before-root-release assertions remain. RSS sums descendants every 100 ms and may double-count shared pages or miss brief/reparented children; it is not a hard aggregate cap. Focused tests used a 3 GiB sampled stop, static checks an 8 GiB stop, and commands had elapsed guards. No OOM occurred. These are validation costs, not a speedup claim; runtime agent tokens were not measured. The independent agentenv descendant-lifecycle failure remains tracked; main CI is not yet green. ## Author readiness Human owner: @gensokyo-dev The owner explicitly delegated readiness declarations and agent-managed review. Inspection and execution were performed by Codex; no separate human inspection is claimed. - [x] I reviewed the final diff and relevant existing code, understand the change and its edge cases, and take responsibility for the complete PR, including AI-assisted work. - [x] I checked the evidence above, confirmed it supports the current change, and recorded meaningful validation gaps. - [x] I declare this PR ready for initial maintainer review. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-11-03 13:38:44 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#7563
No description provided.