@tea-agent/loop-agent 0.13.0-beta.0 → 0.13.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.
- package/AGENTS.md +157 -155
- package/CHANGELOG.md +301 -322
- package/README.md +335 -345
- package/bin/agent-worker.js +22 -22
- package/bin/loop-agent.js +21 -21
- package/dist/commands/cursor-prompt.js +6 -6
- package/dist/commands/init.js +597 -528
- package/dist/commands/loop-benchmark.js +11 -11
- package/dist/commands/pi-reuse-benchmark.js +16 -16
- package/dist/executors/shell-executor.js +200 -21
- package/dist/infrastructure/evaluation/candidate-store.js +5 -1
- package/dist/sidecars/cursor-prompt/executor.js +1 -1
- package/dist/task/runtime.js +27 -27
- package/dist/worker/observe/static/api.js +46 -46
- package/dist/worker/observe/static/app.js +150 -150
- package/dist/worker/observe/static/constants.js +148 -148
- package/dist/worker/observe/static/copy.js +67 -67
- package/dist/worker/observe/static/dag-helpers.js +172 -172
- package/dist/worker/observe/static/dag-layout.d.ts +31 -31
- package/dist/worker/observe/static/dag-layout.js +83 -83
- package/dist/worker/observe/static/dag-model.js +72 -72
- package/dist/worker/observe/static/dom.js +212 -53
- package/dist/worker/observe/static/format-pool.js +67 -67
- package/dist/worker/observe/static/format.js +292 -292
- package/dist/worker/observe/static/index.html +308 -308
- package/dist/worker/observe/static/kpi.js +94 -94
- package/dist/worker/observe/static/relations.js +133 -133
- package/dist/worker/observe/static/router.js +93 -93
- package/dist/worker/observe/static/run-processing.js +148 -148
- package/dist/worker/observe/static/shell-chrome.js +68 -68
- package/dist/worker/observe/static/state.js +267 -253
- package/dist/worker/observe/static/styles.css +1902 -1902
- package/dist/worker/observe/static/views/batch.js +227 -227
- package/dist/worker/observe/static/views/dag-graph.js +172 -172
- package/dist/worker/observe/static/views/dag-inspector.js +627 -607
- package/dist/worker/observe/static/views/dag.js +371 -362
- package/dist/worker/observe/static/views/dashboard.js +509 -252
- package/dist/worker/observe/static/views/failures.js +143 -143
- package/dist/worker/observe/static/views/feature.js +492 -492
- package/dist/worker/observe/static/views/pool.js +350 -350
- package/dist/worker/observe/static/views/run.js +453 -453
- package/dist/worker/observe/static/views/session-timeline.js +219 -205
- package/dist/worker/observe/static/views/shell.js +7 -7
- package/dist/worker/observe/static/views/task.js +314 -314
- package/dist/worker/observe/static/views/timeline.js +163 -163
- package/dist/workflows/dag/backend-test-case-manifest.js +503 -0
- package/dist/workflows/dag/backend-test-execution-contract.js +353 -0
- package/dist/workflows/dag/backend-test-result-contract.js +568 -0
- package/dist/workflows/dag/canvas-observer.js +275 -275
- package/dist/workflows/dag/decision-envelope.js +57 -2
- package/dist/workflows/dag/frontend-implementation-contract.js +240 -0
- package/dist/workflows/dag/frontend-project-capability.js +309 -0
- package/dist/workflows/dag/frontend-repair.js +341 -0
- package/dist/workflows/dag/frontend-risk.js +161 -0
- package/dist/workflows/dag/frontend-verification-trace.js +190 -0
- package/dist/workflows/dag/init-hybrid.js +1020 -125
- package/dist/workflows/dag/repair-artifact.js +43 -3
- package/dist/workflows/dag/skill-instructions.js +4 -2
- package/dist/workflows/dag/types.js +29 -8
- package/docs/README.md +105 -104
- package/docs/agent-dag-recovery-playbook.md +195 -195
- package/docs/agent-dag-runner.md +67 -67
- package/docs/architecture/README.md +26 -26
- package/docs/architecture/dag-execution.md +140 -140
- package/docs/architecture/evolution.md +54 -54
- package/docs/architecture/facts-and-state.md +71 -71
- package/docs/architecture/runtime-boundaries.md +191 -191
- package/docs/architecture/system-overview.md +93 -93
- package/docs/architecture/worker-and-feature.md +85 -85
- package/docs/cursor-prompt-sidecar.md +36 -36
- package/docs/decisions/README.md +18 -18
- package/docs/design/README.md +167 -167
- package/docs/development-principles.md +73 -73
- package/docs/exec-plans/README.md +6 -6
- package/docs/exec-plans/active/README.md +1 -4
- package/docs/exec-plans/completed/README.md +106 -84
- package/docs/feature-workflow.md +414 -389
- package/docs/harness-methodology-debugging.md +153 -153
- package/docs/harness-methodology-tdd.md +130 -130
- package/docs/harness-methodology-verification.md +27 -27
- package/docs/init-surface.manifest.json +307 -289
- package/docs/loop-agent-harness.md +142 -142
- package/docs/production-readiness.md +96 -96
- package/docs/progress/README.md +76 -60
- package/docs/reports/README.md +150 -108
- package/docs/skills/README.md +7 -7
- package/docs/skills/vetted-skill-registry.md +29 -29
- package/docs/templates/adr.md +60 -60
- package/docs/templates/agent-dag-authority-surface-audit.prompt.md +94 -94
- package/docs/templates/agent-dag-decision-envelope.schema.json +213 -213
- package/docs/templates/agent-dag-decision-gate-dogfood-report.md +117 -117
- package/docs/templates/agent-dag-decision-gate.prompt.md +246 -246
- package/docs/templates/agent-dag-process-supervisor.prompt.md +98 -98
- package/docs/templates/agent-dag-report.schema.json +473 -473
- package/docs/templates/agent-dag-review-verdict.prompt.md +68 -68
- package/docs/templates/agent-dag.base.json +190 -190
- package/docs/templates/agent-dag.final-verification.json +185 -185
- package/docs/templates/agent-dag.schema.json +411 -411
- package/docs/templates/agent-dag.supervised-implementation.json +620 -501
- package/docs/templates/backend-test-analysis.schema.json +44 -44
- package/docs/templates/backend-test-case-manifest.schema.json +190 -0
- package/docs/templates/backend-test-dag.classify.prompt.md +75 -0
- package/docs/templates/backend-test-dag.generate-pytest.prompt.md +204 -202
- package/docs/templates/backend-test-dag.json +559 -311
- package/docs/templates/backend-test-dag.retrospect.prompt.md +139 -125
- package/docs/templates/backend-test-dag.review-cases.prompt.md +83 -81
- package/docs/templates/backend-test-execution.schema.json +133 -0
- package/docs/templates/backend-test-result.schema.json +99 -0
- package/docs/templates/branch-merge-report.md +93 -0
- package/docs/templates/exec-plan.md +64 -64
- package/docs/templates/feature-spec.md +53 -53
- package/docs/templates/frontend-design-contract.md +42 -42
- package/docs/templates/frontend-eval/fixtures/failures/01-type-build-error.md +17 -0
- package/docs/templates/frontend-eval/fixtures/failures/02-unit-component-test-fail.md +16 -0
- package/docs/templates/frontend-eval/fixtures/failures/03-fixture-schema-drift.md +16 -0
- package/docs/templates/frontend-eval/fixtures/failures/04-missing-loading-empty-error-state.md +16 -0
- package/docs/templates/frontend-eval/fixtures/failures/05-forbidden-write-writeset-expansion.md +16 -0
- package/docs/templates/frontend-eval/fixtures/failures/06-unapproved-dependency-add.md +16 -0
- package/docs/templates/frontend-eval/fixtures/failures/07-mock-production-on.md +21 -0
- package/docs/templates/frontend-eval/fixtures/functional/01-simple-component-style.md +29 -0
- package/docs/templates/frontend-eval/fixtures/functional/02-form-validation.md +28 -0
- package/docs/templates/frontend-eval/fixtures/functional/03-list-detail-page.md +28 -0
- package/docs/templates/frontend-eval/fixtures/functional/04-api-mock.md +29 -0
- package/docs/templates/frontend-eval/fixtures/functional/05-permission-auth-gated-ui.md +27 -0
- package/docs/templates/frontend-eval/fixtures/functional/06-ssr-server-client-boundary.md +28 -0
- package/docs/templates/frontend-eval/fixtures/functional/07-shared-public-component-api.md +28 -0
- package/docs/templates/frontend-eval/fixtures/functional/08-pure-local-no-remote.md +27 -0
- package/docs/templates/frontend-eval/metrics.md +138 -0
- package/docs/templates/frontend-eval/smoke-targets.md +53 -0
- package/docs/templates/frontend-implementation-contract.schema.json +27 -0
- package/docs/templates/frontend-task-constraints.md +35 -35
- package/docs/templates/frontend-task-requirement.md +70 -70
- package/docs/templates/frontend-test-dag.generate-cases.prompt.md +5 -5
- package/docs/templates/frontend-test-dag.json +23 -23
- package/docs/templates/frontend-test-dag.retrieve-context.prompt.md +3 -3
- package/docs/templates/frontend-test-dag.retrospect.prompt.md +3 -3
- package/docs/templates/frontend-test-dag.review-cases.prompt.md +3 -3
- package/docs/templates/frontend-test-dag.review-execution.prompt.md +3 -3
- package/docs/templates/harness.schema.json +221 -221
- package/docs/templates/hybrid-dag.json +188 -188
- package/docs/templates/init-evolution-review.md +35 -35
- package/docs/templates/interactive-ui-round2-experiment.md +66 -66
- package/docs/templates/knowledge-graph-bootstrap-dag.json +118 -118
- package/docs/templates/knowledge-sync-dag.json +178 -178
- package/docs/templates/knowledge-sync-draft.schema.json +71 -71
- package/docs/templates/product-line/AGENTS.md +8 -8
- package/docs/templates/product-line/README.md +9 -9
- package/docs/templates/product-line/acceptance.yaml +14 -14
- package/docs/templates/product-line/closeout.yaml +9 -9
- package/docs/templates/product-line/design.md +13 -13
- package/docs/templates/product-line/links.md +10 -10
- package/docs/templates/product-line/requirement.md +17 -17
- package/docs/templates/product-line/task-graph.yaml +15 -15
- package/docs/templates/product-line/task.yaml +64 -64
- package/docs/templates/product-line/test-plan.md +7 -7
- package/docs/templates/production-readiness-checklist.md +57 -57
- package/docs/templates/progress-log.md +17 -17
- package/docs/templates/project-start-checklist.md +9 -9
- package/docs/templates/qa-report.md +48 -48
- package/docs/templates/sprint-contract.md +29 -29
- package/docs/templates/worker-dogfood-evidence.md +80 -80
- package/docs/templates/worker-dogfood-setup.md +68 -68
- package/docs/verification-matrix.md +70 -70
- package/examples/decision-gate-agent-dag.json +177 -177
- package/examples/example-dag.json +46 -46
- package/examples/hybrid-loop-agent-dag.json +189 -189
- package/harness.json +66 -66
- package/package.json +52 -88
- package/scripts/check-product-line-docs.sh +29 -29
- package/scripts/check-task-pool-root.sh +32 -32
- package/scripts/kb-bootstrap-init-skeleton.sh +240 -240
- package/scripts/kb-graph-incremental-prepare.mjs +386 -386
- package/scripts/kb-graph-incremental-prepare.sh +5 -5
- package/scripts/kb-graph-materialize.mjs +105 -105
- package/scripts/kb-graph-materialize.sh +4 -4
- package/scripts/kb-graph-promote.mjs +164 -164
- package/scripts/kb-graph-promote.sh +4 -4
- package/scripts/kb-query.mjs +554 -554
- package/scripts/kb-query.sh +5 -5
- package/skills/agent-worker/SKILL.md +39 -39
- package/skills/agent-worker/references/agent-worker-operator.md +60 -60
- package/skills/ai-engineering-context/SKILL.md +48 -48
- package/skills/analyze-product-dependencies/SKILL.md +67 -67
- package/skills/analyze-product-dependencies/agents/openai.yaml +4 -4
- package/skills/analyze-product-dependencies/references/api-documentation-schema.md +30 -30
- package/skills/analyze-product-dependencies/references/dependency-analysis-schema.md +28 -28
- package/skills/analyze-product-dependencies/references/example.md +76 -76
- package/skills/analyze-product-dependencies/references/forward-test-cases.md +35 -35
- package/skills/analyze-product-dependencies/references/input-contract.md +11 -11
- package/skills/analyze-product-dependencies/references/scouting-rules.md +61 -61
- package/skills/analyze-product-dependencies/scripts/test-validators.mjs +267 -267
- package/skills/analyze-product-dependencies/scripts/validate-api-documentation.mjs +101 -101
- package/skills/analyze-product-dependencies/scripts/validate-dependency-analysis.mjs +142 -142
- package/skills/analyze-product-dependencies/scripts/validate-product-requirement-input.mjs +76 -76
- package/skills/analyze-product-dependencies/scripts/validation-helpers.mjs +146 -146
- package/skills/analyze-product-requirements/SKILL.md +90 -90
- package/skills/analyze-product-requirements/agents/openai.yaml +4 -4
- package/skills/analyze-product-requirements/references/acceptance-criteria.md +91 -91
- package/skills/analyze-product-requirements/references/clarification-and-knowledge.md +56 -56
- package/skills/analyze-product-requirements/references/example.md +86 -86
- package/skills/analyze-product-requirements/references/forward-test-cases.md +66 -66
- package/skills/analyze-product-requirements/references/product-analysis-schema.md +32 -32
- package/skills/analyze-product-requirements/references/product-requirement-schema.md +33 -33
- package/skills/analyze-product-requirements/references/requirement-clarification-schema.md +35 -35
- package/skills/analyze-product-requirements/scripts/test-validators.mjs +193 -193
- package/skills/analyze-product-requirements/scripts/validate-product-analysis.mjs +69 -69
- package/skills/analyze-product-requirements/scripts/validate-product-requirement.mjs +97 -97
- package/skills/analyze-product-requirements/scripts/validate-requirement-clarification.mjs +98 -98
- package/skills/analyze-product-requirements/scripts/validation-helpers.mjs +156 -156
- package/skills/browser-tools/SKILL.md +196 -0
- package/skills/browser-tools/browser-content.js +103 -0
- package/skills/browser-tools/browser-cookies.js +35 -0
- package/skills/browser-tools/browser-eval.js +53 -0
- package/skills/browser-tools/browser-hn-scraper.js +108 -0
- package/skills/browser-tools/browser-nav.js +44 -0
- package/skills/browser-tools/browser-pick.js +162 -0
- package/skills/browser-tools/browser-screenshot.js +34 -0
- package/skills/browser-tools/browser-start.js +86 -0
- package/skills/browser-tools/package-lock.json +2556 -0
- package/skills/browser-tools/package.json +19 -0
- package/skills/code-review-core/SKILL.md +20 -20
- package/skills/codebase-scout/SKILL.md +19 -19
- package/skills/frontend-design-review/SKILL.md +66 -66
- package/skills/frontend-design-review/references/review-checklist.md +58 -58
- package/skills/frontend-implementation/SKILL.md +49 -47
- package/skills/frontend-implementation/references/code-standards.md +32 -32
- package/skills/frontend-implementation/references/design-spec.md +46 -46
- package/skills/frontend-implementation/references/node-contracts.md +27 -76
- package/skills/frontend-review/SKILL.md +59 -59
- package/skills/frontend-review/references/review-findings.md +47 -47
- package/skills/frontend-verification/SKILL.md +53 -53
- package/skills/frontend-verification/references/verification-checklist.md +68 -68
- package/skills/grill-me/SKILL.md +10 -10
- package/skills/grill-with-docs/SKILL.md +88 -88
- package/skills/grill-with-docs/adr-format.md +47 -47
- package/skills/grill-with-docs/context-format.md +60 -60
- package/skills/init-capability-evolution/SKILL.md +70 -70
- package/skills/loop-agent/SKILL.md +151 -151
- package/skills/loop-agent/references/README.md +67 -67
- package/skills/loop-agent/references/command-reference.md +527 -505
- package/skills/loop-agent/references/docs-converge.md +126 -126
- package/skills/loop-agent/references/harness-policy.md +263 -263
- package/skills/loop-agent/references/hybrid-dag.md +243 -238
- package/skills/loop-agent/references/learned/README.md +21 -21
- package/skills/loop-agent/references/long-running-loop.md +57 -57
- package/skills/loop-agent/references/model-routing.md +36 -36
- package/skills/loop-agent/references/multi-worktree.md +54 -54
- package/skills/loop-agent/references/one-shot-runs.md +85 -85
- package/skills/loop-agent/references/orchestrator-and-interventions.md +169 -169
- package/skills/loop-agent/references/pi-prompt.md +23 -23
- package/skills/loop-agent/references/pi-subagent-assisted-mode.md +84 -84
- package/skills/loop-agent/references/post-implementation-and-patterns.md +44 -44
- package/skills/loop-agent/references/task-workflow.md +89 -89
- package/skills/loop-agent/references/verification-and-failure-handling.md +141 -139
- package/skills/playwright-cli/SKILL.md +420 -420
- package/skills/playwright-cli/references/element-attributes.md +23 -23
- package/skills/playwright-cli/references/playwright-tests.md +39 -39
- package/skills/playwright-cli/references/request-mocking.md +87 -87
- package/skills/playwright-cli/references/running-code.md +241 -241
- package/skills/playwright-cli/references/session-management.md +225 -225
- package/skills/playwright-cli/references/storage-state.md +275 -275
- package/skills/playwright-cli/references/test-generation.md +433 -433
- package/skills/playwright-cli/references/tracing.md +139 -139
- package/skills/playwright-cli/references/video-recording.md +143 -143
- package/skills/playwright-cli-case-generator/SKILL.md +74 -74
- package/skills/requesting-code-review/SKILL.md +101 -101
- package/skills/requesting-code-review/code-reviewer.md +168 -168
- package/skills/systematic-debugging/CREATION-LOG.md +119 -119
- package/skills/systematic-debugging/SKILL.md +296 -296
- package/skills/systematic-debugging/condition-based-waiting-example.ts +158 -158
- package/skills/systematic-debugging/condition-based-waiting.md +115 -115
- package/skills/systematic-debugging/defense-in-depth.md +122 -122
- package/skills/systematic-debugging/find-polluter.sh +63 -63
- package/skills/systematic-debugging/root-cause-tracing.md +169 -169
- package/skills/systematic-debugging/test-academic.md +14 -14
- package/skills/systematic-debugging/test-pressure-1.md +58 -58
- package/skills/systematic-debugging/test-pressure-2.md +68 -68
- package/skills/systematic-debugging/test-pressure-3.md +69 -69
- package/skills/test-driven-development/SKILL.md +20 -20
- package/skills/using-git-worktrees/SKILL.md +215 -215
- package/skills/verification-before-completion/SKILL.md +154 -154
- package/skills/webapp-testing/SKILL.md +19 -19
|
@@ -0,0 +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,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,47 +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
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
-
|
|
35
|
-
|
|
36
|
-
-
|
|
37
|
-
|
|
38
|
-
-
|
|
39
|
-
|
|
40
|
-
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
-
|
|
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.
|