agentic-dev 0.2.4 → 0.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/.agent/prd.json +1 -1
  2. package/.agent/prompt.md +1 -1
  3. package/.claude/agents/db-dev.md +1 -1
  4. package/.claude/agents/frontend-dev.md +1 -1
  5. package/.claude/agents/test-dev.md +1 -1
  6. package/.claude/skills/sdd/SKILL.md +15 -10
  7. package/.claude/skills/sdd/references/section-map.md +5 -5
  8. package/.codex/skills/sdd/SKILL.md +15 -10
  9. package/.codex/skills/sdd/references/section-map.md +5 -5
  10. package/AGENTS.md +12 -4
  11. package/README.md +45 -12
  12. package/SDD_SKILL.md +7 -7
  13. package/bin/agentic-dev.mjs +53 -18
  14. package/client/admin/scripts/ui-parity-admin-adapter.mjs +1 -1
  15. package/client/landing/scripts/ui-parity-landing-adapter.mjs +1 -1
  16. package/client/mobile/scripts/ui-parity-mobile-adapter.mjs +1 -1
  17. package/client/web/scripts/ui-parity-web-adapter.mjs +1 -1
  18. package/lib/scaffold.mjs +254 -279
  19. package/package.json +2 -2
  20. package/sdd/02_plan/03_architecture/repository_governance.md +1 -1
  21. package/sdd/02_plan/03_architecture/runtime_and_structure_governance.md +1 -1
  22. package/sdd/02_plan/03_architecture/toolchain_governance.md +2 -2
  23. package/sdd/02_plan/06_iac/dev_runtime_delivery.md +1 -1
  24. package/sdd/02_plan/10_test/regression_verification.md +2 -2
  25. package/sdd/02_plan/10_test/templates/ui_parity_web_contract.template.yaml +1 -1
  26. package/sdd/02_plan/10_test/verification_strategy.md +2 -2
  27. package/sdd/03_build/03_architecture/toolchain_governance.md +1 -1
  28. package/sdd/{04_verify → 03_verify}/01_feature/service_verification.md +1 -1
  29. package/sdd/{04_verify → 03_verify}/02_screen/README.md +1 -1
  30. package/sdd/{04_verify → 03_verify}/03_architecture/toolchain_governance.md +2 -2
  31. package/sdd/{04_verify → 03_verify}/06_iac/dev_runtime_delivery.md +1 -1
  32. package/sdd/{04_verify → 03_verify}/06_iac/template_runtime_delivery.md +1 -1
  33. package/sdd/{04_verify → 03_verify}/README.md +3 -3
  34. package/sdd/99_toolchain/01_automation/README.md +2 -2
  35. package/sdd/99_toolchain/01_automation/agentic-dev/assets/repo-contract.template.json +5 -5
  36. package/sdd/99_toolchain/01_automation/agentic-dev/bootstrap_frontend_parity.sh +1 -1
  37. package/sdd/99_toolchain/01_automation/agentic-dev/repo-contract.json +6 -6
  38. package/sdd/99_toolchain/01_automation/agentic-parity-harness-design.md +4 -4
  39. package/sdd/99_toolchain/01_automation/parity-execution-tooling-design.md +3 -3
  40. package/sdd/99_toolchain/01_automation/ui-parity/README.md +1 -1
  41. package/sdd/99_toolchain/01_automation/ui-parity/cli/materialize-reference-assets.mjs +1 -1
  42. package/sdd/99_toolchain/01_automation/ui-parity/cli/scaffold-contract.mjs +2 -2
  43. package/sdd/99_toolchain/01_automation/ui-parity/core/proof-runner.mjs +1 -1
  44. package/sdd/99_toolchain/01_automation/ui-parity/interfaces/ui-parity-artifact-layout.md +1 -1
  45. package/sdd/99_toolchain/02_policies/build-ast-governance-policy.md +2 -2
  46. package/sdd/99_toolchain/02_policies/compose-runtime-baseline-policy.md +2 -2
  47. package/sdd/99_toolchain/02_policies/regression-verification-policy.md +1 -1
  48. package/sdd/99_toolchain/README.md +1 -1
  49. package/sdd/README.md +1 -1
  50. /package/sdd/{04_verify → 03_verify}/01_feature/README.md +0 -0
  51. /package/sdd/{04_verify → 03_verify}/01_feature/domain_verification.md +0 -0
  52. /package/sdd/{04_verify → 03_verify}/02_screen/_screen_verify_template.md +0 -0
  53. /package/sdd/{04_verify → 03_verify}/02_screen/admin/README.md +0 -0
  54. /package/sdd/{04_verify → 03_verify}/02_screen/landing/README.md +0 -0
  55. /package/sdd/{04_verify → 03_verify}/02_screen/mobile/README.md +0 -0
  56. /package/sdd/{04_verify → 03_verify}/02_screen/web/README.md +0 -0
  57. /package/sdd/{04_verify → 03_verify}/03_architecture/README.md +0 -0
  58. /package/sdd/{04_verify → 03_verify}/03_architecture/architecture_document_governance.md +0 -0
  59. /package/sdd/{04_verify → 03_verify}/03_architecture/build_ast_runtime_tree_governance.md +0 -0
  60. /package/sdd/{04_verify → 03_verify}/03_architecture/repository_governance.md +0 -0
  61. /package/sdd/{04_verify → 03_verify}/06_iac/README.md +0 -0
  62. /package/sdd/{04_verify → 03_verify}/07_integration/README.md +0 -0
  63. /package/sdd/{04_verify → 03_verify}/07_integration/frontend_live_integration.md +0 -0
  64. /package/sdd/{04_verify → 03_verify}/08_nonfunctional/README.md +0 -0
  65. /package/sdd/{04_verify → 03_verify}/08_nonfunctional/repository_hygiene.md +0 -0
  66. /package/sdd/{04_verify → 03_verify}/10_test/README.md +0 -0
  67. /package/sdd/{04_verify → 03_verify}/10_test/regression_verification.md +0 -0
  68. /package/sdd/{04_verify → 03_verify}/10_test/ui_parity/README.md +0 -0
  69. /package/sdd/{04_verify → 03_verify}/10_test/ui_parity/loop_runs/.gitkeep +0 -0
  70. /package/sdd/{04_verify → 03_verify}/10_test/ui_parity/reference/.gitkeep +0 -0
  71. /package/sdd/{04_verify → 03_verify}/10_test/ui_parity/staged_runs/.gitkeep +0 -0
  72. /package/sdd/{04_verify → 03_verify}/10_test/verification_harness.md +0 -0
