镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

fix: preserve diagnostic text without secret redaction - #1179

Merged
mldangelo-oai merged 4 commits into
mainfrom
mdangelo/codex/remove-secret-redaction
Oct 2, 2026
Merged

mldangelo-oai merged 4 commits into
mainfrom
mdangelo/codex/remove-secret-redaction

Conversation

@mldangelo-oai

@mldangelo-oai mldangelo-oai commented Oct 1, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Preserve diagnostic text instead of replacing credential-shaped messages with [redacted]. The wrapper's heuristic also hid ordinary failures such as token budget exceeded and basic validation failed.

Changes

  • Remove wrapper-owned secret redaction from CLI/SDK diagnostics, progress displays, saved failures, publication receipts, and patch-risk reports and summaries.
  • Remove CODEX_SECURITY_REDACT_LOGS and its documentation. Existing verbosity and log-level settings continue to control diagnostic detail.
  • Normalize terminal controls at affected CLI error-display boundaries, including publication, policy, import, patch, component-scan, and bulk-scan failures. Returned and persisted errors retain the original text.
  • Preserve unsafe-path and link checks, credential access/storage/configuration controls, existing authentication advice, and upstream Codex protections.
  • Update agent guidance and regression coverage for preserved diagnostic text, verbosity precedence, terminal output, and saved errors using synthetic data.
  • Merge current main and retain its updated CLI help.

Testing

Validation on 5b244b16 after resolving the latest main conflicts:

  • Full SDK suite, seeds 12345 and 763770054: 3,383 passed, 51 skipped, zero failures in each run; 67,782 assertions across 158 files per run. Both ran after rebuilding the bundled plugin, using isolated private temporary directories.
  • 331 focused tests passed across diagnostic, dashboard, owner-model, model configuration, cost context, and deduplication behavior.
  • SDK pnpm run types, pnpm run format, pnpm run build:ci, and pnpm run build:plugin: passed.
  • Production dependency audit: passed with no known vulnerabilities.
  • git diff --check: passed.
  • Independent merge review plus three fresh native code reviews and independent verification: no actionable findings.
  • CLI and integration QA used synthetic fixtures; no live service/model tests were run.

Risk and rollout

This intentionally changes the default behavior: credential-shaped diagnostic text is preserved regardless of verbosity. CODEX_SECURITY_REDACT_LOGS is no longer supported and has no effect; no replacement setting or flag is introduced.

Diagnostics and persisted or published summaries can contain sensitive information. Review output and artifacts before sharing or publishing them. This change does not add logging, session capture, or uploads, and cannot restore text already redacted upstream or in existing saved artifacts.

Public disclosure review

  • No customer, partner, prospect, or user identities, data, or identifying details are included.
  • No credentials, personal data, private source, scan findings, or nonpublic links or tickets are included.
  • I reviewed the branch name, title, description, commits, changes, comments, logs, screenshots, attachments, and links for public disclosure.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 1, 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-02T00:11:18.607368Z 5b244b1 New commits
🔒 Security Review ✅ Completed 2026-10-02T00:12:05.090023Z 5b244b1 New commits
ℹ️ 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: 2dd9b25f4a

ℹ️ 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 sdk/typescript/src/cli.ts Resolved
@github-actions github-actions Bot added the bug Something isn't working label Oct 1, 2026

@soyeon-oai soyeon-oai left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Reviewed 2dd9b25 against 4096958. I am withholding approval for the existing terminal-control issue: #1179 (comment)

I reproduced the single-scan publication path through actual main() with an injected publishScanToCloud failure. For a synthetic error containing token=SYNTHETIC_TOKEN_123 followed by ESC[2J and a newline, both revisions return 2 with empty stdout; base replaces the message with [redacted], while this head writes the raw ESC and embedded newline to stderr. Important qualification: a token-free control emits raw controls on BOTH revisions, so this exposes an existing missing terminal-normalization boundary rather than introducing that weakness for every input.

Please preserve diagnostic text but apply diagnosticValue at the stderr display boundary (cli.ts:3128), as the batch path already does, and cover the equivalent direct error writes in other changed catch paths. Returned/persisted error data can remain unchanged. No need to restore credential redaction.

The focused original tests pass; the synthetic comparison demonstrates the missing control-character coverage. A real malformed-manifest attempt was blocked by the environment's /tmp ownership check before parsing, with no network calls; I did not bypass that check. No live service/model tests were run. I found no additional actionable issue in the full diff and relevant callers.

@mldangelo-oai
mldangelo-oai merged commit 2fd7880 into main Oct 2, 2026
60 checks passed
@mldangelo-oai
mldangelo-oai deleted the mdangelo/codex/remove-secret-redaction branch October 2, 2026 00:36
@github-actions github-actions Bot mentioned this pull request Oct 2, 2026
3 tasks done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants