docs(report): record blocked-repairs quality gates and staging SHA
Task 4 evidence: local gates, Gitea 2308/2309, health gitCommit 7faf8555. Live personal_full and writer/token still need a logged-in 委托方.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -77,18 +77,35 @@
|
||||
|
||||
---
|
||||
|
||||
## 任务 4 · 质量门(本地)
|
||||
## 任务 4 · 质量门与部署
|
||||
|
||||
`requiredTechniqueGroups` 相对任务书基线 `e37f8272` 无 diff。未改 `.gitea/workflows/**`,未提升 main。
|
||||
|
||||
| 门 | 结果 |
|
||||
|---|---|
|
||||
| `frontend/node_modules/.bin/tsc --noEmit` | 通过(exit 0) |
|
||||
| eslint(改动的 generation / 两个测试文件) | 0 error |
|
||||
| `tsx --test` personal-report-generation + generation-v2 + contract + interpretive-facts + report-blocked-repairs | 64 passed / 0 failed(另 generation 单文件 55/55) |
|
||||
| `frontend/node_modules/.bin/tsc --noEmit` | 通过(exit 0,无输出) |
|
||||
| `eslint`(与 CI 相同,无 `--max-warnings`) | 0 error / 73 既有 warning,exit 0 |
|
||||
| `tsx --test tests/*.test.ts` | tests 2515 / pass 2514 / fail 1 / skipped 0。相对 skill-parity 基线(2444 / 2410 / 24,本机当时无 Docker)本轮 Docker 可用,那 24 条环境失败已过。唯一失败是 `rectification-v9-database.test.ts`「v9 enforces profile gating, ownership and terminal read-only」:`database migration failed`(`1 !== 0`)。同文件单独重跑 **7/7 通过**。这是 `BLOCKED.md` 已记录的全量并发 Docker 争用 flake,与本轮 varga/Transit/karaka 改动无关。 |
|
||||
| `next build --webpack` | exit 0;Compiled 2.9min;TS 2.3min;static 62/62。两条 `Failed to copy traced files` 指向 `rishi-ai-mcp/.cursor` / `.vscode` 的 sandbox `EPERM`,不影响路由表。 |
|
||||
| `pytest tests/test_consultation_consumer_context.py` | 28 passed |
|
||||
| `next build` | 未跑(本机质量门已覆盖类型与合同;完整构建留给 staging 推送) |
|
||||
| staging 真实报告重生 + 上一轮 writer/token 欠账 | 未做,需部署后由委托方核对 `/api/health` 的 `.deployment.gitCommit` |
|
||||
| 相关测试聚焦 | `report-blocked-repairs` + generation / v2 / contract / interpretive-facts:64 passed / 0 failed |
|
||||
|
||||
未改 `.gitea/workflows/**`,未提升 main。
|
||||
### Staging 部署
|
||||
|
||||
- 提交:`7faf8555a589a0bdf14a5b17323352470816a7ee` 已在 `origin/staging`
|
||||
- Independent Staging Quality Gate:[run 2308](https://git.copse.top/root/Jyotisha/actions/runs/2308) success(validate 9m + publish 1m)
|
||||
- Deploy staging:[run 2309](https://git.copse.top/root/Jyotisha/actions/runs/2309) success
|
||||
- `GET https://staging.jyotisha.chat/api/health` → `.deployment.gitCommit` = `7faf8555a589a0bdf14a5b17323352470816a7ee`
|
||||
|
||||
### 真实 personal_full 与上一轮 writer/token 欠账
|
||||
|
||||
本执行环境没有登录会话,也没有 `ANTHROPIC_*` / `OPENAI_*` / `DEEPSEEK_*`。`GET /api/reports` 与 `GET /api/account` 均为 **401「请先登录」**。按红线不得读取或猜测凭据,因此**无法在此环境生成 staging 真实报告**,也无法抽查 writer 正文或实测每章 `inputTokens` / 墙钟。
|
||||
|
||||
委托方验收(登录后即可,health SHA 已对齐):
|
||||
|
||||
1. 用虚构或自有资料生成一份 `personal_full`,主题 career / marriage / timing / wealth。
|
||||
2. 四个主题应有正文,不再全部 blocked,摘要不应再是「报告主题尚未生成」。
|
||||
3. 顺带完成上一轮欠账:≥3 处 writer 输出回溯;每章真实 `inputTokens` / 墙钟对照 `PROGRESS-report-skill-parity-20260901.md` 的 2 倍线裁决(产品已接受离线 2.28× 计费加权,以第一份实测为准)。
|
||||
|
||||
---
|
||||
|
||||
|
||||
+2
-2
@@ -7531,8 +7531,8 @@
|
||||
- 触发条件:个人报告按主题调用 `/api/consultation_workflow`,提取层组 `ReportEvidenceBundleV2`。与出生数据或线上环境无关,本地 smoke 出生可逐字复现。
|
||||
- 根因:三层叠加。`modules.varga_full` 真值是小写 `ascendant` / `sign_index` / `planets` 字典,提取层只读旧形状 `Ascendant` / `sign_idx` / 顶层行星键,所有分盘图提取失败;`modules.transits.status=executed` 存在但从不 upsert Transit 回执;consultation 响应的 `modules.jaimini` 只有 `arudha_padas`,没有 Chara Karaka,AmK/DK 回执无法闭合。BUG-486 的 `45f190a1` / `643f6f7a` 只修了键名别名、demote 兜底和手造旧形状 fixture,测试绿、线上仍挂。
|
||||
- 修复:提取层双形状兼容真实 varga;`transits.status==="executed"` 时 upsert Transit(`partial`+executed,缺或非 executed 不产回执);引擎把 `jaimini.calc_chara_karaka_7` 挂到 `chart.modules.jaimini.chara_karakas`(不改 `arudha_padas`),前端按 AmK/DK 存在性 upsert 回执。不放宽主题最低证据组,不改既有字段形状。
|
||||
- 验证:golden fixture 形状契约;`frontend/tests/report-blocked-repairs.test.ts` 锁双形状、Transit 三态、AmK/DK、四主题 claimCards 4 / blocked 0、九主题全 claim;`tests/test_consultation_consumer_context.py::test_local_consultation_layers_attach_chara_karakas_from_jaimini`;既有 personal-report generation / interpretive / contract / v2 回归绿。未做登录后的 staging 重生(部署后验收)。
|
||||
- 验证:golden fixture 形状契约;`frontend/tests/report-blocked-repairs.test.ts` 锁双形状、Transit 三态、AmK/DK、四主题 claimCards 4 / blocked 0、九主题全 claim;`tests/test_consultation_consumer_context.py::test_local_consultation_layers_attach_chara_karakas_from_jaimini`;既有 personal-report generation / interpretive / contract / v2 回归绿。本地 `tsc --noEmit` / eslint 0 error / `next build --webpack` / pytest 28。全量 `tsx --test` 2514/2515,唯一失败是既有 Docker 争用 flake,同文件单独 7/7。Gitea gate [2308](https://git.copse.top/root/Jyotisha/actions/runs/2308) 与 Deploy staging [2309](https://git.copse.top/root/Jyotisha/actions/runs/2309) 成功;`https://staging.jyotisha.chat/api/health` 的 `deployment.gitCommit` = `7faf8555a589a0bdf14a5b17323352470816a7ee`。登录后的 staging 重生与 writer/token 抽查仍需委托方(本环境 401,无模型凭据)。
|
||||
- 防复发:分盘 fixture 必须来自真实引擎响应,不得再手造 `Ascendant/sign_idx` 形状当 live 契约。Transit / AmK / DK 回执必须来自模块数据存在性,不得用 `available_layers` 名目冒充已执行。新增 `chara_karakas` 不得改写既有 `arudha_padas`。改提取形状后必须跑 `report-blocked-repairs` 与 `report-interpretive-facts`。
|
||||
- 相关记录:BUG-486、BUG-467、BUG-352
|
||||
- 复发自:BUG-486(键名别名与 demote 治标,值形状与缺失层未修)
|
||||
- 修复版本:待发布
|
||||
- 修复版本:`7faf8555`(staging;未提升 main)
|
||||
|
||||
Reference in New Issue
Block a user