@@ -9,7 +9,7 @@ spec:
9
9
  screens:
10
10
  - id: TMP_001
11
11
  route: /
12
- reference_image: sdd/04_verify/10_test/ui_parity/reference/TMP_001.png
12
+ reference_image: sdd/03_verify/10_test/ui_parity/reference/TMP_001.png
13
13
  max_diff_ratio: 0
14
14
  allow_resize: false
15
15
  pixelmatch_threshold: 0.1
@@ -38,6 +38,6 @@
38
38
  ## Validation
39
39
 
40
40
  - current references:
41
- - `sdd/04_verify/README.md`
42
- - `sdd/04_verify/10_test/verification_harness.md`
41
+ - `sdd/03_verify/README.md`
42
+ - `sdd/03_verify/10_test/verification_harness.md`
43
43
  - `sdd/02_plan/10_test/regression_verification.md`
@@ -10,7 +10,7 @@
10
10
  - Playwright exactness runner/manifest를 local screen exactness의 canonical toolchain entrypoint로 추가했다.
11
11
  - `AGENTS.md`, `.codex/skills/sdd/SKILL.md`, `sdd/99_toolchain/01_automation/README.md`가 같은 회귀 검수 기준을 공유한다.
12
12
  - reusable asset planning root를 `sdd/01_planning/02_screen/assets/`로 정리하고, local Codex/Claude `sdd` skill에 같은 path를 반영했다.
13
- - `sdd/02_plan/10_test`, `sdd/03_build/10_test`, `sdd/04_verify/10_test`에 regression verification current-state 문서를 추가했다.
13
+ - `sdd/02_plan/10_test`, `sdd/03_build/10_test`, `sdd/03_verify/10_test`에 regression verification current-state 문서를 추가했다.
14
14
  - `.claude/skills/sdd-dev/SKILL.md`의 stale Codex canonical path를 현재 `.codex/skills/sdd/` 구조로 교체했다.
15
15
  - `.codex/skills/sdd/SKILL.md`와 `.claude/skills/sdd-dev/SKILL.md`에서 DEV/PROD rollout gate를 explicit deployment scope 조건으로 제한했다.
16
16
  - 디자인 가이드 builder 안내는 고정 file path 대신 `sdd/99_toolchain/01_automation/README.md`와 실제 존재하는 builder inventory 기준으로 정리했다.
@@ -15,7 +15,7 @@
15
15
 
16
16
  - service별 frontend build가 current baseline 검증 surface다.
17
17
  - typed API contract와 backend domain contract 정합성은 domain verification을 상속한다.
18
- - screen surface 상세는 `04_verify/02_screen/` 기준으로 읽는다.
18
+ - screen surface 상세는 `03_verify/02_screen/` 기준으로 읽는다.
19
19
 
20
20
  ## Residual Risk
21
21
 
