data: add real-case holdout evidence
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
# Real-Case Holdout V2 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:** Add ten new research-grade holdout cases, compare frozen v1/v2 Jyotish replay logic across twenty cases, and promote only improvements that generalize to holdout data.
|
||||
|
||||
**Architecture:** Keep batch 1 immutable as discovery/training evidence. Store batch 2 separately, run both rule versions through one benchmark runner, and generate batch/combined comparison reports. Production orchestration receives only the promoted rule version plus explicit external-oracle and specificity boundaries.
|
||||
|
||||
**Tech Stack:** Python 3, Swiss Ephemeris-backed local CLI, JSON manifests/schemas, pytest, public Astro-Databank and independently sourced event records.
|
||||
|
||||
## Global Constraints
|
||||
|
||||
- Batch 2 must contain ten new people: five career events and five legal marriages.
|
||||
- Birth time must be Rodden A or AA; event date must have primary or verified-secondary source.
|
||||
- Freeze v2 before observing batch-2 results.
|
||||
- V2 additions: node dispositor, D10/D9 Lagna-lord and domain-house lord, A10/UL lord, Amatyakaraka/Darakaraka, and annual-layer audit when available.
|
||||
- Do not change score thresholds after batch-2 results.
|
||||
- No user birth data or private conversation feedback.
|
||||
- No scientific accuracy claim without sourced negative controls.
|
||||
|
||||
### Task 1: Freeze V2 Contract
|
||||
|
||||
**Files:**
|
||||
- Modify: `tests/test_public_real_case_benchmark.py`
|
||||
- Modify: `scripts/public_real_case_benchmark.py`
|
||||
|
||||
- [ ] Add failing tests for explicit `v1` and `v2` rule versions.
|
||||
- [ ] Add deterministic v2 signal helpers and preserve v1 output.
|
||||
- [ ] Verify v1 batch-1 results remain unchanged.
|
||||
|
||||
### Task 2: Add Holdout Manifest
|
||||
|
||||
**Files:**
|
||||
- Create: `references/real_case_calibration/replay_manifest_holdout_v2.json`
|
||||
- Modify: `tests/test_real_case_replay_validator.py`
|
||||
|
||||
- [ ] Add failing validation test for ten new A/AA cases and 5/5 domain split.
|
||||
- [ ] Research and import birth/event sources.
|
||||
- [ ] Validate no person overlaps batch 1.
|
||||
|
||||
### Task 3: Run V1/V2 Holdout Comparison
|
||||
|
||||
**Files:**
|
||||
- Modify: `scripts/public_real_case_benchmark.py`
|
||||
- Create: `docs/benchmark/public_real_case_holdout_v2_2026_07_11.json`
|
||||
|
||||
- [ ] Add batch comparison summary and rule-promotion decision.
|
||||
- [ ] Run v1 and frozen v2 on batch 2.
|
||||
- [ ] Run combined twenty-case summary.
|
||||
- [ ] Promote v2 only if holdout recall/exact-label improve without more blocked cases.
|
||||
|
||||
### Task 4: Integrate and Document
|
||||
|
||||
**Files:**
|
||||
- Modify: `scripts/unified_consultation_orchestrator.py`
|
||||
- Create: `docs/research/public_real_case_20_case_closure_2026_07_11.md`
|
||||
- Modify: `docs/research/pre_work_error_ledger.md`
|
||||
|
||||
- [ ] Expose promoted benchmark summary and remaining gaps.
|
||||
- [ ] Document misses, conflicts, external-engine states, and next negative-control design.
|
||||
- [ ] Run focused tests, privacy scan, diff check, and pre-work gate.
|
||||
Reference in New Issue
Block a user