Repository navigation
fix(send): report AppleScript error numbers with an ASCII minus - #395
Conversation
|
🦞👀 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 Summary: ✅ CompletedThis 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: blocked before merge. What this changesThis PR formats negative AppleScript send-error numbers with an ASCII minus. Example: On an sv_SE Mac, send to nonexistent chat GUID iMessage;+;chat000000000000000000000.
Review scores
ProductKind: Bug fix · Worth it: Yes · Fix scope: Complete Merge readiness⛔ Blocked before merge - 1 item remains This PR fixes a concrete locale-dependent diagnostic defect still present on main, with no introduced correctness finding; CI and CodeQL await workflow approval. Priority: P2 Before merge
FindingsNone. Agent review detailsHow this fits togetherThe send CLI passes destination and message arguments to MessageSender's AppleScript; AppleScriptSendTransport converts its structured result into a delivery failure displayed to callers. flowchart LR
A[Send CLI] --> B[MessageSender]
B --> C[AppleScript and Messages]
C --> D[Structured delivery result]
D --> E[AppleScriptSendTransport]
E --> F[CLI error and retry guidance]
Technical reviewBest possible solution: Land the focused formatter fix after the existing CI and CodeQL workflows complete successfully. Do we have a high-confidence way to reproduce the issue? The main-source coercion path and contributor's pinned v0.21.0 sv_SE CLI transcript establish the defect; no target code was executed during this read-only review. Is this the best way to solve the issue? The shared formatter fixes both failure branches at the producer while preserving the existing result contract and transport-owned delivery decisions. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning medium; reviewed against 1bc0679663bf. Provenance checked
TestingProof path: shipped entry point. SecurityNone. EvidenceWhat I checked:
Likely related people:
Preflight sourceSource unknown. Source comparison at the observed PR snapshot only. Completion is self-reported; body, policy, tests, execution, and report bytes are not verified. LabelsLabel changes:
Label justifications:
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 HistoryReview history (1 earlier review cycle)
Reviewed November 11, 2026, 6:12 PM ET / 23:12 UTC (Revision 2). |
|
Added real behavior proof to the PR body: the shipped CLI on an @clawsweeper re-review |
|
🦞👀 Re-review progress:
|
AppleScript's number-to-text coercion follows the user's locale. Under sv_SE the sign becomes U+2212, so IMSG_RESULT carried "−1728" and the direct-participant tests failed on such hosts. Format the number explicitly so the delivery result is locale-independent. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
e72333b to
c200bf2
Compare
steipete
left a comment
There was a problem hiding this comment.
Reviewed code and fixture proof; exact-head CI is green.
AppleScript number-to-text conversion can use U+2212 for a negative sign under locales such as sv_SE. Format error numbers with an explicit ASCII minus while preserving delivery dispositions and retry safety.
Added a fixture that executes the production formatter for negative, zero, and positive numbers before entering the Messages block. The formatter is absent on main; all four cases pass with this change. No messages, account changes, or locale changes were made. Independent Codex review through P2: scoped-clean. Exact-head CI is required before merge.
Thanks @niXta1 for the fix and locale-specific diagnosis.