@@ -1,6 +1,6 @@
1
1
  # Screen Verification
2
2
 
3
3
  - 이 폴더는 screen별 현재 retained verification 상태를 유지한다.
4
- - service split을 따라 `04_verify/02_screen/<service>/` 아래에 둔다.
4
+ - service split을 따라 `03_verify/02_screen/<service>/` 아래에 둔다.
5
5
  - dated gate/test log를 쌓지 않고, current retained checks와 residual risk만 남긴다.
6
6
  - 새 verify section을 추가할 때는 `_screen_verify_template.md`를 기준으로 runtime tree, Playwright suite id, canonical runner command, artifact path를 함께 남긴다.
@@ -36,12 +36,12 @@
36
36
  - `rg -n "brand_assets|brand asset|Brand Asset|브랜드 자산|브랜드 에셋|build_mobile_brand_assets|mobile_brand_asset_manifest|BRAND_ASSET_RECIPES" sdd/01_planning/02_screen sdd/02_plan/03_architecture sdd/03_build/03_architecture sdd/99_toolchain .codex/skills/sdd .claude/skills/sdd`
37
37
  - pass
38
38
  - template repo planning/toolchain/local skill에서 legacy brand asset naming이 제거됐다
39
- - `git diff --check -- SDD_SKILL.md sdd/02_plan/03_architecture/toolchain_governance.md sdd/03_build/03_architecture/toolchain_governance.md sdd/04_verify/03_architecture/toolchain_governance.md .codex/skills/sdd/SKILL.md .claude/skills/sdd-dev/SKILL.md`
39
+ - `git diff --check -- SDD_SKILL.md sdd/02_plan/03_architecture/toolchain_governance.md sdd/03_build/03_architecture/toolchain_governance.md sdd/03_verify/03_architecture/toolchain_governance.md .codex/skills/sdd/SKILL.md .claude/skills/sdd-dev/SKILL.md`
40
40
  - pass
41
41
  - `sdd/99_toolchain/02_policies/regression-verification-policy.md`가 회귀 검수 규칙의 정본으로 추가됐다.
42
42
  - `AGENTS.md`, `.codex/skills/sdd/SKILL.md`, `sdd/99_toolchain/01_automation/README.md`가 direct-only verification 금지와 selected regression surface 기록 규칙을 함께 설명한다.
43
43
  - `sdd/01_planning/02_screen/assets/README.md`, `.codex/skills/sdd/SKILL.md`, `.claude/skills/sdd/SKILL.md`, `sdd/99_toolchain/01_automation/README.md`가 reusable asset planning root를 `assets/`로 일치시킨다.
44
- - `sdd/02_plan/10_test/regression_verification.md`, `sdd/03_build/10_test/regression_verification.md`, `sdd/04_verify/10_test/regression_verification.md`가 current-state trail을 이룬다.
44
+ - `sdd/02_plan/10_test/regression_verification.md`, `sdd/03_build/10_test/regression_verification.md`, `sdd/03_verify/10_test/regression_verification.md`가 current-state trail을 이룬다.
45
45
  - `.claude/skills/sdd-dev/SKILL.md`가 현재 Codex canonical path와 section map path를 직접 가리킨다.
46
46
  - `.codex/skills/sdd/SKILL.md`는 rollout scope를 `sdd/05_operate` 존재 여부가 아니라 explicit deployment scope 또는 completion policy로 해석한다.
47
47
  - `.codex/skills/sdd/SKILL.md`, `sdd/99_toolchain/01_automation/README.md`, `sdd/99_toolchain/02_policies/regression-verification-policy.md`가 Playwright exactness wrapper/manifest를 canonical local gate로 함께 설명한다.
@@ -7,4 +7,4 @@
7
7
  ## Retained Checks
8
8
 
9
9
  - current delivery baseline은 frontend build, backend test, screen capture/PDF generation 조합으로 유지된다.
10
- - proof/output path는 current `sdd/04_verify/10_test/ui_parity/` 구조를 따른다.
10
+ - proof/output path는 current `sdd/03_verify/10_test/ui_parity/` 구조를 따른다.
@@ -34,7 +34,7 @@
34
34
  - pass
35
35
  - `terraform -chdir=infra/terraform/openstack/server init -backend=false && terraform -chdir=infra/terraform/openstack/server validate`
36
36
  - pass
