Repository navigation
refactor(aws): use common.ErrOutcomeUnknown and drop the internal sentinel - #335
Conversation
…tinel Pin pkg to 30bf383 in providers/aws, azure, gcp and ci_cd_sanity_tests, point ClassifyPurchaseError, the EC2 and Redshift clients and their tests at the exported sentinel, and delete purchasecfg.ErrOutcomeUnknown. One sentinel, no alias (#301). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
Warning Review limit reached
This review includes 10 billable files and costs up to $2.50.
Reviews can continue after your included limit without a manual trigger. An admin must approve usage-based billing. Or wait 33 minutes for your next included review. View limit details
Comment |
|
Gate review (independent, adversarial) of #335. Verdict: CLEAN, not merged yet (BEHIND main again; queue ruling: #334 merges first). Reviewed SHA b20c420; after one update-branch the head is 35978de (only d9ead42 from main added; PR's own files diff-empty vs b20c420).
|
|
Final gate: after #334 merged, update-branch to 9788bd7. Diff of the PR's files (go.mod/go.sum x4, purchasecfg, ec2, redshift) between 35978de and the new head is empty. Pin block: all four modules on pkg v0.0.0-20261009181525-30bf383795db. CI 15/15 pass, mergeState CLEAN. Review verdict CLEAN (earlier comment: mutation fails TestClassifyPurchaseError, local builds/tests/lint ok). Squash-merged with --match-head-commit under the go merge lock. |
Closes #301 (PR 2 of 2; PR 1 is #329).
What
pkgto 30bf383 (feat(common): export ErrOutcomeUnknown sentinel for lost-response purchases #329) in providers/aws, providers/azure, providers/gcp and ci_cd_sanity_tests (go.mod/go.sum only, tidied).ClassifyPurchaseError, the EC2 and Redshift clients (empty-response paths) and their tests usecommon.ErrOutcomeUnknown. Thepurchasecfg.ErrOutcomeUnknownvar is deleted: one sentinel, no alias. Error text is unchanged.Verification (unit tests with fake AWS errors, no live AWS)
GOWORK=off go build -mod=readonly ./...for all four modules; tests for purchasecfg, ec2, redshift pass; golangci-lint on those packages: 0 issues.TestClassifyPurchaseErrorassertserrors.Is(got, common.ErrOutcomeUnknown)true for 500, transport, 200-undeserializable and false for 4xx/throttle cases.ClassifyPurchaseErrormakesTestClassifyPurchaseErrorfail (run, then reverted).Consumer follow-ups (need pkg and aws pins bumped to this PR's merge)
errors.Is(err, common.ErrOutcomeUnknown)for the audit status.CLI has no users. Out of scope: pkg/exchange and other services (go#297).
🤖 Generated with Claude Code