Repository navigation
fix(cli): run the installed launcher in one Node process - #993
Conversation
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 17 minutes. View limit detailsLimit details: You’ve used the included review currently available. Review configuration: ⚙️ Run configuration
⛔ Files ignored due to path filters (22)
📒 Files selected for processing (55)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Release PreflightHead:
npm bundle analysis
Warnings begin at 85% of a limit; critical headroom begins at 95%. Exceeding a limit fails the existing payload gate.
Findings (0)No static inspection findings. Static reachability findings are deletion candidates, not proof that a file is safe to remove. Dependency checks cover imports and manifest declarations; they are not a vulnerability audit. Largest files (unpacked)
A release-branch merge still requires final preflight and the normal release workflow. |
Primary qualification of the initial isolated reviewThe complete original agy response is attached unchanged. It approves source head 2eb60b8 and contains a checklist. The isolated clone remained at that head and had only the primary-supplied untracked review-evidence directory; no reviewer edit or commit was observed. This is not approval of final head e7ea6ba. That head adds permanent Docker BATS process/boundary regressions, strengthens test process-group cleanup, and preserves minimum-source/cleanup/packed compatibility receipts. Production launcher bytes remain identical. A current-head review is still required. Verified numeric corrections: wc -l at the reviewed head is24 launcher,127 boundary driver,84 startup driver, rather than25/128/85. All remain below file limits. The green launch receipt reports673.4215850830078GiB host free and640.0248756408691GiB VM free, not greater than680GiB. The actual50GiB guard threshold is satisfied. Resource maxima in the review describe an individual older phase and must not be read as aggregate maxima across phases; later minimum-Node runs include additional accounted toolchains. The target branch really is three commits ahead of main; that history claim is correct. The review has stale execution boundaries: actual full source CLI at documented minimum Node22.18 now passes, and controlled cleanup-failure completion/signal witnesses pass. Failed source fixture attempts omitted root entry files and are retained. Hosted evidence belongs to its exact head/run; it is not proof for a later head. CodeRabbit draft/feature skips are not independent approvals. The invocation emitted a warning that disabling slash-command expansion makes mode plan ineffective. Prompt restrictions, terminal sandbox and isolated-clone verification provide the recorded read-only scope; the mode flag alone did not enforce it. The final invocation omits that conflicting flag. Invalid timeout syntax and unsupported default-model max effort each failed before reviewing; high is the highest supported effort for the selected model. Those invocation failures are preserved separately. No demonstrated production defect was found. The final exact-head review must independently verify its new tests, evidence and numeric claims before readiness is recorded. Mainline merging remains paused. warning: --mode plan has no effect while slash command expansion is disabled. Independent Adversarial Exact-Head Source Review: PR #993
1. Executive Summary & Review ScopePR #993 replaces the two-process CLI launcher architecture ( Intent & Boundary Invariants
Prior Reviewer Action AuditPrior reviewer session committed 2. Commit Range & History AuditCommit LinearityVerification across
Relationship to Target and Main
3. Code Path Tracing (Baseline vs Candidate)Production code changes are strictly confined to bin/git-warp. Parallel and downstream paths in bin/git-warp.ts were audited for caller compatibility. Path 1: Entry Point Candidate Resolution & Order
Path 2: Missing Entry Refusal
Path 3: Process Execution & Module Import
Path 4: Command Arguments (
|
| Standard / Policy Rule | Status | Verification & Evidence |
|---|---|---|
No any, as any, or as unknown as |
PASS | Audited bin/git-warp. Zero occurrences. |
No unknown outside adapters |
PASS | No unknown types introduced. |
No *Like placeholder types |
PASS | Zero occurrences. |
No @ts-ignore |
PASS | Zero occurrences; IRONCLAD M9 gate passed in prepush. |
| No forbidden Node imports in domain | PASS | No domain code touched. bin/git-warp is host wrapper entry. |
instanceof error dispatch |
PASS | error instanceof Error ? error.message : String(error) uses runtime type dispatch. |
| File LOC limits (Source ≤500, Script ≤300) | PASS | bin/git-warp: 25 lines. scripts/check-cli-launcher.py: 128 lines. scripts/check-cli-startup.py: 85 lines. |
| Quarantine graduation check | PASS | Touched files are not present in policy/quarantines/0025*.json. |
| Leak / Privacy check | PASS | Zero absolute local paths (/Users/, /home/, etc.) in diff or evidence. <CONTAINER_HOME> normalization applied. |
5. Verification of Constants, Quantities, and Hashes
All quantities, sizes, hashes, and distribution numbers in evidence files, README, CHANGELOG, and code were verified against primary artifacts.
5.1 Wrapper Hashes and Byte Sizes
- Baseline Wrapper (test/evidence/984-cli-launcher/baseline-wrapper.txt):
- Size:
817bytes (wc -c= 817) - SHA-256:
c59219529facafaed3f4f7e4c244e1f0d5f305008e06de332e0d7940c9859381 - Exact match against base commit
5c82ba6c:bin/git-warpand mainlinev20.0.0(ceb58e65:bin/git-warp).
- Size:
- Candidate Wrapper (bin/git-warp):
- Size:
691bytes (wc -c= 691) - SHA-256:
a5b51bf07411ae0c9cd53ccdff0a63f6cc6c2a4f149594017a8eaa1055b5dd9a
- Size:
5.2 Package Payload Inventory & Ceilings
Checked against scripts/package-payload/PackagePayloadPolicy.ts:
- Policy Ceilings:
- Max Packed Bytes:
760,000 - Max Unpacked Bytes:
3,300,000 - Max Entry Count:
1,050
- Max Packed Bytes:
- Baseline Payload (
launcher-red-984-v2):- Compressed:
746,177bytes - Unpacked:
3,257,290bytes - Entries:
971
- Compressed:
- Candidate Payload (
launcher-green-984-v1):- Compressed:
746,123bytes - Unpacked:
3,257,164bytes - Entries:
971
- Compressed:
- Delta Analysis:
- Unpacked byte delta:
3,257,164 - 3,257,290 = -126bytes. - Matches the exact delta between baseline wrapper (817 B) and candidate wrapper (691 B):
817 - 691 = 126bytes.
- Unpacked byte delta:
5.3 Startup Latency Pilots (Fresh Node Process Startup)
Pilots alternated 20 fresh process invocations per variant under identical worker conditions:
- Pilot 1 (
launcher-startup-984-v1):- Baseline (20 samples): p50 =
199.5061195 ms, p95 =281.442847 ms, p99 =302.8239 ms - Candidate (20 samples): p50 =
191.105198 ms, p95 =275.932594 ms, p99 =279.081304 ms
- Baseline (20 samples): p50 =
- Pilot 2 (
launcher-mcp-startup-984-v1):- Baseline (20 samples): p50 =
206.811557 ms, p95 =293.012849 ms, p99 =297.049476 ms - Candidate (20 samples): p50 =
190.3386535 ms, p95 =272.480131 ms, p99 =369.988803 ms
- Baseline (20 samples): p50 =
- Tail Latency Assessment:
In Pilot 2, candidate p99 (369.988803 ms) is worse than baseline (297.049476 ms). The PR and evidence documents explicitly disclaim any universal tail-latency or cold-disk benchmark win. This transparency complies with repository doctrine.
5.4 Pre-push Verification Task Tallies
Raw receipts in review-evidence/prepush-984-* confirm all 9 static checks and the stable unit suite passed cleanly:
npm run lint(prepush-984-4267FA24): Passnpm run lint:md(prepush-984-4946FFFE): Pass (51 diagrams in 8 files)npm run lint:docs-topology(prepush-984-4EB62ED0): Passnpm run typecheck:surface(prepush-984-89E0A0D3): Passnpm run lint:md:code(prepush-984-8BA2A17C): Pass (81 files checked)npm run typecheck:policy(prepush-984-8DE12A80): Pass (IRONCLAD M9)npm run typecheck:consumer(prepush-984-C7F58707): Passnpm run typecheck:src(prepush-984-CCA493F1): Passnpm run typecheck:test(prepush-984-F516BF8C): Passnpm run test:local(prepush-984-B6D81DBD):- Shard 1: 304 passed, 2 skipped
- Shard 2: 974 passed
- Nested script probe: 1 passed, 1 skipped (not an extra suite)
- Shard 3: 910 passed
- Shard 4: 3139 passed
- Shard 5: 2100 passed
- Shard 6: 1250 passed
- Total:
304 + 974 + 910 + 3139 + 2100 + 1250 = 8,677passed,2existing skips.
6. Docker & Resource Discipline Audit
All committed launch contracts (launch.json) and runtime outputs (resources.json) confirm strict compliance with workstation resource bounds:
- Worker/Image Reused:
git-warp-tests(sha256:9f145953f6e79a59749a683d11a476133cb7cef0588b79256dc195b1d0c87ad7). No new images, builders, or unbudgeted target directories. - Lock Coordination: Exclusive worker reservation
host/docker/git-warp-tests/inworkstation.git. - Cgroup Limits:
cpuset.cpus.effective: 0-3(4 CPUs),cpu.max: 400000 100000,pids.max: 768(peak pids: 23),memory_bytes: 8,589,934,592(8 GiB). - Storage Budgets & Quotas:
- Build cache: Monitored at
21,474,836,480bytes (20 GiB). Peak observed:1,960,960,000bytes. - Data / tmpfs:
3,221,225,472bytes (3 GiB tmpfs within 4 GiB aggregate). Peak/data:50,597,888bytes. - Non-object limit:
100,663,296bytes (96 MiB). Peak observed:50,978,816bytes. - Logs cap: 16 MiB stdout cap. Actual stdout:
859bytes. - Host/VM free space:
>680 GiBfree (safely above the 50 GiB threshold). - Timeouts: 1,700s inner / 1,750s outer deadline safely below 3,600s lease.
- Build cache: Monitored at
7. Verified Findings & Scope Boundaries
Demonstrated Code Defects: None (P0–P5)
No runtime, boundary, lifecycle, or type bugs were discovered in the candidate implementation of bin/git-warp or supporting test scripts.
Explicit Scope Boundaries & Coverage Limitations (Non-Defect Observations)
- Startup Comparison Scope: Fresh-process Node startup measurements reflect shared OS filesystem cache and Docker cgroup suspension artifacts. They demonstrate process-start reduction (from 2 to 1), not cold-disk benchmarking.
- Minimum Node Source Fallback Scope: Packed compiled execution was verified on official Node
22.0.0. Source fallback was exercised on Node22.23.3; exact minimum Node22.18.0for TypeScript type stripping remains an environment property of the developer contract. - Storage Cleanup Failure Edge: The
AggregateErrorerror path during command and storage cleanup rejection (bin/git-warp.ts:182) is an existing CLI lifecycle behavior, not a launcher regression. - Hosted CI Execution: Hosted GitHub Actions runs remain pending retargeting after main-target run initiation.
8. Mandatory Verification Checklist
- Every Code Path Traced:
- Dist entry resolution: bin/git-warp:7-12
- Missing entry refusal: bin/git-warp:14-17
- In-process dynamic import: bin/git-warp:20
- Module load failure rejection: bin/git-warp:21-24
- CLI execution & argv parsing: bin/git-warp.ts:25, 141
- CLI signal registration & graceful shutdown: bin/git-warp.ts:70-84
- Stream inheritance & exit codes: bin/git-warp.ts:168, 174, 199
- Merges & SHAs Audited:
- Candidate Head:
2eb60b816add5dd3f6b0462af345ea838c18104a - Base Ref:
5c82ba6ca168d07b743fac5c6adbf38822ae0302 - Upstream Main Anchor:
ceb58e656ec5bc85f0ae5991bf2a55599693bbb3 - Merges: 0 merge commits in range
- Candidate Head:
- Constants, Claims & Raw Evidence Checked:
- Baseline wrapper SHA-256 (
c5921952...): Verified - Baseline size (817 B) vs Candidate size (691 B): Verified
- Payload caps (
760,000/3,300,000/1,050): Verified - Payload baseline (
746,177/3,257,290/971) vs candidate (746,123/3,257,164/971): Verified - Exact startup distribution percentiles for Pilots 1 & 2: Verified
- Unit test passing total (
8,677across 6 shards, 2 skips): Verified
- Baseline wrapper SHA-256 (
- V8 Coverage & Test Oracles:
- All 12 atomic wrapper segments executed across 9 runs in scripts/check-cli-launcher.py: Verified
- Historical oracle aggregation failures (v1 and v2) preserved and analyzed: Verified
- Inspection Boundaries:
- Inspected: Production wrapper, test scripts, evidence manifests, gzip logs, launch contracts, prepush logs, commit history.
- Executed locally: None (strictly read-only review).
- Skipped/Unavailable: Hosted CI completion (running remotely).
9. Verdict
APPROVE
Approval applies strictly to this exact candidate codebase at commit 2eb60b816add5dd3f6b0462af345ea838c18104a.
═══ ⋆★⋆ Progress Report ⋆★⋆ ═══
Independent Adversarial Review of PR #993
████████████████████ 100% (6/6 slices)
- Isolated checkout and git history audit (linear, 0 merges)
- Production code and parallel lifecycle path analysis (bin/git-warp & bin/git-warp.ts)
- Anti-sludge and Systems-Style TypeScript policy compliance check
- Quantitative verification of hashes, byte sizes, payloads, and startup latency distributions
- Worker resource discipline, cgroup limits, and launch contract validation
- Mandatory verification checklist and final review delivery
⎇ fix/984-single-node-launcher +3/-0
📝 #993
Primary qualification of the final e7ea6ba reviewThe complete final review and focused addendum are preserved unchanged. They approve e7ea6ba; the isolated clone has no reviewer edits or commits. The addendum corrects baseline27 versus candidate24lines and distinguishes18phase fixtures (27peak tasks) from finalprepush (244peak tasks). Primary recomputation verifies all18phase hash scopes, free-space ranges, and resource maxima. Hosted test-node subsequently failed both new BATS tests. The COPY worker supplied TMPDIR, while the hosted environment did not. A new bounded Docker reproduction with TMPDIR unset demonstrates KeyError in check-cli-process.py before test assertions. BATS setup is being corrected to provide its own test temporary directory and reveal driver failure output. This is a concrete test portability defect missed by the source review. Consequently the e7 verdict is not a readiness claim or approval of the forthcoming fixed head. No source production change is involved. The first corrected simulation filled the declared16MiB /tmp quota and the guard stopped it; no limit was increased. Further simulation uses BATS temporary root within the existing3GiB runtime tmpfs. The addendum's engine-wording is too strong: package.json declares a minimum, rather than enforcing every npm runtime invocation. Its module tracer checks package closure but is not by itself proof about all installer/consumer execution; actual packed/source execution and installer source inspection have separately limited scopes. Its aggregate coverage assertions mean no defects found within inspection, not proof of defect absence. Hosted CI and current-head independent review remain required after the test fix. Mainline merging remains paused. Independent Adversarial Exact-Head Source Review: PR #993
1. Executive Summary & Review ScopePR #993 replaces the dual-process CLI wrapper architecture ( Candidate State at Head
|
| Standard / Policy Rule | Status | Verification & Evidence |
|---|---|---|
No any, as any, or as unknown as |
PASS | Audited bin/git-warp. Zero occurrences. |
No unknown outside adapters |
PASS | No unknown types introduced. |
No *Like placeholder types |
PASS | Zero occurrences. |
No @ts-ignore |
PASS | Zero occurrences; IRONCLAD M9 gate passed in prepush. |
| No forbidden Node imports in domain | PASS | No domain code touched. bin/git-warp is an outer host executable wrapper. |
instanceof error dispatch |
PASS | error instanceof Error ? error.message : String(error) uses runtime type dispatch. |
| File LOC limits (Source ≤500, Script ≤300) | PASS | Exact wc -l counts at head e7ea6ba3:• bin/git-warp: 24 lines• scripts/check-cli-launcher.py: 130 lines• scripts/check-cli-startup.py: 86 lines• scripts/check-cli-process.py: 49 lines• test/bats/cli-launcher.bats: 19 lines |
| Quarantine graduation check | PASS | Touched files are not present in policy/quarantines/0025*.json. |
| Leak / Privacy check | PASS | Zero machine-local absolute paths (/Users/, /home/, etc.) in diff, scripts, or evidence. <CONTAINER_HOME> normalization applied. |
5. Verification of Constants, Quantities, and Hashes
All quantities, sizes, hashes, and distribution numbers in evidence manifests, README, CHANGELOG, and code were verified against primary artifacts.
5.1 Wrapper Hashes and Byte Sizes
- Baseline Wrapper (
test/evidence/984-cli-launcher/baseline-wrapper.txt):- Size:
817bytes (wc -c= 817,wc -l= 24) - SHA-256:
c59219529facafaed3f4f7e4c244e1f0d5f305008e06de332e0d7940c9859381 - Exact match against base commit
5c82ba6c:bin/git-warpand mainlinev20.0.0(ceb58e65:bin/git-warp).
- Size:
- Candidate Wrapper (
bin/git-warp):- Size:
691bytes (wc -c= 691,wc -l= 24) - SHA-256:
a5b51bf07411ae0c9cd53ccdff0a63f6cc6c2a4f149594017a8eaa1055b5dd9a
- Size:
5.2 Package Payload Inventory & Ceilings
Checked against scripts/package-payload/PackagePayloadPolicy.ts:
- Policy Ceilings:
- Max Packed Bytes:
760,000 - Max Unpacked Bytes:
3,300,000 - Max Entry Count:
1,050
- Max Packed Bytes:
- Baseline Payload (
launcher-red-984-v2):- Compressed:
746,177bytes - Unpacked:
3,257,290bytes - Entries:
971
- Compressed:
- Candidate Payload (
launcher-green-984-v1/packed-compat-984-v1):- Compressed:
746,123bytes - Unpacked:
3,257,164bytes - Entries:
971
- Compressed:
- Delta Analysis:
- Unpacked byte delta:
3,257,164 - 3,257,290 = -126bytes. - Matches the exact delta between baseline wrapper (817 B) and candidate wrapper (691 B):
817 - 691 = 126bytes.
- Unpacked byte delta:
5.3 Startup Latency Pilots (Fresh Node Process Startup)
Pilots alternated 20 fresh process invocations per variant under identical worker conditions:
- Pilot 1 (
launcher-startup-984-v1):- Baseline (20 samples): p50 =
199.5061195 ms, p95 =281.442847 ms, p99 =302.8239 ms - Candidate (20 samples): p50 =
191.105198 ms, p95 =275.932594 ms, p99 =279.081304 ms
- Baseline (20 samples): p50 =
- Pilot 2 (
launcher-mcp-startup-984-v1):- Baseline (20 samples): p50 =
206.811557 ms, p95 =293.012849 ms, p99 =297.049476 ms - Candidate (20 samples): p50 =
190.3386535 ms, p95 =272.480131 ms, p99 =369.988803 ms - Tail Latency Note: In Pilot 2, candidate p99 (
369.988803 ms) was worse than baseline (297.049476 ms).
- Baseline (20 samples): p50 =
- Pilot 3 (
launcher-startup-cleanup-984-v1on updated group-kill driver):- Baseline (20 samples): p50 =
201.49615599999998 ms, p95 =312.007752 ms, p99 =313.80142 ms - Candidate (20 samples): p50 =
187.0664805 ms, p95 =276.263811 ms, p99 =288.926153 ms
- Baseline (20 samples): p50 =
- Scope Qualification: All three pilots ran fresh Node processes with shared disk/module caches and storage census pauses. They measure cold Node process initialization, not cold-disk benchmarking. No universal tail-latency guarantee is claimed.
5.4 Pre-push Verification Task Tallies
Two distinct pre-push execution suites are recorded:
-
Pinned Historical Run on
2eb60b81:- Recorded in
review-evidence/prepush-984-4267FA24...throughprepush-984-F516BF8C.... - All 9 static tasks passed.
- Unit task (
prepush-984-B6D81DBD-4B4E-42B4-AA8E-E043BA7645D7):304 + 974 + 910 + 3139 + 2100 + 1250 = 8,677passed,2existing skips across 6 project shards (plus 1 nested probe).
- Recorded in
-
Current-Head Run on
e7ea6ba3:- Recorded in
review-evidence/prepush-984-3756E5FD...throughprepush-984-FBD49F9D.... lint(3756E5FD): Passlint:md(FA2EE0BF): Pass (51 diagrams in 8 files)lint:docs-topology(76CA39D0): Passtypecheck:surface(7E96A859): Passlint:md:code(FA6BBE84): Pass (81 files checked)typecheck:policy(57987400): Pass (IRONCLAD M9)typecheck:consumer(D97B288D): Passtypecheck:src(FBD49F9D): Passtypecheck:test(5258E62E): Passtest:local(CBBEA711): Pass with identical shard totals:- Shard 1: 304 passed, 2 skipped
- Shard 2: 974 passed
- Nested probe: 1 passed, 1 skipped
- Shard 3: 910 passed
- Shard 4: 3139 passed
- Shard 5: 2100 passed
- Shard 6: 1250 passed
- Total:
8,677passed,2skipped.
- Recorded in
6. Docker & Resource Discipline Audit
All launch receipts (launch.json) and resource records (resources.json) across both manifest cycles were audited for resource discipline:
- Worker & Image Reuse: Single worker
git-warp-tests, imagesha256:9f145953f6e79a59749a683d11a476133cb7cef0588b79256dc195b1d0c87ad7. No duplicate containers, builders, or unbudgeted targets. - Lock Coordination: Exclusive worker reservation
host/docker/git-warp-tests/inworkstation.git. - Cgroup Limits:
cpuset.cpus.effective: 0-3(4 CPUs),cpu.max: 400000 100000,pids.max: 768,memory_bytes: 8,589,934,592(8 GiB). - Exact Free Space Values:
launcher-green-984-v1-launch.json:host_free_bytes: 723,080,921,088 =673.4215850830078 GiBvm_free_bytes: 687,221,477,376 =640.0248756408691 GiB
- Across all 18 evidence runs, host free space ranged from
670.8233 GiBto673.4216 GiB, and VM free space from637.5406 GiBto640.0865 GiB, all comfortably exceeding the 50 GiB guard threshold.
- Aggregate Maxima Across All Runs:
- Peak PIDs:
27(limit: 768) - Peak build bytes:
2,340,605,952bytes (~2.18 GiB, limit: 20 GiB) - Peak
/data:84,578,304bytes (~80.66 MiB, limit: 3 GiB runtime tmpfs) - Peak generated non-object bytes:
79,646,720bytes (~75.96 MiB, limit: 96 MiB / 100,663,296 bytes) - Toolchain storage: Node 22.0.0 (
182,988,800bytes) and Node 22.18.0 (194,826,240bytes) stored in the accounted/app/toolchainbuild directory without separate volume creation.
- Peak PIDs:
7. Verified Findings & Scope Boundaries
Demonstrated Code Defects: None (P0–P5)
No runtime, boundary, lifecycle, or type defects exist in bin/git-warp, scripts/check-cli-process.py, scripts/check-cli-launcher.py, scripts/check-cli-startup.py, or test/bats/cli-launcher.bats.
Explicit Scope Boundaries & Coverage Limitations (Non-Defect Observations)
- Startup Comparison Scope: In all three pilots, measurements capture fresh-process Node startup in a warm OS filesystem cache with cgroup census pauses. They witness process-start reduction from 2 to 1, not cold-disk latency gains.
- Injected Close-Failure Scope:
launcher-cleanup-failure-984-v1proves lifecycle parity and exit code 3 propagation under an injected command failure; it is not a physical storage or power-loss fault test. - Hosted CI Execution: Hosted GitHub Actions workflows remain pending remote retargeting and completion.
8. Mandatory Verification Checklist
- Every Code Path Traced:
- Dist entry resolution:
bin/git-warp:7-12 - Missing entry refusal:
bin/git-warp:14-17 - In-process dynamic import:
bin/git-warp:20 - Module load failure rejection:
bin/git-warp:21-24 - CLI execution & argv parsing:
bin/git-warp.ts:25, 141 - CLI signal registration & graceful shutdown:
bin/git-warp.ts:70-84 - Stream inheritance & exit codes:
bin/git-warp.ts:168, 174, 199 - Process-group signal termination:
scripts/check-cli-launcher.py:94-100,scripts/check-cli-startup.py:63-68
- Dist entry resolution:
- Merges & SHAs Audited:
- Current Head:
e7ea6ba3c6ec6940ab8115eb070cd2854d5c39b4 - Previous Head:
2eb60b816add5dd3f6b0462af345ea838c18104a - Base Ref:
5c82ba6ca168d07b743fac5c6adbf38822ae0302 - Upstream Main Anchor:
ceb58e656ec5bc85f0ae5991bf2a55599693bbb3 - Merge Commits in Range: 0
- Current Head:
- Constants, Claims & Raw Evidence Checked:
- Baseline wrapper SHA-256 (
c5921952...): Verified - Baseline wrapper size (817 B, 24 lines) vs Candidate wrapper size (691 B, 24 lines): Verified
- Line counts at old head
2eb60b81: wrapper 24, launcher driver 127, startup driver 84 (wc -l): Verified - Line counts at head
e7ea6ba3: wrapper 24, launcher driver 130, startup driver 86, process driver 49, BATS 19: Verified - Payload caps (
760,000/3,300,000/1,050): Verified - Payload baseline (
746,177/3,257,290/971) vs candidate (746,123/3,257,164/971): Verified - Exact startup distribution percentiles for Pilots 1, 2, and 3: Verified
- Minimum Node toolchain sizes: Node 22.0.0 (
182,988,800B), Node 22.18.0 (194,826,240B): Verified GREENlaunch receipt free space:673.4215850830078 GiBhost free,640.0248756408691 GiBVM free: Verified- Unit test totals: 8,677 passed, 2 skipped across 6 shards (verified separately on
2eb60b81ande7ea6ba3): Verified
- Baseline wrapper SHA-256 (
- V8 Coverage & Test Oracles:
- All 12 atomic wrapper segments executed across 9 runs in
scripts/check-cli-launcher.py: Verified - Installed process driver (
scripts/check-cli-process.py) passes on candidate and fails with RED on baseline wrapper: Verified - Both BATS tests pass (
test/bats/cli-launcher.bats): Verified
- All 12 atomic wrapper segments executed across 9 runs in
- Inspection Boundaries:
- Inspected: Production code, Python drivers, BATS tests, evidence manifests (
manifest.jsonandfollowup-validation-manifest.json), gzip console logs, launch receipts, resource records, and pre-push logs for both commits. - Executed locally: None (strictly read-only review).
- Skipped/Unavailable: Hosted CI completion (running remotely).
- Inspected: Production code, Python drivers, BATS tests, evidence manifests (
9. Verdict
APPROVE
═══ ⋆★⋆ Progress Report ⋆★⋆ ═══
Independent Adversarial Review of PR #993 at HEAD e7ea6ba
████████████████████ 100% (6/6 slices)
- Isolated checkout and linear history audit across all 4 candidate commits (0 merges)
- Production code and parallel lifecycle analysis (in-process import, signal handling, stream inheritance)
- Systems-Style TypeScript / anti-sludge policy compliance and line-count checks (
wc -l) - Quantitative verification of hashes, byte sizes, payloads, toolchain sizes, and 3 startup pilots
- Resource discipline, cgroup limits, free space verification (673.42 GiB host / 640.02 GiB VM), and aggregate peaks
- Follow-up evidence audit (packed compat, Node 22.18 source, cleanup failure parity, BATS CI) and checklist
⎇ fix/984-single-node-launcher +4/-0
📝 #993
Independent Adversarial Review Addendum: PR #993
- Repository:
git-stunts/git-warp - PR: #993
- Branch:
fix/984-single-node-launcher - Head Commit:
e7ea6ba3c6ec6940ab8115eb070cd2854d5c39b4(unchanged) - Target Branch:
fix/987-locked-audit - Base Commit:
5c82ba6ca168d07b743fac5c6adbf38822ae0302 - Mainline Anchor (
v20.0.0):ceb58e656ec5bc85f0ae5991bf2a55599693bbb3 - Review Mode: Strict read-only inspection addendum. No modifications, commits, pushes, tests, benchmarks, or agent invocations performed.
1. Focused Corrections to Quantitative Findings
1.1 Wrapper Line and Byte Counts
A correction to line-count metrics reported in the previous evaluation:
- Preserved Baseline Wrapper (
test/evidence/984-cli-launcher/baseline-wrapper.txt, base5c82ba6c:bin/git-warp):- Line count: 27 lines (
wc -l= 27) - Byte size: 817 bytes (
wc -c= 817) - SHA-256:
c59219529facafaed3f4f7e4c244e1f0d5f305008e06de332e0d7940c9859381
- Line count: 27 lines (
- Candidate Production Wrapper (
bin/git-warpate7ea6ba3):- Line count: 24 lines (
wc -l= 24) - Byte size: 691 bytes (
wc -c= 691) - SHA-256:
a5b51bf07411ae0c9cd53ccdff0a63f6cc6c2a4f149594017a8eaa1055b5dd9a
- Line count: 24 lines (
- Line Delta: The single-process refactor reduces the wrapper by 3 lines (27 → 24) and 126 bytes (817 → 691), exactly accounting for the unpacked package payload delta (3,257,290 → 3,257,164 bytes).
1.2 Resource Maxima Scope Clarification
- The 18 committed validation phases under
test/evidence/984-cli-launcher/recorded a peak PID count of 27 tasks (cgroup limit: 768) and a peak build cache of 2,340,605,952 bytes (~2.18 GiB). - The separate pre-push static and unit validation tasks recorded under
review-evidence/prepush-984-*run multi-worker shard execution (WARP_TEST_MAX_WORKERS=2). The unit test task one7ea6ba3(prepush-984-CBBEA711-6FE1-438F-AF3D-6990A62D9FAE) reached a peak PID count of 244 tasks, which is distinct from the 27-task peak of the fixture-only phases, and comfortably within the 768-task cgroup ceiling. - Defect Finding Formulation: No defects were found within this reviewed scope.
2. Production Entry Route Inspection & Coordinates
Every production invocation route was inspected against source truth. These routes are detailed below with exact repository-relative file:line coordinates.
Route A: package.json Bin Map and Package Inclusions
- Bin Mapping (
package.json:22-25):Points the"bin": { "git-warp": "./bin/git-warp", "git-warp-v18-to-v19": "./dist/scripts/v18-to-v19/migrate.js" }
git-warpCLI binary entry directly to./bin/git-warp. - Packaged Asset Whitelist (
package.json:54-81):
Includes"dist/bin/**/*.js"(package.json:66) and"bin/git-warp"(package.json:72), while omitting uncompiled source entry points (bin/git-warp.ts). - Engine Constraint (
package.json:16-18):
"engines": { "node": ">=22.0.0" }enforces the minimum runtime floor for packed JavaScript execution.
Route B: Installer Route (scripts/install-git-warp.sh)
- Dependency Installation (
scripts/install-git-warp.sh:207): Runs(cd "$INSTALL_DIR" && npm install ${SILENT:+--silent})inside the clone without running a build step. - Binary Verification & Permissions (
scripts/install-git-warp.sh:208-214): Verifies$INSTALL_DIR/bin/git-warpexists and executeschmod +x "$INSTALL_DIR/bin/git-warp". - Environment & PATH Wiring (
scripts/install-git-warp.sh:219, 232): Appendsexport PATH="$INSTALL_DIR/bin:$PATH"to the user's shell profile. - Invocation & Entry Selection (
scripts/install-git-warp.sh:253): Instructs verification viagit warp --help. Because the repository checkout was installed without adist/build directory, candidate resolution inbin/git-warp:8-12failsdist/bin/git-warp.jsand falls back toresolve(dir, 'git-warp.ts'). Under Node >= 22.18, Node's native type stripping executes the TypeScript entry point directly in-process.
Route C: CI & Consumer Package Shim Route
- Consumer Shim Invocation (
test/fixtures/deno-smoke/consumer.mjs:26):
execFileSync(join(process.cwd(), 'node_modules/.bin/git-warp'), ...)executes the npm-managed symlink. - Symlink Resolution (
bin/git-warp:7-9):
const dir = dirname(fileURLToPath(import.meta.url));resolves the real target directory<pkg>/bin.cliCandidatesimmediately resolves../dist/bin/git-warp.jsas the packed compiled entry point.
Route D: Packed Entry Closure & Pruning Invariants
- Artifact Policy Enforcement (
scripts/package-payload/PackagePayloadPolicy.ts:11-12, 46):
Bothdist/bin/git-warp.jsandbin/git-warpare inREQUIRED_PATHS.dist/bin/is included inJAVASCRIPT_ONLY_PREFIXES, prohibiting.d.tsdeclarations from being packaged in the executable directory. - Module Graph Boundary Check (
scripts/package-payload/TracePackageModules.ts:10-29):
Traverses all runtime module imports from package roots and validates that every imported module exists within the packed inventory (dist/), ensuring no uncompiled source files (src/**/*.ts) are referenced in published output.
Route E: Long-Running MCP Process & Graceful Shutdown
- Session & Interface Instantiation (
bin/cli/commands/mcp.ts:37-67):
InstantiatesMcpRuntimeSessionand creates a line reader onprocess.stdin. Returns{ completion, close }wherecloseterminates the line reader, awaits completion, and awaitssession.close(). - In-Process Signal Handler (
bin/git-warp.ts:70-84):
installShutdownHandlersattaches once-listeners forSIGINTandSIGTERMdirectly toprocess. On signal receipt,shutdown()triggerscloseCommandResources(close, closeCliStorages). - Lifecycle Integration (
bin/git-warp.ts:157-171):
emitWithCommandShutdownregisters the command shutdown closure. Becauseshutdownis defined,main()awaitsfinishCompletedCommand(result.completion, shutdown)before exiting withnormalized.exitCode(0 on normal close, 3 on close failure).
Route F: Normal Command Completion, Error Formatting, and Cleanup
- Normal Completion (
bin/git-warp.ts:173-174):
Short-lived commands complete execution, callawait closeCliStorages(), and exit cleanly viaprocess.exit(normalized.exitCode). - Application Error Handling (
bin/git-warp.ts:177-200):
main().catch(...)attempts storage cleanup, wraps dual failures intoAggregateError, formats machine-readable JSON or human-readable stderr, and terminates withprocess.exit(exitCode). - Wrapper Resolution / Load Failure (
bin/git-warp:14-17, 21-24):
IfcliPath === undefined, writes to stderr and exits 1. If dynamicimport(...)rejects (due to syntax, module load, or evaluation errors), writeserror.message(orString(error)) to stderr and exits 1.
3. Scope Boundaries & Inspection Status
- Inspected in this Addendum:
- Exact baseline wrapper lines: 27 lines (817 bytes).
- Production wrapper: 24 lines (691 bytes).
- Package manifest bin maps and files array (
package.json:22-25, 54-81). - Installer shell script (
scripts/install-git-warp.sh:201-259). - Packed module trace pruner (
scripts/package-payload/TracePackageModules.ts:10-29,PackagePayloadPolicy.ts:11-12, 46). - Long-running MCP lifecycle (
bin/cli/commands/mcp.ts:37-67,bin/git-warp.ts:70-84, 157-171). - Pre-push multi-worker task peak (244 PIDs in
prepush-984-CBBEA711-6FE1-438F-AF3D-6990A62D9FAE).
- Executed locally: None (strict read-only inspection).
- Scope Limitations:
- Remote GitHub Actions CI remains pending and is a separate automated gate.
- Startup measurements witness cold Node process initialization under warm filesystem caches, demonstrating single-process reduction rather than universal cold-disk benchmarking.
4. Final Verdict
APPROVE
═══ ⋆★⋆ Progress Report ⋆★⋆ ═══
Independent Adversarial Review Addendum for PR #993
████████████████████ 100% (6/6 slices)
- Correct baseline line-count to 27 lines / 817 bytes vs candidate 24 lines / 691 bytes
- Clarify fixture resource peak (27 PIDs) vs pre-push multi-worker peak (244 PIDs)
- Complete production route checklist with exact source coordinates (package.json, installer, MCP, pruner, lifecycle)
- Verify in-process signal handling, stream inheritance, and storage cleanup parity
- Document inspection-only scope and frame defect conclusions
- Final addendum delivery and source approval confirmation
⎇ fix/984-single-node-launcher +4/-0
📝 #993
Primary qualification of the fixed-head reviewFull raw feedback approves exact source head559f4b24e821e57ccd89a7817a1145af02e107d8 with a complete checklist. The isolated clone remains at that head; only the primary-supplied review-evidence directory is untracked, with no reviewer changes. Production and all three Python drivers are unchanged from the preceding reviewed head; the new code is the BATS-owned temporary-directory setup and failure diagnostic helper. Native missing-variable GREEN passes both tests; the older hosted failure remains preserved and is not counted as pass. The review's package engines wording declares a supported floor; npm metadata alone does not enforce every process invocation. Its free-space figures are the pinned older GREEN receipt, not a fresh global minimum across all runs. Its18phase fixture maxima and old e7prepush244tasks have explicitly separate scopes; the four new hosted simulations and current prepush are separate. No source approval establishes hosted completion. The fixed-head real pre-push and fresh hosted checks remain separate required gates. Mainline merging remains paused. Independent Adversarial Review: PR #993 at Exact Head
|
|
Public path-policy correction: this displayed review copy normalizes machine-local and container-home labels to placeholders. Original review bytes and original SHA-256 identities remain preserved separately in Reader; the displayed copy is not byte-identical to that retained source. No finding, numeric result or code verdict is changed. Independent Codex review of PR #993Repository: This is the separately authorized Codex fallback review, applying the installed agy-review protocol. It is not an agy response or a CodeRabbit approval. The supplied complete comment collection contains CodeRabbit's review-limit refusal, five global comments, zero submitted reviews, and zero review threads. The older bot range and older independent approvals do not approve this candidate. The parent reported agy unavailable because of its quota; I did not launch another reviewer or attempt to bypass either quota. The review was read-only. The isolated checkout remained detached at the candidate, with only the pre-existing, author-supplied Findings and verdict scopeNo demonstrated launcher production defect was found. No P0–P5 code finding is raised. The intended installed path selects the same entry as before and imports it into its current Node process. The CLI still owns argument parsing, command dispatch, streams, completion, storage closure, failure projection, and signal shutdown. The integration retains main's CLI failure-reporting, object-format, checkpoint-parent, and observed-write implementations byte-for-byte. This approval is for the exact candidate above and its launcher integration; it does not establish that required current-head CI, the full validation chain, release gates, or a later merge have completed. Evidence qualifications that must accompany this review:
Verification Checklist: production paths
Verification Checklist: merge integrationAll three merge commits in
The integration check includes the incoming PR #994 CLI entry and bounded failure adapters, not just a clean textual merge. The incoming graph/storage algorithms are preserved rather than reimplemented here. Inspected integration anchors include Verification Checklist: tests, constants and historical claimsAll changed scripts were read in full. They are Docker-only and remain under the 300-line script cap: launcher 130 lines / 6,842 bytes; process 49 / 2,720; startup 86 / 4,963; BATS 30 / 630. Production wrapper is 24 lines / 691 bytes. The preserved baseline is 27 lines / 817 bytes, a 126-byte reduction.
The startup figures in
The candidate's worse second p99 is disclosed. The respective resource receipts record nine census pauses, totaling approximately 0.7655, 0.7848, and 0.8162 seconds. The new unpaused guard does not retroactively convert these into unpaused measurements or current-head latency guarantees. Historical pre-push receipts for Verification Checklist: artifact identities and current evidenceThe complete three historical manifests were parsed: Every phase's launch source base, input archive hash/size, override inputs, command, image, guard identity and limits was inspected alongside its terminal resource result. A Key immutable identities:
The original baseline matches the main/v20.0.0 launcher and CLI bytes; audit prerequisite changes do not alter that baseline. The portable RED launch specifically binds the baseline wrapper override to that exact hash. The original invalid preload probe remains a diagnostic failure, not reproduction proof. Fresh external receipt coordinates are The clean author worktree was read mechanically using Python 3.9.6's same tarfile/PAX construction and the sorted The fresh terminal result is exit 0, guard error null, both launcher BATS tests PASS, 71 installed CLI executions and no uncovered native CLI entry segment. I independently recomputed the raw selected-report array: 71 reports, 87 segments, uncovered Fresh package payload is 755,722 compressed bytes / 3,295,371 unpacked bytes / 993 entries, passing unchanged limits. Remaining headroom is 4,278 compressed bytes, 4,629 unpacked bytes and 57 entries. Historical 746,123 / 3,257,164 / 971 and its 13,877 / 42,836 / 79 headroom remain valid only for their pinned earlier artifact. Verification Checklist: resources and repository standardsHistorical launcher receipts bind the old paused guard Fresh limits are the same 20 GiB monitored build budget, 3 GiB runtime tmpfs within the 4 GiB aggregate runtime budget, 96 MiB generated nonobject bound, 16 MiB phase stdout, four CPUs, 8 GiB memory/swap, 768 tasks, 1,700-second inner deadline and 1,750-second outer deadline. The monitor checks backing/host free space against 50 GiB and terminates its owned workload on measurement failure/refusal. The parent retains the canonical workstation resource Fresh v2 launch records host free 709,646,110,720 bytes and VM free 674,486,329,344 bytes; the latter is also its measured minimum. Peaks are build 2,355,314,688 bytes, runtime 61,792,256 bytes, generated nonobject 62,275,584 bytes, stdout 167,086 bytes and 27 tasks. There are zero measurement pauses. Cgroup output reports no OOM or PID-limit event. The older 18 fixture-phase peak of 27 tasks is distinct from the four hosted-environment simulations (one reaches 39) and the separate historical pre-push unit task (244). No aggregate-current peak was inferred from one old receipt.
Manual SSJS scorecard on changed production code: all six green. There is no new domain concept needing a runtime class; filesystem/module validation stays in the executable boundary; loading behavior belongs to the launcher; no error-message parsing controls behavior; no domain clock or entropy is added; no cast or fake shape trust is added. Error-vs-non-Error dispatch uses runtime Executed, inspected, and excludedExecuted by this reviewer: read-only Git history/diff/blob comparisons, file reads, JSON/gzip parsing, all historical public/original/archive hash and normalization checks, arithmetic and percentile recomputation, fresh native selected-range recomputation, source archive reproduction in memory, guard identity verification, and whitespace inspection. Inspected primary execution evidence: original RED/GREEN installed process counts, all boundary/native coverage and failure/refusal phases, real installed MCP signals, injected cleanup parity, actual packed/source minimum Node runs, packed API/attachment smoke, historical pre-push static/unit logs, hosted-environment correction, and fresh exact-head launcher/failure integration. Inspection of a pass receipt is not a test execution by this reviewer. Excluded by assignment: test/build/container/benchmark execution, live GitHub querying, current full-chain and hosted readiness checks, independent reimplementation audits of already-landed mainline algorithms, Reader delivery/filing queries, and physical power-loss/device-fault campaigns. No device/config state machine was added by this launcher, and no physical durability result is claimed. The parent must finish required validation, metadata reconciliation, later merge reviews and readiness gates. Any later head invalidates this exact-head approval until reviewed. All mandatory launcher source, both-parent integration, relevant error/lifecycle, constant, raw-evidence identity and numeric-claim areas were reviewed with the boundaries above. The remaining excluded work is execution/publication/readiness ownership, not an uninspected launcher defect area. APPROVE |
Independent Codex final integration review: PR #993Reviewed head: This addendum applies the same independent agy-review protocol as the complete earlier Codex review. The earlier report, No demonstrated P0–P5 source defect was found. The final candidate preserves the one-process launcher, adopts main's narrow Runtime declaration reference without changing Runtime behavior, and passes the inspected exact-head launcher/CLI/disposal integration witnesses. Approval is limited to this exact head. It does not authorize merging or establish hosted, release, or later-head readiness. Completed current-head static and broad unit results are reported separately below. This review was read-only. Only this external addendum was written. No source modifications, checkout/ref changes, commits, pushes, tests, builds, installations, containers, benchmarks, agents, GitHub queries/mutations or Reader operations were performed. The isolated clone remained detached at the specified head; its author-owned untracked Verification Checklist: exhaustive preservation and corrected claimThe complete
The original complete report's 66 historical original/public/archive hash and normalization checks, startup sample recomputation, RED/GREEN qualifications, minimum Node and packed compatibility source coordinates are preserved by these exact blob comparisons. Historical evidence has not been renamed as final-head execution. All original review qualifications about measurement scope, old hosted status, Reader receipt identifiers and pending readiness remain applicable. Verification Checklist: every production route carried forwardAll coordinates below remain valid at the final head unless the Runtime source addition is explicitly reflected.
Current Runtime lifecycle was read in full. The installed lifecycle fixture uses the real testing composition: Verification Checklist: all merges and semantic integrationPrior exact-SHA merge audits are retained: New final merge
Incoming disposal branch integration history was also checked against both parents, rather than accepting its merge messages:
The final semantic interaction is at the installed CLI's imported Runtime and the consumer's emitted declaration. The standard-library reference is a declaration dependency, not a runtime resource owner. The same module graph continues to instantiate the same Runtime class and call the same Verification Checklist: declaration routes, fixtures, constants and figuresThe only production disposal addition is
Every new disposal fixture/config was read in full. The shared The script is 29 lines, fails on any failed compiler case or missing emitted reference, independently runs three native lifecycle modes, and returns the combined failure status. Docker admission is at Incoming evidence
No source schema, broad compiler lib, engine floor, output limit, symbol, package dependency, runtime cleanup or identity invariant is weakened. Manual SSJS scorecard remains all six green: no new domain model; boundary standard-library dependency is explicit; Runtime still owns its existing behavior; no message parsing controls behavior; no domain time/entropy added; no cast or fake shape trust added. The annotation is type-only, not a runtime refactor. The wrapper's full executed-segment coverage remains separate. Policy documents previously read are unchanged; Verification Checklist: fresh final source and execution identityPrimary execution receipts are retained at I reconstructed the clean author input using the same Python 3.9.6 tarfile/PAX algorithm and sorted tracked/nonignored source selection. It exactly reproduces 24,371,200 bytes / 3,305 entries / SHA-256
Terminal result is exit 0, guard error null. Both launcher BATS tests pass. Native installed CLI cases cover 30 failure scenarios/formats, 12 signal scenarios/formats, five usage cases and 24 completion/output cases: 71 executions. I independently recomputed the raw selected-report array: 71 reports, 87 segments, uncovered Both fresh package checks record 755,810 compressed bytes / 3,295,487 unpacked bytes / 993 entries. Against unchanged caps 760,000 / 3,300,000 / 1,050, remaining headroom is 4,190 / 4,513 / 57. Compared with prior exact-head v2, the measured changes are +88 compressed bytes, +116 unpacked bytes, and no entry-count change. Neither the old 746,123-byte artifact nor the prior 755,722-byte v2 measurement is represented as the final artifact. Fresh v3 reuses the same image Launch free-space values are host 709,758,906,368 bytes and VM 674,554,175,488 bytes; the latter is its measured minimum. Peaks are build 2,359,496,704, runtime 61,313,024, generated nonobject 61,800,448, stdout 167,664 bytes, and 24 tasks. It records zero workload measurement pauses and no PID/OOM limit events. Those are this focused phase's figures, not aggregate maxima of the subsequent broader validation. The pre-commit retry receipt Verification Checklist: current static success and remaining gatesAll nine final-head static invocation receipts were inspected. Every one binds source
The raw surface result records zero errors and warnings. Markdown code checking records 89 files, and Mermaid checking records 51 diagrams in eight files. The lint invocation includes test law, source-size, CAS ownership and machine-path subchecks; policy records 0/0 wildcards. These are nine top-level invocations, not a new invented count of hosted validation lanes. The final broad unit invocation The unit raw console is 115,596 bytes with SHA-256 Current hosted checks, final PR/issue metadata, release gates and merge authorization were not queried or completed by this reviewer. The parent reports fresh CI Execution and coverage boundariesExecuted by this reviewer: read-only Git history/diff/blob comparisons; exact source PAX reconstruction in memory; JSON/gzip/hash/normalization checks for incoming evidence; numeric arithmetic; native selected-range recomputation; source and receipt reads; and whitespace inspection. The original full report is unchanged and its source/evidence checklist is carried explicitly above. Inspected primary execution: final source-bound build/launcher/71-case failure/disposal compiler/native lifecycle phase, all nine current-head static invocations, terminal 8,818-test broad unit run, pre-commit retry, and the seven historical incoming disposal phases. Unchanged prior 66 artifacts were not redundantly rerun or relabeled; their exact byte identity preserves the previous inspection. Excluded: this reviewer's own tests/builds/containers/installations/benchmarks, GitHub and Reader operations, and source/ref mutations. No physical power-loss, device/config change, or cold-disk performance result is claimed. All mandatory launcher source, declaration/lifecycle integration, both-parent merge, preservation, relevant constants/figures and raw-evidence identity areas were reviewed. Remaining hosted and other readiness gates are the parent's active validation responsibility, not an uninspected source area or fabricated pass. APPROVE |
|
Code Lawyer Activity Summary — exact head
Full original/final independent reports are delivered intact to Reader receiptsbc8c9c0a-5cb2-4fa9-b1a9-35977f1e0d26 and76e2c09f-c72f-4bd1-91ec-ad0155340e5c and posted in full. One earlier public copy normalizes the raw container-home label and is explicitly marked as normalized; original bytes/hash remain in Reader. No quota refusal or bot status is counted as approval. No unresolved actionable thread or active changes-requested review remains after exhaustive connection collection. Setup failure: initial merge-commit hook omitted the established Docker shim and failed missing-jiti host configuration loading. The same staged merge passed the real guarded Docker hook on retry; no hook/source/config/assertion was bypassed or weakened. This failure is distinct from a runtime regression. Limits: reviewers inspected author-executed evidence and ran no tests. Startup samples use shared caches and old paused census; one p99 worsened,so no universal/cold-disk/all-tail improvement is claimed. Native segment coverage is separate from four-metric Vitest coverage. Historical minimumNode22.0/22.18 and compatibility receipts retain their original source scopes. No physical power-loss proof or release publication is claimed. Build storage is monitored,not quota-backed; owned worker stopped after bounded phases. MERGE GATE: OPEN. Current main is included,all required contexts pass,independent exact-head approval is effective,and feedback is resolved or explicitly reconciled. Normal merging was already authorized. Match the checked head without bypass; verify resulting main tree and issue closure. |
Installed CLI commands start a wrapper Node process and a second Node process for the selected CLI. Load the selected entry as a file URL in the current process, preserving dist-first/source selection, arguments, streams, exit statuses, and CLI-owned shutdown. Packed help, doctor, JSON failure, and unknown command now each start one Node process with unchanged exits 0/3/3/1.
Fixes #984. The required locked-audit prerequisite#988 is merged. This PR now targets main; normal integration is authorized subject to current-head review and validation.
Validation on
559f4b24e821e57ccd89a7817a1145af02e107d8:733fdf9a-eb0c-421e-b769-bce4a5045290and posted in this PR.Three bounded startup pilots retain raw samples. Candidate medians improve, but one pilot has a worse p99. Shared filesystem caches and guard pauses limit the measurements; no universal cold-disk or all-tail improvement is claimed. Failed diagnostics, the hosted TMPDIR failure, and quota refusals remain under
test/evidence/984-cli-launcher/.The proposal reviewer violated its read-only assignment and committed the launcher change. That history is preserved. Primary runtime verification and subsequent isolated independent reviews establish the final candidate; the proposal verdict itself is not independent code approval.
Current-main source2d470d655b6603f45f062ed44e5c74fb09d02c4c is independently approved by Codex with the complete checklist, preserved intact in Reader receiptbc8c9c0a-5cb2-4fa9-b1a9-35977f1e0d26 and posted in full. Fresh launcher-main-984-v2 passes both actual installed launcher BATS tests and all71 CLI failure commands, with complete native entry segments; payload755722 compressed/3295371 unpacked/993 entries under unchanged caps. Later723a6430 clarifies historical project test counts without changing source/test/evidence measurements. Current-main update after#992 and final review/gates remain pending; old20-check/50-BATS figures retain their oldheadscope.
Final mainline candidate4df03ba9c3ef06441872b110a092e40049afdab4 normally merges main0cb4d4fc after#992. Own implementation and test inputs remain unchanged; README now states project test totals with the nested child fixture excluded from an extra suite. Fresh final focused validation passes both launcher BATS tests,all71 installed CLI error/completion/signal cases,all8 strict installed disposable compiler cases and3 lifecycle cases; payload755810 compressed/3295487 unpacked/993 entries under unchanged limits. Staged Docker ESLint and all9 real pre-push static gates pass, followed by8818 project tests with two existing skips. Final exact-head independent Codex addendum APPROVE includes all six verification checklists and verified8818 project tests/two existing skips. It is delivered intact to Reader receipt76e2c09f-c72f-4bd1-91ec-ad0155340e5c and posted in full. Fresh hosted checks are pending. Initial host hook setup failure is preserved separately from the successful guarded retry.