Преглед изворни кода

docs: align P6 status with 21-table contract

Sam Lee пре 1 месец
родитељ
комит
f12ad28e1f

+ 5 - 5
product_documents/抖音游走策略/douyin_walk_strategy.v1.json

@@ -3,19 +3,19 @@
   "strategy_id": "douyin_walk_strategy_v1",
   "strategy_version": "V1.0",
   "platform": "douyin",
-  "status": "draft",
+  "status": "active",
   "source_of_truth": "product_documents/抖音游走策略/douyin_walk_strategy.v1.json",
-  "notes": "P6 planned runtime source of truth. Excel is the human-maintained source. P6 code stage will enable runtime loading.",
+  "notes": "P6 runtime source of truth. Excel is the human-maintained source. The current schema and DB validator use the 21-table runtime contract.",
   "walk_strategy_meta": [
     {
       "strategy_id": "douyin_walk_strategy_v1",
       "strategy_version": "V1.0",
       "platform": "douyin",
-      "status": "draft",
+      "status": "active",
       "owner": "ContentFindAgent",
       "source_json_path": "product_documents/抖音游走策略/douyin_walk_strategy.v1.json",
       "description": "P6 walk strategy for bounded query pagination, author edge and hashtag edge.",
-      "notes": "P9 and P10 are merged into P6."
+      "notes": "P9 and P10 are merged into P6. This strategy is active for the current V1 runtime."
     }
   ],
   "walk_node_catalog": [
@@ -103,7 +103,7 @@
     {"policy_id": "tag_query_v1", "edge_id": "hashtag_to_query", "query_generation_method": "tag_query", "source_field": "hashtag", "dedup_policy": "normalize_exact_and_recent_run", "max_queries": 10, "notes": "Tag query does not pollute initial P2 item queries."}
   ],
   "walk_fact_contract": [
-    {"runtime_file": "walk_actions.jsonl", "db_table": "content_agent_walk_actions", "required_fields": ["record_schema_version", "run_id", "policy_run_id", "walk_action_id", "edge_id", "walk_action", "walk_status"], "json_fields": ["raw_payload"], "unique_key": ["run_id", "policy_run_id", "walk_action_id"], "notes": "Planned P6 runtime file and DB table; not enabled in current 15-table validator."},
+    {"runtime_file": "walk_actions.jsonl", "db_table": "content_agent_walk_actions", "required_fields": ["record_schema_version", "run_id", "policy_run_id", "walk_action_id", "edge_id", "walk_action", "walk_status"], "json_fields": ["raw_payload"], "unique_key": ["run_id", "policy_run_id", "walk_action_id"], "notes": "Active P6 runtime file and DB table; enabled in the current 21-table validator."},
     {"runtime_file": "source_path_records.jsonl", "db_table": "content_agent_source_path_records", "required_fields": ["run_id", "policy_run_id", "source_path_record_id", "source_path_type"], "json_fields": ["raw_payload"], "unique_key": ["run_id", "policy_run_id", "source_path_record_id"], "notes": "Existing source path fact layer."},
     {"runtime_file": "search_clues.jsonl", "db_table": "content_agent_search_clues", "required_fields": ["run_id", "policy_run_id", "search_query_id", "search_query_effect_status"], "json_fields": ["raw_payload"], "unique_key": ["run_id", "policy_run_id", "clue_id"], "notes": "Existing query effect fact layer."}
   ]

+ 26 - 26
tech_documents/工程落地/04_V1阶段开发计划.md

@@ -6,7 +6,7 @@
 
 ## P0 DB Schema + Service 边界 + 运行壳固定
 
-目标:先让云上 MySQL、15 张表、Service 边界、运行写入方式、策略执行身份、结构版本、字段晋升规则和发布任务边界稳定,后续业务模块只关心标准输入输出。
+目标:先让云上 MySQL、`content_agent_*` 表、Service 边界、运行写入方式、策略执行身份、结构版本、字段晋升规则和发布任务边界稳定,后续业务模块只关心标准输入输出。
 
 当前真实状态(P8C / P8D 后):
 
@@ -20,7 +20,7 @@
 - 已实现:代码里已生成 `policy_run_id`,并从 `pattern_seed_pack.json` 开始贯穿搜索词、发现内容、规则判断、来源路径、最终输出和策略复盘。
 - 已实现:代码里已写入 `schema_version` / `record_schema_version`,运行文件校验会检查结构版本和策略执行 ID 是否缺失或不一致。
 - 已实现:规则包加载会校验真实 `strategy_version`,未知版本会失败,不再只回显请求字段。
-- 未实现 / 部分实现:已有 DB DDL 草案,但云库尚未实际创建 `content_agent_*` 表;没有 migration、`DatabaseRuntimeStore`
+- 已实现:`content_agent_*` 表已在云库接入,当前 V1 合同为 21 张表;`DatabaseRuntimeStore` 已接入 runtime / DB 写入
 - 未实现 / 部分实现:没有从 `demand_content` 需求池直接创建 CFA run。
 - 未实现 / 部分实现:没有发布任务表和 `PublishJobService`。
 - 未实现 / 部分实现:没有 app factory / DI、标准 `error_code`、运行状态表、append-only 运行事件。
@@ -33,7 +33,7 @@
 - V1 使用薄 FastAPI + LangGraph + 模块化单体。
 - 使用现有云上 MySQL:`content-deconstruction-supply`。
 - 新表统一使用 `content_agent_*` 前缀,避免污染旧表。
-- 一次性准备 15 张表:12 张 V1 最小闭环表 + 3 张 V1.1 预留表
+- 当前 V1 运行合同为 21 张 `content_agent_*` 表;P0 原始基础表口径只作为历史拆分背景,不再作为当前验收口径
 - 本地 JSON / JSONL 继续作为开发调试、兼容读取和回放导出;生产事实进入 DB。
 - `final_output` 是最终视图快照,不是唯一事实源。
 - 发布链路采用“先入库,再生成 `publish_jobs`,再调下游计划接口,再回写状态”。
@@ -104,7 +104,7 @@
 - `LocalRuntimeFileStore.append_jsonl()`
 - `LocalRuntimeFileStore.read_json()`
 - `LocalRuntimeFileStore.read_jsonl()`
-- 后续 `DatabaseRuntimeStore`
+- `DatabaseRuntimeStore`
 - 后续 `DemandSourceService`
 - 后续 `PublishJobService`
 - 后续 `PolicyRunService`
@@ -112,7 +112,7 @@
 
 开发顺序:
 
