Skip to content

docs(devlog): 260806 ten-item disposition sweep + #1090 CRLF external-provider regression test - #1097

Merged
lidge-jun merged 10 commits into
devfrom
codex/260806-disposition-sweep
Aug 6, 2026
Merged

docs(devlog): 260806 ten-item disposition sweep + #1090 CRLF external-provider regression test#1097
lidge-jun merged 10 commits into
devfrom
codex/260806-disposition-sweep

Conversation

@lidge-jun

@lidge-jun lidge-jun commented Aug 6, 2026

Copy link
Copy Markdown
Owner

Summary

Verification

  • bun test tests/codex-inject-integration.test.ts — 23 pass / 0 fail (new test included).
  • bun test tests/codex-inject-integration.test.ts tests/codex-inject.test.ts tests/codex-inject-write-lock.test.ts — 58 pass / 0 fail.
  • bun x tsc --noEmit — clean.
  • Independent audit (terra reviewers) on plan, comment drafts, and closeout — final PASS; live GitHub state matched the ledger at snapshot time.

Checklist

  • Scope stays focused and avoids unrelated cleanup.
  • Docs or release notes were updated when needed.
  • Security-sensitive changes were reviewed for secrets, auth, and unsafe defaults.

Summary by CodeRabbit

  • Documentation

    • Added a comprehensive disposition-sweep plan covering triage decisions, review responses, issue handling, rebases, audits, validation, and closeout evidence.
    • Documented regression-test criteria, security-review steps, reopening conditions, and merge constraints for tracked work.
  • Tests

    • Added integration coverage for Windows-style configurations with external providers.
    • Verified successful injection, preserved configuration contents, correct routing behavior, and expected session and journal state.

@github-actions github-actions Bot added the documentation Improvements or additions to documentation label Aug 6, 2026
@github-actions

github-actions Bot commented Aug 6, 2026

Copy link
Copy Markdown

Deterministic PR hygiene checks passed.

@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

The change adds plans and ledgers for a ten-item disposition sweep. It records GitHub actions, rebases, audits, validation, and closeout status. It also adds a CRLF integration test for external-provider configuration preservation.

Changes

Disposition sweep

Layer / File(s) Summary
Sweep scope and disposition matrix
devlog/_plan/260806_disposition_sweep/000_plan.md:1-65, devlog/_plan/260806_disposition_sweep/001_disposition_matrix.md:1-47
Defines the sweep scope, disposition rules, item assignments, execution phases, and no-merge constraints.
GitHub actions and closeout
devlog/_plan/260806_disposition_sweep/010_github_dispositions.md:1-55, devlog/_plan/260806_disposition_sweep/011_comment_drafts.md:1-179, devlog/_plan/260806_disposition_sweep/030_936_rebase.md:1-28, devlog/_plan/260806_disposition_sweep/040_1008_rebase.md:1-55, devlog/_plan/260806_disposition_sweep/050_closeout.md:1-38
Records GitHub dispositions, maintainer comments, rebase and audit steps, validation evidence, push status, and final closeout details.
External-provider regression validation
devlog/_plan/260806_disposition_sweep/020_1090_regression_test.md:1-59, tests/codex-inject-integration.test.ts:425-458
Documents the unresolved Windows external-provider case and adds CRLF coverage that verifies routing guidance, configuration byte preservation, and session state handling.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

Suggested labels: chore

Suggested reviewers: ingwannu, wibias

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately identifies the disposition sweep and the #1090 CRLF external-provider regression test documented by the pull request.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/260806-disposition-sweep

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 5

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@devlog/_plan/260806_disposition_sweep/000_plan.md`:
- Line 44: Confirm whether PR `#1085` is security-pass-only using the
authoritative GitHub evidence, then synchronize the disposition across all
records: update the planned action in
devlog/_plan/260806_disposition_sweep/000_plan.md:44-44, align the matrix in
devlog/_plan/260806_disposition_sweep/001_disposition_matrix.md:23-23, record
the same action and evidence in
devlog/_plan/260806_disposition_sweep/010_github_dispositions.md:31-44, and make
the posted draft consistent in
devlog/_plan/260806_disposition_sweep/011_comment_drafts.md:165-171.

