feat: 기능 추가 과정중

This commit is contained in:
donghyeon-ka
2026-07-30 15:58:20 +09:00
parent d3ef801fe6
commit 6c52cdb916
648 changed files with 126325 additions and 6680 deletions
@@ -77,8 +77,8 @@ field/documentation 단계를 구성한다.
#### 테스트 TypeScript typecheck 기반
`check:types`는 app, Node scripts/config, tests project를 순서대로 검사한다.
테스트 project는 JS/JSX/TS/TSX callback, mock, fixture와 config type을
검사하되 실패를 의도한 `tests/fixtures`는 별도 negative command가 소유한다.
테스트 project는 TS/TSX callback, mock config type을 검사하되 실패를
의도한 `tests/fixtures`는 별도 TypeScript negative command가 소유한다.
Vitest의 변환 성공을 TypeScript typecheck의 대체물로 취급하지 않는다.
#### 실제 bootstrap integration
@@ -90,7 +90,7 @@ production Playwright profile은 source fixture가 아니라 `build` + `preview`
#### TanStack Query의 React integration test 기반
`tests/component/application-query.test.jsx`는 production query inbound
`tests/component/application-query.test.tsx`는 production query inbound
adapter의 query/mutation lifecycle을 검증한다. cancellation, initial terminal
failure, background stale-failure latch와 retry 복구, duplicate submit,
optimistic commit/rollback, conflict 해제와 namespace invalidation이 실제
@@ -127,10 +127,11 @@ Chromium, Firefox, WebKit과 compact project로 실행한다. 빠른 Vite 개발
#### 위험 기반 coverage
V8 text/JSON/LCOV를 생성하고 전체 기준과 retry/storage/telemetry/compatibility/
performance/promotion/chunk/diagnostics/registry compatibility 9개 high-risk
module에 40개 scoped threshold를 적용한다. critical module 누락 또는 threshold
미달 fixture는 merge gate를 실패시킨다.
V8 text/JSON/LCOV를 생성하고 전체 기준과 retry/storage/telemetry/application
composition/compatibility/performance/promotion/chunk/diagnostics/reference HTTP
operation/query-mutation/registry compatibility 12개 high-risk module에 52개
scoped threshold를 적용한다. critical module 누락 또는 threshold 미달 fixture는
merge gate를 실패시킨다.
남은 범위는 실제 device/browser farm, cloud visual approval, 외부 인증·telemetry
provider와 production field data다. 이 증거가 없을 때 저장소 내부 test를
@@ -447,7 +448,7 @@ contract/runtime/adapter contribution을 제거한 복제본에서 P0 gate와 bu
RP-06 form/page matrix는 `tests/component/form-foundation.test.tsx`,
`tests/component/page-templates.test.tsx`,
`tests/features/reference-feature/reference-page.test.tsx`
`tests/e2e/reference-form.spec.js`에 있다. client validation에서 command 0회와
`tests/e2e/reference-form.spec.ts`에 있다. client validation에서 command 0회와
첫 오류 focus, Zod transform/default, pending 중 중복 제출, 승인된 422
field/unknown field mapping, conflict 입력 보존, reset/dirty, navigation
confirmation/focus restore, URL/storage 비노출과 320px reflow를 검증한다.
@@ -555,14 +556,14 @@ client route guard는 UX이며 authorization이 아님을 test 이름과 문서
RP-07의 실행 경로는 `check:design-system`,
`check:design-system:fixture`, `check:types:fixture:icon-button`,
`tests/component/design-system-platform.test.tsx`
`tests/e2e/design-system-interactions.spec.js`다. Story interaction/visual
`tests/e2e/design-system-interactions.spec.ts`다. Story interaction/visual
baseline은 VD-08/RP-10에서 추가하며 현재 runtime gallery를 isolated workshop
완료 증거로 사용하지 않는다.
RP-08의 국제화 실행 경로는 `check:i18n`, `check:i18n:fixture`,
`check:types:fixture:i18n-key`, `check:types:fixture:i18n-params`,
`tests/unit/i18n-contract.test.ts`, `tests/component/locale-platform.test.tsx`
`tests/e2e/i18n.spec.js`다.
`tests/e2e/i18n.spec.ts`다.
- unit: locale catalog/placeholder parity, safe fallback/alias, pseudo expansion,
direction과 UTC date/number/relative/list/plural/select
@@ -639,6 +640,10 @@ open dialog, invalid form, expanded menu 같은 state story로 보완한다.
[MSW](https://mswjs.io/docs/)는 request client를 mock하지 않고 HTTP 경계에서
요청을 가로챈다. Node integration과 browser workshop이 동일한 operation contract
및 scenario vocabulary를 사용하도록 중앙 catalog를 만든다.
설치된 feature의 catalog와 handler 증적은
`config/testing/test-evidence.json`의 owner별 contribution으로 등록한다. 따라서
feature 제거 시 해당 contribution도 함께 제거할 수 있고 공통 evidence checker는
특정 sample 경로를 하드코딩하지 않는다.
### 11.1 목표 구조