-1. P0A:准备并执行 15 张 `content_agent_*` 表的 DDL;当前账号已有库级建表权限,若严格验收失败再按错误补权限或修 DDL
+1. P0A:基础 `content_agent_*` 表 DDL 已执行;当前 V1 schema 已随 P6-P8 扩展到 21 张表,严格验收以当前 validator 为准
 2. P0B:固定 Service 边界,业务模块不直接操作 DB。
 3. P0C:固定 `policy_run_id` 数据流,`source_context` 保持 run 级,从 `pattern_seed_pack` 开始进入策略执行范围。
 4. P0D:固定 `schema_version` / `record_schema_version`,并让 validator 检查缺失和不一致。
@@ -133,7 +133,7 @@
 
 输出:
 
-- 15 张 `content_agent_*` 表,或可执行 DDL。
+- 当前 21 张 `content_agent_*` 表和可回放 DDL。
 - P0 DB 与 Service 边界文档。
 - API 运行摘要。
 - DB 事实记录和本地 JSON/JSONL 兼容导出。
@@ -826,14 +826,14 @@ P5E 策略版本与回放:
 
 当前真实状态:
 
+- 已实现:P6 已接入 Walk Engine,能够在同一 run 内执行 bounded walk loop。
 - 已实现:`walk_strategy` 能生成建议动作和来源路径基础记录。
-- 已实现:`run_record` 能写 `run_events.jsonl`、`source_path_records.jsonl`、`search_clues.jsonl`。
+- 已实现:`run_record` 能写 `walk_actions.jsonl`、`run_events.jsonl`、`source_path_records.jsonl`、`search_clues.jsonl`。
 - 已实现:P5 已把 query 效果收敛为 `success / pending / failed / rule_blocked`。
-- 未实现 / 部分实现:没有真正 Walk Engine,没有执行下一跳。
-- 未实现 / 部分实现:没有独立 `walk_actions.jsonl` / `content_agent_walk_actions` 事实层。
-- 未实现 / 部分实现:没有执行 `douyin_walk_strategy.v1.json` 里的 edge、budget、stop、retry、rule pack binding。
-- 未实现 / 部分实现:作者边和 tag 边尚未作为 P6 edge 执行。
-- 当前真实 DB:仍是 15 张 `content_agent_*` 表,`content_agent_walk_actions` 只进入 P6 DDL 草案,当前不执行。
+- 已实现:`walk_actions.jsonl` / `content_agent_walk_actions` 已作为 P6 事实层接入。
+- 已实现:代码读取 `douyin_walk_strategy.v1.json`,并校验 edge、budget、stop、retry、rule pack binding。
+- 已实现:作者边和 tag 边已作为 P6 edge 执行,并重新进入 P4/P5 链路。
+- 当前真实 DB:当前 strict DB validator 使用 21 张 `content_agent_*` 表,包含 `content_agent_walk_actions`。
 
 已拍板:
 
@@ -853,7 +853,7 @@ P5E 策略版本与回放:
 - 单条 edge 失败只记 `walk_status=failed`,不让整个 run 失败;只有核心 runtime / DB / schema 写入失败,才让 run 失败。
 - P6 V1 第一版真实执行作者边和 tag 边。
 - P6 同一个 run 内同步小预算完成,不引入 worker / queue。
-- 新增 `walk_actions.jsonl` 与 `content_agent_walk_actions` 作为 planned 事实层;P6 代码阶段再执行 DDL 和 validator 升级。
+- `walk_actions.jsonl` 与 `content_agent_walk_actions` 已作为正式事实层接入;DDL、schema registry、runtime 文件列表、DB runtime store 和 DB validator 已同步升级。
 - 当前无 `demand_find_author`,P6 V1 不依赖历史作者库,只从本 run 已发现视频的 `platform_author_id` 出发。
 
 配置来源:
@@ -915,14 +915,14 @@ P5 与 P6 的关系:
 
 开发顺序:
 
-1. P6-0:文档、Excel、JSON、DDL 草案收敛
-2. P6A:读取和校验 `douyin_walk_strategy.v1.json`。
-3. P6B:启用 `walk_actions.jsonl` 和 `content_agent_walk_actions`。
-4. P6C:实现同 run bounded walk loop。
-5. P6D:实现 `query_next_page` 分页边。
-6. P6E:实现作者边,即原 P9。
-7. P6F:实现 tag 边,即原 P10。
-8. P6G:实现 Path / Budget / Stop 验证。
+1. P6-0:文档、Excel、JSON、DDL 记录收敛。已完成
+2. P6A:读取和校验 `douyin_walk_strategy.v1.json`。已完成。
+3. P6B:启用 `walk_actions.jsonl` 和 `content_agent_walk_actions`。已完成。
+4. P6C:实现同 run bounded walk loop。已完成。
+5. P6D:实现 `query_next_page` 分页边。已完成。
+6. P6E:实现作者边,即原 P9。已完成。
+7. P6F:实现 tag 边,即原 P10。已完成。
+8. P6G:实现 Path / Budget / Stop 验证。已完成。
 
 本阶段不处理:
 
@@ -935,17 +935,17 @@ P5 与 P6 的关系:
 
 输出:
 
-- planned:`walk_actions.jsonl`
-- planned:`content_agent_walk_actions`
+- 已接入:`walk_actions.jsonl`
+- 已接入:`content_agent_walk_actions`
 - 继续写:`run_events.jsonl`
 - 继续写:`source_path_records.jsonl`
 - 继续写:`search_clues.jsonl`
 
 验证:
 
-- P6-0 后 `validate_schema_registry.py` 仍按当前 15 表通过。
-- P6-0 后全量测试仍通过,证明没有影响 P5。
-- P6 代码阶段后,`walk_actions.jsonl` 和 `source_path_records.jsonl` 能互相追溯。
+- 当前 `validate_schema_registry.py` 按 21 表通过。
+- 当前全量测试通过,证明没有影响 P5。
+- `walk_actions.jsonl` 和 `source_path_records.jsonl` 能互相追溯。
 - 作者边和 tag 边生成的新内容必须重新经过 P4 回扣和 P5 判断。
 
 测试用例:

+ 13 - 13
tech_documents/工程落地/05_阶段验收清单.md

@@ -116,7 +116,7 @@ content_agent_strategy_reviews
 - `sql/content_agent_schema.sql`
 - `scripts/validate_content_agent_db.py`
 - `tech_documents/工程落地/01_P0_DB与Service边界.md`
-- 云上 MySQL 中 15 张 `content_agent_*` 表,或明确记录尚未执行 DDL。
+- 云上 MySQL 中当前 21 张 `content_agent_*` 表,或明确记录尚未执行的后续 DDL。
 - API 能返回 `run_id`、`policy_run_id`、`strategy_version`、`policy_bundle_id`。
 - DB 写入边界和本地 JSON/JSONL 兼容导出边界明确。
 - mock 平台输入链路能跑完;P0E 后必须同时验证 DB 写入。
