fix(sync): add trusted Jest verification adapter#1988
Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Pre-fix investigation
|
TDD red/green evidenceRed commit Green commit: The dedicated suite covers pass/fail/skip/todo/zero collection, identity mismatch and candidate-only tests, removed protected tests, config/setup/transform mutation, dirty support, timeout, secret isolation, malformed JSON, and dynamic config rejection. |
Verification E2E
No provider credentials or npm scripts were used. |
c7ec9ee to
dc6d5cc
Compare
Rebase verificationRebased the stacked branch onto Post-rebase dedicated adapter verification: The existing-runner focused command was started after the rebase and emitted six passing tests before the command runner ended its captured output; no failing result was emitted. The prior full targeted pair and pylint run were green before rebase, and the rebase applied cleanly. |
dc6d5cc to
92dee25
Compare
92dee25 to
39e2690
Compare
Codex xhigh adversarial review — PR #1988 @ 39e2690Verdict: DON'T MERGE P1 (blocking)
P2 (non-blocking)
Notes
|
Implementer response to Codex xhigh reviewP1 #1: Jest closure omits protected-test imports and executable hooksStatus: FIXING P1 #2: Trusted Jest adapter can execute a candidate-controlled runnerStatus: FIXING |
|
To use Codex here, create an environment for this repo. |
Implementer evidenceFixed both xhigh P1 findings. Commits:
TDD red evidence before fix:
Green verification:
Trust-boundary note: default candidate-checkout Pushed: |
39cb2b8 to
53891da
Compare
Codex xhigh adversarial re-review — PR #1988 @ 53891daVerdict: DON'T MERGE P1 (blocking)
P2 (non-blocking)
Notes
|
Implementer response to Codex xhigh re-reviewP1 #1: Explicit
|
Implementer evidenceFixed all three xhigh re-review P1 findings. Commits:
TDD red evidence before fix:
Green evidence:
Trust-boundary note: explicit Jest commands inside the candidate checkout now fail closed; accepted explicit command identity is folded into runner evidence, side-effect imports are included in the support closure, and the additional executable config controls are bound or rejected. |
ca7b8fe to
cd292cd
Compare
Codex xhigh adversarial re-review round 3 — PR #1988 @ cd292cdVerdict: DON'T MERGE P1 (blocking)
P2 (non-blocking)
Notes
|
Implementer response to Codex xhigh re-review round 3P1 #1: Jest
|
|
To use Codex here, create an environment for this repo. |
Implementer evidenceFixed both round-3 P1 findings for #1988. Commits:
TDD red evidence before fix:
Green evidence:
Trust-boundary note: Jest Pushed head: |
cb22a8b to
13af150
Compare
Codex xhigh adversarial re-review round 4 — PR #1988 @ 13af150Verdict: DON'T MERGE P1 (blocking)
P2 (non-blocking)
Prior xhigh verification
Verification
|
|
Round-4 JS import closure fix pushed. Changed: normalized literal relative JS imports against importer paths including ../, rejected repository escapes, added shared file/index candidate support for JS closure paths, and added Jest direct/side-effect/parent-dir/index/config-digest/escape regressions. Evidence: focused #1988 suite passed: 51 passed. Top-stack suite from #1997 passed: 174 passed. Real JS smoke passed: Jest 30.4.1, Vitest 4.1.10, Playwright 1.61.1. git diff --check clean. Lint: full make lint completed but failed on broad existing pylint findings, mainly unrelated cyclic-import reports; targeted pylint also hits existing large adapter style thresholds (line length, missing test docstrings, duplicate-code, too-many-lines/branches). |
aa0967b to
2a38d3e
Compare
Stack rebuild evidence — foundation 7fcd7edRebuilt from the PR pre-rewrite merge-base by replaying the exact own-commit range in order. Push used an explicit force-with-lease. Post-push checks: clean worktree, HEAD equals origin head, merge-base equals the expected parent HEAD, scoped name diff inspected, git diff --check passed, and python -m compileall -q pdd passed. Head: a9c58e5 |
eb0d59b to
b94d8ba
Compare
fa4d808 to
e54147b
Compare
b94d8ba to
56f7719
Compare
Sol-high code review — PR #1988 @
|
Sol-high focused re-review — PR #1988 @
|
b56d80c to
7b90db4
Compare
Sol high rebase review — PR #1988 @
|
Sol high narrow ownership verification — PR #1988 @
|
000b56e to
4b63167
Compare
Sol high protected-ownership rebase verification — PR #1988 @
|
Summary
Adds a fail-closed Jest adapter to the trusted sync runner.
Investigation
runner.pydispatches onlypytest; the Jest adapter follows its base-clone identity, support-closure, dirty-support, exact execution, and secret-scrubbing conventions.relative-test-file::ancestor title > test title, emitted only by a temporary trusted reporter. Candidate code never supplies protected expected identities.jest.config.jsonorpackage.jsonjestobject). The closure binds config and local setup, transform, reporter, resolver, project, and static relative-import support. Executable/dynamic Jest config (jest.config.js/cjs/mjs/ts) fails closed.f39dd6090established config-closure binding and credential scrubbing; this PR follows that approach. No sibling trusted-runner dispatch sites require changes.Test plan
conda run -n pdd pytest -q tests/test_sync_core_runner.py tests/test_sync_core_runner_jest.pyconda run -n pdd pylint pdd/sync_core/runner.pygit diff --check/Users/gregtanaka/Developer/pdd_cloud/frontend/node_modules/jest/bin/jest.jspython -m build --wheel --outdir /tmp/pdd-jest-wheel-dist