37
- - `git diff --check -- README.md infra/compose/README.md sdd/02_plan/06_iac/template_runtime_delivery.md sdd/03_build/06_iac/template_runtime_delivery.md sdd/04_verify/06_iac/template_runtime_delivery.md sdd/99_toolchain/README.md sdd/99_toolchain/02_policies/compose-runtime-baseline-policy.md sdd/99_toolchain/02_policies/convention-storage-policy.md`
37
+ - `git diff --check -- README.md infra/compose/README.md sdd/02_plan/06_iac/template_runtime_delivery.md sdd/03_build/06_iac/template_runtime_delivery.md sdd/03_verify/06_iac/template_runtime_delivery.md sdd/99_toolchain/README.md sdd/99_toolchain/02_policies/compose-runtime-baseline-policy.md sdd/99_toolchain/02_policies/convention-storage-policy.md`
38
38
  - pass
39
39
 
40
40
  ## Residual Risk
@@ -2,14 +2,14 @@
2
2
 
3
3
  ## Purpose
4
4
 
5
- - `sdd/04_verify/`는 현재 구현 상태에 대한 retained verification을 durable 문서로 유지하는 루트다.
5
+ - `sdd/03_verify/`는 현재 구현 상태에 대한 retained verification을 durable 문서로 유지하는 루트다.
6
6
  - 날짜별 gate/test log를 쌓지 않고, 현재 기준의 pass/fail 상태와 residual risk만 남긴다.
7
7
 
8
8
  ## Canonical Rule
9
9
 
10
- - `04_verify`는 `02_plan`, `03_build`와 같은 section 축을 따른다.
10
+ - `03_verify`는 `02_plan`, `03_build`와 같은 section 축을 따른다.
11
11
  - feature, screen, architecture, IAC, test surface별 verification summary를 같은 파일에서 갱신한다.
12
- - history성 gate/test 로그는 `04_verify`에 두지 않는다.
12
+ - history성 gate/test 로그는 `03_verify`에 두지 않는다.
13
13
 
14
14
  ## Sections
15
15
 
@@ -44,7 +44,7 @@
44
44
  - parity harness나 build check는 회귀 검수의 일부일 뿐이고, 실제 완료 기준은 선택한 regression surface 전체에 대한 retained evidence다.
45
45
  - Playwright exactness suite가 있는 surface는 `run_playwright_exactness.py`를 canonical local gate로 사용한다.
46
46
  - shared route, shell, auth/session, shared component, API/data contract, generated asset, builder output 변경은 adjacent consumer까지 검수 범위를 넓힌다.
47
- - 아직 자동화가 없는 회귀 surface는 command/manual verification으로 메우고, automation gap은 `sdd/03_build`, `sdd/04_verify`에 residual risk로 남긴다.
47
+ - 아직 자동화가 없는 회귀 surface는 command/manual verification으로 메우고, automation gap은 `sdd/03_build`, `sdd/03_verify`에 residual risk로 남긴다.
48
48
  - Browser Use나 수동 시각 점검은 Playwright exactness gate를 대체하지 않고 보강/진단 용도로만 사용한다.
49
49
 
50
50
  ## Asset Recipe Rule
@@ -72,5 +72,5 @@
72
72
  - design guide / asset / screen spec baseline 확인
73
73
  - `python3 sdd/99_toolchain/01_automation/run_playwright_exactness.py --suite <suite-id> --base-url <url>`
74
74
  - 필요하면 `--api-base-url`, `--browser`, `--grep`를 추가한다.
75
- - 실행 결과와 artifact path를 `sdd/04_verify` current summary에 기록한다.
75
+ - 실행 결과와 artifact path를 `sdd/03_verify` current summary에 기록한다.
76
76
  - 시작점 예시는 [`../03_templates/playwright_exactness_manifest.example.py`](../03_templates/playwright_exactness_manifest.example.py)를 따른다.
@@ -20,7 +20,7 @@
20
20
  "parity_contract_path": "sdd/02_plan/10_test/templates/ui_parity_web_contract.yaml",
21
21
  "route_gap_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_web_route_gap_report.json",
22
22
  "route_gap_markdown_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_web_route_gap_report.md",
23
- "proof_output": "sdd/04_verify/10_test/ui_parity/templates_web_agentic_dev_latest.json"
23
+ "proof_output": "sdd/03_verify/10_test/ui_parity/templates_web_agentic_dev_latest.json"
24
24
  },
25
25
  "mobile": {
26
26
  "dir": "client/mobile",
@@ -31,7 +31,7 @@
31
31
  "parity_contract_path": "sdd/02_plan/10_test/templates/ui_parity_mobile_contract.yaml",
32
32
  "route_gap_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_mobile_route_gap_report.json",
33
33
  "route_gap_markdown_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_mobile_route_gap_report.md",
34
- "proof_output": "sdd/04_verify/10_test/ui_parity/templates_mobile_agentic_dev_latest.json"
34
+ "proof_output": "sdd/03_verify/10_test/ui_parity/templates_mobile_agentic_dev_latest.json"
35
35
  },
36
36
  "admin": {
37
37
  "dir": "client/admin",
@@ -42,7 +42,7 @@
42
42
  "parity_contract_path": "sdd/02_plan/10_test/templates/ui_parity_admin_contract.yaml",
43
43
  "route_gap_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_admin_route_gap_report.json",
44
44
  "route_gap_markdown_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_admin_route_gap_report.md",
45
- "proof_output": "sdd/04_verify/10_test/ui_parity/templates_admin_agentic_dev_latest.json"
45
+ "proof_output": "sdd/03_verify/10_test/ui_parity/templates_admin_agentic_dev_latest.json"
46
46
  },
47
47
  "landing": {
48
48
  "dir": "client/landing",
@@ -53,7 +53,7 @@
53
53
  "parity_contract_path": "sdd/02_plan/10_test/templates/ui_parity_landing_contract.yaml",
54
54
  "route_gap_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_landing_route_gap_report.json",
55
55
  "route_gap_markdown_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_landing_route_gap_report.md",
56
- "proof_output": "sdd/04_verify/10_test/ui_parity/templates_landing_agentic_dev_latest.json"
56
+ "proof_output": "sdd/03_verify/10_test/ui_parity/templates_landing_agentic_dev_latest.json"
57
57
  }
58
58
  }
59
59
  },
@@ -66,7 +66,7 @@
66
66
  },
67
67
  "artifacts": {
68
68
  "route_gap_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_web_route_gap_report.json",
69
- "proof_output": "sdd/04_verify/10_test/ui_parity/replace_agentic_dev_latest.json"
69
+ "proof_output": "sdd/03_verify/10_test/ui_parity/replace_agentic_dev_latest.json"
70
70
  },
71
71
  "notes": [
72
72
  "Replace the commands and proof output path after cloning the template.",
@@ -47,7 +47,7 @@ PY
47
47
  target_name="$(read_target_value "name")"
48
48
  target_dir="$(read_target_value "target.dir")"
49
49
  preview_url="$(read_target_value "target.preview_url")"
50
- preview_log="${repo_root}/sdd/04_verify/10_test/ui_parity/${target_name}-preview.log"
50
+ preview_log="${repo_root}/sdd/03_verify/10_test/ui_parity/${target_name}-preview.log"
51
51
  preview_pid=""
52
52
 
53
53
  cleanup() {
@@ -20,7 +20,7 @@
20
20
  "parity_contract_path": "sdd/02_plan/10_test/templates/ui_parity_web_contract.yaml",
21
21
  "route_gap_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_web_route_gap_report.json",
22
22
  "route_gap_markdown_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_web_route_gap_report.md",
23
- "proof_output": "sdd/04_verify/10_test/ui_parity/templates_web_agentic_dev_latest.json"
23
+ "proof_output": "sdd/03_verify/10_test/ui_parity/templates_web_agentic_dev_latest.json"
24
24
  },
25
25
  "mobile": {
26
26
  "dir": "client/mobile",
@@ -31,7 +31,7 @@
31
31
  "parity_contract_path": "sdd/02_plan/10_test/templates/ui_parity_mobile_contract.yaml",
32
32
  "route_gap_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_mobile_route_gap_report.json",
33
33
  "route_gap_markdown_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_mobile_route_gap_report.md",
34
- "proof_output": "sdd/04_verify/10_test/ui_parity/templates_mobile_agentic_dev_latest.json"
34
+ "proof_output": "sdd/03_verify/10_test/ui_parity/templates_mobile_agentic_dev_latest.json"
35
35
  },
36
36
  "admin": {
37
37
  "dir": "client/admin",
@@ -42,7 +42,7 @@
42
42
  "parity_contract_path": "sdd/02_plan/10_test/templates/ui_parity_admin_contract.yaml",
43
43
  "route_gap_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_admin_route_gap_report.json",
44
44
  "route_gap_markdown_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_admin_route_gap_report.md",
45
- "proof_output": "sdd/04_verify/10_test/ui_parity/templates_admin_agentic_dev_latest.json"
45
+ "proof_output": "sdd/03_verify/10_test/ui_parity/templates_admin_agentic_dev_latest.json"
46
46
  },
47
47
  "landing": {
48
48
  "dir": "client/landing",
@@ -53,7 +53,7 @@
53
53
  "parity_contract_path": "sdd/02_plan/10_test/templates/ui_parity_landing_contract.yaml",
54
54
  "route_gap_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_landing_route_gap_report.json",
55
55
  "route_gap_markdown_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_landing_route_gap_report.md",
56
- "proof_output": "sdd/04_verify/10_test/ui_parity/templates_landing_agentic_dev_latest.json"
56
+ "proof_output": "sdd/03_verify/10_test/ui_parity/templates_landing_agentic_dev_latest.json"
57
57
  }
58
58
  }