@@ -165,8 +165,8 @@ API 检查:
 通过标准:
 
 - DB 连接成功。
-- `SHOW TABLES LIKE 'content_agent_%'` 返回 15 张表。
-- CFA 运行账号对 15 张表至少有 `SELECT/INSERT/UPDATE`。
+- `SHOW TABLES LIKE 'content_agent_%'` 返回当前 21 张表。
+- CFA 运行账号对当前 21 张表至少有 `SELECT/INSERT/UPDATE`。
 - 按 `ext_data.run_label` 查询测试批次返回 102 条。
 - 每张 `content_agent_*` 表都有 `id`、`schema_version`、`run_id`、`created_at`。
 - `content_agent_source_contexts` 不需要 `policy_run_id`,因为它是 run 级输入事实。
@@ -445,7 +445,7 @@ uv run pytest tests/test_rule_pack_reading.py -q
 - 已拍板:P6 另起游走策略配置体系,不混入 P5 规则包映射。
 - 已拍板:P6 可以通过 `walk_rule_pack_binding` 人工配置 edge 绑定 P5 规则包。
 - 已拍板:P6 V1 不依赖历史作者库。
-- P6-0 不执行 DDL,不把当前 DB validator 从 15 表切到 16 表
+- P6B 已执行 DDL 接入并同步 validator;当前 DB validator 使用 21 表合同
 
 P6-0 输出:
 
@@ -453,14 +453,14 @@ P6-0 输出:
 - `tech_documents/游走策略/02_游走策略表字段说明.md`
 - `tech_documents/游走策略/03_P6当前策略初稿.md`
 - `tech_documents/游走策略/04_P6阶段开发计划.md`
-- `tech_documents/游走策略/05_content_agent_walk_actions_DDL草案.md`
+- `tech_documents/游走策略/05_content_agent_walk_actions_DDL记录.md`
 - `tech_documents/游走策略/游走策略配置表.xlsx`
 - `product_documents/抖音游走策略/douyin_walk_strategy.v1.json`
 
-计划 runtime / DB:
+当前 runtime / DB:
 
-- planned:`walk_actions.jsonl`
-- planned:`content_agent_walk_actions`
+- 已接入:`walk_actions.jsonl`
+- 已接入:`content_agent_walk_actions`
 - 当前继续使用:`source_path_records.jsonl`
 - 当前继续使用:`search_clues.jsonl`
 - 当前继续使用:`run_events.jsonl`
@@ -477,10 +477,10 @@ uv run pytest -q
 
 - Excel 有 13 个业务 sheet,字段带中文注释。
 - JSON 有 13 个 section,能表达 edge、budget、stop、retry、rule pack binding。
-- DDL 只在草案文档中,不进入当前 DB
+- `content_agent_walk_actions` 已进入当前 DB、schema registry、runtime 文件列表和 DB validator
 - P9/P10 不再作为独立后续阶段。
 
-P6 代码阶段待补测试:
+P6 已覆盖测试:
 
 - `query_next_page` 只在 `success + has_more + next_cursor` 时生成。
 - `rule_blocked` 不生成作者 / tag / 翻页动作。
@@ -492,9 +492,9 @@ P6 代码阶段待补测试:
 
 通过标准:
 
-- P6-0 不影响 P5 代码和测试。
+- P6 不影响 P5 代码和测试。
 - P6 配置体系能独立维护,不复制 P5 判断规则。
-- 后续 P6 代码阶段可以直接按配置实现 Walk Engine。
+- P6 Walk Engine 已按配置接入
 
 ## 9. P7 结果沉淀与来源反查模块
 
@@ -636,7 +636,7 @@ P9 作者一跳和 P10 Tag 扩散不再作为独立验收阶段。
 | P9 作者一跳 | P6 作者边 | 作者作品重新进入 P4/P5,作者沉淀依赖作品级回扣数量和比例 |
 | P10 Tag 扩散 | P6 tag 边 | 强相关 tag 生成新 query,泛 tag / 风险 tag / 不回扣 tag 不扩 |
 
