V13-FE-006: consolidate approved UI and contract hardening
deploy / deploy (push) Successful in 1m52s
deploy / notify (push) Successful in 1s

This commit is contained in:
2026-08-13 02:41:00 +09:00
parent d79edae546
commit 3f293d8aa8
1278 changed files with 14384 additions and 1664 deletions
@@ -0,0 +1,25 @@
# V13-FE-034 — Idempotency retry contract
## Source / Assumption / Unknown / Decision Required
- Source: `frontend/src/shared/commands/idempotency.ts`, `frontend/src/shared/crud/useOptimisticCommand.ts`, and their characterization tests.
- Assumption: one `createRequest()` represents one user intent; every retry reuses that immutable request envelope.
- Unknown: each production command's server-side deduplication store, response replay contract, retention, and endpoint coverage.
- Decision Required: BE/QA approval of per-command idempotency persistence and duplicate-side-effect evidence.
## Existing contract verified
- UUID key is generated once per intent.
- `run()` sends the same `Idempotency-Key` on repeated execution.
- Optional `If-Match` is forwarded for optimistic concurrency.
- 409/412 sets the conflict state and pending state is cleared.
- Concurrent execution is rejected while a command is pending.
## Evidence
- `pnpm test -- src/shared/crud/tests/useOptimisticCommand.spec.ts`: 1 file / 2 tests passed in the FE regression run.
- Full FE regression: 49 files / 126 tests passed; typecheck passed.
## Outstanding
This proves the client boundary only. Server-side deduplication, replayed response equivalence, retention, and per-endpoint integration evidence remain outstanding. This Slice is `IN_PROGRESS`.