Files
Jyotisha/docs/tasks/PROGRESS-upstream-capabilities-20260903.md
T
Jesse_Chen 45d132588f feat(upstream): snapshot a6f47abd, REST VedAstro path, and 116-technique truth layer
Advance the one-way import to git commit a6f47abd with consultation keypath golden, switch official VedAstro comparison to the REST Calculate bridge, and receive the 25 new registry entries behind research_only_blocked.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 17:35:26 +08:00

51 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# PROGRESS · 上游能力接入(任务 372026-09-03
工作树 / 分支同 `PROGRESS-upstream-sync-20260903.md`。任务 4 不依赖任务 2,按并行规则与任务 0 一起做。任务 3 / 5 / 6 / 7 **未开**(等任务 1–2,且 7b 在整备之后;整备 0–3 已在 staging)。
| 任务 | 状态 | 说明 |
| --- | --- | --- |
| 3 health 三窗 + 个人报告 | 未开 | 会改 `personal-report-generation.ts` 与编排器,须在任务 2 之后 |
| 4 VedAstro REST 桥 | 完成(未提交) | 文件集与整备无交集 |
| 5 专业报告导出 | 未开 | 依赖任务 2 的 `pl9-export` |
| 6 新字段透传 | 未开 | 任务 6 先于任务 3 与 7c |
| 7 校正三项 | 未开 | 7b 岁差/交点按请求:整备已交付 `resolveAyanamsa`,仍等任务 2 后做 Python + 前端接线 |
## 任务 4
### 做了什么
1. 引入 `scripts/vedastro_rest_bridge.py`(对齐上游 `a6f47abd` 的 REST Calculate 调用)。**去掉 yn-1993 / Handan / 1993-04-17 14:49 默认值。** 默认改为虚构 smokeBeijing `39.9042, 116.4074``12:00 01/01/1990 +08:00``LAHIRI`
2. 本地 5 次/分钟限流。HTTP 429 与本地令牌耗尽均降为 `official_blocked`,不抛给调用方当硬错误。`match` 子命令返回 `official_blocked` / `match_subcommand_not_implemented`,不伪造合盘。
3. `scripts/vedastro_gateway.py`:官方健康改为打 `/api/Calculate``Status: Pass`status 输出 `transport=rest``rate_limit_per_minute=5``mcp_bridge_role=protocol_probe_only``JYOTISH_SKIP_LOCAL_ENV=1` 时探测为 `not_probed`
4. `scripts/vedastro_parity_matrix.py` 与 fast-path checklistMCP/API Surface 的 `fastest_path_lane` 改为 `rest_adapter`MCP 桥文件保留,只作协议探测。
5. `scripts/diagnose_vedastro_mode.py``scripts/vedastro_official_mcp_bridge.py` 文档、`docs/engine/README.md` 同步。
### 测试(无网络)
未设置 `VEDASTRO_ENABLE_NETWORK=0` 污染进程时:
```
tests/test_vedastro_rest_bridge.py
tests/test_vedastro_parity_matrix.py
tests/test_vedastro_gateway.py
tests/test_vedastro_runtime_mode_diagnostics.py
tests/test_vedastro_fast_path_checklist.py
tests/test_vedastro_official_mcp_bridge.py
```
**67 passed**(含任务 0 的 `test_import_yinduzhanxing.py`)。REST 桥测试用录制响应,不打真网。曾有一次 `active_backend=local_fallback` 失败是 pytest 进程被 `VEDASTRO_ENABLE_NETWORK=0` 污染,不是产品回归。
`tests/test_vedastro_rest_bridge.py` 断言默认 payload **不含** `14:49`
### 有网络手工跑
```
.venv/bin/python -B scripts/vedastro_rest_bridge.py horoscope
```
虚构 Beijing smoke。**`Status: Pass`,耗时 1.566 s。** 未打到 429。限流路径由单测覆盖:gateway 降 `official_blocked`
### 未做
未改 `jyotish_api_server.py` 的咨询路由。`/api/vedastro_gateway/status` 字段已在 gateway 模块与 `tests/test_vedastro_gateway.py` 锁住;本轮未起 Docker 打 staging 该端点。