-P6 代码阶段建议新增验证命令:
+P6 当前验证命令:
 
 ```bash
 uv run pytest tests/test_walk_strategy_config.py tests/test_walk_actions_runtime.py tests/test_walk_engine_author.py tests/test_walk_engine_tag.py -q

+ 28 - 28
tech_documents/工程落地/implementation_briefs/P6/00_P6_Brief_Index.md

@@ -1,6 +1,6 @@
 # P6 Implementation Brief Index
 
-状态:本目录是 P6 游走策略实施前的短实施简报集合。它不是新的产品计划,也不是替代 `tech_documents/游走策略/` 的设计文档;长期事实仍以 `tech_documents/工程落地/04_V1阶段开发计划.md`、`tech_documents/游走策略/`、`product_documents/抖音游走策略/douyin_walk_strategy.v1.json`、`product_documents/规则包/douyin_rule_packs.v1.json`、当前代码和真实 DB validator 为准。
+状态:本目录最初是 P6 游走策略实施前的短实施简报集合;当前已完成 P6 落地后的状态收敛。本目录只保留实施路径和验收口径,当前事实以 `tech_documents/工程落地/04_V1阶段开发计划.md`、`tech_documents/游走策略/`、`product_documents/抖音游走策略/douyin_walk_strategy.v1.json`、`product_documents/规则包/douyin_rule_packs.v1.json`、当前代码和真实 DB validator 为准。
 
 ## 目标
 
@@ -33,30 +33,30 @@ P6 只处理:
 
 ## 现有证据
 
-- `content_agent/graph.py`:`build_run_graph()` 当前是固定 DAG:`load_source -> plan_queries -> search_platform -> build_discovered_content -> recall_pattern -> load_policy -> evaluate_rules -> plan_walk -> record_run -> commit_results -> review_strategy`,没有 bounded walk loop
-- `content_agent/business_modules/walk_strategy.py`:当前 `run()` 只把 `rule_decisions` 映射为建议性的 `walk_actions` 和 `source_path_record_basis`,没有执行分页、作者作品或 tag query,也没有 `walk_action_id`
-- `content_agent/models.py`:`RunState.walk_actions` 只是 `list[dict]`,没有独立 WalkAction 模型或状态合同。
-- `content_agent/run_service.py`:`RunService.start_run()` 只调用一次 graph,没有子 run,也没有 bounded loop
-- `content_agent/business_modules/run_record/recorder.py`:`run()` 写 `run_events / source_path_records / search_clues`,但没有 `walk_actions.jsonl`。
-- `content_agent/integrations/runtime_files.py`:`RUNTIME_FILENAMES` 当前不包含 `walk_actions.jsonl`。
-- `content_agent/integrations/database_runtime.py`:当前没有 `walk_actions.jsonl -> content_agent_walk_actions` 映射。
+- `content_agent/graph.py`:P6 已在同一 `run_id / policy_run_id` 内接入 bounded walk loop,保留 P1-P5 主链路并循环执行可执行 edge
+- `content_agent/business_modules/walk_strategy.py`:当前 `run()` 已能生成带 `walk_action_id` 的结构化 walk actions,并支持分页、作者和 tag 边的行动规划 / 结果记录
+- `content_agent/models.py`:`RunState.walk_actions` 承载 P6 walk action 状态合同。
+- `content_agent/run_service.py`:`RunService.start_run()` 仍使用同一 run,不创建子 run;P6 loop 在 graph 内完成
+- `content_agent/business_modules/run_record/recorder.py`:`run()` 写 `run_events / source_path_records / search_clues / walk_actions.jsonl`。
+- `content_agent/integrations/runtime_files.py`:`RUNTIME_FILENAMES` 包含 `walk_actions.jsonl`。
+- `content_agent/integrations/database_runtime.py`:已包含 `walk_actions.jsonl -> content_agent_walk_actions` 映射。
 - `content_agent/integrations/policy_json.py`:当前仍读取 `product_documents/抖音游走策略/douyin_available_walk_strategy.v1.json` 参与 `policy_bundle_hash` 和 source ref;P6A 迁移前旧 JSON 不能直接删除。
 - `content_agent/integrations/douyin.py`:`CrawapiDouyinClient.search()` 是关键词搜索入口,使用默认 cursor 拉第一页并保留 `has_more / next_cursor`;当前没有独立分页方法、作者作品方法或 tag query 方法。
-- `sql/content_agent_schema.sql`:当前没有 `content_agent_walk_actions`。
+- `sql/content_agent_schema.sql`:已包含 `content_agent_walk_actions`。
 - `sql/content_agent_schema.sql`:`content_agent_search_clues` 使用 `clue_id`,不是历史草案里写错的 `search_clue_id`。
-- `tech_documents/数据库字段总览/content_agent_schema_registry.json`:当前 schema registry 仍是 15 张正式表、12 个 runtime 文件的当前态。
-- `tech_documents/数据库字段总览/content_agent_schema_registry_count_report.json` 和 `.md`:当前仍是旧计数报告,不能作为 P6B 后的验收依据;P6B 升级 runtime / table count 后必须重新生成或明确废弃旧报告
-- `product_documents/抖音游走策略/douyin_walk_strategy.v1.json`:P6 draft runtime source,`strategy_version=V1.0`,包含 13 个 section,`walk_fact_contract` 中 `search_clues` unique key 仍有 `search_clue_id` 草案错误,P6A/P6B 必须修正
-- `tech_documents/游走策略/05_content_agent_walk_actions_DDL草案.md`:DDL 草案当前把 DB `schema_version` 默认写成 `runtime_record.v1`,P6B 必须修为 `content_agent.v1`;runtime 行才使用 `record_schema_version=runtime_record.v1`。
-- `tech_documents/工程落地/04_V1阶段开发计划.md`:已拍板 `douyin_walk_strategy.v1.json` 是 P6 runtime 配置目标,旧 JSON 只作历史参考;P6 代码阶段再接第 16 表
-- 真实 DB validator 当前仍显示 15/15 表、`schema_ready=true`;本轮 brief 不改变真实 DB
+- `tech_documents/数据库字段总览/content_agent_schema_registry.json`:当前 schema registry 已是 21 张正式表、13 个 runtime 文件的当前态。
+- `tech_documents/数据库字段总览/content_agent_schema_registry_count_report.json` 和 `.md`:当前计数报告已与 21 表合同对齐
+- `product_documents/抖音游走策略/douyin_walk_strategy.v1.json`:P6 active runtime source,`strategy_version=V1.0`,包含 13 个 section,`walk_fact_contract.search_clues.unique_key` 使用正式 `clue_id`
+- `tech_documents/游走策略/05_content_agent_walk_actions_DDL记录.md`:DDL 记录已明确 DB `schema_version=content_agent.v1`,runtime 行使用 `record_schema_version=runtime_record.v1`。
+- `tech_documents/工程落地/04_V1阶段开发计划.md`:已收敛为当前 P6 21 表已接入口径,旧 JSON 只作历史参考
+- 真实 DB validator 当前应显示 21/21 表、`schema_ready=true`
 
 sub-agent 交叉验证结论:
 
-- 代码侧 sub-agent 确认:当前 P6 只有“建议动作”,没有 Walk Engine、WalkAction fact layer、分页 edge、作者 edge 或 tag edge execution。
+- 代码侧 sub-agent 确认:P6 已有 Walk Engine、WalkAction fact layer、分页 edge、作者 edge 和 tag edge execution。
 - 文档 / JSON sub-agent 确认:P6 已拍板为独立游走策略配置体系,P9 / P10 已归并;旧 JSON 仍有引用,不能在 P6A 前直接删除。
-- DB / schema sub-agent 确认:当前 15 表 schema ready;第 16 表必须作为 P6B 独立小阶段同步升级 SQL、registry、runtime、DB store、validator 和测试。
-- DB / schema sub-agent 确认:旧 count report 有漂移风险,P6B 不得拿旧报告证明新 schema ready
+- DB / schema sub-agent 确认:当前 21 表 schema ready;`content_agent_walk_actions` 已同步 SQL、registry、runtime、DB store、validator 和测试。
+- DB / schema sub-agent 确认:计数报告应按当前 21 表合同使用,旧计数口径不得再作为 P6 当前证据
 
 ## 修改范围
 
@@ -86,7 +86,7 @@ sub-agent 交叉验证结论:
 - 本轮不执行 DDL。
 - 本轮不修改真实 DB。
 - 本轮不修改 `scripts/validate_content_agent_db.py`。
-- 本轮不把 strict DB validator 从 15 表改成 16 表
+- 本轮不改 strict DB validator;当前 validator 已是 21 表口径
 - 本轮不删旧 `douyin_available_walk_strategy.v1.json`。
 - 本轮不启用 Author / Hashtag / Path / Budget runtime dispatch。
 - 本轮不把 Excel 作为 runtime source。
@@ -120,7 +120,7 @@ sub-agent 交叉验证结论:
 - `product_documents/抖音游走策略/runtime_v1_records_schema.md`
 - `tech_documents/游走策略/01_游走策略体系说明.md`
 - `tech_documents/游走策略/04_P6阶段开发计划.md`
-- `tech_documents/游走策略/05_content_agent_walk_actions_DDL草案.md`
+- `tech_documents/游走策略/05_content_agent_walk_actions_DDL记录.md`
 - `product_documents/规则包/douyin_rule_packs.v1.json`
 - `tech_documents/工程落地/04_V1阶段开发计划.md`
 - `tech_documents/工程落地/05_阶段验收清单.md`
@@ -141,7 +141,7 @@ P6 全局合同:
 - `RuleDecision` 基础格式继续沿用,但 `decision_target_type` 可以是 `Content / Author / Hashtag / Path / Budget`。
 - 单条 edge 失败只写 `walk_status=failed`;只有核心 runtime / DB / schema 写入失败才让 run 失败。
 
-P6 planned runtime:
+P6 active runtime:
 
 - `walk_actions.jsonl`
 - `content_agent_walk_actions`
@@ -149,7 +149,7 @@ P6 planned runtime:
 - `search_clues.jsonl` 继续使用 `clue_id`。
 - `final_output.author_assets` 只在作者沉淀条件满足时写入。
 
-P6 planned edge:
+P6 active edge:
 
 - `query_next_page`
 - `search_page_to_content`
@@ -164,7 +164,7 @@ P6 planned edge:
 ## 实施步骤
 
 1. P6A 先做配置读取和 JSON validator,不改 DB、不执行 edge。
-2. P6B 再接 `walk_actions.jsonl` 和第 16 表,作为独立 DDL / validator 小阶段
+2. P6B 已接 `walk_actions.jsonl` 和 `content_agent_walk_actions`,并纳入当前 21 表 DDL / validator 合同
 3. P6C 先做最小 planner,再改 bounded walk loop。
 4. P6D 接分页 edge。
 5. P6E 接作者 edge 和作者作品判断。
@@ -200,7 +200,7 @@ uv run pytest -q
 - P6 brief 中没有固定 section:brief 格式问题。
 - 敏感赋值命中:brief 内容问题,应只写 env key 名和脱敏要求。
 - `validate_schema_registry.py` 失败:当前 registry / SQL / runtime 文件漂移,不能归因 P6 brief。
-- DB validator 不是 15/15:真实 DB 或 validator 当前态被提前改动,说明 P6B 边界被破坏
+- DB validator 不是 21/21:真实 DB、schema registry 或 validator 当前态漂移
 - `jq` 输出 `walk_fact_contract` 仍含 `search_clue_id`:P6A/P6B 待修复项,brief 应明确不得沿用。
 - 旧 JSON 被 P6A 后仍读取:runtime source 迁移未完成。
 - P6 新 run 无法追溯 `walk_action_id`:source path 合同未实现。
@@ -208,12 +208,12 @@ uv run pytest -q
 
 ## sub-agent 交叉验证要点
 
-- 代码侧确认:graph 仍是线性固定 DAG
-- 代码侧确认:`walk_strategy.py` 只产生建议动作,不执行 edge
-- 代码侧确认:runtime / DB store 当前没有 `walk_actions.jsonl`。
+- 代码侧确认:graph 已包含 bounded walk loop
+- 代码侧确认:`walk_strategy.py` 已产生结构化 walk actions 并支持 P6 edge 执行结果
+- 代码侧确认:runtime / DB store 已包含 `walk_actions.jsonl`。
 - 文档 / JSON 侧确认:新 JSON 是 P6 runtime source,旧 JSON 是 historical reference。
 - 文档 / JSON 侧确认:P9 / P10 已归并到 P6。
-- DB 侧确认:当前 15 表 strict validator 必须继续通过。
+- DB 侧确认:当前 21 表 strict validator 必须继续通过。
 - DB 侧确认:`search_clues` 正式唯一键使用 `clue_id`。
 - DB 侧确认:旧 count report 不得作为 P6B 后验收证据。
 - 测试侧确认:P6 后续必须新增 config、runtime、graph loop、pagination、author、tag、budget、drift guard 测试。

+ 10 - 10
tech_documents/工程落地/implementation_briefs/P6/P6A_WalkStrategyConfig_And_RuntimeSource.md

@@ -1,6 +1,6 @@
 # P6A WalkStrategy Config And Runtime Source Implementation Brief
 
-状态:本 brief 覆盖 P6A 配置读取、JSON validator 和 runtime source 切换。P6A 不执行 edge、不接 DB、不启用 `walk_actions.jsonl`
+状态:本 brief 覆盖 P6A 配置读取、JSON validator 和 runtime source 切换。P6A 已完成;当前 P6 runtime source 是 `douyin_walk_strategy.v1.json`,`walk_actions.jsonl` 已在 P6B 以后接入当前 21 表合同
 
 ## 目标
 
@@ -12,19 +12,19 @@
 
 ## 现有证据
 
-- `product_documents/抖音游走策略/douyin_walk_strategy.v1.json`:已存在,`source_of_truth` 指向自身,`status=draft`,`strategy_version=V1.0`,包含 10 条 `walk_edge_catalog`
-- `product_documents/抖音游走策略/douyin_walk_strategy.v1.json`:已有 13 个配置 section,但 `walk_fact_contract.search_clues.unique_key` 仍写 `search_clue_id`,与正式 DB 的 `clue_id` 不一致
-- `content_agent/integrations/policy_json.py`:当前 `JsonPolicyBundleStore.load_policy_bundle()` 仍读取 `douyin_available_walk_strategy.v1.json` 参与 `strategy_source_ref` 和 `policy_bundle_hash`
-- `tests/test_policy_dispatch.py`:当前测试 fixture 仍构造 `douyin_available_walk_strategy.v1.json`
-- `product_documents/README.md`:当前仍把 `douyin_available_walk_strategy.v1.json` 描述为“抖音可以从哪些节点继续扩展”
+- `product_documents/抖音游走策略/douyin_walk_strategy.v1.json`:已存在,`source_of_truth` 指向自身,`status=active`,`strategy_version=V1.0`,包含 13 个配置 section
+- `product_documents/抖音游走策略/douyin_walk_strategy.v1.json`:`walk_fact_contract.search_clues.unique_key` 已使用正式 DB 的 `clue_id`
+- `content_agent/integrations/policy_json.py`:P6 runtime 不再把 `douyin_available_walk_strategy.v1.json` 当作当前游走配置源
+- `tests/test_policy_dispatch.py`:测试应使用新 P6 runtime source 或明确 historical fixture 语义
+- `product_documents/README.md`:应明确 `douyin_walk_strategy.v1.json` 是 P6 runtime source,旧 JSON 只作历史参考
 - `tech_documents/游走策略/01_游走策略体系说明.md`:已明确 P6 是独立游走策略配置体系,旧 JSON 是历史参考。
 - `product_documents/规则包/douyin_rule_packs.v1.json`:P5 rule packs 保留 Content / Author / Hashtag / Path / Budget,但 V1 runtime 只 dispatch Content;P6 binding 只引用这些包,不复制内部规则。
 
 sub-agent 交叉验证结论:
 
-- 代码侧确认:当前没有 `WalkStrategyStore`
-- 文档 / JSON 侧确认:`douyin_walk_strategy.v1.json` 是新 P6 runtime 配置目标,旧 JSON 仍被代码和测试引用
-- DB / schema 侧确认:P6A 不需要 DDL,当前 validator 应继续保持 15 表
+- 代码侧确认:当前已有 P6 strategy loading / validation 路径
+- 文档 / JSON 侧确认:`douyin_walk_strategy.v1.json` 是 P6 runtime 配置源,旧 JSON 只作 historical reference
+- DB / schema 侧确认:当前 validator 是 21 表口径;P6A 本身不单独执行 DDL
 
 ## 修改范围
 
@@ -151,4 +151,4 @@ uv run --with pymysql python scripts/validate_content_agent_db.py --env-file .en
 - 代码侧确认:P6 runtime code 只读新 JSON。
 - 文档 / JSON 侧确认:README 和阶段计划不会误导后续 agent 读取旧 JSON。
 - 文档 / JSON 侧确认:P5 `strategy_version` 和 P6 `walk_strategy_version` 被分开。
-- DB 侧确认:P6A 不改变 15 表 schema ready 状态。
+- DB 侧确认:P6A 不单独改变当前 21 表 schema ready 状态。

+ 24 - 24
tech_documents/工程落地/implementation_briefs/P6/P6B_WalkAction_Runtime_And_DB.md

@@ -1,35 +1,35 @@
 # P6B WalkAction Runtime And DB Implementation Brief
 
-状态:本 brief 覆盖 `walk_actions.jsonl` 和 `content_agent_walk_actions` 从 planned 进入正式 runtime / DB 的小阶段。P6B 是第 16 表接入阶段,必须拆小步执行
+状态:本 brief 覆盖 `walk_actions.jsonl` 和 `content_agent_walk_actions` 进入正式 runtime / DB 的小阶段。P6B 已完成;当前 strict DB validator 使用 21 表合同
 
 ## 目标
 
 - 新增 `walk_actions.jsonl` runtime 文件。
 - 新增 `content_agent_walk_actions` DB 表。
 - 让 `DatabaseRuntimeStore` 支持 walk action 写入 / 查询。
-- 让本地 runtime validator 和 schema registry 严格理解第 16 表
+- 让本地 runtime validator 和 schema registry 严格理解 `content_agent_walk_actions`
 - 确保每条 P6 source path 能反查 `walk_action_id`。
 
 ## 现有证据
 
-- `tech_documents/游走策略/05_content_agent_walk_actions_DDL草案.md`:已有 DDL 草案,但 `schema_version` 默认值写成 `runtime_record.v1`,需要修正为 DB 表口径 `content_agent.v1`。
-- `tech_documents/游走策略/05_content_agent_walk_actions_DDL草案.md`:草案使用 `TIMESTAMP`,正式表多使用 `DATETIME(3)`
-- `tech_documents/游走策略/05_content_agent_walk_actions_DDL草案.md`:`raw_payload JSON NULL` 与现有 runtime 表风格需要统一判断
-- `product_documents/抖音游走策略/runtime_v1_records_schema.md`:`walk_actions.jsonl` 已标为 P6 代码阶段启用
+- `tech_documents/游走策略/05_content_agent_walk_actions_DDL记录.md`:已记录正式 DDL,DB 表 `schema_version` 使用 `content_agent.v1`。
+- `tech_documents/游走策略/05_content_agent_walk_actions_DDL记录.md`:当前 DDL 已按正式表风格接入
+- `tech_documents/游走策略/05_content_agent_walk_actions_DDL记录.md`:`raw_payload` 已按现有 runtime 表风格接入
+- `product_documents/抖音游走策略/runtime_v1_records_schema.md`:`walk_actions.jsonl` 已是正式 runtime 文件
 - `product_documents/抖音游走策略/douyin_walk_strategy.v1.json`:`walk_fact_contract` 已列出 `walk_actions.jsonl -> content_agent_walk_actions`。
-- `content_agent/integrations/runtime_files.py`:当前 `RUNTIME_FILENAMES`  `walk_actions.jsonl`。
-- `content_agent/integrations/database_runtime.py`:当前 `content_agent_walk_actions` mapping。
-- `sql/content_agent_schema.sql`:当前 15 表,无 `content_agent_walk_actions`
-- `scripts/validate_content_agent_db.py`:当前按 15 表和现有 unique key 验收。
+- `content_agent/integrations/runtime_files.py`:当前 `RUNTIME_FILENAMES` 已包含 `walk_actions.jsonl`。
+- `content_agent/integrations/database_runtime.py`:当前已有 `content_agent_walk_actions` mapping。
+- `sql/content_agent_schema.sql`:当前已包含 `content_agent_walk_actions`,总计 21 张 `content_agent_*` 表
+- `scripts/validate_content_agent_db.py`:当前按 21 表和现有 unique key 验收。
 - `scripts/validate_content_agent_db.py`:`content_agent_search_clues` 期望 unique key 包含 `clue_id`,不是 `search_clue_id`。
-- `tech_documents/数据库字段总览/content_agent_schema_registry_count_report.json` 和 `.md`:当前是旧计数报告,P6B 升级第 16 表后必须重新生成或明确不再使用
-- 真实 DB validator 当前是 15/15、`schema_ready=true`。
+- `tech_documents/数据库字段总览/content_agent_schema_registry_count_report.json` 和 `.md`:当前应与 21 表合同对齐,不得沿用旧计数报告
+- 真实 DB validator 当前21/21、`schema_ready=true`。
 
 sub-agent 交叉验证结论:
 
 - DB / schema 侧确认:P6B 不能只改 SQL 或只改 registry,必须一次同步 SQL、registry、runtime、DB store、validator 和测试。
 - 代码侧确认:当前 run record 不会写 `walk_actions.jsonl`。
-- 文档 / JSON 侧确认:第 16 表当前仍是 planned,不在 strict validator 当前集合。
+- 文档 / JSON 侧确认:`content_agent_walk_actions` 当前已在 strict validator 集合。
 
 ## 修改范围
 
@@ -60,7 +60,7 @@ sub-agent 交叉验证结论:
 
 文件:
 
-- `tech_documents/游走策略/05_content_agent_walk_actions_DDL草案.md`
+- `tech_documents/游走策略/05_content_agent_walk_actions_DDL记录.md`
 - `sql/content_agent_schema.sql`
 - `tech_documents/数据库字段总览/content_agent_schema_registry.json`
 - `product_documents/抖音游走策略/runtime_v1_records_schema.md`
@@ -141,18 +141,18 @@ source path 追溯合同:
 
 ## 实施步骤
 
-1. 修正 DDL 草案:DB `schema_version` 用 `content_agent.v1`,runtime 行用 `record_schema_version=runtime_record.v1`。
+1. 修正 DDL 记录中的历史错误:DB `schema_version` 用 `content_agent.v1`,runtime 行用 `record_schema_version=runtime_record.v1`。
 2. 对齐现有表风格:ID 长度、`DATETIME(3)`、JSON nullable、索引命名。
 3. 明确 source path 的 `walk_action_id` 存储方式。
 4. 更新 `sql/content_agent_schema.sql`。
-5. 更新 schema registry,将第 16 表加入当前正式表集合。
-6. 更新 runtime schema,将 `walk_actions.jsonl` 从 planned 改为正式 runtime 文件。
+5. 更新 schema registry,将 `content_agent_walk_actions` 加入当前正式表集合。
+6. 更新 runtime schema,将 `walk_actions.jsonl` 改为正式 runtime 文件。
 7. 更新 `RUNTIME_FILENAMES`。
 8. 更新 `DatabaseRuntimeStore` mapping、columns、JSON 字段序列化。
 9. 更新 DB validator expected table count、columns 和 unique key。
 10. 重新生成或废弃旧 `content_agent_schema_registry_count_report.*`,避免用旧计数报告作为新 schema 证据。
 11. 执行 DDL 到真实测试库。
-12. 跑 strict DB validator,确认 16/16
+12. 跑 strict DB validator,确认 21/21。
 13. 补本地 runtime 和 DB fake tests。
 
 ## 验证命令
@@ -170,21 +170,21 @@ PY
 rg -n "search_clue_id|runtime_record.v1.*schema_version|content_agent_walk_actions" tech_documents/工程落地/implementation_briefs/P6 tech_documents/游走策略 product_documents/抖音游走策略 sql content_agent tests
 ```
 
