Match task statuses case-insensitively and report unreachable uploads honestly #11

Merged
cheapnud merged 1 commit from b/task-status-casing into master 2026-08-17 11:46:45 +00:00
Owner
No description provided.
Match task statuses case-insensitively and report unreachable uploads honestly
All checks were successful
Claude PR Review / AI Code Review (pull_request) Successful in 15s
Build & Test / Build and Test (pull_request) Successful in 2m16s
54c1472e92

🤖 Claude AI Code Review

  1. Summary: Changes upload result to a record that distinguishes unreachable servers from rejections, and matches task statuses case-insensitively.

  2. Code Quality
    Clean refactor with good test coverage for the new failure-distinction and casing behavior.

  3. Issues

🟢 UploadTracker.cs — The status switch now uses ToUpperInvariant() but the other case labels (not shown fully in diff) should be verified to all be uppercase; a lowercase case label would become unreachable. Worth confirming all branches were updated.

🟢 PaperlessClient.cs — Distinguishing unreachable relies on ex.InnerException is SocketException. Some transient/DNS failures surface differently (e.g. TaskCanceledException on timeout, or nested exceptions), so those still fall into the "rejected" bucket. Not a bug in the tested paths, just narrower than the description implies.

  1. Verdict: APPROVE

Minor confirmations only; logic and tests are sound.


📊 Tokens: 4539 input + 365 output | 💰 Cost: ~$0.0318
Generated by Claude Opus 4.8 via Gitea Actions

## 🤖 Claude AI Code Review 1. **Summary**: Changes upload result to a record that distinguishes unreachable servers from rejections, and matches task statuses case-insensitively. 2. **Code Quality** ⭐⭐⭐⭐☆ Clean refactor with good test coverage for the new failure-distinction and casing behavior. 3. **Issues** 🟢 UploadTracker.cs — The status `switch` now uses `ToUpperInvariant()` but the other `case` labels (not shown fully in diff) should be verified to all be uppercase; a lowercase case label would become unreachable. Worth confirming all branches were updated. 🟢 PaperlessClient.cs — Distinguishing unreachable relies on `ex.InnerException is SocketException`. Some transient/DNS failures surface differently (e.g. `TaskCanceledException` on timeout, or nested exceptions), so those still fall into the "rejected" bucket. Not a bug in the tested paths, just narrower than the description implies. 4. **Verdict**: **APPROVE** Minor confirmations only; logic and tests are sound. --- 📊 **Tokens**: 4539 input + 365 output | 💰 **Cost**: ~$0.0318 *Generated by Claude Opus 4.8 via Gitea Actions*
cheapnud merged commit 4ff40e62a4 into master 2026-08-17 11:46:45 +00:00
cheapnud deleted branch b/task-status-casing 2026-08-17 11:46:45 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
cheapnud/CheapClerk!11
No description provided.