In `@devlog/_plan/260806_disposition_sweep/010_github_dispositions.md`:
- Around line 3-4: Update the ledger evidence rule and corresponding rows in the
disposition plan so they agree: record actual comment IDs for comment/review
actions and explicit close-state evidence for issue or PR closures, including PR
`#1036` and the close rows in the referenced section. If comment IDs are
unavailable, revise the rule to explicitly distinguish comment evidence from
close evidence.

In `@devlog/_plan/260806_disposition_sweep/011_comment_drafts.md`:
- Around line 84-93: Update the disposition entry for `#1084` to either document
item (3) with exact source locations and a concise explanation of the
quota-parsing defect, or remove the quota-parsing item entirely if it cannot be
substantiated. Leave the cooldown no-op and missing pool-routing consumer
findings unchanged.

In `@devlog/_plan/260806_disposition_sweep/030_936_rebase.md`:
- Around line 21-25: Update the “terra security audit” PASS evidence in the
disposition ledger to include exact file paths and line ranges for each of the
four verified hardening claims: Vertex location, Bun provenance, Claude ambient
fail-closed, and the health attestation gate. Preserve the existing audit result
and claim descriptions while adding concrete file:line references that support
them.

In `@devlog/_plan/260806_disposition_sweep/050_closeout.md`:
- Around line 37-38: Update the sentence containing the `#1090` token in the
closeout text so it no longer begins a Markdown heading: keep the token attached
to the preceding sentence or wrap it in backticks, while preserving the existing
meaning.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: b0a392fe-de0a-411f-9585-4f7c910e6add

📥 Commits

Reviewing files that changed from the base of the PR and between b3a1d90 and 860b5f8.

📒 Files selected for processing (9)
  • devlog/_plan/260806_disposition_sweep/000_plan.md
  • devlog/_plan/260806_disposition_sweep/001_disposition_matrix.md
  • devlog/_plan/260806_disposition_sweep/010_github_dispositions.md
  • devlog/_plan/260806_disposition_sweep/011_comment_drafts.md
  • devlog/_plan/260806_disposition_sweep/020_1090_regression_test.md
  • devlog/_plan/260806_disposition_sweep/030_936_rebase.md
  • devlog/_plan/260806_disposition_sweep/040_1008_rebase.md
  • devlog/_plan/260806_disposition_sweep/050_closeout.md
  • tests/codex-inject-integration.test.ts

| 7 | #1008 (own, usage rollup) | R3 | rebase, triage 29 threads → fix-now vs redesign, implement fix-now, push — no merge |
| 8 | #1019 (account picker lifecycle, 106 files) | R5-adjacent | comment: split request into reviewable slices; hygiene gate noted; stays open |
| 9 | agentHits campaign: PRs #1084/#1083/#1081/#1079/#1077 | R6/R1 | close each with tailored, verified defect list + explicit "complete and reopen" guidance (user rule R1; author is active — audit finding 5 noted, tone must be respectful and specific). Linked issues #1062/#1063/#1060/#1058/#1076/#1082 are IN SCOPE as part of item 9: one policy comment each, stay open. Verified defects: #1084 cooldown no-op (`oauth-account-routes.ts:374` → `clearAnthropicAccountCooldown` Anthropic-only `anthropic-routing.ts:117`), #1081/#1079 invalid TS in six locales (bare string after value) |
| 10 | #1085 + #997 (easy rebases) | R5-adjacent | comment asking authors to rebase; note READY verdict; stay open |

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win

Synchronize the PR #1085 disposition across all ledgers.

The plan and matrix require a rebase-request comment. The GitHub ledger records a security-pass comment, and the draft says the branch is current against dev. Confirm the intended action, then update every affected record.

  • devlog/_plan/260806_disposition_sweep/000_plan.md#L44-L44: update the planned action if #1085 is security-pass-only.
  • devlog/_plan/260806_disposition_sweep/001_disposition_matrix.md#L23-L23: align the matrix with the selected action.
  • devlog/_plan/260806_disposition_sweep/010_github_dispositions.md#L31-L44: record the same action and evidence in the ledger.
  • devlog/_plan/260806_disposition_sweep/011_comment_drafts.md#L165-L171: keep the posted comment consistent with the plan and ledger.
