Prefer chat names in agent session labels#2346
Conversation
|
Codex review: needs maintainer review before merge. Reviewed July 19, 2026, 5:20 PM ET / 21:20 UTC. Summary Reproducibility: not applicable. as a conventional bug reproduction: this PR proposes a presentation-semantic change, and the before/after CLI output in the PR body clearly demonstrates the affected paths. Review metrics: 1 noteworthy metric.
Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Risk before merge
Maintainer options:
Next step before merge
Maintainer decision needed
Security Review detailsBest possible solution: Adopt one explicit descriptive-label contract: use the chat title as the human-facing identity and append task or guardian context only as disambiguating detail, while retaining the existing Project-mode default. Do we have a high-confidence way to reproduce the issue? Not applicable as a conventional bug reproduction: this PR proposes a presentation-semantic change, and the before/after CLI output in the PR body clearly demonstrates the affected paths. Is this the best way to solve the issue? Unclear pending maintainer intent: the implementation is the narrowest way to make chat identity primary, but only maintainers can choose whether that compatibility tradeoff is the desired contract. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against f8636cb37eb0. Label changesLabel justifications:
Evidence reviewedWhat I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
|
ClawSweeper status: review started. I am starting a fresh review of this pull request: Prefer chat names in agent session labels This is item 1/1 in the current shard. Shard 0/1. This placeholder means the worker is alive and reading the current context. I will edit this same comment with the actual review when the claws are done clicking. Crustacean status: shell secured, claws on keyboard, evidence pebbles being sorted. |
11f5bc7 to
e63390f
Compare
Summary
Dependency audit · Approval reviewFollow-up to #2273.
Live behavior proof
The same local session metadata was scanned by the installed CodexBar 0.45.0 CLI and by the freshly built branch CLI. Output is reduced to
providerandsessionName, with private chat and task text replaced by numbered placeholders.Before, installed 0.45.0:
[ {"provider":"codex","sessionName":"[worker task 1 redacted]"}, {"provider":"codex","sessionName":"Approval review"}, {"provider":"codex","sessionName":"Approval review"}, {"provider":"codex","sessionName":"Approval review"} ]After, this branch:
[ {"provider":"codex","sessionName":"[chat name 1 redacted] · [worker task 1 redacted]"}, {"provider":"codex","sessionName":"[chat name 2 redacted] · Approval review"}, {"provider":"codex","sessionName":"[chat name 3 redacted] · Approval review"}, {"provider":"codex","sessionName":"[chat name 4 redacted] · Approval review"} ]This demonstrates both paths: subagent task names now retain their originating chat, and guardian labels no longer collapse unrelated chats into repeated
Approval reviewrows.Validation
swift build --scratch-path /private/tmp/codexbar-chat-origin-build --product CodexBarCLIwith the compatible macOS 15.4 SDKCodexBarCLI sessions --jsonagainst local session metadata produced the chat-first labels abovemake check: all portable and SwiftFormat checks passed; local SwiftLint could not loadsourcekitdInProc.frameworkswift test --filter CodexSessionRolloutTestscould not run locally because this Command Line Tools installation does not provide the SwiftTestingmodule; GitHub CI provides the execution gateCLICardsClaudeSwapTestswhen its temporary fake executable could not launch; the same arm64 job passed on the prior PR run, and GitHub requires repository admin rights to rerun it