-P6B 完成前 strict DB validator 应仍是 15/15;P6B 执行 DDL 后才应升级为 16/16
+P6B 完成后 strict DB validator 应为 21/21
 
 ## 失败归因
 
-- SQL 有第 16 表但 registry 没有:schema 接入不完整。
-- registry 有第 16 表但真实 DB 没有:DDL 未执行或目标库错误。
+- SQL 有 `content_agent_walk_actions` 但 registry 没有:schema 接入不完整。
+- registry 有 `content_agent_walk_actions` 但真实 DB 没有:DDL 未执行或目标库错误。
 - runtime 文件列表有 `walk_actions.jsonl` 但 DB store 无映射:P0C 风格 runtime/DB 合同缺失。
-- DB 表 `schema_version=runtime_record.v1`:DDL 草案错误未修。
+- DB 表 `schema_version=runtime_record.v1`:DDL 记录中的历史错误未修。
 - runtime 行缺 `record_schema_version=runtime_record.v1`:runtime 合同错误。
 - `search_clue_id` 仍作为正式 key:P6 JSON / 文档未修。
 - source path 无法反查 action:P6 追溯合同未实现。
 
 ## sub-agent 交叉验证要点
 
-- DB 侧确认:第 16 表、字段、唯一键、索引、validator 全部同步。
+- DB 侧确认:21 表、字段、唯一键、索引、validator 全部同步。
 - 代码侧确认:runtime file、Local store、Database store 都能读写 walk actions。
