@seanyao/roll 3.620.1 → 3.624.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/CHANGELOG.md +46 -0
- package/dist/roll.mjs +4563 -3369
- package/package.json +1 -1
- package/lib/__pycache__/changelog_audit.cpython-314.pyc +0 -0
- package/lib/__pycache__/github_sync.cpython-314.pyc +0 -0
- package/lib/__pycache__/loop-fmt.cpython-314.pyc +0 -0
- package/lib/__pycache__/loop_result_eval.cpython-314.pyc +0 -0
- package/lib/__pycache__/loop_unstick.cpython-314.pyc +0 -0
- package/lib/__pycache__/model_prices.cpython-314.pyc +0 -0
- package/lib/__pycache__/prices_fetcher.cpython-314.pyc +0 -0
- package/lib/__pycache__/roll-home.cpython-314.pyc +0 -0
- package/lib/__pycache__/roll-loop-status.cpython-314.pyc +0 -0
- package/lib/__pycache__/roll_git.cpython-314.pyc +0 -0
- package/lib/__pycache__/roll_render.cpython-314.pyc +0 -0
- package/lib/__pycache__/slides-render.cpython-314.pyc +0 -0
- package/lib/agent_usage/__pycache__/__init__.cpython-314.pyc +0 -0
- package/lib/agent_usage/__pycache__/gemini.cpython-314.pyc +0 -0
- package/lib/agent_usage/__pycache__/kimi.cpython-314.pyc +0 -0
- package/lib/agent_usage/__pycache__/openai.cpython-314.pyc +0 -0
- package/lib/agent_usage/__pycache__/pi.cpython-314.pyc +0 -0
- package/lib/agent_usage/__pycache__/pi_emit.cpython-314.pyc +0 -0
- package/lib/agent_usage/__pycache__/qwen.cpython-314.pyc +0 -0
- package/skills/README.md +0 -64
- package/skills/docs/skill-authoring.md +0 -74
- package/skills/reports/skill-audit-summary.md +0 -53
- package/skills/roll-.changelog/SKILL.md +0 -47
- package/skills/roll-.changelog/references/full-contract.md +0 -462
- package/skills/roll-.clarify/SKILL.md +0 -64
- package/skills/roll-.dream/SKILL.md +0 -47
- package/skills/roll-.dream/references/full-contract.md +0 -365
- package/skills/roll-.echo/SKILL.md +0 -118
- package/skills/roll-.qa/SKILL.md +0 -47
- package/skills/roll-.qa/references/full-contract.md +0 -256
- package/skills/roll-.review/SKILL.md +0 -148
- package/skills/roll-build/SKILL.md +0 -49
- package/skills/roll-build/references/full-contract.md +0 -968
- package/skills/roll-debug/SKILL.md +0 -48
- package/skills/roll-debug/assets/injectable-bb.js +0 -263
- package/skills/roll-debug/references/full-contract.md +0 -607
- package/skills/roll-design/SKILL.md +0 -52
- package/skills/roll-design/references/engineering-checklist.md +0 -298
- package/skills/roll-design/references/full-contract.md +0 -940
- package/skills/roll-doc-audit/SKILL.md +0 -51
- package/skills/roll-doc-audit/references/full-contract.md +0 -796
- package/skills/roll-doctor/SKILL.md +0 -211
- package/skills/roll-fix/SKILL.md +0 -49
- package/skills/roll-fix/references/full-contract.md +0 -672
- package/skills/roll-idea/SKILL.md +0 -62
- package/skills/roll-loop/SKILL.md +0 -50
- package/skills/roll-loop/references/full-contract.md +0 -534
- package/skills/roll-notes/SKILL.md +0 -107
- package/skills/roll-onboard/SKILL.md +0 -238
- package/skills/roll-peer/SKILL.md +0 -47
- package/skills/roll-peer/references/full-contract.md +0 -323
- package/skills/roll-propose/SKILL.md +0 -155
- package/skills/roll-review-pr/SKILL.md +0 -62
- package/skills/roll-spar/SKILL.md +0 -47
- package/skills/roll-spar/references/full-contract.md +0 -288
- package/skills/route-cases/skills.json +0 -216
- package/skills/scripts/audit-skills.mjs +0 -272
- package/skills/scripts/test-audit-skills.mjs +0 -39
- package/skills/tests/fixtures/skill-audit/block-skill/SKILL.md +0 -12
- package/skills/tests/fixtures/skill-audit/minimal-skill/SKILL.md +0 -8
- package/skills/tests/fixtures/skill-audit/quoted-skill/SKILL.md +0 -10
- package/skills/tests/fixtures/skill-audit/route-cases.json +0 -21
- package/skills/tests/fixtures/skill-audit/spoke-skill/SKILL.md +0 -12
- package/skills/tests/fixtures/skill-audit/spoke-skill/references/runbook.md +0 -3
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,52 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## v3.624.1 — 2026-06-24
|
|
6
|
+
|
|
7
|
+
### 新功能
|
|
8
|
+
|
|
9
|
+
- **实时控制台底座上线**:档案页可以从静态快照走向实时刷新。(US-OBS-020 / US-OBS-021) `[delivery-dossier]`
|
|
10
|
+
|
|
11
|
+
### 修复
|
|
12
|
+
|
|
13
|
+
- **取分阶段失败归因细分 + unparseable 一次再问救回**:之前取分链路的 `runScorePairing` 把所有 reviewer 失败一律当 null 吞掉——auth 超时、网络不通、进程崩溃、回复了但格式跑偏——四种原因全被静默丢弃,池子耗尽后闸判「缺分数」→ cycle 失败。现在每种失败都发出 `pair:score-failure` 可观测事件(unparseable/timeout/auth-block/exit-error),不再沉默。最冤的「reviewer 答了但格式跑偏」加了一次严格格式重申再问(`你上次回复缺/错了 SCORE/VERDICT/RATIONALE 行,请严格只回这三行`),答了白答的 pi 之类的 reviewer 现在有机会被救回。parse 绝不放松——只接受严格三行协议;闸逻辑逐行不动,救援分须自然满足全部独立性过滤。(FIX-910) `[loop-engine]`
|
|
14
|
+
|
|
15
|
+
- **loop 交付真相不再漏认已合并卡**:手动合并和外部合并也会被识别,已合卡不再被反复重选。(FIX-389a / FIX-390 / FIX-903 / FIX-904 / FIX-905 / FIX-906) `[feedback-truth-alignment]`
|
|
16
|
+
|
|
17
|
+
- **loop 挂死或缺验收件时不再丢工作**:周期空挂会硬超时,CI 已绿但缺报告的工作会进入待复评,不再触发假熔断。(FIX-907 / FIX-908 / FIX-913) `[loop-engine]`
|
|
18
|
+
|
|
19
|
+
- **loop 评审和在飞对账更稳**:评审会带仓库上下文和反馈重试,GitHub 探测失败时也不再误重选在飞卡。(FIX-386 / FIX-387 / FIX-397) `[loop-engine]`
|
|
20
|
+
|
|
21
|
+
- **`roll loop watch` 状态行不再掉成 unknown**:长时间窗口也能显示真实故事和 agent。(FIX-382) `[loop-engine]`
|
|
22
|
+
|
|
23
|
+
- **builder 进程 cwd/PWD 钉到 cycle worktree,不再漏写共享 checkout**:pi/kimi 等经 PTY 包装的 agent 现在同时用真实 `cwd` 和 `PWD` 指向 cycle worktree,并清理继承的 `GIT_*` 状态,避免 CLI 依据父进程 `PWD` 写进主 checkout;不再注入 `GIT_DIR`/`GIT_WORK_TREE`,避免污染共享 `.git/config` 的 `core.worktree`。(FIX-914) `[loop-engine]`
|
|
24
|
+
|
|
25
|
+
- **chromium/playwright 依赖加固——钉版本、init 预装、离线优雅提示**:之前三处用 `playwright@latest`(未钉版本),`latest` 可能拉到新版导致浏览器版本漂移、偶发截图失败;chromium 在第一次需要截图的 cycle 当场下载(~100-200MB),网抖则该 cycle 截图失败。现在 `screenshot.ts` 和 `browser.ts` 统一使用钉定版本 `playwright@1.52.0`,缓存命中一致不重装;`roll init` 和 loop 首启时静默预装 chromium(已缓存秒返、失败不阻塞);离线/网络错误时 skip 消息区分「headless Chromium unavailable (offline or network error)」;Tools 页 browser tool 可用性联动 chromium 安装状态。(FIX-394) `[acceptance-evidence]`
|
|
26
|
+
|
|
27
|
+
- **终端交付命令在 headless loop 不再假死、命令 stdout 升格为可过闸证据**:之前带 `deliverable_cmd`(终端命令)的卡在无人值守 launchd loop 中因无 GUI session 无法截图,attest 门判败堵死整条 loop。现在终端 lane 镜像 web lane 的 headless 回退——命令执行成功但无 GUI 时自动把 stdout 文本升格为 `taken:true` 终端证据,attest 门可正常通过,不再依赖 epic 级 `screenshot_exempt` 豁免。修复也拓宽了回退条件:原先只匹配 "no GUI session",现覆盖所有 headless 跳过(含 "not macOS" 等),条件是命令已成功运行。(FIX-392) `[acceptance-evidence]`
|
|
28
|
+
|
|
29
|
+
### 稳定性
|
|
30
|
+
|
|
31
|
+
- **无人值守 loop 上一轮没跑完时不再并发起新轮,不会堆积拖慢机器**:调度脚本生成器加了「在飞守卫」——上一个 cycle 还在跑时,新的 launchd tick 自动让路而不是硬起一轮,根治了「cycle 超过调度间隔→并发堆积→CPU thrash→更慢→更多并发」的死亡螺旋。生成器同时默认设好 headless 截图环境,无人值守 loop 不再弹 macOS 屏幕录制授权框。(FIX-393) `[loop-engine]`
|
|
32
|
+
|
|
33
|
+
## v3.621.1 — 2026-06-21
|
|
34
|
+
|
|
35
|
+
### 修复
|
|
36
|
+
|
|
37
|
+
- **watch 事件行时间戳与状态行统一显示设备本地时区**:之前事件行硬编码 UTC 渲染(`getUTCHours`),状态行却走本地时区,同屏出现时差;`cycle:terminal`、`report:morning` 等事件类型也落到了 "unsupported event" 无意义渲染。现在时间戳统一走设备本地时区,新增 `cycle:terminal` 和 `report:morning` 的显式渲染,未知事件干净降级不再显示 "unsupported event"。(FIX-385) `[loop-engine]`
|
|
38
|
+
|
|
39
|
+
- **loop 不再盲目重选「在飞」的卡**:发 PR 后卡↔PR 连接不再断裂(`pr=None` 根治),reconcile 对 gh 探测失败也稳健守住 🔨,CI 红不再只是报警——走 fix-forward 恢复原分支修而非从头重选。(FIX-384) `[loop-engine]`
|
|
40
|
+
|
|
41
|
+
- `roll loop watch` 状态行现在正确显示故事和 agent `[loop]`
|
|
42
|
+
|
|
43
|
+
- **无人值守 loop 现在能为可视卡真正截图,不再空转挂起**:之前 loop 在 cycle 工作树里跑网页截图时,因为工作树没装 playwright 依赖(`require('playwright')` 找不到模块)就直接跳过,带页面证据的卡验收报告成了空壳、纠正熔断把整条 loop 停掉。现在截图失败会自动回退到能在工作树里跑、且会自愈安装浏览器的 headless 命令行路径,可视卡得以在无人值守下真正截图并交付。(FIX-379) `[acceptance-evidence]`
|
|
44
|
+
|
|
45
|
+
- **建卡校验和交付期校验现在同一把尺子,杜绝「能建出来、一进 loop 必失败」的毒卡**:一张卡声明的「交付演示命令」,`roll story validate` 在建卡时就用和交付截图时完全相同的白名单来判(必须是 roll 的只读命令、不含 shell 特殊字符、不是会改状态的命令),并对 `watch` 这类一直刷屏不退出的流式命令明确提示——不能直接当交付命令,请加 `--once`/快照模式或声明无需截图。之前两处各判各的,能建出「建卡时绿、交付时必被拒」的卡,一进 loop 必失败、攒够三次还会熔断整条 loop。(FIX-383) `[loop-engine]`
|
|
46
|
+
|
|
47
|
+
### 变更
|
|
48
|
+
|
|
49
|
+
- **交付状态改用结构化账本追踪,卡的状态更准、不再靠「读文字猜」**:loop 判断一张卡有没有真正交付(发了 PR 没、合进 main 没、CI 红还是绿),现在统一从一份结构化的交付记录账本读取,不再去解析 backlog 的中文文字和正则猜测。好处是状态显示更可靠、少了「明明合并了却还显示待办」这类漂移和误判,backlog 的状态栏变成这份账本的派生展示;账本只追加不改写、跨多个工作树共享、原子落盘,避免并发写坏。配套落地:交付记录的数据类型与生命周期状态(和「评审裁定」彻底分开)、唯一的查询入口函数、消费侧改读结构化记录、运行账本改只追加消除并发部分写、架构文档同步说明这套机制。(US-TRUTH-013 / US-TRUTH-014 / US-TRUTH-016 / US-TRUTH-017 / US-TRUTH-019 / US-TRUTH-020) `[feedback-truth-alignment]`
|
|
50
|
+
|
|
5
51
|
## v3.620.1 — 2026-06-20
|
|
6
52
|
|
|
7
53
|
### 修复
|