📍 Affects 4 files
  • devlog/_plan/260806_disposition_sweep/000_plan.md#L44-L44 (this comment)
  • devlog/_plan/260806_disposition_sweep/001_disposition_matrix.md#L23-L23
  • devlog/_plan/260806_disposition_sweep/010_github_dispositions.md#L31-L44
  • devlog/_plan/260806_disposition_sweep/011_comment_drafts.md#L165-L171
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@devlog/_plan/260806_disposition_sweep/000_plan.md` at line 44, Confirm
whether PR `#1085` is security-pass-only using the authoritative GitHub evidence,
then synchronize the disposition across all records: update the planned action
in devlog/_plan/260806_disposition_sweep/000_plan.md:44-44, align the matrix in
devlog/_plan/260806_disposition_sweep/001_disposition_matrix.md:23-23, record
the same action and evidence in
devlog/_plan/260806_disposition_sweep/010_github_dispositions.md:31-44, and make
the posted draft consistent in
devlog/_plan/260806_disposition_sweep/011_comment_drafts.md:165-171.

Comment on lines +3 to +4
All writes are comments/closes/reviews; no code, no merges. Every action
records its comment id in the ledger table at the bottom.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win

Make the ledger evidence rule match the recorded rows.

Line 4 says every action records its comment ID. The PR #1036 row has only a date, and the close rows contain only gh issue close or gh pr close. Record the actual comment or close-state evidence, or revise the rule to distinguish comment IDs from close evidence.

Also applies to: 35-49

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@devlog/_plan/260806_disposition_sweep/010_github_dispositions.md` around
lines 3 - 4, Update the ledger evidence rule and corresponding rows in the
disposition plan so they agree: record actual comment IDs for comment/review
actions and explicit close-state evidence for issue or PR closures, including PR
`#1036` and the close rows in the referenced section. If comment IDs are
unavailable, revise the rule to explicitly distinguish comment evidence from
close evidence.

Comment on lines +84 to +93
> Closing this draft for now — the direction (Antigravity account pool) is
> wanted, but the current cut implements configuration without the runtime
> that would use it: (1) no pool-routing consumer reads the added config;
> (2) the cooldown endpoint accepts `google-antigravity` but calls
> `clearAnthropicAccountCooldown`, which only clears the Anthropic health
> map (`src/server/management/oauth-account-routes.ts` →
> `src/oauth/anthropic-routing.ts`) — a functional no-op for the new
> provider; (3) quota parsing duplicates existing logic. Please reopen (or
> open fresh) with a slice that wires a real consumer first — a generic
> pool-routing path for Google accounts — and we will review it properly.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "Repo files around plan:"
git ls-files | rg '(^|/)011_comment_drafts\.md$|audited|matrix|devlog/_plan' | head -200

echo
echo "Target file excerpt:"
sed -n '70,105p' devlog/_plan/260806_disposition_sweep/011_comment_drafts.md | cat -n

echo
echo "Search for 1084 and quota parsing references:"
rg -n "1084|quota parsing|quota-parsing|quota|parse" devlog tests src package.json --glob '!node_modules' --glob '!dist' --glob '!build' | head -300

Repository: lidge-jun/opencodex

Length of output: 45781


🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "Disposition matrix around `#1084`:"
sed -n '1,220p' devlog/_plan/260806_disposition_sweep/001_disposition_matrix.md | cat -n | rg -n "1084|quota|pool|cooldown|Antigravity|google-antigravity" -C 5 || true

echo
echo "Find PR `#1084` identifiers in committed files:"
rg -n "google-antigravity|clearAnthropicAccountCooldown|quarant|quota|accountQuota|AccountQuota|antigravity|AccountPool|pool" devlog/_plan/260806_disposition_sweep src tests --glob '!node_modules' --glob '!dist' --glob '!build' | head -400

