Fix 0.49.0 release validation gaps - #2819
Conversation
|
🦞👀 Pull request received. I will update this pull request when review starts. |
|
Codex review: found issues before merge. Reviewed August 9, 2026, 1:45 PM ET / 17:45 UTC. ClawSweeper reviewWhat this changesThe PR repairs StoreStress, release documentation and version metadata, and the Homebrew tap update wait used by the release workflow. Regression provenancePossible regression — probable (reviewed change; failure trace). No predecessor PR is attributed. Merge readinessKeep this owner-authored PR open: the prior release-closeout blocker remains, and the new portable automation fixture has a concrete PATH dependency gap. Priority: P2 Review scores
Verification
How this fits togetherCodexBar’s release workflow dispatches a Homebrew tap update after publishing a CLI release. The new helper polls that workflow and verifies the tap’s formula and cask before reporting success. flowchart LR
A[Release event] --> B[Release workflow]
B --> C[Homebrew tap dispatch]
C --> D[Wait helper]
D --> E[Workflow polling]
E --> F[Formula and cask proof]
F --> G[Release result]
Before merge
Findings
Agent review detailsSecurityNone. Review metrics
Merge-risk optionsMaintainer options:
Technical reviewBest possible solution: Date the 0.49.1 changelog section when the release is ready, make the fixture self-contained with respect to jq, and then validate the release-check path on the PR head. Do we have a high-confidence way to reproduce the issue? Yes—source establishes both paths: the documented release preflight rejects an Unreleased top section, and the fixture’s restricted PATH omits an unmocked required tool. Is this the best way to solve the issue? No—the proposed release-wait architecture may be sound, but the closeout metadata and portable fixture need the two targeted repairs before this is a complete solution. Full review comments:
Overall correctness: patch is incorrect AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against b20dc2374085. LabelsLabel justifications:
EvidenceWhat I checked:
Likely related people:
Rank-up movesOptional improvements that raise the rating; they are not merge blockers.
Rating scale
Overall follows the weaker of proof and patch quality. Workflow
HistoryReview history (1 earlier review cycle)
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: b4ed1eac74
ℹ️ About Codex in GitHub
Codex has been enabled to automatically 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 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
| local state_dir="$tmp_dir/state-${scenario}" | ||
| local output_file="$tmp_dir/${scenario}.log" | ||
| mkdir -p "$state_dir" | ||
| PATH="$mock_bin:/usr/bin:/bin" \ |
There was a problem hiding this comment.
Keep jq available for the tap wait fixture
On macOS when make check runs this new fixture, PATH is narrowed to $mock_bin:/usr/bin:/bin; the wait script immediately does command -v jq, but the fixture does not provide a jq mock and Homebrew-installed jq lives under /opt/homebrew/bin or /usr/local/bin, not these paths. That makes the newly added portable check fail with Missing required tool: jq before any scenarios run; either keep the caller PATH or stub jq in the fixture.
Useful? React with 👍 / 👎.
Summary
Why
0.49.0 published successfully, but release validation found three follow-up defects: the standalone stress harness no longer compiled, the release notes/checklist were stale, and the Release CLI workflow reported failure after all assets and the Homebrew update succeeded because
gh run watchhit the shared GitHub API limit.The Settings foreground regression found during live validation was fixed separately in #2818.
Proof
make checkmake test— 832 selections across 70 groupsScripts/test_wait_for_homebrew_tap_update.sh