docs: 写作台放置规则入 decisions + 登记 UX P2 完成(P2-3,P0/P1/P2 整套完成,P2-4 延后)
decisions.md 落四象限唯一落点规则(导航→左栏/AI 动作→中央/状态→底栏/参考→右栏)防三重复回潮;PROGRESS 登记 P2-1..P2-3 落地、门禁绿(vitest 716/build OK),P2-4 统一对话面板按计划延后。
This commit is contained in:
@@ -161,3 +161,9 @@
|
||||
- 选择:① 散文外置 `packages/agents/ww_agents/prompts/<spec.name>.md`,`system_prompt=load_prompt(name)` import 期读盘+内存缓存+确定性+fail-fast(去 BOM `utf-8-sig`/LF 归一/NFC/`rstrip('\n')`,**无运行期插值**——需插值的 prompt 不走此路径,属本波范围外);② **金标准 fixture 取 AST/运行时 `system_prompt` 值算 sha256**(`tests/fixtures/prompt_hashes.json`),**不取源码文本**——因旧常量含反斜杠折行,源码物理换行≠运行时换行;导出时 `.md` 物理换行≡运行时换行;③ 尾换行方案 B:`.md` 允许 ≤1 尾 LF,loader `rstrip` 不补回,文件层断言守「尾 LF≤1」(与运行时金标准双层契约);④ Pydantic 类型**永留 Python**,`SCHEMA_CATALOG[name]` 是 name→output 唯一真相源(收敛为 `dict[name,type|None]`,去恒 None 的 input 槽,YAGNI);⑤ 内置 name(含 `REVIEW_RESERVED_NAMES`=continuity/foreshadow/style/pace)为保留命名空间,守卫**前移至 SkillRegistry 入库校验**(非 resolver 读路径),用户 skill 同名→`VALIDATION`(安全边界,呼应不变量 #3);⑥ `*_spec` 兼容期保留且 `SPECS[name] is *_spec`(同一实例),编排器 + apps/api 3 路由本波不切 resolver。
|
||||
- 理由 / 取舍:非工程改稿不碰 Python、缓存断点前块字节稳定(不变量 #9);守卫前移让内置 `get` 纯内存零 DB、确定性、不把安全校验耦合进写章热路径。代价:`git log -p specs.py` 追不到旧 prompt 演进(迁移 commit body 注明),后续改 prompt 须同步重生成金标准 fixture。
|
||||
- 影响:加 agent = 写 `.md` + 注册 `SPECS`/`SCHEMA_CATALOG`;wheel 必须 `force-include/artifacts` 带 `prompts/*.md`(@devops,CI 冒烟守);`packages/{llm_gateway,core}` 补声明 `structlog`(原直接 import 未声明)。后续波次可将编排器/路由切 `SpecResolver` 后删 `*_spec`。
|
||||
|
||||
## [2026-07-10] 写作台功能放置规则(防三重复回潮)— @frontend (UX P2-3)
|
||||
- 背景:UX 探索报告(`docs/design/ux-exploration.md` §1.D/§4-P2-3)诊断出旧写作台把导航/AI 动作/状态/透明度四类东西散落在左栏 + 顶「AI 工具条」+ 底栏三套面上(「大纲」出现 3 次、「审稿」4 次),无法学习。P0/P1 已删顶栏、把 AI 动作收进中央输入条 +「或让 AI:」行、底栏瘦成状态。为防新功能再乱塞,落一条放置规则。
|
||||
- 选择:**四象限唯一落点**——① 导航(去哪个页/章)只进**左栏**(`components/NavItems.tsx` + `lib/nav/items.ts` 分组,桌面侧栏/移动抽屉共用,是唯一导航面);② AI 动作(对本章动手)只进**中央**——主输入条「写本章」发送键 + 其下「或让 AI:」次级动词行(续写/润色选段/整章重写/工具箱);③ 章节状态(字数/保存/流式播报/停/审稿前进 CTA)只进**底栏**;④ 参考/透明度(本章注入、写完检查、去审稿)只进**右栏「本章参考」**(守不变量 #6「看到的=写章用的」,去术语不删除)。
|
||||
- 理由 / 取舍:一条稳定规则让「这个按钮做什么」可从位置预判,消灭「同一标签多处含义相反」(旧「写本章」在顶栏是导航、底栏是生成)。代价:新功能须先归类再落位,偶有归属边界(如工具箱既是左栏页入口、又是中央 AI 动词,两处并存但语义一致——一个是「打开工具箱页」、一个是「对本章调工具箱」)。
|
||||
- 影响:左栏分组(P2-1)把 10 项归 写作/资料库/审阅/更多;工具箱在分组清单缺列,收进「更多」以不丢入口。后续任何写作台新功能按本规则四选一落点,不再新开第 4 套面。
|
||||
|
||||
Reference in New Issue
Block a user