echo
echo "List files modified in the current diff/stat (if available):"
git diff --stat -- 2>/dev/null || true
git diff --name-only -- 2>/dev/null | head -200 || true

Repository: lidge-jun/opencodex

Length of output: 50375


Remove or evidence the quota-parsing defect.

The disposition matrix only lists the cooldown no-op and no pool-routing consumer for #1084. Add exact source locations and why the parsing path is a defect, or remove item (3).

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@devlog/_plan/260806_disposition_sweep/011_comment_drafts.md` around lines 84
- 93, Update the disposition entry for `#1084` to either document item (3) with
exact source locations and a concise explanation of the quota-parsing defect, or
remove the quota-parsing item entirely if it cannot be substantiated. Leave the
cooldown no-op and missing pool-routing consumer findings unchanged.

Comment on lines +21 to +25
| Step | Evidence |
|------|----------|
| Merge dev into branch | `a90981e67` (origin/dev `b3a1d90a8` → `codex/916-trust-boundaries`); conflicts: auth-cors.ts (redactSecretString + effectiveGoogleMode composed), server/index.ts (localAttestationSecret folded into StartServerDeps, CLI caller → object form) |
| Duplication check | terra: no equivalent hardening landed on dev since branch point `6a7351b4d` — nothing double-applies |
| terra security audit | FAIL(3 stale test call-sites for old positional secret) → fixed in `4874390dd` → PASS; four hardening claims verified on merged tree with file:line (Vertex location, Bun provenance, Claude ambient fail-closed, health attestation gate) |

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Include the file and line evidence for the PASS claim.

Line 25 says the four hardening claims were verified “with file:line,” but it lists only claim names. Add exact paths and line ranges for the Vertex location, Bun provenance, Claude ambient fail-closed, and health attestation gate. The ledger must support the recorded audit result.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@devlog/_plan/260806_disposition_sweep/030_936_rebase.md` around lines 21 -
25, Update the “terra security audit” PASS evidence in the disposition ledger to
include exact file paths and line ranges for each of the four verified hardening
claims: Vertex location, Bun provenance, Claude ambient fail-closed, and the
health attestation gate. Preserve the existing audit result and claim
descriptions while adding concrete file:line references that support them.

Comment on lines +37 to +38
retracted with ancestry evidence; sweep range = 7 devlog commits + the
#1090 test commit).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Prevent #1090 from becoming a malformed heading.

Line 38 starts with #1090 without a space. This triggers the reported MD018 warning. Keep the token on the previous sentence, or wrap it in backticks.

🧰 Tools
🪛 markdownlint-cli2 (0.23.2)

[warning] 38-38: No space after hash on atx style heading

(MD018, no-missing-space-atx)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@devlog/_plan/260806_disposition_sweep/050_closeout.md` around lines 37 - 38,
Update the sentence containing the `#1090` token in the closeout text so it no
longer begins a Markdown heading: keep the token attached to the preceding
sentence or wrap it in backticks, while preserving the existing meaning.

Source: Linters/SAST tools

@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: 99b3b21207

ℹ️ 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 on lines +25 to +27
| terra security audit | FAIL(3 stale test call-sites for old positional secret) → fixed in `4874390dd` → PASS; four hardening claims verified on merged tree with file:line (Vertex location, Bun provenance, Claude ambient fail-closed, health attestation gate) |
| Tests | typecheck clean; full suite 9076 pass / 0 fail / 8 skip (579 files, 281s) |
| Push | `727722cba..4874390dd` on origin; PR #936 OPEN draft — NOT merged (human security review per MAINTAINERS.md still required) |

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Remove open security audit details from the tracked devlog

PR #936 is explicitly still open, unmerged, and awaiting human security review, yet this tracked document records secret-handling and attestation hardening details from its audit. That publishes pre-disclosure security work before the fix has shipped; move these details to .tmp/ and commit only the published outcome after the security review and release are complete.

AGENTS.md reference: AGENTS.md:L79-L83

Useful? React with 👍 / 👎.

@lidge-jun
lidge-jun merged commit 7425855 into dev Aug 6, 2026
33 of 35 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant