@tea-agent/loop-agent 0.13.0 → 0.14.0

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 (270) hide show
  1. package/AGENTS.md +157 -157
  2. package/CHANGELOG.md +73 -301
  3. package/README.md +338 -334
  4. package/bin/agent-worker.js +22 -22
  5. package/bin/loop-agent.js +21 -21
  6. package/dist/commands/cursor-prompt.js +6 -6
  7. package/dist/commands/init.js +505 -505
  8. package/dist/commands/loop-benchmark.js +11 -11
  9. package/dist/commands/pi-reuse-benchmark.js +16 -16
  10. package/dist/executors/pi-event-serializer.js +33 -11
  11. package/dist/sidecars/cursor-prompt/executor.js +1 -1
  12. package/dist/task/runtime.js +27 -27
  13. package/dist/worker/observe/spec-evidence.js +19 -10
  14. package/dist/worker/observe/static/api.js +46 -46
  15. package/dist/worker/observe/static/app.js +151 -150
  16. package/dist/worker/observe/static/constants.js +156 -148
  17. package/dist/worker/observe/static/copy.js +67 -67
  18. package/dist/worker/observe/static/dag-helpers.js +201 -172
  19. package/dist/worker/observe/static/dag-layout.d.ts +31 -31
  20. package/dist/worker/observe/static/dag-layout.js +83 -83
  21. package/dist/worker/observe/static/dag-model.js +72 -72
  22. package/dist/worker/observe/static/dom.js +122 -122
  23. package/dist/worker/observe/static/format-pool.d.ts +71 -0
  24. package/dist/worker/observe/static/format-pool.js +134 -67
  25. package/dist/worker/observe/static/format.js +317 -292
  26. package/dist/worker/observe/static/index.html +350 -308
  27. package/dist/worker/observe/static/kpi.js +100 -94
  28. package/dist/worker/observe/static/markdown-render.js +124 -0
  29. package/dist/worker/observe/static/relations.js +133 -133
  30. package/dist/worker/observe/static/router.js +93 -93
  31. package/dist/worker/observe/static/run-processing.js +148 -148
  32. package/dist/worker/observe/static/shell-chrome.js +74 -68
  33. package/dist/worker/observe/static/state.js +273 -267
  34. package/dist/worker/observe/static/styles.css +2504 -1902
  35. package/dist/worker/observe/static/views/batch.js +227 -227
  36. package/dist/worker/observe/static/views/dag-graph.js +172 -172
  37. package/dist/worker/observe/static/views/dag-inspector.js +530 -627
  38. package/dist/worker/observe/static/views/dag.js +371 -371
  39. package/dist/worker/observe/static/views/dashboard.js +86 -100
  40. package/dist/worker/observe/static/views/failures.js +143 -143
  41. package/dist/worker/observe/static/views/feature.js +492 -492
  42. package/dist/worker/observe/static/views/pool.js +708 -350
  43. package/dist/worker/observe/static/views/run.js +453 -453
  44. package/dist/worker/observe/static/views/session-timeline.js +771 -219
  45. package/dist/worker/observe/static/views/shell.js +7 -7
  46. package/dist/worker/observe/static/views/task.js +314 -314
  47. package/dist/worker/observe/static/views/timeline.js +163 -163
  48. package/dist/workflows/dag/canvas-observer.js +275 -275
  49. package/docs/README.md +105 -104
  50. package/docs/agent-dag-recovery-playbook.md +195 -195
  51. package/docs/agent-dag-runner.md +67 -67
  52. package/docs/architecture/README.md +26 -26
  53. package/docs/architecture/dag-execution.md +140 -140
  54. package/docs/architecture/evolution.md +54 -54
  55. package/docs/architecture/facts-and-state.md +71 -71
  56. package/docs/architecture/runtime-boundaries.md +191 -191
  57. package/docs/architecture/system-overview.md +93 -93
  58. package/docs/architecture/worker-and-feature.md +85 -85
  59. package/docs/cursor-prompt-sidecar.md +36 -36
  60. package/docs/decisions/README.md +18 -18
  61. package/docs/design/README.md +167 -167
  62. package/docs/development-principles.md +73 -73
  63. package/docs/exec-plans/README.md +6 -6
  64. package/docs/exec-plans/active/README.md +2 -1
  65. package/docs/exec-plans/completed/README.md +105 -104
  66. package/docs/feature-workflow.md +414 -414
  67. package/docs/harness-methodology-debugging.md +153 -153
  68. package/docs/harness-methodology-tdd.md +130 -130
  69. package/docs/harness-methodology-verification.md +27 -27
  70. package/docs/init-surface.manifest.json +307 -307
  71. package/docs/loop-agent-harness.md +142 -142
  72. package/docs/production-readiness.md +96 -96
  73. package/docs/progress/README.md +59 -58
  74. package/docs/reports/README.md +123 -119
  75. package/docs/skills/README.md +7 -7
  76. package/docs/skills/vetted-skill-registry.md +29 -29
  77. package/docs/templates/adr.md +60 -60
  78. package/docs/templates/agent-dag-authority-surface-audit.prompt.md +94 -94
  79. package/docs/templates/agent-dag-decision-envelope.schema.json +213 -213
  80. package/docs/templates/agent-dag-decision-gate-dogfood-report.md +117 -117
  81. package/docs/templates/agent-dag-decision-gate.prompt.md +246 -246
  82. package/docs/templates/agent-dag-process-supervisor.prompt.md +98 -98
  83. package/docs/templates/agent-dag-report.schema.json +473 -473
  84. package/docs/templates/agent-dag-review-verdict.prompt.md +68 -68
  85. package/docs/templates/agent-dag.base.json +190 -190
  86. package/docs/templates/agent-dag.final-verification.json +185 -185
  87. package/docs/templates/agent-dag.schema.json +411 -411
  88. package/docs/templates/agent-dag.supervised-implementation.json +620 -620
  89. package/docs/templates/backend-test-analysis.schema.json +44 -44
  90. package/docs/templates/backend-test-case-manifest.schema.json +190 -190
  91. package/docs/templates/backend-test-dag.classify.prompt.md +75 -75
  92. package/docs/templates/backend-test-dag.generate-pytest.prompt.md +204 -204
  93. package/docs/templates/backend-test-dag.json +559 -559
  94. package/docs/templates/backend-test-dag.retrospect.prompt.md +139 -139
  95. package/docs/templates/backend-test-dag.review-cases.prompt.md +83 -83
  96. package/docs/templates/backend-test-execution.schema.json +133 -133
  97. package/docs/templates/backend-test-result.schema.json +99 -99
  98. package/docs/templates/exec-plan.md +64 -64
  99. package/docs/templates/feature-spec.md +53 -53
  100. package/docs/templates/frontend-design-contract.md +42 -42
  101. package/docs/templates/frontend-eval/fixtures/failures/01-type-build-error.md +17 -17
  102. package/docs/templates/frontend-eval/fixtures/failures/02-unit-component-test-fail.md +16 -16
  103. package/docs/templates/frontend-eval/fixtures/failures/03-fixture-schema-drift.md +16 -16
  104. package/docs/templates/frontend-eval/fixtures/failures/04-missing-loading-empty-error-state.md +16 -16
  105. package/docs/templates/frontend-eval/fixtures/failures/05-forbidden-write-writeset-expansion.md +16 -16
  106. package/docs/templates/frontend-eval/fixtures/failures/06-unapproved-dependency-add.md +16 -16
  107. package/docs/templates/frontend-eval/fixtures/failures/07-mock-production-on.md +21 -21
  108. package/docs/templates/frontend-eval/fixtures/functional/01-simple-component-style.md +29 -29
  109. package/docs/templates/frontend-eval/fixtures/functional/02-form-validation.md +28 -28
  110. package/docs/templates/frontend-eval/fixtures/functional/03-list-detail-page.md +28 -28
  111. package/docs/templates/frontend-eval/fixtures/functional/04-api-mock.md +29 -29
  112. package/docs/templates/frontend-eval/fixtures/functional/05-permission-auth-gated-ui.md +27 -27
  113. package/docs/templates/frontend-eval/fixtures/functional/06-ssr-server-client-boundary.md +28 -28
  114. package/docs/templates/frontend-eval/fixtures/functional/07-shared-public-component-api.md +28 -28
  115. package/docs/templates/frontend-eval/fixtures/functional/08-pure-local-no-remote.md +27 -27
  116. package/docs/templates/frontend-eval/metrics.md +138 -138
  117. package/docs/templates/frontend-eval/smoke-targets.md +53 -53
  118. package/docs/templates/frontend-implementation-contract.schema.json +27 -27
  119. package/docs/templates/frontend-task-constraints.md +35 -35
  120. package/docs/templates/frontend-task-requirement.md +70 -70
  121. package/docs/templates/frontend-test-dag.generate-cases.prompt.md +5 -5
  122. package/docs/templates/frontend-test-dag.json +23 -23
  123. package/docs/templates/frontend-test-dag.retrieve-context.prompt.md +3 -3
  124. package/docs/templates/frontend-test-dag.retrospect.prompt.md +3 -3
  125. package/docs/templates/frontend-test-dag.review-cases.prompt.md +3 -3
  126. package/docs/templates/frontend-test-dag.review-execution.prompt.md +3 -3
  127. package/docs/templates/harness.schema.json +221 -221
  128. package/docs/templates/hybrid-dag.json +188 -188
  129. package/docs/templates/init-evolution-review.md +35 -35
  130. package/docs/templates/interactive-ui-round2-experiment.md +66 -66
  131. package/docs/templates/knowledge-graph-bootstrap-dag.json +118 -118
  132. package/docs/templates/knowledge-sync-dag.json +178 -178
  133. package/docs/templates/knowledge-sync-draft.schema.json +71 -71
  134. package/docs/templates/product-line/AGENTS.md +8 -8
  135. package/docs/templates/product-line/README.md +9 -9
  136. package/docs/templates/product-line/acceptance.yaml +14 -14
  137. package/docs/templates/product-line/closeout.yaml +9 -9
  138. package/docs/templates/product-line/design.md +13 -13
  139. package/docs/templates/product-line/links.md +10 -10
  140. package/docs/templates/product-line/requirement.md +17 -17
  141. package/docs/templates/product-line/task-graph.yaml +15 -15
  142. package/docs/templates/product-line/task.yaml +64 -64
  143. package/docs/templates/product-line/test-plan.md +7 -7
  144. package/docs/templates/production-readiness-checklist.md +57 -57
  145. package/docs/templates/progress-log.md +17 -17
  146. package/docs/templates/project-start-checklist.md +9 -9
  147. package/docs/templates/qa-report.md +48 -48
  148. package/docs/templates/sprint-contract.md +29 -29
  149. package/docs/templates/worker-dogfood-evidence.md +80 -80
  150. package/docs/templates/worker-dogfood-setup.md +68 -68
  151. package/docs/verification-matrix.md +70 -70
  152. package/examples/decision-gate-agent-dag.json +173 -173
  153. package/examples/example-dag.json +46 -46
  154. package/examples/hybrid-loop-agent-dag.json +188 -188
  155. package/harness.json +66 -66
  156. package/package.json +88 -52
  157. package/scripts/check-product-line-docs.sh +29 -29
  158. package/scripts/check-task-pool-root.sh +32 -32
  159. package/scripts/kb-bootstrap-init-skeleton.sh +240 -240
  160. package/scripts/kb-graph-incremental-prepare.mjs +386 -386
  161. package/scripts/kb-graph-incremental-prepare.sh +5 -5
  162. package/scripts/kb-graph-materialize.mjs +105 -105
  163. package/scripts/kb-graph-materialize.sh +4 -4
  164. package/scripts/kb-graph-promote.mjs +164 -164
  165. package/scripts/kb-graph-promote.sh +4 -4
  166. package/scripts/kb-query.mjs +554 -554
  167. package/scripts/kb-query.sh +5 -5
  168. package/skills/agent-worker/SKILL.md +39 -39
  169. package/skills/agent-worker/references/agent-worker-operator.md +60 -60
  170. package/skills/ai-engineering-context/SKILL.md +48 -48
  171. package/skills/analyze-product-dependencies/SKILL.md +67 -67
  172. package/skills/analyze-product-dependencies/agents/openai.yaml +4 -4
  173. package/skills/analyze-product-dependencies/references/api-documentation-schema.md +30 -30
  174. package/skills/analyze-product-dependencies/references/dependency-analysis-schema.md +28 -28
  175. package/skills/analyze-product-dependencies/references/example.md +76 -76
  176. package/skills/analyze-product-dependencies/references/forward-test-cases.md +35 -35
  177. package/skills/analyze-product-dependencies/references/input-contract.md +11 -11
  178. package/skills/analyze-product-dependencies/references/scouting-rules.md +61 -61
  179. package/skills/analyze-product-dependencies/scripts/test-validators.mjs +267 -267
  180. package/skills/analyze-product-dependencies/scripts/validate-api-documentation.mjs +101 -101
  181. package/skills/analyze-product-dependencies/scripts/validate-dependency-analysis.mjs +142 -142
  182. package/skills/analyze-product-dependencies/scripts/validate-product-requirement-input.mjs +76 -76
  183. package/skills/analyze-product-dependencies/scripts/validation-helpers.mjs +146 -146
  184. package/skills/analyze-product-requirements/SKILL.md +90 -90
  185. package/skills/analyze-product-requirements/agents/openai.yaml +4 -4
  186. package/skills/analyze-product-requirements/references/acceptance-criteria.md +91 -91
  187. package/skills/analyze-product-requirements/references/clarification-and-knowledge.md +56 -56
  188. package/skills/analyze-product-requirements/references/example.md +86 -86
  189. package/skills/analyze-product-requirements/references/forward-test-cases.md +66 -66
  190. package/skills/analyze-product-requirements/references/product-analysis-schema.md +32 -32
  191. package/skills/analyze-product-requirements/references/product-requirement-schema.md +33 -33
  192. package/skills/analyze-product-requirements/references/requirement-clarification-schema.md +35 -35
  193. package/skills/analyze-product-requirements/scripts/test-validators.mjs +193 -193
  194. package/skills/analyze-product-requirements/scripts/validate-product-analysis.mjs +69 -69
  195. package/skills/analyze-product-requirements/scripts/validate-product-requirement.mjs +97 -97
  196. package/skills/analyze-product-requirements/scripts/validate-requirement-clarification.mjs +98 -98
  197. package/skills/analyze-product-requirements/scripts/validation-helpers.mjs +156 -156
  198. package/skills/browser-tools/SKILL.md +196 -196
  199. package/skills/browser-tools/browser-content.js +103 -103
  200. package/skills/browser-tools/browser-cookies.js +35 -35
  201. package/skills/browser-tools/browser-eval.js +53 -53
  202. package/skills/browser-tools/browser-hn-scraper.js +108 -108
  203. package/skills/browser-tools/browser-nav.js +44 -44
  204. package/skills/browser-tools/browser-pick.js +162 -162
  205. package/skills/browser-tools/browser-screenshot.js +34 -34
  206. package/skills/browser-tools/browser-start.js +86 -86
  207. package/skills/browser-tools/package-lock.json +2556 -2556
  208. package/skills/browser-tools/package.json +19 -19
  209. package/skills/code-review-core/SKILL.md +20 -20
  210. package/skills/codebase-scout/SKILL.md +19 -19
  211. package/skills/frontend-design-review/SKILL.md +66 -66
  212. package/skills/frontend-design-review/references/review-checklist.md +58 -58
  213. package/skills/frontend-implementation/SKILL.md +49 -49
  214. package/skills/frontend-implementation/references/code-standards.md +32 -32
  215. package/skills/frontend-implementation/references/design-spec.md +46 -46
  216. package/skills/frontend-implementation/references/node-contracts.md +27 -27
  217. package/skills/frontend-review/SKILL.md +59 -59
  218. package/skills/frontend-review/references/review-findings.md +47 -47
  219. package/skills/frontend-verification/SKILL.md +53 -53
  220. package/skills/frontend-verification/references/verification-checklist.md +68 -68
  221. package/skills/grill-me/SKILL.md +10 -10
  222. package/skills/grill-with-docs/SKILL.md +88 -88
  223. package/skills/grill-with-docs/adr-format.md +47 -47
  224. package/skills/grill-with-docs/context-format.md +60 -60
  225. package/skills/init-capability-evolution/SKILL.md +70 -70
  226. package/skills/loop-agent/SKILL.md +151 -151
  227. package/skills/loop-agent/references/README.md +67 -67
  228. package/skills/loop-agent/references/command-reference.md +527 -527
  229. package/skills/loop-agent/references/docs-converge.md +126 -126
  230. package/skills/loop-agent/references/harness-policy.md +263 -263
  231. package/skills/loop-agent/references/hybrid-dag.md +243 -243
  232. package/skills/loop-agent/references/learned/README.md +21 -21
  233. package/skills/loop-agent/references/long-running-loop.md +57 -57
  234. package/skills/loop-agent/references/model-routing.md +36 -36
  235. package/skills/loop-agent/references/multi-worktree.md +54 -54
  236. package/skills/loop-agent/references/one-shot-runs.md +85 -85
  237. package/skills/loop-agent/references/orchestrator-and-interventions.md +169 -169
  238. package/skills/loop-agent/references/pi-prompt.md +23 -23
  239. package/skills/loop-agent/references/pi-subagent-assisted-mode.md +84 -84
  240. package/skills/loop-agent/references/post-implementation-and-patterns.md +44 -44
  241. package/skills/loop-agent/references/task-workflow.md +89 -89
  242. package/skills/loop-agent/references/verification-and-failure-handling.md +141 -141
  243. package/skills/playwright-cli/SKILL.md +420 -420
  244. package/skills/playwright-cli/references/element-attributes.md +23 -23
  245. package/skills/playwright-cli/references/playwright-tests.md +39 -39
  246. package/skills/playwright-cli/references/request-mocking.md +87 -87
  247. package/skills/playwright-cli/references/running-code.md +241 -241
  248. package/skills/playwright-cli/references/session-management.md +225 -225
  249. package/skills/playwright-cli/references/storage-state.md +275 -275
  250. package/skills/playwright-cli/references/test-generation.md +433 -433
  251. package/skills/playwright-cli/references/tracing.md +139 -139
  252. package/skills/playwright-cli/references/video-recording.md +143 -143
  253. package/skills/playwright-cli-case-generator/SKILL.md +74 -74
  254. package/skills/requesting-code-review/SKILL.md +101 -101
  255. package/skills/requesting-code-review/code-reviewer.md +168 -168
  256. package/skills/systematic-debugging/CREATION-LOG.md +119 -119
  257. package/skills/systematic-debugging/SKILL.md +296 -296
  258. package/skills/systematic-debugging/condition-based-waiting-example.ts +158 -158
  259. package/skills/systematic-debugging/condition-based-waiting.md +115 -115
  260. package/skills/systematic-debugging/defense-in-depth.md +122 -122
  261. package/skills/systematic-debugging/find-polluter.sh +63 -63
  262. package/skills/systematic-debugging/root-cause-tracing.md +169 -169
  263. package/skills/systematic-debugging/test-academic.md +14 -14
  264. package/skills/systematic-debugging/test-pressure-1.md +58 -58
  265. package/skills/systematic-debugging/test-pressure-2.md +68 -68
  266. package/skills/systematic-debugging/test-pressure-3.md +69 -69
  267. package/skills/test-driven-development/SKILL.md +20 -20
  268. package/skills/using-git-worktrees/SKILL.md +215 -215
  269. package/skills/verification-before-completion/SKILL.md +154 -154
  270. package/skills/webapp-testing/SKILL.md +19 -19
