跳到主要内容

ADR-008 战略层与架构层关于结构化认知输出的对齐

决策摘要

战略白皮书第五节"用户产品"段直接承接架构文档第 4 节 StructuredCognitionResult 的定义——10 个认知要素 + 7 任务类型动态组合机制 + "画像不裁剪事实空间"不变量。

战略层声明产品契约(10 要素 + 动态组合机制 + 战略不变量),不展开各类任务的具体要素清单(那是 L2 产品定义层的事)。

同时提议在 governance/workstreams/finbayes-arch-rewrite/ 工作流补充一份独立 ADR 专门定义 StructuredCognitionResult 作为架构层契约(架构 §4 是核心设计但没有独立 ADR,是 governance gap)。

上下文

用户深度反馈指出,第五节"用户产品"段薄弱、不足以指导下游 L2 产品定义文档,特别是缺失结构化认知输出——这恰恰是 FinBayes 与喊单产品、与通用 AI 的输出形态根本区别,是工程化落地版本的核心基础之一。

本工作流期间的架构文档调研发现:

  • 架构文档第 4 节定义了 StructuredCognitionResult 作为核心输出对象
  • 包含 10 个认知要素:结论 / 倾向(条件化)、依据、多视角、反方证据、成立条件、失效条件、不确定性 / 信息缺口、来源与时间戳、可继续追问项、历史判断链接
  • 7 类任务类型(解释 / 分析 / 比较 / 复盘 / 风险识别 / 交易准备 / 决策辅助)动态组合相应要素,不固化字段表
  • L2 产品定义 §7 表 7 已完整承接(产品定义 100% 与架构对齐)
  • L1 战略白皮书(v2 §5)未明确承接——只用产品语言"想清楚 / 看全面 / 看本质",没出现"StructuredCognitionResult"术语或具体要素清单
  • 架构 §13 强调战略不变量"画像不裁剪事实空间"在输出形态层的落地:反方证据、关键风险、失效条件按事实空间生成,不因用户偏好被省略
  • 架构文档没有专门的 StructuredCognitionResult 独立 ADR——相关决策分散在 ADR-004(任务识别策略)、ADR-008 架构层(LLM Provider 接口抽象)、ADR-010(输出端凭证过滤)

本 ADR 解决两件事:

  1. 让战略白皮书第五节用户产品段与架构 §4 + 产品定义 §7 在结构化认知输出层面对齐
  2. 提议在架构层补充独立 ADR 把 StructuredCognitionResult 作为架构层契约正式锁定

决策详情

战略白皮书第五节用户产品段的承接内容

战略层应承接以下三件事,不多也不少:

1. 10 个认知要素的完整列表(直接列出):

#要素含义
1结论 / 倾向(条件化)不是封闭的开多 / 开空型答案,而是带成立条件的判断
2依据支撑结论的事实材料、数据、逻辑链
3多视角对同一问题的不同合理观点
4反方证据与结论相反方向的证据和观点
5成立条件结论在什么前提下成立
6失效条件结论在什么市场变化下不再成立
7不确定性 / 信息缺口现有信息不足以回答的部分
8来源与时间戳每条信息的来源和时效性
9可继续追问项用户可以基于本次输出继续深入的方向
10历史判断链接与用户过往判断的关联(如果有)

2. 动态组合机制的说明

战略层说清楚"这 10 个要素不是固化字段表——FinBayes 按用户提问的任务类型动态组合相应要素",引用 7 类任务(解释 / 分析 / 比较 / 复盘 / 风险识别 / 交易准备 / 决策辅助)作为说明,不展开任务-要素映射表——映射表是 L2 产品定义的事。

3. 战略不变量"画像不裁剪事实空间"的落地

战略层显式声明:反方证据、关键风险、失效条件按事实空间生成,不因用户偏好被省略。即便用户长期表现为某种倾向,FinBayes 的输出仍保留完整的反方和失效条件。这条不变量在第九节用户主权与不变量中完整展开。

战略层与下位的边界

层级承担的内容
L1 战略层(本白皮书第五节)10 要素列表 + 动态组合机制声明 + 战略不变量"画像不裁剪事实空间" + 与其他工具输出形态的根本区别
L2 产品定义层7 任务类型与 10 要素的具体映射表(产品定义 §7 表 7 已完整覆盖)
L3 架构层(架构 §4 / §6 / §13)StructuredCognitionResult 对象的工程定义、要素的具体 Schema、任务识别的工程实现、不变量在工程层的落地机制

战略层不展开:任务-要素映射的具体表格、要素的 Schema 定义、工程实现细节。

提议在架构层补独立 ADR

