Skip to content

fix: preserve CLI evidence through interruption and output reuse - #19

Merged
CompleteDotTech merged 5 commits into
mainfrom
fix/audit-15-output-protection
Oct 26, 2026
Merged

CompleteDotTech merged 5 commits into
mainfrom
fix/audit-15-output-protection

Conversation

@CompleteDotTech

@CompleteDotTech CompleteDotTech commented Oct 26, 2026 •

Copy link
Copy Markdown
Collaborator

Fixes #15

The CLI previously opened report paths with truncation before checking targets, and Ctrl-C could leave invalid JSON or completed HTML rows only in memory. File runs now refuse reused paths, atomically checkpoint every completed row with fsync before progress, and atomically publish a fully rendered final artifact. --force explicitly permits final replacement; checkpoints remain no-clobber. --recover renders saved results offline with explicit incomplete/completed/pending counts and never reruns targets.

CLI JSON now wraps unchanged result dictionaries under results plus run metadata; CSV appends run fields and empty summaries, and HTML labels run completeness. README, reference and installed skill document the format migration, conservative retained checkpoints and 64 MiB recovery bound. Stdout cannot recover from forced termination; in-progress uncommitted results and hardware storage failure remain outside durability guarantees.

Validation: six initial regression methods fail the unchanged parent; additional checkpoint-bound/nonregular-file regressions pass; 182 local tests pass (25 Windows platform skips); all eleven focused durability tests pass under Linux via WSL. Coverage includes abrupt child-process exit followed by offline HTML reconstruction, all-format partial recovery, existing-output preservation, failed explicit replacement, publication races, malformed recovery and CSV formula protection. Actual CLI help, skill validator and full committed whitespace checks pass. No external requests, scans, credentials or production changes.

Dependency: stacked on PR #18 at immutable 0915b00da362b9c08a5ba7f52771c53c969f48ff; this PR targets fix/audit-14-origin-scope for a focused diff. Parent must actually merge before this PR, followed by coordinator base reconciliation and fresh affected checks/review. Hosted Copilot review of the exact final head and required CI are still mandatory; no merge authorized by this PR body.

The final recovery regression also covers a real loopback HTTP999 response: recovery accepts the fetcher's exact-integer100..999/null domain while still rejecting unsafe types and exploitability attestation.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-26T02:55:19.099033Z 66955e1 Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 9e8904bd3d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread wordpress_check.py Outdated
Comment thread wordpress_check.py Outdated
@CompleteDotTech

Copy link
Copy Markdown
Collaborator Author

@codex review

@CompleteDotTech

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: dada7c5f28

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread wordpress_check.py Outdated
@CompleteDotTech

Copy link
Copy Markdown
Collaborator Author

Exact final head dada7c5f282c1aaaa569c6d7de70becaf2c6f9af: all 10 hosted CI jobs passed (push and stacked-PR Python Linux/Windows matrices plus isolated WordPress integration jobs). Local full suite:180 tests OK,25 Windows platform skips. All nine durability regressions also pass under native Linux via WSL, including FIFO-without-writer recovery and abrupt child-process exit.

The two valid initial hosted Codex findings have concrete fix/regression replies and resolved threads: checkpoint writer/recovery bounds (c97bc86) and nonregular blocking input (8a514e8). A fresh supplemental hosted Codex review was requested on the exact final head and remains distinct from Copilot.

Required GitHub Copilot review remains blocked: documented copilot-pull-request-reviewer[bot] requests returned success, but requested reviewers stay empty, timeline has no registered review request, and no completed Copilot review exists after delayed readback. Empty results are not approval. PR remains unmerged and issue15 remains open.

This is stacked on PR18 at 0915b00da362b9c08a5ba7f52771c53c969f48ff; that dependency must actually merge before coordinator reconciliation, any necessary fresh checks/review, and this PR's merge. No administrative override, production operation, real target request or WSL restart occurred.

@CompleteDotTech

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Can't wait for the next one!

Reviewed commit: 66955e11c2

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@CompleteDotTech

Copy link
Copy Markdown
Collaborator Author

Final head 66955e11c25e6c64247b5be15da323a1cce3e975: all 10 exact-head CI jobs passed. Full Windows suite:182 tests OK,25 platform skips; native Linux durability suite:11 tests passed, including loopback HTTP999 checkpoint recovery and FIFO-without-writer rejection. CLI help, skill metadata and committed diff checks pass.

The supplemental hosted Codex review completed on this exact head with no new findings: #19 (comment) . All three earlier valid Codex findings have fixes, meaningful regressions, concrete replies and verified resolved discussions (writer/recovery bounds, nonregular input blocking, and fetcher/recovery HTTP status domain). This is not a GitHub Copilot review.

GitHub Copilot remains a blocker: requests returned success but no reviewer registered, no review_requested event exists, and no completed Copilot review covers this head. Parent PR18 at 0915b00da362b9c08a5ba7f52771c53c969f48ff must actually merge and the stacked base must be reconciled before this PR is eligible to merge. PR19 remains unmerged and issue15 remains open. No overrides, production actions or real target scans occurred.

@CompleteDotTech
CompleteDotTech changed the base branch from fix/audit-14-origin-scope to main October 26, 2026 03:34
@CompleteDotTech
CompleteDotTech merged commit 259707d into main Oct 26, 2026
10 checks passed
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.

[P2] Preserve CLI report evidence across interruption and accidental output reuse

1 participant