Skip to content

fix(tools): require committed live evidence for upstream syncs - #280

Merged
mdsmithaustin merged 3 commits into
mainfrom
codex/sync-live-evidence
Oct 20, 2026
Merged

mdsmithaustin merged 3 commits into
mainfrom
codex/sync-live-evidence

Conversation

@mdsmithaustin

@mdsmithaustin mdsmithaustin commented Oct 20, 2026 •

Copy link
Copy Markdown
Owner

Why

The scheduled sync runner could mark a sync complete after a live owner changed without the committed results report that PORTING.md requires.

What changed

  • Pin the starting commit and inspect live owners from both committed ledgers. Require an added or content-updated nonempty results report when an owner changes.
  • Update PORTING to require a committed report even for partial runs and distinguish report contents from a fixed format. The guard checks presence; reviewers judge evidence quality.
  • Commit the earlier #729 test receipt, label its pre-boundary samples as historical, and link the final sharpen validation from merged fix: make /sharpen rewrite prompts without executing tasks #278. Preserve original counts, revision pins, outcomes, and baseline.

Scope

This enforces report presence for the scheduled runner. The upstream marker is unchanged.

Tradeoffs

A missing report retains the unfinished attempt and blocks another attempt. Reports may record unavailable cases and explicit judgment gaps. Presence does not establish report truth, complete case coverage, or upstream prose fidelity.

Blast Radius

Changed live owners require a new or updated committed report. Deleted owners and promises retain their baseline obligations. Static-only changes do not acquire a report obligation.

Verification

  • The current gate passed all 16 focused tests through 41 production-runner invocations using real Git and mocked external agent and forge boundaries. The old runner reproduced false completion without a report; the fixed runner refused it and retained the attempt.
  • Review, Document, and Lint passed after the historical-receipt clarification. All seven GitHub checks passed on the current head. Fresh independent Shipping review returned PASS+NOTES and Docs pass.
  • Real host scheduling, paid sync calls, and actual external publication remain undriven.

✅ Low: The guard is well-bounded: it pins the baseline before the agent runs, combines live owners from both committed ledgers, fails closed on missing or malformed ledgers, and requires an added or content-changed nonempty .md report; the round-2 fixes only adjust receipt wording and documentation, and both match the source and the base-branch receipts.

Updates from git push no-mistakes

@mdsmithaustin mdsmithaustin changed the title fix(tools): require committed live evidence for upstream syncs fix(upstream-sync): require committed live results before completion Oct 20, 2026
@mdsmithaustin

Copy link
Copy Markdown
Owner Author

Author documentation-impact result: independent review required
Head: 48729e1
Diff base: fab7600
Current main context: e905e13
Patch-id: 3352244986ec70aed9e9a9e1355f2390742b3e55

Mode: author. Public workflow and documentation changed.

The runner completion guard and PORTING instructions agree on committed report presence, both old and new live owners, retained attempts, and explicit partial results. The receipt identifies prior tested revision without claiming current merge. Guard does not prove report truth. Current Shipping reviewer confirms runner/PORTING context unchanged on main.

Examined paths:

  • PORTING.md
  • tools/upstream-sync.sh
  • tools/test_upstream_sync.py
  • evals/promises/results/2026-10-20-sync-88d47514.md

Independent review is required and supplied separately by the Shipping verifier on this head.

@mdsmithaustin

Copy link
Copy Markdown
Owner Author

Verdict: PASS+NOTES
Head: 48729e1
Patch-id: 3352244986ec70aed9e9a9e1355f2390742b3e55
Docs: pass

Independent Shipping review by the trail reviewer agent on gpt-6-astra at high effort, stepped up from the gpt-6.1-sol work model. This agent did not author or edit the patch.

Examined the four changed files at the head above against merge base fab7600d2cee7fc7602ed45458d871314231ae0c. GitHub reports PR base ded31f3e65dfab2a2d79782c34dd2a115407b53c. Also checked current main context e905e13104593b9ab426ed85d229d3e6cd834cf2. Both base comparisons produce the patch-id above. The isolated review checkout is clean. No actionable code findings remain.

Fresh runtime evidence drove the actual tools/upstream-sync.sh CLI eight times against parent and head with disposable real Git repositories and mocked Claude and GitHub command boundaries. The old runner exited zero and wrote complete after a live owner changed without a report. The head exited one, retained committed work, omitted complete, named the changed promise and owner, and refused another agent attempt. Every scenario moved local main to candidate HEAD, so the refusal also verifies the pinned starting commit. Static-only changes, added nonempty reports, and partial reports with explicit unavailable-case judgments completed on both revisions.

All 15 focused runner tests passed under Python 3.14. Shell syntax and diff whitespace checks passed. All seven current GitHub checks passed. Failure signals were an unexpected CLI exit or completion marker, an assertion failure, a nonzero check exit, or a test summary with zero executed tests. The separate scenario driver and logs are retained locally at /tmp/pstack-ship-280-runtime.py, /tmp/pstack-ship-280-runtime/, and /tmp/pstack-ship-280-tests.log.

