@blxzer/cursor-trellis 0.4.0 → 0.4.2

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 (80) hide show
  1. package/CHANGELOG.md +42 -2
  2. package/README.md +7 -1
  3. package/dist/commands/update.d.ts.map +1 -1
  4. package/dist/commands/update.js +13 -1
  5. package/dist/commands/update.js.map +1 -1
  6. package/dist/configurators/shared.d.ts.map +1 -1
  7. package/dist/configurators/shared.js +2 -1
  8. package/dist/configurators/shared.js.map +1 -1
  9. package/dist/configurators/workflow.d.ts +7 -0
  10. package/dist/configurators/workflow.d.ts.map +1 -1
  11. package/dist/configurators/workflow.js +33 -42
  12. package/dist/configurators/workflow.js.map +1 -1
  13. package/dist/constants/paths.d.ts +4 -0
  14. package/dist/constants/paths.d.ts.map +1 -1
  15. package/dist/constants/paths.js +4 -0
  16. package/dist/constants/paths.js.map +1 -1
  17. package/dist/migrations/manifests/0.4.1.json +9 -0
  18. package/dist/templates/common/{skills/check.md → bundled-skills/cstl-check/SKILL.md} +56 -8
  19. package/dist/templates/common/bundled-skills/cstl-check/references/fowler-12-smells.md +28 -0
  20. package/dist/templates/common/bundled-skills/cstl-cursor2plus-setup/SKILL.md +1 -1
  21. package/dist/templates/common/bundled-skills/cstl-handoff/SKILL.md +117 -0
  22. package/dist/templates/common/bundled-skills/cstl-meta/references/platform-files/hooks-and-settings.md +2 -2
  23. package/dist/templates/common/bundled-skills/cstl-meta/references/platform-files/overview.md +1 -1
  24. package/dist/templates/common/bundled-skills/cstl-micro-grill/SKILL.md +6 -0
  25. package/dist/templates/common/commands/continue.md +1 -1
  26. package/dist/templates/common/skills/brainstorm.md +17 -2
  27. package/dist/templates/cursor/agents/cstl-check.md +16 -2
  28. package/dist/templates/cursor/agents/cstl-implement.md +1 -1
  29. package/dist/templates/cursor/agents/cstl-research.md +1 -1
  30. package/dist/templates/cursor/commands/cursor2plus-setup.md +1 -1
  31. package/dist/templates/cursor/commands/handoff.md +99 -0
  32. package/dist/templates/cursor/rules/cstl-cursor-modes.mdc +2 -2
  33. package/dist/templates/cursor/rules/retrieval-routing.mdc +1 -1
  34. package/dist/templates/markdown/agents.md +30 -2
  35. package/dist/templates/markdown/{spec/guides → framework}/cursor-native-modes-guide.md.txt +2 -2
  36. package/dist/templates/markdown/{spec/guides → framework}/cursor-subagent-policy.md.txt +1 -1
  37. package/dist/templates/markdown/framework/dogfood-only-surfaces.md.txt +31 -0
  38. package/dist/templates/markdown/framework/index.md.txt +27 -0
  39. package/dist/templates/markdown/framework/internal-skills-cursor-reachability.md.txt +44 -0
  40. package/dist/templates/markdown/framework/prd-grill-frontier.md.txt +83 -0
  41. package/dist/templates/markdown/{spec/guides → framework}/verification-strength-guide.md.txt +2 -2
  42. package/dist/templates/markdown/index.d.ts +22 -10
  43. package/dist/templates/markdown/index.d.ts.map +1 -1
  44. package/dist/templates/markdown/index.js +70 -11
  45. package/dist/templates/markdown/index.js.map +1 -1
  46. package/dist/templates/markdown/prompts/run-semantic-slice-12.md.txt +1 -1
  47. package/dist/templates/markdown/spec/guides/index.md.txt +5 -13
  48. package/dist/templates/markdown/spec/guides/prototype-guide.md.txt +10 -10
  49. package/dist/templates/markdown/spec/guides/test-discipline-guide.md.txt +1 -1
  50. package/dist/templates/shared-hooks/session-start.py +1 -1
  51. package/dist/templates/trellis/CONTEXT.md +53 -0
  52. package/dist/templates/trellis/config.yaml +1 -1
  53. package/dist/templates/trellis/docs/adr/README.md +21 -0
  54. package/dist/templates/trellis/index.d.ts +2 -0
  55. package/dist/templates/trellis/index.d.ts.map +1 -1
  56. package/dist/templates/trellis/index.js +3 -0
  57. package/dist/templates/trellis/index.js.map +1 -1
  58. package/dist/templates/trellis/local/README.md +2 -2
  59. package/dist/templates/trellis/scripts/common/artifact_locale.py +16 -0
  60. package/dist/templates/trellis/scripts/common/parent_orchestration.py +1 -1
  61. package/dist/templates/trellis/scripts/common/task_store.py +7 -5
  62. package/dist/templates/trellis/scripts/common/test_observable_defaults.py +10 -4
  63. package/dist/templates/trellis/scripts/cursor_retrieval_probe_prompt.md +4 -5
  64. package/dist/templates/trellis/tasks/locale/en/default-prd.md +8 -0
  65. package/dist/templates/trellis/tasks/locale/zh/default-prd.md +8 -0
  66. package/dist/templates/trellis/workflow.md +17 -11
  67. package/dist/utils/manifest-prune.d.ts.map +1 -1
  68. package/dist/utils/manifest-prune.js +7 -0
  69. package/dist/utils/manifest-prune.js.map +1 -1
  70. package/dist/utils/retrieval-execution-telemetry.js +1 -1
  71. package/dist/utils/retrieval-execution-telemetry.js.map +1 -1
  72. package/package.json +2 -2
  73. package/dist/templates/markdown/spec/guides/cursor-trellis-release-coexistence-guide.md.txt +0 -166
  74. package/dist/templates/markdown/spec/guides/goal-release-regression-runbook.md.txt +0 -132
  75. /package/dist/templates/markdown/{spec/guides → framework}/artifact-locale-guide.md.txt +0 -0
  76. /package/dist/templates/markdown/{spec/guides → framework}/cursor-context-injection-guide.md.txt +0 -0
  77. /package/dist/templates/markdown/{spec/guides → framework}/cursor-semantic-compliance.md.txt +0 -0
  78. /package/dist/templates/markdown/{spec/guides → framework}/execution-strategy.md.txt +0 -0
  79. /package/dist/templates/markdown/{spec/guides → framework}/injection-budget-guide.md.txt +0 -0
  80. /package/dist/templates/markdown/{spec/guides → framework}/retrieval-daily-guide.md.txt +0 -0
