@xenonbyte/da-vinci-workflow 0.2.1 → 0.2.3
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 +32 -0
- package/README.md +33 -12
- package/README.zh-CN.md +34 -12
- package/bin/da-vinci-tui.js +8 -0
- package/commands/claude/dv/breakdown.md +8 -0
- package/commands/claude/dv/build.md +11 -0
- package/commands/claude/dv/design.md +5 -2
- package/commands/claude/dv/tasks.md +8 -0
- package/commands/claude/dv/verify.md +9 -0
- package/commands/codex/prompts/dv-breakdown.md +8 -0
- package/commands/codex/prompts/dv-build.md +11 -0
- package/commands/codex/prompts/dv-design.md +5 -2
- package/commands/codex/prompts/dv-tasks.md +8 -0
- package/commands/codex/prompts/dv-verify.md +8 -0
- package/commands/gemini/dv/breakdown.toml +8 -0
- package/commands/gemini/dv/build.toml +11 -0
- package/commands/gemini/dv/design.toml +5 -2
- package/commands/gemini/dv/tasks.toml +8 -0
- package/commands/gemini/dv/verify.toml +8 -0
- package/docs/dv-command-reference.md +47 -0
- package/docs/execution-chain-plan.md +10 -3
- package/docs/mode-use-cases.md +2 -1
- package/docs/pencil-rendering-workflow.md +15 -12
- package/docs/prompt-entrypoints.md +2 -0
- package/docs/prompt-presets/README.md +1 -1
- package/docs/prompt-presets/desktop-app.md +3 -3
- package/docs/prompt-presets/mobile-app.md +3 -3
- package/docs/prompt-presets/tablet-app.md +3 -3
- package/docs/prompt-presets/web-app.md +3 -3
- package/docs/skill-usage.md +224 -0
- package/docs/workflow-examples.md +16 -13
- package/docs/workflow-overview.md +3 -0
- package/docs/zh-CN/dv-command-reference.md +47 -0
- package/docs/zh-CN/mode-use-cases.md +2 -1
- package/docs/zh-CN/pencil-rendering-workflow.md +15 -12
- package/docs/zh-CN/prompt-entrypoints.md +2 -0
- package/docs/zh-CN/prompt-presets/README.md +1 -1
- package/docs/zh-CN/prompt-presets/desktop-app.md +3 -3
- package/docs/zh-CN/prompt-presets/mobile-app.md +3 -3
- package/docs/zh-CN/prompt-presets/tablet-app.md +3 -3
- package/docs/zh-CN/prompt-presets/web-app.md +3 -3
- package/docs/zh-CN/skill-usage.md +224 -0
- package/docs/zh-CN/workflow-examples.md +15 -13
- package/docs/zh-CN/workflow-overview.md +3 -0
- package/examples/greenfield-spec-markupflow/.da-vinci/state/execution-signals/demo__lint-tasks.json +16 -0
- package/lib/audit-parsers.js +18 -9
- package/lib/audit.js +3 -26
- package/lib/cli.js +72 -0
- package/lib/design-source-registry.js +146 -0
- package/lib/save-current-design.js +790 -0
- package/lib/supervisor-review.js +1 -1
- package/lib/workflow-bootstrap.js +2 -13
- package/lib/workflow-persisted-state.js +3 -1
- package/lib/workflow-state.js +51 -3
- package/package.json +4 -2
- package/tui/catalog.js +1293 -0
- package/tui/index.js +2583 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,37 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## v0.2.3 - 2026-04-02
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
- scene-first `Design Ops` actions in TUI for managed `save-current-design`, icon sync progress feedback, and platform+quality Visual Assist presets
|
|
7
|
+
- additional TUI/CLI regression coverage for scene ordering, route mapping, and environment-stable `save-current-design` unavailable behavior
|
|
8
|
+
|
|
9
|
+
### Changed
|
|
10
|
+
- TUI root scenes now keep the documented order (`Install & Uninstall`, `Current Status`, `Switch Work Item`, `Design Ops`, `Pre-Implementation Checks`, `Pre-Acceptance Checks`, `Settings`)
|
|
11
|
+
- `Current Status` route mapping now keeps `/dv:tasks`, `/dv:build`, and bootstrap routes as direct command recommendations instead of forcing mismatched scene actions
|
|
12
|
+
- README (EN/ZH) now documents the updated scene-first behavior and release highlights for `0.2.3`
|
|
13
|
+
|
|
14
|
+
### Fixed
|
|
15
|
+
- removed stale Advanced-command branches from TUI runtime routing and key handling so only reachable scene navigation paths remain
|
|
16
|
+
- stabilized `save-current-design` unavailable-path CLI testing by isolating PATH during bridge-absent assertions
|
|
17
|
+
|
|
18
|
+
## v0.2.2 - 2026-03-31
|
|
19
|
+
|
|
20
|
+
### Added
|
|
21
|
+
- built-in terminal TUI surfaces via `da-vinci tui` and `da-vinci-tui`, with phase-grouped command discovery, bilingual labels, previewable execution, and project/change context controls
|
|
22
|
+
- in-TUI command parameter help so operators can inspect supported flags, placeholders, and required inputs before editing a preview command
|
|
23
|
+
- operator-facing English and Chinese workflow guides covering first-run routing, implementation handoff, pause/resume recovery, and TUI usage
|
|
24
|
+
- TUI regression coverage plus package-content checks for the dedicated TUI bin and shipped `tui/` assets
|
|
25
|
+
|
|
26
|
+
### Changed
|
|
27
|
+
- README and Chinese companion docs now document the `0.2.2` TUI/operator release surface explicitly
|
|
28
|
+
- TUI child commands now execute from the active project context selected in the header instead of always inheriting the original launch cwd
|
|
29
|
+
|
|
30
|
+
### Fixed
|
|
31
|
+
- `q` and `Ctrl-C` now fully terminate the TUI session instead of clearing the screen while leaving stdin resumed in the foreground
|
|
32
|
+
- preview-command editing now treats unclosed quotes as a recoverable TUI error instead of crashing the process
|
|
33
|
+
- the TUI JSON shortcut now uses `J`, preserving lowercase `j/k` for navigation without unreachable toggle branches
|
|
34
|
+
|
|
3
35
|
## v0.2.1 - 2026-03-31
|
|
4
36
|
|
|
5
37
|
### Added
|
package/README.md
CHANGED
|
@@ -28,18 +28,15 @@ This workflow is intended for:
|
|
|
28
28
|
|
|
29
29
|
Latest published npm package:
|
|
30
30
|
|
|
31
|
-
- `@xenonbyte/da-vinci-workflow@0.2.
|
|
31
|
+
- `@xenonbyte/da-vinci-workflow@0.2.3`
|
|
32
32
|
|
|
33
|
-
Release highlights for `0.2.
|
|
33
|
+
Release highlights for `0.2.3`:
|
|
34
34
|
|
|
35
|
-
- added
|
|
36
|
-
-
|
|
37
|
-
-
|
|
38
|
-
-
|
|
39
|
-
- expanded regression coverage for
|
|
40
|
-
- fixed `generate-sidecars` so unresolved workflow/change selection returns `BLOCK` instead of a misleading `PASS`
|
|
41
|
-
- fixed `verify-implementation` so test, fixture, and script files do not satisfy implementation coverage heuristics
|
|
42
|
-
- refreshed release and command docs to document the new execution-chain surfaces in both English and Chinese
|
|
35
|
+
- added scene-first `Design Ops` actions for managed `Save Current Design`, icon sync progress, and Visual Assist platform+quality presets
|
|
36
|
+
- tightened `Current Status` route mapping so `/dv:tasks`, `/dv:build`, and bootstrap routes are no longer forced into unrelated scene actions
|
|
37
|
+
- removed stale hidden Advanced-command UI branches and aligned reachable keyboard/help behavior with scene-only navigation
|
|
38
|
+
- simplified install/uninstall operations to one-click all-platform actions (`Codex`, `Claude Code`, `Gemini`) from the TUI
|
|
39
|
+
- expanded regression coverage for TUI scene order, route mapping, and environment-stable `save-current-design` CLI behavior
|
|
43
40
|
|
|
44
41
|
## Supported workflow modes
|
|
45
42
|
|
|
@@ -93,6 +90,27 @@ Route discipline:
|
|
|
93
90
|
- contextual checkpoint deltas are auxiliary recovery notes only and must not override routing
|
|
94
91
|
- if contextual deltas conflict with current artifacts, ignore them for routing and record the conflict
|
|
95
92
|
|
|
93
|
+
## TUI Quick Start
|
|
94
|
+
|
|
95
|
+
If the growing CLI surface is the main usability problem, use the built-in terminal UI instead of memorizing commands.
|
|
96
|
+
|
|
97
|
+
- launch with `da-vinci tui` or `da-vinci-tui`
|
|
98
|
+
- use `npx -p @xenonbyte/da-vinci-workflow da-vinci tui` when the package is not installed globally
|
|
99
|
+
- the root menu is scene-first: `Install & Uninstall`, `Current Status`, `Switch Work Item`, `Design Ops`, `Pre-Implementation Checks`, `Pre-Acceptance Checks`, `Settings`
|
|
100
|
+
- `Pre-Implementation Checks` is a direct readiness gate for implementation
|
|
101
|
+
- persistent header is intentionally minimal: brand + current project + current change
|
|
102
|
+
- `Design Ops > Save Current Design` persists the current live editor state back to the project-owned `.pen` source
|
|
103
|
+
- `Design Ops > Visual Assist Preset` maps `Masterpiece`/`High Quality`/`Normal` to platform preset variants `Required Supervisor Signoff`/`Advisory Supervisor Review`/`Adapter-Only`
|
|
104
|
+
- `Install & Uninstall` provides three actions: `Status` (show `da-vinci status`), `Install` (install all supported platforms), and `Uninstall` (uninstall all supported platforms)
|
|
105
|
+
- Visual Assist preset output is always English and updates only the `## Visual Assist` block in project-root `DA-VINCI.md` after platform+quality selection (it does not rewrite unrelated sections)
|
|
106
|
+
- `Current Status` now keeps route guidance honest: when `next-step` points to `/dv:tasks`, `/dv:build`, or bootstrap, TUI keeps it as a direct command recommendation instead of forcing a mismatched scene
|
|
107
|
+
- `Settings` now keeps only `Language` and `Logs`
|
|
108
|
+
- `Settings > Logs` shows project-local daily diagnostics from `.da-vinci/logs/YYYY-MM-DD.ndjson`; logs are troubleshooting evidence, not workflow truth
|
|
109
|
+
- it supports English/Chinese chrome, light/dark theme auto-detection, and `t` as a manual fallback
|
|
110
|
+
- `p` sets project context, `c` sets change context, `l` toggles language, `J` toggles `--json`, and `Enter` opens/runs the selected item
|
|
111
|
+
|
|
112
|
+
Use [docs/skill-usage.md](/Users/xubo/x-skills/da-vinci/docs/skill-usage.md) for the operator-facing workflow, resume rules, and TUI guidance.
|
|
113
|
+
|
|
96
114
|
## Visual Assist Quick Start
|
|
97
115
|
|
|
98
116
|
Use `Visual Assist` when the project wants optional help from local UI-design skills such as `frontend-skill` or `ui-ux-pro-max`.
|
|
@@ -484,7 +502,8 @@ During active redesign work, run `da-vinci audit --mode integrity <project-path>
|
|
|
484
502
|
Project-local `.pen` persistence now has two supported paths:
|
|
485
503
|
|
|
486
504
|
- first-run path: seed the registered project-local `.pen` with `da-vinci ensure-pen --output <path> --verify-open`, open that exact path, then persist later MCP snapshot writes back to the same file
|
|
487
|
-
- resume path: if a registered project-local `.pen` already exists, reopen it for continuity,
|
|
505
|
+
- resume path: if a registered project-local `.pen` already exists, reopen it for continuity, then use `da-vinci save-current-design --project <project-path>` after material live edits
|
|
506
|
+
- treat `save-current-design` outcomes explicitly: `saved` means persisted, `blocked` means bound-source contract failure, and `unavailable` means the runtime bridge could not capture a live snapshot
|
|
488
507
|
- multi-source guard: when external `.pen` sources also exist, run `da-vinci check-pen-baseline --pen <project-pen> --baseline <other-pen>` before each new `pencil-session begin`; if hashes diverge, confirm source priority explicitly and sync the chosen source into `<project-pen>` before new edits
|
|
489
508
|
|
|
490
509
|
On autonomous redesign runs, the session wrapper is required when it is available. Lower-level helpers remain available only when the wrapper truly cannot be used.
|
|
@@ -493,8 +512,10 @@ Persistence helpers:
|
|
|
493
512
|
|
|
494
513
|
- required wrapper on autonomous runs:
|
|
495
514
|
- `da-vinci pencil-session begin --project <project-path> --pen <path> [--baseline <path>] [--prefer-source <path>] [--sync-preferred-source]`
|
|
496
|
-
- `da-vinci
|
|
515
|
+
- `da-vinci save-current-design --project <project-path> [--json] [--continue-on-error]`
|
|
497
516
|
- `da-vinci pencil-session end --project <project-path> --pen <path> --nodes-file <batch-get-json> --variables-file <get-variables-json> --version <version>`
|
|
517
|
+
- low-level fallback when high-level save reports `unavailable`:
|
|
518
|
+
- `da-vinci pencil-session persist --project <project-path> --pen <path> --nodes-file <batch-get-json> --variables-file <get-variables-json> --version <version>`
|
|
498
519
|
- `da-vinci check-pen-baseline --pen <project-pen> --baseline <other-pen>[,<other-pen>...] [--prefer-source <path>]`
|
|
499
520
|
- `da-vinci sync-pen-source --from <preferred-source> --to <project-pen>`
|
|
500
521
|
- `da-vinci ensure-pen --output <path> --verify-open`
|
package/README.zh-CN.md
CHANGED
|
@@ -30,18 +30,15 @@ Da Vinci 是一个把产品需求一路推进到结构化规格、Pencil 设计
|
|
|
30
30
|
|
|
31
31
|
最新已发布 npm 包:
|
|
32
32
|
|
|
33
|
-
- `@xenonbyte/da-vinci-workflow@0.2.
|
|
33
|
+
- `@xenonbyte/da-vinci-workflow@0.2.3`
|
|
34
34
|
|
|
35
|
-
`0.2.
|
|
35
|
+
`0.2.3` 版本重点:
|
|
36
36
|
|
|
37
|
-
-
|
|
38
|
-
-
|
|
39
|
-
-
|
|
40
|
-
-
|
|
41
|
-
-
|
|
42
|
-
- 修复 `generate-sidecars`:当 workflow / change 无法解析时,返回 `BLOCK`,不再误报 `PASS`
|
|
43
|
-
- 修复 `verify-implementation`:测试文件、fixture 和脚本文件不再被当成真实实现覆盖证据
|
|
44
|
-
- 中英文 README 与命令文档现已同步补充 execution-chain 新表面说明
|
|
37
|
+
- 新增场景化 `设计操作`:支持托管 `保存当前设计稿`、图标库同步进度反馈,以及 Visual Assist 平台+质量预设写入
|
|
38
|
+
- 收紧 `当前状态` 场景映射:`/dv:tasks`、`/dv:build`、bootstrap 不再被错误导向到无关场景
|
|
39
|
+
- 清理已下线的 Advanced 命令路径残留,TUI 键位与帮助文本统一为可达的场景交互
|
|
40
|
+
- `安装与卸载` 统一为一键全平台动作(`Codex`、`Claude Code`、`Gemini`)
|
|
41
|
+
- 补强回归测试:覆盖 TUI 场景顺序、路由映射,以及 `save-current-design` 的环境隔离稳定性
|
|
45
42
|
|
|
46
43
|
## 支持的工作流模式
|
|
47
44
|
|
|
@@ -98,6 +95,28 @@ Da Vinci 当前支持五种模式:
|
|
|
98
95
|
- Context Delta 只用于恢复上下文,不是阶段判定真相源
|
|
99
96
|
- 如果 Context Delta 与当前工件冲突,应该忽略冲突条目并按工件真相继续
|
|
100
97
|
|
|
98
|
+
## TUI 快速上手
|
|
99
|
+
|
|
100
|
+
如果真正的痛点是 CLI 面太多、不想记命令,就直接用内置终端 TUI。
|
|
101
|
+
|
|
102
|
+
- 用 `da-vinci tui` 或 `da-vinci-tui` 启动
|
|
103
|
+
- 没有全局安装时,用 `npx -p @xenonbyte/da-vinci-workflow da-vinci tui`
|
|
104
|
+
- 首屏按场景组织:`安装与卸载`、`当前状态`、`切换工作项`、`设计操作`、`实施前检查`、`验收前检查`、`设置`
|
|
105
|
+
- 顶部信息最小化:只保留品牌、当前项目、当前 change
|
|
106
|
+
- `设计操作 > 保存当前设计稿` 会把当前 live 编辑器状态回写到项目管理的 `.pen` 设计源
|
|
107
|
+
- `提示词模版` 从英文权威源 `docs/prompt-presets/` 取内容,支持预览和复制
|
|
108
|
+
- `mode1..mode5` 分别映射 `Simple redesign`、`Complex redesign`、`Redesign with reference directory`、`Design-only`、`Continue`
|
|
109
|
+
- `设计操作 > Visual Assist 预设` 中 `Masterpiece`/`High Quality`/`Normal` 分别映射平台预设里的 `Required Supervisor Signoff`/`Advisory Supervisor Review`/`Adapter-Only`
|
|
110
|
+
- `安装与卸载` 提供三个动作:`状态`(查看 `da-vinci status`)、`安装`(一键安装所有支持平台)、`卸载`(一键卸载所有支持平台)
|
|
111
|
+
- Visual Assist 预设写入始终输出英文;在完成“平台 + 质量”选择后只更新项目根 `DA-VINCI.md` 的 `## Visual Assist` 区块,不会改写其他章节
|
|
112
|
+
- `当前状态` 现在会保持路由建议真实:当 `next-step` 建议 `/dv:tasks`、`/dv:build` 或 bootstrap 时,TUI 会给出直接命令建议,而不是强行映射到不匹配场景
|
|
113
|
+
- `设置` 现在只保留 `语言` 和 `日志`
|
|
114
|
+
- `设置 > 日志` 读取项目内 `.da-vinci/logs/YYYY-MM-DD.ndjson` 的每日诊断日志;日志是排障证据,不是工作流真相源
|
|
115
|
+
- 支持中英文界面与浅色/深色自动识别,`t` 可手动切换主题
|
|
116
|
+
- `p` 设置项目上下文,`c` 设置 change 上下文,`l` 切语言,`J` 切 `--json`,`Enter` 进入/执行
|
|
117
|
+
|
|
118
|
+
如果你想看“人到底怎么用这个 skill、暂停后怎么续跑、TUI 怎么配合”的完整说明,直接看 [docs/zh-CN/skill-usage.md](/Users/xubo/x-skills/da-vinci/docs/zh-CN/skill-usage.md)。
|
|
119
|
+
|
|
101
120
|
## Visual Assist 快速上手
|
|
102
121
|
|
|
103
122
|
当项目想借助本地 UI 设计 skill,例如 `frontend-skill` 或 `ui-ux-pro-max`,来提升设计质量时,就配置 `Visual Assist`。
|
|
@@ -405,7 +424,8 @@ Context Delta 与 audit 的关系:
|
|
|
405
424
|
项目内 `.pen` 持久化现在分成两条受支持路径:
|
|
406
425
|
|
|
407
426
|
- 首次运行路径:先用 `da-vinci ensure-pen --output <path> --verify-open` seed 登记好的项目内 `.pen`,打开这个精确路径,然后把后续 MCP 快照持续写回同一个文件
|
|
408
|
-
- 继续迭代路径:如果项目里原本已有登记的 `.pen
|
|
427
|
+
- 继续迭代路径:如果项目里原本已有登记的 `.pen`,先打开它继续工作;发生实质性 live edit 后,优先执行 `da-vinci save-current-design --project <project-path>`
|
|
428
|
+
- `save-current-design` 结果必须分开处理:`saved` 才代表已持久化;`blocked` 代表绑定源契约失败;`unavailable` 代表 runtime bridge 无法抓取 live 快照
|
|
409
429
|
- 多源门禁:如果还存在外部 `.pen` 源,每次新一轮 `pencil-session begin` 前先运行 `da-vinci check-pen-baseline --pen <project-pen> --baseline <other-pen>`;若 hash 不一致,必须先确认来源优先级并把选中的来源同步回 `<project-pen>`
|
|
410
430
|
|
|
411
431
|
如果是自治运行,session wrapper 只要可用就必须使用。只有 wrapper 确实不可用时,才退回底层 helper。
|
|
@@ -414,8 +434,10 @@ Context Delta 与 audit 的关系:
|
|
|
414
434
|
|
|
415
435
|
- 自治运行必须使用的 session 命令:
|
|
416
436
|
- `da-vinci pencil-session begin --project <project-path> --pen <path> [--baseline <path>] [--prefer-source <path>] [--sync-preferred-source]`
|
|
417
|
-
- `da-vinci
|
|
437
|
+
- `da-vinci save-current-design --project <project-path> [--json] [--continue-on-error]`
|
|
418
438
|
- `da-vinci pencil-session end --project <project-path> --pen <path> --nodes-file <batch-get-json> --variables-file <get-variables-json> --version <version>`
|
|
439
|
+
- 当高层保存返回 `unavailable` 时,才回退到底层链路:
|
|
440
|
+
- `da-vinci pencil-session persist --project <project-path> --pen <path> --nodes-file <batch-get-json> --variables-file <get-variables-json> --version <version>`
|
|
419
441
|
- `da-vinci check-pen-baseline --pen <project-pen> --baseline <other-pen>[,<other-pen>...] [--prefer-source <path>]`
|
|
420
442
|
- `da-vinci sync-pen-source --from <preferred-source> --to <project-pen>`
|
|
421
443
|
- `da-vinci ensure-pen --output <path> --verify-open`
|
|
@@ -7,6 +7,14 @@ Use the Da Vinci workflow for this request.
|
|
|
7
7
|
|
|
8
8
|
Action: `breakdown`
|
|
9
9
|
|
|
10
|
+
Before handing requirements off to design when shell access is available:
|
|
11
|
+
- run `da-vinci workflow-status --project <path> [--change <id>] --json`
|
|
12
|
+
- run `da-vinci next-step --project <path> [--change <id>]`
|
|
13
|
+
- run `da-vinci lint-spec --project <path> [--change <id>] --strict`
|
|
14
|
+
- treat command output as the gate; do not replace `BLOCK` or non-zero results with narrative judgment
|
|
15
|
+
- if the primary recommended route is still `/dv:breakdown`, keep refining `proposal.md` and specs instead of forcing design
|
|
16
|
+
- do not move to `/dv:design` until the command-backed checks stop blocking
|
|
17
|
+
|
|
10
18
|
Focus on:
|
|
11
19
|
- scope
|
|
12
20
|
- pages
|
|
@@ -7,6 +7,17 @@ Use the Da Vinci workflow for this request.
|
|
|
7
7
|
|
|
8
8
|
Action: `build`
|
|
9
9
|
|
|
10
|
+
Before broad implementation when shell access is available:
|
|
11
|
+
- run `da-vinci workflow-status --project <path> [--change <id>] --json`
|
|
12
|
+
- run `da-vinci next-step --project <path> [--change <id>]`
|
|
13
|
+
- if the primary recommended route is not `/dv:build`, stop and continue from that route instead of forcing implementation
|
|
14
|
+
- run `da-vinci lint-spec --project <path> [--change <id>]`
|
|
15
|
+
- run `da-vinci scope-check --project <path> [--change <id>]`
|
|
16
|
+
- if `tasks.md` exists, run `da-vinci lint-tasks --project <path> [--change <id>]`
|
|
17
|
+
- if both `pencil-design.md` and `pencil-bindings.md` exist, run `da-vinci lint-bindings --project <path> [--change <id>]`
|
|
18
|
+
- treat command output as the gate; do not downgrade `BLOCK` or non-zero results into soft guidance
|
|
19
|
+
- treat any `BLOCK` or missing required planning/design artifact as a hard stop before broad implementation
|
|
20
|
+
|
|
10
21
|
Focus on:
|
|
11
22
|
- requirements-backed behavior
|
|
12
23
|
- Pencil-backed layout and presentation
|
|
@@ -20,10 +20,13 @@ Create or update:
|
|
|
20
20
|
Run the `design checkpoint` before locking implementation tasks.
|
|
21
21
|
Before non-trivial `batch_design` calls, preflight the Pencil operations when shell access is available.
|
|
22
22
|
If the same anchor surface rolls back twice, switch to micro-batches of 6 or fewer operations until a clean schema-safe pass succeeds.
|
|
23
|
-
Require the session wrapper commands on autonomous runs: `da-vinci pencil-session begin`, `da-vinci
|
|
23
|
+
Require the session wrapper commands on autonomous runs: `da-vinci pencil-session begin`, `da-vinci save-current-design`, and `da-vinci pencil-session end`.
|
|
24
24
|
Before the first Pencil edit, require `da-vinci pencil-session begin` so the registered project-local `.pen` is seeded and locked before editing starts.
|
|
25
25
|
When multiple `.pen` sources exist (for example an external backup), run `da-vinci check-pen-baseline --pen <project-pen> --baseline <other-pen>` before `pencil-session begin`. If hashes diverge, confirm source priority explicitly and sync the chosen source into the project-local `.pen` (for example `da-vinci sync-pen-source --from <preferred-source> --to <project-pen>`) before continuing edits.
|
|
26
|
-
If a registered project-local `.pen` already exists, reopen it for continuity
|
|
26
|
+
If a registered project-local `.pen` already exists, reopen it for continuity and use `da-vinci save-current-design --project <project-path>` after material edits.
|
|
27
|
+
Treat `saved`, `blocked`, and `unavailable` as distinct outcomes; never treat `unavailable` as a successful save.
|
|
28
|
+
Use the lower-level `pencil-session persist` payload path only when the high-level save bridge is unavailable.
|
|
29
|
+
The MVP guarantee is bound source-path safety (`registered .pen`, session `penPath`, and active editor path converge), not exact window-instance identity before MCP exposes stable window/editor identifiers.
|
|
27
30
|
After the first successful Pencil write, run `da-vinci audit --mode integrity <project-path>` before broad expansion continues.
|
|
28
31
|
If Pencil MCP is active, run the MCP runtime gate after the first successful Pencil write and record it in `pencil-design.md`.
|
|
29
32
|
Screenshot review must record an explicit `PASS`, `WARN`, or `BLOCK` plus the issue list and revision outcome; "looks good" is not a valid review record.
|
|
@@ -16,4 +16,12 @@ Focus on:
|
|
|
16
16
|
Create or update:
|
|
17
17
|
- `tasks.md`
|
|
18
18
|
|
|
19
|
+
Before claiming implementation-ready task planning:
|
|
20
|
+
- re-check that the workflow is still in the `/dv:tasks` lane when route context is stale or unclear
|
|
21
|
+
- run the `task checkpoint`
|
|
22
|
+
- when shell access is available, run `da-vinci lint-tasks --project <path> [--change <id>]`
|
|
23
|
+
- if both `pencil-design.md` and `pencil-bindings.md` exist, run `da-vinci lint-bindings --project <path> [--change <id>]`
|
|
24
|
+
- treat command output as the gate; do not downgrade `BLOCK` or non-zero results into soft guidance
|
|
25
|
+
- do not hand off to `build` while task coverage or bindings readiness are still blocking
|
|
26
|
+
|
|
19
27
|
Run the `task checkpoint` before implementation begins.
|
|
@@ -15,4 +15,13 @@ Check:
|
|
|
15
15
|
Create or update:
|
|
16
16
|
- `verification.md`
|
|
17
17
|
|
|
18
|
+
When shell access is available:
|
|
19
|
+
- run `da-vinci verify-bindings --project <path> [--change <id>]`
|
|
20
|
+
- run `da-vinci verify-implementation --project <path> [--change <id>]`
|
|
21
|
+
- run `da-vinci verify-structure --project <path> [--change <id>]`
|
|
22
|
+
- run `da-vinci verify-coverage --project <path> [--change <id>]`
|
|
23
|
+
- treat command output as the gate; do not downgrade `BLOCK` or `FAIL` into soft guidance
|
|
24
|
+
- if any verification surface is still `BLOCK` or `FAIL`, keep the workflow in verification and record the drift instead of claiming success
|
|
25
|
+
|
|
18
26
|
If Pencil MCP is active and terminal completion is being considered, re-check the MCP runtime gate evidence before treating verification as complete.
|
|
27
|
+
Before any terminal completion claim, require `da-vinci audit --mode completion --change <change-id> <project-path>` to pass.
|
|
@@ -7,6 +7,14 @@ Use the `da-vinci` skill for this request.
|
|
|
7
7
|
|
|
8
8
|
Action: `breakdown`
|
|
9
9
|
|
|
10
|
+
Before handing requirements off to design when shell access is available:
|
|
11
|
+
- run `da-vinci workflow-status --project <path> [--change <id>] --json`
|
|
12
|
+
- run `da-vinci next-step --project <path> [--change <id>]`
|
|
13
|
+
- run `da-vinci lint-spec --project <path> [--change <id>] --strict`
|
|
14
|
+
- treat command output as the gate; do not replace `BLOCK` or non-zero results with narrative judgment
|
|
15
|
+
- if the primary recommended route is still `/dv:breakdown`, keep refining `proposal.md` and specs instead of forcing design
|
|
16
|
+
- do not move to `/dv:design` until the command-backed checks stop blocking
|
|
17
|
+
|
|
10
18
|
Output should move the work toward:
|
|
11
19
|
- `proposal.md`
|
|
12
20
|
- `specs/<capability>/spec.md`
|
|
@@ -7,6 +7,17 @@ Use the `da-vinci` skill for this request.
|
|
|
7
7
|
|
|
8
8
|
Action: `build`
|
|
9
9
|
|
|
10
|
+
Before broad implementation when shell access is available:
|
|
11
|
+
- run `da-vinci workflow-status --project <path> [--change <id>] --json`
|
|
12
|
+
- run `da-vinci next-step --project <path> [--change <id>]`
|
|
13
|
+
- if the primary recommended route is not `/dv:build`, stop and continue from that route instead of forcing implementation
|
|
14
|
+
- run `da-vinci lint-spec --project <path> [--change <id>]`
|
|
15
|
+
- run `da-vinci scope-check --project <path> [--change <id>]`
|
|
16
|
+
- if `tasks.md` exists, run `da-vinci lint-tasks --project <path> [--change <id>]`
|
|
17
|
+
- if both `pencil-design.md` and `pencil-bindings.md` exist, run `da-vinci lint-bindings --project <path> [--change <id>]`
|
|
18
|
+
- treat command output as the gate; do not downgrade `BLOCK` or non-zero results into soft guidance
|
|
19
|
+
- treat any `BLOCK` or missing required planning/design artifact as a hard stop before broad implementation
|
|
20
|
+
|
|
10
21
|
Implementation rules:
|
|
11
22
|
- requirements decide behavior
|
|
12
23
|
- Pencil decides presentation
|
|
@@ -14,10 +14,13 @@ Output should move the work toward:
|
|
|
14
14
|
Use Pencil-backed structure as the design source when available.
|
|
15
15
|
Before non-trivial `batch_design` calls, preflight the Pencil operations when shell access is available.
|
|
16
16
|
If the same anchor surface rolls back twice, switch to micro-batches of 6 or fewer operations until a clean schema-safe pass succeeds.
|
|
17
|
-
Require the session wrapper commands on autonomous runs: `da-vinci pencil-session begin`, `da-vinci
|
|
17
|
+
Require the session wrapper commands on autonomous runs: `da-vinci pencil-session begin`, `da-vinci save-current-design`, and `da-vinci pencil-session end`.
|
|
18
18
|
Before the first Pencil edit, require `da-vinci pencil-session begin` so the registered project-local `.pen` is seeded and locked before editing starts.
|
|
19
19
|
When multiple `.pen` sources exist (for example an external backup), run `da-vinci check-pen-baseline --pen <project-pen> --baseline <other-pen>` before `pencil-session begin`. If hashes diverge, confirm source priority explicitly and sync the chosen source into the project-local `.pen` (for example `da-vinci sync-pen-source --from <preferred-source> --to <project-pen>`) before continuing edits.
|
|
20
|
-
If a registered project-local `.pen` already exists, reopen it for continuity
|
|
20
|
+
If a registered project-local `.pen` already exists, reopen it for continuity and use `da-vinci save-current-design --project <project-path>` after material edits.
|
|
21
|
+
Treat `saved`, `blocked`, and `unavailable` as distinct outcomes; never treat `unavailable` as a successful save.
|
|
22
|
+
Use the lower-level `pencil-session persist` payload path only when the high-level save bridge is unavailable.
|
|
23
|
+
The MVP guarantee is bound source-path safety (`registered .pen`, session `penPath`, and active editor path converge), not exact window-instance identity before MCP exposes stable window/editor identifiers.
|
|
21
24
|
After the first successful Pencil write, run `da-vinci audit --mode integrity <project-path>` before broad expansion continues.
|
|
22
25
|
If Pencil MCP is active, run the MCP runtime gate after the first successful Pencil write and record it in `pencil-design.md`.
|
|
23
26
|
Screenshot review must record an explicit `PASS`, `WARN`, or `BLOCK` plus the issue list and revision outcome; "looks good" is not a valid review record.
|
|
@@ -14,3 +14,11 @@ Tasks must cover:
|
|
|
14
14
|
- spec-backed behavior
|
|
15
15
|
- Pencil-backed UI work
|
|
16
16
|
- verification work
|
|
17
|
+
|
|
18
|
+
Before claiming implementation-ready task planning:
|
|
19
|
+
- re-check that the workflow is still in the `/dv:tasks` lane when route context is stale or unclear
|
|
20
|
+
- run the `task checkpoint`
|
|
21
|
+
- when shell access is available, run `da-vinci lint-tasks --project <path> [--change <id>]`
|
|
22
|
+
- if both `pencil-design.md` and `pencil-bindings.md` exist, run `da-vinci lint-bindings --project <path> [--change <id>]`
|
|
23
|
+
- treat command output as the gate; do not downgrade `BLOCK` or non-zero results into soft guidance
|
|
24
|
+
- do not hand off to `build` while task coverage or bindings readiness are still blocking
|
|
@@ -13,4 +13,12 @@ Check:
|
|
|
13
13
|
- drift between artifacts and code
|
|
14
14
|
|
|
15
15
|
Update `verification.md` when needed.
|
|
16
|
+
When shell access is available:
|
|
17
|
+
- run `da-vinci verify-bindings --project <path> [--change <id>]`
|
|
18
|
+
- run `da-vinci verify-implementation --project <path> [--change <id>]`
|
|
19
|
+
- run `da-vinci verify-structure --project <path> [--change <id>]`
|
|
20
|
+
- run `da-vinci verify-coverage --project <path> [--change <id>]`
|
|
21
|
+
- treat command output as the gate; do not downgrade `BLOCK` or `FAIL` into soft guidance
|
|
22
|
+
- if any verification surface is still `BLOCK` or `FAIL`, keep the workflow in verification and record the drift instead of claiming success
|
|
16
23
|
If Pencil MCP is active and terminal completion is being considered, re-check the MCP runtime gate evidence before treating verification as complete.
|
|
24
|
+
Before any terminal completion claim, require `da-vinci audit --mode completion --change <change-id> <project-path>` to pass.
|
|
@@ -6,6 +6,14 @@ Use the Da Vinci workflow for this request.
|
|
|
6
6
|
|
|
7
7
|
Action: `breakdown`
|
|
8
8
|
|
|
9
|
+
Before handing requirements off to design when shell access is available:
|
|
10
|
+
- run `da-vinci workflow-status --project <path> [--change <id>] --json`
|
|
11
|
+
- run `da-vinci next-step --project <path> [--change <id>]`
|
|
12
|
+
- run `da-vinci lint-spec --project <path> [--change <id>] --strict`
|
|
13
|
+
- treat command output as the gate; do not replace `BLOCK` or non-zero results with narrative judgment
|
|
14
|
+
- if the primary recommended route is still `/dv:breakdown`, keep refining `proposal.md` and specs instead of forcing design
|
|
15
|
+
- do not move to `/dv:design` until the command-backed checks stop blocking
|
|
16
|
+
|
|
9
17
|
Focus on:
|
|
10
18
|
- scope
|
|
11
19
|
- pages
|
|
@@ -6,6 +6,17 @@ Use the Da Vinci workflow for this request.
|
|
|
6
6
|
|
|
7
7
|
Action: `build`
|
|
8
8
|
|
|
9
|
+
Before broad implementation when shell access is available:
|
|
10
|
+
- run `da-vinci workflow-status --project <path> [--change <id>] --json`
|
|
11
|
+
- run `da-vinci next-step --project <path> [--change <id>]`
|
|
12
|
+
- if the primary recommended route is not `/dv:build`, stop and continue from that route instead of forcing implementation
|
|
13
|
+
- run `da-vinci lint-spec --project <path> [--change <id>]`
|
|
14
|
+
- run `da-vinci scope-check --project <path> [--change <id>]`
|
|
15
|
+
- if `tasks.md` exists, run `da-vinci lint-tasks --project <path> [--change <id>]`
|
|
16
|
+
- if both `pencil-design.md` and `pencil-bindings.md` exist, run `da-vinci lint-bindings --project <path> [--change <id>]`
|
|
17
|
+
- treat command output as the gate; do not downgrade `BLOCK` or non-zero results into soft guidance
|
|
18
|
+
- treat any `BLOCK` or missing required planning/design artifact as a hard stop before broad implementation
|
|
19
|
+
|
|
9
20
|
Implementation rules:
|
|
10
21
|
- requirements decide behavior
|
|
11
22
|
- Pencil decides presentation
|
|
@@ -13,10 +13,13 @@ Create or update:
|
|
|
13
13
|
Use Pencil-backed page coverage as the source of presentation truth.
|
|
14
14
|
Before non-trivial `batch_design` calls, preflight the Pencil operations when shell access is available.
|
|
15
15
|
If the same anchor surface rolls back twice, switch to micro-batches of 6 or fewer operations until a clean schema-safe pass succeeds.
|
|
16
|
-
Require the session wrapper commands on autonomous runs: `da-vinci pencil-session begin`, `da-vinci
|
|
16
|
+
Require the session wrapper commands on autonomous runs: `da-vinci pencil-session begin`, `da-vinci save-current-design`, and `da-vinci pencil-session end`.
|
|
17
17
|
Before the first Pencil edit, require `da-vinci pencil-session begin` so the registered project-local `.pen` is seeded and locked before editing starts.
|
|
18
18
|
When multiple `.pen` sources exist (for example an external backup), run `da-vinci check-pen-baseline --pen <project-pen> --baseline <other-pen>` before `pencil-session begin`. If hashes diverge, confirm source priority explicitly and sync the chosen source into the project-local `.pen` (for example `da-vinci sync-pen-source --from <preferred-source> --to <project-pen>`) before continuing edits.
|
|
19
|
-
If a registered project-local `.pen` already exists, reopen it for continuity
|
|
19
|
+
If a registered project-local `.pen` already exists, reopen it for continuity and use `da-vinci save-current-design --project <project-path>` after material edits.
|
|
20
|
+
Treat `saved`, `blocked`, and `unavailable` as distinct outcomes; never treat `unavailable` as a successful save.
|
|
21
|
+
Use the lower-level `pencil-session persist` payload path only when the high-level save bridge is unavailable.
|
|
22
|
+
The MVP guarantee is bound source-path safety (`registered .pen`, session `penPath`, and active editor path converge), not exact window-instance identity before MCP exposes stable window/editor identifiers.
|
|
20
23
|
After the first successful Pencil write, run `da-vinci audit --mode integrity <project-path>` before broad expansion continues.
|
|
21
24
|
If Pencil MCP is active, run the MCP runtime gate after the first successful Pencil write and record it in `pencil-design.md`.
|
|
22
25
|
Screenshot review must record an explicit `PASS`, `WARN`, or `BLOCK` plus the issue list and revision outcome; "looks good" is not a valid review record.
|
|
@@ -10,4 +10,12 @@ Create or update:
|
|
|
10
10
|
- `tasks.md`
|
|
11
11
|
|
|
12
12
|
Tasks must cover spec behavior, Pencil-backed UI work, and verification.
|
|
13
|
+
|
|
14
|
+
Before claiming implementation-ready task planning:
|
|
15
|
+
- re-check that the workflow is still in the `/dv:tasks` lane when route context is stale or unclear
|
|
16
|
+
- run the `task checkpoint`
|
|
17
|
+
- when shell access is available, run `da-vinci lint-tasks --project <path> [--change <id>]`
|
|
18
|
+
- if both `pencil-design.md` and `pencil-bindings.md` exist, run `da-vinci lint-bindings --project <path> [--change <id>]`
|
|
19
|
+
- treat command output as the gate; do not downgrade `BLOCK` or non-zero results into soft guidance
|
|
20
|
+
- do not hand off to `build` while task coverage or bindings readiness are still blocking
|
|
13
21
|
"""
|
|
@@ -12,5 +12,13 @@ Check:
|
|
|
12
12
|
- drift between artifacts and code
|
|
13
13
|
|
|
14
14
|
Update `verification.md` when needed.
|
|
15
|
+
When shell access is available:
|
|
16
|
+
- run `da-vinci verify-bindings --project <path> [--change <id>]`
|
|
17
|
+
- run `da-vinci verify-implementation --project <path> [--change <id>]`
|
|
18
|
+
- run `da-vinci verify-structure --project <path> [--change <id>]`
|
|
19
|
+
- run `da-vinci verify-coverage --project <path> [--change <id>]`
|
|
20
|
+
- treat command output as the gate; do not downgrade `BLOCK` or `FAIL` into soft guidance
|
|
21
|
+
- if any verification surface is still `BLOCK` or `FAIL`, keep the workflow in verification and record the drift instead of claiming success
|
|
15
22
|
If Pencil MCP is active and terminal completion is being considered, re-check the MCP runtime gate evidence before treating verification as complete.
|
|
23
|
+
Before any terminal completion claim, require `da-vinci audit --mode completion --change <change-id> <project-path>` to pass.
|
|
16
24
|
"""
|
|
@@ -37,6 +37,10 @@ These helpers exist to select or resume the correct route. They are not substitu
|
|
|
37
37
|
|
|
38
38
|
These commands do not replace route selection, but they support design execution quality:
|
|
39
39
|
|
|
40
|
+
- `da-vinci tui [--project <path>] [--change <id>] [--lang en|zh]`
|
|
41
|
+
- opens a workflow-oriented terminal UI that groups commands by phase and lets you run them after previewing the generated CLI
|
|
42
|
+
- use `da-vinci-tui` as the dedicated bin alias, or `npx -p @xenonbyte/da-vinci-workflow da-vinci tui` without a global install
|
|
43
|
+
- useful when the command surface is harder to remember than the workflow itself
|
|
40
44
|
- `da-vinci workflow-status --project <path> [--change <id>] [--json]`
|
|
41
45
|
- derives the current workflow stage from artifact and checkpoint truth
|
|
42
46
|
- reports blockers, warnings, handoff-gate state, and one primary route recommendation
|
|
@@ -95,6 +99,11 @@ These commands do not replace route selection, but they support design execution
|
|
|
95
99
|
- `da-vinci sync-pen-source --from <preferred-source> --to <project-pen>`
|
|
96
100
|
- copies the selected latest `.pen` source into the project-local `.pen` path and refreshes Da Vinci state metadata
|
|
97
101
|
- use when external backup is the latest baseline and must be materialized before `pencil-session begin`
|
|
102
|
+
- `da-vinci save-current-design --project <path> [--json] [--continue-on-error]`
|
|
103
|
+
- runs the high-level bound-source save flow for guided design persistence
|
|
104
|
+
- requires convergence of registered `.pen`, session `penPath`, and active editor path before persistence
|
|
105
|
+
- returns one explicit outcome envelope: `saved`, `blocked`, or `unavailable`
|
|
106
|
+
- `blocked` means save-time source/lock/payload contracts failed; `unavailable` means MCP bridge/runtime capture was not reachable
|
|
98
107
|
|
|
99
108
|
Use these utilities during `/dv:design`, especially before anchor-surface icon finalization.
|
|
100
109
|
|
|
@@ -168,6 +177,14 @@ For `overhaul-from-code`, this stage may also create:
|
|
|
168
177
|
|
|
169
178
|
This is the behavior-truth shaping stage.
|
|
170
179
|
|
|
180
|
+
Breakdown-stage self-check:
|
|
181
|
+
|
|
182
|
+
- before handing requirements off to design, run `da-vinci workflow-status --project <path> [--change <id>] --json`
|
|
183
|
+
- run `da-vinci next-step --project <path> [--change <id>]`
|
|
184
|
+
- run `da-vinci lint-spec --project <path> [--change <id>] --strict`
|
|
185
|
+
- treat command output as the gate; do not replace `BLOCK` or non-zero results with narrative judgment
|
|
186
|
+
- if the primary recommended route is still `/dv:breakdown`, keep refining `proposal.md` and specs instead of forcing `/dv:design`
|
|
187
|
+
|
|
171
188
|
### `/dv:design`
|
|
172
189
|
|
|
173
190
|
Use when:
|
|
@@ -206,6 +223,14 @@ This is the implementation-planning stage.
|
|
|
206
223
|
|
|
207
224
|
It does not write code.
|
|
208
225
|
|
|
226
|
+
Task-stage self-check:
|
|
227
|
+
|
|
228
|
+
- run the `task checkpoint` before handing work off to implementation
|
|
229
|
+
- when shell access is available, run `da-vinci lint-tasks --project <path> [--change <id>]`
|
|
230
|
+
- if both `pencil-design.md` and `pencil-bindings.md` exist, run `da-vinci lint-bindings --project <path> [--change <id>]`
|
|
231
|
+
- treat command output as the gate; do not downgrade `BLOCK` or non-zero results into soft guidance
|
|
232
|
+
- do not promote `/dv:build` while task coverage or bindings readiness are still blocking
|
|
233
|
+
|
|
209
234
|
### `/dv:build`
|
|
210
235
|
|
|
211
236
|
Use when:
|
|
@@ -221,6 +246,18 @@ Creates or updates:
|
|
|
221
246
|
|
|
222
247
|
This is the execution stage.
|
|
223
248
|
|
|
249
|
+
Build-stage self-check:
|
|
250
|
+
|
|
251
|
+
- before broad implementation, run `da-vinci workflow-status --project <path> [--change <id>] --json`
|
|
252
|
+
- run `da-vinci next-step --project <path> [--change <id>]`
|
|
253
|
+
- if the primary recommended route is not `/dv:build`, stop and continue from that route instead of forcing implementation
|
|
254
|
+
- run `da-vinci lint-spec --project <path> [--change <id>]`
|
|
255
|
+
- run `da-vinci scope-check --project <path> [--change <id>]`
|
|
256
|
+
- if `tasks.md` exists, run `da-vinci lint-tasks --project <path> [--change <id>]`
|
|
257
|
+
- if both `pencil-design.md` and `pencil-bindings.md` exist, run `da-vinci lint-bindings --project <path> [--change <id>]`
|
|
258
|
+
- treat command output as the gate; do not downgrade `BLOCK` or non-zero results into soft guidance
|
|
259
|
+
- treat any `BLOCK` or missing required planning/design artifact as a hard stop before broad implementation
|
|
260
|
+
|
|
224
261
|
Completion discipline:
|
|
225
262
|
|
|
226
263
|
- treat `BUILD SUCCESSFUL` as compile-only evidence
|
|
@@ -241,6 +278,16 @@ Creates or updates:
|
|
|
241
278
|
|
|
242
279
|
This is the truth-reconciliation stage.
|
|
243
280
|
|
|
281
|
+
Verify-stage self-check:
|
|
282
|
+
|
|
283
|
+
- when shell access is available, run `da-vinci verify-bindings --project <path> [--change <id>]`
|
|
284
|
+
- run `da-vinci verify-implementation --project <path> [--change <id>]`
|
|
285
|
+
- run `da-vinci verify-structure --project <path> [--change <id>]`
|
|
286
|
+
- run `da-vinci verify-coverage --project <path> [--change <id>]`
|
|
287
|
+
- treat command output as the gate; do not downgrade `BLOCK` or `FAIL` into soft guidance
|
|
288
|
+
- if any verification surface is still `BLOCK` or `FAIL`, keep the workflow in verification and record the drift instead of claiming success
|
|
289
|
+
- before terminal completion, require `da-vinci audit --mode completion --change <change-id> <project-path>` to pass
|
|
290
|
+
|
|
244
291
|
## State-Based Next-Step Rules
|
|
245
292
|
|
|
246
293
|
These are the intended route recommendations.
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# Execution-Chain Upgrade Plan Notes
|
|
2
2
|
|
|
3
|
+
Historical planning note only.
|
|
4
|
+
|
|
5
|
+
Use `openspec/changes/execution-chain-upgrade-plan/tasks.md` as the canonical executable task breakdown for this upgrade. This file records the background planning decisions that shaped that OpenSpec change; it is not the source of truth for implementation sequencing or release signoff.
|
|
6
|
+
|
|
3
7
|
This document records planning decisions required by the execution-chain upgrade.
|
|
4
8
|
|
|
5
9
|
## Phase 0 Pre-work Decisions
|
|
@@ -24,6 +28,7 @@ The workflow contract must own:
|
|
|
24
28
|
- route dependencies
|
|
25
29
|
- stage handoff gates
|
|
26
30
|
- status vocabulary (`PASS/WARN/BLOCK`)
|
|
31
|
+
- audit-owned machine-parsed hard-gate fields from `DA-VINCI.md`, `.da-vinci/design-registry.md`, and `pencil-design.md`
|
|
27
32
|
|
|
28
33
|
### Compatibility boundaries
|
|
29
34
|
|
|
@@ -83,18 +88,18 @@ Re-baseline rule:
|
|
|
83
88
|
### Measurable DoD checks
|
|
84
89
|
|
|
85
90
|
- Phase 0: inventory, parser ownership, schema boundaries, and test layers documented
|
|
86
|
-
- Phase 1: workflow-status/next-step + prompt-first continue integration + contract tests green
|
|
91
|
+
- Phase 1: workflow-status/next-step + prompt-first continue integration + design-source/runtime/mapping-aware routing + contract tests green
|
|
87
92
|
- Phase 2: lint/scope + deterministic sidecars + advisory/strict semantics tested
|
|
88
93
|
- Phase 3: verify surfaces + task-group metadata + audit wiring tested
|
|
89
94
|
- Phase 4a: persisted state + diff + compatibility hardening tested
|
|
90
95
|
- Phase 4b: constrained scaffold MVP tested
|
|
91
|
-
- Phase 4c: command-asset convergence + docs + release controls tested
|
|
96
|
+
- Phase 4c: command-asset convergence + docs + audit-aligned release controls tested
|
|
92
97
|
|
|
93
98
|
### First-release MVP scope
|
|
94
99
|
|
|
95
100
|
In scope:
|
|
96
101
|
|
|
97
|
-
- workflow-status/next-step
|
|
102
|
+
- workflow-status/next-step with design-source/runtime/mapping-aware route guards
|
|
98
103
|
- lint-spec/lint-tasks/lint-bindings/scope-check
|
|
99
104
|
- generate-sidecars + diff-spec
|
|
100
105
|
- verify-bindings/verify-implementation/verify-structure/verify-coverage
|
|
@@ -121,5 +126,7 @@ Out of scope:
|
|
|
121
126
|
### Release criteria and fallback
|
|
122
127
|
|
|
123
128
|
- release requires core + contracts + e2e lanes green
|
|
129
|
+
- completion or release-ready claims for shipped change scope must also pass `da-vinci audit --mode completion --change <change-id> <project-path>`
|
|
130
|
+
- CI green is necessary but not sufficient when workflow truth or completion semantics disagree with audit
|
|
124
131
|
- stale persisted state always falls back to derived state
|
|
125
132
|
- verify-structure unsupported cases must emit heuristic fallback with confidence
|
package/docs/mode-use-cases.md
CHANGED
|
@@ -146,7 +146,8 @@ Generate DA-VINCI.md, proposal, specs, page map, Pencil-backed launch pages, bin
|
|
|
146
146
|
8. create `pencil-design.md`
|
|
147
147
|
- record the generated Pencil screens
|
|
148
148
|
- require `da-vinci pencil-session begin` before the first Pencil edit so the registered `.pen` is seeded and locked up front
|
|
149
|
-
- if a registered project-local `.pen` already exists, reopen it for continuity
|
|
149
|
+
- if a registered project-local `.pen` already exists, reopen it for continuity, then run `da-vinci save-current-design --project <project-path>` after material live edits
|
|
150
|
+
- treat `saved`, `blocked`, and `unavailable` as distinct outcomes; only fall back to low-level `pencil-session persist --nodes-file/--variables-file` when the high-level bridge is unavailable
|
|
150
151
|
- keep screenshot exports under `.da-vinci/changes/<change-id>/exports/` rather than `.da-vinci/designs/`
|
|
151
152
|
|
|
152
153
|
9. create `pencil-bindings.md`
|