@ibotor/smart-trellis 0.5.22 → 0.5.24
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/README.md +176 -153
- package/dist/cli/smart.js +3 -1
- package/dist/cli/smart.js.map +1 -1
- package/dist/commands/smart-init.d.ts +4 -1
- package/dist/commands/smart-init.d.ts.map +1 -1
- package/dist/commands/smart-init.js +96 -1
- package/dist/commands/smart-init.js.map +1 -1
- package/dist/configurators/shared.d.ts.map +1 -1
- package/dist/configurators/shared.js +2 -0
- package/dist/configurators/shared.js.map +1 -1
- package/dist/migrations/manifests/0.5.23.json +9 -0
- package/dist/templates/common/bundled-skills/trellis-dev-preflight/SKILL.md +162 -0
- package/dist/templates/common/bundled-skills/trellis-quality-review/SKILL.md +82 -0
- package/dist/templates/common/bundled-skills/trellis-quality-review/docs/overview.md +331 -0
- package/dist/templates/common/bundled-skills/trellis-quality-review/evals/evals.json +50 -0
- package/dist/templates/common/bundled-skills/trellis-quality-review/references/copy-fidelity.md +56 -0
- package/dist/templates/common/bundled-skills/trellis-quality-review/references/decision-tree.md +102 -0
- package/dist/templates/common/bundled-skills/trellis-quality-review/references/formatting-fidelity.md +37 -0
- package/dist/templates/common/bundled-skills/trellis-quality-review/references/framework-rules.md +59 -0
- package/dist/templates/common/bundled-skills/trellis-quality-review/references/report-format.md +23 -0
- package/dist/templates/common/bundled-skills/trellis-quality-review/references/safe-refactor-boundaries.md +158 -0
- package/dist/templates/common/bundled-skills/trellis-quality-review/references/scope-control.md +49 -0
- package/dist/templates/common/bundled-skills/trellis-quality-review/references/severity.md +105 -0
- package/dist/templates/common/bundled-skills/trellis-quality-review/references/small-change-fast-path.md +51 -0
- package/dist/templates/common/bundled-skills/trellis-quality-review/references/verification-selection.md +81 -0
- package/dist/templates/common/bundled-skills/trellis-quality-review/scripts/diff_scans.sh +145 -0
- package/dist/templates/common/bundled-skills/verification-before-completion/SKILL.md +139 -0
- package/dist/templates/common/commands/micro-task.md +33 -0
- package/dist/templates/trellis/workflow.md +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: verification-before-completion
|
|
3
|
+
description: Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions always
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Verification Before Completion
|
|
7
|
+
|
|
8
|
+
## Overview
|
|
9
|
+
|
|
10
|
+
Claiming work is complete without verification is dishonesty, not efficiency.
|
|
11
|
+
|
|
12
|
+
**Core principle:** Evidence before claims, always.
|
|
13
|
+
|
|
14
|
+
**Violating the letter of this rule is violating the spirit of this rule.**
|
|
15
|
+
|
|
16
|
+
## The Iron Law
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
If you haven't run the verification command in this message, you cannot claim it passes.
|
|
23
|
+
|
|
24
|
+
## The Gate Function
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
BEFORE claiming any status or expressing satisfaction:
|
|
28
|
+
|
|
29
|
+
1. IDENTIFY: What command proves this claim?
|
|
30
|
+
2. RUN: Execute the FULL command (fresh, complete)
|
|
31
|
+
3. READ: Full output, check exit code, count failures
|
|
32
|
+
4. VERIFY: Does output confirm the claim?
|
|
33
|
+
- If NO: State actual status with evidence
|
|
34
|
+
- If YES: State claim WITH evidence
|
|
35
|
+
5. ONLY THEN: Make the claim
|
|
36
|
+
|
|
37
|
+
Skip any step = lying, not verifying
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Common Failures
|
|
41
|
+
|
|
42
|
+
| Claim | Requires | Not Sufficient |
|
|
43
|
+
|-------|----------|----------------|
|
|
44
|
+
| Tests pass | Test command output: 0 failures | Previous run, "should pass" |
|
|
45
|
+
| Linter clean | Linter output: 0 errors | Partial check, extrapolation |
|
|
46
|
+
| Build succeeds | Build command: exit 0 | Linter passing, logs look good |
|
|
47
|
+
| Bug fixed | Test original symptom: passes | Code changed, assumed fixed |
|
|
48
|
+
| Regression test works | Red-green cycle verified | Test passes once |
|
|
49
|
+
| Agent completed | VCS diff shows changes | Agent reports "success" |
|
|
50
|
+
| Requirements met | Line-by-line checklist | Tests passing |
|
|
51
|
+
|
|
52
|
+
## Red Flags - STOP
|
|
53
|
+
|
|
54
|
+
- Using "should", "probably", "seems to"
|
|
55
|
+
- Expressing satisfaction before verification ("Great!", "Perfect!", "Done!", etc.)
|
|
56
|
+
- About to commit/push/PR without verification
|
|
57
|
+
- Trusting agent success reports
|
|
58
|
+
- Relying on partial verification
|
|
59
|
+
- Thinking "just this once"
|
|
60
|
+
- Tired and wanting work over
|
|
61
|
+
- **ANY wording implying success without having run verification**
|
|
62
|
+
|
|
63
|
+
## Rationalization Prevention
|
|
64
|
+
|
|
65
|
+
| Excuse | Reality |
|
|
66
|
+
|--------|---------|
|
|
67
|
+
| "Should work now" | RUN the verification |
|
|
68
|
+
| "I'm confident" | Confidence ≠ evidence |
|
|
69
|
+
| "Just this once" | No exceptions |
|
|
70
|
+
| "Linter passed" | Linter ≠ compiler |
|
|
71
|
+
| "Agent said success" | Verify independently |
|
|
72
|
+
| "I'm tired" | Exhaustion ≠ excuse |
|
|
73
|
+
| "Partial check is enough" | Partial proves nothing |
|
|
74
|
+
| "Different words so rule doesn't apply" | Spirit over letter |
|
|
75
|
+
|
|
76
|
+
## Key Patterns
|
|
77
|
+
|
|
78
|
+
**Tests:**
|
|
79
|
+
```
|
|
80
|
+
✅ [Run test command] [See: 34/34 pass] "All tests pass"
|
|
81
|
+
❌ "Should pass now" / "Looks correct"
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
**Regression tests (TDD Red-Green):**
|
|
85
|
+
```
|
|
86
|
+
✅ Write → Run (pass) → Revert fix → Run (MUST FAIL) → Restore → Run (pass)
|
|
87
|
+
❌ "I've written a regression test" (without red-green verification)
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
**Build:**
|
|
91
|
+
```
|
|
92
|
+
✅ [Run build] [See: exit 0] "Build passes"
|
|
93
|
+
❌ "Linter passed" (linter doesn't check compilation)
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
**Requirements:**
|
|
97
|
+
```
|
|
98
|
+
✅ Re-read plan → Create checklist → Verify each → Report gaps or completion
|
|
99
|
+
❌ "Tests pass, phase complete"
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
**Agent delegation:**
|
|
103
|
+
```
|
|
104
|
+
✅ Agent reports success → Check VCS diff → Verify changes → Report actual state
|
|
105
|
+
❌ Trust agent report
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Why This Matters
|
|
109
|
+
|
|
110
|
+
From 24 failure memories:
|
|
111
|
+
- your human partner said "I don't believe you" - trust broken
|
|
112
|
+
- Undefined functions shipped - would crash
|
|
113
|
+
- Missing requirements shipped - incomplete features
|
|
114
|
+
- Time wasted on false completion → redirect → rework
|
|
115
|
+
- Violates: "Honesty is a core value. If you lie, you'll be replaced."
|
|
116
|
+
|
|
117
|
+
## When To Apply
|
|
118
|
+
|
|
119
|
+
**ALWAYS before:**
|
|
120
|
+
- ANY variation of success/completion claims
|
|
121
|
+
- ANY expression of satisfaction
|
|
122
|
+
- ANY positive statement about work state
|
|
123
|
+
- Committing, PR creation, task completion
|
|
124
|
+
- Moving to next task
|
|
125
|
+
- Delegating to agents
|
|
126
|
+
|
|
127
|
+
**Rule applies to:**
|
|
128
|
+
- Exact phrases
|
|
129
|
+
- Paraphrases and synonyms
|
|
130
|
+
- Implications of success
|
|
131
|
+
- ANY communication suggesting completion/correctness
|
|
132
|
+
|
|
133
|
+
## The Bottom Line
|
|
134
|
+
|
|
135
|
+
**No shortcuts for verification.**
|
|
136
|
+
|
|
137
|
+
Run the command. Read the output. THEN claim the result.
|
|
138
|
+
|
|
139
|
+
This is non-negotiable.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# 微型快速任务
|
|
2
|
+
|
|
3
|
+
这是一个小改动快速通道。用户触发 `/trellis Micro Task`、`micro-task`
|
|
4
|
+
或“微型快速任务”时,按本指令执行;不要创建 Trellis task,不进入完整
|
|
5
|
+
Plan → Execute → Finish 流程,也不要默认派发 sub-agent。
|
|
6
|
+
|
|
7
|
+
## 默认执行顺序
|
|
8
|
+
|
|
9
|
+
1. 加载 `trellis-dev-preflight`,让它完成范围锁定和验证计划。
|
|
10
|
+
2. 读取与当前需求直接相关的文件上下文。
|
|
11
|
+
3. 必要时加载领域 skill,例如 Vue 任务加载 `vue-best-practices`,React
|
|
12
|
+
或 Next.js 任务加载 `vercel-react-best-practices`。
|
|
13
|
+
4. 直接定位并实现,保持最小 diff。
|
|
14
|
+
5. 运行最小必要验证;优先 scoped lint、typecheck、相关测试或必要的手动检查。
|
|
15
|
+
6. 加载 `verification-before-completion`,基于新鲜验证证据再做完成声明。
|
|
16
|
+
7. 简短总结:说明改了什么、验证了什么、是否存在历史失败或未验证风险。
|
|
17
|
+
|
|
18
|
+
## 禁止默认触发
|
|
19
|
+
|
|
20
|
+
微型任务默认禁止触发重型规划、分支、sub-agent 或 code review 流程,包括:
|
|
21
|
+
|
|
22
|
+
- Superpowers: `brainstorming`、`writing-plans`、`using-git-worktrees`、
|
|
23
|
+
`subagent-driven-development`、`requesting-code-review`
|
|
24
|
+
- Trellis: `trellis-brainstorm`、`trellis-before-dev`、`trellis-check`、
|
|
25
|
+
`trellis-continue`、`trellis-finish-work`、`trellis-quality-review`
|
|
26
|
+
|
|
27
|
+
只有当用户明确要求,或当前任务已经不再是微型任务时,才切换到对应流程。
|
|
28
|
+
|
|
29
|
+
## 降级规则
|
|
30
|
+
|
|
31
|
+
如果实现前发现任务涉及多模块设计、接口契约变更、大范围重构、复杂测试策略、
|
|
32
|
+
多轮需求澄清,或无法在当前范围内安全完成,停止微型通道并建议改用常规 Trellis
|
|
33
|
+
任务流程。
|
|
@@ -155,7 +155,7 @@ Phase 3: Finish → distill lessons + wrap-up
|
|
|
155
155
|
[workflow-state:no_task]
|
|
156
156
|
No active task. **A Direct answer** — pure Q&A / explanation / lookup / chat; no file writes + one-line answer + repo reads ≤ 2 files → AI judges, no override needed.
|
|
157
157
|
**B Create a task** — any implementation / code change / build / refactor work. Entry sequence: (1) `python3 ./.trellis/scripts/task.py create "<title>"` to create the task (status=planning, breadcrumb switches to [workflow-state:planning] for brainstorm + jsonl phase guidance) → (2) load `trellis-brainstorm` skill to discuss requirements with the user and iterate on prd.md → (3) once prd is done and jsonl is curated, run `task.py start <task-dir>` to enter [workflow-state:in_progress] for the implementation skeleton. **"It looks small" is NOT grounds for downgrading B to A or C**.
|
|
158
|
-
**C Inline change** (per-turn only, escape hatch for B) — the user's CURRENT message MUST contain one of: "skip trellis" / "no task" / "just do it" / "don't create a task" / "跳过 trellis" / "别走流程" / "小修一下" / "直接改" / "先别建任务" → briefly acknowledge ("ok, skipping trellis flow this turn"), then inline. **Without seeing one of these phrases you must NOT inline on your own**; do not invent an override the user never said.
|
|
158
|
+
**C Inline change** (per-turn only, escape hatch for B) — the user's CURRENT message MUST contain one of: "/trellis Micro Task" / "/trellis:micro-task" / "微型快速任务" / "skip trellis" / "no task" / "just do it" / "don't create a task" / "跳过 trellis" / "别走流程" / "小修一下" / "直接改" / "先别建任务" → briefly acknowledge ("ok, skipping trellis flow this turn"), then inline. **Without seeing one of these phrases you must NOT inline on your own**; do not invent an override the user never said.
|
|
159
159
|
[/workflow-state:no_task]
|
|
160
160
|
|
|
161
161
|
<!-- Per-turn breadcrumb: shown when there is no active task and
|