架构 §4 是 FinBayes 的核心输出设计,但没有独立 ADR 锁定为架构层契约——这是 governance gap。本 ADR 提议:

  • governance/workstreams/finbayes-arch-rewrite/decisions/ 下补充一份 ADR(建议编号 ADR-FinBayes-Arch-XXX,具体编号由架构工作流分配)
  • 题目:StructuredCognitionResult 作为 FinBayes 架构层核心输出契约
  • 内容:把架构 §4 的设计正式锁定为架构层 ADR(10 要素定义、7 任务类型映射机制、动态组合原则、与战略不变量"画像不裁剪事实空间"的关系)
  • 承接方:架构文档工作流维护者

本 ADR 不强制架构层立即补 ADR,但作为悬而未决问题登记到本工作流的 status.md(详见悬而未决问题)。

决策理由

为什么战略层必须承接结构化认知输出

  • 结构化认知输出是 FinBayes 与喊单产品、通用 AI 的输出形态根本区别——这是核心差异化(ADR-006 / ADR-007 + 第四节核心优势已论证),不是工程细节
  • 战略层不能与下位脱节——v2 战略白皮书与架构 §4 / 产品定义 §7 在此点的脱节是 L1 ↔ L2 / L3 governance 失衡
  • L2 产品定义层将基于战略层重组:用户已明确接受 L2 大改,战略层必须给 L2 清晰的契约依据

为什么列出 10 要素而不省略

  • v2 战略白皮书省略具体要素(用"想清楚 / 看全面 / 看本质"代替),结果 L2 产品定义在工程化时只能反向从架构猜——这是 governance 风险
  • 列出 10 要素让 L2 产品定义有清晰的承接依据,下游不需要从架构反向解读战略层意图

为什么不展开任务-要素映射

  • 任务-要素映射是 L2 产品定义层的具体契约(产品定义 §7 表 7 已完整覆盖)
  • 战略层展开映射会侵蚀 L2 的层级职责,且会让战略白皮书膨胀失焦
  • 战略层只需声明"动态组合机制"作为原则即可

为什么强调"画像不裁剪事实空间"

  • 这是战略不变量在输出形态层的硬约束(架构 §13 已强调)
  • 若战略层不显式声明,下游可能在工程化时被产品体验诉求(个性化、贴合用户偏好)拉走,损害不变量
  • 战略层声明给下游一个不可妥协的产品契约

与其他 ADR 的关系

  • 补充 ADR-003 方法论组合:结构化认知输出是 Strategy Cascade Core Capabilities 层的核心契约
  • 补充 ADR-004 十节目录骨架:第五节用户产品段按本 ADR 大幅扩展
  • 联动 ADR-006 用户定义与价值立场:结构化认知输出是"FinBayes 选择长期路径"价值选择的产品形态落实
  • 联动 ADR-007 金融认知体系:结构化认知输出是认知体系在用户产品层的具体表达形态

应用纪律(第五节用户产品段扩展时的检查清单)

  • 列出 10 个认知要素的完整表
  • 说明动态组合机制 + 引用 7 类任务作为说明(不展开映射表)
  • 显式写"画像不裁剪事实空间"作为战略不变量
  • 写"具体任务-要素映射由 L2 产品定义层承接"作为边界声明
  • 写"具体 Schema 和工程实现由架构文档承接"作为边界声明
  • 与喊单产品、通用 AI 的输出形态对照(呼应第四节)

后果

正面

  • 战略白皮书与架构 §4 + 产品定义 §7 在结构化认知输出层面对齐
  • L1 ↔ L2 / L3 跨层级 governance 完整
  • L2 产品定义有清晰的战略层契约依据
  • 战略不变量"画像不裁剪事实空间"在战略层显式声明,给下游硬约束

负面

  • 第五节用户产品段大幅扩展(约 30 行 → 约 140 行)
  • 架构层补独立 ADR 是本 ADR 的衍生工作,需要 finbayes-arch-rewrite 工作流承接
  • 10 要素 + 7 任务类型作为战略层契约后,未来如需调整需要走 ADR 升级流程

中性

  • L2 产品定义现状(已 100% 对齐架构)保持不变,本 ADR 不引发 L2 修订
  • 架构 §4 的核心设计保持不变,本 ADR 只是反向把战略层补齐到架构层水平

后续动作

  • 第五节用户产品段大幅扩展,应用本 ADR 检查清单
  • 在 status.md 悬而未决问题中登记"架构层补独立 ADR for StructuredCognitionResult"
  • 在第九节用户主权与不变量起草时呼应"画像不裁剪事实空间"
  • 提议本 workstream 收尾时把 ADR 升级提议(架构层补独立 ADR)作为对架构工作流的 follow-up 输出