59
59
  },
@@ -62,11 +62,11 @@
62
62
  "build": "bash sdd/99_toolchain/01_automation/agentic-dev/run_frontend_target.sh build .",
63
63
  "proof": "bash sdd/99_toolchain/01_automation/agentic-dev/run_frontend_target.sh proof .",
64
64
  "deploy_dev": "echo 'configure deploy_dev command in sdd/99_toolchain/01_automation/agentic-dev/repo-contract.json for the cloned service' >&2",
65
- "verify_dev": "test -f \"$PWD/sdd/04_verify/10_test/ui_parity/templates_web_agentic_dev_latest.json\" && echo verify-dev-placeholder-ok"
65
+ "verify_dev": "test -f \"$PWD/sdd/03_verify/10_test/ui_parity/templates_web_agentic_dev_latest.json\" && echo verify-dev-placeholder-ok"
66
66
  },
67
67
  "artifacts": {
68
68
  "route_gap_output": "sdd/02_plan/99_generated/from_planning/ui_parity/ui_parity_web_route_gap_report.json",
69
- "proof_output": "sdd/04_verify/10_test/ui_parity/templates_web_agentic_dev_latest.json"
69
+ "proof_output": "sdd/03_verify/10_test/ui_parity/templates_web_agentic_dev_latest.json"
70
70
  },
71
71
  "notes": [
72
72
  "This template contract is intentionally self-contained and points at repo-local 99_toolchain automation.",
@@ -46,7 +46,7 @@
46
46
  - deterministic proof:
47
47
  - `proof`는 strict parity 또는 동등한 결정적 UI 증거를 남겨야 한다.
48
48
  - evidence-first:
49
- - 성공/실패는 콘솔 로그가 아니라 `sdd/04_verify/...` 산출물로 판단한다.
49
+ - 성공/실패는 콘솔 로그가 아니라 `sdd/03_verify/...` 산출물로 판단한다.
50
50
  - deploy discipline:
51
51
  - DEV 반영이 필요한 작업은 `main push -> DEV deploy -> DEV verify`를 따른다.
52
52
  - external integration boundary:
@@ -96,7 +96,7 @@
96
96
  "verify_dev": "<repo-local DEV verify command>"
97
97
  },
98
98
  "artifacts": {
99
- "proof_output": "sdd/04_verify/10_test/<tool>/<latest>.json"
99
+ "proof_output": "sdd/03_verify/10_test/<tool>/<latest>.json"
100
100
  }
101
101
  }
102
102
  ```
@@ -161,7 +161,7 @@ Frontend-capable template에는 다음 두 층이 있어야 한다.
161
161
 
162
162
  - `sdd/02_plan/10_test/<service>/ui_parity_<target>_contract.yaml`
163
163
  - `sdd/02_plan/99_generated/from_planning/ui_parity/`
164
- - `sdd/04_verify/10_test/ui_parity/`
164
+ - `sdd/03_verify/10_test/ui_parity/`
165
165
 
166
166
  권장 evidence 구조:
167
167
 
@@ -262,7 +262,7 @@ Frontend-capable template에는 다음 두 층이 있어야 한다.
262
262
  - optional `scripts/dev/` parity orchestration wrappers
263
263
  - `sdd/02_plan/10_test/templates/ui_parity_web_contract.template.yaml`
264
264
  - `sdd/02_plan/99_generated/from_planning/ui_parity/.gitkeep`
265
- - `sdd/04_verify/10_test/ui_parity/.gitkeep`
265
+ - `sdd/03_verify/10_test/ui_parity/.gitkeep`
266
266
 
267
267
  ### Frontend template
268
268
 
@@ -162,7 +162,7 @@ sdd/
162
162
  99_generated/
163
163
  from_planning/
164
164
  ui_parity/
165
- 04_verify/
165
+ 03_verify/
166
166
  10_test/
167
167
  ui_parity/
168
168
  99_toolchain/
@@ -209,12 +209,12 @@ frontend/
209
209
  - `sdd/99_toolchain/01_automation/agentic-dev/run_repo_phase.sh`가 contract를 읽는다.
210
210
  - contract의 `proof`는 `sdd/99_toolchain/01_automation/ui-parity/cli/run-proof`를 호출한다.
211
211
  - `run-proof`는 app adapter를 읽고 strict parity를 실행한다.
212
- - 결과는 `sdd/04_verify/10_test/ui_parity/...`에 저장한다.
212
+ - 결과는 `sdd/03_verify/10_test/ui_parity/...`에 저장한다.
213
213
 
214
214
  예시 shape:
215
215
 
216
216
  ```json
