Repository navigation
Conversation
delete 1 1 resolved the same reminder twice, deleted it, then failed the second lookup. Keep the first id so the prompt and the delete see one reminder. Signed-off-by: Sebastien Tardif <sebtardif@ncf.ca>
|
🦞👀 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: needs maintainer review before merge. Reviewed October 7, 2026, 6:49 AM ET / 10:49 UTC (Revision 14). ClawSweeper reviewWhat this changesThe PR resolves each reminder once while preserving input order, so repeated indexes or ID prefixes produce accurate delete previews and confirmation counts. Merge readiness✅ Ready for maintainer review This PR remains useful: main and v0.3.8 still resolve duplicate targets repeatedly. The focused patch and real macOS delete transcript support readiness, with no blocking findings or additional required action. Priority: P2 Review scores
Verification
How this fits togetherremindctl translates command-line indexes and ID prefixes into Apple Reminders targets. Delete and complete commands consume those targets through EventKit. flowchart TD
A[Indexes and ID prefixes] --> B[Fetch Apple reminders]
B --> C[Resolve reminder targets]
C --> D[Keep first occurrence of each reminder]
D --> E[Preview and confirmation]
D --> F[EventKit mutation]
F --> G[Command result]
Before mergeNone. Agent review detailsSecurityNone. Review metrics
Technical reviewBest possible solution: Keep one ordered target per reminder identity before previewing or mutating reminders. Do we have a high-confidence way to reproduce the issue? Yes: main resolves a repeated ID twice and deletion performs a committed removal for each occurrence. This review established the mechanism from source without executing target code. Is this the best way to solve the issue? Yes: deduplicating resolved identities aligns preview and mutation while preserving order, existing validation, and distinct targets. AGENTS.md: not found in the target repository. Codex review notes: model internal, reasoning medium; reviewed against cdd7a06b8527. LabelsLabel changes: No label changes. Label justifications:
EvidenceWhat I checked:
Likely related people:
Rating scale
Overall follows the weaker of proof and patch quality. Workflow
HistoryReview history (13 earlier review cycles; latest 8 shown)
|
What Problem This Solves
remindctl deletewith the same reminder id twice resolved that reminder twice. It removed the reminder, then failed the second lookup. The command now keeps the first id, so the confirmation count and the removal both see one reminder.Why This Change Was Made
Identifier resolution keeps the first occurrence of each reminder id, in input order.
Sources/RemindCore/IDResolver.swiftTests/RemindCoreTests/IDResolverTests.swiftUser Impact
Passing the same id twice asks to delete one reminder and removes that one reminder.
Evidence
Patched commit
5c1888016409351ddf1fa233fe9a158b727e181donfix/remindctl-f008, built on macOS with full Reminders access. One disposable reminder was created in the Reminders list, then deleted by passing its id twice.Real behavior proof
5c1888016409351ddf1fa233fe9a158b727e181d.