@seanyao/roll 4.629.1 → 4.629.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.
- package/CHANGELOG.md +11 -0
- package/README.md +45 -22
- package/dist/roll.mjs +5889 -5292
- package/package.json +1 -1
- package/skills/roll-build/SKILL.md +6 -0
- package/skills/roll-build/references/full-contract.md +1 -1
- package/skills/roll-design/SKILL.md +7 -1
- package/skills/roll-design/references/engineering-checklist.md +1 -1
- package/skills/roll-design/references/full-contract.md +1 -1
- package/skills/roll-fix/SKILL.md +7 -0
- package/skills/roll-loop/SKILL.md +8 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## v4.629.2 — 2026-06-29
|
|
6
|
+
|
|
7
|
+
### Agent 管理
|
|
8
|
+
|
|
9
|
+
- **Agent 配置收敛成 Scope → Role → Binding → Agent → Model**:机器级和项目级 Agent 域现在只写 `~/.roll/agents.yaml` / `.roll/agents.yaml`,`roll agent` 展示 Machine Scope、Project Scope、继承来源、resolved role、Agent pool health 和 legacy compatibility;`roll agent migrate` 可以把旧的 primary/local/pairing/route 配置迁到新模型,迁移默认不删除旧文件。(US-V4-015, US-V4-016, US-V4-017, US-V4-019, US-V4-020, #1073) `[autonomous-evolution]`
|
|
10
|
+
- **评审/打分回到公平候选池**:peer review 和 score 现在优先通过 evaluation Role binding 解析候选,历史上的 headless auth、VPN、账号状态不再变成静态排除;临时不可用只作为本次 runtime health skip 记录,异构评审和自评防线保持不变。(US-V4-018, #1073) `[autonomous-evolution]`
|
|
11
|
+
|
|
12
|
+
### 自动化流水线
|
|
13
|
+
|
|
14
|
+
- **Supervisor 成为 V4 操作入口**:`roll supervisor status/next/why/live` 会说明 guided/autonomous 模式、下一步 owner action、Planner/Builder/Evaluator 角色状态和不可用原因;旧 Dossier Web / daemon 产品面退场,story-scoped attest report 和 CLI-first observability 继续作为验收与观察入口。(US-V4-011, US-V4-013, US-V4-014, #1072, #1073) `[autonomous-evolution]`
|
|
15
|
+
|
|
5
16
|
## v4.629.1 — 2026-06-29
|
|
6
17
|
|
|
7
18
|
### 自动化流水线
|
package/README.md
CHANGED
|
@@ -60,27 +60,52 @@ First time through? Start with [Getting started](guide/en/getting-started.md).
|
|
|
60
60
|
Roll V4 separates project coordination from story delivery:
|
|
61
61
|
|
|
62
62
|
- **Supervisor Agent** coordinates at project level: backlog order, cross-Story context, route advice, repeated failures, release readiness, budget, and owner escalation. It observes and advises; it does not implement a Story or override evidence gates.
|
|
63
|
-
- **Story Execution Unit** delivers one Story through
|
|
64
|
-
- **
|
|
63
|
+
- **Story Execution Unit** delivers one Story through scoped roles: `execute` performs the Story work, `evaluate` reviews/scores evidence, and `supervise` coordinates above the Story boundary.
|
|
64
|
+
- **supervise / execute / evaluate roles** are stable contracts. The concrete `agent` and optional `model` are resolved through the Agent Scope model: `Scope -> Role -> Binding -> Agent -> Model`.
|
|
65
65
|
- **Skills remain** the capability layer. Roles invoke `$roll-design`, `$roll-build`, `$roll-fix`, `$roll-peer`, `$roll-.qa`, and related skills instead of rewriting those contracts into TypeScript.
|
|
66
66
|
- **Fallback is fail-loud**. If a requested agent or rig is unavailable, Roll records that unavailability and pauses or asks for owner action; it does not silently pretend another agent was used.
|
|
67
|
+
|
|
68
|
+
### Operating modes
|
|
69
|
+
|
|
70
|
+
Roll has two product modes over the same backlog, truth, route profile, execution
|
|
71
|
+
profiles, evidence, Evaluator, and release gates:
|
|
72
|
+
|
|
73
|
+
- **guided** — the owner drives through `roll supervisor status/next/why` and
|
|
74
|
+
starts work explicitly with commands such as `roll loop go --cards <id>`.
|
|
75
|
+
Guided mode never silently starts long-running Story execution.
|
|
76
|
+
- **autonomous** — `roll loop on` installs the scheduler; eligible Stories may
|
|
77
|
+
be picked within the existing pause, budget, route, evidence, Evaluator, and
|
|
78
|
+
release gates. `roll loop pause` / `roll loop off` return control to guided
|
|
79
|
+
operation; `roll loop resume` / `roll loop on` switch back explicitly.
|
|
67
80
|
- **Attest and evidence are story-scoped**. A Story is accepted through its own `latest/<id>-report.html`, AC map, and screenshots/test artifacts.
|
|
68
81
|
|
|
69
|
-
|
|
82
|
+
Agent bindings are declared in two files: `~/.roll/agents.yaml` for Machine Scope
|
|
83
|
+
and `.roll/agents.yaml` for Project Scope. A Project can inherit the machine pool
|
|
84
|
+
and bind Story roles:
|
|
70
85
|
|
|
71
86
|
```yaml
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
87
|
+
schema: roll-agents/v1
|
|
88
|
+
scope: project
|
|
89
|
+
inherits: machine
|
|
90
|
+
defaults:
|
|
91
|
+
story:
|
|
92
|
+
roles:
|
|
93
|
+
execute:
|
|
94
|
+
kind: select
|
|
95
|
+
from: [kimi, codex, pi]
|
|
96
|
+
require: [execute]
|
|
97
|
+
strategy: first-available
|
|
98
|
+
evaluate:
|
|
99
|
+
kind: select
|
|
100
|
+
from: [claude, codex, kimi, pi, agy, reasonix]
|
|
101
|
+
require: [evaluate]
|
|
102
|
+
avoid: [execute]
|
|
103
|
+
strategy: least-recent
|
|
81
104
|
```
|
|
82
105
|
|
|
83
|
-
Runtime availability is explicit: if
|
|
106
|
+
Runtime availability is explicit: if a candidate is not callable on the current
|
|
107
|
+
machine because of auth, network, VPN, or account state, the current resolution
|
|
108
|
+
records that limitation instead of rewriting the static pool.
|
|
84
109
|
|
|
85
110
|
## Onboarding Samples
|
|
86
111
|
|
|
@@ -96,7 +121,7 @@ roll design --from-file .roll/brief.md
|
|
|
96
121
|
roll loop on
|
|
97
122
|
```
|
|
98
123
|
|
|
99
|
-
Roll explains the next design step instead of inventing fake work. The
|
|
124
|
+
Roll explains the next design step instead of inventing fake work. The Supervisor turns the requirement into Stories, resolves `execute` and optional `evaluate` roles per Story, and the owner reviews story-scoped attest evidence.
|
|
100
125
|
|
|
101
126
|
**Existing project**
|
|
102
127
|
|
|
@@ -108,7 +133,7 @@ roll init --apply # after reviewing the generated onboard plan
|
|
|
108
133
|
roll loop on
|
|
109
134
|
```
|
|
110
135
|
|
|
111
|
-
Roll diagnoses the repository without destructive migration, writes or updates Roll metadata only after review, and then lets the Supervisor reason over existing backlog, docs, context, open PRs, and
|
|
136
|
+
Roll diagnoses the repository without destructive migration, writes or updates Roll metadata only after review, and then lets the Supervisor reason over existing backlog, docs, context, open PRs, and scoped role bindings. Current state is visible through CLI-first observability: `roll status`, `roll loop watch`, `roll loop runs`, `roll cycle <id>`, `roll loop alert`, and story reports.
|
|
112
137
|
|
|
113
138
|
## Quick start for new projects
|
|
114
139
|
|
|
@@ -141,10 +166,9 @@ with `roll loop resume` when ready.
|
|
|
141
166
|
| `roll backlog [sync\|block\|defer\|lint\|…]` | View, manage, and sync (from GitHub Issues) pending tasks |
|
|
142
167
|
| `roll loop alert [list\|ack\|resolve\|log]` | View / clear loop alerts |
|
|
143
168
|
| `roll status` | Verdict-first truth summary read from the ONE snapshot — LOOP · CYCLE · RELEASE · STORY, with the STORY line's attest-coverage % (`done ≡ merged ∧ attested`) — then convention/AI-client sync health |
|
|
144
|
-
| `roll supervisor [observe\|advise\|next\|why] [--json]` | Project-level Supervisor Agent
|
|
169
|
+
| `roll supervisor [status\|observe\|advise\|next\|why\|live] [--json]` | Project-level Supervisor Agent: observes project truth, explains guided/autonomous mode and next owner action, advises next steps, and renders a read-only live role board with Planner / Builder / Evaluator panes. Cross-Story coordination only — never implements a Story; persistent policy changes need owner confirmation |
|
|
145
170
|
| `roll pulse [--json]` | Today's delivery pulse: cycles in window, merged count, attested count, plus an ASCII sparkline from the story spectrum. Bilingual EN/中. `--json` for machine-readable output |
|
|
146
171
|
| `roll doctor [skills\|--tools]` | Environment + install diagnosis; `roll doctor --tools` shows focused tool and screenshot readiness, including Terminal.app Screen Recording |
|
|
147
|
-
| `roll daemon <start\|stop\|status>` | Experimental read-only event broadcaster for future browser observability; defaults to `127.0.0.1:7077`, records `.roll/loop/daemon.pid`, and is never auto-started by the loop |
|
|
148
172
|
| `roll tune [reset]` | Suggest-only self-tuning from loop trends — read-only, never auto-applies |
|
|
149
173
|
| **Cards & evidence** | |
|
|
150
174
|
| `roll idea "<one-sentence description>"` | Capture a card: auto-classify, number, lint, infer epic, mint the full story folder — the one user entry for adding cards |
|
|
@@ -155,7 +179,6 @@ with `roll loop resume` when ready.
|
|
|
155
179
|
| `roll design [--from-file <path>] [--agent <name>]` | Launch `$roll-design` interactively; `--from-file` binds a PRD/brief as the design input |
|
|
156
180
|
| `roll offboard` | Remove Roll from this project |
|
|
157
181
|
| `roll test [--where] [--reset]` | Run the test suite (routes through the isolation adapter; unknown types fail loud) |
|
|
158
|
-
| `roll daemon <start\|stop\|status>` | Manage the experimental read-only observability daemon (opt-in only; never auto-started) |
|
|
159
182
|
| `roll ci [--wait]` | Show or wait for current commit's CI status |
|
|
160
183
|
| `roll release [--dry-run]` | The ONE release flow: bump → changelog fold → package gate → commit-push → consistency gate → PR → auto-merge → tag push (gate runs before merge; drives the merge via GitHub auto-merge) |
|
|
161
184
|
| `roll showcase [--card <ID>]` | The golden-path standard E2E in an isolated sandbox: reset the card, cast a heterogeneous real-agent trio (kimi/claude/pi), deliver via the loop, capture CLI+web screenshots, assemble the evidence chain, emit a pass/fail verdict |
|
|
@@ -167,8 +190,8 @@ with `roll loop resume` when ready.
|
|
|
167
190
|
| **Config & machine** | |
|
|
168
191
|
| `roll ls [--json] [--stale-days <n>]` | List the cross-project registry (`~/.roll/projects.json`): name · tag · verdict · path; missing/stale rows flagged, never dropped |
|
|
169
192
|
| `roll config [lang <zh\|en\|--reset>\|…]` | Read/write roll config (language, loop window, dream time) |
|
|
170
|
-
| `roll agent [
|
|
171
|
-
| `roll cast [--json]` | Print the
|
|
193
|
+
| `roll agent [migrate --dry-run\|migrate\|list]` | Agent Scope view: Machine Scope, Project Scope, resolved roles, pool health, and legacy compatibility |
|
|
194
|
+
| `roll cast [--json]` | Print the current role casting view (`--json` for the machine view) |
|
|
172
195
|
| `roll doctor skills [--strict] [--json]` | Strict skills audit (skills · violations · hub lines + the four invocation groups — the SAME yardstick the web Skills page reads) |
|
|
173
196
|
| `roll setup skills` | Sync the `guide/skills.md` skill catalog |
|
|
174
197
|
| `roll doc [--lang en\|zh] [name]` | View the Charter / language guide markdown in the terminal (`--lang` falls back to the configured language) |
|
|
@@ -193,8 +216,8 @@ it is not the active delivery truth surface.
|
|
|
193
216
|
free-form summary text.
|
|
194
217
|
- Missing facts render as `?`. A visible `0` means a known zero, not unknown.
|
|
195
218
|
|
|
196
|
-
|
|
197
|
-
|
|
219
|
+
`roll supervisor live` is the shipped CLI-first multi-role board. A browser/TUI
|
|
220
|
+
Supervisor Live Console remains future work and must reuse the same view model.
|
|
198
221
|
|
|
199
222
|
## Repository layout
|
|
200
223
|
|