-- 文档 / JSON 侧确认:planned 标记已移除或改为正式启用
+- 文档 / JSON 侧确认:启用状态已改为正式 runtime / DB 合同
 - 测试侧确认:本地 runtime 和 DB fake test 都覆盖 upsert / append 语义和 source path action 追溯。

+ 4 - 8
tech_documents/工程落地/implementation_briefs/P6/P6H_P6_Acceptance_And_DriftGuards.md

@@ -13,11 +13,8 @@
 ## 现有证据
 
 - P0-P5 已有测试覆盖 API、graph、runtime files、database runtime、source evidence、search intent、platform access、Pattern recall、rule judgment。
-- 当前没有 P6 config validator 测试。
-- 当前没有 `walk_actions.jsonl` runtime 测试。
-- 当前没有 bounded walk loop 集成测试。
-- 当前没有分页 / 作者 / tag edge 测试。
-- 当前 DB validator 是 15 表;P6B 完成后应升级到 16 表。
+- 当前已有 P6 config、`walk_actions.jsonl` runtime、bounded walk loop、分页 / 作者 / tag edge 相关测试覆盖。
+- 当前 DB validator 是 21 表。
 
 sub-agent 交叉验证结论:
 
@@ -134,8 +131,7 @@ rg -n "PASS[W]ORD=|TO[K]EN=|API[_]KEY=|SEC[R]ET=|Authori[z]ation:|Coo[k]ie:" tec
 
 - P6 config validator 失败:P6 JSON 合同问题。
 - `walk_actions.jsonl` 缺失:P6B runtime 接入未完成。
