# 能力全景与路线图

> 这是「版本记录 · Markdown 对话主题排版」插件的能力全景。已交付 = 当前可用；路线图 = 待迭代实现。技术细节见 `docs/architecture.md` / `docs/themes.md` / `docs/variables.md`。

## A. 版本记录

| # | 能力 | 状态 |
| --- | --- | --- |
| A1 | 每次迭代自动形成不可变版本（Package），随时可回滚到任意历史版本 | ✅ |
| A2 | 版本台账：版本号、名称、日期、变更日志、主题名，按 packageId 去重 | ✅ |
| A3 | run 卡片内版本面板：当前版本徽标 + 本次变更日志 + 历史版本列表 | ✅ |
| A4 | `manifest/versions.json` 持久台账 + git tag 基线 | ✅ |
| A5 | 台账落盘到工作区文件自动同步（Host 用 fs 服务写 `manifest/versions.json`） | 🔜 |
| A6 | 版本对比视图（任意两版 diff 变更日志 / 配色差异） | 🔜 |

## B. 主题（颜色层）

| # | 能力 | 状态 |
| --- | --- | --- |
| B1 | 全局 token 覆盖：13 个 `--dsw-alias-*` token，浅/深双套 | ✅ |
| B2 | 叠加层机制：不改基线主题，卸载即还原，同一 source 更新即整层替换（原子切换） | ✅ |
| B3 | 主题文件化：每主题一个独立 CSS 文件（`plugin/assets/themes/*.css`），文件即主题；**内置主题 4 个**——`strawberry-mocha`（标准参考实现）+ 钛影 / 高清晰 / 墨黛，同一变量契约 100% 对齐（仅配色不同） | ✅ |
| B4 | 设置页「主题设置」选择模型：「系统自带」默认（零干预）+ 内置/用户主题互斥单选 | ✅ |
| B5 | 外观 ☀️/🌙/🖥️ 三档对任意选中主题可用（主题自带浅深两档即跟随切换，偏好持久化） | ✅ |
| B6 | 用户主题动态加载：`$HOME/.dsh/web-themes-xyy/` 放 CSS 文件即新主题（无需打包/升级插件），目录动态解析，设置页一键刷新 | ✅ |
| B7 | 用户主题管理：🆕 新建（可选底子内置主题 4 选 1，默认 `strawberry-mocha`，起步 = 底子 CSS 整体复制，无独立模板资产）+ ✏️ 编辑（实时语法高亮 / 格式化 / 保存，事务化分块上传 + 双端 CSS 校验）；内置主题只读 | ✅ |
| B8 | 资产文件化：内置主题 / 面板样式由 Host 运行时从文件读取，改文件刷新即生效（template.css 已删，v1.17.0） | ✅ |
| B9 | 统一变量契约：L0 平台 token（13）→ L1 身份色（核心 17 + 扩展 + `--hl-*` 语法高亮）→ L2 排版/形状常量 + L3 旋钮，见 `docs/variables.md` | ✅ |
| B10 | 选择持久化（刷新/重启后保持所选主题；当前为会话级内存态，恢复默认「系统自带」） | 🔜 |

## C. Markdown 排版

| # | 能力 | 状态 |
| --- | --- | --- |
| C1 | 排版模型：产品 `._markdown_*` 规则兜底 + 主题 ③ 段 `:where()` 增量覆盖（零优先级、副作用最小化；需覆盖产品显式样式时按需 `!important`） | ✅ |
| C2 | 完整元素控制清单（内置主题 ③ 段全量提供）：标题 h1~h6（阶梯字号 + 梯度颜色 + h1 主题色下划线）· 段落节奏 · 列表（原生符号分层着色 + 任务复选框）· 代码块（accent 左缎带 + 紧凑头部）· 行内代码/`kbd`（胶囊）· 表格（卡片式 + 表头 tint）· 引用（边条 + tint 衬底）· 分割线 · 链接（hover 过渡，reduced-motion 降级）· 粗体/斜体/粗斜体/删除线 · 高亮（mark）· 上下标与行内公式 · 图片 · 选区 · 滚动条 · 焦点环 | ✅ |
| C3 | 全量颜色引用 token 变量，深浅自动跟随，无写死色值 | ✅ |
| C4 | 代码语法高亮（shiki 等，随深浅自动切换） | 🔜 |

## D. 开发基础设施

| # | 能力 | 状态 |
| --- | --- | --- |
| D1 | 固定迭代循环（改 MANIFEST → 构建 → 台账 → 门禁 → define → update → 验证 → commit+tag），流程见 `docs/development.md` | ✅ |
| D2 | 源码镜像 `plugin/host.js` + `plugin/client.js`（client 为构建产物），版本与 git 一一对应 | ✅ |
| D3 | 发布门禁 `scripts/check-release.js`：MANIFEST 一致性 / JS 与 CSS 语法 / 资产完整性 / 内置主题浅深双档挂载 / panel.css fallback / packageId 提示 | ✅ |

## E. 重点信息强调系统

- **已并入主题身份色体系**：`--mdvr-accent` 系 5 变量（主强调 / tint 面强调字 / 衬底 / 45% / 30% 预混）+ `highlight` 琥珀 + 引用/代码/表格身份色，浅深双档；引用边条 + tint 衬底、行内代码胶囊、代码块左标条、表头 tint、h1 下划线、列表符号分层着色等全部由主题 ③ 元素段消费。完整名单与默认值见 `docs/variables.md`。
- gfm alert 五色告警块（note/tip/important/warning/caution） | 🔜

## 路线图

- gfm alert 五色告警块
- 主题选择持久化（刷新/重启后保持所选主题）
- 台账落盘自动同步（Host 自动写 `manifest/versions.json`）
- 版本对比视图（任意两版 diff 变更日志 / 配色差异）
- 代码语法高亮（shiki 等）