@seanyao/roll 4.629.1 → 4.630.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seanyao/roll",
3
- "version": "4.629.1",
3
+ "version": "4.630.1",
4
4
  "description": "Roll — Roll out features with AI agents",
5
5
  "packageManager": "pnpm@11.1.3",
6
6
  "scripts": {
@@ -12,6 +12,12 @@ This hub keeps the routing boundary, hard gates, and execution skeleton in the i
12
12
 
13
13
  Load when a user gives a US-XXX story or asks to ship a feature through Roll TCR delivery, from clarification through verification and backlog write-back.
14
14
 
15
+ ## Operating Modes
16
+
17
+ Used in **guided** mode when the owner explicitly starts a Story, and in
18
+ **autonomous** mode when the loop scheduler dispatches an eligible Story. The
19
+ same TCR, evidence, Evaluator, and release gates apply in both modes.
20
+
15
21
  ## When Not to Use
16
22
 
17
23
  - Pure design or backlog splitting without code; load roll-design.
@@ -701,7 +701,7 @@ story (loop or manual Phase 10.6) and earn the report at delivery time.
701
701
  screenshot captures the card's **declared** deliverable, taken from the
702
702
  story's frontmatter key `deliverable_url` (alias `screenshot_url`). It may be
703
703
  a URL, a local file, or carry a `#fragment` to deep-link a specific tab/view
704
- (e.g. `.roll/features/index.html#casting`). The loop captures it with
704
+ (e.g. `https://app.example.test/casting#board`). The loop captures it with
705
705
  **headless Playwright** — no GUI browser window pops up, and a missing
706
706
  Chromium self-heals via an auto-install on first use. The red line: **never**
707
707
  screenshot roll's own attest report / dossier page and pass it off as the
@@ -12,6 +12,12 @@ This hub keeps the routing boundary, hard gates, and execution skeleton in the i
12
12
 
13
13
  Load when the user wants to discuss approaches, design a solution, model domains, split work into INVEST stories, or write backlog/spec artifacts without coding.
14
14
 
15
+ ## Operating Modes
16
+
17
+ Used in **guided** mode when the owner explicitly designs or splits work, and in
18
+ **autonomous** mode only as the Planner capability selected by a `planned`
19
+ execution profile. It must never silently start Builder work.
20
+
15
21
  ## When Not to Use
16
22
 
17
23
  - Existing US implementation; load roll-build.
@@ -38,7 +44,7 @@ Load when the user wants to discuss approaches, design a solution, model domains
38
44
  - Peer review gates apply only when explicitly available/requested.
39
45
  - No story decomposition until a detailed design exists and the owner has signed off (proportional to risk). Decomposition slices an agreed design — it is NOT a substitute for designing. If you cannot show at least one complete worked sample of the intended output/behavior, the design is NOT done.
40
46
  - **Evaluation contract (US-SKILL-030 — planner-builder-evaluator artifact contract)**: every newly split story spec MUST include an `**Evaluation contract:**` block with `expected_evidence` (each item: `kind`, `target`, `proves`) and `scorer_focus`. This artifact is authored by the planner and consumed by builder (roll-build/roll-fix reads before coding) and evaluator (peer score prompt reads the contract; attest surfaces planned-vs-delivered mapping) — not a fixed three-agent collaboration model. Genuinely trivial/internal stories may carry a one-item minimal block, but never omit it. See `references/full-contract.md` for the full template and rules.
41
- - **Visual-evidence contract (FIX-311 — design-phase gate)**: every story spec is born honest. By default each story MUST carry one AC that captures its user-visible surface (web/CLI/TUI), and a web/visual card MUST declare the real product surface in its spec frontmatter — `deliverable_url:` (alias `screenshot_url:`) pointing at the actual deliverable page (e.g. `.roll/features/index.html#casting`), NEVER the card's own dossier/report page. A card with genuinely no visual surface writes `screenshot_exempt: <reason>` (a naked `true`/`yes` is NOT a valid exemption — it must carry a reason). This is enforced, not advisory: `validateStoryVisualEvidence(specText)` in `packages/cli/src/lib/design-visual-evidence.ts` returns `ok:false` for a non-exempt spec with no visual-evidence AC, or one that declares a visual surface but no `deliverable_url`. Keyword matching may only RECOGNISE an exemption / an existing visual-evidence AC — it may NEVER be used to decide a card needs a screenshot (it always does, by default). This is the same contract the runtime enforce gate (FIX-309) and archive gate (FIX-334) hold; the three must agree.
47
+ - **Visual-evidence contract (FIX-311 — design-phase gate)**: every story spec is born honest. By default each story MUST carry one AC that captures its user-visible surface (web/CLI/TUI), and a web/visual card MUST declare the real product surface in its spec frontmatter — `deliverable_url:` (alias `screenshot_url:`) pointing at the actual deliverable page (e.g. `https://app.example.test/casting#board`), NEVER the card's own dossier/report/archive page. A card with genuinely no visual surface writes `screenshot_exempt: <reason>` (a naked `true`/`yes` is NOT a valid exemption — it must carry a reason). This is enforced, not advisory: `validateStoryVisualEvidence(specText)` in `packages/cli/src/lib/design-visual-evidence.ts` returns `ok:false` for a non-exempt spec with no visual-evidence AC, or one that declares a visual surface but no `deliverable_url`. Keyword matching may only RECOGNISE an exemption / an existing visual-evidence AC — it may NEVER be used to decide a card needs a screenshot (it always does, by default). This is the same contract the runtime enforce gate (FIX-309) and archive gate (FIX-334) hold; the three must agree.
42
48
 
43
49
  ## Gotchas
44
50
 
@@ -10,7 +10,7 @@ defect, not a delivery omission.
10
10
 
11
11
  **Must verify (default = REQUIRED; exemption is the only opt-out):**
12
12
  - [ ] Every story carries one AC that captures its user-visible surface (web/CLI/TUI screenshot / 截图).
13
- - [ ] A web/visual card declares the real product surface in frontmatter — `deliverable_url:` (alias `screenshot_url:`) pointing at the actual deliverable page (e.g. `.roll/features/index.html#casting`), NEVER the card's own dossier/report page.
13
+ - [ ] A web/visual card declares the real product surface in frontmatter — `deliverable_url:` (alias `screenshot_url:`) pointing at the actual deliverable page (e.g. `https://app.example.test/casting#board`), NEVER the card's own dossier/report/archive page.
14
14
  - [ ] A card with genuinely no visual surface records `screenshot_exempt: <reason>` (a naked `true`/`yes` is invalid — the reason is mandatory).
15
15
 
16
16
  **Enforced, not advisory:** `validateStoryVisualEvidence(specText)` in
@@ -739,7 +739,7 @@ Note: `{DOMAIN}` maps to the Bounded Context name identified in DDD analysis.
739
739
  - A web/visual card MUST declare the real product surface it delivers:
740
740
  ```yaml
741
741
  ---
742
- deliverable_url: .roll/features/index.html#casting # alias: screenshot_url. The actual deliverable page, NEVER the card's own dossier/report page.
742
+ deliverable_url: https://app.example.test/casting#board # alias: screenshot_url. The actual deliverable page, NEVER the card's own dossier/report/archive page.
743
743
  ---
744
744
  ```
745
745
  - **Pin down the deliverable surface — locate it, don't guess** (`deliverable_url` MUST be the EXACT page + anchor the story lands on):
@@ -12,6 +12,13 @@ This hub keeps the routing boundary, hard gates, and execution skeleton in the i
12
12
 
13
13
  Load when the user provides a FIX-XXX or BUG-XXX item, or asks for a focused hotfix/bugfix through Roll lighter TCR repair workflow.
14
14
 
15
+ ## Operating Modes
16
+
17
+ Used in **guided** mode when the owner explicitly starts a FIX/BUG repair, and
18
+ in **autonomous** mode when the loop scheduler dispatches an eligible FIX/BUG
19
+ item. The same regression, evidence, Evaluator, and release gates apply in both
20
+ modes.
21
+
15
22
  ## When Not to Use
16
23
 
17
24
  - Broad feature delivery; load roll-build.
@@ -12,6 +12,14 @@ This hub keeps the routing boundary, hard gates, and execution skeleton in the i
12
12
 
13
13
  Load when configuring, explaining, or operating Roll autonomous backlog execution loop that scans Todo work and dispatches US/FIX/REFACTOR items.
14
14
 
15
+ ## Operating Modes
16
+
17
+ This skill is primarily **autonomous**: it describes the scheduler that dispatches
18
+ eligible backlog work. It also documents the explicit mode switches:
19
+ `roll loop on` / `roll loop resume` enter autonomous operation; `roll loop off` /
20
+ `roll loop pause` return control to **guided** operation. Autonomous mode never
21
+ bypasses pause, budget, route, evidence, Evaluator, or release gates.
22
+
15
23
  ## When Not to Use
16
24
 
17
25
  - One-shot story execution by a human agent; load roll-build or roll-fix.