-- DB validator 仍是 15/15:P6B 第 16 表未正式接入。
-- DB validator 16 表失败:DDL / registry / validator / 真实 DB 不一致。
+- DB validator 不是 21/21:DDL / registry / validator / 真实 DB 不一致。
 - graph full run 只执行首轮:P6C loop 未完成。
 - 分页没 source path:P6D 追溯失败。
 - 作者作品未 P4/P5:P6E 主链路绕过。
@@ -149,6 +145,6 @@ rg -n "PASS[W]ORD=|TO[K]EN=|API[_]KEY=|SEC[R]ET=|Authori[z]ation:|Coo[k]ie:" tec
 
 - 代码侧确认:P6A-P6G 覆盖所有执行路径。
 - 文档 / JSON 侧确认:P6 不再有独立 P9 / P10 阶段口径。
-- DB 侧确认:第 16 表严格验收通过。
+- DB 侧确认:21 表严格验收通过。
 - 测试侧确认:默认测试不访问真实外部服务。
 - 漂移侧确认:P6 不复制 P5 规则、不读取旧 JSON、不使用历史作者库、不输出旧状态。

+ 8 - 11
tech_documents/游走策略/01_游走策略体系说明.md

@@ -8,7 +8,7 @@ P6 重构为独立的 Walk System(游走系统)。它负责把已经判断
 
 P5 是判断系统,回答“这个对象值不值得要”。P6 是行动系统,回答“下一步往哪里走、走多少、什么时候停”。
 