The author documentation-impact result is independent review required. This review returns pass for PORTING.md, the runner and tests, and evals/promises/results/2026-10-20-sync-88d47514.md. Scheduled-sync operators get accurate instructions for the pinned base, both committed ledgers, qualifying reports, retained failures, and recovery. The instructions distinguish report presence from truth and case coverage. The historical receipt identifies the tested skills revision and limits direct sharpen scenarios to Codex.

The previous independent trail review by gpt-6-astra examined the same stable patch and retained it in /tmp/pstack-sync-evidence-review-current.patch. Its report is /Users/msmith1/.codex/worktrees/sync-evidence/mds-pstack/.audit/sync-live-evidence/independent-review.md. I rechecked that fingerprint, reviewed the current implementation and instructions, and reread the eight retained help verdicts. They match the receipt's revision and two-case, four-harness PASS matrix. The previous review's inspection of native sharpen replies and historical full-suite logs remains reusable for the unchanged receipt. Newer main commits add a distinct historical results file and handoff-role instructions. They do not alter the runner, PORTING procedure, promise README, or this receipt's scoped historical claims.

Prove It Works and Test Behavior, Not Implementation led to the parent-versus-head CLI drives and checks of persisted outcomes. The no-comments skill's delegation and edits were omitted under this read-only unit's explicit scope; the patch adds no explanatory code comments.

Notes. This pass did not run the host scheduler, a paid Claude sync, or actual draft publication against GitHub. Those external boundaries were mocked. The production shell runner and Git executed directly. This pass does not establish report truth, full live-case coverage, or external-service availability. No source edits, pushes, rebases, or merge actions were performed. GitHub reports the branch as BEHIND, so the parent still owns merge preparation and final patch/context checks.

@mdsmithaustin
mdsmithaustin force-pushed the codex/sync-live-evidence branch from 48729e1 to f08cd14 Compare October 20, 2026 18:58
@mdsmithaustin mdsmithaustin changed the title fix(upstream-sync): require committed live results before completion fix(tools): require committed live evidence for upstream syncs Oct 20, 2026
@mdsmithaustin

mdsmithaustin commented Oct 20, 2026 •

Copy link
Copy Markdown
Owner Author

Documentation-impact author result: independent review required
Head: f08cd14
Examined artifact: the complete base-to-head patch, including PORTING.md and evals/promises/results/2026-10-20-sync-88d47514.md.

The gate documentation pass checked the runner contract against production behavior and verified the historical receipt against retained live logs. The comparison now uses the newest earlier receipt. No stale or duplicate instructions remain. The gate reported a fingerprint with an unspecified diff command. For reproducible artifact binding, the exact base is e905e13 and head is f08cd14. SHA-256 of git diff e905e13104593b9ab426ed85d229d3e6cd834cf2...f08cd14dcddba7842c2120f52052df3ff87161fb is f1121803e6ca75d76ce3e22a6b8d5d48363ad8f55ea6396e86c52d26e4e5d974, independently computed by the current reviewer.

Fresh independent review is required because the review round changed the receipt and fixture coverage. The runner production code is unchanged by that round.

@mdsmithaustin

Copy link
Copy Markdown
Owner Author

Verdict: PASS+NOTES
Head: f08cd14
Patch-id: 18ea88481151aff42d2f40c1353d477e92273bdc
Docs: pass

Independent Shipping step 1 review of base e905e13104593b9ab426ed85d229d3e6cd834cf2 to the head above. I reviewed tools/upstream-sync.sh, tools/test_upstream_sync.py, PORTING.md, and evals/promises/results/2026-10-20-sync-88d47514.md. SHA-256 of git diff e905e13104593b9ab426ed85d229d3e6cd834cf2...f08cd14dcddba7842c2120f52052df3ff87161fb is f1121803e6ca75d76ce3e22a6b8d5d48363ad8f55ea6396e86c52d26e4e5d974. The detached source checkout remained clean at that exact head.

The reviewer role is trail reviewer arm 1. The role resolver selected gpt-6.1-sol at xhigh. Actual reviewer execution model and effort are not independently observable. The author's execution identity is unknown, so this review may be same-model. This reviewer did not author the patch.

I drove both production shell runners directly through real local Git clones, fetches, branches, commits, pushes, and diffs. Only Claude and GitHub publication responses were mocked. Eighteen scenarios ran against each revision. The parent completed all eighteen. The head completed six valid scenarios and refused twelve invalid scenarios before the GitHub verification request. Every refusal retained a clean committed clone and omitted the completion marker. Every head run retained its exact starting SHA. A further retry after refusal exited before a second Claude invocation.

The cases covered unchanged live owners, changed static owners, absent or unchanged reports, added and updated reports, explicit partial-case judgments, whitespace-only reports, mode-only changes, deleted reports, report renames, new and removed live owners, owner renames, live-to-static reclassification, malformed ledgers at either revision, and movement of the baseline branch. Valid completion recorded the matching draft PR URL. Report presence remains the documented contract. The guard does not grade report truth or case coverage.