217
- "proof": "node sdd/99_toolchain/01_automation/ui-parity/cli/run-proof.mjs --adapter frontend/scripts/ui-parity-web-adapter.mjs --contract sdd/02_plan/10_test/<service>/ui_parity_web_contract.yaml --out sdd/04_verify/10_test/ui_parity/<service>_agentic_dev_latest.json"
217
+ "proof": "node sdd/99_toolchain/01_automation/ui-parity/cli/run-proof.mjs --adapter frontend/scripts/ui-parity-web-adapter.mjs --contract sdd/02_plan/10_test/<service>/ui_parity_web_contract.yaml --out sdd/03_verify/10_test/ui_parity/<service>_agentic_dev_latest.json"
218
218
  ```
219
219
 
220
220
  ### deploy_dev
@@ -51,7 +51,7 @@ node sdd/99_toolchain/01_automation/ui-parity/cli/scaffold-contract.mjs \
51
51
  node sdd/99_toolchain/01_automation/ui-parity/cli/run-proof.mjs \
52
52
  --adapter client/web/scripts/ui-parity-web-adapter.mjs \
53
53
  --contract sdd/02_plan/10_test/templates/ui_parity_web_contract.yaml \
54
- --out sdd/04_verify/10_test/ui_parity/templates_web_agentic_dev_latest.json
54
+ --out sdd/03_verify/10_test/ui_parity/templates_web_agentic_dev_latest.json
55
55
  ```
56
56
 
57
57
  관련 계약:
