k-skill/.changeset/issue-207-daiso-pickup-eligibility.md
Jeffrey (Dongkyu) Kim d7263a54b9 Preserve Daiso pickup answers when Bearer auth degrades
Keep exact stock lookup on the official Bearer-token path while restoring the public selPkupStr fallback for repeated auth blocks.

Constraint: PR #250 review required Bearer auth to remain primary without removing the resilient pickup eligibility API.

Rejected: Throwing after the retry | it collapses callers back to a brittle single upstream-auth dependency.

Confidence: high

Scope-risk: narrow

Directive: Keep pickupStock quantity semantics separate from pickupEligibility yes/no fallback.

Tested: node --test packages/daiso-product-search/test/index.test.js; npm test --workspace daiso-product-search; npm run lint --workspace daiso-product-search; npm run ci; live lookupStoreProductAvailability smoke for 강남역2호점 / VT 리들샷 100.

Not-tested: Live forced 403 from Daiso upstream; covered with injected fetch regression tests.
2026-05-15 16:04:31 +09:00

550 B

daiso-product-search
minor

Restore Daiso store pickup stock quantities through the official non-login Bearer flow (/api/auth/request + AES-128-CBC token) while keeping the resilient selPkupStr fallback API. getStorePickupStock() now retries once with a fresh token on 401/403 and returns structured retrievalStatus: "blocked" after repeated auth blocks instead of throwing. getStorePickupEligibility() remains public, and lookupStoreProductAvailability() fills pickupEligibility when exact pickup stock remains unavailable.