Commit b0c52b54 b0c52b545cd75e2c7cb425863595ad28aa2a5177 by cnb.bofCdSsphPA

Why the handoff must reflect the runtime-ready semantic state

Constraint: The latest host state is no longer fallback-only; docs must show that torch/torchaudio/transformers are installed and the song-centric pipeline now reaches the runtime-ready placeholder branch
Rejected: Keep the old missing-dependency handoff | would mislead the next session into debugging an already-cleared blocker
Confidence: high
Scope-risk: narrow
Directive: Keep future handoff notes aligned with the latest runner report and import status before planning semantic-adapter implementation
Tested: installed torch-2.12.0+cpu, torchaudio-2.11.0+cpu, transformers-5.10.1; reran song-centric pipeline; markdown link check on /workspace/docs
Not-tested: Real MERT/MuQ adapter implementation is still pending; current semantic output is the runtime-ready placeholder
1 parent 21388b99
1 # Changelog 1 # Changelog
2 2
3 ## 2026-06-04 3 ## 2026-06-04
4 - fresh runtime 进展:已在当前 host 成功安装 `torch-2.12.0+cpu``torchaudio-2.11.0+cpu``transformers-5.10.1`,重跑 song-centric 主链后确认 `semantic_runtime_available = true``semantic_runtime_ready_count = 5``semantic_fallback_count = 0`;当前 semantic 已从 fallback 推进到 `semantic_runtime_ready_placeholder`,下一步只差接真实 `MERT / MuQ` adapter。
4 - 收敛 `docs/` 到当前 song-centric 主线,只保留 `README / start-here / session-handoff / postgresql-data-model / postgres_db_schema_samples / CHANGELOG` 六份核心文档,删除旧的 v2 / planner-worker / registry 扩展文档,避免新同学误入已退居次线的设计。 5 - 收敛 `docs/` 到当前 song-centric 主线,只保留 `README / start-here / session-handoff / postgresql-data-model / postgres_db_schema_samples / CHANGELOG` 六份核心文档,删除旧的 v2 / planner-worker / registry 扩展文档,避免新同学误入已退居次线的设计。
5 - 重写 `docs/postgresql-data-model.md`,明确 `保存切片的数据 + 模型 + feature` 的落表方案:`window``audio_object`,模型身份落 `feature_fact.model_name/model_version/feature_set_name`,具体 `fingerprint/embedding` 也统一落 `feature_fact` 6 - 重写 `docs/postgresql-data-model.md`,明确 `保存切片的数据 + 模型 + feature` 的落表方案:`window``audio_object`,模型身份落 `feature_fact.model_name/model_version/feature_set_name`,具体 `fingerprint/embedding` 也统一落 `feature_fact`
6 - 重写 `docs/postgres_db_schema_samples.md` 与入口文档,补充当前 4 表主链的流程图、典型 SQL 样例、查询回溯路径与写入顺序,统一文档口径到 `media_entity -> audio_object -> feature_fact -> set_membership` 7 - 重写 `docs/postgres_db_schema_samples.md` 与入口文档,补充当前 4 表主链的流程图、典型 SQL 样例、查询回溯路径与写入顺序,统一文档口径到 `media_entity -> audio_object -> feature_fact -> set_membership`
......
...@@ -62,8 +62,10 @@ acr-engine/scripts/start_songcentric_shortest_path.sh 'postgres://d2:d2pass@127. ...@@ -62,8 +62,10 @@ acr-engine/scripts/start_songcentric_shortest_path.sh 'postgres://d2:d2pass@127.
62 - `window_count = 5` 62 - `window_count = 5`
63 - `matcher_fingerprint_count = 5` 63 - `matcher_fingerprint_count = 5`
64 - `fallback_fingerprint_count = 0` 64 - `fallback_fingerprint_count = 0`
65 - `semantic_runtime_available = false` 65 - `semantic_runtime_available = true`
66 - `import_counts.feature_fact = 24` 66 - `semantic_runtime_ready_count = 5`
67 - `semantic_fallback_count = 0`
68 - `import_counts.feature_fact = 29
67 69
68 --- 70 ---
69 71
......
...@@ -29,9 +29,11 @@ acr-engine/scripts/start_songcentric_shortest_path.sh 'postgres://d2:d2pass@127. ...@@ -29,9 +29,11 @@ acr-engine/scripts/start_songcentric_shortest_path.sh 'postgres://d2:d2pass@127.
29 - `window_count = 5` 29 - `window_count = 5`
30 - `matcher_fingerprint_count = 5` 30 - `matcher_fingerprint_count = 5`
31 - `fallback_fingerprint_count = 0` 31 - `fallback_fingerprint_count = 0`
32 - `semantic_runtime_available = false` 32 - `semantic_runtime_available = true`
33 - `semantic_runtime_missing = [torch, torchaudio, transformers]` 33 - `semantic_runtime_missing = []`
34 - `import_counts = media_entity:9 / audio_object:22 / feature_fact:24 / set_membership:9` 34 - `semantic_runtime_ready_count = 5`
35 - `semantic_fallback_count = 0`
36 - `import_counts = media_entity:9 / audio_object:22 / feature_fact:29 / set_membership:9`
35 37
36 --- 38 ---
37 39
...@@ -112,19 +114,18 @@ flowchart TD ...@@ -112,19 +114,18 @@ flowchart TD
112 5. 真实目录 -> manifest -> import 已验证通过 114 5. 真实目录 -> manifest -> import 已验证通过
113 6. 真实目录 -> fingerprint enrichment -> import 已验证通过 115 6. 真实目录 -> fingerprint enrichment -> import 已验证通过
114 7. exact lane 已优先复用仓库内 `ChromaprintMatcher` 116 7. exact lane 已优先复用仓库内 `ChromaprintMatcher`
115 8. semantic lane 已 runtime-aware,但当前 host 因依赖缺失仍走 fallback 117 8. semantic lane 已 runtime-ready,当前 host 已可进入 placeholder runtime 分支
116 118
117 --- 119 ---
118 120
119 ## 7. 当前 host 的真实 blocker 121 ## 7. 当前 host 的真实 blocker
120 122
121 -`torch` 123 - `torch / torchaudio / transformers` 已可导入
122 -`torchaudio` 124 - 当前 `semantic_runtime_available = true`
123 -`transformers` 125 - 当前 semantic 仍不是 `MERT / MuQ`,而是 `semantic_runtime_ready_placeholder`
124 - 因此当前 `semantic_runtime_available = false`
125 126
126 这说明当前主要 blocker 127 这说明当前主要 blocker 已从“依赖缺失”推进为
127 > **语义 encoder runtime 还没就绪,不是 schema 没设计好。** 128 > **runtime 已就绪,但真实 semantic adapter 还没接入。**
128 129
129 --- 130 ---
130 131
...@@ -172,9 +173,9 @@ flowchart TD ...@@ -172,9 +173,9 @@ flowchart TD
172 173
173 - exact lane 已优先复用 `ChromaprintMatcher` 174 - exact lane 已优先复用 `ChromaprintMatcher`
174 - semantic lane 还没有真实接入 `MERT / MuQ` 175 - semantic lane 还没有真实接入 `MERT / MuQ`
175 - runtime 就绪时,当前仍只会产出: 176 - runtime 就绪时,当前会产出:
176 - `model_name = semantic_runtime_ready_placeholder` 177 - `model_name = semantic_runtime_ready_placeholder`
177 - runtime 不就绪时,会走 178 - fallback 分支仍保留
178 - `model_name = local_wavehash_embed` 179 - `model_name = local_wavehash_embed`
179 180
180 ### fresh 依赖检查事实 181 ### fresh 依赖检查事实
......
...@@ -27,9 +27,11 @@ acr-engine/scripts/start_songcentric_shortest_path.sh 'postgres://d2:d2pass@127. ...@@ -27,9 +27,11 @@ acr-engine/scripts/start_songcentric_shortest_path.sh 'postgres://d2:d2pass@127.
27 - `window_count = 5` 27 - `window_count = 5`
28 - `matcher_fingerprint_count = 5` 28 - `matcher_fingerprint_count = 5`
29 - `fallback_fingerprint_count = 0` 29 - `fallback_fingerprint_count = 0`
30 - `semantic_runtime_available = false` 30 - `semantic_runtime_available = true`
31 - `semantic_runtime_missing = [torch, torchaudio, transformers]` 31 - `semantic_runtime_missing = []`
32 - `import_counts = media_entity:9 / audio_object:22 / feature_fact:24 / set_membership:9` 32 - `semantic_runtime_ready_count = 5`
33 - `semantic_fallback_count = 0`
34 - `import_counts = media_entity:9 / audio_object:22 / feature_fact:29 / set_membership:9`
33 35
34 --- 36 ---
35 37
...@@ -97,8 +99,8 @@ flowchart TD ...@@ -97,8 +99,8 @@ flowchart TD
97 - live PostgreSQL schema 已真实建表通过 99 - live PostgreSQL schema 已真实建表通过
98 - 真实目录 -> manifest -> import 已打通 100 - 真实目录 -> manifest -> import 已打通
99 - 真实目录 -> fingerprint enrichment -> import 已打通 101 - 真实目录 -> fingerprint enrichment -> import 已打通
100 - semantic lane 已做成 runtime-aware 102 - semantic lane 已做成 runtime-ready
101 - 当前 host `torch/torchaudio/transformers` 时会明确 fallback,不会伪装成功 103 - 当前 host 已能进入 runtime-ready placeholder 分支,下一步只差接真实 `MERT / MuQ`
102 - 当前 exact lane 已优先复用仓库内 `ChromaprintMatcher` 104 - 当前 exact lane 已优先复用仓库内 `ChromaprintMatcher`
103 105
104 --- 106 ---
...@@ -106,13 +108,14 @@ flowchart TD ...@@ -106,13 +108,14 @@ flowchart TD
106 ## 7. 当前最该继续什么 108 ## 7. 当前最该继续什么
107 109
108 ### 第一优先级 110 ### 第一优先级
109 把 semantic lane 从 fallback 升级成真实 encoder adapter,且不破坏现有宿主链。 111 把 semantic lane 从 `semantic_runtime_ready_placeholder` 升级成真实 encoder adapter,且不破坏现有宿主链。
110 112
111 ### 当前 host 事实 113 ### 当前 host 事实
112 - `torch` 缺失 114 - `torch` 已可导入
113 - `torchaudio` 缺失 115 - `torchaudio` 已可导入
114 - `transformers` 缺失 116 - `transformers` 已可导入
115 - 当前因此 `semantic_runtime_available = false` 117 - 当前 `semantic_runtime_available = true`
118 - 当前最新主链产出仍是 `semantic_runtime_ready_placeholder`,不是真实 `MERT / MuQ`
116 119
117 --- 120 ---
118 121
......