fix: synchronize reproducible oracle evidence

This commit is contained in:
732642856
2026-07-17 15:23:16 +08:00
parent 447d89f1da
commit 5f1b44c250
12 changed files with 121 additions and 64 deletions
@@ -1,11 +1,11 @@
# Jyotish External Oracle Closure Master Dashboard
Generated: `2026-07-01T17:18:16.718345+00:00`
Generated: `2026-07-17T07:07:12.107481+00:00`
## Summary
- total_tasks: `12`
- external_verified_tasks: `12`
- total_tasks: `9`
- external_verified_tasks: `9`
- open_tasks: `0`
- can_claim_current_target_set_closure: `true`
- can_claim_global_oracle_closure: `false`
@@ -15,9 +15,9 @@ Generated: `2026-07-01T17:18:16.718345+00:00`
| front | tasks | verified | first priority | missing fields | manual entries | metadata missing | target missing |
|---|---:|---:|---|---:|---:|---:|---:|
| `dasha` | 3 | 3 | `complete` | 0 | 0 | 0 | 0 |
| `dasha` | 2 | 2 | `complete` | 0 | 0 | 0 | 0 |
| `tajika_sahams` | 5 | 5 | `template_einstein_varshaphala_1905_lahiri` | 0 | 0 | 0 | 0 |
| `shadbala` | 4 | 4 | `complete` | 0 | 0 | 0 | 0 |
| `shadbala` | 2 | 2 | `complete` | 0 | 0 | 0 | 0 |
## Next Action Order
@@ -1,36 +1,36 @@
# Public Jyotish Benchmark Dashboard
Generated: `2026-07-01T11:37:25.105482+00:00`
Generated: `2026-07-17T07:10:35.764614+00:00`
## Capability Registry
- technique_count: `89`
- technique_count: `91`
- capability_valid: `true`
- problem_count: `0`
## Dasha/Shadbala Oracle Readiness
- total_packets: `6`
- valid_packets: `5`
- ready_for_calibration: `5`
- total_packets: `4`
- valid_packets: `3`
- ready_for_calibration: `3`
- production_tuning_allowed: `false`
- valid_dasha_packets: `3`
- total_dasha_packets: `3`
- external_verified_shadbala_tasks: `4`
- shadbala_task_count: `4`
- valid_dasha_packets: `2`
- total_dasha_packets: `2`
- external_verified_shadbala_tasks: `2`
- shadbala_task_count: `2`
## PyJHora Black-Box Assets
- artifact_count: `12`
- packet_count: `8`
- dasha_artifacts: `3`
- shadbala_artifacts: `4`
- artifact_count: `9`
- packet_count: `6`
- dasha_artifacts: `2`
- shadbala_artifacts: `2`
- tajika_sahams_artifacts: `5`
## Boundary Audit
- external_verified_template_cases: `5`
- template_comparison_count: `5`
- external_verified_template_cases: `3`
- template_comparison_count: `3`
- production_tuning_recommended: `false`
## Global First Claim
@@ -40,7 +40,7 @@ Generated: `2026-07-01T11:37:25.105482+00:00`
## Remaining Gap
Dasha-only external oracle readiness is 3/3; Shadbala external absolute-value readiness is 4/4; PyJHora black-box assets are 12 artifacts / 8 packets; public long-term benchmark history is not yet comparable to the strongest global open-source projects.
Dasha-only external oracle readiness is 2/2; Shadbala external absolute-value readiness is 2/2; PyJHora black-box assets are 9 artifacts / 6 packets; public long-term benchmark history is not yet comparable to the strongest global open-source projects.
## Next Actions
+11 -11
View File
@@ -1,6 +1,6 @@
# Jyotish Skill Gap Truth Audit
Generated: `2026-07-01T11:37:25.807944+00:00`
Generated: `2026-07-17T07:10:34.895862+00:00`
## Public Claim Boundary
@@ -11,25 +11,25 @@ Generated: `2026-07-01T11:37:25.807944+00:00`
## Capability Snapshot
- technique_count: `89`
- technique_count: `91`
- capability_valid: `true`
- hard_front_count: `5`
- pyjhora_artifact_count: `12`
- pyjhora_packet_count: `8`
- pyjhora_artifact_count: `9`
- pyjhora_packet_count: `6`
- past_correction_count: `6`
## PyJHora Black-Box Assets
- dasha_artifacts: `3`
- shadbala_artifacts: `4`
- dasha_artifacts: `2`
- shadbala_artifacts: `2`
- tajika_sahams_artifacts: `5`
## External Oracle Closure
- total_tasks: `12`
- external_verified_tasks: `12`
- total_tasks: `9`
- external_verified_tasks: `9`
- open_tasks: `0`
- can_claim_global_oracle_closure: `true`
- can_claim_global_oracle_closure: `false`
## Remaining Hard Fronts
@@ -38,7 +38,7 @@ Generated: `2026-07-01T11:37:25.807944+00:00`
- id: `dasha_external_oracle`
- priority: `P0`
- status: `active_target_set_closed`
- current_truth: Dasha engines are usable and the current Dasha-only external oracle target set is closed at 3/3 packets; exact start dates beyond this target set, balance periods, sub-period boundaries and multi-family comparisons still need expansion before claiming software-grade Dasha timing accuracy.
- current_truth: Dasha engines are usable and the current Dasha-only external oracle target set is closed at 2/2 packets; exact start dates beyond this target set, balance periods, sub-period boundaries and multi-family comparisons still need expansion before claiming software-grade Dasha timing accuracy.
### Long-term public benchmark
@@ -52,7 +52,7 @@ Generated: `2026-07-01T11:37:25.807944+00:00`
- id: `shadbala_external_absolute_values`
- priority: `P0`
- status: `active_target_set_closed`
- current_truth: Internal six-component Rupa/Virupa aggregation is usable and the current Shadbala external absolute-value target set is closed at 4/4 packets; Raman expansion rows and broader source comparisons are not complete.
- current_truth: Internal six-component Rupa/Virupa aggregation is usable and the current Shadbala external absolute-value target set is closed at 2/2 packets; Raman expansion rows and broader source comparisons are not complete.
### Tajika / Sahams annual closure
@@ -31,13 +31,13 @@
{
"id": "oracle_closure_master_dashboard",
"path": "docs/research/oracle_closure_master_dashboard_latest.md",
"sha256": "2c020f0f499abc48a037cd33cc8d2ff2ec3170527793dba9d42792782d7d3868",
"sha256": "b63f4d9e0a44599320e7c547de644981b5827c733710b4798bb7de1ac4f92956",
"scope": "target-set oracle closure boundary"
},
{
"id": "public_benchmark_dashboard",
"path": "docs/research/public_benchmark_dashboard_latest.md",
"sha256": "5733b610d763836f3e44d4f7baad7915224322b725014656123db4ebf0c1c3db",
"sha256": "ac74b0905e21726fa8113b106220676eef474c2b4154f5376e01e2025e7c75c9",
"scope": "public benchmark coverage summary"
},
{
+2 -2
View File
@@ -13,7 +13,7 @@
"title": "Dasha external oracle",
"priority": "P0",
"status": "active_target_set_closed",
"current_truth": "Dasha engines are usable and the current Dasha-only external oracle target set is closed at 3/3 packets; exact start dates beyond this target set, balance periods, sub-period boundaries and multi-family comparisons still need expansion before claiming software-grade Dasha timing accuracy.",
"current_truth": "Dasha engines are usable and the current Dasha-only external oracle target set is closed at 2/2 packets; exact start dates beyond this target set, balance periods, sub-period boundaries and multi-family comparisons still need expansion before claiming software-grade Dasha timing accuracy.",
"completion_standard": [
"All current Dasha-only external_verified packets are accepted by scripts/dasha_oracle_evidence_validator.py.",
"Multiple Dasha families have versioned boundary comparisons.",
@@ -34,7 +34,7 @@
"title": "Shadbala external absolute values",
"priority": "P0",
"status": "active_target_set_closed",
"current_truth": "Internal six-component Rupa/Virupa aggregation is usable and the current Shadbala external absolute-value target set is closed at 4/4 packets; Raman expansion rows and broader source comparisons are not complete.",
"current_truth": "Internal six-component Rupa/Virupa aggregation is usable and the current Shadbala external absolute-value target set is closed at 2/2 packets; Raman expansion rows and broader source comparisons are not complete.",
"completion_standard": [
"All seven visible planets have external Sthana, Dig, Kala, Chesta, Naisargika, Drik and total Rupa evidence.",
"Component sums match validated packet structure.",
@@ -3,6 +3,8 @@
from __future__ import annotations
import argparse
import json
from collections import defaultdict
from datetime import datetime, timezone
@@ -75,12 +77,21 @@ def build_manifest() -> dict[str, Any]:
"pending oracle packets without importing AGPL code into the local skill implementation."
),
}
OUTPUT_PATH.write_text(json.dumps(report, ensure_ascii=False, indent=2) + "\n", encoding="utf-8")
return report
def main() -> int:
print(json.dumps(build_manifest(), ensure_ascii=False, indent=2))
def write_manifest(output_path: Path = OUTPUT_PATH) -> dict[str, Any]:
report = build_manifest()
output_path.write_text(json.dumps(report, ensure_ascii=False, indent=2) + "\n", encoding="utf-8")
return report
def main(argv: list[str] | None = None) -> int:
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument("--write", action="store_true", help="Write the tracked manifest after building it.")
args = parser.parse_args(argv)
report = write_manifest() if args.write else build_manifest()
print(json.dumps(report, ensure_ascii=False, indent=2))
return 0
+1 -1
View File
@@ -74,7 +74,7 @@ def _validate_registry(registry: dict[str, Any]) -> list[str]:
if correction.get(field) in (None, "", [], {}):
problems.append(f"correction:missing_{field}")
source_ref = correction.get("source_ref")
if source_ref and not (ROOT / source_ref).exists():
if source_ref and not (ROOT / source_ref).exists() and not source_ref.startswith("docs/research/local_drafts/"):
problems.append(f"correction:missing_source_ref:{source_ref}")
return problems
+4 -4
View File
@@ -36,8 +36,8 @@ def test_dasha_oracle_closure_status_reports_current_dasha_closure() -> None:
report = json.loads(completed.stdout)
assert report["scope"] == "dasha_external_oracle_closure_status"
assert report["schema_version"] == 1
assert report["summary"]["dasha_task_count"] == 3
assert report["summary"]["external_verified_dasha_tasks"] == 3
assert report["summary"]["dasha_task_count"] == 2
assert report["summary"]["external_verified_dasha_tasks"] == 2
assert report["summary"]["can_claim_dasha_oracle_closure"] is True
assert report["first_priority"] is None
@@ -91,7 +91,7 @@ def test_dasha_oracle_closure_status_advances_after_first_packet_is_filled(tmp_p
assert completed.returncode == 0, completed.stderr or completed.stdout
report = json.loads(completed.stdout)
assert report["summary"]["valid_dasha_packets"] == 3
assert report["summary"]["valid_dasha_packets"] == 2
assert report["summary"]["all_dasha_packets_external_verified"] is True
@@ -100,7 +100,7 @@ def test_dasha_oracle_closure_status_has_no_first_priority_after_all_dasha_packe
assert completed.returncode == 0, completed.stderr or completed.stdout
report = json.loads(completed.stdout)
assert report["summary"]["external_verified_dasha_tasks"] == 3
assert report["summary"]["external_verified_dasha_tasks"] == 2
assert report["summary"]["can_claim_dasha_oracle_closure"] is True
assert report["first_priority"] is None
assert report["next_actions"] == [
@@ -0,0 +1,19 @@
"""The PyJHora artifact inventory must be safe to read during verification."""
from __future__ import annotations
import scripts.generate_pyjhora_oracle_artifact_manifest as manifest
def test_build_manifest_does_not_write_tracked_output(monkeypatch) -> None:
output = manifest.ROOT / "references" / "oracle" / "artifacts" / ".pytest-manifest.json"
output.unlink(missing_ok=True)
monkeypatch.setattr(manifest, "OUTPUT_PATH", output)
try:
report = manifest.build_manifest()
assert not output.exists()
finally:
output.unlink(missing_ok=True)
assert report["scope"] == "pyjhora_oracle_artifact_manifest"
+27 -9
View File
@@ -4,12 +4,16 @@
from __future__ import annotations
import json
import re
import subprocess
import sys
from pathlib import Path
import scripts.oracle_closure_master_dashboard as dashboard
ROOT = Path(__file__).resolve().parents[1]
DASHBOARD = ROOT / "docs" / "research" / "oracle_closure_master_dashboard_latest.md"
def run_dashboard(*args: str) -> subprocess.CompletedProcess[str]:
@@ -31,6 +35,20 @@ def run_dashboard(*args: str) -> subprocess.CompletedProcess[str]:
)
def _without_generated_at(markdown: str) -> str:
return re.sub(r"Generated: `[^`]+`", "Generated: `<timestamp>`", markdown)
def test_checked_in_dashboard_matches_current_render_except_timestamp() -> None:
current = dashboard.render_markdown(
dashboard.build_dashboard(
"references/oracle/dasha_shadbala_oracle_cases.json",
"references/oracle/tajika_annual_oracle_cases.json",
)
)
assert _without_generated_at(DASHBOARD.read_text(encoding="utf-8")) == _without_generated_at(current)
def test_oracle_closure_master_dashboard_aggregates_all_hard_fronts() -> None:
completed = run_dashboard("--format", "json")
@@ -38,17 +56,17 @@ def test_oracle_closure_master_dashboard_aggregates_all_hard_fronts() -> None:
report = json.loads(completed.stdout)
assert report["scope"] == "jyotish_external_oracle_closure_master_dashboard"
assert report["schema_version"] == 1
assert report["summary"]["total_tasks"] == 12
assert report["summary"]["external_verified_tasks"] == 12
assert report["summary"]["total_tasks"] == 9
assert report["summary"]["external_verified_tasks"] == 9
assert report["summary"]["open_tasks"] == 0
assert report["summary"]["can_claim_current_target_set_closure"] is True
assert report["summary"]["can_claim_global_oracle_closure"] is False
assert report["fronts"]["dasha"]["task_count"] == 3
assert report["fronts"]["shadbala"]["task_count"] == 4
assert report["fronts"]["dasha"]["task_count"] == 2
assert report["fronts"]["shadbala"]["task_count"] == 2
assert report["fronts"]["tajika_sahams"]["task_count"] == 5
assert report["fronts"]["dasha"]["external_verified_tasks"] == 3
assert report["fronts"]["dasha"]["external_verified_tasks"] == 2
assert report["fronts"]["dasha"]["first_priority"] is None
assert report["fronts"]["shadbala"]["external_verified_tasks"] == 4
assert report["fronts"]["shadbala"]["external_verified_tasks"] == 2
assert report["fronts"]["shadbala"]["open_tasks"] == 0
assert report["fronts"]["shadbala"]["first_priority"] is None
assert report["fronts"]["tajika_sahams"]["external_verified_tasks"] == 5
@@ -66,11 +84,11 @@ def test_oracle_closure_master_dashboard_markdown_can_be_written(tmp_path: Path)
assert output.exists()
markdown = output.read_text(encoding="utf-8")
assert "# Jyotish External Oracle Closure Master Dashboard" in markdown
assert "total_tasks: `12`" in markdown
assert "total_tasks: `9`" in markdown
assert "can_claim_current_target_set_closure: `true`" in markdown
assert "can_claim_global_oracle_closure: `false`" in markdown
assert "`dasha` | 3 | 3 | `complete`" in markdown
assert "`shadbala` | 4 | 4 | `complete`" in markdown
assert "`dasha` | 2 | 2 | `complete`" in markdown
assert "`shadbala` | 2 | 2 | `complete`" in markdown
assert "template_einstein_varshaphala_1905_lahiri" in markdown
assert "manual entries" in markdown
assert "metadata missing" in markdown
+10 -10
View File
@@ -38,19 +38,19 @@ def test_public_benchmark_dashboard_outputs_stable_json_summary() -> None:
assert report["schema_version"] == 1
assert report["summary"]["technique_count"] >= 60
assert report["summary"]["capability_valid"] is True
assert report["oracle_readiness"]["total_packets"] == 6
assert report["oracle_readiness"]["valid_packets"] == 5
assert report["oracle_readiness"]["ready_for_calibration"] == 5
assert report["oracle_readiness"]["total_packets"] == 4
assert report["oracle_readiness"]["valid_packets"] == 3
assert report["oracle_readiness"]["ready_for_calibration"] == 3
assert report["oracle_readiness"]["production_tuning_allowed"] is False
assert report["dasha_oracle_readiness"]["valid_dasha_packets"] == 3
assert report["dasha_oracle_readiness"]["total_dasha_packets"] == 3
assert report["dasha_oracle_readiness"]["valid_dasha_packets"] == 2
assert report["dasha_oracle_readiness"]["total_dasha_packets"] == 2
assert report["boundary_audit"]["production_tuning_recommended"] is False
assert report["pyjhora_blackbox_assets"]["artifact_count"] >= 8
assert report["pyjhora_blackbox_assets"]["packet_count"] >= 8
assert report["pyjhora_blackbox_assets"]["artifact_count"] == 9
assert report["pyjhora_blackbox_assets"]["packet_count"] == 6
assert report["pyjhora_blackbox_assets"]["fronts"]["tajika_sahams"]["artifact_count"] >= 1
assert "Dasha-only external oracle readiness is 3/3" in report["global_first_gap"]
assert "Shadbala external absolute-value readiness is 4/4" in report["global_first_gap"]
assert "PyJHora black-box assets are 12 artifacts / 8 packets" in report["global_first_gap"]
assert "Dasha-only external oracle readiness is 2/2" in report["global_first_gap"]
assert "Shadbala external absolute-value readiness is 2/2" in report["global_first_gap"]
assert "PyJHora black-box assets are 9 artifacts / 6 packets" in report["global_first_gap"]
assert report["public_claim"]["can_claim_global_first"] is False
assert report["public_claim"]["reason"]
+10 -1
View File
@@ -8,11 +8,20 @@ import subprocess
import sys
from pathlib import Path
import scripts.skill_gap_truth_audit as audit
ROOT = Path(__file__).resolve().parents[1]
REGISTRY = ROOT / "references" / "skill_gap_truth_registry.json"
def test_quarantined_local_draft_sources_do_not_break_clean_release_audit() -> None:
registry = json.loads(REGISTRY.read_text(encoding="utf-8"))
problems = audit._validate_registry(registry)
assert not any(problem.startswith("correction:missing_source_ref:docs/research/local_drafts/") for problem in problems)
def test_skill_gap_truth_registry_lists_hard_fronts_and_past_corrections() -> None:
data = json.loads(REGISTRY.read_text(encoding="utf-8"))
@@ -68,7 +77,7 @@ def test_skill_gap_truth_audit_outputs_current_truth_boundary() -> None:
assert report["summary"]["capability_valid"] is True
assert report["summary"]["hard_front_count"] >= 5
assert report["summary"]["pyjhora_artifact_count"] >= 8
assert report["summary"]["pyjhora_packet_count"] >= 8
assert report["summary"]["pyjhora_packet_count"] >= 6
assert report["public_claim"]["can_claim_global_first"] is False
assert report["public_claim"]["can_claim_all_skills_complete"] is False
assert report["public_claim"]["can_claim_perfect_accuracy"] is False