Skip to content

[RFC] 拆分提交 Windows、资源覆盖、Provider 探活与写作质量改进 #91

Description

@bakaz

背景

我准备向 voocel/ainovel-cli 提交一组改进。目前相关分支已经整理并推送到公开暂存仓:

https://github.com/bakaz/ainovel-cli-pr-lanes

PR 尚未创建。 先开这个 issue,希望在提交前确认维护者是否接受这组贡献,以及拆分方式、顺序和命名是否合适。

这些改动最初混在个人开发分支中,包含多个独立功能、历史实现、merge commit,以及不应提交的 vendor 内容。为避免一个难以审阅的大 PR,我没有直接从个人 fork 的 main 发起 PR,而是重新拆成以下 review lanes。

贡献目标

整体上分为两类:

  • 独立改进:Windows 测试兼容、生产环境 prompt/reference overlay、Provider 探活 CLI。
  • 写作质量系列:让规则、长期规划、文风锚点和 Worker 上下文边界更加明确,减少不同角色之间的提示词与上下文混用。

希望每个 PR 都只包含一个功能点,方便独立测试、审阅和回退。

建议的 PR 顺序

可独立提交

  1. pr/windows-portability
    仅调整 notify 与 updater 相关测试的 Windows 可移植性,不改变产品行为。

  2. pr/assets-overlay
    为生产环境 prompt/reference 增加分层 overlay:
    ~/.ainovel./.ainovel--prompts-dir
    目标是允许用户在不重新编译的情况下覆盖写作资源。

  3. pr/observe-probe
    增加只读的 Provider liveness probe CLI:
    ainovel-cli observe --dir ...
    它读取本地 Provider 配置并发起探活请求,不修改小说状态。

以上三个分支彼此独立,可以按维护者方便的顺序提交或并行审阅。

Style 系列:有依赖,建议串行

  1. pr/feat-rules
    将写作偏好按 default / architect / writer / editor 分桶,使不同角色只接收相关规则。

  2. pr/feat-compass
    引入 long/current 两层 StoryCompass,并提供 read_planning_reference,让长期方向与当前规划按需读取。

  3. pr/feat-anchors
    支持手动文风锚点,并在上下文 trim 时保护关键 style context,降低长任务中的文风漂移。

  4. pr/feat-workers
    明确 buildWorkerToolsets contract,并按角色组合 novel_context,使 Worker 的工具与上下文边界更容易审计。

依赖关系:

feat-rules
  → feat-compass
    → feat-anchors
      → feat-workers

[`pr/style-quality-clean`](https://github.com/bakaz/ainovel-cli-pr-lanes/tree/pr/style-quality-clean) — 合并上述 Style 系列的单 PR 版本

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions