|
@@ -1101,7 +1101,7 @@ scripts/version_log.py ← 由 HISTORY 生成 docs/版本记录.md
|
|
|
<!-- REVERSE-AUDIT:BEGIN -->
|
|
<!-- REVERSE-AUDIT:BEGIN -->
|
|
|
### 13.6 反向呼应审计:自输出 → 功能与算法 → 输入(自动生成,勿手改)
|
|
### 13.6 反向呼应审计:自输出 → 功能与算法 → 输入(自动生成,勿手改)
|
|
|
|
|
|
|
|
-台账 2236 件产物逐件回溯:**呼应成立 1742 件** · **不成立(无生成端)311 件** · 无法验证 0 件 · 未归类 0 件。判据:① 生成端在位 ② 输入在位 ③ 跨度 ⊆ 输入 / 机组集 ⊆ 输入 / 行数 > 0 / 计数与清单一致。
|
|
|
|
|
|
|
+台账 2236 件产物逐件回溯:**呼应成立 1742 件** · **不成立(无生成端)285 件** · 无法验证 0 件 · 未归类 0 件。判据:① 生成端在位 ② 输入在位 ③ 跨度 ⊆ 输入 / 机组集 ⊆ 输入 / 行数 > 0 / 计数与清单一致。
|
|
|
|
|
|
|
|
| 输出族(产物 glob) | 件数 | 反向判定 | 功能 | 算法 / 生成端 | 输入(data/raw/<场>/) | 判据 | 说明 |
|
|
| 输出族(产物 glob) | 件数 | 反向判定 | 功能 | 算法 / 生成端 | 输入(data/raw/<场>/) | 判据 | 说明 |
|
|
|
|---|---:|---|---|---|---|---|---|
|
|
|---|---:|---|---|---|---|---|---|
|
|
@@ -1116,13 +1116,13 @@ scripts/version_log.py ← 由 HISTORY 生成 docs/版本记录.md
|
|
|
| `ontology/{objects.json,retrieval_index.json,turbine_params.parquet}` | 3 | ✓ 呼应成立 | 本体层 · 码表/对象库/检索索引/实机参数 | python -m src.ontology.kb_ingest → populate → chain_ingest → trend_ingest;src.ontology.retrieval.build;src.ontology.maintenance.refresh_params | 西门子4.0技术资料 | rows | 件内数据行合计 1,708 |
|
|
| `ontology/{objects.json,retrieval_index.json,turbine_params.parquet}` | 3 | ✓ 呼应成立 | 本体层 · 码表/对象库/检索索引/实机参数 | python -m src.ontology.kb_ingest → populate → chain_ingest → trend_ingest;src.ontology.retrieval.build;src.ontology.maintenance.refresh_params | 西门子4.0技术资料 | rows | 件内数据行合计 1,708 |
|
|
|
| `['ontology/_id_alias.json', 'ontology/retrieval_vec.npy']` | 2 | ✓ 呼应成立 | 本体层 · 别名表与向量索引缓存 | src.ontology.kb_ingest(别名)/ src.ontology.retrieval.build(use_vec=True)(向量) | 西门子4.0技术资料 | rows | 件内数据行合计 2 |
|
|
| `['ontology/_id_alias.json', 'ontology/retrieval_vec.npy']` | 2 | ✓ 呼应成立 | 本体层 · 别名表与向量索引缓存 | src.ontology.kb_ingest(别名)/ src.ontology.retrieval.build(use_vec=True)(向量) | 西门子4.0技术资料 | rows | 件内数据行合计 2 |
|
|
|
| `['ontology/oil_2026H2_huabiao.json', 'ontology/parts_cost_public.json', 'ontology/scenario_29_repair.json']` | 2 | ✗ 无生成端 + ◆ 人工件 1 | 本体层 · 领域数据件(油样台账/备件价格/场景修复) | (无生成端, 领域正本出件) | —(无生成端) | — | 领域正本随包发来, 不由 data/raw 推导 |
|
|
| `['ontology/oil_2026H2_huabiao.json', 'ontology/parts_cost_public.json', 'ontology/scenario_29_repair.json']` | 2 | ✗ 无生成端 + ◆ 人工件 1 | 本体层 · 领域数据件(油样台账/备件价格/场景修复) | (无生成端, 领域正本出件) | —(无生成端) | — | 领域正本随包发来, 不由 data/raw 推导 |
|
|
|
-| `m5_cms_tcm/*.{json,parquet,csv,md,txt}` | 45 | ✗ 无生成端 + ◆ 人工件 26 | 振动线出件与专项扫描(handoff / 历史 / 基线 / 各类 freq scan / 判级台账) | (无生成端) | —(无生成端) | — | 振动六层链四步脚本未随包(oem_frequency_scan 等),现场正本才可重出;现只能从交付包补齐 |
|
|
|
|
|
|
|
+| `m5_cms_tcm/*.{json,parquet,csv,md,txt}` | 36 | ✗ 无生成端 + ◆ 人工件 35 | 振动线出件与专项扫描(handoff / 历史 / 基线 / 各类 freq scan / 判级台账) | (无生成端) | —(无生成端) | — | 振动六层链四步脚本未随包(oem_frequency_scan 等),现场正本才可重出;现只能从交付包补齐 |
|
|
|
| `m5_cms_tcm/figs/*` | 15 | ✗ 无生成端 | 振动线出图(谱图/趋势图) | (无生成端) | —(无生成端) | — | 随包快照(振动线出件) |
|
|
| `m5_cms_tcm/figs/*` | 15 | ✗ 无生成端 | 振动线出图(谱图/趋势图) | (无生成端) | —(无生成端) | — | 随包快照(振动线出件) |
|
|
|
-| `windscada/{index.html,turbines/*,review/*}` | 41 | ✗ 无生成端 + ◆ 人工件 6 | 总览「全场状态」静态页 + 逐台页 + 评审记录 | (无生成端) | —(无生成端) | — | 页面件由振动线/历史分析出件,本包无写入方 |
|
|
|
|
|
-| `windcms/**` | 46 | ✗ 无生成端 + ◆ 人工件 6 | CMS 振动评估报告页/逐台页/缓存 | scripts/windcms.py report(本包缺 model_run/fusion 产物, 重生成会掉内容 −97%, 故**按设计跳过**) | —(无生成端) | — | 生成端在包内但输入不足 ⇒ 现状按随包件冻结 |
|
|
|
|
|
-| `sop/**` | 102 | ✗ 无生成端 + ◆ 人工件 100 | SOP 中间件/评审/事实契约底稿 | (无生成端) | —(无生成端) | — | 评审过程件, 属人工作业留痕 |
|
|
|
|
|
-| `tcm_compatible_replay/**` | 45 | ✗ 无生成端 + ◆ 人工件 13 | TCM 兼容链回放资产(模型表/掩码阈值/裁决记录) | (无生成端) | —(无生成端) | — | 随包快照 |
|
|
|
|
|
-| `paradigm_r1/**` | 10 | ✗ 无生成端 + ◆ 人工件 19 | 范式实验件(E3/E5/E8 底稿) | (无生成端) | —(无生成端) | — | 实验底稿, 事实契约的输入 |
|
|
|
|
|
|
|
+| `windscada/{index.html,turbines/*,review/*}` | 39 | ✗ 无生成端 + ◆ 人工件 8 | 总览「全场状态」静态页 + 逐台页 + 评审记录 | (无生成端) | —(无生成端) | — | 页面件由振动线/历史分析出件,本包无写入方 |
|
|
|
|
|
+| `windcms/**` | 45 | ✗ 无生成端 + ◆ 人工件 7 | CMS 振动评估报告页/逐台页/缓存 | scripts/windcms.py report(本包缺 model_run/fusion 产物, 重生成会掉内容 −97%, 故**按设计跳过**) | —(无生成端) | — | 生成端在包内但输入不足 ⇒ 现状按随包件冻结 |
|
|
|
|
|
+| `sop/**` | 92 | ✗ 无生成端 + ◆ 人工件 110 | SOP 中间件/评审/事实契约底稿 | (无生成端) | —(无生成端) | — | 评审过程件, 属人工作业留痕 |
|
|
|
|
|
+| `tcm_compatible_replay/**` | 43 | ✗ 无生成端 + ◆ 人工件 15 | TCM 兼容链回放资产(模型表/掩码阈值/裁决记录) | (无生成端) | —(无生成端) | — | 随包快照 |
|
|
|
|
|
+| `paradigm_r1/**` | 8 | ✗ 无生成端 + ◆ 人工件 21 | 范式实验件(E3/E5/E8 底稿) | (无生成端) | —(无生成端) | — | 实验底稿, 事实契约的输入 |
|
|
|
| `pitch/**` | 2 | ✗ 无生成端 | 变桨侧派生件(零位/日粒度) | (无生成端;rebuild_from_raw --scada 只覆盖其中一部分) | —(无生成端) | — | 随包快照 |
|
|
| `pitch/**` | 2 | ✗ 无生成端 | 变桨侧派生件(零位/日粒度) | (无生成端;rebuild_from_raw --scada 只覆盖其中一部分) | —(无生成端) | — | 随包快照 |
|
|
|
| `ontology/release_*/*` | 2 | ✗ 无生成端 + ◆ 人工件 3 | 本体发布层 r1/r2(只读暴露给网关 /release/) | (无生成端) | —(无生成端) | — | 发布层清单, 由研发出件 |
|
|
| `ontology/release_*/*` | 2 | ✗ 无生成端 + ◆ 人工件 3 | 本体发布层 r1/r2(只读暴露给网关 /release/) | (无生成端) | —(无生成端) | — | 发布层清单, 由研发出件 |
|
|
|
| `guanlan/**` | 1 | ✗ 无生成端 + ◆ 人工件 4 | 事实契约与对外派生(门户结论段/取数) | scripts/guanlan_facts_contract.py(读者在包内, 输入是 ontology+m5+sop 三处**产物**) | —(无生成端) | — | 派生链的中间层:它的"输入"本身是产物而非 data/raw ⇒ 与 raw 之间隔着不止一跳 |
|
|
| `guanlan/**` | 1 | ✗ 无生成端 + ◆ 人工件 4 | 事实契约与对外派生(门户结论段/取数) | scripts/guanlan_facts_contract.py(读者在包内, 输入是 ontology+m5+sop 三处**产物**) | —(无生成端) | — | 派生链的中间层:它的"输入"本身是产物而非 data/raw ⇒ 与 raw 之间隔着不止一跳 |
|
|
@@ -1136,19 +1136,19 @@ scripts/version_log.py ← 由 HISTORY 生成 docs/版本记录.md
|
|
|
| 输出族 | 件数 | 可逆性 | 依据 |
|
|
| 输出族 | 件数 | 可逆性 | 依据 |
|
|
|
|---|---:|---|---|
|
|
|---|---:|---|---|
|
|
|
| `ontology_domain` | 2 | 半可逆(需人工裁定) | 抽样里 33% 的件含人工判断字段 ⇒ 机器部分可推、判断部分要人定;人工判断字段抽样命中 33%(如 ontology/parts_cost_public.json) |
|
|
| `ontology_domain` | 2 | 半可逆(需人工裁定) | 抽样里 33% 的件含人工判断字段 ⇒ 机器部分可推、判断部分要人定;人工判断字段抽样命中 33%(如 ontology/parts_cost_public.json) |
|
|
|
-| `vib_handoff_and_scans` | 45 | 混合(测量件可反推 / 文本件需人定) | (23 件测量形态 / 22 件文本·判断件)测量形态的件可由 data/raw 反推口径 + 逐值对拍; 文本/判断件(评审、裁决、回复)推不出来;人工判断字段抽样命中 33%(如 m5_cms_tcm/OEM特征频率复跑_2026-08-17.md) |
|
|
|
|
|
|
|
+| `vib_handoff_and_scans` | 36 | 混合(测量件可反推 / 文本件需人定) | (23 件测量形态 / 13 件文本·判断件)测量形态的件可由 data/raw 反推口径 + 逐值对拍; 文本/判断件(评审、裁决、回复)推不出来;人工判断字段抽样命中 33%(如 m5_cms_tcm/OEM特征频率复跑_2026-08-17.md) |
|
|
|
| `vib_figs` | 15 | 需人工裁定 | 既无生成端、形态也不是测量函数 ⇒ 需研发给口径或领域正本 |
|
|
| `vib_figs` | 15 | 需人工裁定 | 既无生成端、形态也不是测量函数 ⇒ 需研发给口径或领域正本 |
|
|
|
-| `windscada_pages` | 41 | 不可逆(人工判断) | 抽样 6 件里都写着人工判断字段(如 windscada/review/_sealed_predictions_20260826.md) ⇒ 不是输入的纯函数, 逆向工程推不出来;人工判断字段抽样命中 85%(如 windscada/review/_sealed_predictions_20260826.md) |
|
|
|
|
|
-| `windcms_pages` | 46 | 可逆(页面可再生) | 这一族主要是**页面**(.html): 页面是产物的渲染, 不是独立数据 ⇒ 接上在包的页面生成端重出即可(未必逐字节同, 能力与数据一致);人工判断字段抽样命中 33%(如 windcms/kb.json) |
|
|
|
|
|
-| `sop_workspace` | 102 | 半可逆(需人工裁定) | 抽样里 37% 的件含人工判断字段 ⇒ 机器部分可推、判断部分要人定;人工判断字段抽样命中 37%(如 sop/_dual_review_20260726_payload脱敏.md) |
|
|
|
|
|
-| `tcm_replay` | 45 | 不可逆(人工判断) | 抽样 3 件里都写着人工判断字段(如 tcm_compatible_replay/claude_handoff_20260823/Codex回复_rms200_mask_20260823.md) ⇒ 不是输入的纯函数, 逆向工程推不出来;人工判断字段抽样命中 75%(如 tcm_compatible_replay/claude_handoff_20260823/Codex回复_rms200_mask_20260823.md) |
|
|
|
|
|
-| `paradigm_r1` | 10 | 不可逆(人工判断) | 抽样 5 件里都写着人工判断字段(如 paradigm_r1/experiments/E3_candidate_closure/plan.md) ⇒ 不是输入的纯函数, 逆向工程推不出来;人工判断字段抽样命中 100%(如 paradigm_r1/experiments/E3_candidate_closure/plan.md) |
|
|
|
|
|
|
|
+| `windscada_pages` | 39 | 不可逆(人工判断) | 抽样 6 件里都写着人工判断字段(如 windscada/review/_sealed_predictions_20260826.md) ⇒ 不是输入的纯函数, 逆向工程推不出来;人工判断字段抽样命中 85%(如 windscada/review/_sealed_predictions_20260826.md) |
|
|
|
|
|
+| `windcms_pages` | 45 | 可逆(页面可再生) | 这一族主要是**页面**(.html): 页面是产物的渲染, 不是独立数据 ⇒ 接上在包的页面生成端重出即可(未必逐字节同, 能力与数据一致);人工判断字段抽样命中 50%(如 windcms/kb.json) |
|
|
|
|
|
+| `sop_workspace` | 92 | 半可逆(需人工裁定) | 抽样里 37% 的件含人工判断字段 ⇒ 机器部分可推、判断部分要人定;人工判断字段抽样命中 37%(如 sop/_dual_review_20260726_payload脱敏.md) |
|
|
|
|
|
+| `tcm_replay` | 43 | 不可逆(人工判断) | 抽样 3 件里都写着人工判断字段(如 tcm_compatible_replay/claude_handoff_20260823/Codex回复_rms200_mask_20260823.md) ⇒ 不是输入的纯函数, 逆向工程推不出来;人工判断字段抽样命中 75%(如 tcm_compatible_replay/claude_handoff_20260823/Codex回复_rms200_mask_20260823.md) |
|
|
|
|
|
+| `paradigm_r1` | 8 | 不可逆(人工判断) | 抽样 5 件里都写着人工判断字段(如 paradigm_r1/experiments/E3_candidate_closure/plan.md) ⇒ 不是输入的纯函数, 逆向工程推不出来;人工判断字段抽样命中 100%(如 paradigm_r1/experiments/E3_candidate_closure/plan.md) |
|
|
|
| `pitch_shipped` | 2 | 可逆(需反推口径) | 测量形态的件是测量数据的函数 ⇒ 可从 data/raw 反推口径 + 逐值对拍(做法同 temp_monthly: 反推 → 逐值一致才敢用) |
|
|
| `pitch_shipped` | 2 | 可逆(需反推口径) | 测量形态的件是测量数据的函数 ⇒ 可从 data/raw 反推口径 + 逐值对拍(做法同 temp_monthly: 反推 → 逐值一致才敢用) |
|
|
|
| `ontology_releases` | 2 | 不可逆(人工判断) | 抽样 3 件里都写着人工判断字段(如 ontology/release_r1/manifest.json) ⇒ 不是输入的纯函数, 逆向工程推不出来;人工判断字段抽样命中 60%(如 ontology/release_r1/manifest.json) |
|
|
| `ontology_releases` | 2 | 不可逆(人工判断) | 抽样 3 件里都写着人工判断字段(如 ontology/release_r1/manifest.json) ⇒ 不是输入的纯函数, 逆向工程推不出来;人工判断字段抽样命中 60%(如 ontology/release_r1/manifest.json) |
|
|
|
| `guanlan_contract` | 1 | 不可逆(人工判断) | 抽样 4 件里都写着人工判断字段(如 guanlan/derived/detail_cards.json) ⇒ 不是输入的纯函数, 逆向工程推不出来;人工判断字段抽样命中 80%(如 guanlan/derived/detail_cards.json) |
|
|
| `guanlan_contract` | 1 | 不可逆(人工判断) | 抽样 4 件里都写着人工判断字段(如 guanlan/derived/detail_cards.json) ⇒ 不是输入的纯函数, 逆向工程推不出来;人工判断字段抽样命中 80%(如 guanlan/derived/detail_cards.json) |
|
|
|
| `human_deliverables` | 5 | 人工件(正本/交证) | 人写的, 不参与呼应校验; 随包留在原位 |
|
|
| `human_deliverables` | 5 | 人工件(正本/交证) | 人写的, 不参与呼应校验; 随包留在原位 |
|
|
|
|
|
|
|
|
-**按件数汇总**:已在重算链上 = 1742 件 · 半可逆(需人工裁定) = 104 件 · 不可逆(人工判断) = 99 件 · 可逆(页面可再生) = 46 件 · 混合(测量件可反推 / 文本件需人定) = 45 件 · 需人工裁定 = 15 件 · 人工件(正本/交证) = 5 件 · 可逆(需反推口径) = 2 件
|
|
|
|
|
|
|
+**按件数汇总**:已在重算链上 = 1742 件 · 半可逆(需人工裁定) = 94 件 · 不可逆(人工判断) = 93 件 · 可逆(页面可再生) = 45 件 · 混合(测量件可反推 / 文本件需人定) = 36 件 · 需人工裁定 = 15 件 · 人工件(正本/交证) = 5 件 · 可逆(需反推口径) = 2 件
|
|
|
|
|
|
|
|
**人工件**:含人工判断字段的件已逐件登记在 outputs/<场>/_human_artifacts.json(用户令 2026-09-17 #3),它们**不参与**呼应校验(人写成/坐实的东西不是任何输入的纯函数);生成方式:python scripts/products_reverse_audit.py --write-human-manifest。
|
|
**人工件**:含人工判断字段的件已逐件登记在 outputs/<场>/_human_artifacts.json(用户令 2026-09-17 #3),它们**不参与**呼应校验(人写成/坐实的东西不是任何输入的纯函数);生成方式:python scripts/products_reverse_audit.py --write-human-manifest。
|
|
|
|
|
|