@@ -40,7 +40,7 @@ let generated = 0;
40
40
  for (const screen of contract.screens) {
41
41
  const targetPath = path.resolve(
42
42
  repoRoot,
43
- screen.referenceImage ?? `sdd/04_verify/10_test/ui_parity/reference/${sanitizeFileName(screen.id)}.png`,
43
+ screen.referenceImage ?? `sdd/03_verify/10_test/ui_parity/reference/${sanitizeFileName(screen.id)}.png`,
44
44
  );
45
45
  await captureScreen({
46
46
  browser: runtime.browser,
@@ -38,13 +38,13 @@ function renderYaml(adapterPath, adapter) {
38
38
  if (screens.length === 0) {
39
39
  lines.push(" - id: TMP_001");
40
40
  lines.push(" route: /");
41
- lines.push(" reference_image: sdd/04_verify/10_test/ui_parity/reference/TMP_001.png");
41
+ lines.push(" reference_image: sdd/03_verify/10_test/ui_parity/reference/TMP_001.png");
42
42
  } else {
43
43
  for (const screen of screens) {
44
44
  lines.push(` - id: ${screen.id}`);
45
45
  lines.push(` route: ${screen.route}`);
46
46
  lines.push(
47
- ` reference_image: ${screen.referenceImage ?? `sdd/04_verify/10_test/ui_parity/reference/${screen.id}.png`}`,
47
+ ` reference_image: ${screen.referenceImage ?? `sdd/03_verify/10_test/ui_parity/reference/${screen.id}.png`}`,
48
48
  );
49
49
  }
50
50
  }
@@ -147,7 +147,7 @@ export async function runProof({
147
147
  referenceImage:
148
148
  configuredScreen.referenceImage ??
149
149
  configuredScreen.reference_image ??
150
- `sdd/04_verify/10_test/ui_parity/reference/${configuredScreen.id}.png`,
150
+ `sdd/03_verify/10_test/ui_parity/reference/${configuredScreen.id}.png`,
151
151
  };
152
152
  const stem = sanitizeFileName(screen.id || screen.route);
153
153
  const actualPath = path.join(actualRoot, `${stem}.png`);
@@ -2,7 +2,7 @@
2
2
 
3
3
  권장 루트:
4
4
 
5
- - `sdd/04_verify/10_test/ui_parity/`
5
+ - `sdd/03_verify/10_test/ui_parity/`
6
6
 
7
7
  필수 파일:
8
8
 
@@ -10,7 +10,7 @@
10
10
  - 기본 설명 순서는 `entry -> provider/router -> auth/session gate -> shell -> route leaf -> backend contract leaf`다.
11
11
  - shared shell, auth/session, data contract, transport split은 route leaf 이후 cross-cutting link로 연결한다.
12
12
  - `sdd/03_build`에는 dated memo, Ralph iteration narrative, run id, turn-specific 회고를 남기지 않는다.
13
- - 구조 current-state 적합성은 `scripts/dev/audit_sdd_build_ast.py`로 검증하고 결과는 `sdd/04_verify/03_architecture`에 유지한다.
13
+ - 구조 current-state 적합성은 `scripts/dev/audit_sdd_build_ast.py`로 검증하고 결과는 `sdd/03_verify/03_architecture`에 유지한다.
14
14
  - downstream 저장소는 이 정책과 audit script를 함께 복제해야 한다.
15
15
 
16
16
  ## Canonical References
@@ -19,4 +19,4 @@
19
19
  - `scripts/dev/audit_sdd_build_ast.py`
20
20
  - `sdd/02_plan/03_architecture/build_ast_runtime_tree_governance.md`
21
21
  - `sdd/03_build/03_architecture/build_ast_runtime_tree_governance.md`
22
- - `sdd/04_verify/03_architecture/build_ast_runtime_tree_governance.md`
22
+ - `sdd/03_verify/03_architecture/build_ast_runtime_tree_governance.md`
@@ -12,7 +12,7 @@
12
12
  - compose 문서는 root compose baseline과 dedicated overlay를 혼동하지 않고 current-state 역할로만 설명한다.
13
13
  - browser-facing 환경 변수(`VITE_API_BASE_URL` 등)는 컨테이너 내부 DNS가 아니라 실제 브라우저가 도달 가능한 URL을 사용한다.
14
14
  - remote delivery topology는 `AWS edge/domain -> OpenStack backend compute -> AWS data plane` current split을 기준으로 설명한다.
15
- - compose baseline이나 topology가 바뀌면 `README.md`, `infra/compose/README.md`, `sdd/02_plan/06_iac`, `sdd/03_build/06_iac`, `sdd/04_verify/06_iac`를 같은 변경 단위로 동기화한다.
15
+ - compose baseline이나 topology가 바뀌면 `README.md`, `infra/compose/README.md`, `sdd/02_plan/06_iac`, `sdd/03_build/06_iac`, `sdd/03_verify/06_iac`를 같은 변경 단위로 동기화한다.
16
16
 
17
17
  ## Canonical References
18
18
 
@@ -21,4 +21,4 @@
21
21
  - `infra/terraform/README.md`
22
22
  - `sdd/02_plan/06_iac/template_runtime_delivery.md`
23
23
  - `sdd/03_build/06_iac/template_runtime_delivery.md`
24
- - `sdd/04_verify/06_iac/template_runtime_delivery.md`
24
+ - `sdd/03_verify/06_iac/template_runtime_delivery.md`
@@ -12,7 +12,7 @@
12
12
  - Playwright exactness suite가 있는 screen/local UI surface는 `sdd/99_toolchain/01_automation/run_playwright_exactness.py`를 canonical local gate로 사용한다.
13
13
  - direct `npx playwright test ...` 호출은 디버깅 예외로만 쓰고, retained verification command는 toolchain wrapper 기준으로 남긴다.
14
14
  - 자동화가 없는 회귀 surface는 가능한 command/manual verification으로 대체하고, automation gap은 residual risk로 남긴다.
15
- - 선택한 회귀 검수 범위, 실행한 check, 생략 사유, residual risk는 `sdd/02_plan`, `sdd/03_build`, `sdd/04_verify`에 current-state로 유지한다.
15
+ - 선택한 회귀 검수 범위, 실행한 check, 생략 사유, residual risk는 `sdd/02_plan`, `sdd/03_build`, `sdd/03_verify`에 current-state로 유지한다.
16
16
 
17
17
  ## Canonical References
18
18
 
@@ -20,4 +20,4 @@
20
20
  - compose/runtime 기준선은 `02_policies/compose-runtime-baseline-policy.md`를 정본으로 사용한다.
21
21
  - 현재 canonical screen toolchain은 `build_screen_spec_pdf.py`, `capture_screen_assets.mjs`, `screen_spec_manifest.py`다.
22
22
  - Claude/Codex/Ralph 하네스는 저장소 루트 `.claude`, `.codex`, `.agent`에 두고, 그 계약 설명은 `01_automation`과 `02_policies`에 둔다.
23
- - `sdd/03_build`는 AST-style runtime tree current-state를 유지하고, 관련 gate는 `scripts/dev/audit_sdd_build_ast.py`와 `04_verify` summary로 관리한다.
23
+ - `sdd/03_build`는 AST-style runtime tree current-state를 유지하고, 관련 gate는 `scripts/dev/audit_sdd_build_ast.py`와 `03_verify` summary로 관리한다.
package/sdd/README.md CHANGED
@@ -16,6 +16,6 @@
16
16
  - `01_planning/`: 현재 canonical spec과 source reference
17
17
  - `02_plan/`: 에이전트의 current executable plan
18
18
  - `03_build/`: 현재 구현 요약
19
- - `04_verify/`: 현재 retained verification summary
19
+ - `03_verify/`: 현재 retained verification summary
20
20
  - `05_operate/`: 현재 delivery status와 runbook
21
21
  - `99_toolchain/`: SDD를 유지하는 생성기, 자동화, 정책 문서
File without changes
File without changes