Repository navigation
ci: move macOS validation to Xcode 27 - #107
Conversation
Preserve the macOS 14 deployment target and selected release toolchain, verify Intel execution through Rosetta, and retain the CodeQL Swift exception. Include the reproduced numeric reminder ID prefix fix while preserving valid index precedence and unmatched numeric errors. Co-authored-by: goutamadwant <workwithgoutam@gmail.com>
|
🦞👀 Pull request received. I will update this pull request when review starts. ClawSweeper review completeClawSweeper finished reviewing this revision. The review result is being finalized. |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex review: needs maintainer review before merge. What this changesThis PR moves macOS validation to Xcode 27 and lets out-of-range numeric reminder identifiers fall back to ID-prefix matching. Example: The current view has fewer than 4553 reminders and includes ID 45534C82-FE4E-4C30-ABE1-2243ED31ACC8.
Review scores
ProductKind: Maintenance · Worth it: Yes · Fix scope: Complete Merge readiness✅ Ready for maintainer review Keep open: this maintainer-authored PR contains a useful resolver repair and toolchain alignment absent from main; no actionable introduced defect was found. Priority: P2 Before mergeNone. FindingsNone. Tests
Agent review detailsHow this fits togetherGitHub workflows build and verify the universal macOS CLI; reminder commands pass user identifiers and accessible EventKit reminders through one shared resolver before displaying or changing targets. flowchart TD
A[GitHub workflows] --> B[Universal macOS CLI]
B --> C[Reminder commands]
D[Accessible EventKit reminders] --> E[Shared identifier resolver]
C --> E
E --> F[Display or reminder operation]
Technical reviewBest possible solution: Retain the shared resolver repair and local toolchain alignment while leaving signing and independent release verification with the existing shared workflow. Do we have a high-confidence way to reproduce the issue? Current-main source deterministically rejects 4553 before prefix matching when the numeric view is smaller than 4553, matching the concrete report; this review ran no target code. Is this the best way to solve the issue? The resolver change uses the existing matcher, preserves bounds-before-subtraction safety, valid-index precedence, ambiguity rejection, and deduplication, while the runner changes match the shared release contract. AGENTS.md: not found in the target repository. Codex review notes: model internal, reasoning medium; reviewed against e66180d4ba05. Provenance checked
TestingProof path: shipped entry point. SecurityNone. EvidenceWhat I checked:
Likely related people:
Root-cause clusterRelationship: Members:
Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything. LabelsLabel changes:
Label justifications:
Rank-up movesOptional improvements that raise the rating; they are not merge blockers.
Rating scale6/6 🦀 challenger crab · 5/6 🦞 diamond lobster · 4/6 🐚 platinum hermit · 3/6 🦐 gold shrimp · 2/6 🦪 silver shellfish · 1/6 🧂 unranked krab. Overall follows the weaker of proof and patch quality; ✨ marks media proof (a screenshot, video, or linked artifact) that directly shows the changed behavior. WorkflowClawSweeper edits this one comment on every review. Comment Reviewed October 19, 2026, 8:05 AM ET / 12:05 UTC. |
Move normal CI and repo-local release runner inputs from macos-26 to xcode-27. Keep Swift CodeQL on macos-26 with the documented tracing exception. Preserve the macOS 14 deployment target, remove the stale Xcode 26 discovery override, and verify the universal CLI natively and under Rosetta. The shared release workflow remains at @v1 and is maintained centrally.
Also consolidate the verified fix from #106 by @goutamadwant: an out-of-range numeric token such as
4553can identify its unique reminder ID prefix. In-range indexes still take precedence, and unmatched numeric inputs retain their existing error. Add the regression tests, command documentation and changelog credit.Validation: the new numeric-prefix test failed on fresh main with
invalidIdentifier("4553"); all 12 focused ID resolver tests pass with the fix. Strict Swift format/SwiftLint, shell/workflow lint, all four release-caller tests and the credential-free release harness pass. Independent review found no actionable P0–P2 findings. Full coverage and universal artifact checks run in PR CI; merged-main CI and the release dry run are required before completion. No real Reminders access, versions, tags or releases are involved.