docs(xingbang): 适配项目开发流程并建立经验驱动预审新版文档
verify / test-and-build (push) Canceled after 0s

This commit is contained in:
2026-09-28 17:02:33 +08:00
parent 4d5a420671
commit 9d2399feed
26 changed files with 1164 additions and 266 deletions
+100
View File
@@ -0,0 +1,100 @@
# 兴邦预审 v2 需求规格
状态:0.1 评审草案,尚未通过六道完备性门;后续设计为候选方案。规则编号作用域为本文。
## 1. Requirement Overview
来源:[URD](URD.md) 的 FR-FACT/HIST/EXP/REV/JEV/SIM/EVAL/PILOT-01。目标是把历史项目的争议、调查、证据和判断变化用于新项目预审。P0 使用模拟或经授权的脱敏数据,不连接未知生产库,不执行正式审批,不展示未经校准的通过概率。
角色沿用 URD。补充术语:快照=不可变输入版本;来源域=data_domain,演示或生产;证据引用=可定位材料片段的 ID;有效经验=已发布、未过期且适用条件成立的版本;硬性规则=经业务确认且由程序执行的约束;幂等键=同一用户请求去重标识;版本冲突=客户端依据旧 revision 更新;专项判断=边界明确的局部判断;降级=保留可用结果并标识未完成检查;运行预算=限制轮数、调用量和耗时;保留集=开发时不可使用的验收样本。
“证据支持”不等于材料真实可信:材料真实性核验是单独的核查结果。风险严重程度、数据完整性、模型确定性、审批概率互不替代。
## 2. Data Model & Interface Contract
契约候选以 [详细设计](03-detailed-design.md) 为单一说明,实施时唯一代码定义拟在 backend/contracts/prescreen.py。现有 ProjectSnapshot/Evidence 不复制,版本适配后复用。
| 对象 | 本期字段摘要 | 使用面 |
|---|---|---|
| CaseTimeline | id、project_id、data_domain、revision、events[] | 历史过程 |
| DecisionEvent | id、event_type、occurred_at?、recorded_at、question、evidence_ids[]、judgment_before?、judgment_after?、conditions[] | 争议时间线 |
| ExperienceCard | id、version、status、title、source_event_ids[]、conditions、exceptions、scope、expires_at、reviewer_id?、revision | 经验审核 |
| ScreeningRun | id、snapshot_id、status、recommendation?、findings[]、missing_inputs[]、applied_experiences[]、probability、degradations[]、versions、revision | 预审总览 |
| Judgment | id、question_id、question_version、type、status、answer?、evidence_ids[]、provider、model_version? | 专项复核 |
| Simulation | id、base_run_id、assumptions[]、changed_findings[]、unresolved_findings[]、formal_result=false | 推进沙盘 |
| Evaluation | id、dataset_version、split_id、run_versions、locked_at?、status、metrics | 验证看板 |
API 候选命名空间 `/api/prescreen`,通过同源 `/api/core/prescreen` 代理访问;下列端点尚未实现。请求/响应、错误、界限及 owner 见详细设计。P0 `probability` 必须为 null,并附原因 `not_calibrated`。
## 3. Surface Specification
项目预审总览:结论和信息基础在顶部;中间是核查问题与经验比较;右侧动作模拟;详情抽屉展示来源。历史经验页:时间线、原文与经验卡并排。验证页:样本锁定、结果对照和分歧复盘。
统一视图状态:idle/loading/ready/empty/error/submitting;运行另有 queued/running/awaiting_input/completed/partial/failed/cancelled。动作权限由后端判定,前端隐藏无权动作不能代替后端授权。详见 [UI Spec](04-ui-spec.md)。
## 4. Business Rules
| ID | 可测试规则(唯一职责 owner) |
|---|---|
| BR-01 | 材料提取候选须经授权用户确认后才能进入项目事实;保留原件与来源。owner:材料确认服务 |
| BR-02 | 历史事件缺少时间或原文时保留未知值和缺证标识,不生成虚构经过。owner:历史过程服务 |
| BR-03 | 经验仅能通过草稿→待审核→发布的受控状态转换生效;无发布资格者不得发布。owner:经验治理 |
| BR-04 | 检索有效经验时先按数据域、权限、状态、有效期和适用条件过滤,再做相关性比较。owner:经验检索 |
| BR-05 | 主审形成综合预审意见;Jev 的单题结果不得直接写入 recommendation。owner:预审编排 |
| BR-06 | 已确认的硬性阻断不能被模型或其他维度高分覆盖。owner:结果校验 |
| BR-07 | 缺数据记 unknown;全部关键核查不可完成时 recommendation=insufficient_information。owner:结论完整性校验 |
| BR-08 | 未通过来源校验的引用不能进入有效结论;相关判断退回缺证/复核。owner:证据校验 |
| BR-09 | Jev 未配置、未批准或调用失败时记录 skipped/failed 及降级原因;不能伪造判断。owner:专项模型适配 |
| BR-10 | 材料中的指令不能扩展主审工具集合;金额与日期运算只能由确定性工具执行。owner:工具策略 |
| BR-11 | 情景模拟只写独立假设结果,不能修改项目事实、正式运行或审批状态。owner:模拟服务 |
| BR-12 | 未校准时 probability=null;Score、Noul、相似案例通过占比均不能直接映射为通过概率。owner:结果序列化 |
| BR-13 | 每次运行冻结输入和规则/Skill/经验/模型/问题版本,过程修订不覆盖旧结果。owner:运行存储 |
| BR-14 | 相同 actor+project+operation+幂等键和相同载荷返回同一对象;载荷不同返回冲突。owner:命令入口 |
| BR-15 | 盲测在预测锁定之前不向推理输入提供目标项目的标签、最终意见或后续表现。owner:评测服务 |
| BR-16 | 真实数据外发前按数据域与接收端策略核验;未批准出口不可调用。owner:模型出口策略 |
## 5. Exception Scenarios
| ID | 触发 / HTTP与错误码 | 用户可见消息 / 恢复 |
|---|---|---|
| E-01 | 解析失败,422 MATERIAL_PARSE_FAILED | 材料未能完整解析,请核对原件或手工录入;保留原件 |
| E-02 | 关键证据缺失,运行结果 MISSING_EVIDENCE | 关键证据尚未取得,暂不能确认;补件后新运行 |
| E-03 | 无权限,403 ACCESS_DENIED | 无权执行此操作;不泄露其他项目对象是否存在 |
| E-04 | 引用无效/跨项目,422 INVALID_EVIDENCE | 结论引用未通过核验,请复核来源;拒绝有效化 |
| E-05 | 乐观锁不符,409 REVISION_CONFLICT | 内容已有更新,请刷新后重试;保留本地草稿 |
| E-06 | 专项模型不可用,运行结果 JUDGMENT_UNAVAILABLE | 专项核查未完成,已保留其他结果;允许明确重试 |
| E-07 | 非法枚举/载荷/版本,422 INVALID_REQUEST | 请求内容不符合当前版本,请检查后重试 |
| E-08 | 预算耗尽,运行结果 RUN_BUDGET_EXCEEDED | 本次核查已达到执行上限,请复核未完成项 |
| E-09 | 幂等键载荷冲突,409 IDEMPOTENCY_CONFLICT | 此请求编号已用于不同内容,请重新提交 |
| E-10 | 未批准出口,403 EGRESS_NOT_APPROVED | 当前数据不允许发送至该模型服务 |
| E-11 | 评测标签提前暴露,409 EVALUATION_CONTAMINATED | 当前样本不再满足盲测条件,已排除 |
| E-12 | 经验已失效/不适用,运行结果 EXPERIENCE_EXCLUDED | 该经验不适用于本次核查;展示可见范围内的排除原因 |
运行级错误保存在 degradations/finding 中,HTTP 200 仅表示结果可读取,不表示核查通过。禁止把 failed 状态当作 completed。
## 6. Acceptance Criteria
| ID | Given / When / Then | 覆盖 |
|---|---|---|
| AC-01 | Given 已解析候选,When 未确认/确认,Then 分别不进入/进入事实且能定位原文;解析失败可人工补录 | BR-01, E-01 |
| AC-02 | Given 缺少事件日期的历史材料,When 提炼时间线,Then occurred_at=null 且显示缺证,不编日期 | BR-02, E-02 |
| AC-03 | Given 草稿经验与无权发布人,When 请求发布,Then 拒绝且无有效版本;合资格审核走合法状态后生效 | BR-03, E-03, E-07 |
| AC-04 | Given 过期/异域/例外触发/有效经验,When 新运行检索,Then 仅有效且授权的版本可应用 | BR-04, E-12 |
| AC-05 | Given Jev 返回正面单题判断但整体证据冲突,When 汇总,Then 主审记录冲突与理由,单题不能覆盖综合意见 | BR-05, E-02 |
| AC-06 | Given 确认硬性阻断与模型建议推进,When 校验,Then 拒绝推进并指出规则版本;边界值由程序计算 | BR-06, E-07 |
| AC-07 | Given 全部关键资料缺失,When 预审,Then 信息不足并列补件,不判企业高风险 | BR-07, E-02 |
| AC-08 | Given 无效或跨项目引用,When 结论校验,Then 拒绝引用并标缺证,不暴露无权原文 | BR-08, E-04, E-03 |
| AC-09 | Given Jev 未配置/超时/畸形输出,When 调用,Then 保留 skipped/failed 与降级,不生成默认高分 | BR-09, E-06, E-07 |
| AC-10 | Given 材料包含终端调用指令,When 模型读材料,Then 工具权限不变;耗尽预算停止并列未完成项 | BR-10, E-08 |
| AC-11 | Given 基线运行与假设动作,When 模拟,Then 原快照哈希不变;冲突假设被拒绝 | BR-11, E-07 |
| AC-12 | Given 未校准模型,When 查看/导出结果,Then probability=null 且注明原因,即使 Noul 接近 1 也不改写 | BR-12, E-07 |
| AC-13 | Given 同一项目产生新证据版本,When 重跑或旧 revision 更新,Then 新旧运行分别留存或返回版本冲突 | BR-13, E-05 |
| AC-14 | Given 相同/不同载荷复用幂等键,When 并发提交,Then 分别返回同一运行/409,不重复写入 | BR-14, E-09 |
| AC-15 | Given 客户保留集,When 锁定预测前尝试读取目标标签,Then 拒绝;发生泄露则样本作废 | BR-15, E-11, E-03 |
| AC-16 | Given 未批准的真实数据出口,When 请求 Jev 或其他外部模型,Then 无网络发送并记录策略拒绝 | BR-16, E-10 |
## 7. Open Questions & Decision Record
OQ-01 至 OQ-06 见 [决策记录](09-decisions.md)。本轮规格是待评审草案;P0 演示可用模拟材料,真实数据出口、正式权限和概率校准不得用临时假设替代确认。
已定方向:主审综合研判、历史过程优先、Jev 局部判断、模拟与正式分离、先验证再谈概率。被否方案:单题判断直接审批、经验未经审核自动生效、复制整库后再定义用途、用模拟提升冒充因果效果。
+99
View File
@@ -0,0 +1,99 @@
# 兴邦预审 v2 架构设计
状态:候选设计 0.1,等待阶段①评审;本文件严格区分当前事实与拟议架构。
## 1. 概览与已核验基线
代码快照 4d5a420 已保存在 Gitea。当前架构从代码确认如下,图中不包含尚未实现的新模块:
```mermaid
flowchart LR
U[业务用户] --> W[Next.js 项目工作台]
W --> P[同源 Route Handler]
P --> A[FastAPI 路由与权限]
A --> S[ProjectAssistantService]
S --> Q[DurableWorker]
Q --> X[Skill 与规则执行]
X --> M[受限模型 Agent Loop]
S --> DB[SQLite 对象与审计]
```
| 已有能力 | 已检查代码 | 复用限制 |
|---|---|---|
| 项目快照/证据/问题契约 | backend/contracts/project_assistant.py | 本期复用,不另造同名概念 |
| 项目/任务/事务对象 | backend/services/project_assistant.py、assistant_store.py、assistant_worker.py | 巨大 service 不继续堆新领域,新增模块通过现有入口调用 |
| 数据卡/材料 | backend/services/assistant_data.py、assistant_materials.py | 继续冻结来源与人工确认候选 |
| 受限模型核查 | backend/services/assistant_model.py | 目前提示词禁止作审批决定;新增预审意见要单独设计并测试,不放宽旧版完整核查的权限 |
| 可审核经验 | backend/services/assistant_experiences.py | 已有范围、有效期、条件、审核发布;不能等同已学到客户历史经验 |
| 历史案例 | backend/data_layer/history_store.py | 实际是 JSONL + 行业/金额等简化筛选;文件注释不证明已建向量库 |
| 默认团队模式 | backend/data_layer/team_experience.py | 内置频次/阈值为代码默认样例,不是真实兴邦统计 |
| 模型与组件治理 | backend/services/component_registry.py、component_evaluation.py | 复用版本和验证机制 |
## 2. v2 拟议模块边界
以下是设计目标,尚未生成对应文件或调用链。owner 指代码唯一职责,人员待项目负责人分配。
| 模块 / 拟议落点 | 职责 | 依赖 / 禁止 |
|---|---|---|
| history_cases / backend/services/history_cases.py | 提炼历史事件、来源及未知项 | 依赖材料与存储;不直接批准经验 |
| experience_catalog / backend/services/experience_catalog.py | 关联案例与经验版本、先授权过滤再相关性比较 | 复用既有经验生命周期,不建立平行发布路径 |
| prescreen / backend/services/prescreen.py | 主审制定核查、调用专业能力、综合意见 | 只访问冻结授权上下文;不直接操作通用 terminal/SQL |
| judgment_provider / backend/services/judgment_provider.py | Jev 窄问题、schema 校验、预算、失败状态 | 通过出口策略;不写审批或综合结论 |
| prescreen_policy / backend/services/prescreen_policy.py | 硬规则、证据、缺证及概率输出约束 | 不依赖页面,不以模型高分绕过硬约束 |
| scenario_service / backend/services/prescreen_scenarios.py | 保存独立情景与差异 | 引用不可变基线;不覆盖真实事实 |
| prescreen_evaluation / backend/services/prescreen_evaluation.py | 冻结样本、版本、预测及专家对照 | 标签与推理侧隔离 |
| prescreen contracts / backend/contracts/prescreen.py | 新对象与错误契约 | 后端单一定义,前端由 OpenAPI 生成;生成器待建设 |
拟议数据流:材料/授权数据 → 标准事实和来源 → 冻结快照 → 硬规则和计算 → 检索有效经验 → 主审提出具体核查问题 → 专业 Skills/Jev → 验证证据与规则 → 主审综合预审 → 独立复核/正式审批入口。
历史经验用于选择核查动作和比较适用条件,不能用“相似案例通过”直接推出当前项目通过。Jev 的判断置信与主审解释都不是独立的真实性认证。
## 3. 数据模型与持久化
P0 候选使用现有 SQLite 事务存储承载新增对象类型。历史事件、经验版本、运行、判断、模拟和评测各有唯一 owner。schema 变更追加迁移,保留旧表;完整 DDL 与兼容策略在详细设计阶段定案。
本轮“v2”指产品代际。既有 xingbang_v2.py 和 schema_v2 是历史实现命名,不应重命名或删除。
材料保存原件哈希、段落/页码、发生时间和录入时间。经验同时记录来源事件、制度版本、专家确认及有效期。只持有最终批复的案例应标“过程不完整”。
演示和真实数据域分别存储或通过受测权限边界隔离;生产隔离架构未确认前只运行演示数据。版本冻结后撤回经验不删除历史记录,但新运行不得再应用;旧结果需标记失效经验并提示复核。
## 4. 关键流程与恢复
- 历史导入失败:保留原件和失败事件,允许补充/重新提炼,不伪造缺失过程。
- 主审识别矛盾:记录待核查事项,使用授权证据工具验证,达到预算停止为 partial/awaiting_input。
- Jev 不可用:缺失项进入 degradations;主审只能依据已完成检查给出有限意见。
- 硬规则冲突:结果校验阻断建议推进,保留模型原始结构化提案供审计。
- 新证据进入:产生新快照、新运行,旧结果保留;模拟不进入这条正式更新路径。
- Worker 恢复:复用持久任务机制;幂等范围包含 actor/project/operation/key,禁止重复生成运行。
## 5. 接口与集成
内部 API 以 /api/prescreen 为候选命名空间;沿用当前项目鉴权和同源代理。前端不能直接访问模型厂商。现有 assistant_model 的受信端点规则不自动适用于 Jev,后者需独立出口与域策略。
Jev 接口概念参考 TypeSafe 官方文档:https://docs.typesafe.ai/introduction 、https://docs.typesafe.ai/confidence 。当前没有 SDK 安装、Key、版本或延迟实测;实施前重核版本与中文金租样本效果。
概率预测为后续独立模型,输入仅使用预测时可得事实和判断特征。主审解释模型输出但不能改写原始概率;审批阶段、样本偏差和校准结果未明确前 probability=null。
## 6. 副作用边界
真实数据外发、经验发布、正式审批是不同权限。模型只能读冻结事实和生成候选意见;发布经验由授权人操作,正式审批不在 v2 自动化范围。普通聊天的终端/文件工具不能进入预审工具白名单。
本轮只进行本地文档写入与用户授权的 Gitea 分支备份;没有模型数据外发、云端部署、数据库迁移或镜像发布。
## 7. ADR
ADR-01 保留现有技术基线,按模块增量扩展,否决全面换框架。
ADR-02 主审综合判断+确定性约束+Jev 专项复核,否决单模型 yes/no 审批。
ADR-03 经验以过程和来源为核心,否决只按最终结果记忆。
ADR-04 经验发布复用现有治理,否决自动从反馈直接生效。
ADR-05 先做验证和数据合作,再建设概率校准,否决专家分数转百分比。
ADR-06 v2 独立目录与资源,旧版保留;本轮先文档后迁移,目录尚未创建。
状态、影响和未决项统一维护在 [决策记录](09-decisions.md)。
## 8. 拟建立的架构验证
业务 service 不导入 src;预审工具集合不含 terminal/任意 SQL;跨域经验不可检索;引用必须属于授权快照;模拟不修改真实快照;无校准时概率为 null;经验发布只能经过一个治理入口。映射 AC-04/06/08/10/11/12/16。
这些是待实施的机器检查;现有测试覆盖另列,不能标成 v2 已通过。
+83
View File
@@ -0,0 +1,83 @@
# 兴邦预审 v2 详细设计候选
状态:0.1 草案,阶段①/②未定案;以下端点和新类型尚未实现。覆盖 BR-01–16 / E-01–12 / AC-01–16,先形成可评审的契约,再编写代码。
## 1. 约定与契约归属
唯一代码 owner 拟为 backend/contracts/prescreen.py,复用既有 Evidence / ProjectSnapshot,通过适配器处理版本差异;前端类型生成链在 M1 实现。API 路由仅授权和校验,业务决策在 service。
共同字段:id/project_id/snapshot_id 等为非空字符串(1–128 字符),revision 为正整数,时间为带时区 ISO-8601;未知发生时间允许 null,记录时间必填;data_domain 为 demo/production;所有输入禁止未知字段。列表分页候选 limit 默认 20,范围 1–100,cursor 可空。
P0 初始工程限制提案(非业务阈值):沿用单材料 10 MB;单次最多 10 个 Jev 问题、每题最多 20 条证据、每次最多 10 个模拟动作;工具最多 20 次、总运行 120 秒、单次模型请求 30 秒、可重试故障最多重试 1 次且计入总预算。管理员只能在部署配置中降低初期限制;放宽须重新验证并更新规格。这些值在 OQ-04 定案前不得当作性能承诺。
## 2. 接口草案
路径前缀 /api/prescreen,写请求须身份、项目权限和 Idempotency-Key;更新已有对象需 expected_revision。Error 响应统一为 `{error:{code,message,retryable,request_id}}`,不得带密钥或无权限原文。
| 方法 / 路径 | 入参 | 成功响应 | owner / 主要异常 |
|---|---|---|---|
| POST /projects/{project_id}/case-timelines | document_ids:string[1..100] | 202 {timeline:CaseTimeline},状态 processing | history_cases;E-01/03/07/09 |
| GET /case-timelines/{id} | 无 body | 200 CaseTimeline | history_cases;E-03;不存在统一 404 NOT_FOUND |
| POST /case-timelines/{id}/experiences | title:string[1..200], source_event_ids:string[1..50], conditions:Condition[], exceptions:Condition[], scope:project/team, expires_at:datetime | 201 ExperienceCard draft | 经验治理;E-03/04/07/09 |
| POST /experiences/{id}/transitions | action:submit/approve/reject/withdraw, expected_revision:int, note:string[1..2000] | 200 ExperienceCard | 复用经验治理;E-03/05/07 |
| POST /projects/{project_id}/runs | snapshot_id:string, enable_judgment:boolean=false | 202 ScreeningRun queued | prescreen;E-03/07/09/10 |
| GET /runs/{id} | 无 body | 200 ScreeningRun | prescreen;E-03;不存在 404 NOT_FOUND |
| POST /runs/{id}/cancel | expected_revision:int | 200 ScreeningRun | prescreen;E-03/05/07 |
| POST /runs/{id}/simulations | assumptions:Assumption[1..10] | 201 Simulation | scenario_service;E-03/05/07/09 |
材料上传/候选确认沿用已存在的项目助手接口,开发前核对调用方。此处不新增平行上传入口。
不存在与无访问权的对象统一对外为 404 NOT_FOUND,页面文案“对象不可访问或不存在”;E-03 用于已授权对象上的无权动作。评测先做离线内部入口,不开放目标标签 API 给主审。
## 3. 数据字段候选
| 对象 | 字段 / 类型 / 空值 | owner |
|---|---|---|
| CaseTimeline | id, project_id, data_domain, revision;status:processing/ready/partial/failed;events:DecisionEvent[];warnings:string[] | history_cases |
| DecisionEvent | id;event_type:question/evidence/action/opinion/decision;occurred_at:datetime?;recorded_at:datetime;question:string;evidence_ids:string[];judgment_before:string?;judgment_after:string?;conditions:string[] | history_cases |
| Condition | field:string(标准字段白名单);operator:eq/in/present/absent;value:string/bool/string[]/null;数据类型按 operator 校验,不执行表达式 | 经验治理 |
| ExperienceCard | id, project_id, data_domain, revision;version:string;title;status:draft/in_review/published/rejected/withdrawn;source_event_ids:string[];conditions/ exceptions:Condition[];scope:project/team;team_id:string?;expires_at;reviewer_id:string?;policy_version:string? | 经验治理 |
| Finding | 复用既有 Finding;展示 title/result/evidence_ids/basis_ids/suggested_action/status;无依据只能 unknown,已有枚举不改名 | 预审编排 |
| ScreeningRun | id, project_id, data_domain, revision, snapshot_id;status 见第4节;recommendation:advance/supplement/stop/insufficient_information/null;findings:Finding[];missing_inputs:string[];applied_experiences:{id,version,reason,evidence_ids}[];probability:null;probability_reason:not_calibrated;degradations:{code,message}[];versions:{schema,policy,skills,experiences,model,questions};created_at;finished_at:datetime? | 运行存储 |
| Judgment | id, run_id, question_id, question_version;type:choice/score/noul;status:completed/skipped/failed;answer:object?;evidence_ids:string[];provider:string;model_version:string?;error_code:string? | judgment_provider |
| Assumption | action_id:string;description:string[1..1000];field_changes:{field,value}[];required_evidence_ids:string[] | scenario_service |
| Simulation | id, project_id, base_run_id;assumptions:Assumption[];changed_findings:{code,before,after,basis_ids}[];unresolved_findings:string[];formal_result:false;created_at | scenario_service |
| Evaluation | id, dataset_version, split_id;run_versions:object;locked_at:datetime?;status:prepared/running/locked/revealed/invalidated;metrics:{name,numerator,denominator,value?,scope}[] | prescreen_evaluation |
Jev answer 为严格可辨识类型:Choice={choice:string, probabilities:map<string,float[0..1]>, confidence:float[0..1]};Score={score:float, probabilities:map<string,float[0..1]>, confidence:float[0..1]},范围按问题等级;Noul={noul:float[0..1]},无独立 confidence。必须与已冻结题型/选项/等级吻合;畸形、NaN、未知选项都记 failed。具体厂商 envelope 由适配器转换,不能把任意 JSON 直接存成有效判断。
Evidence 来源可定位不代表真实性已核验,真实性结果须单列 Finding。conditions 非空,team 范围必有 team_id;例外命中即排除;首次发布缺失 reviewer_id 不合法。撤回不删除历史引用。
迁移拟新增有版本守卫的历史事件/预审对象存储,具体 DDL 在 M1 定案;禁止覆写旧 schema_v2 初始化或复用旧生产库测试。
## 4. 状态机与权限
| 对象 | 合法转换 | 守卫与失败 |
|---|---|---|
| 历史过程 | processing→ready/partial/failed | 部分缺日期为 partial;重新提炼生成新 revision |
| 经验 | draft→in_review→published/rejected;rejected→draft;published→withdrawn | submit 由编辑者;approve/reject/withdraw 由发布角色;审核不能自批,编辑后重提审;过期在读取时排除 |
| 运行 | queued→running→completed/partial/awaiting_input/failed;queued/running→cancelled | awaiting_input 补件后创建新运行,旧运行保留;completed 不允许原地覆写 |
| 模拟 | 创建→独立结果 | 不存在“应用到真实项目”捷径;真实材料按原确认流程进入新快照 |
| 评测 | prepared→running→locked→revealed;任一未完状态→invalidated | locked 前标签不可进入推理;发现泄漏保留作废理由 |
recommendation 在 queued/running 时为 null,终态仍可能为 insufficient_information;partial 不是通过。过时结果允许查看但显示版本差异,不能静默升级到新版本。
## 5. 错误与恢复
错误码与文案统一引用规格第5节,防止维护两份。补充 NOT_FOUND 的语义见第2节。403/422 不自动重试;408/429/5xx/连接错误可按预算重试一次,使用同一幂等键。无可恢复工作时终止并保留日志;不自动切换未批准厂商。
硬规则冲突保留原模型提案但有效 recommendation=stop;来源无法验证的判断为 unknown。若综合意见失去关键依据,降为 insufficient_information 或 supplement,必须记录缺失事项;具体业务“关键项”列表依方案版本管理,需 OQ-01 确认。
## 6. 边界清单
空材料/空经验集:展示 empty,允许现有规则核查,明确无历史经验支持。版本不支持:422;对象过时:409;跨项目和跨域:过滤+授权拒绝。不能将 lack of evidence 当成 yes/no 否定事实。
幂等键唯一范围 actor_id+project_id+operation+key,记录请求哈希;相同请求返回原对象,冲突 E-09。并发更新通过 revision 和事务;先写运行记录再入队,取消后禁止写成功结果。实施阶段须覆盖 Worker 崩溃后恢复。
## 7. 测试映射
history_cases→AC-01/02;经验治理与检索→AC-03/04/13;prescreen+policy→AC-05/06/07/08/12;judgment_provider→AC-09/16;工具策略→AC-10;scenario_service→AC-11;命令入口→AC-14;evaluation→AC-15。具体测试提案见验证方案,当前均不是已执行的新功能测试。
## 8. 未决项
OQ-01 业务类型和关键项;OQ-02 审核权限;OQ-03 模型出口;OQ-04 性能/预算与验收阈值;OQ-05 概率事件;OQ-06 独立仓库和部署资源。全部在决策记录中有 owner 和进入条件。本文件不可直接作为已批准实现合同。
+68
View File
@@ -0,0 +1,68 @@
# 兴邦预审 v2 UI Spec
状态:候选表面规格,未开发、未做浏览器验收;不把本文件当作可点击原型。输入:需求规格与详细设计草案。
## 1. 交付面与骨架
| 表面 | 区域 / 信息层级 | 消费契约 |
|---|---|---|
| 预审总览 | 项目与数据域→意见及缺证状态→主要问题→经验对照→证据抽屉 | ScreeningRun、Finding、Evidence |
| 历史过程 | 左:来源材料;中:争议/补件时间线;右:经验卡草稿与审核记录 | CaseTimeline、DecisionEvent、ExperienceCard |
| 推进沙盘 | 左:证据→动作→问题变化图;右:假设动作;底:真实与模拟差异 | Simulation、ScreeningRun |
| 验证看板 | 数据集版本/保留状态→对照指标→分歧案例→人工复盘 | Evaluation |
拟集成至 xingbang-workbench / review-workbench 的项目上下文,实际路由与组件拆分在 UI 实现前定案,不恢复已合并的旧页面。
## 2. 组件所有权
ProjectContext 拥有 project_id、data_domain 和当前 run_id;RunSummary 只展示运行结果;CaseTimelinePanel 拥有选中事件;EvidenceDrawer 拥有证据展开状态;ExperienceEditor 拥有草稿和 expected_revision;ScenarioPanel 拥有 assumptions,不能写真实项目事实;EvaluationPanel 拥有数据集选择,不能提前获得保留标签。
组件名为提案,尚未创建。URL 仅保存 project_id/run_id/tab 等非敏感可分享状态;身份令牌、材料文本和假设正文不放 URL。切换项目清空选中证据与模拟动作。
## 3. 状态机
| 状态 | 可见内容 | 允许动作 / 禁用动作 |
|---|---|---|
| idle | 项目说明与启动入口 | 有权限可发起;无项目不发请求 |
| loading | 对应区域骨架与加载文案 | 可退出;禁重复提交 |
| ready | 已获数据与版本信息 | 按权限操作 |
| empty | “尚无历史经验”或“尚无运行”及下一步 | 可导入/发起;不能绘制虚构节点 |
| error | 错误码映射的文案、请求编号和恢复入口 | 仅可恢复错误显示重试 |
| submitting | 保留原内容,显示提交中 | 禁二次提交;不清除草稿 |
| stale(ready 附加标识) | “项目已有新版本,当前为历史结果” | 可查看/新运行;禁止覆写旧结果 |
业务运行 queued/running/awaiting_input/completed/partial/failed/cancelled 单独展示;partial 必须突出未完成项。更新失败时回 ready/error 且保留草稿,版本冲突提示刷新后合并。
## 4. 动作与权限
| 动作 | 客户经理 | 评审员/发布人 | 管理员 | 只读访客 |
|---|---|---|---|---|
| 查看项目结果和证据 | 授权项目 | 授权范围 | 授权范围,非默认全量 | 仅指定演示项目 |
| 确认材料、发起预审 | 项目授权 | 项目授权 | 不自动继承业务权限 | 隐藏 |
| 模拟动作 | 项目授权 | 项目授权 | 项目授权 | 仅演示授权 |
| 编辑经验候选 | 提议权限 | 编辑权限 | 不自动继承 | 隐藏 |
| 审核发布/撤回 | 隐藏 | 独立发布资格且不可自批 | 治理授权后 | 隐藏 |
| 修改模型出口与数据域 | 隐藏 | 隐藏 | 策略管理资格 | 隐藏 |
| 揭示保留集结果 | 隐藏 | 指定验证负责人且预测已锁定 | 不因管理员身份自动开放 | 隐藏 |
后端始终重验权限。无权限动作不显示控件;有权限但条件未满足显示禁用原因。经验发布前展示范围、例外、有效期和变更差异;撤回说明新运行不再使用、历史引用保留。
## 5. 沙盘视觉规则
证据→动作→受影响问题→预审意见;线宽最多三档,对应已定义影响等级,不能直接代表概率提升。未验证假设使用虚线和“模拟”文字;真实核验使用实线及来源。通过点击/键盘打开依据,颜色不单独传意。
一次只突出当前选中问题的关联路径,其他弱化;未知项不伪装为否定。补件可能发现新风险,允许意见变得更谨慎。图旁提供等价列表,缩小窗口时改纵向排列,不依赖复杂图才能理解结果。
P0 顶部不显示百分比“通过率”。展示 recommendation、missing_inputs、degradations 和数据域/版本;不凭空生成完整度或置信度数字。评分若后续加入,须另有明确算法和契约。
## 6. 文案与视觉
[DESIGN.md](DESIGN.md) 管理语义 token 候选。新增文案拟 key 化:prescreen.result.*, prescreen.error.*, experience.status.*, simulation.*, evaluation.*;每个错误 key 对应规格 E-*,中英文范围在 UI 门禁前确定。当前无对应 i18n 实现,不伪称可用。
正文按现有 16px 基线,主动作可键盘访问;可见 focus、表单 label、错误定位、减少动效、文本与图的等价表达。长标题换行,证据抽屉不截断关键原文。产品页面默认不暴露 question_version 等实现细节,只在“依据与版本”展开。
## 7. 验收映射与未决
来源点击与权限 AC-01/08;未知时间 AC-02;经验审核 AC-03/04;降级 AC-07/09;模拟隔离 AC-11;无伪概率 AC-12;盲测标签 AC-15。
UI 门禁尚未通过:路由位置、统一 token 实现、i18n 文件、视觉稿、键盘和对比度验收待完成。截图自评不能单独算通过,应有可复现的 DOM/行为断言及独立评审记录。
+47
View File
@@ -0,0 +1,47 @@
# 兴邦 v2 实施与迁移计划
状态:计划,未执行 v2 代码迁移。当前用户最新指令优先:接入流程、备份现状、编写新版文档。
## 1. 迁移边界
拟目标目录 F:/mini-OpenClaw-v2,当前尚不存在。先保护旧版,再从已备份提交白名单迁移,禁止把整个工作区连同数据/密钥/依赖一起复制。新仓库远程和独立部署资源见 OQ-06。
| 候选迁移内容 | 依赖理由 | 验证 |
|---|---|---|
| src/ 当前页面、组件、代理与 lib | workbench 和鉴权相互依赖,先保留可运行闭环 | 生产构建及既有 UI 脚本 |
| backend/api、services、contracts、graph、tools、data_layer | app.py 注册路由与服务调用链 | unittest + 导入/启动冒烟 |
| backend/skills、fixtures、requirements.txt | 固定方法和演示种子是运行/测试依赖 | fixtures 标为 demo,运行不读取旧数据目录 |
| backend/app.py、config.py 与必要无密钥默认配置 | 真正入口是 app.py,不照抄旧文档的 backend.backend.main | 独立进程和健康检查 |
| package*.json、Next/TS/CSS 配置、Dockerfile、入口脚本 | 构建完整性 | npm ci/build、Compose config |
| backend/test_*.py、相关 scripts 测试与 verify.py | 保留既有回归能力 | 同一验证入口在 v2 运行 |
| docs/project-process、docs/v2、根 AGENTS.md | 新流程与设计基线 | 链接/规则覆盖检查 |
排除:.env、server-deploy.conf、.docker-codex、node_modules、venv、.next*、日志、sessions/storage/raw_logs、实际 xingbang_data、原始客户材料、_backup*、office 临时文件。旧 DELIVERY.md 含凭据,不能原样进入新仓库;部署文档采用重写后的不含密钥说明。代码内默认演示数据需标注来源,不把默认频次当成客户经验。
抽取前按 import 与路由调用图确认必要依赖。先建立可运行基座,再根据测试逐项裁剪,不能按文件名猜核心。原版始终保留,禁止恢复用户此前主动合并删除的旧页。
## 2. 分批交付
| 里程碑 | 产出 | 进入条件 / 完成证据 |
|---|---|---|
| M0 文档与恢复点(本轮) | Gitea 快照、流程适配、URD/规格草案 | 远程 SHA 一致;文档检查;不是新版功能交付 |
| M1 独立基座 | v2 源码、环境模板、契约生成与追加迁移骨架 | 阶段①–③相应门禁通过;独立路径、完整构建、回归通过 |
| M2 历史过程与经验 | 时间线、原文定位、审核发布和检索 | AC-01/02/03/04/08/13,模拟与真实域隔离 |
| M3 主审与专项判断 | 有界 Agent Loop、Jev 可选适配、证据和硬规则约束 | AC-05/06/07/09/10/12/14/16;先 mock,再批准环境小样本 |
| M4 沙盘与展示 | UI 状态、假设动作、正式/模拟对照 | UI门禁通过,AC-11;源快照哈希不变 |
| M5 脱敏试点 | 数据授权清单、保留集盲测和复盘 | AC-15/16,专家评审、指标事先锁定 |
| M6 概率校准(后续) | 事件口径、训练/校准/测试、漂移监测 | OQ-05 关闭且样本支持;审批概率与违约风险分开 |
一次只交付一个可验证业务切片。新增文件按流程 ≤500 行;既有巨大 service 只接薄入口,不继续堆独立领域逻辑。新依赖先评估必要性和大小。
## 3. 每批标准动作
读 AGENTS 和对应流程 → 检查 status/log/调用方 → 更新需求规则与接口 → 增加行为测试 → 最小实现 → 相关测试 → 项目 verify.py → diff 自查 → 文档同步 → 独立提交和评审。
行为涉及权限、证据、模拟、外发时必须有反例;不以静态页面或模型的一句解释替代行为断言。失败先定位,不能反复重跑直到偶然通过。
## 4. 配置、迁移与回滚
代码通过可回滚提交/镜像标签恢复。数据迁移追加并有幂等守卫;旧库先快照,升级/回退边界经测试后才部署。回退代码不等于撤销已写入数据。v2 使用独立工作目录、Compose 项目、容器名、数据卷及端口,具体值在 OQ-06 定案。
本轮不实施剪裁、不改业务行为、不创建远程 v2 仓库、不部署。先把评审文档写清,避免规范到位后返工。
+55
View File
@@ -0,0 +1,55 @@
# 兴邦 v2 验证与质量门
状态:新版验证计划;以下 AC 测试为待实现,不能以旧版测试通过替代。
## 1. 可追溯测试矩阵
| 用例组 | 规格 AC | 层级 / 断言 |
|---|---|---|
| 材料确认与历史时间线 | AC-01/02 | 单测/集成:未确认不入事实;未知时间不补造;解析失败保留原件 |
| 经验审核、检索与版本 | AC-03/04/13 | 权限/集成:无资格、不适用、过期、撤回、异域不可应用;旧版本可追溯 |
| 主审与硬约束 | AC-05/06/07 | 有冲突和缺证的固定样例:单题正面不覆盖硬规则,缺数据不判高风险 |
| 证据真实性边界 | AC-08 | 伪造 ID、跨项目、无权片段被拒;有引用不等于真实性已证实 |
| Jev 降级 | AC-09/16 | mock:未配置、超时、畸形响应、未批准出口;零伪造判断、零未授权发送 |
| Agent 工具与预算 | AC-10 | 注入材料无法调用 terminal/任意SQL;预算耗尽确实停止 |
| 模拟隔离 | AC-11 | 真实快照哈希/数据库记录前后不变;关联改进不可简单相加 |
| 概率门禁 | AC-12 | UI/API/导出均无未经校准概率;Noul、Score不转审批率 |
| 幂等与并发 | AC-14 | 同键同载荷只一条运行;同键异载荷409;Worker重启不重复落库 |
| 盲测 | AC-15 | 预测先锁定,标签后揭示;同项目不跨开发/验收集;泄漏样本作废 |
## 2. 工程验证顺序
使用 backend/venv,先运行本批相关 unittest 与 UI 检查,再运行根目录的 `backend/venv/Scripts/python.exe scripts/verify.py`。Linux 对应 backend/venv/bin/python。命令、cwd、revision、fixture 和完整日志保存在 test-evidence。
现有 verify.py 实际包含:git diff、全部 backend unittest、四项 UI 源码守卫、Next.js build、本地/云端 Compose config;这些 UI 脚本不等于真实浏览器 E2E。--docker 会构建并启动本地 Compose,有端口与停止副作用,不能在与旧版冲突的资源上随意运行。
文档任务运行链接、编号覆盖、文件来源、格式检查。GitHub workflow 文件存在不代表 Gitea CI 已执行;远程检查未观测记 Unobserved。
## 3. 业务验证设计
同一批材料按版本冻结比较:A=现有助手;B=主审+历史经验;C=B+Jev。对照回答“经验有没有帮助”和“Jev有没有额外收益”,不把两项改进混成一个原因。先用合成反例暴露故障,再用客户持有的脱敏保留集检验。
样本包含通过、退回、否决、附条件通过、资料不全及意见分歧。按项目分组、按预测时间截断,只使用当时已取得的材料;区分首次提交通过和补件后最终通过。开发集不能看到保留集答案,也不能通过完整历史报告间接泄漏目标答案。
| 指标 | 计算口径 | 限制 |
|---|---|---|
| 重大问题漏检 | 专家标注重大问题中未识别数 / 专家标注总数 | 先定义重大问题;无标注不计算 |
| 无依据结论 | 复核为无依据的实质判断 / 被复核判断 | 引用存在但不支持也算无依据 |
| 误报 | 被专家认定不成立的问题 / 系统提出问题 | 专家分歧单列 |
| 有效补件 | 解决预定争议的补件 / 已完成补件 | 不把补件数量当质量 |
| 一致性 | 与参考意见一致的项目 / 可比较项目 | 不等于正确率;分歧要复核 |
| 效率与成本 | 相同边界下的人工耗时、端到端耗时、调用成本 | 同时检查重大问题漏检,不能只追求快 |
分母为0返回 not_applicable,不填0%。指标验收阈值在盲测前与兴邦锁定(OQ-04),不能看结果后调线。少量案例用于可行性和故障发现,不支持总体准确率宣传。
## 4. 概率后续门禁
定义审批事件、预测时点、样本纳入范围和制度时期;只观察已送审项目会有选择偏差。独立保留时间段测试校准情况,记录 Brier/校准曲线等指标并说明不确定性;通过概率不代表投放后无违约。具体样本量、模型选择和阈值另立规格,不在无数据时承诺。
动作模拟的分数变化属于模型条件判断,不能直接当作措施造成通过率提升的因果结论。
## 5. 失败和发布门
失败→复现→定位→最小修复→同一检查复验,完整记录。未解决故障不得发布镜像。仅保存源码恢复快照不等同发布,快照注明验证状态。
人工评审按正确性、一致性、安全、测试四维;未经独立评审不标通过。线上效果须在真实交付环境观测,本地测试不能替代。
+89
View File
@@ -0,0 +1,89 @@
# 部署与 Gitea 使用说明
日期:2026-09-28。本文区分已核验、本地配置、历史记录和未来提案;不包含密钥。本轮没有实际部署。
## 1. Git 远程事实
| 项 | 已核验值 |
|---|---|
| 当前 Gitea 远程 | origin |
| SSH 仓库 | ssh://git@192.168.10.111:2222/qiaoqichao/mini-openclaw.git |
| Web 地址线索 | http://8.163.107.248:13000/qiaoqichao/mini-openclaw (Gitea push 回执提供,网页本轮未单独测试) |
| 默认分支 | main,git ls-remote --symref origin HEAD 已核对 |
| 另一个远程 | github-backup → git@github.com:NathanAlex7/mini_openclaw.git;本轮未推送 |
| 源码恢复点 | codex/backup-before-ai-prescreen-v2-20260928 / 4d5a420671cb073a56335bd617e7d0812b8179a9 |
| 文档工作分支 | codex/xingbang-v2-docs-20260928 |
备份分支包含此次会话之前的 9 个已修改文件和选定的未跟踪源码、文档、流程原文,共37个变更文件;未改默认分支。其父提交为 b10093f。快照保存当时源码状态,不等同所有功能已验收。
## 2. 常用命令
先确认身份、网络和现有 SSH host key;不要为连接便利关闭主机指纹校验,不把口令放 URL。
```powershell
git status --short
git remote -v
git ls-remote --symref origin HEAD
git fetch origin
git switch -c codex/<task-name>
# 只暂存本次已检查文件,避免 git add . 带入临时凭据
git add -- <file1> <file2>
git diff --cached --check
git commit -m "docs(v2): 说明改动与结果"
git push -u origin HEAD
git rev-parse HEAD
git ls-remote --heads origin <branch-name>
```
本地 HEAD 与指定远程分支 SHA 相同才可说“已备份”。只 commit、只 push 输出、网页旧分支都不能替代核验。需合并时在 Gitea 创建面向 main 的 PR,按流程至少一人评审并绑定最终修订验证;本轮不自动合并。
## 3. 无损恢复
恢复到全新目录检查,不在有工作成果的目录执行 reset --hard/clean。
```powershell
git clone --branch codex/backup-before-ai-prescreen-v2-20260928 --single-branch ssh://git@192.168.10.111:2222/qiaoqichao/mini-openclaw.git F:\mini-OpenClaw-restore-20260928
git -C F:\mini-OpenClaw-restore-20260928 rev-parse HEAD
```
预期提交:4d5a420671cb073a56335bd617e7d0812b8179a9。目标须不存在。当前仅验证远程可提供该提交,未执行恢复目录创建或破坏性恢复演练。
这是源码备份:不包括实际业务数据库、上传文件、运行日志、会话、密钥或 Docker 数据卷;这些资产需要另行按部署环境建立备份。现有 Git 历史中的旧交付文档含遗留凭据,未重写既有历史;新文档和未来新仓库不得继续复制这些值。
## 4. 当前运行与部署事实
| 项 | 来源 / 状态 |
|---|---|
| 后端 | backend/app.py,python app.py 固定监听8002;或在 backend 工作目录用 uvicorn app:app --port 明确指定 |
| 前端 | package.json 的 next dev/start,默认3000;Next代理默认后端127.0.0.1:8002 |
| 本地 Compose | docker-compose.yml,容器 mini-openclaw-stable,宿主3200/8002 |
| 云端 Compose | deploy/docker-compose.aliyun.yml,容器 mini-openclaw,loopback FRONTEND_PORT默认80/BACKEND_PORT默认8002 |
| ECS 本机配置 | server-deploy.conf 指向 8.163.107.248:22,用户 qykj_qqc;不复制此含密钥文件 |
| 旧项目远程目录 | /home/qykj_qqc/mini-OpenClaw,来自此前会话只读检查;本轮未复查服务器 |
| 云端实时健康 | Unobserved,本轮未发起 SSH、重启或模型调用 |
当前 Dockerfile 在一个镜像中运行 Next 和 FastAPI,容器内部端口3000/8002;卷保存 xingbang_data 与日志。云端浏览器通过同源代理访问后端。受信模型 endpoint、密钥和 ERP 连接由环境提供,不提交到 Git。
## 5. 现有验证与发布链
```powershell
.\backend\venv\Scripts\python.exe scripts/verify.py
```
先安装项目依赖;必须使用项目虚拟环境。测试报告在 test-evidence,配置示例 deploy/aliyun.env.example 只有占位值。当前脚本 publish-acr.ps1/.sh 会验证、构建、推送;deploy-aliyun.sh 会 pull/up 并健康检查,这些是有副作用的发布脚本,不在本轮执行。
发布要求:验证通过、不可变镜像标签、部署配置单独保管、既有数据卷有备份、目标端口和容器隔离已确认。回滚用已验证的旧镜像标签;数据库变更的回退另行设计,不能把换镜像等同数据恢复。
## 6. v2 部署隔离提案
目标独立目录 F:/mini-OpenClaw-v2;独立 Git 项目、Compose 项目名、镜像名、容器、数据卷和宿主端口须在实施前确定。当前没有创建 v2 远程、部署文件或分配实际端口。不要执行原版 Compose 去部署 v2,否则会复用旧容器名和数据。
前端代理可通过 CORE_BACKEND_URL / RISK_AGENT_BACKEND_URL 指向隔离后端;启动命令和测试 smoke URL 必须随端口同步。将代码从旧版复制出来不自动完成资源隔离。
真实材料是否可发往 DeepSeek/Jev,取决于客户数据策略及实际部署方式;不能用“部署在客户服务器”推断“数据不会外发”。模型出口需要独立核对。
## 7. Gitea CI 状态
当前仓库只有 .github/workflows/verify.yml,未发现 .gitea/workflows。Gitea Actions 开关、runner、required checks 均未核验。不能声称 Gitea 已自动测试。
后续接入 CI 时:先核对服务器能力和 runner→使用同一本地验证入口→上传 test-evidence→验证失败阻断发布→确认对最终 SHA 真正执行。只新增 YAML 不算 CI 接入完成。
+58
View File
@@ -0,0 +1,58 @@
# 历史经验数据试点与客户展示方案
状态:产品方案草案,演示数据与真实验证必须分开。
## 1. 客户沟通目标
争取客户开放一批用途明确、范围可控的历史评审过程数据,通过盲测判断是否继续扩大。核心表达:让每个新项目调用兴邦历史上处理类似争议的核查方法。没有真实数据时不能证明真实判断准确,也不以模型品牌代替效果证据。
## 2. 四幕展示脚本
| 场景 | 屏幕内容 | 现场操作 | 能证明什么 / 不能证明什么 |
|---|---|---|---|
| 历史经验提炼 | 原始材料→问询→补件→判断变化→经验候选 | 点击争议展开原文;删掉发生日期 | 能展示来源和未知处理;模拟案例不能证明懂兴邦历史 |
| 经验用于新项目 | 当前争议与正反历史案例并排 | 切换无经验/有经验两次实际运行 | 展示查什么、为什么查;不能预设“有经验必然更好” |
| 项目推进沙盘 | 证据→动作→问题→建议变化 | 加保证、补回款证据、调融资额 | 展示条件推演;不能把模拟差值称为因果提升 |
| 客户保留集验证 | 锁定预测→揭示参考→人工复盘 | 客户现场出题或持有未见案例 | 给出可核对的验证过程;小样本不宣传总体准确率 |
示例故事:利润增长但现金流偏弱,最初要求回款核查;部分证据支持正常账期,部分显示恶化;主审比较差异后形成补件或附条件推进意见。明确标“虚构演示案例”,不使用真实客户名称作背书。
技术展开层展示:冻结快照、命中经验版本、工具调用结果、Jev具体问题、缺失项和硬规则。主页面显示业务含义,避免用技术图掩盖未验证结论。
## 3. 首批数据清单
| 数据 | 最小字段/材料 | 用途 | 缺失处理 |
|---|---|---|---|
| 项目索引 | 匿名project_id、业务类型、行业、阶段时间 | 同项目关联与分组 | 无稳定ID不用于跨版本比较 |
| 初始送审材料 | 当时版本、取得时间、来源 | 恢复初始信息条件 | 不拿最终报告冒充初稿 |
| 问询/评审意见 | 问题、提出时间、角色 | 识别争议和核查策略 | 角色用岗位或假名 |
| 补件与答复 | 对应问题、材料版本、取得时间 | 看证据是否回应问题 | 无对应关系人工确认 |
| 方案调整 | 金额/期限/增信等前后版本 | 区分补信息与改业务条件 | 不推断变化原因 |
| 批复及附带条件 | 审批阶段、结果、日期、条件 | 决策标签与条件 | 与审批通过预测输入隔离 |
| 当时制度 | 版本、适用时间和范围 | 判断旧经验是否适用 | 未知制度版本限制迁移 |
| 后续表现(可后续) | 条件落实、回款/风险事件时间 | 另行检验经验有效性 | 不作为早期预测时可得输入 |
优先完整的少量案例链,数量和行业由双方确认。客户保留“原始身份→匿名ID”的映射;同项目全流程保持同一假名。不要求首先开放整库、全量个人信息或生产写权限。
## 4. 经验访谈提纲
1. 当时首先担心哪一件事,为什么?
2. 哪条信息改变了你的判断;没有它还会同意吗?
3. 哪项补件只是增加信息,哪项措施真正改变了项目条件?
4. 这条经验有哪些例外,在哪类项目中会失效?
5. 当时是否有分歧、例外授权或资料之外的背景?
6. 后续结果是否支持当时判断,哪些结论仍不确定?
访谈是待确认意见,必须与原文和事件关联;不能把个人偏好直接发布成公司规则。
## 5. 数据流与边界
客户选择范围/匿名处理→授权导入→材料来源与时间核验→经验草稿→专家确认→开发样本验证→冻结保留集→独立预测→揭示结果→共同复盘。
部署前明确:原文保存位置、读取角色、模型出口、是否保留供应商日志、保留期限和删除责任。供应商条款及私有化能力尚未核验,不承诺 Jev 可本地部署。默认不把真实材料发送外部服务。
## 6. 试点验收与扩展条件
使用验证文档的重大问题漏检、无依据结论、误报、有效补件、专家分歧与效率指标。阈值先约定,结果差也如实展示;基线/经验增强/Jev增强分开测。客户数据从开发样本到保留样本逐步开放,不以模型推荐代替专家复盘。
通过试点后再扩大业务范围;失败则给出问题归因(提取、检索、经验适用、主审推理、数据缺失),不靠调漂亮分数掩盖。数据接入后的价值应通过相同边界的对照证明。
+49
View File
@@ -0,0 +1,49 @@
# 决策、未决项与学习记录
日期:2026-09-28。状态区分“用户已明确的方向”和“工程候选待评审”。
## 1. ADR
| ID | 决策 / 状态 | 被否方案 / 理由 | 影响 |
|---|---|---|---|
| ADR-01 | 复用 Next.js+FastAPI 与现有组件,工程候选 | 全面换框架;无法复用已验证链路 | 先迁移可运行基座,再逐步拆模块 |
| ADR-02 | 主审综合意见、Jev局部判断,用户已明确 | Jev单题直接决定通过;缺乏整体研判 | 证据与硬规则约束最终有效输出 |
| ADR-03 | 历史评审过程是核心资产,用户已明确 | 只存通过/不通过标签;丢失核查和判断变化 | 优先收集问询、补件、修改和批复条件 |
| ADR-04 | 经验经审核、有适用范围,工程候选 | 自动把任意反馈变成规则;会固化错误 | 复用现有经验治理,建立历史过程关联 |
| ADR-05 | 无真实校准前不宣称审批概率,已讨论方向 | 分数/Noul直接转通过率;没有业务验证 | P0概率字段为空;先做可追溯预审和试点 |
| ADR-06 | 独立v2代码目录待迁移,当前先备份与文档,用户最新顺序 | 直接覆盖现有部署;难回退 | 旧版Gitea恢复点先核验;v2目录尚未建立 |
| ADR-07 | 按用户最新要求直接适配流程正文,原文保留在Gitea恢复点 | 照搬Electron路径/发布命令;无法执行 | AGENTS统一入口,正文按兴邦事实执行 |
## 2. Open Questions
needed-by 是明确阶段门,不虚构双方尚未约定的日历时间。
| ID | 待定内容 | 当前处理 | owner | needed-by |
|---|---|---|---|---|
| OQ-01 | 首批业务类型、关键核查项、正式硬规则 | 只使用标注演示规则;不宣称兴邦制度 | 项目负责人+兴邦评审专家 | M2真实经验建模前 |
| OQ-02 | 经验发布资格、独立复核、真实身份体系 | 演示角色明确标示;生产数据入口不开启 | 兴邦业务负责人+系统管理员 | M2生产权限实现前 |
| OQ-03 | Jev/主审模型端点、客户数据出口、保留策略 | mock/合成样本;不发送真实材料 | 兴邦数据负责人+技术负责人 | 任何真实材料模型调用前 |
| OQ-04 | 验收阈值、时延预算、资源/费用上限 | 文档工程限制仅提案,报告耗时不承诺效果 | 产品+测试+实施负责人 | M3配置定案及M5盲测前 |
| OQ-05 | “通过”阶段、预测时点、样本量与选择偏差 | probability=null | 兴邦审批负责人+建模负责人 | M6概率需求进入架构前 |
| OQ-06 | v2新仓库、云端目录、端口、容器/卷 | 暂用当前独立文档分支;不复用旧生产资源 | 项目负责人+运维 | M1迁移及任何v2部署前 |
以上待定不阻止当前文档交付;阻止相应业务实现/真实数据阶段越过门禁。用户新指令可直接关闭或调整范围,不重复请求已授权事项。
## 3. 当前阶段门检查
| 门 | 状态 / 证据缺口 |
|---|---|
| Term | 草案已列术语,待业务评审 |
| Contract | 已有候选字段/状态/错误;未生成类型或确认DDL |
| Rule | BR-01–16已拆分并标职责,待评审 |
| Exception | E-01–12有错误和文案,契约校验仍待实现 |
| Coverage | 文档AC覆盖机械检查本轮执行;新功能行为测试未实现 |
| Decision | OQ项按里程碑阻断,未宣告需求阶段全过 |
## 4. 学习与持久缺口
- 流程适配:来源文档含项目特例,最小owner是 XINGBANG-ADAPTATION.md 和根AGENTS入口;以后每次新增规范检查失效路径。当前完成文件与链接核验,不等同长期遵守效果。
- 经验数据:默认团队模式和简化案例检索容易被误认为真实学习;owner为架构/产品说明,后续演示必须标来源。
- Gitea CI:仅有GitHub YAML,runner与门禁未核验;owner运维,在首次v2合并前确认。
- 历史文档密钥:旧DELIVERY.md有遗留凭据,当前恢复快照不改历史;新仓库迁移禁止携带;凭据有效性与轮换由凭据owner另行处理,本轮未访问验证。
- 本地工具:沙箱进程初始化失败,已通过受审的升权命令完成工作;不将该环境问题误判为代码故障。
+50
View File
@@ -0,0 +1,50 @@
# 本次交付记录:流程接入、版本备份和新版文档
日期:2026-09-28。业务实现未启动;文档仍为评审草案。
## 1. 用户授权与边界
用户要求:把 docs/project-process 接入 agent 开发规则;确保当前版本在 Gitea 备份;随后编写兴邦新版开发文档。沿用仓库唯一入口 AGENTS.md,不再建平行的 agent.md。
实际副作用:本地文档写入、创建Git分支/提交、向已配置origin推送独立分支。未部署、未调用真实模型、未更改数据库、未推送github-backup、未修改main。
## 2. 原版备份
- 原分支:codex/deploy-stable-20260909;上游origin/main。
- 原HEAD:b10093f9d8a949c6a6f8f8ed6d5b9c1bb044b569。
- 备份分支:codex/backup-before-ai-prescreen-v2-20260928。
- 备份SHA:4d5a420671cb073a56335bd617e7d0812b8179a9。
- 远程:ssh://git@192.168.10.111:2222/qiaoqichao/mini-openclaw.git。
- 证据:git push成功后,git ls-remote返回完全相同SHA。
- 内容:37个变更文件,包含用户已有未提交代码、测试、部署配置、脚本、resetdata页面、业务文档及新流程原文。
- 排除:.docker-codex、本地Office锁文件、重复的project-process.zip;本来忽略的.env、server-deploy.conf、运行数据等均未加入。
备份扫描检查了新变更的常见凭据模式,包括docx XML,未发现匹配项;这不是完整历史密钥审计。已有旧文档凭据问题未扩散到新文档。
原始新增文档有11处行尾空格(部分为Markdown换行),备份原样保留并记录在baseline-whitespace.log;恢复快照不声称达到发布门禁。本轮新写文档另做diff检查。
## 3. 本次文档范围
根AGENTS流程入口、项目流程兴邦适配、docs/v2目录中的URD、七段规格、架构、详细设计、UI、视觉约束、迁移、验证、部署/Gitea、数据试点、决策和本记录。
按用户后续要求,project-process的README、01–08及两份URD模板已直接适配兴邦;保留八阶段与原规则编号,原始内容可从4d5a420恢复。根AGENTS同时修正为真实后端app.py和项目工作目录。
文档分支:codex/xingbang-v2-docs-20260928。最终提交与远程状态使用git rev-parse HEAD及git ls-remote核验;不把文档提交等同正式需求评审或新版发布。
## 4. 本轮验证
状态:旧版代码全量验证通过;规范和新版文档的机械检查通过。证据目录:test-evidence/20260928-v2-planning/。
2026-09-28 执行 backend/venv/Scripts/python.exe scripts/verify.py,工作目录为仓库根;报告在 test-evidence/20260928-164935-4d5a420/REPORT.md。124个后端测试、4项UI源码守卫、Next生产构建、本地与云端Compose配置及diff检查全部通过(9项检查)。未执行--docker,未启动/发布容器。后续仅修改规范文档,业务源码保持备份哈希不变;最终文档检查单独绑定最终文件摘要。
测试环境使用占位模型Key和测试开关,不复制真实密钥。Gitea CI、真实浏览器E2E和云端实时健康均未在本次验证。
本轮文档检查:25份Markdown、87个本地链接、16条BR/12条E/16条AC的唯一性与覆盖通过;原流程各R-*编号集合保持一致,来源项目无效命令/路径残留清除。26个非流程备份文件的字节哈希未变,确认未修改既有业务代码。新增文档摘要保存在final-document-hashes.json;git diff格式检查通过。HTML模板仅调整项目说明和例子,未变更脚本/样式,未做浏览器视觉验收。
审阅:已检查正确性(当前入口/路径)、一致性(前后端及草案状态)、安全(密钥与数据范围)、测试(检查覆盖与未完成项)。这是本轮作者自查;独立业务/技术评审尚未发生,不宣称需求阶段获批。旧版通过也不代表v2功能通过。
## 5. 回滚与剩余工作
源码恢复可从已核验分支克隆到新目录,不重置当前工作区。文档修改保留独立提交,可通过后续revert撤销,不删除原始规范。远程资源仅新增分支,无main改写;无需进行破坏性恢复演练。
剩余:需求与方案评审、独立v2代码抽取、真实权限/模型出口确认、历史过程提炼、Jev适配、沙盘实现、脱敏盲测与后续概率校准。全部列入实施计划和OQ,当前未宣称完成。
+61
View File
@@ -0,0 +1,61 @@
---
status: candidate-not-implemented
colors:
primary: "#17634c"
surface: "#ffffff"
text: "#1d1d1f"
typography:
bodySize: "16px"
bodyLineHeight: 1.6
family: '"Microsoft YaHei", "PingFang SC", sans-serif'
rounded:
navigationItem: "9px"
spacing:
navigationHorizontal: "24px"
components:
primaryAction:
background: "{colors.primary}"
foreground: "{colors.surface}"
surfacePanel:
background: "{colors.surface}"
color: "{colors.text}"
---
# 兴邦 v2 视觉契约草案
## Overview
当前是基于已观察代码整理的候选契约。此文件尚未被 CSS 或构建消费,状态为 Present,不能声称 Token-ready/Aligned/Backstopped。正式 token 文件路径、导出与防漂移测试在 M1/M4 决定并实现。
## Colors
primary #17634c 来自 src/components/xingbang/navigation.css 的 xb-brand-mark 及 src/app/globals.css 的 xingbang-mark;surface 白色取自现有业务面板;text #1d1d1f 来自 globals.css。当前全局 accent 是蓝色 #002fa7,与业务导航绿色并存,不能声称已经统一品牌主题。
提案:业务预审延续深绿和白色证据面板,减少装饰色。primary 用于主动作和品牌,不代表风险结论;成功/警告/阻断必须文字标识。辅助状态色和对比度尚待审查,未擅自编造正式 token。
## Typography
正文 16px、行高 1.6 来自 globals.css;中文字体延续现有字体栈。预审结果、问题、证据三层信息明确,不把大量技术标签放在首页。数字不得比证据更突出,尤其不放未验证的通过概率。
## Layout
项目与版本头部 → 判断摘要 → 核查/经验主区 → 证据抽屉/动作侧栏。小窗口切换为纵向,路径图始终有文字列表。导航水平 padding 24px 与导航项圆角 9px 来自 navigation.css 的后置业务可读性规则;不意味着其他组件强制使用这些值。
## Elevation & Depth / Shapes
只对抽屉与浮层建立必要层次。面板阴影、圆角、间距完整尺度待视觉评审,禁止各组件自行新增任意裸值。已观察导航值不等于全站设计系统。
## Components
RunSummary、EvidenceDrawer、CaseTimelinePanel、ExperienceEditor、ScenarioPanel、EvaluationPanel 均为提案,状态和权限以 UI Spec 为准。动作 hover/disabled/focus token 待补齐并验证;原型与正式实现必须使用同一来源。
## Do / Don't
- 用“依据、差异、尚未验证”帮助业务人员理解;不要用黑盒发光大脑代替证据链。
- 线宽代表定义明确的等级;不要把模拟路径长度、线宽或模型确信度当作概率。
- 减少动效可关闭动画;焦点、错误、成功必须有文字和可见形状。
- 实施时验证正文/焦点对比度达到流程要求;当前尚未执行,不能标已通过。
## 缺口与门禁
needs-design-decision:完整状态色、间距尺度、响应断点、组件状态 token;owner 前端负责人;needed-by UI 实现前。需要 token 导出检查、对比度测试、键盘测试及文案 key 检查,结果纳入 test-evidence。
+40
View File
@@ -0,0 +1,40 @@
# 兴邦智审 v2:开发文档入口
版本:0.1 · 2026-09-28 · 状态:评审草案。
产品方向:评审经验驱动的 AI 预审。主审 Agent 综合判断,Jev 承担局部判断,确定性程序执行计算和规则;历史评审过程是核心经验来源。当前没有兴邦真实历史数据,演示不能宣称真实审批通过概率。
## 当前工作边界
本轮已先保存原版源码恢复点,再编写流程与新版文档。未创建独立 v2 代码目录、未实施新版 API / Jev / 历史过程提炼、未部署或覆盖现有服务。迁移仍是后续任务,见实施计划;不能把现有名字含 v2 的旧模块误认为本轮新版已完成。
备份基线:`4d5a420671cb073a56335bd617e7d0812b8179a9`,Gitea `codex/backup-before-ai-prescreen-v2-20260928`;已通过远程 SHA 比对。此前主线:`b10093f9d8a949c6a6f8f8ed6d5b9c1bb044b569`。详情见交付记录。
## 阅读顺序
| 文档 | 用途 |
|---|---|
| [流程适配](../project-process/XINGBANG-ADAPTATION.md) | 如何执行同事提供的八阶段规范 |
| [URD](URD.md) | 用户、产品目标、功能、分期与产品验收 |
| [需求规格](01-requirements.md) | 七段规格、BR/E/AC 可追溯规则 |
| [架构](02-architecture.md) | 已有能力、目标边界、职责与 ADR |
| [详细设计](03-detailed-design.md) | 候选接口、数据契约、状态、失败处理 |
| [UI Spec](04-ui-spec.md) | 页面骨架、状态、权限和演示交互 |
| [设计契约](DESIGN.md) | 已观察视觉来源、语义 token 提案及缺口 |
| [实施计划](05-implementation-plan.md) | 核心代码迁移与分批交付 |
| [验证方案](06-validation.md) | 自动化、专家盲测和概率验证边界 |
| [部署与 Gitea](07-deployment-and-gitea.md) | 当前真实入口、备份恢复和 v2 隔离要求 |
| [数据试点与展示](08-data-pilot-and-demo.md) | 争取历史数据开放的演示脚本与试点方案 |
| [决策与未决项](09-decisions.md) | 已接受方向、候选决策、owner 与到期阶段 |
| [本次交付记录](10-delivery-record.md) | 备份证据、检查结果和未完成事项 |
## 阶段状态
- ① 产品目标来自本次会话;需求规格为草案,尚待产品及兴邦评审人员确认。
- ②–④ 为支持需求评审提前记录的候选设计,不视为阶段门禁完成。
- ⑤–⑧ 文档描述未来实施、验证、交付和经验沉淀方式;本轮只实际执行文档检查和源码备份。
- 现有基线测试结果仅证明旧版状态,不证明 v2 功能已经实现。
## 下一步
先评审 URD 和需求规格,优先确定首批业务类型、经验审核角色、数据使用边界。确认后按实施计划建立独立 v2 目录,逐批迁移与验证;真实数据试点和概率校准分别设门禁。
+124
View File
@@ -0,0 +1,124 @@
# 兴邦智审 v2 用户需求文档
## 1. 文档控制
| 项 | 内容 |
|---|---|
| 编号 | URD-XB-V2-0.1 |
| 日期 / 状态 | 2026-09-28 / 草稿待评审 |
| 需求来源 | 用户本次会话:聚焦 AI 预审、历史评审经验、Jev 辅助判断和数据开放展示 |
| 产品 owner | 项目负责人;业务评审 owner 为兴邦指定评审专家,待指派 |
| 维护位置 | docs/v2/URD.md |
变更记录:0.1 首次整理;本文为后续规格输入,不代表客户已确认。
## 2. 目的与范围
帮助客户经理在项目早期获得有依据的推进建议、主要障碍、最小补件路径;帮助评审人员将历史项目中的调查方法沉淀为可审核、可复用、可撤回的经验。
P0 范围:受控演示、项目事实与证据、历史案例过程与经验卡、主审综合预审、Jev 可选专项核查、情景模拟、对照验证。先演示并验证经验链,再争取一批脱敏历史案例。
不在 P0:自动正式审批、自动放款、未经校准的通过概率、默认访问兴邦生产库、个人评审员通过倾向预测、用真实材料直接训练外部模型。这些能力或不属于本产品职责,或依赖另行确认的数据和验证条件。
成功条件:在明确标注的演示材料上,用户能追溯判断依据,理解新增材料为何改变或没有改变结论;脱敏试点效果经客户持有的保留样本验证后单独报告。
## 3. 参考
- [项目流程](../project-process/README.md)及 [URD 模板](../project-process/templates/URD-Template.md)。
- [当前技术路径](../兴邦金租对公智能评审平台技术路径与AgentLoop说明-v1.0.md)。
- [新版需求规格](01-requirements.md)、[架构](02-architecture.md)、[决策记录](09-decisions.md)。
## 4. 术语与角色
| 术语 | 用户语言定义 |
|---|---|
| 主审 Agent | 组织核查、比较证据并形成 AI 预审意见的助手 |
| 预审意见 | 建议推进、补充后再判断、暂不建议推进、信息不足;均非正式审批 |
| 经验卡 | 某类争议如何调查、哪些证据改变判断、适用与例外条件的记录 |
| 判断节点 | 一项具体争议及其核查、证据和当时意见 |
| 情景模拟 | 在假设动作完成的条件下重新评估,尚未改变真实项目事实 |
| 审批概率 | 指定审批阶段和时间口径下的获批估计,须独立历史校准 |
| 盲测 | 系统先锁定结果,再与保留的专家意见和结果对照 |
| 角色 | 任务 | 成功表现 |
|---|---|---|
| 客户经理 | 提供材料、理解障碍、补件 | 知道下一步优先做什么及依据 |
| 评审员 | 核实经验、复核争议 | 看得懂证据链,能纠正和说明分歧 |
| 经验发布人 | 审核适用范围、发布和撤回经验 | 候选经验不会未经审核直接生效 |
| 数据/系统管理员 | 管理数据范围、模型出口和版本 | 每次运行有明确数据范围和访问记录 |
| 项目负责人/只读访客 | 观看演示、比较效果 | 分清模拟能力和实测效果 |
发布人独立资格与真实身份接入方式见 OQ-02;P0 演示用明示的模拟角色,不当作生产鉴权。
## 5. 核心体验
历史档案 → 争议时间线 → 专家确认经验 → 新项目核查 → 补充证据与模拟 → 复核与对照验证。
页面入口拟整合到项目工作台:预审总览、历史经验、证据详情、推进沙盘、验证看板。保持当前项目上下文;不新增一批与现有工作台重叠的孤立旧页面。
交付面为中文 Web;保留现有 Next.js + FastAPI 技术基线。桌面应用、移动专用端暂不纳入。
## 6. 功能模块需求
| 模块 | 功能编号 | 用户任务 / 主流程 | 异常与用户行为 | 验收 |
|---|---|---|---|---|
| MOD-01 项目事实 | FR-FACT-01 | 上传材料→查看提取候选→确认事实与来源 | EX-FACT-01 解析失败:保留原件,允许人工录入并标注来源 | AC-U01 |
| MOD-02 历史过程 | FR-HIST-01 | 导入案例→整理争议、补件、证据、决定的时间线 | EX-HIST-01 时间或来源缺失:显示未知,禁止补造 | AC-U02 |
| MOD-03 经验治理 | FR-EXP-01 | 提炼候选→专家修改→审核发布→必要时撤回 | EX-EXP-01 无审核资格/过期:不进入有效经验集 | AC-U03 |
| MOD-04 主审预审 | FR-REV-01 | 发起预审→查看核查过程→获得意见与补件清单 | EX-REV-01 关键材料不足/工具失败:显示信息不足或部分结果 | AC-U04 |
| MOD-05 专项核查 | FR-JEV-01 | 查看具体材料是否支持结论及核查状态 | EX-JEV-01 未配置/超时:显示未执行,不伪造返回值 | AC-U05 |
| MOD-06 推进沙盘 | FR-SIM-01 | 选择假设动作→比较问题变化→返回真实结果 | EX-SIM-01 假设冲突/无证据:提示限制,禁止当作正式改善 | AC-U06 |
| MOD-07 效果验证 | FR-EVAL-01 | 锁定样本与版本→运行→揭示参考结果→专家复盘 | EX-EVAL-01 参考答案提前泄露:样本作废,不计盲测 | AC-U07 |
| MOD-08 数据试点 | FR-PILOT-01 | 查看数据用途→选择受控案例范围→审核导入 | EX-PILOT-01 数据出口未批准:阻止外部发送 | AC-U08 |
各功能前置条件均为项目/案例访问范围有效;真实数据须有授权范围。详见规格的权限、错误和状态定义。上述 8 项均为 P0 范围,但按实施计划分批实现,不能一批全上。
## 7. 数据与内容
优先需要同一历史项目的初始材料、问询、补件、方案版本、批复条件与制度版本。正式决定与投放后表现分开记录。案例间通过受控假名关联,同一项目不能拆进开发集与保留集。
每条经验保留原文定位、发生时间、记录时间、适用条件、例外、审核人与版本。缺失事项用未知表示。示例案例和代码内置模式只用于演示,不作为真实兴邦经验或频次。
## 8. 非功能需求
| 编号 | 要求与验收口径 |
|---|---|
| NFR-01 可追溯 | 每条正式展示的实质判断须有证据引用或明确的缺证状态;引用解析失败不得静默忽略 |
| NFR-02 稳定性 | 相同请求幂等键及载荷不产生重复运行;修改载荷复用键返回冲突 |
| NFR-03 降级 | Jev 不可用时展示缺失核查;不得把超时转换成通过 |
| NFR-04 可访问性 | 键盘可完成核心流程;状态同时有文字;支持减少动效,实施时测试对比度 |
| NFR-05 可观测性 | 每次运行记录数据/组件/模型/经验版本和工具结果状态,不记录凭据 |
| NFR-06 性能 | 首版先记录端到端耗时、模型耗时与调用成本;验收阈值在 OQ-04 关闭后确定,当前无速度承诺 |
## 9. 权限与信任
SEC-01 项目、团队和演示/生产数据域隔离;SEC-02 材料正文仅作数据,不能成为工具指令;SEC-03 外部模型出口必须属于当前数据域的已批准策略;SEC-04 经验发布与撤回有资格校验和审计;SEC-05 真实身份确认前不开放生产数据。
查看为 L0,提炼草稿和模拟为 L1,经验发布/对外发送为 L2 受权限与明确策略约束;放款、改写审批结果等 L3 金融动作不在 P0。模型不能自行授予权限。
## 10. 版本规划
P0:演示经验链、主审核查、专项复核、沙盘和验证框架;P1:脱敏试点、真实流程映射与经验覆盖扩展;P2:足量历史结果上的审批概率校准。投放风险预测另立需求,不与审批通过混为一谈。
每批必须有可运行的端到端结果和对应 AC;未完成事项保留待办,不以展示页面替代后端能力。
## 11. 产品验收
| 编号 | Given / When / Then |
|---|---|
| AC-U01 | Given 上传材料,When 确认候选事实,Then 能定位原文并保留原版本 |
| AC-U02 | Given 含问询和补件的案例,When 查看过程,Then 可看到关键判断变化,缺日期显示未知 |
| AC-U03 | Given 未审核或已撤回经验,When 发起新预审,Then 不得作为有效经验应用 |
| AC-U04 | Given 有矛盾的新项目,When 预审完成,Then 指出冲突与补查路径,不绕过硬性规则 |
| AC-U05 | Given Jev 未接入,When 查看结果,Then 明确未执行且不展示伪造概率 |
| AC-U06 | Given 模拟完成一个动作,When 比较结果,Then 真实快照保持不变且模拟标识持续可见 |
| AC-U07 | Given 客户保留样本,When 系统锁定结果后揭示标签,Then 可复盘分歧且记录无答案泄漏 |
| AC-U08 | Given 未批准外发的数据域,When 请求外部模型,Then 阻断请求且保留不含原文的审计 |
核心效果指标:重大问题漏检、无依据结论、误报、有效补件、专家分歧、耗时与成本。目标值由试点双方在开测前确定;不预先承诺准确率。
## 12. 假设与未决项
当前假设:中文 Web、无真实历史库、先用标注演示数据、主审负责综合意见。首批行业、专家发布权限、模型数据出口、验收阈值和“通过”的阶段定义均见 [OQ 清单](09-decisions.md),有 owner 与 needed-by。真实试点前必须关闭对应阻塞项。
附录:全部 FR/EX 索引在第 6 节;演示脚本见 [数据试点与展示](08-data-pilot-and-demo.md)。本版从既有综合平台聚焦经验驱动预审,保留旧能力供迁移,不声称重写完成。