Harden Shadbala oracle and VedAstro range evidence

This commit is contained in:
732642856
2026-06-28 17:01:56 +08:00
parent 32e742f92b
commit e15fe3a545
6 changed files with 235 additions and 5 deletions
+3
View File
@@ -34,6 +34,8 @@ This file is the small index for the current engineering fronts that still drive
- `/Users/wuyongnaren/Documents/印度占星/docs/research/oracle_benchmark_inventory_latest.json`
- `/Users/wuyongnaren/Documents/印度占星/docs/research/oracle_closure_master_dashboard_latest.md`
- `/Users/wuyongnaren/Documents/印度占星/docs/research/public_benchmark_dashboard_latest.md`
- `/Users/wuyongnaren/Documents/印度占星/docs/research/shadbala_absolute_oracle_comparison_audit_2026_06_28.md`
- `/Users/wuyongnaren/Documents/印度占星/scripts/shadbala_oracle_comparison.py`
- `/Users/wuyongnaren/Documents/印度占星/references/oracle/`
- Before changing oracle-dependent adjudicator or benchmark claims, run:
- `python3 scripts/oracle_benchmark_inventory.py --format json`
@@ -43,6 +45,7 @@ This file is the small index for the current engineering fronts that still drive
- `/Users/wuyongnaren/Documents/印度占星/docs/research/vedastro_parity_matrix_latest.md`
- `/Users/wuyongnaren/Documents/印度占星/docs/research/vedastro_parity_matrix_latest.json`
- `/Users/wuyongnaren/Documents/印度占星/docs/research/life_event_graph_v1_audit_2026_06_28.md`
- `/Users/wuyongnaren/Documents/印度占星/docs/research/vedastro_range_scan_allowlist_audit_2026_06_28.md`
- `/Users/wuyongnaren/Documents/印度占星/scripts/vedastro_service_adapter.py`
- follow only after the Jaimini marriage bridge v1 regression loop is closed
- Use the parity matrix before adding or claiming VedAstro-equivalent capability.
@@ -0,0 +1,52 @@
# Shadbala Absolute Oracle Comparison Audit - 2026-06-28
## Scope
This pass promotes the local Shadbala absolute-value comparison helper from an untracked fragment into a formal oracle-closure asset.
## New Entrypoint
- `/Users/wuyongnaren/Documents/印度占星/scripts/shadbala_oracle_comparison.py`
- Primary function: `compare_case(oracle_file, case_id)`
- CLI example:
```bash
python3 scripts/shadbala_oracle_comparison.py \
--oracle-file references/oracle/dasha_shadbala_oracle_cases.json \
--case-id template_steve_jobs_dasha_lahiri \
--format json
```
## Output Contract
The report exposes:
- `scope = shadbala_absolute_oracle_comparison`
- `case_id`
- external oracle `status`
- birth and settings metadata
- per-planet `oracle_total_rupa`, `local_total_rupa`, and `diff_total_rupa`
- per-component Rupa deltas
- `global_scaling_check`
- tolerance metadata
## Boundary
- This is diagnostic oracle evidence.
- It does not authorize global Shadbala scaling.
- It does not tune constants from a single case.
- It preserves component-level deltas so future fixes can target the actual failing sub-strength instead of hiding mismatch inside a total score.
## Current External-Verified Case Snapshot
For `template_steve_jobs_dasha_lahiri`:
- `planet_count = 7`
- `planets_within_total_tolerance = 5`
- `max_abs_total_delta_rupa = 2.085`
This is useful enough to keep in the main repo, but not sufficient to claim Shadbala oracle closure.
## Regression Coverage
- `/Users/wuyongnaren/Documents/印度占星/tests/test_shadbala_oracle_comparison.py`
@@ -0,0 +1,48 @@
# VedAstro Range Scan Allowlist Audit - 2026-06-28
## Scope
This pass hardens the VedAstro range-scan adapter so external `EventsAtRange`-style responses do not enter the local evidence ledger unfiltered.
## Behavior
`scripts/vedastro_service_adapter.py` now filters range-scan events through a per-domain allowlist before writing `evidence_ledger`.
Supported domains:
- `marriage`
- `wealth`
- `career`
Each domain can accept an event by either:
- known event id, or
- at least one relevant tag.
## Boundary
- The allowlist only filters external candidate evidence.
- It does not promote VedAstro events into final conclusions.
- It does not change local Dasha, Narayana, Jaimini, Varga, Shadbala, Ashtakavarga, or strict workflow scoring.
- External range evidence remains secondary/oracle evidence until a domain adjudicator explicitly promotes it through tests.
## Contract Exposure
`--print-schema` now exposes:
```json
{
"range_scan_event_allowlist": {
"marriage": {
"event_ids": [],
"tags": []
}
}
}
```
This prevents future agents from treating the filtering layer as hidden behavior.
## Regression Coverage
- `/Users/wuyongnaren/Documents/印度占星/tests/test_vedastro_service_adapter_executor.py`