Promote the one-command song-centric runner as the default handoff path
Constraint: Reduce resume friction for future sessions by making the current live-validated runner the first-class entrypoint in docs and artifacts. Rejected: Keep the active song-centric workflow scattered across multiple lower-level commands in the handoff docs | It slows recovery and increases cognitive overhead. Confidence: high Scope-risk: narrow Directive: For current development, start with run_songcentric_directory_pipeline_live.py before dropping to the lower-level builder/enricher/importer commands. Tested: /usr/local/miniconda3/bin/python acr-engine/scripts/run_songcentric_directory_pipeline_live.py --dsn postgres://d2:d2pass@127.0.0.1:5432/d2 --schema acr_songcentric_test --input-root acr-engine/data/songcentric_builder_smoke --output-dir acr-engine/data/pgvector_eval/music20; git diff --check; /usr/local/miniconda3/bin/python scripts/check_markdown_links.py --root docs returned OK for 11 active markdown files Not-tested: alternate input roots beyond the current smoke directory
Showing
4 changed files
with
57 additions
and
1 deletions
| 1 | ## 2026-06-04 | 1 | ## 2026-06-04 |
| 2 | 2 | ||
| 3 | - 将 `run_songcentric_directory_pipeline_live.py` 提升为当前默认主线入口,并把 fresh runner 结果同步到 `docs/README.md`、`docs/start-here.md`、`docs/session-handoff.md`,降低下次 session 的恢复成本。 | ||
| 4 | |||
| 3 | - 新增 `acr-engine/scripts/run_songcentric_directory_pipeline_live.py`,把“真实目录 -> manifest -> 特征补全 -> live PostgreSQL 导入”收敛为一条可重复执行的 runner,并输出 exact/semantic backend 选择与导入计数摘要。 | 5 | - 新增 `acr-engine/scripts/run_songcentric_directory_pipeline_live.py`,把“真实目录 -> manifest -> 特征补全 -> live PostgreSQL 导入”收敛为一条可重复执行的 runner,并输出 exact/semantic backend 选择与导入计数摘要。 |
| 4 | 6 | ||
| 5 | - 升级 `enrich_songcentric_manifest_with_local_features.py` 为 runtime-aware 语义适配器选择:当前 host 上因缺少 `torch/torchaudio/transformers`,semantic lane 明确写入 `local_wavehash_embed` fallback,并把缺失依赖固化到 report/metadata 中。 | 7 | - 升级 `enrich_songcentric_manifest_with_local_features.py` 为 runtime-aware 语义适配器选择:当前 host 上因缺少 `torch/torchaudio/transformers`,semantic lane 明确写入 `local_wavehash_embed` fallback,并把缺失依赖固化到 report/metadata 中。 | ... | ... |
| ... | @@ -6,6 +6,19 @@ | ... | @@ -6,6 +6,19 @@ |
| 6 | 6 | ||
| 7 | ## 0. 新同学先做什么 | 7 | ## 0. 新同学先做什么 |
| 8 | 8 | ||
| 9 | 如果当前要继续 song-centric 主线,先跑: | ||
| 10 | |||
| 11 | ```bash | ||
| 12 | cd /workspace | ||
| 13 | /usr/local/miniconda3/bin/python acr-engine/scripts/run_songcentric_directory_pipeline_live.py \ | ||
| 14 | --dsn 'postgres://d2:d2pass@127.0.0.1:5432/d2' \ | ||
| 15 | --schema acr_songcentric_test \ | ||
| 16 | --input-root acr-engine/data/songcentric_builder_smoke \ | ||
| 17 | --output-dir acr-engine/data/pgvector_eval/music20 | ||
| 18 | ``` | ||
| 19 | |||
| 20 | 如果要回归旧的 planner/worker 合同,再跑: | ||
| 21 | |||
| 9 | ```bash | 22 | ```bash |
| 10 | cd /workspace/acr-engine | 23 | cd /workspace/acr-engine |
| 11 | /usr/local/miniconda3/bin/python scripts/run_planner_validation_commands_live.py \ | 24 | /usr/local/miniconda3/bin/python scripts/run_planner_validation_commands_live.py \ | ... | ... |
| ... | @@ -11,7 +11,27 @@ | ... | @@ -11,7 +11,27 @@ |
| 11 | 11 | ||
| 12 | ## 0. 下次启动先做什么 | 12 | ## 0. 下次启动先做什么 |
| 13 | 13 | ||
| 14 | 先执行: | 14 | 如果下次启动要继续当前主线(**song-centric 真实目录 -> feature -> PostgreSQL**),先执行: |
| 15 | |||
| 16 | ```bash | ||
| 17 | cd /workspace | ||
| 18 | /usr/local/miniconda3/bin/python acr-engine/scripts/run_songcentric_directory_pipeline_live.py \ | ||
| 19 | --dsn 'postgres://d2:d2pass@127.0.0.1:5432/d2' \ | ||
| 20 | --schema acr_songcentric_test \ | ||
| 21 | --input-root acr-engine/data/songcentric_builder_smoke \ | ||
| 22 | --output-dir acr-engine/data/pgvector_eval/music20 | ||
| 23 | ``` | ||
| 24 | |||
| 25 | 当前 fresh evidence: | ||
| 26 | - `song_count = 2` | ||
| 27 | - `window_count = 5` | ||
| 28 | - `matcher_fingerprint_count = 5` | ||
| 29 | - `fallback_fingerprint_count = 0` | ||
| 30 | - `semantic_runtime_available = false` | ||
| 31 | - `semantic_runtime_missing = [torch, torchaudio, transformers]` | ||
| 32 | - `import_counts = media_entity:9 / audio_object:22 / feature_fact:24 / set_membership:9` | ||
| 33 | |||
| 34 | 如果只是回归历史 Phase-1 planner/worker 合同,再执行: | ||
| 15 | 35 | ||
| 16 | ```bash | 36 | ```bash |
| 17 | cd /workspace/acr-engine | 37 | cd /workspace/acr-engine | ... | ... |
| ... | @@ -6,6 +6,27 @@ | ... | @@ -6,6 +6,27 @@ |
| 6 | 6 | ||
| 7 | ## 1. 先执行这条命令 | 7 | ## 1. 先执行这条命令 |
| 8 | 8 | ||
| 9 | 如果当前目标是验证 **song-centric 真实目录 -> feature -> PostgreSQL** 主链,优先跑: | ||
| 10 | |||
| 11 | ```bash | ||
| 12 | cd /workspace | ||
| 13 | /usr/local/miniconda3/bin/python acr-engine/scripts/run_songcentric_directory_pipeline_live.py \ | ||
| 14 | --dsn 'postgres://d2:d2pass@127.0.0.1:5432/d2' \ | ||
| 15 | --schema acr_songcentric_test \ | ||
| 16 | --input-root acr-engine/data/songcentric_builder_smoke \ | ||
| 17 | --output-dir acr-engine/data/pgvector_eval/music20 | ||
| 18 | ``` | ||
| 19 | |||
| 20 | 当前 fresh evidence: | ||
| 21 | - `song_count = 2` | ||
| 22 | - `window_count = 5` | ||
| 23 | - `matcher_fingerprint_count = 5` | ||
| 24 | - `fallback_fingerprint_count = 0` | ||
| 25 | - `semantic_runtime_available = false` | ||
| 26 | - `import_counts.feature_fact = 24` | ||
| 27 | |||
| 28 | 如果你当前目标是验证老的 Phase-1 planner/worker 合同,再跑下面这条: | ||
| 29 | |||
| 9 | ```bash | 30 | ```bash |
| 10 | cd /workspace/acr-engine | 31 | cd /workspace/acr-engine |
| 11 | /usr/local/miniconda3/bin/python scripts/run_planner_validation_commands_live.py \ | 32 | /usr/local/miniconda3/bin/python scripts/run_planner_validation_commands_live.py \ | ... | ... |
-
Please register or sign in to post a comment