-本轮只落地文档、配置表、JSON 初稿和 DDL 草案,不写业务代码,不执行 DDL,不修改当前 15 张 `content_agent_*` 表验收口径。
+P6 当前已落地为 V1 runtime 的行动系统:配置由 `douyin_walk_strategy.v1.json` 读取,`walk_actions.jsonl` 与 `content_agent_walk_actions` 已接入当前 21 张 `content_agent_*` 表验收口径。
 
 ## 2. P6 / P9 / P10 新关系
 
@@ -78,16 +78,13 @@ P6 可以给每条 edge 绑定 P5 规则包,但不复制 P5 规则包内部逻
 
 当前云库没有 `demand_find_author`,所以 P6 V1 不依赖历史作者库,只从本 run 已发现视频的 `platform_author_id` 出发。
 
-## 7. 事实层规划
+## 7. 事实层当前状态
 
-P6 需要新增 `walk_actions.jsonl` 和 `content_agent_walk_actions`,用于记录每一条 edge 的计划、执行、失败、跳过和预算状态。
+P6 新增 `walk_actions.jsonl` 和 `content_agent_walk_actions`,用于记录每一条 edge 的计划、执行、失败、跳过和预算状态。
 
-本轮只写 planned runtime 合同和 DDL 草案:
-
-- 不修改真实 DB。
-- 不执行 DDL。
-- 不把当前 strict validator 从 15 表改为 16 表。
-- 不修改当前代码里的 runtime 文件列表。
-
-P6 代码阶段再启用 `walk_actions.jsonl`、执行 DDL、升级 validator。
+当前状态:
 
+- `walk_actions.jsonl` 已加入 runtime 文件列表。
+- `content_agent_walk_actions` 已加入 SQL、schema registry、DB runtime store 和 DB validator。
+- 当前 strict validator 使用 21 表合同。
+- `source_path_records.jsonl` 与 `walk_actions.jsonl` 可用于追溯 edge action 来源。

+ 1 - 2
tech_documents/游走策略/02_游走策略表字段说明.md

@@ -2,7 +2,7 @@
 
 更新时间:2026-06-08
 
-本文件说明 `游走策略配置表.xlsx` 和 `douyin_walk_strategy.v1.json` 的 13 张配置表。Excel 是人工维护源,JSON 是后续 runtime source of truth。
+本文件说明 `游走策略配置表.xlsx` 和 `douyin_walk_strategy.v1.json` 的 13 张配置表。Excel 是人工维护源,JSON 是当前 P6 runtime source of truth。
 
 ## 1. `walk_strategy_meta`
 
@@ -174,4 +174,3 @@
 | `json_fields` | JSON 字段 |
 | `unique_key` | 唯一键 |
 | `notes` | 备注 |
-

+ 4 - 5
tech_documents/游走策略/04_P6阶段开发计划.md

@@ -2,7 +2,7 @@
 
 更新时间:2026-06-08
 
-本文件是 P6 产品与技术阶段计划,不是 implementation brief。本轮只完成 P6 体系资料、Excel、JSON 和 DDL 草案
+本文件是 P6 产品与技术阶段计划,不是 implementation brief。当前 P6 已进入 V1 runtime:配置、`walk_actions.jsonl`、`content_agent_walk_actions`、Walk Engine、分页边、作者边和 tag 边均已接入当前 21 表合同
 
 ## P6-0 文档与配置收敛
 
@@ -12,12 +12,12 @@
 - 建立 `douyin_walk_strategy.v1.json`。
 - 建立 `游走策略配置表.xlsx`。
 - 将原 P9 作者一跳、原 P10 tag 扩散归并到 P6。
-- 新增 `content_agent_walk_actions` DDL 草案,但不执行
+- `content_agent_walk_actions` DDL 已作为 P6B 记录保留,并已同步进正式 SQL、registry、runtime store 和 DB validator
 
 验收:
 
 - P5 文档和代码不受影响。
-- 当前 schema validator 按 15 表通过。
+- 当前 schema validator 按 21 表通过。
 - 当前全量测试仍通过。
 
 ## P6A 配置读取与合同准备
@@ -38,7 +38,7 @@
 目标:
 
 - 启用 `walk_actions.jsonl`。
-- 执行 `content_agent_walk_actions` DDL
+- `content_agent_walk_actions` 已接入当前 21 表 DB 合同
 - 将每个 edge 的 planned / running / success / failed / skipped 写成事实记录。
 
 验收:
@@ -115,4 +115,3 @@
 
 - 不越过 P5 规则判断。
 - 不把 P6 配置混进 P5 规则包映射。
-

+ 10 - 10
tech_documents/游走策略/05_content_agent_walk_actions_DDL草案.md → tech_documents/游走策略/05_content_agent_walk_actions_DDL记录.md

@@ -1,10 +1,10 @@
-# content_agent_walk_actions DDL 草案
+# content_agent_walk_actions DDL 记录
 
 更新时间:2026-06-08
 
-本文件保留 P6B DDL 记录。P6B 已把该表同步进 `sql/content_agent_schema.sql`、schema registry、runtime 文件列表和 strict DB validator,并已在当前 `.env` 测试库执行 `CREATE TABLE IF NOT EXISTS`。
+本文件保留 P6B DDL 记录。P6B 已把该表同步进 `sql/content_agent_schema.sql`、schema registry、runtime 文件列表、DB runtime store 和 strict DB validator,并已在当前 `.env` 测试库执行 `CREATE TABLE IF NOT EXISTS`。当前 V1 DB 合同为 21 张 `content_agent_*` 表。
 
-## 1. 建表草案
+## 1. 建表 SQL
 
 ```sql
 CREATE TABLE IF NOT EXISTS content_agent_walk_actions (
@@ -65,12 +65,12 @@ CREATE TABLE IF NOT EXISTS content_agent_walk_actions (
 | `source_path_record_id` | 对应来源路径记录 ID |
 | `raw_payload` | 脱敏后的平台返回、配置快照和调试上下文 |
 
-## 3. 启用条件
+## 3. 当前启用状态
 
-P6 代码阶段启用时,需要同步完成:
+P6B 已完成:
 
-- DDL 合并到正式 schema。
-- `content_agent_walk_actions` 加入 schema registry 当前表集合。
-- `walk_actions.jsonl` 加入 runtime 文件列表。
-- 升级 DB validator 预期表数量
-- 增加 DB runtime store 映射。
+- DDL 合并到正式 schema。
+- `content_agent_walk_actions` 加入 schema registry 当前表集合。
+- `walk_actions.jsonl` 加入 runtime 文件列表。
+- DB validator 已升级到当前 21 表预期。
+- DB runtime store 已增加映射。