# PROGRESS · 上游同步二(婚恋三层 + 条件大运,2026-09-09) - 工作树:`.worktrees/upstream-sync2-20260909` - 分支:`codex/upstream-sync2-20260909` - 上游只读快照:`/tmp/yinduzhanxing-b9a0` @ `b9a0ef8f0f0de8714982a5aa7100f5aea16c9d09`(`codex/add-birth-time-rectification-skill`,未进上游 main) - 任务书:`docs/tasks/TASK-upstream-sync2-20260909.md`(staging `a4d3fe7e`,纯文档) - BUG:**BUG-608** - 未改 `.gitea/workflows/**`,不提升 `main`,未 push ## 基线 | 点 | 值 | | --- | --- | | 领取时 `origin/staging` | `fa293b31`(含任务书 `a4d3fe7e`) | | 本分支起点 | `164535ab`(图盘 `2fdcb14f` + 当时 staging) | | 上游 pin | `b9a0ef8f0f0de8714982a5aa7100f5aea16c9d09` | | 上游 tree | `864cab471cadb31b71a7256c995c12b7552d7cb5` | | `source_tree_sha256` | `9ae737b02a48b38dca7d78094413b961a75e5abad17f2fe206f7dc3b1401d51a` | | SKILL 镜像 sha256 | `6bed459b8b971b189895e62aabfb90e41dbdf8f5b9e80a4b5330d40922fe21eb` | | `source_committed_at` | `2026-09-08T17:36:09Z` | | 预检 | `pre_work_check.py` `status: pass` | | 开工 BUG 最大号 | 607;本轮 608 | ## 任务状态 | 任务 | 状态 | 说明 | | --- | --- | --- | | 0 golden | 完成 | `tests/golden/upstream_sync2/` 三份 + PL9 耗时 8.647s | | 1 快照 | 完成 | importer apply;manifest `boundary` 注明非 main 分支;ledger 追加一行 | | 2 婚恋三层 | 完成 | 覆盖四文件 + punarphoo + 三方合并 dasha 增强;mcp 三 hunk;证据新模块;api_server 净增 4 行 | | 3 条件大运 | 完成 | 11 模块 + full reading 循环;表 5+10;不进咨询 bundle | | 4 记录 | 完成 | BUG-608、CHANGELOG、Skill 6.9.16、本文件、走查清单 | ## hunk 取舍 | 文件 | 取 | 不取 | | --- | --- | --- | | `relationship_analysis.py` 等四文件 | 整文件覆盖分支版 | — | | `dasha_calculator_enhanced.py` | 三方合并(0 冲突),并改掉残留「婚姻机会」 | — | | `mcp_server.py` | import / `present["punarphoo"]` / 观察块 + 白名单 | 岁差 `Optional[None]`、`_pl9_ayanamsa_selection_required_response` | | `jyotish_engine.py` | `birth_info_for_alt_dasha` 键、Shastihayani + 9 套循环、families 映射、`not_applicable` 表行 | 整文件合并、`pdf_edition`、`render_pl9_user`、南印度以外的 PL9 hunk | | `jyotish_api_server.py` | `dasha_info` 传入、一行 `build_event_class_evidence`、prompt 一行 | 上游 +207 | | `consultation_engine_field_bridge.py` / `commercial_skill_truth.py` 咨询 bundle | 不把 10 套 dasha 写进聊天模块桩 | overlay / `TECHNIQUE_TRUTH_IDS` 加声明边界(任务 2.4 / 3.6) | | 注册表 / overlay | punarphoo + 10 dasha,`partial` | niryaana_shoola 只留计算模块,不进 10 项注册表 | ## 冲突 | 文件 | 结果 | | --- | --- | | `dasha_calculator_enhanced.py` | `git merge-file` 返回 0 | | `mcp_server.py` | 不整文件合并,手搬三处,避开岁差冲突 | | `jyotish_engine.py` | 不整文件合并 | ## 不取项 Shadbala Dig/Chesta profile;PL9 用户版 `blocked`→「待补」;年运北印 SVG;Narayana/Rashi 显式合同;校正泄漏三件;`professional_parity_closure.py`;`references/research/**` 与 `references/oracle/*_2026_09_*.json`。 ## 断言三栏 | 位置 | 原值 | 新值 | 原因 | | --- | --- | --- | --- | | `test_capability_evidence_pool` `total_entries` | 116 | 127 | punarphoo + 十套条件大运 | | `test_cli_smoke` `capability_pool.total_entries` | 116 | 127 | 同上 | | README Capabilities / Partial 徽章 | 116 / 0 | 127 / 11 | 同上 | | `tests/run_all.py` t100 / `jyotish_vedic.__version__` | 6.9.15 | 6.9.16 | 商业 SKILL 正文有改动 | `public_label` 仍是 `"89 capability entries"`。 ## 测试 全量 collect:2721。 | 项 | 结果 | | --- | --- | | 定向婚恋 / 大运 / 快照 / overlay / longform | 全绿 | | `tests/run_all.py` | 102/102 | | `audit_capabilities.py --mode validate` | valid,127 项,partial 11 | | `run_quality_gate.py --profile quick --skip-frontend-runtime` | pytest **708 passed / 1 skipped / 1 failed**;失败项 `test_block_scan_seven_events_finishes_within_fifteen_seconds` 是 15 秒时限,与本轮无关;单独重跑通过 | | `pl9-export` Einstein | 6.643s vs 基线 8.647s(−23.2%,未超过 +20%) | | `skill_release_package.build_package_plan` | privacy `pass` | | `grep 婚姻机会` 两文件 | 0 | | 前端 | 未改,未跑 `npm test` | Yogini / Ashtottari / Kala Chakra 仍用原来的五键 `birth_info`,避免 Ashtottari 因白天判定键改走另一套适用规则、把原表第 4 行变成 blocked。十套条件大运用完整键。 ## api_server 行数 `wc -l` = 11300(基线约 11296,净增 4,上限 11363)。