@seanyao/roll 2026.421.4 → 2026.423.1
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 +2 -0
- package/bin/roll +1 -1
- package/package.json +1 -1
- package/skills/roll-.changelog/SKILL.md +9 -2
- package/skills/roll-.clarify/SKILL.md +4 -1
- package/skills/roll-.echo/SKILL.md +5 -2
- package/skills/roll-.qa/SKILL.md +9 -2
- package/skills/roll-.review/SKILL.md +9 -2
- package/skills/roll-build/SKILL.md +1 -0
- package/skills/roll-debug/SKILL.md +8 -1
- package/skills/roll-design/SKILL.md +11 -4
- package/skills/roll-fix/SKILL.md +3 -2
- package/skills/roll-jot/SKILL.md +7 -0
- package/skills/roll-notes/SKILL.md +69 -0
- package/skills/roll-release/SKILL.md +8 -0
- package/skills/roll-research/SKILL.md +1 -0
- package/skills/roll-sentinel/SKILL.md +9 -1
- package/skills/roll-spar/SKILL.md +7 -6
package/README.md
CHANGED
|
@@ -141,6 +141,7 @@ Research → Design → Build → Check → Fix → (loop)
|
|
|
141
141
|
| Deep research (product / company / tech) | `$roll-research "subject"` |
|
|
142
142
|
| Patrol production for regressions | `$roll-sentinel patrol` |
|
|
143
143
|
| Debug a broken page | `$roll-debug <URL>` |
|
|
144
|
+
| Record a dev moment / diary entry | `$roll-notes "just fixed that nasty bug"` |
|
|
144
145
|
|
|
145
146
|
### Full Skill List
|
|
146
147
|
|
|
@@ -160,6 +161,7 @@ Research → Design → Build → Check → Fix → (loop)
|
|
|
160
161
|
| `$roll-.changelog` | Support | Auto-generate CHANGELOG from BACKLOG |
|
|
161
162
|
| `$roll-.echo` | Support | Passive intent clarification |
|
|
162
163
|
| `$roll-.clarify` | Support | Passive scope clarification for vague build requests |
|
|
164
|
+
| `$roll-notes` | Support | Project diary — append dev moments to `notes/YYYY-MM-DD.md` |
|
|
163
165
|
|
|
164
166
|
---
|
|
165
167
|
|
package/bin/roll
CHANGED
|
@@ -4,7 +4,7 @@ set -euo pipefail
|
|
|
4
4
|
# Roll — AI Agent Convention Manager
|
|
5
5
|
# Single source of truth for how all AI coding agents behave.
|
|
6
6
|
|
|
7
|
-
VERSION="2026.
|
|
7
|
+
VERSION="2026.423.1"
|
|
8
8
|
ROLL_HOME="${ROLL_HOME:-${HOME}/.roll}"
|
|
9
9
|
ROLL_CONFIG="${ROLL_HOME}/config.yaml"
|
|
10
10
|
ROLL_GLOBAL="${ROLL_HOME}/conventions/global"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@seanyao/roll",
|
|
3
|
-
"version": "2026.
|
|
3
|
+
"version": "2026.423.1",
|
|
4
4
|
"description": "Roll — Roll out features with AI agents",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"test": "find tests/unit tests/integration -name '*.bats' | sort | xargs ./tests/helpers/bats-core/bin/bats"
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
hidden: true
|
|
3
3
|
name: roll-.changelog
|
|
4
|
+
license: MIT
|
|
4
5
|
description: After build completion, extracts completed Stories from BACKLOG.md to generate CHANGELOG.md. Auto-triggered after successful deploy, keeping the external changelog in sync with the internal backlog.
|
|
5
6
|
---
|
|
6
7
|
|
|
@@ -10,9 +11,15 @@ After successful Build & Deploy, extracts completed Stories from BACKLOG.md to g
|
|
|
10
11
|
|
|
11
12
|
## When Triggered
|
|
12
13
|
|
|
13
|
-
- **Auto-triggered**: After successful deploy of `$roll-
|
|
14
|
+
- **Auto-triggered**: After successful deploy of `$roll-build` or `$roll-fix`
|
|
14
15
|
- **Manual trigger**: When user requests "update changelog" or "generate release notes"
|
|
15
16
|
|
|
17
|
+
## When Not to Use
|
|
18
|
+
|
|
19
|
+
- Generating commit messages or PR descriptions — this skill only runs post-deploy
|
|
20
|
+
- Recording dev diary / moments (use `$roll-notes`)
|
|
21
|
+
- Bumping package version (use `$roll-release`)
|
|
22
|
+
|
|
16
23
|
## Workflow
|
|
17
24
|
|
|
18
25
|
### 1. Read BACKLOG.md
|
|
@@ -71,7 +78,7 @@ git push
|
|
|
71
78
|
|
|
72
79
|
## Integration
|
|
73
80
|
|
|
74
|
-
After successful deploy in `$roll-
|
|
81
|
+
After successful deploy in `$roll-build` / `$roll-fix`:
|
|
75
82
|
|
|
76
83
|
```markdown
|
|
77
84
|
**Post-Deploy:**
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
hidden: true
|
|
3
3
|
name: roll-.clarify
|
|
4
|
+
license: MIT
|
|
4
5
|
description: |
|
|
5
6
|
Passive scope-clarification skill. Auto-triggers when roll-build receives vague or under-specified input in Fly mode. Summarizes intent and asks 3–5 targeted questions to establish boundaries before planning or coding.
|
|
6
7
|
This is a passive skill. Never announce "I'm using roll-.clarify." Just do it naturally: summarize, ask, wait.
|
|
@@ -18,11 +19,13 @@ Auto-invoked by `roll-build` (Fly mode) when the user input is:
|
|
|
18
19
|
- Contains ambiguous terms like "优化一下", "改一下", "加个东西"
|
|
19
20
|
- Could be interpreted in multiple ways
|
|
20
21
|
|
|
21
|
-
|
|
22
|
+
## When Not to Use
|
|
23
|
+
|
|
22
24
|
- Intent is already clear and actionable
|
|
23
25
|
- User gives a specific command with a skill trigger (e.g. `$roll-jot ...`)
|
|
24
26
|
- User is answering a clarification question you just asked
|
|
25
27
|
- The task is simple enough that misinterpretation risk is negligible
|
|
28
|
+
- User messy thoughts need restatement rather than questioning (use `$roll-.echo`)
|
|
26
29
|
|
|
27
30
|
## Behavior
|
|
28
31
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
hidden: true
|
|
3
3
|
name: roll-.echo
|
|
4
|
+
license: MIT
|
|
4
5
|
description: |
|
|
5
6
|
Passive intent clarification skill. Automatically activates when user input is vague, rambling, contradictory, or unclear. Restates the user's intent in structured, concise form and confirms before proceeding. Does NOT activate when intent is already clear — in that case, just execute directly.
|
|
6
7
|
This is a passive skill. Never announce "I'm using roll-.echo." Just do it naturally: restate, confirm, proceed.
|
|
@@ -22,11 +23,13 @@ This skill fires **automatically** when the AI detects unclear intent. It should
|
|
|
22
23
|
- Vague scope: "make it better", "fix this area", "do something about"
|
|
23
24
|
- The intent could reasonably be interpreted in 2+ very different ways
|
|
24
25
|
|
|
25
|
-
|
|
26
|
+
## When Not to Use
|
|
27
|
+
|
|
26
28
|
- Intent is already clear and actionable ("add a login button to the header")
|
|
27
|
-
- User gives a specific command with a skill trigger ("$roll-
|
|
29
|
+
- User gives a specific command with a skill trigger ("$roll-build US-001")
|
|
28
30
|
- User is answering a question you asked (they're clarifying, not initiating)
|
|
29
31
|
- The task is simple enough that misinterpretation risk is negligible
|
|
32
|
+
- User needs targeted Q&A to fill specific gaps (use `$roll-.clarify`)
|
|
30
33
|
|
|
31
34
|
**When in doubt**: If you're 80%+ confident you understand correctly, just execute. Echo is for the 50/50 situations where getting it wrong would waste real effort.
|
|
32
35
|
|
package/skills/roll-.qa/SKILL.md
CHANGED
|
@@ -1,17 +1,24 @@
|
|
|
1
1
|
---
|
|
2
2
|
hidden: true
|
|
3
|
-
name: roll-.qa
|
|
3
|
+
name: roll-.qa
|
|
4
|
+
license: MIT
|
|
4
5
|
description: QA coverage reference for build skills. Defines test pyramid (unit/E2E/visual/smoke), coverage requirements, and CI gates. Ensures quality assurance across all testing layers.
|
|
5
6
|
---
|
|
6
7
|
|
|
7
8
|
# QA Cover
|
|
8
9
|
|
|
9
|
-
This is a **reference skill** used by `roll-
|
|
10
|
+
This is a **reference skill** used by `roll-build` and `roll-fix` for quality assurance and test coverage.
|
|
10
11
|
|
|
11
12
|
## When to Apply
|
|
12
13
|
|
|
13
14
|
Any product with a user interface (Web, Desktop, Mobile) must follow these testing standards.
|
|
14
15
|
|
|
16
|
+
## When Not to Use
|
|
17
|
+
|
|
18
|
+
- Non-UI backends (APIs, CLI tools, data pipelines) — use project-specific test frameworks
|
|
19
|
+
- Spike code or throwaway prototypes that won't ship
|
|
20
|
+
- Per-commit self-review of diffs (use `$roll-.review`)
|
|
21
|
+
|
|
15
22
|
## Required Testing Levels
|
|
16
23
|
|
|
17
24
|
### 1. Unit Tests (Logic)
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
hidden: true
|
|
3
|
-
name: roll-.
|
|
3
|
+
name: roll-.review
|
|
4
|
+
license: MIT
|
|
4
5
|
description: Self code review step in the TCR workflow. Runs after each micro-step is completed and before commit, checking code quality, security, and design issues.
|
|
5
6
|
---
|
|
6
7
|
|
|
@@ -21,9 +22,15 @@ TCR Loop:
|
|
|
21
22
|
|
|
22
23
|
## When Triggered
|
|
23
24
|
|
|
24
|
-
- **Auto-triggered**: After each TCR micro-step in `$roll-
|
|
25
|
+
- **Auto-triggered**: After each TCR micro-step in `$roll-build` / `$roll-fix`
|
|
25
26
|
- **Manual trigger**: When the user wants to review current changes
|
|
26
27
|
|
|
28
|
+
## When Not to Use
|
|
29
|
+
|
|
30
|
+
- Docs-only changes (README, CHANGELOG) with no code diff
|
|
31
|
+
- Test pyramid / coverage standards check (use `$roll-.qa`)
|
|
32
|
+
- Post-deploy production sampling (use `$roll-sentinel`)
|
|
33
|
+
|
|
27
34
|
## Review Scope
|
|
28
35
|
|
|
29
36
|
```bash
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: roll-debug
|
|
3
|
+
license: MIT
|
|
3
4
|
description: Universal web debugger. Collects diagnostics (console/network/DOM) via Playwright, analyzes root causes, and suggests fixes. Works with or without Black Box (BB) integration.
|
|
4
5
|
---
|
|
5
6
|
|
|
@@ -21,6 +22,12 @@ Two collection modes:
|
|
|
21
22
|
- "Analyze BB data", "look at the diagnostic file"
|
|
22
23
|
- Any scenario requiring web page diagnosis
|
|
23
24
|
|
|
25
|
+
## When Not to Use
|
|
26
|
+
|
|
27
|
+
- Non-web environments (CLI tools, backend-only services) — outside this skill's scope
|
|
28
|
+
- Scheduled production sampling / acceptance checks (use `$roll-sentinel`)
|
|
29
|
+
- Pure source-reading without runtime reproduction
|
|
30
|
+
|
|
24
31
|
## Quick Start
|
|
25
32
|
|
|
26
33
|
```bash
|
|
@@ -424,5 +431,5 @@ After `$roll-debug` finds issues:
|
|
|
424
431
|
|
|
425
432
|
# For a complex multi-step fix
|
|
426
433
|
# → Create US-XXX in backlog
|
|
427
|
-
# → $roll-
|
|
434
|
+
# → $roll-build US-XXX
|
|
428
435
|
```
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: roll-design
|
|
3
|
+
license: MIT
|
|
3
4
|
description: Unified entry for discussion, design and planning. Explores options when uncertain, designs solutions, splits into INVEST-compliant user stories, and writes to BACKLOG.md. Use when user wants to discuss approaches, design solutions, plan features, or create stories.
|
|
4
5
|
---
|
|
5
6
|
|
|
@@ -24,6 +25,12 @@ Discuss approaches, design architecture, plan requirements, and write to `BACKLO
|
|
|
24
25
|
- Splitting into Stories
|
|
25
26
|
- Creating US / FIX entries
|
|
26
27
|
|
|
28
|
+
## When Not to Use
|
|
29
|
+
|
|
30
|
+
- One-liner capture of ideas or bugs (use `$roll-jot`)
|
|
31
|
+
- Executing an already-split US-XXX (use `$roll-build`)
|
|
32
|
+
- Fixing a well-defined FIX-XXX (use `$roll-fix`)
|
|
33
|
+
|
|
27
34
|
## Quick Start
|
|
28
35
|
|
|
29
36
|
```bash
|
|
@@ -124,7 +131,7 @@ User: "Help me design the user system" / "What approach should we use for search
|
|
|
124
131
|
▼
|
|
125
132
|
"Confirm and execute?"
|
|
126
133
|
│
|
|
127
|
-
├── Yes ──→ $roll-
|
|
134
|
+
├── Yes ──→ $roll-build US-XXX
|
|
128
135
|
│
|
|
129
136
|
└── No ──→ Wait for user confirmation
|
|
130
137
|
```
|
|
@@ -221,16 +228,16 @@ FEATURE_FILE="docs/features/${FEATURE}.md"
|
|
|
221
228
|
|
|
222
229
|
## Integration
|
|
223
230
|
|
|
224
|
-
### With
|
|
231
|
+
### With roll-build
|
|
225
232
|
|
|
226
233
|
```
|
|
227
234
|
$roll-design "login feature" → Create US-AUTH-001
|
|
228
235
|
User: "Execute US-AUTH-001"
|
|
229
236
|
↓
|
|
230
|
-
$roll-
|
|
237
|
+
$roll-build US-AUTH-001 → TCR → CI/CD → Deploy
|
|
231
238
|
```
|
|
232
239
|
|
|
233
|
-
### With fix
|
|
240
|
+
### With roll-fix
|
|
234
241
|
|
|
235
242
|
```
|
|
236
243
|
$roll-debug discovers issue → Suggest creating FIX
|
package/skills/roll-fix/SKILL.md
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: roll-fix
|
|
3
|
-
|
|
3
|
+
license: MIT
|
|
4
|
+
description: Execute bugfix/hotfix from backlog. Reads FIX/BUG from BACKLOG.md, delivers via TCR workflow. Lighter than roll-build, focused on single-issue fixes.
|
|
4
5
|
---
|
|
5
6
|
|
|
6
7
|
# Fix Ship (TCR Edition)
|
|
@@ -30,7 +31,7 @@ Do not use for:
|
|
|
30
31
|
- Requirements that need planning and splitting first
|
|
31
32
|
- Roadmap work that should be tracked as Stories
|
|
32
33
|
|
|
33
|
-
If the issue expands beyond a single bounded change, switch to `roll-
|
|
34
|
+
If the issue expands beyond a single bounded change, switch to `roll-build`.
|
|
34
35
|
|
|
35
36
|
## Project Context Rule
|
|
36
37
|
|
package/skills/roll-jot/SKILL.md
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: roll-jot
|
|
3
|
+
license: MIT
|
|
3
4
|
description: "Fast backlog capture. Analyzes a short description, classifies it as bug or idea, and appends it to BACKLOG.md with an auto-incremented ID."
|
|
4
5
|
---
|
|
5
6
|
|
|
@@ -17,6 +18,12 @@ $roll-jot 手机端星星指标一行一个从上往下排
|
|
|
17
18
|
$roll-jot 给 HOD 加一个批量导出 PDF 的功能
|
|
18
19
|
```
|
|
19
20
|
|
|
21
|
+
## When Not to Use
|
|
22
|
+
|
|
23
|
+
- Requirement needs discussion or splitting into Stories (use `$roll-design`)
|
|
24
|
+
- A US-XXX / FIX-XXX is ready to execute (use `$roll-build` / `$roll-fix`)
|
|
25
|
+
- Recording a development moment or feeling (use `$roll-notes`)
|
|
26
|
+
|
|
20
27
|
## Behavior
|
|
21
28
|
|
|
22
29
|
1. **Read** `BACKLOG.md` from the project root.
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: roll-notes
|
|
3
|
+
license: MIT
|
|
4
|
+
description: "Project diary skill. Records development moments — successes, failures, discoveries — appended chronologically to a daily notes file."
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# roll-notes
|
|
8
|
+
|
|
9
|
+
> 项目日记技能。记录开发过程中的成功、失败、感受和任何值得记住的事情。
|
|
10
|
+
> Append-only, timeline-driven, no fixed format.
|
|
11
|
+
|
|
12
|
+
## Trigger
|
|
13
|
+
|
|
14
|
+
- User says "记一下"、"写进日记"、"append 到日记"
|
|
15
|
+
- User asks to record a feeling, finding, or moment
|
|
16
|
+
- A project milestone is reached and worth capturing
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
$roll-notes 终于搞定了那个 WebSocket 断线重连的 bug
|
|
20
|
+
$roll-notes 今天的 code review 给了很好的反馈
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## When Not to Use
|
|
24
|
+
|
|
25
|
+
- Capturing a bug or feature idea into BACKLOG (use `$roll-jot`)
|
|
26
|
+
- Generating user-facing release notes (use `$roll-.changelog`)
|
|
27
|
+
- Writing design documents or AC (use `$roll-design`)
|
|
28
|
+
|
|
29
|
+
## Behavior
|
|
30
|
+
|
|
31
|
+
1. **Determine file path**: `notes/YYYY-MM-DD.md` relative to project root
|
|
32
|
+
2. **Get current time**: Use `Asia/Shanghai` timezone (`TZ=Asia/Shanghai date`)
|
|
33
|
+
3. **Append**: Add new entry at end of file — never overwrite existing content
|
|
34
|
+
4. **Create if missing**: If file doesn't exist, create with a `# YYYY-MM-DD — <one-line summary>` header
|
|
35
|
+
5. **Free format**: Paragraph, list, code block — whatever fits the moment
|
|
36
|
+
|
|
37
|
+
## File format
|
|
38
|
+
|
|
39
|
+
```markdown
|
|
40
|
+
# YYYY-MM-DD — 一句话概括今天
|
|
41
|
+
|
|
42
|
+
> 时间:北京时间 HH:MM
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## HH:MM — 事件标题
|
|
47
|
+
|
|
48
|
+
发生了什么、怎么解决的、什么感受。
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## HH:MM — 另一个事件
|
|
53
|
+
|
|
54
|
+
...
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Rules
|
|
58
|
+
|
|
59
|
+
- **No planning**: Never write "明日待办" or "下一步"
|
|
60
|
+
- **No summaries**: Never write "今日收获" or "经验教训"
|
|
61
|
+
- **Pure record**: What happened, as-is — honest, immediate, rough is fine
|
|
62
|
+
- **Append freely**: Multiple entries per day is normal
|
|
63
|
+
|
|
64
|
+
## File location
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
notes/
|
|
68
|
+
└── YYYY-MM-DD.md
|
|
69
|
+
```
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: roll-release
|
|
3
|
+
license: MIT
|
|
3
4
|
description: "Release skill for roll maintainers. Calculates next version (YYYY.MMDD.N format, auto-increments N from today's git tags), updates VERSION in bin/roll and package.json, commits, tags, and pushes to trigger npm auto-publish via GitHub Actions. Trigger: release, publish, 发版, 发布新版本."
|
|
4
5
|
---
|
|
5
6
|
|
|
@@ -7,6 +8,13 @@ description: "Release skill for roll maintainers. Calculates next version (YYYY.
|
|
|
7
8
|
|
|
8
9
|
One-command publish flow for roll maintainers.
|
|
9
10
|
|
|
11
|
+
## When Not to Use
|
|
12
|
+
|
|
13
|
+
- Non-maintainer users (this skill publishes `@seanyao/roll` to npm under seanyao)
|
|
14
|
+
- Internal project releases — only for the `roll` CLI package itself
|
|
15
|
+
- Hotfixing code without a version bump (use `$roll-fix`)
|
|
16
|
+
- Generating user-facing release notes (use `$roll-.changelog`)
|
|
17
|
+
|
|
10
18
|
## Version Format
|
|
11
19
|
|
|
12
20
|
`YYYY.MMDD.N` — e.g. `2026.419.1`
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: roll-research
|
|
3
|
+
license: MIT
|
|
3
4
|
description: |
|
|
4
5
|
HV (Horizontal-Vertical) Analysis deep research skill for products, companies, concepts, technologies, or people. Dual-axis: vertical traces full lifecycle narrative from origin to present; horizontal compares against competitors at current time; cross-axis produces new insights. Output: professionally formatted PDF report.
|
|
5
6
|
Trigger: "deep research", "research this", "competitive analysis", "help me understand", "what's the deal with", "deep dive", "HV analysis", or any request implying systematic research (not a simple lookup).
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: roll-sentinel
|
|
3
|
+
license: MIT
|
|
3
4
|
description: Smart patrol inspector for production systems. Scheduled randomized sampling checks based on BACKLOG requirements. Cost-controlled AI validation with intelligent spot-checking logic.
|
|
4
5
|
---
|
|
5
6
|
|
|
@@ -7,6 +8,13 @@ description: Smart patrol inspector for production systems. Scheduled randomized
|
|
|
7
8
|
|
|
8
9
|
**Smart Patrol Inspector** - Scheduled, randomized, cost-controlled patrol and acceptance checks for production systems.
|
|
9
10
|
|
|
11
|
+
## When Not to Use
|
|
12
|
+
|
|
13
|
+
- One-off debugging of a reported bug (use `$roll-debug`)
|
|
14
|
+
- Full-coverage regression testing (sentinel samples, does not cover)
|
|
15
|
+
- Dev/staging environment checks (use CI tests instead)
|
|
16
|
+
- Pre-commit self-review of diffs (use `$roll-.review`)
|
|
17
|
+
|
|
10
18
|
## Core Principle
|
|
11
19
|
|
|
12
20
|
```
|
|
@@ -341,7 +349,7 @@ async function batchCheck(stories) {
|
|
|
341
349
|
│ $roll-debug On-demand deep diagnosis (aux) │
|
|
342
350
|
│ (When Sentinel finds an issue, manually trigger deep dive) │
|
|
343
351
|
│ │
|
|
344
|
-
│ $roll-
|
|
352
|
+
│ $roll-build Post-fix regression verify │
|
|
345
353
|
│ │
|
|
346
354
|
└─────────────────────────────────────────────────────────────┘
|
|
347
355
|
```
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: roll-spar
|
|
3
|
+
license: MIT
|
|
3
4
|
description: Adversarial TDD mode with Attacker/Defender agents. Attacker writes tests to break the system, Defender writes minimal code to pass. Use for high-risk logic like auth, payments, data integrity, or complex state machines.
|
|
4
5
|
---
|
|
5
6
|
|
|
@@ -109,7 +110,7 @@ User: "$roll-spar implement transfer logic" or agent auto-triggers
|
|
|
109
110
|
│ - Defender summarizes defense │
|
|
110
111
|
│ strategy │
|
|
111
112
|
│ - Merged report │
|
|
112
|
-
│ - Continue normal
|
|
113
|
+
│ - Continue normal roll-build │
|
|
113
114
|
│ flow │
|
|
114
115
|
│ (push → CI → deploy → verify) │
|
|
115
116
|
└─────────────────────────────────────┘
|
|
@@ -205,12 +206,12 @@ Report to the user after each round:
|
|
|
205
206
|
4. **Attack intent must be explained** — cannot just write tests without explaining "why this scenario matters"
|
|
206
207
|
5. **Maximum round limit** — default 5 rounds, prevents infinite loops
|
|
207
208
|
|
|
208
|
-
## Integration with
|
|
209
|
+
## Integration with roll-build
|
|
209
210
|
|
|
210
|
-
Spar replaces steps 4-5 in
|
|
211
|
+
Spar replaces steps 4-5 in roll-build (Test Design + TCR Implementation):
|
|
211
212
|
|
|
212
213
|
```
|
|
213
|
-
|
|
214
|
+
roll-build normal flow:
|
|
214
215
|
1. Clarify Story
|
|
215
216
|
2. Split Actions
|
|
216
217
|
3. Define verification
|
|
@@ -223,7 +224,7 @@ story-build normal flow:
|
|
|
223
224
|
...
|
|
224
225
|
```
|
|
225
226
|
|
|
226
|
-
**Auto-switching from
|
|
227
|
+
**Auto-switching from roll-build to Spar:**
|
|
227
228
|
|
|
228
229
|
When the agent assesses an Action as high-risk at step 3:
|
|
229
230
|
```
|
|
@@ -232,7 +233,7 @@ When the agent assesses an Action as high-risk at step 3:
|
|
|
232
233
|
Recommend enabling Spar mode — confirm? [Y/n]
|
|
233
234
|
```
|
|
234
235
|
|
|
235
|
-
After user confirms, enter Spar. Once complete, return to
|
|
236
|
+
After user confirms, enter Spar. Once complete, return to roll-build step 6 to continue.
|
|
236
237
|
|
|
237
238
|
## Example
|
|
238
239
|
|