@@ -1,19 +1,19 @@
1
- {
2
- "name": "browser-tools",
3
- "version": "1.0.0",
4
- "type": "module",
5
- "description": "Minimal CDP tools for collaborative site exploration",
6
- "author": "Mario Zechner",
7
- "license": "MIT",
8
- "dependencies": {
9
- "@mozilla/readability": "^0.6.0",
10
- "cheerio": "^1.1.2",
11
- "jsdom": "^27.0.1",
12
- "puppeteer": "^24.31.0",
13
- "puppeteer-core": "^23.11.1",
14
- "puppeteer-extra": "^3.3.6",
15
- "puppeteer-extra-plugin-stealth": "^2.11.2",
16
- "turndown": "^7.2.2",
17
- "turndown-plugin-gfm": "^1.0.2"
18
- }
19
- }
1
+ {
2
+ "name": "browser-tools",
3
+ "version": "1.0.0",
4
+ "type": "module",
5
+ "description": "Minimal CDP tools for collaborative site exploration",
6
+ "author": "Mario Zechner",
7
+ "license": "MIT",
8
+ "dependencies": {
9
+ "@mozilla/readability": "^0.6.0",
10
+ "cheerio": "^1.1.2",
11
+ "jsdom": "^27.0.1",
12
+ "puppeteer": "^24.31.0",
13
+ "puppeteer-core": "^23.11.1",
14
+ "puppeteer-extra": "^3.3.6",
15
+ "puppeteer-extra-plugin-stealth": "^2.11.2",
16
+ "turndown": "^7.2.2",
17
+ "turndown-plugin-gfm": "^1.0.2"
18
+ }
19
+ }
@@ -1,20 +1,20 @@
1
- ---
2
- name: code-review-core
3
- description: 用于只读 code review 节点,产出带文件与行号引用的优先级 findings。
4
- ---
5
-
6
- # Code Review Core
7
-
8
- 本 skill 用于 reviewer 节点。
9
-
10
- ## Review 重点
11
-
12
- - 优先关注 correctness、行为回归、security、数据丢失与缺失验证。
13
- - findings 须 grounded 在具体文件与行号。
14
- - 区分 blocking findings 与次要 maintainability 备注。
15
- - 检查测试是否证明变更行为,文档是否与面向用户的变更一致。
16
- - 若无 findings,明确说明,并指出 residual test gap(如有)。
17
-
18
- ## Output
19
-
20
- 按 severity 排序列出 findings。仅当无 blocking findings 时,才写 `VERDICT: pass`。
1
+ ---
2
+ name: code-review-core
3
+ description: 用于只读 code review 节点,产出带文件与行号引用的优先级 findings。
4
+ ---
5
+
6
+ # Code Review Core
7
+
8
+ 本 skill 用于 reviewer 节点。
9
+
10
+ ## Review 重点
11
+
12
+ - 优先关注 correctness、行为回归、security、数据丢失与缺失验证。
13
+ - findings 须 grounded 在具体文件与行号。
14
+ - 区分 blocking findings 与次要 maintainability 备注。
15
+ - 检查测试是否证明变更行为,文档是否与面向用户的变更一致。
16
+ - 若无 findings,明确说明,并指出 residual test gap(如有)。
17
+
18
+ ## Output
19
+
20
+ 按 severity 排序列出 findings。仅当无 blocking findings 时,才写 `VERDICT: pass`。
@@ -1,19 +1,19 @@
1
- ---
2
- name: codebase-scout
3
- description: 用于只读 scout 节点,在实现前定位现有代码、测试、文档与集成点。
4
- ---
5
-
6
- # Codebase Scout
7
-
8
- 本 skill 用于 scout 节点。
9
-
10
- ## 规则
11
-
12
- - 从 repo 指令、task source 与邻近测试入手。
13
- - 可用时优先 CodeGraph;否则用 `rg` 与聚焦文件阅读。
14
- - 在提议新抽象前,识别现有 helper 与 ownership 边界。
15
- - 只返回事实,不做编辑。
16
-
17
- ## Output
18
-
19
- 列出相关文件、现有模式、风险,以及实现所需的最小 write surface。
1
+ ---
2
+ name: codebase-scout
3
+ description: 用于只读 scout 节点,在实现前定位现有代码、测试、文档与集成点。
4
+ ---
5
+
6
+ # Codebase Scout
7
+
8
+ 本 skill 用于 scout 节点。
9
+
10
+ ## 规则
11
+
12
+ - 从 repo 指令、task source 与邻近测试入手。
13
+ - 可用时优先 CodeGraph;否则用 `rg` 与聚焦文件阅读。
14
+ - 在提议新抽象前,识别现有 helper 与 ownership 边界。
15
+ - 只返回事实,不做编辑。
16
+
17
+ ## Output
18
+
19
+ 列出相关文件、现有模式、风险,以及实现所需的最小 write surface。
@@ -1,66 +1,66 @@
1
- ---
2
- name: frontend-design-review
3
- description: Use for the frontend plan design gate before any writer runs.
4
- references:
5
- - path: references/review-checklist.md
6
- required: true
7
- maxChars: 3600
8
- ---
9
-
10
- # Frontend Design Review
11
-
12
- For first/final design review nodes. Read the checklist, then audit contract, scout,
13
- mock strategy, plan/revision, task constraints/bounds, and traceable design evidence. The knowledge-
14
- base connector is TODO: never invent results. If absent/failed/unmatched, require
15
- `<repoRoot>/openSpec/**` search/read evidence before repo conventions.
16
-
17
- ## Verdict Contract
18
-
19
- First non-empty line: exactly `VERDICT: pass` or `VERDICT: request-revision`.
20
- Any blocker requires request-revision; the shell gate reads this line exactly.
21
-
22
- For `frontend-final-design-review-pi`: recheck the original plan when output is
23
- `PASS_NO_REVISION_NEEDED`; otherwise verify every Required Plan Correction. Reject
24
- remaining, incomplete, or newly introduced gaps.
25
-
26
- ## Blocking Conditions
27
-
28
- - Any criterion lacks implementation/verification; UI states lack reasons; a
29
- dependency lacks permission; confirmed primitives/rules are ignored; design claims
30
- lack knowledge-base or required `openSpec/` evidence; paths cross write bounds;
31
- commands are missing/non-deterministic; or interaction, responsive, accessibility,
32
- data, or failure behavior requires guessing.
33
- - `MOCK_STRATEGY: blocked`; missing permitted target paths, endpoint/schema-to-fixture
34
- mapping, fixed verification, or dev/test-only activation; a second Mock framework;
35
- inline fake data; commented real requests; Mock-on production defaults; test-only
36
- production imports; or Mock evidence reported as real integration.
37
-
38
- Knowledge-base absence is advisory if relevant `openSpec/` rules were searched/read
39
- and applied. Block skipped fallback, unresolved conflict, or unresolved UI decisions.
40
-
41
- ## Method And Output
42
-
43
- Map criteria to steps/files/states/checks, audit paths/evidence, classify Blocking or
44
- Advisory, and never edit files.
45
-
46
- ### Spec Evidence Rules
47
-
48
- Run `grep`/`find`, then explicit `read` calls for applicable specs and checklist.
49
- Only successful paired reads count as “已读取规范文件”; summaries do not. List each
50
- read path/section in `Checked Items`. If the connector is unavailable, search/read
51
- `openSpec/` before accepting repository conventions.
52
-
53
- ```markdown
54
- VERDICT: pass
55
-
56
- ## Findings
57
- - None blocking.
58
-
59
- ## Required Plan Corrections
60
- - None.
61
-
62
- ## Checked Items
63
- - ...
64
- ```
65
-
66
- Each correction names its criterion/section, gap, and exact plan change.
1
+ ---
2
+ name: frontend-design-review
3
+ description: Use for the frontend plan design gate before any writer runs.
4
+ references:
5
+ - path: references/review-checklist.md
6
+ required: true
7
+ maxChars: 3600
8
+ ---
9
+
10
+ # Frontend Design Review
11
+
12
+ For first/final design review nodes. Read the checklist, then audit contract, scout,
13
+ mock strategy, plan/revision, task constraints/bounds, and traceable design evidence. The knowledge-
14
+ base connector is TODO: never invent results. If absent/failed/unmatched, require
15
+ `<repoRoot>/openSpec/**` search/read evidence before repo conventions.
16
+
17
+ ## Verdict Contract
18
+
19
+ First non-empty line: exactly `VERDICT: pass` or `VERDICT: request-revision`.
20
+ Any blocker requires request-revision; the shell gate reads this line exactly.
21
+
22
+ For `frontend-final-design-review-pi`: recheck the original plan when output is
23
+ `PASS_NO_REVISION_NEEDED`; otherwise verify every Required Plan Correction. Reject
24
+ remaining, incomplete, or newly introduced gaps.
25
+
26
+ ## Blocking Conditions
27
+
28
+ - Any criterion lacks implementation/verification; UI states lack reasons; a
29
+ dependency lacks permission; confirmed primitives/rules are ignored; design claims
30
+ lack knowledge-base or required `openSpec/` evidence; paths cross write bounds;
31
+ commands are missing/non-deterministic; or interaction, responsive, accessibility,
32
+ data, or failure behavior requires guessing.
33
+ - `MOCK_STRATEGY: blocked`; missing permitted target paths, endpoint/schema-to-fixture
34
+ mapping, fixed verification, or dev/test-only activation; a second Mock framework;
35
+ inline fake data; commented real requests; Mock-on production defaults; test-only
36
+ production imports; or Mock evidence reported as real integration.
37
+
38
+ Knowledge-base absence is advisory if relevant `openSpec/` rules were searched/read
39
+ and applied. Block skipped fallback, unresolved conflict, or unresolved UI decisions.
40
+
41
+ ## Method And Output
42
+
43
+ Map criteria to steps/files/states/checks, audit paths/evidence, classify Blocking or
44
+ Advisory, and never edit files.
45
+
46
+ ### Spec Evidence Rules
47
+
48
+ Run `grep`/`find`, then explicit `read` calls for applicable specs and checklist.
49
+ Only successful paired reads count as “已读取规范文件”; summaries do not. List each
50
+ read path/section in `Checked Items`. If the connector is unavailable, search/read
51
+ `openSpec/` before accepting repository conventions.
52
+
53
+ ```markdown
54
+ VERDICT: pass
55
+
56
+ ## Findings
57
+ - None blocking.
58
+
59
+ ## Required Plan Corrections
60
+ - None.
61
+
62
+ ## Checked Items
63
+ - ...
64
+ ```
65
+
66
+ Each correction names its criterion/section, gap, and exact plan change.
@@ -1,58 +1,58 @@
1
- # Frontend Design Review Checklist
2
-
3
- ## Requirement And State Coverage
4
-
5
- - Target route/page/component and non-goals are clear.
6
- - Every acceptance criterion maps to steps, files, UI behavior, and verification.
7
- - Assumptions and unresolved ambiguity are explicit.
8
- - Applicable success, error, loading, empty, disabled, permission, retry, stale-response, and boundary states are handled or marked N/A.
9
-
10
- ## Project And Knowledge Fit
11
-
12
- - Existing components, hooks, API helpers, mocks, schemas, router patterns, templates, tokens, and theme rules were considered.
13
- - Component/design choices cite knowledge-base or `openSpec/`; failed/empty knowledge-base queries recurse through `<repoRoot>/openSpec/**` first.
14
- - Evidence records source status, query terms, paths/headings, and conflicts.
15
- - Dependencies are authorized; paths fit allowed/write scope and avoid forbidden/generated files.
16
- - A required Mock-backed strategy reuses native support when proven, otherwise an
17
- existing browser-intercept/request-adapter seam; it maps endpoint/states to fixtures,
18
- stays in writer scope, and is off in production. `not-needed` adds none.
19
-
20
- ## Interaction And Quality
21
-
22
- - Actions, feedback, validation timing, navigation, persistence, and recovery are unambiguous.
23
- - Responsive and overflow behavior covers target environments.
24
- - Keyboard, focus, semantics, contrast, reduced motion, data lifecycle, cancellation, and error recovery are addressed when applicable.
25
-
26
- ## Verification
27
-
28
- - Static and behavior commands are exact, discoverable, and deterministic.
29
- - Tests prove changed state logic and flows at repository-supported levels.
30
- - Browser/visual checks are required only by task intent or existing gates.
31
- - Every missing verification path is a blocker or disclosed risk.
32
- - Verification entrypoints are frozen; any Mock-specific command is generated only
33
- from trusted sources, and behavior separately proves page consumption.
34
-
35
- ## Mock Strategy Safety
36
-
37
- - The strategy protocol is valid and not `MOCK_STRATEGY: blocked`.
38
- - For Mock strategies, API fields and fixture states trace to contract evidence; gaps are explicit.
39
- - Selection follows repository capability: native mock first, browser interception
40
- for existing e2e, request adapter/injection for local preview.
41
- - The real request remains enabled by default; activation is explicit, reversible,
42
- local/test-only, and excluded from production behavior.
43
- - Verification uses only shell entrypoints fixed when the DAG was generated; the
44
- plan does not invent commands that shell nodes cannot execute.
45
- - Mock strategies include a production/default-real-path build with Mock off and
46
- Mock-backed behavior evidence. `not-needed` instead needs applicable real or
47
- no-remote behavior evidence.
48
- - Mock-backed checks prove frontend states only. Real integration remains pending
49
- until the actual backend path has fresh evidence.
50
-
51
- ## Verdict Matrix
52
-
53
- - Coverage gap, unsafe scope, unauthorized dependency, unresolved required interaction, or missing required verification: request revision.
54
- - Missing knowledge-base evidence and skipped `openSpec/` fallback: request revision.
55
- - No relevant knowledge-base or `openSpec/` rule for a required decision: request revision.
56
- - Unsafe/missing mock strategy or mock evidence presented as real integration: request revision.
57
- - Knowledge-base unavailable but relevant `openSpec/` rules were applied: advisory connection gap, not a specification gap.
58
- - Optional cleanup that cannot affect acceptance: advisory.
1
+ # Frontend Design Review Checklist
2
+
3
+ ## Requirement And State Coverage
4
+
5
+ - Target route/page/component and non-goals are clear.
6
+ - Every acceptance criterion maps to steps, files, UI behavior, and verification.
7
+ - Assumptions and unresolved ambiguity are explicit.
8
+ - Applicable success, error, loading, empty, disabled, permission, retry, stale-response, and boundary states are handled or marked N/A.
9
+
10
+ ## Project And Knowledge Fit
11
+
12
+ - Existing components, hooks, API helpers, mocks, schemas, router patterns, templates, tokens, and theme rules were considered.
13
+ - Component/design choices cite knowledge-base or `openSpec/`; failed/empty knowledge-base queries recurse through `<repoRoot>/openSpec/**` first.
14
+ - Evidence records source status, query terms, paths/headings, and conflicts.
15
+ - Dependencies are authorized; paths fit allowed/write scope and avoid forbidden/generated files.
16
+ - A required Mock-backed strategy reuses native support when proven, otherwise an
17
+ existing browser-intercept/request-adapter seam; it maps endpoint/states to fixtures,
18
+ stays in writer scope, and is off in production. `not-needed` adds none.
19
+
20
+ ## Interaction And Quality
21
+
22
+ - Actions, feedback, validation timing, navigation, persistence, and recovery are unambiguous.
23
+ - Responsive and overflow behavior covers target environments.
24
+ - Keyboard, focus, semantics, contrast, reduced motion, data lifecycle, cancellation, and error recovery are addressed when applicable.
25
+
26
+ ## Verification
27
+
28
+ - Static and behavior commands are exact, discoverable, and deterministic.
29
+ - Tests prove changed state logic and flows at repository-supported levels.
30
+ - Browser/visual checks are required only by task intent or existing gates.
31
+ - Every missing verification path is a blocker or disclosed risk.
32
+ - Verification entrypoints are frozen; any Mock-specific command is generated only
33
+ from trusted sources, and behavior separately proves page consumption.
34
+
35
+ ## Mock Strategy Safety
36
+
37
+ - The strategy protocol is valid and not `MOCK_STRATEGY: blocked`.
38
+ - For Mock strategies, API fields and fixture states trace to contract evidence; gaps are explicit.
39
+ - Selection follows repository capability: native mock first, browser interception
40
+ for existing e2e, request adapter/injection for local preview.
41
+ - The real request remains enabled by default; activation is explicit, reversible,
42
+ local/test-only, and excluded from production behavior.
43
+ - Verification uses only shell entrypoints fixed when the DAG was generated; the
44
+ plan does not invent commands that shell nodes cannot execute.
45
+ - Mock strategies include a production/default-real-path build with Mock off and
46
+ Mock-backed behavior evidence. `not-needed` instead needs applicable real or
47
+ no-remote behavior evidence.
48
+ - Mock-backed checks prove frontend states only. Real integration remains pending
49
+ until the actual backend path has fresh evidence.
50
+
51
+ ## Verdict Matrix
52
+
53
+ - Coverage gap, unsafe scope, unauthorized dependency, unresolved required interaction, or missing required verification: request revision.
54
+ - Missing knowledge-base evidence and skipped `openSpec/` fallback: request revision.
55
+ - No relevant knowledge-base or `openSpec/` rule for a required decision: request revision.
56
+ - Unsafe/missing mock strategy or mock evidence presented as real integration: request revision.
57
+ - Knowledge-base unavailable but relevant `openSpec/` rules were applied: advisory connection gap, not a specification gap.
58
+ - Optional cleanup that cannot affect acceptance: advisory.
@@ -1,49 +1,49 @@
1
- ---
2
- name: frontend-implementation
3
- description: >-
4
- Use for frontend contract, scout, mock strategy, plan, and implementation DAG nodes.
5
- references:
6
- - path: references/node-contracts.md
7
- required: true
8
- # Compact contract index must stay under skill total budget (~10k with body + other refs).
9
- # Headroom above current ~4k file; do not raise alone without checking totalMaxChars.
10
- maxChars: 6000
11
- - path: references/design-spec.md
12
- required: true
13
- maxChars: 3000
14
- - path: references/code-standards.md
15
- required: true
16
- maxChars: 3000
17
- ---
18
-
19
- # Frontend Implementation
20
-
21
- Read all required references before running any listed frontend node.
22
-
23
- ## Source And Evidence Rules
24
-
25
- Use task sources/references, constraints, then `task.json`. Follow `design-spec.md`:
26
- knowledge base; `<repoRoot>/openSpec/**` after unavailable/failed/empty; then repo
27
- evidence. Cite tight paths/symbols, label gaps/conflicts, and never invent APIs,
28
- rules, commands, or retrievals. Scout/planners locate and explicitly read applicable
29
- specs; only successful paired reads count. Lockfile-only, fixture-only, or unread
30
- search hits do not prove a reusable Mock service.
31
-
32
- ## Implementation Discipline
33
-
34
- - Reuse confirmed specs, components, tokens, helpers, APIs, mocks, schemas, and tests.
35
- - Keep real requests enabled by default; never comment them out for a mock.
36
- - Prefer native Mock support; otherwise use existing browser interception for e2e or
37
- a reversible request adapter/DI seam for local preview.
38
- - Trace fixtures to API/schema evidence. Activation is explicit, dev/test-only,
39
- production-off; Mock evidence never proves real API integration.
40
- - Add dependencies only when approved. Cover applicable success/loading/empty/error/
41
- permission/boundary states and justify N/A.
42
- - Keep state testable. Stay in `writeSet`, preserve behavior, and update tests.
43
- - Never relax lint/type/test/build config or write unauthorized generated output.
44
-
45
- ## Output And Failure Rules
46
-
47
- - Follow `node-contracts.md`; read-only nodes never edit. Missing input blocks work
48
- when proceeding would guess behavior, bounds, or verification.
49
- - Preserve tokens, commands, paths, IDs, and language. Completion needs fresh shell evidence.
1
+ ---
2
+ name: frontend-implementation
3
+ description: >-
4
+ Use for frontend contract, scout, mock strategy, plan, and implementation DAG nodes.
5
+ references:
6
+ - path: references/node-contracts.md
7
+ required: true
8
+ # Compact contract index must stay under skill total budget (~10k with body + other refs).
9
+ # Headroom above current ~4k file; do not raise alone without checking totalMaxChars.
10
+ maxChars: 6000
11
+ - path: references/design-spec.md
12
+ required: true
13
+ maxChars: 3000
14
+ - path: references/code-standards.md
15
+ required: true
16
+ maxChars: 3000
17
+ ---
18
+
19
+ # Frontend Implementation
20
+
21
+ Read all required references before running any listed frontend node.
22
+
23
+ ## Source And Evidence Rules
24
+
25
+ Use task sources/references, constraints, then `task.json`. Follow `design-spec.md`:
26
+ knowledge base; `<repoRoot>/openSpec/**` after unavailable/failed/empty; then repo
27
+ evidence. Cite tight paths/symbols, label gaps/conflicts, and never invent APIs,
28
+ rules, commands, or retrievals. Scout/planners locate and explicitly read applicable
29
+ specs; only successful paired reads count. Lockfile-only, fixture-only, or unread
30
+ search hits do not prove a reusable Mock service.
31
+
32
+ ## Implementation Discipline
33
+
34
+ - Reuse confirmed specs, components, tokens, helpers, APIs, mocks, schemas, and tests.
35
+ - Keep real requests enabled by default; never comment them out for a mock.
36
+ - Prefer native Mock support; otherwise use existing browser interception for e2e or
37
+ a reversible request adapter/DI seam for local preview.
38
+ - Trace fixtures to API/schema evidence. Activation is explicit, dev/test-only,
39
+ production-off; Mock evidence never proves real API integration.
40
+ - Add dependencies only when approved. Cover applicable success/loading/empty/error/
41
+ permission/boundary states and justify N/A.
42
+ - Keep state testable. Stay in `writeSet`, preserve behavior, and update tests.
43
+ - Never relax lint/type/test/build config or write unauthorized generated output.
44
+
45
+ ## Output And Failure Rules
46
+
47
+ - Follow `node-contracts.md`; read-only nodes never edit. Missing input blocks work
48
+ when proceeding would guess behavior, bounds, or verification.
49
+ - Preserve tokens, commands, paths, IDs, and language. Completion needs fresh shell evidence.
@@ -1,32 +1,32 @@
1
- # Frontend Code Standards
2
-
3
- Discover rules from task constraints, `design-spec.md` source order, config, code,
4
- tests, manifests, and generated types. After knowledge-base failure, applicable
5
- `<repoRoot>/openSpec/**` rules are normative. Preferences are not rules, and docs do
6
- not override installed APIs without an explicit compatibility decision.
7
-
8
- ## Discover And Cite
9
-
10
- - Find routing and server/client boundaries; state, forms, data/cache, and errors;
11
- API/mock/UI/schema/test locations and naming; supported tests; dependency rules.
12
-
13
- Cite representative files/config for each convention. Describe conflicts instead of
14
- silently selecting one.
15
-
16
- ## Plan And Implement
17
-
18
- - Map criteria to code and checks. Define placement, state ownership, request
19
- lifecycle, validation/failures, API compatibility, mocks, and fixtures.
20
- - Trace fixtures to API evidence; label gaps. Prefer native mocks, then browser
21
- interception for existing e2e, then a reversible request adapter/DI preview seam.
22
- - Real API stays default; mock activation is explicit, local/test-only,
23
- non-production, and removable.
24
- - Reuse helpers/public APIs and preserve out-of-contract behavior. Keep rendering,
25
- transitions, validation, and side effects testable; cover lifecycle races/bounds
26
- when relevant. Update supported tests; stay in `writeSet`.
27
-
28
- ## Prohibited
29
-
30
- - Do not relax checks, add unapproved dependencies, comment real requests, hardcode
31
- fixtures in production UI, import test mocks into production, store fixture
32
- secrets, equate mock evidence with real integration, or report unrun checks as verified.
1
+ # Frontend Code Standards
2
+
3
+ Discover rules from task constraints, `design-spec.md` source order, config, code,
4
+ tests, manifests, and generated types. After knowledge-base failure, applicable
5
+ `<repoRoot>/openSpec/**` rules are normative. Preferences are not rules, and docs do
6
+ not override installed APIs without an explicit compatibility decision.
7
+
8
+ ## Discover And Cite
9
+
10
+ - Find routing and server/client boundaries; state, forms, data/cache, and errors;
11
+ API/mock/UI/schema/test locations and naming; supported tests; dependency rules.
12
+
13
+ Cite representative files/config for each convention. Describe conflicts instead of
14
+ silently selecting one.
15
+
16
+ ## Plan And Implement
17
+
18
+ - Map criteria to code and checks. Define placement, state ownership, request
19
+ lifecycle, validation/failures, API compatibility, mocks, and fixtures.
20
+ - Trace fixtures to API evidence; label gaps. Prefer native mocks, then browser
21
+ interception for existing e2e, then a reversible request adapter/DI preview seam.
22
+ - Real API stays default; mock activation is explicit, local/test-only,
23
+ non-production, and removable.
24
+ - Reuse helpers/public APIs and preserve out-of-contract behavior. Keep rendering,
25
+ transitions, validation, and side effects testable; cover lifecycle races/bounds
26
+ when relevant. Update supported tests; stay in `writeSet`.
27
+
28
+ ## Prohibited
29
+
30
+ - Do not relax checks, add unapproved dependencies, comment real requests, hardcode
31
+ fixtures in production UI, import test mocks into production, store fixture
32
+ secrets, equate mock evidence with real integration, or report unrun checks as verified.
@@ -1,46 +1,46 @@
1
- # Frontend Design And Component Specification
2
-
3
- ## Required Source Sequence
4
-
5
- 1. Attempt the configured component/design knowledge-base query first.
6
- 2. If unavailable, failed, timed out, or unmatched, recursively search the project root's exact `openSpec/` directory.
7
- 3. Treat relevant matches as the current project's specification for this run.
8
- 4. Only then use component source, tokens, stories, tests, and pages as non-normative repository fallback.
9
-
10
- Never skip `openSpec/` directly to neighboring-code conventions. Report source
11
- conflicts instead of combining them. Explicit task requirements remain the contract;
12
- flag conflicts with knowledge-base or `openSpec/` rules.
13
-
14
- ## Knowledge Base Connection — TODO
15
-
16
- Request format is undecided. TODO: define connector/owner, namespaces, secret-free
17
- auth, query fields, result identity/version/time, and failure behavior.
18
-
19
- Attempt only a connector actually available in the execution environment. Otherwise
20
- record `not-configured` and run the `openSpec/` fallback; never invent a connection.
21
-
22
- ## `openSpec/` Fallback Procedure
23
-
24
- - Confirm whether `<repoRoot>/openSpec/` exists and enumerate its files recursively.
25
- - Read indexes first, then search names/content using task, route, component, interaction, theme, token, and state terms.
26
- - Read relevant matches in context; do not treat a filename-only hit as a rule.
27
- - Record search terms, inspected/matched paths, headings or tight line ranges, applied rules, and conflicts.
28
- - If the directory or relevant rules are absent, record that fact before using repository fallback.
29
-
30
- ## Retrieval Evidence
31
-
32
- Record source as `knowledge-base`, `openSpec fallback`, `repository fallback`, or
33
- `unavailable`. Knowledge-base evidence includes query, source ID/version/time, rules,
34
- and conflicts. `openSpec fallback` includes terms, paths/headings/lines, rules, and conflicts.
35
-
36
- ## Rules To Retrieve Or Discover
37
-
38
- - Components, variants, props, composition, accessibility, deprecations, placement, forms, overlays, navigation, and state patterns.
39
- - Tokens, typography, color, layout, breakpoints, motion, focus/keyboard/contrast, exceptions, design debt, and forbidden patterns.
40
-
41
- ## Gate Expectations
42
-
43
- - Reuse confirmed primitives unless a new pattern is authorized.
44
- - Define applicable states and responsive behavior before implementation.
45
- - Cite knowledge-base or `openSpec/` evidence for component/token choices; label weaker repository fallback.
46
- - Make deviations and unresolved gaps explicit.
1
+ # Frontend Design And Component Specification
2
+
3
+ ## Required Source Sequence
4
+
5
+ 1. Attempt the configured component/design knowledge-base query first.
6
+ 2. If unavailable, failed, timed out, or unmatched, recursively search the project root's exact `openSpec/` directory.
7
+ 3. Treat relevant matches as the current project's specification for this run.
8
+ 4. Only then use component source, tokens, stories, tests, and pages as non-normative repository fallback.
9
+
10
+ Never skip `openSpec/` directly to neighboring-code conventions. Report source
11
+ conflicts instead of combining them. Explicit task requirements remain the contract;
12
+ flag conflicts with knowledge-base or `openSpec/` rules.
13
+
14
+ ## Knowledge Base Connection — TODO
15
+
16
+ Request format is undecided. TODO: define connector/owner, namespaces, secret-free
17
+ auth, query fields, result identity/version/time, and failure behavior.
18
+
19
+ Attempt only a connector actually available in the execution environment. Otherwise
20
+ record `not-configured` and run the `openSpec/` fallback; never invent a connection.
21
+
22
+ ## `openSpec/` Fallback Procedure
23
+
24
+ - Confirm whether `<repoRoot>/openSpec/` exists and enumerate its files recursively.
25
+ - Read indexes first, then search names/content using task, route, component, interaction, theme, token, and state terms.
26
+ - Read relevant matches in context; do not treat a filename-only hit as a rule.
27
+ - Record search terms, inspected/matched paths, headings or tight line ranges, applied rules, and conflicts.
28
+ - If the directory or relevant rules are absent, record that fact before using repository fallback.
29
+
30
+ ## Retrieval Evidence
31
+
32
+ Record source as `knowledge-base`, `openSpec fallback`, `repository fallback`, or
33
+ `unavailable`. Knowledge-base evidence includes query, source ID/version/time, rules,
34
+ and conflicts. `openSpec fallback` includes terms, paths/headings/lines, rules, and conflicts.
35
+
36
+ ## Rules To Retrieve Or Discover
37
+
38
+ - Components, variants, props, composition, accessibility, deprecations, placement, forms, overlays, navigation, and state patterns.
39
+ - Tokens, typography, color, layout, breakpoints, motion, focus/keyboard/contrast, exceptions, design debt, and forbidden patterns.
40
+
41
+ ## Gate Expectations
42
+
43
+ - Reuse confirmed primitives unless a new pattern is authorized.
44
+ - Define applicable states and responsive behavior before implementation.
45
+ - Cite knowledge-base or `openSpec/` evidence for component/token choices; label weaker repository fallback.
46
+ - Make deviations and unresolved gaps explicit.