feat: add optional frontend adapter recipes
This commit is contained in:
@@ -1003,6 +1003,31 @@ RP-12는 recipe별 merge commit이다. optional adapter 문제 시 해당 recipe
|
||||
revert하고 RP-11을 유지한다. 여러 vendor를 되돌릴 수 없는 한 commit에 묶지
|
||||
않는다.
|
||||
|
||||
**구현 증거 (2026-07-26)**
|
||||
|
||||
- VD-10에서 실제 project 요구가 선택되지 않았음을 기록하고 12개 capability를
|
||||
모두 `RECIPE_AVAILABLE`, production runtime dependency 0개로 유지했다.
|
||||
- machine-readable catalog에 recipe별 trigger/forbidden 조건, boundary,
|
||||
port/fake, failure matrix, lifecycle cleanup, project owner 요구,
|
||||
security/privacy, gzip budget, fallback, server-state 정책과 제거 순서를
|
||||
등록했다.
|
||||
- production-excluded `recipes/frontend-capabilities`에 12개 vendor-neutral
|
||||
TypeScript port와 deterministic fake, fail-closed unavailable adapter를
|
||||
제공한다. 프로젝트는 선택한 최소 계약만 application/presentation 경계로
|
||||
복사하고 concrete adapter를 composition에서 연결한다.
|
||||
- realtime ordering/unsubscribe, offline migration/close, worker cancel,
|
||||
multi-tab dedupe, permission result, workflow reset, large-data stale
|
||||
generation, analytics consent/redaction/queue와 나머지 facade contract를
|
||||
runnable test로 검증한다.
|
||||
- cleanup 누락, 승인되지 않은 dependency, vendor direct import, credential
|
||||
storage/URL/telemetry 경로, server-state store 복제와 production recipe import
|
||||
negative fixture를 blocking gate에 연결했다.
|
||||
- recipe와 recipe test를 통째로 제거한 임시 사본에서 base typecheck,
|
||||
architecture, 전체 test와 production build를 실행하며, opt-in하지 않은
|
||||
sentinel이 built `dist`에 없는지 검사한다.
|
||||
- 상세 도입/배치/검증/제거 절차는
|
||||
`docs/architecture/optional-adapter-recipes.md`에 기록했다.
|
||||
|
||||
## 11. Vendor decision gate
|
||||
|
||||
| ID | 시점 | 결정 | 기본값 또는 미결정 시 처리 | 차단 범위 |
|
||||
|
||||
Reference in New Issue
Block a user