feat: sync advanced technique progress dashboard

This commit is contained in:
732642856
2026-07-20 00:57:46 +08:00
parent 565f100a20
commit 898d006d07
5 changed files with 229 additions and 5 deletions
@@ -625,14 +625,22 @@
"claim_status": "open_queue",
"consumer_policy": "research_to_commercial_contract_only",
"claim_boundary": "Groups remaining three-engine mismatches by owner track for closure planning; no production tuning or truth upgrade."
},
{
"packet_id": "five_track_blocked_progress_dashboard_2026_07_20",
"path": "references/oracle/five_track_blocked_progress_dashboard_2026_07_20.json",
"domain": "closure_governance",
"claim_status": "open_queue",
"consumer_policy": "research_to_commercial_contract_only",
"claim_boundary": "Progress dashboard for five blocked-but-code-progressable domains; does not unblock production-ready claims."
}
],
"production_tuning_allowed": false,
"scope": "evidence_packet_index",
"status": "active_index_v1",
"summary": {
"packet_count": 78,
"blocked_or_partial_count": 51,
"packet_count": 79,
"blocked_or_partial_count": 52,
"human_review_required_count": 2
}
}
@@ -0,0 +1,84 @@
{
"boundary": "Dashboard only; tracks remain blocked/open until their source packets close with reproducible evidence.",
"claim_status": "open_queue",
"created_at": "2026-07-20",
"production_tuning_allowed": false,
"scope": "five_track_blocked_progress_dashboard",
"status": "progress_dashboard_ready",
"summary": {
"blocked_track_count": 2,
"open_queue_or_partial_count": 3,
"oracle_ready_count": 0,
"track_count": 5
},
"tracks": [
{
"claim_status": "open_queue",
"domain": "three_engine_parity",
"next_action": "process owner-track batches: endpoint_contract, formula_source, unit_schema, worked_example",
"progress": {
"already_attributed_count": 2,
"batched_source_row_count": 60,
"owner_track_count": 4,
"remaining_ticket_count": 58,
"source_queue_count": 60
},
"source_packets": [
"references/oracle/three_engine_owner_track_batch_plan_2026_07_20.json"
]
},
{
"claim_status": "blocked",
"domain": "kp_precision_timing",
"next_action": "collect exact KP cusp numeric worked example with input/settings/raw hash",
"progress": {
"exact_cusp_status": "blocked_missing_oracle",
"runtime_policy": "supporting_probe_only"
},
"source_packets": [
"references/oracle/kp_cusp_precision_contract_2026_07_19.json"
]
},
{
"claim_status": "open_queue",
"domain": "worked_example_collection",
"next_action": "capture raw/hash for candidate pages and promote only field-complete numeric packets",
"progress": {
"candidate_count": 5,
"oracle_ready_count": 0,
"raw_capture_needed_count": 2,
"runtime_only_count": 1
},
"source_packets": [
"references/oracle/worked_example_numeric_packet_eligibility_2026_07_20.json"
]
},
{
"claim_status": "blocked",
"domain": "horary_annual_sensitive_points",
"next_action": "collect public numeric worked examples for Prashna/Tajika/Saham/Gulika/Sphuta",
"progress": {
"packet_status": "oracle_packet_registry_v1",
"technique_count": 5
},
"source_packets": [
"references/oracle/prashna_tajika_saham_gulika_sphuta_oracle_packet_2026_07_19.json"
]
},
{
"claim_status": "partial",
"domain": "varga_mapping",
"next_action": "promote D1-D60 public source candidates from names/use notes to verified formula packets only when numeric oracle exists",
"progress": {
"allowed_scope": "names_and_use_notes_only",
"candidate_source_count": 3,
"generic_only_count": 0,
"numeric_oracle_ready_count": 0
},
"source_packets": [
"references/oracle/d1_d60_source_use_readiness_2026_07_19.json"
]
}
],
"truth_matrix_allowed": false
}
@@ -0,0 +1,90 @@
#!/usr/bin/env python3
"""Dashboard for the five blocked domains that can still make code progress."""
from __future__ import annotations
import argparse
import json
from pathlib import Path
from typing import Any
ROOT = Path(__file__).resolve().parents[1]
ORACLE = ROOT / "references/oracle"
def load(name: str) -> dict[str, Any]:
return json.loads((ORACLE / name).read_text(encoding="utf-8"))
def build(date: str) -> dict[str, Any]:
three = load("three_engine_owner_track_batch_plan_2026_07_20.json")
worked = load("worked_example_numeric_packet_eligibility_2026_07_20.json")
kp = load("kp_cusp_precision_contract_2026_07_19.json")
horary = load("prashna_tajika_saham_gulika_sphuta_oracle_packet_2026_07_19.json")
varga = load("d1_d60_source_use_readiness_2026_07_19.json")
tracks = [
{
"domain": "three_engine_parity",
"claim_status": three["claim_status"],
"progress": three["summary"],
"next_action": "process owner-track batches: endpoint_contract, formula_source, unit_schema, worked_example",
"source_packets": [str((ORACLE / "three_engine_owner_track_batch_plan_2026_07_20.json").relative_to(ROOT))],
},
{
"domain": "kp_precision_timing",
"claim_status": "blocked",
"progress": {"exact_cusp_status": kp["exact_cusp_status"], "runtime_policy": kp["kp_significator_runtime_policy"]},
"next_action": "collect exact KP cusp numeric worked example with input/settings/raw hash",
"source_packets": [str((ORACLE / "kp_cusp_precision_contract_2026_07_19.json").relative_to(ROOT))],
},
{
"domain": "worked_example_collection",
"claim_status": worked["claim_status"],
"progress": worked["summary"],
"next_action": "capture raw/hash for candidate pages and promote only field-complete numeric packets",
"source_packets": [str((ORACLE / "worked_example_numeric_packet_eligibility_2026_07_20.json").relative_to(ROOT))],
},
{
"domain": "horary_annual_sensitive_points",
"claim_status": "blocked",
"progress": {"packet_status": horary["status"], "technique_count": len(horary.get("techniques", []))},
"next_action": "collect public numeric worked examples for Prashna/Tajika/Saham/Gulika/Sphuta",
"source_packets": [str((ORACLE / "prashna_tajika_saham_gulika_sphuta_oracle_packet_2026_07_19.json").relative_to(ROOT))],
},
{
"domain": "varga_mapping",
"claim_status": varga["claim_status"],
"progress": varga["summary"],
"next_action": "promote D1-D60 public source candidates from names/use notes to verified formula packets only when numeric oracle exists",
"source_packets": [str((ORACLE / "d1_d60_source_use_readiness_2026_07_19.json").relative_to(ROOT))],
},
]
return {
"scope": "five_track_blocked_progress_dashboard",
"created_at": date,
"status": "progress_dashboard_ready",
"claim_status": "open_queue",
"production_tuning_allowed": False,
"truth_matrix_allowed": False,
"summary": {
"track_count": len(tracks),
"oracle_ready_count": 0,
"blocked_track_count": sum(1 for row in tracks if row["claim_status"] == "blocked"),
"open_queue_or_partial_count": sum(1 for row in tracks if row["claim_status"] != "blocked"),
},
"tracks": tracks,
"boundary": "Dashboard only; tracks remain blocked/open until their source packets close with reproducible evidence.",
}
def main() -> int:
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument("--date", default="2026-07-20")
args = parser.parse_args()
print(json.dumps(build(args.date), ensure_ascii=False, indent=2, sort_keys=True))
return 0
if __name__ == "__main__":
raise SystemExit(main())
@@ -25,8 +25,6 @@ def build(date: str) -> dict[str, Any]:
}
groups: dict[str, list[dict[str, Any]]] = defaultdict(list)
for row in queue["queue"]:
if (row["section"], row["field"].split(".")[0]) in already:
continue
groups[row["owner_track"]].append(row)
batches = []
@@ -56,7 +54,7 @@ def build(date: str) -> dict[str, Any]:
"summary": {
"source_queue_count": len(queue["queue"]),
"already_attributed_count": len(already),
"remaining_ticket_count": max(len(queue["queue"]) - len(already), 0),
"remaining_ticket_count": progress["summary"]["remaining_open_count"],
"batched_source_row_count": sum(batch["ticket_count"] for batch in batches),
"owner_track_count": len(batches),
},
@@ -0,0 +1,44 @@
import json
import subprocess
from pathlib import Path
ROOT = Path(__file__).resolve().parents[1]
ARTIFACT = ROOT / "references/oracle/five_track_blocked_progress_dashboard_2026_07_20.json"
INDEX = ROOT / "references/oracle/evidence_packet_index_2026_07_19.json"
def test_five_track_dashboard_summarizes_requested_tracks():
data = json.loads(
subprocess.check_output(
["python3", "scripts/five_track_blocked_progress_dashboard.py", "--date", "2026-07-20"],
cwd=ROOT,
text=True,
)
)
assert data["scope"] == "five_track_blocked_progress_dashboard"
assert data["summary"]["track_count"] == 5
assert data["summary"]["oracle_ready_count"] == 0
assert data["production_tuning_allowed"] is False
assert {row["domain"] for row in data["tracks"]} == {
"three_engine_parity",
"kp_precision_timing",
"worked_example_collection",
"horary_annual_sensitive_points",
"varga_mapping",
}
def test_five_track_dashboard_preserves_numeric_progress_counts():
data = json.loads(ARTIFACT.read_text(encoding="utf-8"))
tracks = {row["domain"]: row for row in data["tracks"]}
assert tracks["three_engine_parity"]["progress"]["remaining_ticket_count"] == 58
assert tracks["worked_example_collection"]["progress"]["candidate_count"] == 5
assert tracks["worked_example_collection"]["progress"]["oracle_ready_count"] == 0
assert tracks["varga_mapping"]["progress"]["numeric_oracle_ready_count"] == 0
assert all(row["claim_status"] in {"blocked", "open_queue", "partial"} for row in data["tracks"])
def test_five_track_dashboard_is_indexed():
packets = {row["packet_id"]: row for row in json.loads(INDEX.read_text(encoding="utf-8"))["packets"]}
assert packets["five_track_blocked_progress_dashboard_2026_07_20"]["claim_status"] == "open_queue"