python3.14 -B tools/test_upstream_sync.py --runner tools/upstream-sync.sh -v passed all 16 tests under Python 3.14.8. bash -n tools/upstream-sync.sh and git diff --check passed. The real-runner driver passed 36 parent/head invocations plus the guarded retry. Failure signals were nonzero check exits, an absent or zero-test summary, failed assertions, or an unexpected completion marker or GitHub verification call. All seven GitHub checks were successful on the reviewed head.

Documentation-impact review mode returns pass. The author result requires independent review. The operator instructions match the pinned baseline, both committed ledgers, qualifying report content, and retained refusal state observed here. Step 8 preserves explicit judgments for unavailable cases or harnesses. The historical receipt now compares against 2026-10-20-sync-7a9a3ddb.md, the newest earlier receipt already on the base. Its relevant row records PASS for both help cases on all four harnesses. I reread the eight retained PASS grades at bf97cceece38422b281db97a403723d050bddd1c, three native Codex scenario records, the original Test verdict, the prior prose-review artifact, and the historical full-suite summaries. These support the receipt's scoped historical claims. No actionable code or documentation findings remain.

Notes. I did not drive the host scheduler, a paid Claude sync, or actual GitHub draft publication. I did not rerun paid historical model evaluations. The production shell runner and Git ran directly. Runtime evidence and the repeatable driver remain outside the worktree. No source edits, gate controls, pushes to the reviewed repository, rebases, or merges were performed.

@mdsmithaustin
mdsmithaustin force-pushed the codex/sync-live-evidence branch from f08cd14 to 20d292d Compare October 20, 2026 20:27
@mdsmithaustin

Copy link
Copy Markdown
Owner Author

Documentation-impact author result: independent review required
Head: 20d292d
Base: 9122605
Examined artifact: the complete base-to-head patch, including tools/upstream-sync.sh, tools/test_upstream_sync.py, PORTING.md, and evals/promises/results/2026-10-20-sync-88d47514.md.
Diff SHA-256: 99e889a03cb58a9722419b99432eb9cedb09a36622fd3fb5c9e11520a573264d
Stable patch-id: 37b05b8702ce5c8a2f07cd8fa4e231836ec637cb

The current gate Document pass checked the runner contract against its implementation, searched for stale duplicates, and checked the historical receipt against retained Test logs and the linked final sharpen receipt. It returned zero unresolved findings and made no edits. PORTING distinguishes report presence from semantic validation and describes report contents without prescribing a fixed format. The historical receipt retains original counts, pins, results, and baseline, labels its pre-boundary samples, and links the final sharpen validation record. Current Test passed all 16 fixtures through 41 production-runner invocations with real Git, reproducing the baseline false completion. Real host scheduling, paid sync calls, and external publication remain undriven.

Fresh independent code and documentation review is required because this refresh changed the historical receipt and report wording after the prior verdict. CI and the final Shipping verdict remain pending. No clean readiness claim is made here. Current run is 01M5DFKJ1BSR0EDFP2H89HHYGF.

@mdsmithaustin

Copy link
Copy Markdown
Owner Author

Verdict: PASS+NOTES
Head: 20d292d
Patch-id: 37b05b8702ce5c8a2f07cd8fa4e231836ec637cb
Docs: pass

Independent Shipping verification examined base 9122605b255e2e0f727e4ec24d1ad9e75280fed5 through the head above after the current checks-passed gate. All seven GitHub checks succeeded. The isolated source checkout is clean. The plain git diff <base>...<head> SHA-256 is 99e889a03cb58a9722419b99432eb9cedb09a36622fd3fb5c9e11520a573264d. This explicit fingerprint does not claim to reproduce the gate Document pass's unspecified hash method.

I drove the actual production shell with real Git and mocked only Claude and GitHub at their external boundaries. The parent falsely completed a changed live owner without a report. The reviewed head refused it, retained committed work, saved the initial baseline, and left no completion marker. A retry stopped before another Claude call. A nonempty committed partial report allowed completion. The fresh focused suite passed all 16 tests on Python 3.14.8. Runner and test bytes match the previous reviewed f08cd14dcddba7842c2120f52052df3ff87161fb exactly.

Documentation review mode passes for the complete four-file patch and its surrounding contract. PORTING.md matches the presence guard and requires committed reports with explicit missing-case judgments without prescribing a fixed format. The historical receipt preserves its original eight help grades, three Codex scenarios, revision pins, outcomes, and baseline. Its new historical label and final-receipt link agree with the retained evidence. The final receipt records 26 turns after both local fixes and retains the conditional Claude setup-question gap. No documentation findings remain.

The configured role was trail reviewer, arm 1, gpt-6.1-sol at xhigh. The runtime reports that same model and effort. The patch author's execution identity is unknown, so this review may be same-model. This agent did not author the patch.

Notes remain for undriven host scheduling, paid sync calls, and actual external publication. Presence does not establish report truth, complete case coverage, upstream prose fidelity, or future model reliability. No new paid product calls were needed for this review.

@mdsmithaustin
mdsmithaustin merged commit 8731b6e into main Oct 20, 2026
7 checks passed
@mdsmithaustin
mdsmithaustin deleted the codex/sync-live-evidence branch October 20, 2026 20:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant