Repository navigation
feat(prompt-input): issue the input profile for recorded Codex 0.157.1 - #69
Merged
Juliusolsson05 merged 5 commits intoSep 27, 2026
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The profile refused every CLI but 0.149.1, so at 0.157.1 (the version Agent Code runs) prompt-input evidence was gone and fresh-rollout ownership rested on the proxy path alone. It now covers a table of exact recorded versions: 0.149.1 and 0.157.1, never a range. Evidence for 0.157.1: - the full 16-case corpus re-recorded inline and fullscreen; - the config/read projection (identical to 0.149.1's); - a per-tag audit of the config precedence code. The recorded contract test runs once per corpus. Real 0.157 surfaces the 0.149.1 composer classifier misread, all pinned by the recordings: - the trust hint row has the idle-footer shape; - the skill popup now paints above the composer; - fullscreen uses a two-row footer. Recorder fixes for 0.157, all version-gated, explained inline: daemon, model migration, skill frontmatter, 1+Enter trust, title side requests, prompt-carrying request match, painted-row windows, real resize repaint, popup hint wait. Fixes #63 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review a and b of #69: Codex 0.157.1 paints every popup above the composer, and the slash-command and file popups carry no hint row. With one open, the pane read as a composer holding the draft, so Enter (which selects the popup item) produced evidence for a prompt Codex never sent. Reviewer b reproduced it with upstream's slash_popup_footer_wide snapshot: /m over /memories gave false evidence of /m. Codex opens these popups from the draft itself (a leading /, an @ or $ token), so such a draft now never yields prompt evidence. That is fail-closed: a real prompt starting with / is a safe miss. The unified mention hint row is also recognised. Evidence: - two new recorded 0.156+ cases (slash-popup Enter dispatches /status, file-popup Enter inserts README.md; neither submitted), with both 0.157.1 corpora re-recorded; - upstream's snapshot as a unit test; - removing the rule fails both. The fullscreen '? for shortcuts' row is now asserted too. Refs #63 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The popup rule required a character after @ or $, but the popup opens on the bare sigil, so a draft ending in '@' or '$' could still yield prompt evidence. Any token starting with the sigil now declines. Unit cases cover '@', 'look at @', '$', 'use $' and '/'; the old pattern fails the four sigil cases. Refs #63 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…iew c) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Owner
Author
|
Disposition for review c (head a425c84)
|
Owner
Author
|
Disposition (W1). Three reviews (codex a, codex b, pi c), then a verification pass by the same three at the final head
|
Juliusolsson05
changed the base branch from
main
to
integration/batch-2026-09-27-cxh-v
September 27, 2026 23:40
Juliusolsson05
merged commit Sep 27, 2026
135fa37
into
integration/batch-2026-09-27-cxh-v
6 checks passed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #63. Refs agent-code#234 (Codex 0.157.1 acceptance), #65, #66, #68.
The problem
prepareCodex01491PromptInputProfileissued a profile only for exactly 0.149.1. At 0.157.1, the version Agent Code runs, it returnedunsupported-cli.PromptInputEvidencethen produced nothing, and fresh-rollout ownership depended on the proxy identity path alone.Change
0.149.1,0.157.1), never a range. Unrecorded versions still getunsupported-cli. The export name keeps01491for API stability; the comment says why.codex-01571-recorded.json: the full corpus (16 cases, plus the 2 popup-Enter cases on 0.157.1), inline, comparable row for row with 0.149.1.codex-01571-fullscreen-recorded.json: the same corpus in fullscreen, 0.157's default and how Agent Code launches Codex.codex-01571-config-read-recorded.json: theconfig/readprojection. ItseffectiveInputProjectionis identical to 0.149.1's; the older fixture's extralayerShapeEvidencehas no 0.157.1 counterpart.codex-01571-config-source.json: the per-tag audit of the config precedence code. All nine claims re-verified atrust-v0.157.1coordinates.SubmittedPromptInput.recorded.test.tsnow runs the same contract once per corpus. Only provenance is per-version.What 0.157.1 changed, from the recordings
Provider semantics. Every issued-profile case agrees with 0.149.1. The only difference is outside the profile: a Vim-default composer now opens in Insert (
vim-normal-defaultsubmitsiabc), and the profile forces Vim off anyway.Four real surfaces the 0.149.1 composer classifier misread, each now pinned by a recorded frame:
enter continue · esc quit|back) has the idle-footer shape, so the dialog read as a composer drafting "1. Trust and continue". It is now a bottom-row structural modal check, byte-identical to fix(trust): detect the Codex 0.156+ Folder access dialog and send its keystrokes #67's.enter insert · esc close(skill_popup.rs). The old footer string no longer exists. Read as an idle composer, Enter (which inserts a completion) would have produced evidence for a prompt Codex never sent. It is nowcompletion-popup.? for shortcutsortab to queue message. Only those exact rows are accepted, and any otherfooter.rsvariant staysunknown, which declines./or an@/$token (what opens these popups upstream) never yields evidence. The unified-mention hint is also recognised.slash-popup-enter-selects-commandandfile-popup-enter-inserts-mention, show Codex submitted nothing.slash_popup_footer_widesnapshot (/mover/memories, reviewer b's reproduction) is a unit test.Recorder changes, all gated to 0.156+ and explained inline:
--no-daemon. Otherwise the isolatedCODEX_HOME's daemon socket exceeds SUN_LEN and Codex does not start (bug(screen): Codex 0.157 background-server startup and its "Cannot use the background server" screen are undetected #66).gpt-5.6-sol → gpt-6-sol).1, asserts the dialog is still up, then sends Enter. This live-verifies bug(trust): Codex 0.156 reworded the trust dialog to "Trust this folder?"; every trust detector misses it #65's keystrokes in an isolated home.thread_title.rs) are answered unheld and unrecorded.Verification
tsc --noEmitclean.<private-path>.Not verified / residuals
?from a single-chunk typed draft (about 1 in 5 runs), which is thesendPromptsingle-line path. When it happens the recorder fails loudly, and the committed corpus is from intact runs. The catalog says so. The drop itself is bug(input): Codex 0.157.1 intermittently drops a '?' from a single-line prompt written at once (sendPrompt path) #68.unknown./or mentioning$HOME/a@bgets no prompt evidence, and ownership falls back to the proxy path.Codex01491ComposerSurface.tswith a byte-identical trust-hint hunk, so either merge order resolves cleanly or trivially.Plan:
docs/plans/2026-09-27-prompt-input-profile-0157.md.🤖 Generated with Claude Code