@@ -22,22 +22,14 @@ These guides help you **ask the right questions before coding**.
22
22
  | Guide | Purpose | When to Use |
23
23
  |-------|---------|-------------|
24
24
  | [Durable Learning Decision Guide](./durable-learning-decision-guide.md) | Choose no-learning vs spec update vs learning artifact before archive | Finishing a task, parent review, or after `/cstl:break-loop` |
25
- | [Verification Strength Guide](./verification-strength-guide.md) | Graded verify depth (Lite/Full/Parent × verification_profile); false-green probes; **not** TDD | Phase 3.1, writing `verify.md`, choosing check depth, archive prep |
26
25
  | [Debug Loop Guide](./debug-loop-guide.md) | Debug discipline: tight red-capable feedback loop before hypotheses; six phases; `[DEBUG-xxx]` tags; Redact; PS7 HITL | User reports a hard bug / performance regression; diagnosis in progress (before `cstl-break-loop`) |
27
26
  | [Test Discipline Guide](./test-discipline-guide.md) | 测试写作纪律:pre-agreed seams、垂直切片、三反模式、mock 边界;**不是 TDD 要求** | Writing or reviewing tests; planning what to test; choosing mock boundaries |
28
- | [Prototype Guide](./prototype-guide.md) | 原型纪律:一次性代码回答设计问题;问题决定形态;LOGIC/Python 默认、UI 不适用;折叠重写不 mv、留证 + 清理 | A design question needs a runnable throwaway answer (mechanism / state model / algorithm); folding a verdict into design or real code |
29
- | [Injection Budget Guide](./injection-budget-guide.md) | Per-channel caps, jsonl manifest limits, Layer 2 defaults; matrix-aligned | Adding alwaysApply rules, curating jsonl, subagent dispatch |
27
+ | [Prototype Guide](./prototype-guide.md) | 原型纪律:一次性代码回答设计问题;问题决定形态;LOGIC/Python 默认、UI 原型按项目约定;折叠重写不 mv、留证 + 清理 | A design question needs a runnable throwaway answer (mechanism / state model / algorithm); folding a verdict into design or real code |
30
28
  | [Code Reuse Thinking Guide](./code-reuse-thinking-guide.md) | Identify patterns and reduce duplication | When you notice repeated patterns |
31
29
  | [Cross-Layer Thinking Guide](./cross-layer-thinking-guide.md) | Think through data flow across layers | Features spanning multiple layers |
32
- | [Retrieval daily guide](./retrieval-daily-guide.md) | rg / codegraph / fast-context / smart-search / pack / router | Planning, research, finish verification |
33
- | [Cursor semantic compliance](./cursor-semantic-compliance.md) | Native planned vs executed semantic (`SemanticSearch`, classify_tool_calls) | Retrieval eval, OC-15 compliance runs, telemetry interpretation |
34
- | [Cursor subagent policy](./cursor-subagent-policy.md) | Task tool scenes, Agent mode, `model_policy: cursor-configured`, Cursor++ | Parent/Child dispatch, research/implement/check, parallel execution |
35
- | [Execution strategy](./execution-strategy.md) | `suggest-execution-strategy`, rules JSON, inline vs worker vs child-task | Writing `implement.md` contract, Phase 2 dispatch |
36
- | [Cursor context injection guide](./cursor-context-injection-guide.md) | Which Cursor channels reach the model (sessionStart bug, .cursor/rules, AGENTS.md) | "Agent ignored instructions" on Cursor, adding always-visible rules |
37
- | [Cursor native modes guide](./cursor-native-modes-guide.md) | Prefer Plan / Ask / Debug / Agent / Multitask × Trellis phases & artifacts | P1 mode routing, Parent/Multitask, Ask↔No Task, Plan↔Phase 1, Debug evidence |
38
- | [Artifact locale guide](./artifact-locale-guide.md) | Human-reviewed PRD/design/implement/verify/handoff language (zh \| en) | `task.py create`, planning skills, session context; not full CLI i18n |
39
- | [cursor-trellis release & coexistence](./cursor-trellis-release-coexistence-guide.md) | npm publish runbook, `cstl-v*` tags, upstream Trellis coexistence | Releasing cstl, scenario 2 init, migrate gate, uninstall AGENTS strip |
40
- | [Goal release regression runbook](./goal-release-regression-runbook.md) | Goal npm 发布前回归闸:mock/live 命令、契约路径、SDK timeout 残余风险 | Root npm 闸、Parent integrate 前 Goal 自检、hardening 后发布 |
30
+ | [Cross-Platform Thinking Guide](./cross-platform-thinking-guide.md) | Catch OS / filesystem assumptions (paths, shells, line endings, command availability) before they become bugs | Code that may run on Windows / macOS / Linux; paths or shell commands in scripts, hooks, or docs |
31
+
32
+ > **Framework & platform docs live in `.cstl/framework/`** (framework-owned, refreshed by `cstl update`) verification strength, injection budget, retrieval routing, Cursor modes/agents/injection, PRD Grill, execution strategy, artifact locale, and more. See [`.cstl/framework/index.md`](../../framework/index.md).
41
33
 
42
34
  ### When using `/cstl-goal` (optional long-horizon mode)
43
35
 
@@ -110,7 +102,7 @@ These guides help you **ask the right questions before coding**.
110
102
  - [ ] 结论要写回 design / prd / 真实代码,但想先跑起来看证据
111
103
  - [ ] 准备写一次性脚本回答「如果……会怎样」
112
104
 
113
- → Read [Prototype Guide](./prototype-guide.md) (LOGIC/Python default; UI N/A; fold+evidence+cleanup)
105
+ → Read [Prototype Guide](./prototype-guide.md) (LOGIC/Python default; UI prototypes only by project convention; fold+evidence+cleanup)
114
106
 
115
107
  ---
116
108
 
@@ -1,6 +1,6 @@
1
1
  # Prototype Guide(原型纪律)
2
2
 
3
- > **Purpose**: 用一次性代码回答**设计问题**——先写清问题,再由问题决定原型形态;答案折叠进真实代码(**重写不 mv**),原型留证后清理,不留工作区腐烂。本 harness:**LOGIC / Python 默认,UI 不适用(N/A)**。
3
+ > **Purpose**: 用一次性代码回答**设计问题**——先写清问题,再由问题决定原型形态;答案折叠进真实代码(**重写不 mv**),原型留证后清理,不留工作区腐烂。默认形态 **LOGIC / Python 单脚本**;若项目有 UI 面,UI 原型按项目约定执行(见 §5 / §6)。
4
4
 
5
5
  ---
6
6
 
@@ -18,7 +18,7 @@
18
18
 
19
19
  - **不接真实 DB / 服务**:原型依赖一律假数据 / 内存 / 显式标记的临时本地文件。
20
20
  - **不直接升生产**:原型的代码路径不是生产代码的捷径;折叠时**重写**,不 `mv`。
21
- - **不做 UI(本 harness)**:本 harness UI 面,UI 原型不适用(见 §6)。
21
+ - **不做 UI(默认)**:默认形态是 LOGIC / Python 单脚本;除非项目明确有 UI 面且约定 UI 原型(见 §6)。
22
22
  - **不替代测试 / 调试 / 需求发现**:见 §12 边界(单向链)。
23
23
 
24
24
  ## 3. Hard rules
@@ -37,9 +37,9 @@
37
37
 
38
38
  回答不了这个问题,就说明原型还没开始对。
39
39
 
40
- ## 5. Shape: LOGIC(Python)— default for this harness
40
+ ## 5. Shape: LOGIC(Python)— default
41
41
 
42
- harness 的 LOGIC 默认形态(替代 Matt HTML 默认;本仓库无 UI 面):
42
+ 默认形态 **LOGIC / Python 单脚本**(可替代单 HTML 默认;项目无 UI 面时即此形态):
43
43
 
44
44
  - **单个可运行脚本**,路径二选一:
45
45
  - `.tmp/prototypes/<slug>/run.py`(工作区 scratch;**惰性创建,不预建空目录**)
@@ -50,9 +50,9 @@
50
50
  - **运行**:`python run.py` 即得可观察输出,无额外步骤。
51
51
  - 最小骨架示例见 §13。
52
52
 
53
- ## 6. Shape: UI — N/A for this harness
53
+ ## 6. Shape: UI — opt-in by project convention
54
54
 
55
- **不适用 / N/A。** harness 没有 UI 面(agent CLI + 文档工作流),**不写 UI 脚手架**、不做 UI 变体原型、不引入 UI 分支。若上游项目需要 UI 原型,那是上游项目自己的事,不进本 harness 主树。
55
+ 默认**不做 UI 原型**(LOGIC / Python 单脚本优先)。仅当项目明确有 UI 面且已有 UI 原型约定时,才按项目约定写 UI 脚手架 / UI 变体原型;否则**不写 UI 脚手架**、不做 UI 变体原型、不引入 UI 分支。若不确定项目是否需要 UI 原型,先问,不默认开写。
56
56
 
57
57
  ## 7. Visibility of state
58
58
 
@@ -75,8 +75,8 @@
75
75
 
76
76
  | 层 | 手段 | 适用 |
77
77
  | --- | --- | --- |
78
- | A | git **throwaway 分支**提交(如 `proto/<slug>`,离开 main),留上下文指针 | git 仓库(如 cursor-trellis / smart-search) |
79
- | B | **路径快照**:复制到 `.cstl/tasks/<task>/research/prototype-<slug>.py`(或任务目录等价位置),并在 handoff.md / verify.md 记录路径 | **非 git 仓库——本 harness 根目录的默认手段** |
78
+ | A | git **throwaway 分支**提交(如 `proto/<slug>`,离开 main),留上下文指针 | git 仓库 |
79
+ | B | **路径快照**:复制到 `.cstl/tasks/<task>/research/prototype-<slug>.py`(或任务目录等价位置),并在 handoff.md / verify.md 记录路径 | **非 git 仓库的默认手段** |
80
80
 
81
81
  - 工作位置本身是任务 `research/prototype-<slug>.py` 时,即工作即留证,无需再复制。
82
82
  - A / B 可并用。
@@ -94,7 +94,7 @@
94
94
  | 过早泛化 | 加参数 / 抽象 / 配置,问题还没回答完 | 回到最小:只够回答问题 |
95
95
  | 接生产依赖 | 连真实 DB / 服务 / 凭据 | 假数据 / 内存 / 显式临时文件 |
96
96
  | 当长期分支养 | 原型分支 / 目录持续叠加功能、迟迟不折叠 | 答案到手即折叠 + 清理 |
97
- | 在本项目启用 UI 分支 | 写 UI 脚手架 / UI 变体原型 | harness UI N/A,直接不做 |
97
+ | 在本项目启用 UI 分支 | 写 UI 脚手架 / UI 变体原型 | 默认不做 UI 原型;项目有 UI 约定时按 §6 执行 |
98
98
  | `mv` 升生产 | 原型文件直接改名 / 移入真实路径 | 折叠时重写进真实 module |
99
99
  | 答案不留证 | 跑完即删、结论没落任何地方 | §8 折叠 + §9 留证先行 |
100
100
 
@@ -130,7 +130,7 @@ if __name__ == "__main__":
130
130
  ## 14. Checklist
131
131
 
132
132
  - [ ] §4 设计问题已写清(一句话,在文件头)
133
- - [ ] 形态:LOGIC / Python 单脚本;UI 不适用(未写 UI 脚手架)
133
+ - [ ] 形态:LOGIC / Python 单脚本;UI 原型仅按项目约定(默认不做)
134
134
  - [ ] 不接真实 DB / 服务;无持久化(或显式临时文件且会清理)
135
135
  - [ ] 无测试、无泛化——可跑即可
136
136
  - [ ] 状态可见:关键状态每次 action 后打印
@@ -10,7 +10,7 @@
10
10
 
11
11
  - **不要求 red-before-green**。可以先写测试(test-first 是可选的节奏),也可以实现后补测试——纪律在两种时序下同样适用。
12
12
  - **不强制 TDD 循环**。本 guide 不定义 red → green → refactor 流程;不设「每个函数必须单测」门槛。
13
- - 与 [Verification Strength Guide](./verification-strength-guide.md) 兼容:验证**强度**(任务 closeout 要验多深)≠ red-green 仪式;本 guide 管的是「测试怎么写才值得保留」。
13
+ - 与 [Verification Strength Guide](.cstl/framework/verification-strength-guide.md) 兼容:验证**强度**(任务 closeout 要验多深)≠ red-green 仪式;本 guide 管的是「测试怎么写才值得保留」。
14
14
 
15
15
  > 一句话:**先确认测点(seam),再写测试;测试验公共行为,不验实现。**
16
16
 
@@ -856,7 +856,7 @@ Trellis compact SessionStart context. Use it to orient the session; load details
856
856
  "`smart-search` CLI). CLI discovery: `TRELLIS_SMART_SEARCH_COMMAND` / "
857
857
  "`smart_search.command`, then PATH `smart-search`, then project "
858
858
  "`node_modules/.bin/smart-search`, then optional repo-local layouts "
859
- "(see `.cstl/spec/guides/retrieval-daily-guide.md`). "
859
+ "(see `.cstl/framework/retrieval-daily-guide.md`). "
860
860
  "`smart-search-cli` is an internal workflow skill name — not a file under `.cursor/skills/` on Cursor. "
861
861
  "If `run_smart_search.py` status is `not_configured` or `failed` (incl. timeout), "
862
862
  "use **WebSearch/WebFetch**, persist `{TASK}/research/*.md` with "
@@ -0,0 +1,53 @@
1
+ # CONTEXT
2
+
3
+ Project domain glossary — the single source of truth for project-specific terms used in this repository. Read **on demand** when project terms matter (e.g. before planning questions, PRD writing, or check reviews); **never always-inject** — this file stays out of the automatic session prompt budget.
4
+
5
+ Only project-specific concepts belong here; generic programming concepts and framework terms already documented under `.cstl/` do not need entries. Each entry: term + one-line definition + `_Avoid_` aliases when a common synonym causes confusion. Language follows `artifact_locale` (en → English only; zh → Chinese terms with English gloss).
6
+
7
+ ## Framework domain seed (optional)
8
+
9
+ Optional starting set — delete entries that do not apply to this project:
10
+
11
+ **Task** (_task_):
12
+ CSTL task, directory under `.cstl/tasks/`, lifecycle planning / in_progress / completed.
13
+ _Avoid_: ticket, issue
14
+
15
+ **PRD** (_product requirements document_):
16
+ Task requirements artifact: Goal / User Stories / Requirements / Acceptance Criteria / Implementation Decisions.
17
+ _Avoid_: spec sheet
18
+
19
+ **Gate** (_gate_):
20
+ Mandatory checkpoint at planning / execution / archive boundaries.
21
+ _Avoid_: —
22
+
23
+ **Evidence** (_evidence_):
24
+ Verification evidence in `verify.md` (command output, paths, acceptance).
25
+ _Avoid_: report
26
+
27
+ **Contract** (_contract_):
28
+ Execution contract in `implement.md` (execution_mode / verification_profile / quality_gates).
29
+ _Avoid_: plan
30
+
31
+ **Child** (_child_):
32
+ Independently verifiable deliverable under a Parent task tree.
33
+ _Avoid_: sub-ticket
34
+
35
+ **artifact_locale** (_artifact locale_):
36
+ Project artifact language setting (en / zh).
37
+ _Avoid_: locale
38
+
39
+ **Task Ladder** (_task ladder_):
40
+ Triage ladder: No Task / Micro-Grill / Lite / Full / Parent.
41
+ _Avoid_: —
42
+
43
+ ## Project glossary
44
+
45
+ Add project-specific terms below (term + one-line definition + `_Avoid_` aliases):
46
+
47
+ | Term | Definition | Avoid |
48
+ | --- | --- | --- |
49
+ | _TBD_ | | |
50
+
51
+ ## ADR
52
+
53
+ Architecture decisions live in `docs/adr/` (lazy-created). Write an ADR only when **all three** conditions hold: hard to reverse · would surprise without context · real tradeoff. See `docs/adr/README.md` for the full boundary.
@@ -106,7 +106,7 @@ max_journal_lines: 2000
106
106
  #-------------------------------------------------------------------------------
107
107
  # Cursor subagent dispatch (documentation only — not Cursor product settings)
108
108
  #-------------------------------------------------------------------------------
109
- # See .cstl/spec/guides/cursor-subagent-policy.md
109
+ # See .cstl/framework/cursor-subagent-policy.md
110
110
  #
111
111
  # cursor:
112
112
  # subagent_dispatch:
@@ -0,0 +1,21 @@
1
+ # ADR — Architecture Decision Records
2
+
3
+ `docs/adr/` records architecture decisions. **Lazy-created**: the directory and `0001-*.md` files appear only when a real decision needs recording — do not pre-create them.
4
+
5
+ ## When to write an ADR (all three conditions)
6
+
7
+ Write an ADR only when **all three** hold:
8
+
9
+ 1. **Hard to reverse** — the decision is difficult or expensive to undo.
10
+ 2. **Would surprise without context** — a future reader would ask "why is it this way?" without background.
11
+ 3. **Real tradeoff** — there was a genuine choice between viable alternatives.
12
+
13
+ A single paragraph is enough. Number sequentially: `0001-<slug>.md`, `0002-<slug>.md`, …
14
+
15
+ ## Three-layer boundary
16
+
17
+ | Layer | Owns |
18
+ | --- | --- |
19
+ | Knowledge base (rejections) | Rejection reasons / why-not |
20
+ | `docs/adr/` | Decision records / why-chosen |
21
+ | `.cstl/spec/` | Coding guidelines / conventions |
@@ -88,6 +88,8 @@ export declare const codegraphSessionSmokeScript: string;
88
88
  export declare const workflowMdTemplate: string;
89
89
  export declare const configYamlTemplate: string;
90
90
  export declare const gitignoreTemplate: string;
91
+ export declare const contextMdTemplate: string;
92
+ export declare const adrReadmeTemplate: string;
91
93
  export declare const poolReadmeTemplate: string;
92
94
  export declare const poolPlanTemplate: string;
93
95
  export declare const poolItemsGitkeepTemplate: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/templates/trellis/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/templates/trellis/index.ts"],"names":[],"mappings":"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"}
@@ -100,6 +100,9 @@ export const codegraphSessionSmokeScript = readTemplate("scripts/codegraph_sessi
100
100
  export const workflowMdTemplate = readTemplate("workflow.md");
101
101
  export const configYamlTemplate = readTemplate("config.yaml");
102
102
  export const gitignoreTemplate = readTemplate("gitignore.txt");
103
+ // Project domain glossary stub + ADR rules (lazy-created docs/adr/)
104
+ export const contextMdTemplate = readTemplate("CONTEXT.md");
105
+ export const adrReadmeTemplate = readTemplate("docs/adr/README.md");
103
106
  // Review-pool skeleton (mechanism only — no user items)
104
107
  export const poolReadmeTemplate = readTemplate("pool/README.md");
105
108
  export const poolPlanTemplate = readTemplate("pool/plan.md");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/templates/trellis/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/templates/trellis/index.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ User-wide model doc: `~/.ccursor/trellis-task-models.json5` (see `../trellis-tas
20
20
 
21
21
  ## Compatibility window
22
22
 
23
- - **Verified:** Cursor **3.7.27** / Cursor++ **v0.0.11** (see `.cstl/spec/guides/cursor-subagent-policy.md`, 2026-06-18)
23
+ - **Verified:** Cursor **3.7.27** / Cursor++ **v0.0.11** (see `.cstl/framework/cursor-subagent-policy.md`, 2026-06-18)
24
24
  - **Re-verify** after any Cursor or Cursor++ upgrade: `python patch_wpelc8.py --check-compat`
25
25
  - If `--check-compat` reports `fail` or `unknown`, treat the patch as stale until you re-apply or revert
26
26
 
@@ -82,4 +82,4 @@ python smoke.py # env + patch_status smoke
82
82
 
83
83
  Each role: `{ "primary": "<name>", "fallback": "<name>" }`. Names: **apiModel** or **displayName** from Cursor++ (`--list-models`). **Explore** is not in this file — use the Cursor++ panel.
84
84
 
85
- Policy: `.cstl/spec/guides/cursor-subagent-policy.md` (Method 2.5 / 2.6).
85
+ Policy: `.cstl/framework/cursor-subagent-policy.md` (Method 2.5 / 2.6).
@@ -95,6 +95,10 @@ def _builtin_prd_template(locale: str) -> str:
95
95
 
96
96
  {goal}
97
97
 
98
+ ## 用户故事
99
+
100
+ - [ ] (用户可见行为;用极长可勾选列表穷举,不是实现步骤)
101
+
98
102
  ## 需求
99
103
 
100
104
  - 待补充
@@ -103,6 +107,10 @@ def _builtin_prd_template(locale: str) -> str:
103
107
 
104
108
  - [ ] 待补充
105
109
 
110
+ ## 实现决策
111
+
112
+ - (已定决策;**不要写文件路径**——路径会过时,放 design/implement)
113
+
106
114
  ## 备注
107
115
 
108
116
  - `prd.md` 聚焦需求、约束与验收标准。
@@ -115,6 +123,10 @@ def _builtin_prd_template(locale: str) -> str:
115
123
 
116
124
  {goal}
117
125
 
126
+ ## User Stories
127
+
128
+ - [ ] (User-visible behaviors; enumerate as a long checkable list, not implementation steps)
129
+
118
130
  ## Requirements
119
131
 
120
132
  - TBD
@@ -123,6 +135,10 @@ def _builtin_prd_template(locale: str) -> str:
123
135
 
124
136
  - [ ] TBD
125
137
 
138
+ ## Implementation Decisions
139
+
140
+ - (Recorded decisions; **do not write file paths** — paths go stale; keep them in design/implement)
141
+
126
142
  ## Notes
127
143
 
128
144
  - Keep `prd.md` focused on requirements, constraints, and acceptance criteria.
@@ -271,7 +271,7 @@ def build_child_prompt(
271
271
  f"Selected task: {child_rel}",
272
272
  "",
273
273
  "Delivery mode: subagent (Cursor)",
274
- "- **Default:** Parent session dispatches **Task** with `subagent_type=cstl-implement` and this prompt as the task description (writable sub-agent). Model under Cursor++ BYOK comes from `.cstl/local/cursor2plus/` routing (see `cursor-subagent-policy.md` Method 2.5/2.6).",
274
+ "- **Default:** Parent session dispatches **Task** with `subagent_type=cstl-implement` and this prompt as the task description (writable sub-agent). Model under Cursor++ BYOK comes from `.cstl/local/cursor2plus/` routing (see `.cstl/framework/cursor-subagent-policy.md` Method 2.5/2.6).",
275
275
  "- **Exception:** If parent `child-prompts.md` or the user names this child for a **separate writable Agent chat**, open a new Agent session, pick the model manually, paste this prompt — do not use Task from Parent.",
276
276
  "- Parent retains `review-child` / `integrate-child`. Child must not nest further `cstl-research` / `cstl-implement` / `cstl-check` Task dispatches.",
277
277
  f"- Parent orchestration: `execution_topology={topo}`, `merge_limit={merge_lim}`.",
@@ -257,10 +257,12 @@ _SUBAGENT_CONFIG_DIRS: tuple[str, ...] = (
257
257
  ".pi", # Pi Agent
258
258
  )
259
259
 
260
- _STABLE_SPEC_SEED_PATHS: tuple[str, ...] = (
260
+ # Stable seed paths for jsonl create: one user-owned thinking-guide index plus
261
+ # framework-owned verification/injection docs (both always present after init).
262
+ _STABLE_SEED_PATHS: tuple[str, ...] = (
261
263
  ".cstl/spec/guides/index.md",
262
- ".cstl/spec/guides/verification-strength-guide.md",
263
- ".cstl/spec/guides/injection-budget-guide.md",
264
+ ".cstl/framework/verification-strength-guide.md",
265
+ ".cstl/framework/injection-budget-guide.md",
264
266
  )
265
267
 
266
268
 
@@ -289,7 +291,7 @@ def _resolve_seed_spec_paths(
289
291
  for path in suggest_spec_targets(repo_root, task_dir, task_data):
290
292
  if path not in candidates:
291
293
  candidates.append(path)
292
- for rel in _STABLE_SPEC_SEED_PATHS:
294
+ for rel in _STABLE_SEED_PATHS:
293
295
  if rel not in candidates:
294
296
  candidates.append(rel)
295
297
 
@@ -298,7 +300,7 @@ def _resolve_seed_spec_paths(
298
300
  return existing[:3]
299
301
 
300
302
  fallback = [
301
- rel for rel in _STABLE_SPEC_SEED_PATHS if (repo_root / rel).is_file()
303
+ rel for rel in _STABLE_SEED_PATHS if (repo_root / rel).is_file()
302
304
  ]
303
305
  return fallback[:3]
304
306
 
@@ -32,8 +32,11 @@ def test_write_seed_jsonl_uses_real_spec_paths(tmp_path: Path) -> None:
32
32
  repo_root = tmp_path / "repo"
33
33
  spec_root = repo_root / ".cstl" / "spec" / "guides"
34
34
  spec_root.mkdir(parents=True)
35
- for name in ("index.md", "verification-strength-guide.md", "injection-budget-guide.md"):
36
- (spec_root / name).write_text(f"# {name}\n", encoding="utf-8")
35
+ (spec_root / "index.md").write_text("# index.md\n", encoding="utf-8")
36
+ framework_root = repo_root / ".cstl" / "framework"
37
+ framework_root.mkdir(parents=True)
38
+ for name in ("verification-strength-guide.md", "injection-budget-guide.md"):
39
+ (framework_root / name).write_text(f"# {name}\n", encoding="utf-8")
37
40
 
38
41
  task_dir = repo_root / ".cstl" / "tasks" / "08-07-test-seed"
39
42
  task_dir.mkdir(parents=True)
@@ -44,7 +47,8 @@ def test_write_seed_jsonl_uses_real_spec_paths(tmp_path: Path) -> None:
44
47
 
45
48
  rows = [json.loads(line) for line in jsonl_path.read_text(encoding="utf-8").splitlines() if line.strip()]
46
49
  assert len(rows) >= 2
47
- assert all("file" in row and row["file"].startswith(".cstl/spec/") for row in rows)
50
+ assert all("file" in row for row in rows)
51
+ assert all(row["file"].startswith(".cstl/spec/") or row["file"].startswith(".cstl/framework/") for row in rows)
48
52
  assert all("_example" not in row for row in rows)
49
53
  for row in rows:
50
54
  assert (repo_root / row["file"]).is_file()
@@ -55,7 +59,9 @@ def test_resolve_seed_spec_paths_prefers_existing_guides(tmp_path: Path) -> None
55
59
  guides = repo_root / ".cstl" / "spec" / "guides"
56
60
  guides.mkdir(parents=True)
57
61
  (guides / "index.md").write_text("# index\n", encoding="utf-8")
58
- (guides / "verification-strength-guide.md").write_text("# verify\n", encoding="utf-8")
62
+ framework_root = repo_root / ".cstl" / "framework"
63
+ framework_root.mkdir(parents=True)
64
+ (framework_root / "verification-strength-guide.md").write_text("# verify\n", encoding="utf-8")
59
65
 
60
66
  task_dir = repo_root / ".cstl" / "tasks" / "08-07-test-paths"
61
67
  task_dir.mkdir(parents=True)
@@ -85,7 +85,7 @@ Task: Call the fast-context semantic search with the query:
85
85
  Report:
86
86
  1. Whether the tool returned any results.
87
87
  2. If so, the top file path (expected to contain something under
88
- `.cstl/local/cursor2plus/` or `.cstl/spec/guides/cursor-subagent-policy.md`).
88
+ `.cstl/local/cursor2plus/` or `.cstl/framework/cursor-subagent-policy.md`).
89
89
  3. The exact tool name you invoked.
90
90
 
91
91
  Reply in this exact format:
@@ -155,8 +155,7 @@ Semantic question:
155
155
  Expected answer (for verification, do NOT reveal this to the solver path):
156
156
  the relevant logic lives in `.cstl/local/cursor2plus/patch_wpelc8.py` (the
157
157
  `WPeLc8` function patch) and is documented in
158
- `.cstl/spec/guides/cursor-subagent-policy.md` and
159
- `.cstl/spec/guides/cursor-subagent-reverse-engineering-report.md`.
158
+ `.cstl/framework/cursor-subagent-policy.md`.
160
159
 
161
160
  Reply in this exact format:
162
161
 
@@ -193,7 +192,7 @@ Semantic question (same as P-08 — no literal file/symbol/path clues in your qu
193
192
 
194
193
  Expected (for verification only — do not paste paths into fast_context_search query):
195
194
  Top hits should include `.cstl/local/cursor2plus/patch_wpelc8.py` and/or
196
- `.cstl/spec/guides/cursor-subagent-policy.md`.
195
+ `.cstl/framework/cursor-subagent-policy.md`.
197
196
 
198
197
  Reply in this exact format:
199
198
 
@@ -231,7 +230,7 @@ Semantic question (no literal clues):
231
230
  Expected (for verification only): the answer should weave together
232
231
  `.cursor/hooks/inject-retrieval-plan.py` (beforeSubmitPrompt injection),
233
232
  `.cursor/rules/retrieval-routing.mdc` (alwaysApply policy), and the
234
- `sessionStart` bug #158452 noted in `.cstl/spec/guides/cursor-context-injection-guide.md`.
233
+ `sessionStart` bug #158452 noted in `.cstl/framework/cursor-context-injection-guide.md`.
235
234
 
236
235
  Reply in this exact format:
237
236
 
@@ -4,6 +4,10 @@
4
4
 
5
5
  {goal}
6
6
 
7
+ ## User Stories
8
+
9
+ - [ ] (User-visible behaviors; enumerate as a long checkable list, not implementation steps)
10
+
7
11
  ## Requirements
8
12
 
9
13
  - TBD
@@ -12,6 +16,10 @@
12
16
 
13
17
  - [ ] TBD
14
18
 
19
+ ## Implementation Decisions
20
+
21
+ - (Recorded decisions; **do not write file paths** — paths go stale; keep them in design/implement)
22
+
15
23
  ## Notes
16
24
 
17
25
  - Keep `prd.md` focused on requirements, constraints, and acceptance criteria.
@@ -4,6 +4,10 @@
4
4
 
5
5
  {goal}
6
6
 
7
+ ## 用户故事
8
+
9
+ - [ ] (用户可见行为;用极长可勾选列表穷举,不是实现步骤)
10
+
7
11
  ## 需求
8
12
 
9
13
  - 待补充
@@ -12,6 +16,10 @@
12
16
 
13
17
  - [ ] 待补充
14
18
 
19
+ ## 实现决策
20
+
21
+ - (已定决策;**不要写文件路径**——路径会过时,放 design/implement)
22
+
15
23
  ## 备注
16
24
 
17
25
  - `prd.md` 聚焦需求、约束与验收标准。
@@ -10,6 +10,8 @@
10
10
  4. **Incremental development** — one task at a time
11
11
  5. **Capture learnings** — after each task, review and write new knowledge back to spec
12
12
 
13
+ **Session boundary** — Continue → clear → handoff (`cstl-handoff`, when the work needs to travel) → subagent → compact. A task directory's `handoff.md` is integration/delivery evidence, not a session handoff document.
14
+
13
15
  ---
14
16
 
15
17
  ## Trellis System
@@ -106,9 +108,9 @@ python3 ./.cstl/scripts/get_context.py --mode retrieval-pack --json --input <evi
106
108
 
107
109
  **Research-end hook (Cursor `stop`):** when the selected task has `{TASK}/research/*.md` or `research/smart-search/`, `.cursor/hooks/research-end-retrieval-pack.py` may write `{TASK}/research/retrieval-pack-latest.json` via `get_context --mode retrieval-pack`. Default session JSON is unchanged; use the file when closing research or before Phase 3.1.
108
110
 
109
- **Retrieval daily guide:** `.cstl/spec/guides/retrieval-daily-guide.md` — when to use rg, codegraph, fast-context-mcp, smart-search-cli (and Cursor web fallback), artifact/session memory, codebase router (suggest-only), and explicit retrieval-pack scoring.
111
+ **Retrieval daily guide:** `.cstl/framework/retrieval-daily-guide.md` — when to use rg, codegraph, fast-context-mcp, smart-search-cli (and Cursor web fallback), artifact/session memory, codebase router (suggest-only), and explicit retrieval-pack scoring.
110
112
 
111
- **Cursor subagent dispatch:** `.cstl/spec/guides/cursor-subagent-policy.md` — `cstl-research` / `cstl-implement` / `cstl-check`; Parent child default **Task** `cstl-implement` from Parent session (`generate-child-prompt --mode subagent`). **Cursor++ BYOK:** per-type models via `.cstl/local/cursor2plus/` + user/project JSON maps (not committed slugs). **Native Cursor API:** frontmatter `model:` on agents still works. PRD Grill stays in `cstl-brainstorm`, not a subagent. **Cursor++:** compatible v0.0.11+ (SubAgent readonly bug fixed).
113
+ **Cursor subagent dispatch:** `.cstl/framework/cursor-subagent-policy.md` — `cstl-research` / `cstl-implement` / `cstl-check`; Parent child default **Task** `cstl-implement` from Parent session (`generate-child-prompt --mode subagent`). **Cursor++ BYOK:** per-type models via `.cstl/local/cursor2plus/` + user/project JSON maps (not committed slugs). **Native Cursor API:** frontmatter `model:` on agents still works. PRD Grill stays in the planning session (Read `.cstl/framework/prd-grill-frontier.md`), not a subagent. **Cursor++:** compatible v0.0.11+ (SubAgent readonly bug fixed).
112
114
 
113
115
  ---
114
116
 
@@ -224,12 +226,16 @@ Before executing an upgrade that creates artifacts, changes task mode, adds gate
224
226
  | No selected task + small unclear ask | `cstl-micro-grill` |
225
227
  | No selected task + need dashboard | `cstl-start` |
226
228
  | Selected task + resume step | `cstl-continue` |
227
- | Planning / PRD | `cstl-brainstorm` |
228
- | Parent with parallel children | `generate-child-prompt --mode subagent`; writable Agent; see `.cstl/spec/guides/cursor-subagent-policy.md` |
229
+ | Planning / PRD | Read `.cstl/framework/prd-grill-frontier.md` (PRD Grill discipline; full body in the bundled brainstorm skill) |
230
+ | Parent with parallel children | `generate-child-prompt --mode subagent`; writable Agent; see `.cstl/framework/cursor-subagent-policy.md` |
231
+
232
+ ### Goal runtime (not a Task Ladder type)
233
+
234
+ **Goal** here means the **CLI subsystem** `cstl goal` (preflight → accept → run / pause / status / review), **not** a Task Ladder type and **not** Parent/Child orchestration. When the user says "use goal", run or suggest `cstl goal status` / `cstl goal preflight …` in the project terminal — do **not** create a "goal" task or map it to `add-subtask` / Parent-only planning. Default Cursor install has **no** `/cstl-goal` slash command (dogfood/extension only). See the AGENTS.md Invocation map.
229
235
 
230
236
  ### Cursor native modes (Prefer — don't replace)
231
237
 
232
- Full map: `.cstl/spec/guides/cursor-native-modes-guide.md` · per-turn slim rule: `.cursor/rules/cstl-cursor-modes.mdc`.
238
+ Full map: `.cstl/framework/cursor-native-modes-guide.md` · per-turn slim rule: `.cursor/rules/cstl-cursor-modes.mdc`.
233
239
  Task-driven: try callable native first (`SwitchMode` plan/agent, Multitask/`Task` when useful); **quiet cstl spine fallback** when not — no user-facing “不适配 mode” list.
234
240
 
235
241
  | Situation | Prefer Cursor mode | Trellis phase / note |
@@ -333,7 +339,7 @@ Framework refresh with no selected task: load `cstl-start` once; after the user
333
339
  <!-- Per-turn breadcrumb: shown throughout Phase 1 (status='planning') -->
334
340
 
335
341
  [workflow-state:planning]
336
- Load `cstl-brainstorm`; stay in planning.
342
+ Read `.cstl/framework/prd-grill-frontier.md` for PRD Grill discipline; stay in planning.
337
343
  Lightweight: `prd.md` can be enough. Complex: finish `prd.md`, `design.md`, and `implement.md`; run `task.py start-execution <task> --check`, report PASS with task plus current contract/fingerprint context, and ask for explicit execution approval before `--approved`.
338
344
  Multi-deliverable scope: consider a parent task plus independently verifiable child tasks; dependencies must be written in child artifacts, not implied by tree position.
339
345
  Sub-agent mode: curate `implement.jsonl` and `check.jsonl` as spec/research manifests before start.
@@ -395,7 +401,7 @@ Code committed. Run `/cstl:finish-work`; if dirty, return to Phase 3.4 first.
395
401
  When a user request matches one of these intents inside a selected task, route first, then load the detailed phase step if needed.
396
402
 
397
403
 
398
- - Planning or unclear requirements -> **Prefer Plan** when designing scope; load `cstl-brainstorm` for PRD grill (see `cursor-native-modes-guide.md`).
404
+ - Planning or unclear requirements -> **Prefer Plan** when designing scope; read `.cstl/framework/prd-grill-frontier.md` for PRD grill discipline (see `.cstl/framework/cursor-native-modes-guide.md`).
399
405
  - Read-only questions with no durable change -> **Prefer Ask**; classify No Task; do not create artifacts without consent.
400
406
  - `in_progress` implementation/check -> **Agent** default; if contract `execution_mode: worker`, dispatch `cstl-implement` / `cstl-check`; if `inline`, main session; if `child-task`, Child/Parent orchestration.
401
407
  - Repeated debugging / runtime evidence -> **Prefer Debug**; load `cstl-break-loop` when the same issue recurred; persist evidence in `verify.md`.
@@ -462,9 +468,9 @@ Skip when the user has already explicitly selected an appropriate task with `pyt
462
468
 
463
469
  #### 1.1 Requirement exploration `[required · repeatable]`
464
470
 
465
- Load the `cstl-brainstorm` skill and explore requirements interactively with the user per the skill's guidance.
471
+ Read `.cstl/framework/prd-grill-frontier.md` (PRD Grill discipline; full body in the bundled `brainstorm` skill) and explore requirements interactively with the user.
466
472
 
467
- The brainstorm skill will guide you to:
473
+ The PRD Grill discipline will guide you to:
468
474
  - Ask one question at a time
469
475
  - Prefer researching over asking the user
470
476
  - Prefer offering options over open-ended questions
@@ -681,9 +687,9 @@ Use `contextPack.selected` / `scoredEvidence` to order citations in `verify.md`.
681
687
 
682
688
  #### 3.1 Quality verification `[required · repeatable]`
683
689
 
684
- **Verification strength:** match closeout depth to task risk per `.cstl/spec/guides/verification-strength-guide.md` (Lite / Full / Parent × `verification_profile`; not TDD). Use `verify_evidence_probe.py` fixtures when validating gate behavior.
690
+ **Verification strength:** match closeout depth to task risk per `.cstl/framework/verification-strength-guide.md` (Lite / Full / Parent × `verification_profile`; not TDD). Use `verify_evidence_probe.py` fixtures when validating gate behavior.
685
691
 
686
- **Injection budget:** curate jsonl manifests and alwaysApply rules per `.cstl/spec/guides/injection-budget-guide.md`; probe with `injection_budget_probe.py` before adding per-turn policy.
692
+ **Injection budget:** curate jsonl manifests and alwaysApply rules per `.cstl/framework/injection-budget-guide.md`; probe with `injection_budget_probe.py` before adding per-turn policy.
687
693
 
688
694
  Verification / Review is evidence and judgment, not a hidden implementation loop. Load the `cstl-check` skill or agent and do a final review:
689
695
  - Spec compliance