@@ -151,7 +151,7 @@ passing
151151
152152### Notes
153153
154- - 정책 결정: D007 (maker approval adapter-local, full-fill, non-custodial,
154+ - 정책 결정: D008 (maker approval adapter-local, full-fill, non-custodial,
155155 nonce-scoped idempotent cancel).
156156- Non-goals: partial fill, dealer inventory, signer key custody, shared dealer
157157 registry.
@@ -192,13 +192,28 @@ passing
192192 SwapFlow, Engine)는 shared setup helper로 9-element attestation을 추가해 유지.
193193- ` forge fmt ` .
194194
195+ ## DOC-002 — RFQ SDK and MVP Demo Planning
196+
197+ ### Behavior
198+
199+ - RFQ backend 운영을 Corner Store가 제공하지 않는다는 제품 경계를 명확히 한다.
200+ - RFQ backend SDK, local reference example, MVP demo backend를 서로 다른 레이어로 분리한다.
201+ - 구현 순서는 SDK interface 정리 → local reference example → MVP demo backend로 기록한다.
202+ - production RFQ hardening(dealer approval, custody, cancellation, partial fill)은 별도 트랙으로 유지한다.
203+ - roadmap과 product spec index에서 RFQ SDK/MVP backend 후속 작업을 찾을 수 있다.
204+
205+ ### Verification
206+
207+ - RFQ venue architecture, product-spec index, roadmap, FEATURES, PROGRESS 교차 검토
208+ - ` git diff --check `
209+
195210### State
196211
197212passing
198213
199214### Notes
200215
201- - 정책 결정: D008 (9-element in-place 확장, operator-gated setter, Lockup은
216+ - 정책 결정: D009 (9-element in-place 확장, operator-gated setter, Lockup은
202217 fixture-only mock acquisition source).
203218- Deferred follow-up: ungated legacy mock element(A-01/A-03/QP)의 operator-gate
204219 정렬, production data source 연결, acquisition/lot data source와 holding-period
@@ -287,17 +302,35 @@ passing
287302- 기존 registry lifecycle state-machine unit test(Task 1, 25 tests)는 유지.
288303- ` forge fmt ` .
289304
305+ - Product spec: ` docs/product-specs/rfq-backend-sdk-and-demo.md `
306+ - 이 feature는 문서 계획 작업이며 ` services/rfq ` 구현은 후속 feature에서 진행한다.
307+
308+ ## RFQ-SDK-001 — RFQ Backend SDK Interfaces
309+
310+ ### Behavior
311+
312+ - ` services/rfq ` 가 RFQ backend를 만들기 위한 TypeScript SDK helper를 제공한다.
313+ - integrator는 ` createRFQService(...).quote(...) ` high-level API로 taker/token/amount/venue만 넣고 ` RFQAdapter ` 호환 signed quote를 받을 수 있다.
314+ - SDK는 EIP-712 typed-data shape, chainId/verifyingContract binding, nonce, expiry, amount validation과 signature flow를 처리한다.
315+ - signer, nonce store, pricing provider, inventory/risk check는 교체 가능한 interface로 제공한다.
316+ - local reference component는 ` InMemoryNonceStore ` , ` FixedRatePricingProvider ` , ` NoopInventoryRiskCheck ` 로 제한한다.
317+ - production server, hosted backend, pricing strategy, signer custody, inventory management와 compliance final decision은 범위 밖이다.
318+
319+ ### Verification
320+
321+ - ` cd services/rfq && npm test `
322+ - ` scripts/check.sh `
323+ - ` git diff --check `
324+
290325### State
291326
292327passing
293328
294329### Notes
295330
296- - 정책 결정: D009(lifecycle state machine, enum-append, setStatus 제거, engine
297- positive-allowlist default-deny, clearUnregulated correction path, declaredBy=
298- msg.sender와 factory consequence).
299- - Non-goals: direction-aware element application, production onboarding governance
300- key management.
331+ - SDK README: ` services/rfq/README.md `
332+ - Product spec: ` docs/product-specs/rfq-backend-sdk-and-demo.md `
333+ - MVP demo backend는 이 SDK를 기반으로 후속 feature에서 구현한다.
301334
302335## CLI-001 — corner-store Reference CLI
303336
0 commit comments