OpenBitFun 子模块设计:配置化策略画像

September 4, 2026 · View on GitHub

上游文档:product-requirements.mddesign.md 模块角色:汇总任务意图、操作风险、执行环境、项目规则、团队策略和用户覆盖,生成内部策略画像、用户可见展示层级、验证要求、证据展示层级和安全动作。

1. 模块定位

配置化策略画像是 OpenBitFun 的体验调度和策略合成层。它把分散的项目规则、路径规则、团队策略、用户偏好和当前任务信号合成为一个可解释的内部策略决策:

当前任务内部使用哪种策略画像,用户看到哪种状态、提示、确认和下一步?

项目级配置提供默认值;任务意图、目标路径、工具能力、网络/凭据/发布链路、团队规则和用户覆盖共同决定内部策略画像,再由体验视图层转成用户可见状态。

2. 产品原则

  • 配置优先:优先读取项目、路径、团队和用户配置,并保留来源、作用域和新鲜度。
  • 任务定态:内部策略画像由当前任务和动作决定,同一项目内的文档变更、热修复、迁移和演示原型可以使用不同策略。
  • 快速默认:缺少高风险信号时内部使用低干预策略,只展示结果摘要、推荐检查和未验证项。
  • 升级可解释:每一次提示、验证、确认或阻断都带触发原因、证据来源和可选下一步。
  • 覆盖有边界:用户可以在单次、会话、任务或 worktree 范围内选择更快或更严;安全边界和受管策略保持独立优先级。
  • 用户不学模式fast/assist/review/guarded/regulated 是内部枚举;用户侧展示任务状态、弱提示、确认、受限原因和设置项。

3. 输入维度

维度例子影响
任务意图探索、快速修复、原型、准备 PR、发布、事故响应决定默认摩擦和输出形态
用户画像快速试验者、独立开发者、团队审查人、架构负责人、安全合规、平台维护者决定解释方式、提示密度和默认入口
操作风险读取、写工作区、shell、网络、凭据、删除、跨根目录写入、发布决定是否需要安全确认或隔离
变更风险文档、界面行为、适配器、核心逻辑、迁移、安全敏感变更决定验证和审查强度
环境信任度无仓库工作区、git worktree、团队仓库、远程沙箱、连接生产环境的工作区决定可自动执行范围
项目信号AGENTS.md、CONTRIBUTING、CI、CODEOWNERS、包脚本、自定义规则决定默认建议和强制检查
团队策略仓库配置、组织默认值、托管设置、受保护分支决定是否能进入强制/阻断
用户覆盖单次允许、会话模式、任务模式、显式跳过决定临时降噪或升级

4. 治理强度

内部策略画像用户可见视图典型场景
fast低摩擦执行、简短摘要、低成本验证建议,不生成完整证据包质量保障要求较低、演示原型、文档、探索性改动
assist提示推荐检查、展示未验证项,但不阻塞常规本地开发、小范围界面或适配器改动
review生成变更就绪度、PR 摘要、风险标签、建议审查人/检查准备 PR、团队协作、跨模块改动
guarded强制检查、定向审查、过期证据、风险接受核心路径、安全、权限、迁移、发布相关改动
regulated完整证据包、审计、明确批准、发布/回滚证据合规、金融、医疗、基础设施、企业强管控项目

内部策略画像是当前任务的策略状态。项目可以声明默认策略,用户可以在当前任务或当前会话临时覆盖;覆盖范围、期限和残余风险进入质量数据面记录。用户界面默认不展示内部枚举名。

5. 决策输出

interface ConfigurablePolicyDecision {
  profile: "fast" | "assist" | "review" | "guarded" | "regulated";
  reasons: PolicyReason[];
  user_visible_level: "silent" | "inline_hint" | "panel_summary" | "modal_confirm" | "blocked";
  recommended_checks: RecommendedCheck[];
  required_checks: RequiredCheck[];
  security_actions: SecurityAction[];
  evidence_mode: "none" | "summary" | "evidence_refs" | "full_pack";
  review_mode: "none" | "summary" | "targeted" | "full";
  override_options: OverrideOption[];
  expires_when: ExpirationCondition[];
}

输出约束:

  • security_actions 只引用 security-boundary.md 的判定,并保持高于质量模式的优先级。
  • required_checks 只能来自项目/团队策略、确定性风险或用户显式升级。
  • override_options 必须有范围、期限、撤销路径和残余风险说明。
  • 用户覆盖在策略允许范围内调节体验;组织拒绝策略、受管控路径强制策略和安全边界保持更高优先级。
  • 决策解释同时覆盖触发原因、配置来源、证据新鲜度和可选降噪路径。

6. 用户体验形态

触发用户界面行为
无高风险信号不弹窗;在任务结束给简短摘要
推荐检查缺失行内弱提示、可折叠摘要或任务结束汇总
准备 PR可一键生成变更就绪度块
触及高风险路径面板摘要展示原因、建议检查和跳过后果
触及安全边界弹窗确认或阻断;说明文件、命令、域名、凭据、权限范围
用户选择快速放行记录单次/会话覆盖,继续执行,但显示残余风险
团队策略不允许放行阻断并指向项目配置或负责人

用户画像用于选择默认入口、解释语言和提示密度。强制检查、阻断和安全确认继续引用任务风险、执行动作、团队策略或安全边界。弹窗只用于安全、不可逆、组织强制或用户进入关键流程;其他提示优先合并、延后或进入摘要。

7. 与其他模块关系

模块关系
项目画像提供项目规则、验证能力、结构和配置来源
安全边界提供不可混同的执行安全判定和应急放行限制
风险分类器提供变更风险和验证建议
证据包evidence_mode 决定是否只做摘要、引用或完整证据包
PR 门禁只在 review/guarded/regulated 且用户进入 PR 或团队流程时显性启用
质量数据面记录决策理由、提示、覆盖、验证和安全事件

8. 边界场景

场景策略
无 git 或无团队规则的工作区内部使用低干预策略;跨目录写和网络仍走安全边界
用户明确要求质量保障要求较低的快速试验保持低干预路径;只在 shell/网络/凭据/删除时打断
单体多项目仓库子目录规则冲突使用最近可信规则;冲突进入提示,不直接升级为阻塞
远程开发路径或权限不明展示执行位置、工作区根和不可支持能力;不自动扩大权限
生成文件/lockfile/二进制大 diff默认过滤严格审查;只展示范围和风险摘要
不稳定 CI 或私有依赖不可运行输出不可验证原因、替代建议和信心影响
热修复允许跳过部分质量建议;发布/回滚/负责人提示前置
用户强制跳过建议若不触及安全底线,可继续;记录范围和残余风险
组织策略强制用户可以请求风险接受;本地覆盖不改变受管策略

9. 成功标准

  • 普通任务通过结果摘要、已验证项和下一步建议完成闭环。
  • 高风险任务能解释升级原因、策略来源和可选处理路径。
  • 用户能临时选择更快或更严,且选择范围清晰。
  • 安全边界在质量模式和用户“快一点”请求之上保持优先级。
  • 团队配置能统一受管工作区体验,质量保障要求较低的任务保持低摩擦默认值。