agentic-dev 0.2.10 → 0.2.12

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 (603) hide show
  1. package/README.md +50 -29
  2. package/bin/agentic-dev.mjs +656 -124
  3. package/lib/scaffold.mjs +109 -6
  4. package/package.json +8 -22
  5. package/.agent/prd.json +0 -29
  6. package/.agent/progress.txt +0 -1
  7. package/.agent/prompt.md +0 -21
  8. package/.agent/ralph-loop-state.json +0 -13
  9. package/.agent/ralph-supervisor-state.json +0 -12
  10. package/.agent/ralph-supervisor.sh +0 -238
  11. package/.agent/ralph.sh +0 -305
  12. package/.agent/runs/README.md +0 -7
  13. package/.agent/sdd-build-ast-audit.json +0 -13
  14. package/.claude/CLAUDE.md +0 -44
  15. package/.claude/agentic-dev.json +0 -3
  16. package/.claude/agents/ai-dev.md +0 -27
  17. package/.claude/agents/backend-dev.md +0 -26
  18. package/.claude/agents/db-dev.md +0 -26
  19. package/.claude/agents/devops.md +0 -27
  20. package/.claude/agents/frontend-dev.md +0 -25
  21. package/.claude/agents/github-ops.md +0 -25
  22. package/.claude/agents/test-dev.md +0 -26
  23. package/.claude/agents/uiux-designer.md +0 -25
  24. package/.claude/settings.json +0 -49
  25. package/.claude/settings.local.json +0 -8
  26. package/.claude/skills/sdd/SKILL.md +0 -189
  27. package/.claude/skills/sdd/agents/openai.yaml +0 -4
  28. package/.claude/skills/sdd/references/section-map.md +0 -67
  29. package/.claude/workspace-config.json +0 -3
  30. package/.codex/agentic-dev.json +0 -3
  31. package/.codex/agents/README.md +0 -22
  32. package/.codex/agents/api.toml +0 -11
  33. package/.codex/agents/architecture.toml +0 -11
  34. package/.codex/agents/ci.toml +0 -11
  35. package/.codex/agents/gitops.toml +0 -11
  36. package/.codex/agents/orchestrator.toml +0 -11
  37. package/.codex/agents/quality.toml +0 -11
  38. package/.codex/agents/runtime.toml +0 -11
  39. package/.codex/agents/security.toml +0 -11
  40. package/.codex/agents/specs.toml +0 -11
  41. package/.codex/agents/ui.toml +0 -11
  42. package/.codex/config.toml +0 -46
  43. package/.codex/skills/SKILL.md +0 -13
  44. package/.codex/skills/sdd/SKILL.md +0 -189
  45. package/.codex/skills/sdd/agents/openai.yaml +0 -4
  46. package/.codex/skills/sdd/references/section-map.md +0 -67
  47. package/.dockerignore +0 -8
  48. package/.env.example +0 -50
  49. package/.gitignore +0 -16
  50. package/AGENTS.md +0 -86
  51. package/SDD_SKILL.md +0 -589
  52. package/client/admin/.dockerignore +0 -3
  53. package/client/admin/.env.example +0 -1
  54. package/client/admin/Dockerfile +0 -16
  55. package/client/admin/Dockerfile.dev +0 -18
  56. package/client/admin/README.md +0 -20
  57. package/client/admin/index.html +0 -12
  58. package/client/admin/package.json +0 -41
  59. package/client/admin/postcss.config.js +0 -6
  60. package/client/admin/scripts/ui-parity-admin-adapter.mjs +0 -65
  61. package/client/admin/src/api/alerts.ts +0 -33
  62. package/client/admin/src/api/client.ts +0 -71
  63. package/client/admin/src/api/orders.ts +0 -33
  64. package/client/admin/src/api/support.ts +0 -11
  65. package/client/admin/src/app/App.tsx +0 -23
  66. package/client/admin/src/auth/AuthProvider.tsx +0 -122
  67. package/client/admin/src/auth/ProtectedRoute.tsx +0 -22
  68. package/client/admin/src/auth/auth-client.ts +0 -38
  69. package/client/admin/src/auth/types.ts +0 -18
  70. package/client/admin/src/components/AdminNotificationsDrawer.tsx +0 -162
  71. package/client/admin/src/components/AdminShell.tsx +0 -76
  72. package/client/admin/src/components/ui/button.tsx +0 -34
  73. package/client/admin/src/components/ui/input.tsx +0 -21
  74. package/client/admin/src/lib/cn.ts +0 -6
  75. package/client/admin/src/lib/specRouteCatalog.json +0 -30
  76. package/client/admin/src/lib/specScreens.json +0 -22
  77. package/client/admin/src/main.tsx +0 -17
  78. package/client/admin/src/pages/AdminDashboardPage.tsx +0 -171
  79. package/client/admin/src/pages/AdminLoginPage.tsx +0 -75
  80. package/client/admin/src/pages/AdminQueuePage.tsx +0 -107
  81. package/client/admin/src/pages/AdminSupportPage.tsx +0 -61
  82. package/client/admin/src/styles/globals.css +0 -17
  83. package/client/admin/src/theme-vars.ts +0 -18
  84. package/client/admin/src/theme.ts +0 -25
  85. package/client/admin/src/vite-env.d.ts +0 -1
  86. package/client/admin/tailwind.config.js +0 -8
  87. package/client/admin/tsconfig.json +0 -25
  88. package/client/admin/vite.config.ts +0 -12
  89. package/client/landing/.dockerignore +0 -3
  90. package/client/landing/.env.example +0 -1
  91. package/client/landing/Dockerfile +0 -16
  92. package/client/landing/Dockerfile.dev +0 -18
  93. package/client/landing/README.md +0 -18
  94. package/client/landing/index.html +0 -12
  95. package/client/landing/package.json +0 -41
  96. package/client/landing/postcss.config.js +0 -6
  97. package/client/landing/scripts/ui-parity-landing-adapter.mjs +0 -65
  98. package/client/landing/src/App.tsx +0 -21
  99. package/client/landing/src/api/catalog.ts +0 -30
  100. package/client/landing/src/api/client.ts +0 -30
  101. package/client/landing/src/auth/AuthProvider.tsx +0 -122
  102. package/client/landing/src/auth/ProtectedRoute.tsx +0 -22
  103. package/client/landing/src/auth/auth-client.ts +0 -38
  104. package/client/landing/src/auth/types.ts +0 -18
  105. package/client/landing/src/components/LandingShell.tsx +0 -34
  106. package/client/landing/src/lib/specRouteCatalog.json +0 -23
  107. package/client/landing/src/lib/specScreens.json +0 -17
  108. package/client/landing/src/main.tsx +0 -17
  109. package/client/landing/src/pages/LandingHomePage.tsx +0 -215
  110. package/client/landing/src/pages/LandingLoginPage.tsx +0 -90
  111. package/client/landing/src/pages/LandingWorkspacePage.tsx +0 -126
  112. package/client/landing/src/styles/globals.css +0 -17
  113. package/client/landing/src/theme-vars.ts +0 -16
  114. package/client/landing/src/theme.ts +0 -21
  115. package/client/landing/src/vite-env.d.ts +0 -1
  116. package/client/landing/tailwind.config.js +0 -8
  117. package/client/landing/tsconfig.json +0 -25
  118. package/client/landing/vite.config.ts +0 -12
  119. package/client/mobile/.dockerignore +0 -2
  120. package/client/mobile/.env.example +0 -1
  121. package/client/mobile/Dockerfile +0 -16
  122. package/client/mobile/Dockerfile.dev +0 -18
  123. package/client/mobile/README.md +0 -19
  124. package/client/mobile/index.html +0 -12
  125. package/client/mobile/package.json +0 -42
  126. package/client/mobile/postcss.config.js +0 -6
  127. package/client/mobile/scripts/ui-parity-mobile-adapter.mjs +0 -67
  128. package/client/mobile/src/App.tsx +0 -1
  129. package/client/mobile/src/api/client.ts +0 -62
  130. package/client/mobile/src/api/fulfillment.ts +0 -55
  131. package/client/mobile/src/api/shipping.ts +0 -56
  132. package/client/mobile/src/app/App.tsx +0 -23
  133. package/client/mobile/src/auth/AuthProvider.tsx +0 -122
  134. package/client/mobile/src/auth/ProtectedRoute.tsx +0 -27
  135. package/client/mobile/src/auth/auth-client.ts +0 -38
  136. package/client/mobile/src/auth/types.ts +0 -18
  137. package/client/mobile/src/components/InShell.tsx +0 -74
  138. package/client/mobile/src/components/ui/button.tsx +0 -35
  139. package/client/mobile/src/components/ui/card.tsx +0 -15
  140. package/client/mobile/src/components/ui/input.tsx +0 -21
  141. package/client/mobile/src/lib/cn.ts +0 -6
  142. package/client/mobile/src/lib/specRouteCatalog.json +0 -26
  143. package/client/mobile/src/lib/specScreens.json +0 -22
  144. package/client/mobile/src/lib/useSpeechRecognitionInput.ts +0 -271
  145. package/client/mobile/src/main.tsx +0 -17
  146. package/client/mobile/src/pages/DashboardPage.tsx +0 -172
  147. package/client/mobile/src/pages/FulfillmentPage.tsx +0 -138
  148. package/client/mobile/src/pages/LoginPage.tsx +0 -74
  149. package/client/mobile/src/pages/ShippingPage.tsx +0 -338
  150. package/client/mobile/src/styles/globals.css +0 -23
  151. package/client/mobile/src/theme-vars.ts +0 -16
  152. package/client/mobile/src/theme.ts +0 -21
  153. package/client/mobile/src/vite-env.d.ts +0 -1
  154. package/client/mobile/tailwind.config.js +0 -8
  155. package/client/mobile/tsconfig.json +0 -25
  156. package/client/mobile/vite.config.ts +0 -12
  157. package/client/web/.dockerignore +0 -3
  158. package/client/web/.env.example +0 -1
  159. package/client/web/Dockerfile +0 -16
  160. package/client/web/Dockerfile.dev +0 -18
  161. package/client/web/README.md +0 -47
  162. package/client/web/index.html +0 -12
  163. package/client/web/package.json +0 -42
  164. package/client/web/postcss.config.js +0 -6
  165. package/client/web/scripts/ui-parity-web-adapter.mjs +0 -66
  166. package/client/web/src/api/client.ts +0 -30
  167. package/client/web/src/api/orders.ts +0 -42
  168. package/client/web/src/app/App.tsx +0 -21
  169. package/client/web/src/auth/AuthProvider.tsx +0 -122
  170. package/client/web/src/auth/ProtectedRoute.tsx +0 -22
  171. package/client/web/src/auth/auth-client.ts +0 -38
  172. package/client/web/src/auth/types.ts +0 -18
  173. package/client/web/src/components/AppShell.tsx +0 -59
  174. package/client/web/src/components/ui/button.tsx +0 -35
  175. package/client/web/src/components/ui/card.tsx +0 -7
  176. package/client/web/src/components/ui/input.tsx +0 -21
  177. package/client/web/src/lib/cn.ts +0 -6
  178. package/client/web/src/lib/specRouteCatalog.json +0 -23
  179. package/client/web/src/lib/specScreens.json +0 -17
  180. package/client/web/src/main.tsx +0 -17
  181. package/client/web/src/pages/DashboardPage.tsx +0 -158
  182. package/client/web/src/pages/LoginPage.tsx +0 -72
  183. package/client/web/src/pages/OrdersPage.tsx +0 -123
  184. package/client/web/src/styles/globals.css +0 -17
  185. package/client/web/src/theme-vars.ts +0 -18
  186. package/client/web/src/theme.ts +0 -25
  187. package/client/web/src/vite-env.d.ts +0 -1
  188. package/client/web/tailwind.config.js +0 -8
  189. package/client/web/tsconfig.json +0 -25
  190. package/client/web/vite.config.ts +0 -12
  191. package/compose.yml +0 -206
  192. package/infra/compose/.env.dev.example +0 -28
  193. package/infra/compose/.env.prod.example +0 -29
  194. package/infra/compose/README.md +0 -35
  195. package/infra/compose/dev.yml +0 -125
  196. package/infra/compose/prod.yml +0 -126
  197. package/infra/terraform/README.md +0 -34
  198. package/infra/terraform/aws/data/.terraform.lock.hcl +0 -25
  199. package/infra/terraform/aws/data/README.md +0 -18
  200. package/infra/terraform/aws/data/main.tf +0 -147
  201. package/infra/terraform/aws/data/outputs.tf +0 -14
  202. package/infra/terraform/aws/data/variables.tf +0 -57
  203. package/infra/terraform/aws/data/versions.tf +0 -10
  204. package/infra/terraform/aws/domain/.terraform.lock.hcl +0 -25
  205. package/infra/terraform/aws/domain/README.md +0 -20
  206. package/infra/terraform/aws/domain/env/dev.tfvars.example +0 -6
  207. package/infra/terraform/aws/domain/env/prod.tfvars.example +0 -7
  208. package/infra/terraform/aws/domain/main.tf +0 -149
  209. package/infra/terraform/aws/domain/outputs.tf +0 -29
  210. package/infra/terraform/aws/domain/variables.tf +0 -58
  211. package/infra/terraform/aws/domain/versions.tf +0 -10
  212. package/infra/terraform/openstack/README.md +0 -38
  213. package/infra/terraform/openstack/dev/.terraform.lock.hcl +0 -24
  214. package/infra/terraform/openstack/dev/README.md +0 -18
  215. package/infra/terraform/openstack/dev/main.tf +0 -49
  216. package/infra/terraform/openstack/dev/providers.tf +0 -15
  217. package/infra/terraform/openstack/dev/terraform.tfvars.example +0 -54
  218. package/infra/terraform/openstack/dev/variables.tf +0 -210
  219. package/infra/terraform/openstack/dev/versions.tf +0 -10
  220. package/infra/terraform/openstack/modules/environment_host/main.tf +0 -143
  221. package/infra/terraform/openstack/modules/environment_host/outputs.tf +0 -25
  222. package/infra/terraform/openstack/modules/environment_host/templates/docker-host-user-data.sh.tftpl +0 -40
  223. package/infra/terraform/openstack/modules/environment_host/variables.tf +0 -145
  224. package/infra/terraform/openstack/modules/environment_host/versions.tf +0 -7
  225. package/infra/terraform/openstack/prod/.terraform.lock.hcl +0 -24
  226. package/infra/terraform/openstack/prod/README.md +0 -18
  227. package/infra/terraform/openstack/prod/main.tf +0 -49
  228. package/infra/terraform/openstack/prod/providers.tf +0 -15
  229. package/infra/terraform/openstack/prod/terraform.tfvars.example +0 -55
  230. package/infra/terraform/openstack/prod/variables.tf +0 -210
  231. package/infra/terraform/openstack/prod/versions.tf +0 -10
  232. package/infra/terraform/openstack/server/.terraform.lock.hcl +0 -45
  233. package/infra/terraform/openstack/server/README.md +0 -47
  234. package/infra/terraform/openstack/server/main.tf +0 -161
  235. package/infra/terraform/openstack/server/outputs.tf +0 -30
  236. package/infra/terraform/openstack/server/providers.tf +0 -30
  237. package/infra/terraform/openstack/server/templates/server-user-data.sh.tftpl +0 -50
  238. package/infra/terraform/openstack/server/variables.tf +0 -233
  239. package/infra/terraform/openstack/server/zz_aspace.auto.tfvars.example.json +0 -29
  240. package/pnpm-workspace.yaml +0 -2
  241. package/scripts/dev/audit_sdd_build_ast.py +0 -277
  242. package/sdd/01_planning/01_feature/INDEX.md +0 -16
  243. package/sdd/01_planning/01_feature/README.md +0 -76
  244. package/sdd/01_planning/01_feature/alerts_feature_spec.md +0 -55
  245. package/sdd/01_planning/01_feature/auth_feature_spec.md +0 -57
  246. package/sdd/01_planning/01_feature/catalog_feature_spec.md +0 -61
  247. package/sdd/01_planning/01_feature/fulfillment_feature_spec.md +0 -58
  248. package/sdd/01_planning/01_feature/health_feature_spec.md +0 -52
  249. package/sdd/01_planning/01_feature/inventory_feature_spec.md +0 -60
  250. package/sdd/01_planning/01_feature/order_feature_spec.md +0 -63
  251. package/sdd/01_planning/01_feature/shipping_feature_spec.md +0 -55
  252. package/sdd/01_planning/01_feature/support_feature_spec.md +0 -53
  253. package/sdd/01_planning/01_feature/user_feature_spec.md +0 -54
  254. package/sdd/01_planning/02_screen/INDEX.md +0 -13
  255. package/sdd/01_planning/02_screen/README.md +0 -41
  256. package/sdd/01_planning/02_screen/admin_screen_spec.pdf +0 -0
  257. package/sdd/01_planning/02_screen/assets/README.md +0 -16
  258. package/sdd/01_planning/02_screen/assets/example/README.md +0 -13
  259. package/sdd/01_planning/02_screen/landing_screen_spec.pdf +0 -0
  260. package/sdd/01_planning/02_screen/mobile_screen_spec.pdf +0 -0
  261. package/sdd/01_planning/02_screen/web_screen_spec.pdf +0 -0
  262. package/sdd/01_planning/03_architecture/INDEX.md +0 -9
  263. package/sdd/01_planning/03_architecture/README.md +0 -25
  264. package/sdd/01_planning/03_architecture/architecture_document_structure.md +0 -77
  265. package/sdd/01_planning/03_architecture/backend/README.md +0 -10
  266. package/sdd/01_planning/03_architecture/frontend/README.md +0 -12
  267. package/sdd/01_planning/03_architecture/infra/README.md +0 -10
  268. package/sdd/01_planning/03_architecture/tech-research/README.md +0 -4
  269. package/sdd/01_planning/03_architecture/templates_system_architecture.md +0 -84
  270. package/sdd/01_planning/04_data/INDEX.md +0 -4
  271. package/sdd/01_planning/04_data/README.md +0 -10
  272. package/sdd/01_planning/04_data/templates_data_modeling.md +0 -119
  273. package/sdd/01_planning/05_api/README.md +0 -12
  274. package/sdd/01_planning/05_api/templates_api_contract.md +0 -90
  275. package/sdd/01_planning/06_iac/README.md +0 -11
  276. package/sdd/01_planning/06_iac/templates_runtime_and_cicd_baseline.md +0 -46
  277. package/sdd/01_planning/07_integration/README.md +0 -11
  278. package/sdd/01_planning/07_integration/templates_frontend_api_integration.md +0 -46
  279. package/sdd/01_planning/08_nonfunctional/README.md +0 -7
  280. package/sdd/01_planning/09_security/README.md +0 -7
  281. package/sdd/01_planning/10_test/README.md +0 -12
  282. package/sdd/01_planning/10_test/templates_test_strategy.md +0 -60
  283. package/sdd/01_planning/INDEX.md +0 -19
  284. package/sdd/01_planning/README.md +0 -17
  285. package/sdd/02_plan/01_feature/README.md +0 -34
  286. package/sdd/02_plan/01_feature/_feature_todo_template.md +0 -29
  287. package/sdd/02_plan/02_screen/INDEX.md +0 -19
  288. package/sdd/02_plan/02_screen/README.md +0 -39
  289. package/sdd/02_plan/02_screen/_screen_todo_template.md +0 -60
  290. package/sdd/02_plan/03_architecture/README.md +0 -23
  291. package/sdd/02_plan/03_architecture/architecture_document_governance.md +0 -40
  292. package/sdd/02_plan/03_architecture/build_ast_runtime_tree_governance.md +0 -53
  293. package/sdd/02_plan/03_architecture/repository_governance.md +0 -39
  294. package/sdd/02_plan/03_architecture/runtime_and_structure_governance.md +0 -38
  295. package/sdd/02_plan/03_architecture/templates-hexagonal-template-architecture.md +0 -9
  296. package/sdd/02_plan/03_architecture/toolchain_governance.md +0 -98
  297. package/sdd/02_plan/04_data/README.md +0 -5
  298. package/sdd/02_plan/05_api/README.md +0 -5
  299. package/sdd/02_plan/06_iac/README.md +0 -11
  300. package/sdd/02_plan/06_iac/dev_runtime_delivery.md +0 -36
  301. package/sdd/02_plan/06_iac/template_runtime_delivery.md +0 -50
  302. package/sdd/02_plan/07_integration/README.md +0 -5
  303. package/sdd/02_plan/07_integration/frontend_live_integration.md +0 -31
  304. package/sdd/02_plan/08_nonfunctional/README.md +0 -5
  305. package/sdd/02_plan/08_nonfunctional/repository_hygiene.md +0 -26
  306. package/sdd/02_plan/09_security/README.md +0 -5
  307. package/sdd/02_plan/10_test/README.md +0 -11
  308. package/sdd/02_plan/10_test/regression_verification.md +0 -39
  309. package/sdd/02_plan/10_test/templates/README.md +0 -8
  310. package/sdd/02_plan/10_test/templates/ui_parity_web_contract.template.yaml +0 -23
  311. package/sdd/02_plan/10_test/verification_strategy.md +0 -43
  312. package/sdd/02_plan/99_generated/from_planning/ui_parity/.gitkeep +0 -1
  313. package/sdd/02_plan/README.md +0 -40
  314. package/sdd/03_build/01_feature/README.md +0 -20
  315. package/sdd/03_build/01_feature/domain/README.md +0 -3
  316. package/sdd/03_build/01_feature/domain/account_and_access.md +0 -20
  317. package/sdd/03_build/01_feature/domain/catalog_and_inventory.md +0 -20
  318. package/sdd/03_build/01_feature/domain/ordering_and_fulfillment.md +0 -21
  319. package/sdd/03_build/01_feature/domain/support_and_observability.md +0 -21
  320. package/sdd/03_build/01_feature/domain_surfaces.md +0 -28
  321. package/sdd/03_build/01_feature/service/README.md +0 -3
  322. package/sdd/03_build/01_feature/service/admin_surface.md +0 -15
  323. package/sdd/03_build/01_feature/service/landing_surface.md +0 -13
  324. package/sdd/03_build/01_feature/service/mobile_surface.md +0 -14
  325. package/sdd/03_build/01_feature/service/web_surface.md +0 -14
  326. package/sdd/03_build/02_screen/README.md +0 -25
  327. package/sdd/03_build/02_screen/_screen_build_template.md +0 -26
  328. package/sdd/03_build/02_screen/admin/README.md +0 -5
  329. package/sdd/03_build/02_screen/landing/README.md +0 -5
  330. package/sdd/03_build/02_screen/mobile/README.md +0 -5
  331. package/sdd/03_build/02_screen/web/README.md +0 -5
  332. package/sdd/03_build/03_architecture/README.md +0 -10
  333. package/sdd/03_build/03_architecture/architecture_document_governance.md +0 -30
  334. package/sdd/03_build/03_architecture/build_ast_runtime_tree_governance.md +0 -24
  335. package/sdd/03_build/03_architecture/repository_governance.md +0 -18
  336. package/sdd/03_build/03_architecture/toolchain_governance.md +0 -36
  337. package/sdd/03_build/06_iac/README.md +0 -3
  338. package/sdd/03_build/06_iac/dev_runtime_delivery.md +0 -10
  339. package/sdd/03_build/06_iac/template_runtime_delivery.md +0 -49
  340. package/sdd/03_build/07_integration/README.md +0 -3
  341. package/sdd/03_build/07_integration/frontend_live_integration.md +0 -11
  342. package/sdd/03_build/08_nonfunctional/README.md +0 -3
  343. package/sdd/03_build/08_nonfunctional/repository_hygiene.md +0 -10
  344. package/sdd/03_build/10_test/README.md +0 -9
  345. package/sdd/03_build/10_test/regression_verification.md +0 -16
  346. package/sdd/03_build/10_test/verification_harness.md +0 -11
  347. package/sdd/03_build/README.md +0 -35
  348. package/sdd/03_verify/01_feature/README.md +0 -5
  349. package/sdd/03_verify/01_feature/domain_verification.md +0 -14
  350. package/sdd/03_verify/01_feature/service_verification.md +0 -22
  351. package/sdd/03_verify/02_screen/README.md +0 -6
  352. package/sdd/03_verify/02_screen/_screen_verify_template.md +0 -20
  353. package/sdd/03_verify/02_screen/admin/README.md +0 -4
  354. package/sdd/03_verify/02_screen/landing/README.md +0 -4
  355. package/sdd/03_verify/02_screen/mobile/README.md +0 -4
  356. package/sdd/03_verify/02_screen/web/README.md +0 -4
  357. package/sdd/03_verify/03_architecture/README.md +0 -10
  358. package/sdd/03_verify/03_architecture/architecture_document_governance.md +0 -15
  359. package/sdd/03_verify/03_architecture/build_ast_runtime_tree_governance.md +0 -28
  360. package/sdd/03_verify/03_architecture/repository_governance.md +0 -16
  361. package/sdd/03_verify/03_architecture/toolchain_governance.md +0 -58
  362. package/sdd/03_verify/06_iac/README.md +0 -3
  363. package/sdd/03_verify/06_iac/dev_runtime_delivery.md +0 -10
  364. package/sdd/03_verify/06_iac/template_runtime_delivery.md +0 -42
  365. package/sdd/03_verify/07_integration/README.md +0 -3
  366. package/sdd/03_verify/07_integration/frontend_live_integration.md +0 -16
  367. package/sdd/03_verify/08_nonfunctional/README.md +0 -3
  368. package/sdd/03_verify/08_nonfunctional/repository_hygiene.md +0 -14
  369. package/sdd/03_verify/10_test/README.md +0 -9
  370. package/sdd/03_verify/10_test/regression_verification.md +0 -16
  371. package/sdd/03_verify/10_test/ui_parity/README.md +0 -4
  372. package/sdd/03_verify/10_test/ui_parity/loop_runs/.gitkeep +0 -0
  373. package/sdd/03_verify/10_test/ui_parity/reference/.gitkeep +0 -0
  374. package/sdd/03_verify/10_test/ui_parity/staged_runs/.gitkeep +0 -0
  375. package/sdd/03_verify/10_test/verification_harness.md +0 -17
  376. package/sdd/03_verify/README.md +0 -22
  377. package/sdd/05_operate/01_runbooks/.gitkeep +0 -1
  378. package/sdd/05_operate/01_runbooks/README.md +0 -4
  379. package/sdd/05_operate/02_delivery_status/README.md +0 -4
  380. package/sdd/05_operate/02_delivery_status/service_status.md +0 -16
  381. package/sdd/05_operate/README.md +0 -12
  382. package/sdd/99_toolchain/01_automation/.gitkeep +0 -1
  383. package/sdd/99_toolchain/01_automation/README.md +0 -76
  384. package/sdd/99_toolchain/01_automation/agentic-dev/analyze_proof_results.py +0 -132
  385. package/sdd/99_toolchain/01_automation/agentic-dev/analyze_route_gap.py +0 -85
  386. package/sdd/99_toolchain/01_automation/agentic-dev/assets/repo-contract.template.json +0 -75
  387. package/sdd/99_toolchain/01_automation/agentic-dev/bootstrap_frontend_parity.sh +0 -84
  388. package/sdd/99_toolchain/01_automation/agentic-dev/init_frontend_parity.sh +0 -33
  389. package/sdd/99_toolchain/01_automation/agentic-dev/init_repo_contract.sh +0 -51
  390. package/sdd/99_toolchain/01_automation/agentic-dev/repo-contract.json +0 -76
  391. package/sdd/99_toolchain/01_automation/agentic-dev/resolve_frontend_target.py +0 -52
  392. package/sdd/99_toolchain/01_automation/agentic-dev/resolve_repo_contract.py +0 -56
  393. package/sdd/99_toolchain/01_automation/agentic-dev/run_frontend_target.sh +0 -100
  394. package/sdd/99_toolchain/01_automation/agentic-dev/run_repo_phase.sh +0 -140
  395. package/sdd/99_toolchain/01_automation/agentic-dev/validate_json_schema.py +0 -39
  396. package/sdd/99_toolchain/01_automation/agentic-parity-harness-design.md +0 -291
  397. package/sdd/99_toolchain/01_automation/assets/admin_screen_capture/dashboard.png +0 -0
  398. package/sdd/99_toolchain/01_automation/assets/admin_screen_capture/login.png +0 -0
  399. package/sdd/99_toolchain/01_automation/assets/admin_screen_capture/queue.png +0 -0
  400. package/sdd/99_toolchain/01_automation/assets/admin_screen_capture/support.png +0 -0
  401. package/sdd/99_toolchain/01_automation/assets/landing_screen_capture/home.png +0 -0
  402. package/sdd/99_toolchain/01_automation/assets/landing_screen_capture/login.png +0 -0
  403. package/sdd/99_toolchain/01_automation/assets/landing_screen_capture/workspace.png +0 -0
  404. package/sdd/99_toolchain/01_automation/assets/mobile_screen_capture/dashboard.png +0 -0
  405. package/sdd/99_toolchain/01_automation/assets/mobile_screen_capture/fulfillment.png +0 -0
  406. package/sdd/99_toolchain/01_automation/assets/mobile_screen_capture/login.png +0 -0
  407. package/sdd/99_toolchain/01_automation/assets/web_screen_capture/dashboard.png +0 -0
  408. package/sdd/99_toolchain/01_automation/assets/web_screen_capture/login.png +0 -0
  409. package/sdd/99_toolchain/01_automation/assets/web_screen_capture/orders.png +0 -0
  410. package/sdd/99_toolchain/01_automation/build_asset_recipes.py +0 -10
  411. package/sdd/99_toolchain/01_automation/build_screen_spec_pdf.py +0 -427
  412. package/sdd/99_toolchain/01_automation/capture_screen_assets.mjs +0 -148
  413. package/sdd/99_toolchain/01_automation/harness-layout.md +0 -34
  414. package/sdd/99_toolchain/01_automation/parity-execution-tooling-design.md +0 -319
  415. package/sdd/99_toolchain/01_automation/playwright_exactness_manifest.py +0 -21
  416. package/sdd/99_toolchain/01_automation/run_playwright_exactness.py +0 -87
  417. package/sdd/99_toolchain/01_automation/screen_spec_manifest.py +0 -321
  418. package/sdd/99_toolchain/01_automation/spec_asset_builder.py +0 -274
  419. package/sdd/99_toolchain/01_automation/ui-contract-projection.md +0 -79
  420. package/sdd/99_toolchain/01_automation/ui-parity/README.md +0 -60
  421. package/sdd/99_toolchain/01_automation/ui-parity/cli/extract-reference-pages.mjs +0 -2
  422. package/sdd/99_toolchain/01_automation/ui-parity/cli/materialize-reference-assets.mjs +0 -58
  423. package/sdd/99_toolchain/01_automation/ui-parity/cli/normalize-reference-assets.mjs +0 -2
  424. package/sdd/99_toolchain/01_automation/ui-parity/cli/route-gap-report.mjs +0 -187
  425. package/sdd/99_toolchain/01_automation/ui-parity/cli/run-proof.mjs +0 -50
  426. package/sdd/99_toolchain/01_automation/ui-parity/cli/scaffold-contract.mjs +0 -62
  427. package/sdd/99_toolchain/01_automation/ui-parity/cli/upload-parity1.mjs +0 -2
  428. package/sdd/99_toolchain/01_automation/ui-parity/contracts/collector-metadata.schema.json +0 -33
  429. package/sdd/99_toolchain/01_automation/ui-parity/contracts/proof-result.schema.json +0 -76
  430. package/sdd/99_toolchain/01_automation/ui-parity/contracts/route-gap-report.schema.json +0 -95
  431. package/sdd/99_toolchain/01_automation/ui-parity/core/capture-runner.mjs +0 -55
  432. package/sdd/99_toolchain/01_automation/ui-parity/core/load-adapter.mjs +0 -25
  433. package/sdd/99_toolchain/01_automation/ui-parity/core/load-contract.mjs +0 -81
  434. package/sdd/99_toolchain/01_automation/ui-parity/core/paths.mjs +0 -23
  435. package/sdd/99_toolchain/01_automation/ui-parity/core/proof-runner.mjs +0 -255
  436. package/sdd/99_toolchain/01_automation/ui-parity/interfaces/ui-parity-artifact-layout.md +0 -23
  437. package/sdd/99_toolchain/01_automation/ui-parity/interfaces/ui-parity-proof-interface.md +0 -60
  438. package/sdd/99_toolchain/01_automation/ui-parity/interfaces/ui-parity-route-gap-interface.md +0 -82
  439. package/sdd/99_toolchain/01_automation/ui-parity/runtime/playwright-runtime.mjs +0 -16
  440. package/sdd/99_toolchain/01_automation/ui-parity/runtime/static-runtime.mjs +0 -6
  441. package/sdd/99_toolchain/02_policies/.gitkeep +0 -1
  442. package/sdd/99_toolchain/02_policies/build-ast-governance-policy.md +0 -22
  443. package/sdd/99_toolchain/02_policies/compose-runtime-baseline-policy.md +0 -24
  444. package/sdd/99_toolchain/02_policies/convention-storage-policy.md +0 -26
  445. package/sdd/99_toolchain/02_policies/main-push-before-dev-deploy-policy.md +0 -27
  446. package/sdd/99_toolchain/02_policies/regression-verification-policy.md +0 -22
  447. package/sdd/99_toolchain/03_templates/.gitkeep +0 -1
  448. package/sdd/99_toolchain/03_templates/asset_recipe_manifest.example.py +0 -38
  449. package/sdd/99_toolchain/03_templates/generated_assets/README.md +0 -11
  450. package/sdd/99_toolchain/03_templates/generated_assets/example-brand-lockup.svg +0 -3
  451. package/sdd/99_toolchain/03_templates/generated_assets/example-brand-mark.svg +0 -3
  452. package/sdd/99_toolchain/03_templates/generated_assets/example-brand-wordmark.svg +0 -3
  453. package/sdd/99_toolchain/03_templates/playwright_exactness_manifest.example.py +0 -21
  454. package/sdd/99_toolchain/README.md +0 -23
  455. package/sdd/README.md +0 -21
  456. package/server/.dockerignore +0 -4
  457. package/server/.env.example +0 -19
  458. package/server/Dockerfile +0 -22
  459. package/server/Dockerfile.dev +0 -19
  460. package/server/README.md +0 -33
  461. package/server/__init__.py +0 -0
  462. package/server/api/__init__.py +0 -1
  463. package/server/api/http/__init__.py +0 -4
  464. package/server/api/http/app.py +0 -53
  465. package/server/api/http/router.py +0 -24
  466. package/server/config.py +0 -52
  467. package/server/contexts/__init__.py +0 -12
  468. package/server/contexts/alerts/__init__.py +0 -1
  469. package/server/contexts/alerts/application/__init__.py +0 -13
  470. package/server/contexts/alerts/application/services.py +0 -41
  471. package/server/contexts/alerts/contracts/__init__.py +0 -3
  472. package/server/contexts/alerts/contracts/http/__init__.py +0 -3
  473. package/server/contexts/alerts/contracts/http/router.py +0 -37
  474. package/server/contexts/alerts/domain/__init__.py +0 -15
  475. package/server/contexts/alerts/domain/models.py +0 -29
  476. package/server/contexts/alerts/infrastructure/__init__.py +0 -11
  477. package/server/contexts/alerts/infrastructure/repository.py +0 -41
  478. package/server/contexts/auth/__init__.py +0 -1
  479. package/server/contexts/auth/application/__init__.py +0 -3
  480. package/server/contexts/auth/application/ports.py +0 -10
  481. package/server/contexts/auth/application/services.py +0 -64
  482. package/server/contexts/auth/contracts/__init__.py +0 -4
  483. package/server/contexts/auth/contracts/http/__init__.py +0 -4
  484. package/server/contexts/auth/contracts/http/dependencies.py +0 -37
  485. package/server/contexts/auth/contracts/http/router.py +0 -19
  486. package/server/contexts/auth/domain/__init__.py +0 -3
  487. package/server/contexts/auth/domain/models.py +0 -24
  488. package/server/contexts/auth/infrastructure/__init__.py +0 -4
  489. package/server/contexts/auth/infrastructure/adapters/memory.py +0 -19
  490. package/server/contexts/auth/infrastructure/adapters/mongodb.py +0 -24
  491. package/server/contexts/auth/infrastructure/adapters/sqlalchemy.py +0 -74
  492. package/server/contexts/auth/infrastructure/repository.py +0 -28
  493. package/server/contexts/catalog/__init__.py +0 -1
  494. package/server/contexts/catalog/application/__init__.py +0 -28
  495. package/server/contexts/catalog/application/ports.py +0 -15
  496. package/server/contexts/catalog/application/services.py +0 -154
  497. package/server/contexts/catalog/contracts/__init__.py +0 -3
  498. package/server/contexts/catalog/contracts/http/__init__.py +0 -3
  499. package/server/contexts/catalog/contracts/http/router.py +0 -60
  500. package/server/contexts/catalog/domain/__init__.py +0 -45
  501. package/server/contexts/catalog/domain/models.py +0 -113
  502. package/server/contexts/catalog/infrastructure/__init__.py +0 -4
  503. package/server/contexts/catalog/infrastructure/adapters/memory.py +0 -62
  504. package/server/contexts/catalog/infrastructure/repository.py +0 -8
  505. package/server/contexts/fulfillment/__init__.py +0 -1
  506. package/server/contexts/fulfillment/application/__init__.py +0 -13
  507. package/server/contexts/fulfillment/application/ports.py +0 -20
  508. package/server/contexts/fulfillment/application/services.py +0 -85
  509. package/server/contexts/fulfillment/contracts/__init__.py +0 -3
  510. package/server/contexts/fulfillment/contracts/http/__init__.py +0 -3
  511. package/server/contexts/fulfillment/contracts/http/router.py +0 -40
  512. package/server/contexts/fulfillment/domain/__init__.py +0 -25
  513. package/server/contexts/fulfillment/domain/models.py +0 -73
  514. package/server/contexts/fulfillment/infrastructure/__init__.py +0 -13
  515. package/server/contexts/fulfillment/infrastructure/adapters/memory.py +0 -43
  516. package/server/contexts/fulfillment/infrastructure/repository.py +0 -97
  517. package/server/contexts/health/__init__.py +0 -1
  518. package/server/contexts/health/application/__init__.py +0 -3
  519. package/server/contexts/health/application/services.py +0 -2
  520. package/server/contexts/health/contracts/__init__.py +0 -3
  521. package/server/contexts/health/contracts/http/__init__.py +0 -3
  522. package/server/contexts/health/contracts/http/router.py +0 -10
  523. package/server/contexts/inventory/__init__.py +0 -1
  524. package/server/contexts/inventory/application/__init__.py +0 -28
  525. package/server/contexts/inventory/application/ports.py +0 -11
  526. package/server/contexts/inventory/application/services.py +0 -214
  527. package/server/contexts/inventory/contracts/__init__.py +0 -3
  528. package/server/contexts/inventory/contracts/http/__init__.py +0 -3
  529. package/server/contexts/inventory/contracts/http/router.py +0 -82
  530. package/server/contexts/inventory/domain/__init__.py +0 -33
  531. package/server/contexts/inventory/domain/models.py +0 -93
  532. package/server/contexts/inventory/infrastructure/__init__.py +0 -4
  533. package/server/contexts/inventory/infrastructure/adapters/memory.py +0 -24
  534. package/server/contexts/inventory/infrastructure/repository.py +0 -8
  535. package/server/contexts/orders/__init__.py +0 -1
  536. package/server/contexts/orders/application/__init__.py +0 -19
  537. package/server/contexts/orders/application/services.py +0 -127
  538. package/server/contexts/orders/contracts/__init__.py +0 -3
  539. package/server/contexts/orders/contracts/http/__init__.py +0 -3
  540. package/server/contexts/orders/contracts/http/router.py +0 -82
  541. package/server/contexts/orders/domain/__init__.py +0 -29
  542. package/server/contexts/orders/domain/models.py +0 -95
  543. package/server/contexts/orders/infrastructure/__init__.py +0 -7
  544. package/server/contexts/orders/infrastructure/repository.py +0 -104
  545. package/server/contexts/shipping/__init__.py +0 -1
  546. package/server/contexts/shipping/application/__init__.py +0 -13
  547. package/server/contexts/shipping/application/services.py +0 -92
  548. package/server/contexts/shipping/contracts/__init__.py +0 -3
  549. package/server/contexts/shipping/contracts/http/__init__.py +0 -3
  550. package/server/contexts/shipping/contracts/http/router.py +0 -40
  551. package/server/contexts/shipping/domain/__init__.py +0 -19
  552. package/server/contexts/shipping/domain/models.py +0 -48
  553. package/server/contexts/shipping/infrastructure/__init__.py +0 -9
  554. package/server/contexts/shipping/infrastructure/repository.py +0 -50
  555. package/server/contexts/support/__init__.py +0 -1
  556. package/server/contexts/support/application/__init__.py +0 -13
  557. package/server/contexts/support/application/services.py +0 -29
  558. package/server/contexts/support/contracts/__init__.py +0 -3
  559. package/server/contexts/support/contracts/http/__init__.py +0 -3
  560. package/server/contexts/support/contracts/http/router.py +0 -40
  561. package/server/contexts/support/domain/__init__.py +0 -13
  562. package/server/contexts/support/domain/models.py +0 -27
  563. package/server/contexts/support/infrastructure/__init__.py +0 -11
  564. package/server/contexts/support/infrastructure/repository.py +0 -70
  565. package/server/contexts/user/__init__.py +0 -1
  566. package/server/contexts/user/application/__init__.py +0 -3
  567. package/server/contexts/user/application/ports.py +0 -11
  568. package/server/contexts/user/application/services.py +0 -44
  569. package/server/contexts/user/contracts/__init__.py +0 -3
  570. package/server/contexts/user/contracts/http/__init__.py +0 -3
  571. package/server/contexts/user/contracts/http/router.py +0 -26
  572. package/server/contexts/user/domain/__init__.py +0 -3
  573. package/server/contexts/user/domain/models.py +0 -22
  574. package/server/contexts/user/infrastructure/__init__.py +0 -3
  575. package/server/contexts/user/infrastructure/adapters/memory.py +0 -27
  576. package/server/contexts/user/infrastructure/adapters/mongodb.py +0 -41
  577. package/server/contexts/user/infrastructure/adapters/sqlalchemy.py +0 -94
  578. package/server/contexts/user/infrastructure/factory.py +0 -28
  579. package/server/data/README.md +0 -24
  580. package/server/data/bootstrap/alerts.json +0 -38
  581. package/server/data/bootstrap/auth_accounts.json +0 -18
  582. package/server/data/bootstrap/catalog_products.json +0 -179
  583. package/server/data/bootstrap/fulfillment_events.json +0 -5
  584. package/server/data/bootstrap/fulfillment_notes.json +0 -5
  585. package/server/data/bootstrap/fulfillment_tasks.json +0 -50
  586. package/server/data/bootstrap/inventory_levels.json +0 -80
  587. package/server/data/bootstrap/orders.json +0 -62
  588. package/server/data/bootstrap/shipping_shipments.json +0 -50
  589. package/server/data/bootstrap/support_faqs.json +0 -26
  590. package/server/data/bootstrap/users.json +0 -20
  591. package/server/data/bootstrap_loader.py +0 -15
  592. package/server/docker-entrypoint.sh +0 -56
  593. package/server/main.py +0 -3
  594. package/server/pyproject.toml +0 -36
  595. package/server/shared/__init__.py +0 -1
  596. package/server/shared/application/__init__.py +0 -3
  597. package/server/shared/application/health.py +0 -2
  598. package/server/shared/infrastructure/__init__.py +0 -10
  599. package/server/shared/infrastructure/runtime.py +0 -6
  600. package/server/shared/infrastructure/security.py +0 -33
  601. package/server/tests/e2e/test_domain_feature_flows.py +0 -483
  602. package/server/tests/test_health.py +0 -49
  603. package/server/uv.lock +0 -1169
package/.agent/ralph.sh DELETED
@@ -1,305 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- set -euo pipefail
4
-
5
- ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
6
- AGENT_DIR="$ROOT_DIR/.agent"
7
- PRD_FILE="$AGENT_DIR/prd.json"
8
- PROMPT_FILE="$AGENT_DIR/prompt.md"
9
- PROGRESS_FILE="$AGENT_DIR/progress.txt"
10
- RUNS_DIR="$AGENT_DIR/runs"
11
- STATE_FILE="$AGENT_DIR/ralph-loop-state.json"
12
-
13
- story_id=""
14
- max_iterations=12
15
- completion_promise="STORY_COMPLETE"
16
- prompt_file="$PROMPT_FILE"
17
- run_label=""
18
- sleep_seconds=0
19
- dry_run=0
20
-
21
- usage() {
22
- cat <<'EOF'
23
- Usage:
24
- .agent/ralph.sh [story_id]
25
- .agent/ralph.sh --story-id MOB-EXACT-AUTH-001 --max-iterations 20
26
-
27
- Options:
28
- --story-id ID Ralph story id from .agent/prd.json
29
- --max-iterations N Maximum codex iterations to run
30
- --completion-promise TXT Promise token to detect in codex output
31
- --prompt-file PATH Base prompt markdown file
32
- --run-label LABEL Optional run label for the log directory
33
- --sleep-seconds N Sleep between iterations
34
- --dry-run Do not invoke codex exec; only emit prompt snapshots
35
- -h, --help Show help
36
-
37
- Behavior:
38
- - Select the first in_progress/pending story when no story id is given
39
- - Run codex exec in a loop until the completion promise is observed
40
- - Persist per-iteration prompt/output/status artifacts under .agent/runs/
41
- - Append monitor lines to .agent/progress.txt
42
- EOF
43
- }
44
-
45
- require_file() {
46
- local file_path="$1"
47
- if [[ ! -f "$file_path" ]]; then
48
- echo "Missing required file: $file_path" >&2
49
- exit 1
50
- fi
51
- }
52
-
53
- select_story() {
54
- if [[ -n "$story_id" ]]; then
55
- return 0
56
- fi
57
-
58
- story_id="$(
59
- jq -r '
60
- .stories
61
- | map(select(.status == "in_progress" or .status == "pending"))
62
- | sort_by(.priority)
63
- | .[0].id // empty
64
- ' "$PRD_FILE"
65
- )"
66
-
67
- if [[ -z "$story_id" ]]; then
68
- echo "No open Ralph story found." >&2
69
- exit 1
70
- fi
71
- }
72
-
73
- load_story_payload() {
74
- jq -c --arg id "$story_id" '.stories[] | select(.id == $id)' "$PRD_FILE"
75
- }
76
-
77
- write_state() {
78
- local iteration="$1"
79
- local status="$2"
80
- local promise_seen="$3"
81
- local output_file="$4"
82
- local prompt_snapshot="$5"
83
- local exit_code="$6"
84
- local changed_files_json="$7"
85
-
86
- cat >"$STATE_FILE" <<EOF
87
- {
88
- "updated_at": "$(date -u +"%Y-%m-%dT%H:%M:%SZ")",
89
- "story_id": "$story_id",
90
- "max_iterations": $max_iterations,
91
- "current_iteration": $iteration,
92
- "status": "$status",
93
- "completion_promise": "$completion_promise",
94
- "promise_seen": $promise_seen,
95
- "last_exit_code": $exit_code,
96
- "prompt_snapshot": "${prompt_snapshot#$ROOT_DIR/}",
97
- "output_file": "${output_file#$ROOT_DIR/}",
98
- "changed_files": $changed_files_json
99
- }
100
- EOF
101
- }
102
-
103
- snapshot_prompt() {
104
- local destination="$1"
105
- local story_payload="$2"
106
- local iteration="$3"
107
-
108
- cat "$prompt_file" >"$destination"
109
- cat >>"$destination" <<EOF
110
-
111
- Loop control:
112
- - You are executing one iteration of a persistent Ralph loop runner.
113
- - Current iteration: $iteration / $max_iterations
114
- - Story id: $story_id
115
- - Completion promise token: <promise>$completion_promise</promise>
116
- - If and only if the requested story is actually complete and all validations pass in this iteration, print exactly:
117
- <promise>$completion_promise</promise>
118
- - If the story is not complete, do not print the promise token.
119
-
120
- Current story payload:
121
- $(printf '%s\n' "$story_payload" | jq .)
122
- EOF
123
- }
124
-
125
- append_progress_monitor_line() {
126
- local iteration="$1"
127
- local status="$2"
128
- local promise_seen="$3"
129
- local exit_code="$4"
130
- echo "$(date +%F) monitor iteration-$iteration story=$story_id status=$status promise=$promise_seen exit=$exit_code" >>"$PROGRESS_FILE"
131
- }
132
-
133
- main() {
134
- require_file "$PRD_FILE"
135
- require_file "$prompt_file"
136
- require_file "$PROGRESS_FILE"
137
-
138
- if [[ $# -gt 0 && "${1:-}" != --* ]]; then
139
- story_id="$1"
140
- shift
141
- fi
142
-
143
- while [[ $# -gt 0 ]]; do
144
- case "$1" in
145
- --story-id)
146
- story_id="${2:-}"
147
- shift 2
148
- ;;
149
- --max-iterations)
150
- max_iterations="${2:-}"
151
- shift 2
152
- ;;
153
- --completion-promise)
154
- completion_promise="${2:-}"
155
- shift 2
156
- ;;
157
- --prompt-file)
158
- prompt_file="${2:-}"
159
- shift 2
160
- ;;
161
- --run-label)
162
- run_label="${2:-}"
163
- shift 2
164
- ;;
165
- --sleep-seconds)
166
- sleep_seconds="${2:-}"
167
- shift 2
168
- ;;
169
- --dry-run)
170
- dry_run=1
171
- shift
172
- ;;
173
- -h|--help)
174
- usage
175
- exit 0
176
- ;;
177
- *)
178
- echo "Unknown argument: $1" >&2
179
- usage >&2
180
- exit 2
181
- ;;
182
- esac
183
- done
184
-
185
- if ! [[ "$max_iterations" =~ ^[0-9]+$ ]] || [[ "$max_iterations" -lt 1 ]]; then
186
- echo "--max-iterations must be a positive integer" >&2
187
- exit 2
188
- fi
189
-
190
- if ! [[ "$sleep_seconds" =~ ^[0-9]+$ ]] || [[ "$sleep_seconds" -lt 0 ]]; then
191
- echo "--sleep-seconds must be a non-negative integer" >&2
192
- exit 2
193
- fi
194
-
195
- select_story
196
-
197
- local story_payload
198
- story_payload="$(load_story_payload)"
199
- if [[ -z "$story_payload" ]]; then
200
- echo "Story not found: $story_id" >&2
201
- exit 1
202
- fi
203
-
204
- if [[ $dry_run -eq 0 ]] && ! command -v codex >/dev/null 2>&1; then
205
- echo "codex command not found in PATH" >&2
206
- exit 1
207
- fi
208
-
209
- mkdir -p "$RUNS_DIR"
210
- local run_id
211
- run_id="$(date +%Y%m%d-%H%M%S)"
212
- if [[ -n "$run_label" ]]; then
213
- run_id="$run_id-$run_label"
214
- fi
215
- local run_dir="$RUNS_DIR/$run_id-$story_id"
216
- mkdir -p "$run_dir"
217
-
218
- local iteration=1
219
- local final_status="max_iterations_reached"
220
- local promise_seen=false
221
-
222
- while [[ "$iteration" -le "$max_iterations" ]]; do
223
- story_payload="$(load_story_payload)"
224
- if [[ -z "$story_payload" ]]; then
225
- echo "Story disappeared from PRD: $story_id" >&2
226
- final_status="story_missing"
227
- break
228
- fi
229
-
230
- local prompt_snapshot="$run_dir/iteration-$iteration.prompt.md"
231
- local output_file="$run_dir/iteration-$iteration.output.log"
232
- local changed_files_file="$run_dir/iteration-$iteration.changed-files.txt"
233
- local status_file="$run_dir/iteration-$iteration.status.json"
234
-
235
- snapshot_prompt "$prompt_snapshot" "$story_payload" "$iteration"
236
-
237
- echo "[ralph] iteration $iteration/$max_iterations story=$story_id"
238
- echo "[ralph] prompt: ${prompt_snapshot#$ROOT_DIR/}"
239
-
240
- local exit_code=0
241
- if [[ $dry_run -eq 1 ]]; then
242
- printf '[ralph] dry-run: codex exec skipped\n' | tee "$output_file" >/dev/null
243
- final_status="dry_run"
244
- else
245
- set +e
246
- codex exec -s danger-full-access -C "$ROOT_DIR" - <"$prompt_snapshot" | tee "$output_file"
247
- exit_code=${PIPESTATUS[0]}
248
- set -e
249
- fi
250
-
251
- git status --short >"$changed_files_file"
252
- local changed_files_json
253
- changed_files_json="$(
254
- jq -R -s '
255
- split("\n")
256
- | map(select(length > 0))
257
- ' "$changed_files_file"
258
- )"
259
-
260
- if rg -q "<promise>${completion_promise}</promise>" "$output_file"; then
261
- promise_seen=true
262
- final_status="completed"
263
- elif [[ "$exit_code" -eq 0 ]]; then
264
- final_status="iteration_pass_no_promise"
265
- else
266
- final_status="iteration_failed"
267
- fi
268
-
269
- write_state "$iteration" "$final_status" "$promise_seen" "$output_file" "$prompt_snapshot" "$exit_code" "$changed_files_json"
270
- cat >"$status_file" <<EOF
271
- {
272
- "iteration": $iteration,
273
- "story_id": "$story_id",
274
- "exit_code": $exit_code,
275
- "status": "$final_status",
276
- "promise_seen": $promise_seen,
277
- "output_file": "${output_file#$ROOT_DIR/}",
278
- "changed_files_file": "${changed_files_file#$ROOT_DIR/}"
279
- }
280
- EOF
281
- append_progress_monitor_line "$iteration" "$final_status" "$promise_seen" "$exit_code"
282
-
283
- echo "[ralph] status=$final_status exit=$exit_code promise=$promise_seen"
284
- echo "[ralph] changed-files: ${changed_files_file#$ROOT_DIR/}"
285
-
286
- if [[ "$promise_seen" == "true" ]]; then
287
- break
288
- fi
289
-
290
- iteration=$((iteration + 1))
291
- if [[ "$iteration" -le "$max_iterations" && "$sleep_seconds" -gt 0 ]]; then
292
- sleep "$sleep_seconds"
293
- fi
294
- done
295
-
296
- echo "[ralph] final_status=$final_status story=$story_id run_dir=${run_dir#$ROOT_DIR/}"
297
-
298
- if [[ "$final_status" == "completed" || "$final_status" == "dry_run" ]]; then
299
- exit 0
300
- fi
301
-
302
- exit 1
303
- }
304
-
305
- main "$@"
@@ -1,7 +0,0 @@
1
- # Ralph Runs
2
-
3
- 이 디렉터리는 Ralph loop run artifact를 보관하는 작업용 경로다.
4
-
5
- - commit 대상은 아니다.
6
- - canonical scaffold는 디렉터리 구조와 file naming만 제공한다.
7
- - 실제 run 산출물은 `.gitignore`로 제외한다.
@@ -1,13 +0,0 @@
1
- {
2
- "scores": {
3
- "ast_similarity": 10,
4
- "implementation_traceability": 10,
5
- "human_agent_readability": 10
6
- },
7
- "all_ten": true,
8
- "findings": {
9
- "ast_similarity": [],
10
- "implementation_traceability": [],
11
- "human_agent_readability": []
12
- }
13
- }
package/.claude/CLAUDE.md DELETED
@@ -1,44 +0,0 @@
1
- # CLAUDE.md
2
-
3
- ## What This Is
4
-
5
- 범용 웹 제품 템플릿에서 Claude/Codex 실행 규칙과 자동화 하네스 위치를 설명하는 문서다.
6
-
7
- ## Environment Naming Policy
8
-
9
- - 문서/대화/로그에서 실행 환경은 항상 `DEV(개발계)`로 표기한다.
10
- - `local`, `localhost 환경` 같은 표현은 운영 용어로 사용하지 않는다.
11
-
12
- ## Harness Layout
13
-
14
- ```text
15
- templates/
16
- ├── .agent/ # Ralph loop harness, PRD scaffold, run state
17
- ├── .claude/ # Claude 설정
18
- │ ├── agents/ # Claude role agents
19
- │ └── skills/ # Claude Code repo-local skills (.claude/skills/<name>/SKILL.md)
20
- ├── .codex/ # Codex 설정, 에이전트, 스킬
21
- ├── client/
22
- │ ├── web/ # 일반 앱 템플릿
23
- │ ├── admin/ # 어드민 템플릿
24
- │ ├── mobile/ # 현장형 모바일 템플릿
25
- │ └── landing/ # 랜딩 템플릿
26
- ├── server/ # HTTP 서버 템플릿
27
- └── sdd/ # toolchain 정책/자동화 문서
28
- ```
29
-
30
- ## Working Rules
31
-
32
- - 컨벤션과 실행 규칙의 정본은 `sdd/99_toolchain/02_policies`에 둔다.
33
- - DEV 반영이 필요한 작업은 항상 `main push -> DEV 배포 -> DEV 검증` 순서를 따른다.
34
- - 템플릿은 특정 서비스/도메인/실환경에 종속된 문자열, URL, 자격증명, 브라우저 상태를 포함하지 않는다.
35
- - 브라우저 자동화 예시는 generic 흐름만 제공하고, 실제 실행 산출물이나 프로필 데이터는 저장하지 않는다.
36
- - `sdd/03_build`는 runtime assembly를 설명하는 current-state 문서이며 dated execution narrative를 남기지 않는다.
37
- - AST-style build current-state 적합성은 `scripts/dev/audit_sdd_build_ast.py`로 검증한다.
38
-
39
- ## Claude Skills
40
-
41
- - Claude Code 최신 project skill 표면은 `.claude/skills/<name>/SKILL.md`다.
42
- - Claude Code의 custom commands와 skills는 merge된 표면으로 취급한다. 이 템플릿은 공식 skills 디렉터리 구조를 기본값으로 쓴다.
43
- - Codex와 Claude가 같은 실행 하네스를 공유해야 할 때는 `.codex/skills/*`의 정본 스크립트와 계약을 재사용하고, Claude skill은 그 진입 규칙과 운영 가이드를 얇게 감싼다.
44
- - 기본 제공 표면은 `otro`, `planning-with-files`, `ralph-loop`, `commit`, `dev-browser`, `prd`, `sdd`, `sdd-development`다.
@@ -1,3 +0,0 @@
1
- {
2
- "contract_path": "../sdd/99_toolchain/01_automation/agentic-dev/repo-contract.json"
3
- }
@@ -1,27 +0,0 @@
1
- ---
2
- name: ai-dev
3
- description: AI, LLM, RAG, agent runtime 관련 변경을 담당하는 generic specialist.
4
- model: opus
5
- tools:
6
- - Read
7
- - Write
8
- - Edit
9
- - Grep
10
- - Glob
11
- - Bash(python:*)
12
- permissionMode: ask
13
- ---
14
-
15
- # AI And Agent Runtime Specialist
16
-
17
- Focus:
18
- - model/provider integration
19
- - prompt contract
20
- - retrieval and context assembly
21
- - structured output validation
22
- - agent workflow boundaries
23
-
24
- Rules:
25
- - Keep provider-specific secrets and tenant data out of the template.
26
- - Prefer portable contracts and thin integration seams.
27
- - Record runtime or orchestration contract changes in `sdd/`.
@@ -1,26 +0,0 @@
1
- ---
2
- name: backend-dev
3
- description: DDD, API, application service, contract, infra adapter 변경을 담당하는 generic backend specialist.
4
- model: opus
5
- tools:
6
- - Read
7
- - Write
8
- - Edit
9
- - Grep
10
- - Glob
11
- - Bash(python:*)
12
- permissionMode: ask
13
- ---
14
-
15
- # Backend DDD Specialist
16
-
17
- Focus:
18
- - domain, application, contract, infrastructure split
19
- - HTTP/API boundary compatibility
20
- - persistence adapter and runtime wiring
21
- - backend verification and regression scope
22
-
23
- Rules:
24
- - Preserve hexagonal boundaries.
25
- - Prefer explicit contracts over implicit shared state.
26
- - Keep `sdd/03_build` as current-state summary, not execution log.
@@ -1,26 +0,0 @@
1
- ---
2
- name: db-dev
3
- description: relational, document, key-value storage adapter와 schema boundary를 다루는 specialist.
4
- model: opus
5
- tools:
6
- - Read
7
- - Write
8
- - Edit
9
- - Grep
10
- - Glob
11
- - Bash(python:*)
12
- permissionMode: ask
13
- ---
14
-
15
- # Data And Persistence Specialist
16
-
17
- Focus:
18
- - schema and aggregate persistence shape
19
- - repository adapter seams
20
- - migration and compatibility risk
21
- - data contract traceability
22
-
23
- Rules:
24
- - Keep template defaults generic.
25
- - Separate persistence concerns from domain logic.
26
- - Document backend data surface changes in `sdd/04_data`, `06_iac`, `03_verify`.
@@ -1,27 +0,0 @@
1
- ---
2
- name: devops
3
- description: compose, Terraform, CI/CD, deployment wiring을 담당하는 generic DevOps specialist.
4
- model: opus
5
- tools:
6
- - Read
7
- - Write
8
- - Edit
9
- - Grep
10
- - Glob
11
- - Bash(docker:*)
12
- - Bash(terraform:*)
13
- permissionMode: ask
14
- ---
15
-
16
- # DevOps And Delivery Specialist
17
-
18
- Focus:
19
- - compose and runtime entrypoints
20
- - provider-first IaC
21
- - pipeline and deployment order
22
- - environment contract and secret boundary
23
-
24
- Rules:
25
- - Follow `main push -> DEV deploy -> DEV verify`.
26
- - Keep AWS edge/data and OpenStack compute responsibilities explicit.
27
- - Do not hardcode service credentials in template assets.
@@ -1,25 +0,0 @@
1
- ---
2
- name: frontend-dev
3
- description: React/Vite/Tailwind 기반 UI runtime과 route shell을 다루는 generic frontend specialist.
4
- model: opus
5
- tools:
6
- - Read
7
- - Write
8
- - Edit
9
- - Grep
10
- - Glob
11
- permissionMode: ask
12
- ---
13
-
14
- # Frontend Runtime Specialist
15
-
16
- Focus:
17
- - entrypoint, provider, router, shell composition
18
- - screen contract and UI parity
19
- - typed API integration
20
- - route-level regression scope
21
-
22
- Rules:
23
- - Preserve runtime tree readability from `main.tsx` down to route leaves.
24
- - Prefer product-grade patterns over placeholder scaffolds.
25
- - Record UI structure changes in `sdd/03_build` and `03_verify`.
@@ -1,25 +0,0 @@
1
- ---
2
- name: github-ops
3
- description: GitHub workflow, repository automation, branch delivery path를 다루는 specialist.
4
- model: opus
5
- tools:
6
- - Read
7
- - Write
8
- - Edit
9
- - Grep
10
- - Glob
11
- permissionMode: ask
12
- ---
13
-
14
- # GitHub Operations Specialist
15
-
16
- Focus:
17
- - workflow and action wiring
18
- - release and deployment triggers
19
- - repository automation contracts
20
- - proof artifact retention
21
-
22
- Rules:
23
- - Keep workflow behavior deterministic.
24
- - Prefer repo-local scripts and contracts over duplicated shell snippets.
25
- - Reflect automation contract changes in `sdd/99_toolchain`.
@@ -1,26 +0,0 @@
1
- ---
2
- name: test-dev
3
- description: 회귀 검수 범위, builder output, verification harness를 다루는 specialist.
4
- model: opus
5
- tools:
6
- - Read
7
- - Write
8
- - Edit
9
- - Grep
10
- - Glob
11
- - Bash(pytest:*)
12
- permissionMode: ask
13
- ---
14
-
15
- # Verification Specialist
16
-
17
- Focus:
18
- - regression scope selection
19
- - builder and generated asset verification
20
- - command-level gate evidence
21
- - residual risk documentation
22
-
23
- Rules:
24
- - Verify direct, upstream, downstream, and shared surfaces when applicable.
25
- - Keep validation evidence in `sdd/03_verify`.
26
- - Treat missing automation as a documented gap, not a silent skip.
@@ -1,25 +0,0 @@
1
- ---
2
- name: uiux-designer
3
- description: screen structure, design contract, parity surface를 다루는 generic UI/UX specialist.
4
- model: opus
5
- tools:
6
- - Read
7
- - Write
8
- - Edit
9
- - Grep
10
- - Glob
11
- permissionMode: ask
12
- ---
13
-
14
- # UI UX Design Specialist
15
-
16
- Focus:
17
- - screen hierarchy and shell composition
18
- - design token and layout contract
19
- - proof capture and parity path
20
- - accessibility and responsive baseline
21
-
22
- Rules:
23
- - Preserve intentional structure instead of placeholder wireframes.
24
- - Keep proof assets and runtime DOM aligned.
25
- - Document design intent inside `sdd/01_planning` and `02_plan`.
@@ -1,49 +0,0 @@
1
- {
2
- "permissions": {
3
- "defaultMode": "bypassPermissions",
4
- "allow": [
5
- "Bash(git status*)",
6
- "Bash(git log*)",
7
- "Bash(git diff*)",
8
- "Bash(git branch*)",
9
- "Bash(git fetch*)",
10
- "Bash(git pull*)",
11
- "Bash(git stash*)",
12
- "Bash(git checkout -b *)",
13
- "Bash(git switch -c *)",
14
- "Bash(git add *)",
15
- "Bash(git commit *)",
16
- "Bash(git push -u *)",
17
- "Bash(git push origin *)",
18
- "Bash(git submodule *)",
19
- "Bash(gh pr create*)",
20
- "Bash(gh pr view*)",
21
- "Bash(gh pr list*)",
22
- "Bash(gh api *)",
23
- "Bash(npm run *)",
24
- "Bash(npm install*)",
25
- "Bash(pytest*)",
26
- "Bash(pip install*)",
27
- "Bash(python -m *)",
28
- "Bash(python3 -m *)",
29
- "Bash(docker compose *)",
30
- "Bash(curl *)"
31
- ],
32
- "ask": [
33
- "Bash(git push --force*)",
34
- "Bash(git push -f *)",
35
- "Bash(git reset --hard*)",
36
- "Bash(git checkout .)",
37
- "Bash(git clean *)",
38
- "Bash(git rebase *)",
39
- "Bash(gh pr merge*)",
40
- "Bash(gh pr close*)",
41
- "Bash(rm -rf *)",
42
- "Bash(rm -r *)"
43
- ],
44
- "deny": [
45
- "Bash(git push --force origin main)",
46
- "Bash(git push -f origin main)"
47
- ]
48
- }
49
- }
@@ -1,8 +0,0 @@
1
- {
2
- "permissions": {
3
- "allow": [
4
- "Bash(find . -type f \\\\\\( -name \"*.tsx\" -o -name \"*.jsx\" -o -name \"*.ts\" -o -name \"*.js\" \\\\\\) 2>/dev/null | head -30)",
5
- "WebFetch(domain:github.com)"
6
- ]
7
- }
8
- }