CodeForPhilly / CodeForPhilly/codeforphilly-ng
idempotency: wire Idempotency-Key plugin into mutating endpoints
- 主要言語
- TypeScript
- スター
- 1
- フォーク
- 1
- 平均マージ
- 5日 3時間
- マージ済み PR(30日)
- 9
説明
The idempotency plugin (`apps/api/src/plugins/idempotency.ts`) is implemented and registered, but **no route handler calls it** — mutating endpoints don't honor the `Idempotency-Key` header yet.
`specs/api/conventions.md#idempotency` documents the target contract and now carries a status note marking it not-yet-wired (surfaced by the spec-drift audit).
**Do:** wire idempotency into the at-risk mutating endpoints — start with `POST /api/projects/:slug/updates` (the double-tap case the spec cites) — plus per-route tests. Then remove the status caveat from conventions.md.
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
Read apps/api/src/plugins/idempotency.ts and the idempotency section of specs/api/conventions.md first, then locate the handler for POST /api/projects/:slug/updates. Run or add the per-route tests for the double-tap case, wire the plugin into the at-risk mutating endpoints, and remove the not-yet-wired status caveat once the contract is covered.
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- typescript
- 領域
- api, backend
- issue の種類
- 機能追加
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 静か
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 68/100