chore: remove private chart data from project

This commit is contained in:
732642856
2026-07-08 17:03:04 +08:00
parent f5d28ee5ae
commit f5606a933b
137 changed files with 2834 additions and 5588 deletions
@@ -10,7 +10,7 @@
## Global Constraints
- Follow `/Users/wuyongnaren/Documents/印度占星/docs/superpowers/specs/2026-06-28-dignity-guardrail-v1-design.md` exactly.
- Follow `<repo>/docs/superpowers/specs/2026-06-28-dignity-guardrail-v1-design.md` exactly.
- Do not use D9, D10, Vimsopaka, or any divisional dignity in v1.
- Do not let dignity logic change `dominant_label`, `primary_drivers`, `wealth_promise_strength`, `jaimini_marriage_support`, or `avayogi_risk`.
- Keep dignity score impact bounded to a single `-5 | 0 | +5`.
@@ -23,12 +23,12 @@
### Task 1: Freeze The Fragment Source Map
**Files:**
- Create: `/Users/wuyongnaren/Documents/印度占星/docs/research/high_value_fragment_source_map_2026_06_28.md`
- Modify: `/Users/wuyongnaren/Documents/印度占星/docs/research/ACTIVE_FRONTS.md`
- Create: `<repo>/docs/research/high_value_fragment_source_map_2026_06_28.md`
- Modify: `<repo>/docs/research/ACTIVE_FRONTS.md`
- Test: none
**Interfaces:**
- Consumes: current repo research docs, `/Users/wuyongnaren/.gemini/antigravity-ide/brain/*`, `/Users/wuyongnaren/.workbuddy/skills/jyotish-vedic-astrology`, and existing sweep/audit reports
- Consumes: current repo research docs, `<home>/.gemini/antigravity-ide/brain/*`, `<home>/.workbuddy/skills/jyotish-vedic-astrology`, and existing sweep/audit reports
- Produces: a documented source hierarchy with four buckets: `main_repo_truth`, `repo_local_drafts`, `external_work_brain`, `synced_distribution_copy`
- [ ] **Step 1: Write the fragment map document**
@@ -44,34 +44,34 @@ Prevent high-value Jyotish research and implementation notes from remaining scat
### 1. Main Repo Truth
- `/Users/wuyongnaren/Documents/印度占星/SKILL.md`
- `/Users/wuyongnaren/Documents/印度占星/AGENTS.md`
- `/Users/wuyongnaren/Documents/印度占星/references/`
- `/Users/wuyongnaren/Documents/印度占星/scripts/`
- `/Users/wuyongnaren/Documents/印度占星/tests/`
- `/Users/wuyongnaren/Documents/印度占星/docs/research/` (committed reports only)
- `<repo>/SKILL.md`
- `<repo>/AGENTS.md`
- `<repo>/references/`
- `<repo>/scripts/`
- `<repo>/tests/`
- `<repo>/docs/research/` (committed reports only)
Rule:
- This is the only layer allowed to define current product truth.
### 2. Repo Local Drafts
- `/Users/wuyongnaren/Documents/印度占星/docs/research/local_drafts/2026-06/`
- `<repo>/docs/research/local_drafts/2026-06/`
Rule:
- High-value but draft-only. Must be promoted deliberately into committed docs or code.
### 3. External Work Brain
- `/Users/wuyongnaren/.gemini/antigravity-ide/brain/*`
- `/Users/wuyongnaren/.codex/attachments/*`
- `<home>/.gemini/antigravity-ide/brain/*`
- `<home>/.codex/attachments/*`
Rule:
- Useful for recovery, comparison, and archaeology. Never authoritative by default.
### 4. Synced Distribution Copy
- `/Users/wuyongnaren/.workbuddy/skills/jyotish-vedic-astrology`
- `<home>/.workbuddy/skills/jyotish-vedic-astrology`
Rule:
- Distribution target only. Must never be reverse-copied over repo truth.
@@ -101,7 +101,7 @@ Then record whether any high-value fragment needs promotion.
## Fragment Discipline
- Before touching strict workflow or adjudicator logic, check the fragment source map:
- `/Users/wuyongnaren/Documents/印度占星/docs/research/high_value_fragment_source_map_2026_06_28.md`
- `<repo>/docs/research/high_value_fragment_source_map_2026_06_28.md`
- Treat repo truth as authoritative.
- Treat `docs/research/local_drafts`, Gemini brain notes, and WorkBuddy copies as candidate sources only.
```
@@ -109,8 +109,8 @@ Then record whether any high-value fragment needs promotion.
- [ ] **Step 3: Review the new doc for contradictions**
Run a manual read of:
- `/Users/wuyongnaren/Documents/印度占星/docs/research/high_value_fragment_source_map_2026_06_28.md`
- `/Users/wuyongnaren/Documents/印度占星/docs/research/ACTIVE_FRONTS.md`
- `<repo>/docs/research/high_value_fragment_source_map_2026_06_28.md`
- `<repo>/docs/research/ACTIVE_FRONTS.md`
Expected:
- The authority tiers do not conflict with the existing sweep/audit reports.
@@ -118,15 +118,15 @@ Expected:
- [ ] **Step 4: Commit the fragment-map task**
```bash
git add /Users/wuyongnaren/Documents/印度占星/docs/research/high_value_fragment_source_map_2026_06_28.md /Users/wuyongnaren/Documents/印度占星/docs/research/ACTIVE_FRONTS.md
git add <repo>/docs/research/high_value_fragment_source_map_2026_06_28.md <repo>/docs/research/ACTIVE_FRONTS.md
git commit -m "Document high-value fragment source map"
```
### Task 2: Add Failing Tests For Dignity Guardrail Boundaries
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_relationship.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_finance.py`
- Modify: `<repo>/tests/test_mcp_strict_workflow_relationship.py`
- Modify: `<repo>/tests/test_mcp_strict_workflow_finance.py`
- Test: same files
**Interfaces:**
@@ -222,16 +222,16 @@ Expected:
- [ ] **Step 5: Commit failing tests**
```bash
git add /Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_relationship.py /Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_finance.py
git add <repo>/tests/test_mcp_strict_workflow_relationship.py <repo>/tests/test_mcp_strict_workflow_finance.py
git commit -m "Add dignity guardrail boundary tests"
```
### Task 3: Implement `_derive_dignity_guardrail`
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/mcp_server.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_relationship.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_finance.py`
- Modify: `<repo>/mcp_server.py`
- Test: `<repo>/tests/test_mcp_strict_workflow_relationship.py`
- Test: `<repo>/tests/test_mcp_strict_workflow_finance.py`
**Interfaces:**
- Consumes: route string, `present` evidence, D1 chart status
@@ -333,16 +333,16 @@ Expected:
- [ ] **Step 7: Commit helper implementation**
```bash
git add /Users/wuyongnaren/Documents/印度占星/mcp_server.py
git add <repo>/mcp_server.py
git commit -m "Add dignity guardrail helper"
```
### Task 4: Wire `dignity_guardrail` Into Strict Evidence And Judgement
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/mcp_server.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_relationship.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_finance.py`
- Modify: `<repo>/mcp_server.py`
- Test: `<repo>/tests/test_mcp_strict_workflow_relationship.py`
- Test: `<repo>/tests/test_mcp_strict_workflow_finance.py`
**Interfaces:**
- Consumes: `present["dignity_guardrail"]`
@@ -403,15 +403,15 @@ Expected:
- [ ] **Step 8: Commit the route integration**
```bash
git add /Users/wuyongnaren/Documents/印度占星/mcp_server.py /Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_relationship.py /Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_finance.py
git add <repo>/mcp_server.py <repo>/tests/test_mcp_strict_workflow_relationship.py <repo>/tests/test_mcp_strict_workflow_finance.py
git commit -m "Wire dignity guardrail into strict workflows"
```
### Task 5: Verify Engine Boundary And Record Follow-Up
**Files:**
- Create: `/Users/wuyongnaren/Documents/印度占星/docs/research/dignity_guardrail_v1_boundary_audit_2026_06_28.md`
- Modify: `/Users/wuyongnaren/Documents/印度占星/docs/research/ACTIVE_FRONTS.md`
- Create: `<repo>/docs/research/dignity_guardrail_v1_boundary_audit_2026_06_28.md`
- Modify: `<repo>/docs/research/ACTIVE_FRONTS.md`
- Test: optional targeted engine sanity commands
**Interfaces:**
@@ -461,6 +461,6 @@ Expected:
- [ ] **Step 4: Commit the audit**
```bash
git add /Users/wuyongnaren/Documents/印度占星/docs/research/dignity_guardrail_v1_boundary_audit_2026_06_28.md /Users/wuyongnaren/Documents/印度占星/docs/research/ACTIVE_FRONTS.md
git add <repo>/docs/research/dignity_guardrail_v1_boundary_audit_2026_06_28.md <repo>/docs/research/ACTIVE_FRONTS.md
git commit -m "Audit dignity guardrail v1 boundary"
```
@@ -10,7 +10,7 @@
## Global Constraints
- Must obey `/Users/wuyongnaren/Documents/印度占星/AGENTS.md` high-rigor rules.
- Must obey `<repo>/AGENTS.md` high-rigor rules.
- Timing/event/outcome work must use `Vimshottari + Narayana Dasha` and relationship work must include `D9 + UL`.
- Functional Benefic/Malefic must remain explicit in high-rigor evidence and user-visible audit surfaces.
- Prefer existing repo-native code and reusable open-source references over new standalone implementations.
@@ -22,13 +22,13 @@
### Task 1: Freeze the closure board and stop scope drift
**Files:**
- Create: `/Users/wuyongnaren/Documents/印度占星/docs/research/shortest_path_closure_board_2026_06_29.md`
- Modify: `/Users/wuyongnaren/Documents/印度占星/docs/research/ACTIVE_FRONTS.md`
- Modify: `/Users/wuyongnaren/Documents/印度占星/task_plan.md`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_skill_gap_truth_audit.py`
- Create: `<repo>/docs/research/shortest_path_closure_board_2026_06_29.md`
- Modify: `<repo>/docs/research/ACTIVE_FRONTS.md`
- Modify: `<repo>/task_plan.md`
- Test: `<repo>/tests/test_skill_gap_truth_audit.py`
**Interfaces:**
- Consumes: `/Users/wuyongnaren/Documents/印度占星/docs/research/ACTIVE_FRONTS.md`, `/Users/wuyongnaren/Documents/印度占星/task_plan.md`
- Consumes: `<repo>/docs/research/ACTIVE_FRONTS.md`, `<repo>/task_plan.md`
- Produces: `shortest_path_closure_board_2026_06_29.md` with four closure lanes (`relationship`, `vimsopaka_functional_role`, `oracle`, `vedastro_ingestion`) and a fixed task order
- [ ] **Step 1: Write the failing test**
@@ -91,12 +91,12 @@ git commit -m "docs: freeze shortest-path closure board"
### Task 2: Close the relationship adjudicator regression pack
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/mcp_server.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_engine.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/jyotish-app/main.js`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_relationship.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_frontend_productization.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_api_server_security.py`
- Modify: `<repo>/mcp_server.py`
- Modify: `<repo>/scripts/jyotish_engine.py`
- Modify: `<repo>/jyotish-app/main.js`
- Modify: `<repo>/tests/test_mcp_strict_workflow_relationship.py`
- Modify: `<repo>/tests/test_frontend_productization.py`
- Modify: `<repo>/tests/test_api_server_security.py`
**Interfaces:**
- Consumes: `event_judgement.dominant_label`, `event_judgement.secondary_context`, `present_evidence.jaimini_marriage_support`
@@ -156,12 +156,12 @@ git commit -m "test: lock relationship public formalization boundaries"
### Task 3: Close Vimsopaka semantic mapping and functional-role rendering
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/mcp_server.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_api_server.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/jyotish-app/skill-map.js`
- Modify: `/Users/wuyongnaren/Documents/印度占星/references/strict-workflow-router.md`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_frontend_productization.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_api_server_security.py`
- Modify: `<repo>/mcp_server.py`
- Modify: `<repo>/scripts/jyotish_api_server.py`
- Modify: `<repo>/jyotish-app/skill-map.js`
- Modify: `<repo>/references/strict-workflow-router.md`
- Modify: `<repo>/tests/test_frontend_productization.py`
- Modify: `<repo>/tests/test_api_server_security.py`
**Interfaces:**
- Consumes: existing dignity guardrail output and functional benefic/malefic evidence
@@ -208,11 +208,11 @@ git commit -m "feat: close functional role and vimsopaka rendering gaps"
### Task 4: Batch the oracle closure work into one comparison pack
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/shadbala_oracle_comparison.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/oracle_benchmark_inventory.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/references/oracle/dasha_shadbala_oracle_cases.json`
- Create: `/Users/wuyongnaren/Documents/印度占星/docs/research/oracle_batch_closure_pack_2026_06_29.md`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_dasha_oracle_closure_status.py`
- Modify: `<repo>/scripts/shadbala_oracle_comparison.py`
- Modify: `<repo>/scripts/oracle_benchmark_inventory.py`
- Modify: `<repo>/references/oracle/dasha_shadbala_oracle_cases.json`
- Create: `<repo>/docs/research/oracle_batch_closure_pack_2026_06_29.md`
- Modify: `<repo>/tests/test_dasha_oracle_closure_status.py`
**Interfaces:**
- Consumes: external oracle packets, current shadbala comparison script, oracle benchmark inventory
@@ -257,10 +257,10 @@ git commit -m "feat: batch oracle closure comparison pack"
### Task 5: Keep VedAstro ingestion minimal and honest
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/vedastro_service_adapter.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/run_quality_gate.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_life_event_graph_v1.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_vedastro_service_adapter_executor.py`
- Modify: `<repo>/scripts/vedastro_service_adapter.py`
- Modify: `<repo>/scripts/run_quality_gate.py`
- Modify: `<repo>/tests/test_life_event_graph_v1.py`
- Modify: `<repo>/tests/test_vedastro_service_adapter_executor.py`
**Interfaces:**
- Consumes: current `external_window` payload contract and allowlist audit
@@ -21,8 +21,8 @@
### Task 1: Promote full-reading stage timings into a unified stage contract
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_engine.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_cli_smoke.py`
- Modify: `<repo>/scripts/jyotish_engine.py`
- Test: `<repo>/tests/test_cli_smoke.py`
**Interfaces:**
- Consumes:
@@ -124,8 +124,8 @@ Expected: PASS
### Task 2: Generalize the file-backed async job runner for chart and high-rigor scopes
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_api_server.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_api_server_security.py`
- Modify: `<repo>/scripts/jyotish_api_server.py`
- Test: `<repo>/tests/test_api_server_security.py`
**Interfaces:**
- Consumes:
@@ -229,8 +229,8 @@ Expected: PASS
### Task 3: Make chart async completion return the normal chart payload unchanged
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_api_server.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_api_server_security.py`
- Modify: `<repo>/scripts/jyotish_api_server.py`
- Test: `<repo>/tests/test_api_server_security.py`
**Interfaces:**
- Consumes:
@@ -315,8 +315,8 @@ Expected: PASS
### Task 4: Keep existing high-rigor async path working on top of the shared helper
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_api_server.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_api_server_security.py`
- Modify: `<repo>/scripts/jyotish_api_server.py`
- Test: `<repo>/tests/test_api_server_security.py`
**Interfaces:**
- Consumes:
@@ -365,7 +365,7 @@ Expected: PASS
### Task 5: Run focused regression bundle and update progress
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/progress.md`
- Modify: `<repo>/progress.md`
**Interfaces:**
- Consumes:
@@ -21,10 +21,10 @@
### Task 1: Add compact technique audit summary to strict workflow contracts
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/mcp_server.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_career.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_relationship.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_finance.py`
- Modify: `<repo>/mcp_server.py`
- Test: `<repo>/tests/test_mcp_strict_workflow_career.py`
- Test: `<repo>/tests/test_mcp_strict_workflow_relationship.py`
- Test: `<repo>/tests/test_mcp_strict_workflow_finance.py`
**Interfaces:**
- Consumes:
@@ -139,8 +139,8 @@ Expected: PASS
### Task 2: Compact and expose the audit summary through full-reading and prompt pack
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_engine.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_cli_smoke.py`
- Modify: `<repo>/scripts/jyotish_engine.py`
- Test: `<repo>/tests/test_cli_smoke.py`
**Interfaces:**
- Consumes:
@@ -192,8 +192,8 @@ Expected: PASS
### Task 3: Surface the same compact audit summary in API outputs
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_api_server.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_api_server_security.py`
- Modify: `<repo>/scripts/jyotish_api_server.py`
- Test: `<repo>/tests/test_api_server_security.py`
**Interfaces:**
- Consumes:
@@ -248,9 +248,9 @@ Expected: PASS
### Task 4: Make frontend and AI chat consume the compact audit summary
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/jyotish-app/main.js`
- Modify: `/Users/wuyongnaren/Documents/印度占星/jyotish-app/ai-chat.js`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_frontend_productization.py`
- Modify: `<repo>/jyotish-app/main.js`
- Modify: `<repo>/jyotish-app/ai-chat.js`
- Test: `<repo>/tests/test_frontend_productization.py`
**Interfaces:**
- Consumes:
@@ -301,7 +301,7 @@ Expected: PASS
### Task 5: Run focused regression and update progress
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/progress.md`
- Modify: `<repo>/progress.md`
**Interfaces:**
- Consumes:
@@ -24,10 +24,10 @@
### Task 1: Add the shared adjudication contract builder in `mcp_server.py`
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/mcp_server.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_career.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_relationship.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_finance.py`
- Modify: `<repo>/mcp_server.py`
- Test: `<repo>/tests/test_mcp_strict_workflow_career.py`
- Test: `<repo>/tests/test_mcp_strict_workflow_relationship.py`
- Test: `<repo>/tests/test_mcp_strict_workflow_finance.py`
**Interfaces:**
- Consumes:
@@ -141,10 +141,10 @@ git commit -m "feat: add shared top-reader adjudication contract"
### Task 2: Promote selected bridge layers into the shared modifier frame
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/mcp_server.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_finance.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_relationship.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_functional_layer.py`
- Modify: `<repo>/mcp_server.py`
- Test: `<repo>/tests/test_mcp_strict_workflow_finance.py`
- Test: `<repo>/tests/test_mcp_strict_workflow_relationship.py`
- Test: `<repo>/tests/test_mcp_strict_workflow_functional_layer.py`
**Interfaces:**
- Consumes:
@@ -239,9 +239,9 @@ git commit -m "feat: promote selected bridge layers into shared modifiers"
### Task 3: Compact and expose the new contract through `jyotish_engine.py`
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_engine.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_cli_smoke.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_vedastro_official_full_snapshot.py`
- Modify: `<repo>/scripts/jyotish_engine.py`
- Test: `<repo>/tests/test_cli_smoke.py`
- Test: `<repo>/tests/test_vedastro_official_full_snapshot.py`
**Interfaces:**
- Consumes:
@@ -317,9 +317,9 @@ git commit -m "feat: expose top-reader contract in prompt pack"
### Task 4: Surface the reshaped contract in API outputs with no extra heavy recompute
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_api_server.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_api_server_security.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_historical_event_backtest.py`
- Modify: `<repo>/scripts/jyotish_api_server.py`
- Test: `<repo>/tests/test_api_server_security.py`
- Test: `<repo>/tests/test_historical_event_backtest.py`
**Interfaces:**
- Consumes:
@@ -397,9 +397,9 @@ git commit -m "feat: surface top-reader adjudication contract in api outputs"
### Task 5: Keep the frontend and user-facing surfaces simple while consuming the richer contract
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/jyotish-app/main.js`
- Modify: `/Users/wuyongnaren/Documents/印度占星/jyotish-app/ai-chat.js`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_frontend_productization.py`
- Modify: `<repo>/jyotish-app/main.js`
- Modify: `<repo>/jyotish-app/ai-chat.js`
- Test: `<repo>/tests/test_frontend_productization.py`
**Interfaces:**
- Consumes:
@@ -472,7 +472,7 @@ git commit -m "feat: consume top-reader adjudication contract in frontend"
### Task 6: Run the focused regression bundle and then the broader verification pass
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/progress.md`
- Modify: `<repo>/progress.md`
**Interfaces:**
- Consumes:
@@ -21,8 +21,8 @@
### Task 1: Add failing adapter tests for daily-window aggregation
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_vedastro_range_scan_replay.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_vedastro_range_scan_replay.py`
- Modify: `<repo>/tests/test_vedastro_range_scan_replay.py`
- Test: `<repo>/tests/test_vedastro_range_scan_replay.py`
**Interfaces:**
- Consumes: `scripts.vedastro_service_adapter._normalize_range_scan_success(payload, endpoint, request_preview, attempt_count=1, retry_error_codes=None) -> dict`
@@ -103,9 +103,9 @@ git commit -m "feat: add vedastro daily window aggregation"
### Task 2: Propagate daily windows through orchestrator
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/vedastro_evidence_orchestrator.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_vedastro_evidence_orchestrator.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_vedastro_evidence_orchestrator.py`
- Modify: `<repo>/scripts/vedastro_evidence_orchestrator.py`
- Modify: `<repo>/tests/test_vedastro_evidence_orchestrator.py`
- Test: `<repo>/tests/test_vedastro_evidence_orchestrator.py`
**Interfaces:**
- Consumes: `run_range_scan_for_case(...) -> dict` with `daily_windows` and `top_daily_window`
@@ -177,10 +177,10 @@ git commit -m "feat: propagate vedastro daily windows through orchestrator"
### Task 3: Promote daily windows into strict workflow external activation
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/mcp_server.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_career.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_relationship.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_mcp_strict_workflow_finance.py`
- Modify: `<repo>/mcp_server.py`
- Modify: `<repo>/tests/test_mcp_strict_workflow_career.py`
- Modify: `<repo>/tests/test_mcp_strict_workflow_relationship.py`
- Modify: `<repo>/tests/test_mcp_strict_workflow_finance.py`
- Test: same files
**Interfaces:**
@@ -246,9 +246,9 @@ git commit -m "feat: expose vedastro daily windows in strict workflow"
### Task 4: Surface official day windows in life event graph
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/mcp_server.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_life_event_graph_v1.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_life_event_graph_v1.py`
- Modify: `<repo>/mcp_server.py`
- Modify: `<repo>/tests/test_life_event_graph_v1.py`
- Test: `<repo>/tests/test_life_event_graph_v1.py`
**Interfaces:**
- Consumes: `present_evidence.external_activation.daily_windows`
@@ -329,9 +329,9 @@ git commit -m "feat: show official vedastro day windows in life event graph"
### Task 5: Attach daily-window expansion to full-reading and verify output contract
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_engine.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_cli_smoke.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_cli_smoke.py`
- Modify: `<repo>/scripts/jyotish_engine.py`
- Modify: `<repo>/tests/test_cli_smoke.py`
- Test: `<repo>/tests/test_cli_smoke.py`
**Interfaces:**
- Consumes: existing `modules.vedastro_range_scan_result`
@@ -25,15 +25,15 @@
### Task 2: Implement route-aware monthly adjudication
- [ ] Add helper builders in `/Users/wuyongnaren/Documents/印度占星/mcp_server.py`.
- [ ] Add helper builders in `<repo>/mcp_server.py`.
- [ ] Attach `monthly_adjudication_summary` to strict workflow contracts.
- [ ] Keep `official_day_signal_summary` unchanged for compatibility.
### Task 3: Surface the contract through consumers
- [ ] Add `monthly_adjudication_summary` to compact prompt-pack contracts in `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_engine.py`.
- [ ] Add it to guided topics in `/Users/wuyongnaren/Documents/印度占星/scripts/guided_topic_discovery.py`.
- [ ] Expose it in `/Users/wuyongnaren/Documents/印度占星/jyotish-app/main.js` and `/Users/wuyongnaren/Documents/印度占星/jyotish-app/ai-chat.js`.
- [ ] Add `monthly_adjudication_summary` to compact prompt-pack contracts in `<repo>/scripts/jyotish_engine.py`.
- [ ] Add it to guided topics in `<repo>/scripts/guided_topic_discovery.py`.
- [ ] Expose it in `<repo>/jyotish-app/main.js` and `<repo>/jyotish-app/ai-chat.js`.
### Task 4: Verify targeted regressions
@@ -21,9 +21,9 @@
### Task 1: Lock the unified runtime and adjudication bundle contract in tests
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_api_server_security.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_cli_smoke.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_frontend_productization.py`
- Modify: `<repo>/tests/test_api_server_security.py`
- Modify: `<repo>/tests/test_cli_smoke.py`
- Modify: `<repo>/tests/test_frontend_productization.py`
**Interfaces:**
- Consumes: `_compute_consultation_workflow(...)`, `_compute_thematic_report(...)`, `build_guided_topics(...)`
@@ -85,9 +85,9 @@ git commit -m "test: lock unified consultation runtime contract"
### Task 2: Make runtime_planner a real executor and make thematic report prefer upstream unified contracts
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/unified_consultation_orchestrator.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_api_server.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_api_server_security.py`
- Modify: `<repo>/scripts/unified_consultation_orchestrator.py`
- Modify: `<repo>/scripts/jyotish_api_server.py`
- Test: `<repo>/tests/test_api_server_security.py`
**Interfaces:**
- Consumes: `UnifiedConsultationOrchestrator.runtime_planner(...)`, `_compute_consultation_workflow(...)`
@@ -105,7 +105,7 @@ assert planner["reuse_contract"]["thematic_report"] == "thematic_report"
- [ ] **Step 2: Implement runtime executed/skipped step recording**
In `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_api_server.py`, refactor `_compute_consultation_workflow(...)` so it:
In `<repo>/scripts/jyotish_api_server.py`, refactor `_compute_consultation_workflow(...)` so it:
- initializes `executed_steps = []`, `skipped_steps = []`
- runs only steps listed in `runtime_planner["sync_steps"]`
- appends actual executed step names
@@ -154,11 +154,11 @@ git commit -m "feat: execute unified consultation runtime steps"
### Task 3: Collapse monthly adjudication, audit gate, and axes into one canonical strict adjudication bundle
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_api_server.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/guided_topic_discovery.py`
- Modify: `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_engine.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_api_server_security.py`
- Test: `/Users/wuyongnaren/Documents/印度占星/tests/test_cli_smoke.py`
- Modify: `<repo>/scripts/jyotish_api_server.py`
- Modify: `<repo>/scripts/guided_topic_discovery.py`
- Modify: `<repo>/scripts/jyotish_engine.py`
- Test: `<repo>/tests/test_api_server_security.py`
- Test: `<repo>/tests/test_cli_smoke.py`
**Interfaces:**
- Consumes: strict workflow contracts, `monthly_adjudication_summary`, `technique_audit_summary`, `interpretation_axes`
@@ -171,7 +171,7 @@ git commit -m "feat: execute unified consultation runtime steps"
- [ ] **Step 1: Add bundle builder in API server**
Create a helper in `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_api_server.py` that returns:
Create a helper in `<repo>/scripts/jyotish_api_server.py` that returns:
```python
{
@@ -196,7 +196,7 @@ while keeping legacy top-level fields for compatibility.
- [ ] **Step 3: Make guided topics read only the bundle first**
In `/Users/wuyongnaren/Documents/印度占星/scripts/guided_topic_discovery.py`, replace separate contract lookups with:
In `<repo>/scripts/guided_topic_discovery.py`, replace separate contract lookups with:
```python
bundle = _as_dict(contract.get("strict_adjudication_bundle"))
@@ -209,7 +209,7 @@ and populate:
- [ ] **Step 4: Make prompt pack carry the bundle through**
In `/Users/wuyongnaren/Documents/印度占星/scripts/jyotish_engine.py`, ensure each strict workflow contract already exported into `ai_prompt_pack.evidence_snapshot.strict_workflow_contracts` includes `strict_adjudication_bundle`.
In `<repo>/scripts/jyotish_engine.py`, ensure each strict workflow contract already exported into `ai_prompt_pack.evidence_snapshot.strict_workflow_contracts` includes `strict_adjudication_bundle`.
- [ ] **Step 5: Run backend/shared contract tests**
@@ -227,9 +227,9 @@ git commit -m "feat: unify strict adjudication bundle"
### Task 4: Make frontend and AI consume the single shared bundle
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/jyotish-app/main.js`
- Modify: `/Users/wuyongnaren/Documents/印度占星/jyotish-app/ai-chat.js`
- Modify: `/Users/wuyongnaren/Documents/印度占星/tests/test_frontend_productization.py`
- Modify: `<repo>/jyotish-app/main.js`
- Modify: `<repo>/jyotish-app/ai-chat.js`
- Modify: `<repo>/tests/test_frontend_productization.py`
**Interfaces:**
- Consumes: `strict_adjudication_bundle`
@@ -248,7 +248,7 @@ and keep legacy checks for compatibility.
- [ ] **Step 2: Update guided topic card rendering**
In `/Users/wuyongnaren/Documents/印度占星/jyotish-app/main.js`, read:
In `<repo>/jyotish-app/main.js`, read:
```javascript
const bundle = topic?.strict_adjudication_bundle || {};
@@ -263,7 +263,7 @@ from the bundle first.
- [ ] **Step 3: Update AI chat payload construction**
In `/Users/wuyongnaren/Documents/印度占星/jyotish-app/ai-chat.js`, include:
In `<repo>/jyotish-app/ai-chat.js`, include:
```javascript
guidedTopicContext.strict_adjudication_bundle
@@ -287,11 +287,11 @@ git commit -m "feat: make frontend consume strict adjudication bundle"
### Task 5: Run the smallest real regressions and inspect real-user output
**Files:**
- Modify: `/Users/wuyongnaren/Documents/印度占星/progress.md` (only if you are already tracking this thread there)
- Modify: `<repo>/progress.md` (only if you are already tracking this thread there)
**Interfaces:**
- Consumes: completed runtime/thematic/bundle/frontend flow
- Produces: verified real output for the REDACTED_DATE REDACTED_TIME REDACTED_PLACE case
- Produces: verified real output for the private birth datetime case
- [ ] **Step 1: Run focused regression suite**
@@ -311,7 +311,7 @@ Expected: all PASS.
- [ ] **Step 2: Run real consultation workflow sample**
Run a local Python one-off calling `_compute_consultation_workflow(...)` with:
- `REDACTED_DATE REDACTED_TIME`
- `private birth datetime`
- `lat=36.42`
- `lon=114.2`
- `tz=8`
@@ -1,68 +0,0 @@
# B.V. Raman Long Report Book Structure Implementation Plan
> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.
**Goal:** Convert the existing single-file comprehensive chart study into a reusable long-report book structure that can serve Markdown-first authoring and later PDF export.
**Architecture:** Keep the existing [`/Users/wuyongnaren/Documents/印度占星/docs/reports/bv_raman_style_comprehensive_chart_research_REDACTED_DATE_REDACTED_TIME_v1.md`](/Users/wuyongnaren/Documents/印度占星/docs/reports/bv_raman_style_comprehensive_chart_research_REDACTED_DATE_REDACTED_TIME_v1.md) as the source draft, then add a new `chart_research_REDACTED_DATE_REDACTED_TIME/` directory with `book.md` as the main concatenation entry, chapter files for thematic expansion, appendix files for raw evidence, and a small metadata file for later export tooling. No new PDF pipeline is added now because none is already wired in this repo.
**Tech Stack:** Markdown, YAML metadata, existing repo docs conventions, local JSON artifacts under `.tmp/chart_study`.
## Global Constraints
- Reuse existing report content; do not rewrite the full report from scratch.
- Keep Markdown as the source of truth; PDF remains an export artifact, not a second authoring format.
- Do not add new dependencies or a speculative PDF toolchain.
- Preserve honesty boundaries about VedAstro/PyJHora/jyotishganit closure.
- Prefer links to existing JSON artifacts over copying large raw blobs into prose chapters.
- Before editing chapters, read `docs/reports/chart_research_REDACTED_DATE_REDACTED_TIME/README.md` and `docs/reports/chart_research_REDACTED_DATE_REDACTED_TIME/appendices/H_error_ledger_and_preflight.md`.
### Task 1: Add the long-report container
**Files:**
- Create: `/Users/wuyongnaren/Documents/印度占星/docs/reports/chart_research_REDACTED_DATE_REDACTED_TIME/README.md`
- Create: `/Users/wuyongnaren/Documents/印度占星/docs/reports/chart_research_REDACTED_DATE_REDACTED_TIME/book.md`
- Create: `/Users/wuyongnaren/Documents/印度占星/docs/reports/chart_research_REDACTED_DATE_REDACTED_TIME/metadata.yaml`
**Interfaces:**
- Consumes: existing v1 report and `.tmp/chart_study/*.json`
- Produces: one stable report root that later tools or humans can extend
- [ ] **Step 1: Create report root directory structure**
- [ ] **Step 2: Add `README.md` explaining source-of-truth and export intent**
- [ ] **Step 3: Add `metadata.yaml` for title/author/date/export hints**
- [ ] **Step 4: Add `book.md` listing chapters and appendices in final reading order**
### Task 2: Add chapter skeletons mapped to the requested methodology
**Files:**
- Create: `/Users/wuyongnaren/Documents/印度占星/docs/reports/chart_research_REDACTED_DATE_REDACTED_TIME/chapters/*.md`
**Interfaces:**
- Consumes: user-requested B.V. Raman / Parāśara / Jaimini scope
- Produces: one file per chapter so later expansion stays bounded
- [ ] **Step 1: Create 0021 chapter files**
- [ ] **Step 2: Put a short contract at top of each chapter saying what belongs there**
- [ ] **Step 3: Pre-fill only the first few chapters with live links to existing content/data**
- [ ] **Step 4: Leave later chapters as clean skeletons instead of fake filled content**
### Task 3: Add appendix and data references
**Files:**
- Create: `/Users/wuyongnaren/Documents/印度占星/docs/reports/chart_research_REDACTED_DATE_REDACTED_TIME/appendices/*.md`
- Populate/Reference: `/Users/wuyongnaren/Documents/印度占星/docs/reports/chart_research_REDACTED_DATE_REDACTED_TIME/data/`
**Interfaces:**
- Consumes: `.tmp/chart_study/*.json`
- Produces: report appendix map and raw evidence pointers
- [ ] **Step 1: Create appendix stubs for raw tables, dasha boundaries, varga positions, parity, audit, glossary**
- [ ] **Step 2: Reference current `.tmp/chart_study` artifacts instead of duplicating them**
- [ ] **Step 3: Explain which appendices are ready vs blocked**
### Task 4: Connect old draft into new main chain
**Files:**
- Modify/Create: `/Users/wuyongnaren/Documents/印度占星/docs/reports/chart_research_REDACTED_DATE_REDACTED_TIME/README.md`
- Keep: `/Users/wuyongnaren/Documents/印度占星/docs/reports/bv_raman_style_comprehensive_chart_research_REDACTED_DATE_REDACTED_TIME_v1.md`
**Interfaces:**
- Consumes: existing v1 draft headings and current chapter structure
- Produces: migration notes from monolith draft to book structure
- [ ] **Step 1: Mark the old v1 report as the seed draft**
- [ ] **Step 2: Map v1 sections to new chapter files**
- [ ] **Step 3: Keep migration incremental instead of copying all prose immediately**
### Task 5: Verify structure only
**Files:**
- Verify: report directory tree and links
**Interfaces:**
- Consumes: created Markdown files
- Produces: a structure that humans can open immediately
- [ ] **Step 1: List created files**
- [ ] **Step 2: Open `book.md` and `README.md` to confirm links**
- [ ] **Step 3: Avoid claiming PDF export exists until an actual exporter is wired and tested**