95 lines
3.8 KiB
Python
95 lines
3.8 KiB
Python
#!/usr/bin/env python3
|
|
"""Build Muhurta OSS worked-example readiness packet.
|
|
|
|
The packet records public/open-source candidates for factor comparison. It does
|
|
not import their code and does not allow a final Muhurta verdict.
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
import json
|
|
from pathlib import Path
|
|
|
|
|
|
ROOT = Path(__file__).resolve().parents[1]
|
|
OUTPUT = ROOT / "references/oracle/muhurta_oss_worked_example_readiness_2026_07_23.json"
|
|
|
|
ROWS = [
|
|
{
|
|
"source_id": "roxyapi_panchang_api",
|
|
"url": "https://github.com/topics/tithi",
|
|
"license_status": "candidate_needs_repo_metadata_check",
|
|
"feature_surface": ["rahu_kaal", "abhijit", "chandrabalam", "tarabalam"],
|
|
"numeric_worked_example_status": "not_found_in_search_snippet",
|
|
"reuse_policy": "reference_only_until_license_and_fixture",
|
|
},
|
|
{
|
|
"source_id": "fusionstrings_panchangam",
|
|
"url": "https://github.com/fusionstrings/panchangam",
|
|
"license_status": "candidate_needs_repo_metadata_check",
|
|
"feature_surface": ["rahu_kalam", "yamaganda", "gulika", "abhijit_muhurta"],
|
|
"numeric_worked_example_status": "api_candidate_not_oracle",
|
|
"reuse_policy": "reference_only_until_pinned_adapter",
|
|
},
|
|
{
|
|
"source_id": "bidyashish_vedicpanchanga",
|
|
"url": "https://github.com/bidyashish/vedicpanchanga.com",
|
|
"license_status": "candidate_needs_repo_metadata_check",
|
|
"feature_surface": ["muhurta_finder", "rahu_kala", "abhijit", "tyajyam", "hora"],
|
|
"numeric_worked_example_status": "app_candidate_not_oracle",
|
|
"reuse_policy": "reference_only_until_pinned_adapter",
|
|
},
|
|
{
|
|
"source_id": "happyalu_panchang_muhurt",
|
|
"url": "https://github.com/happyalu/panchang-muhurt/",
|
|
"license_status": "candidate_needs_repo_metadata_check",
|
|
"feature_surface": ["panchanga", "muhurta_filters", "red_flag_timeslots"],
|
|
"numeric_worked_example_status": "filter_candidate_not_oracle",
|
|
"reuse_policy": "reference_only_until_license_and_fixture",
|
|
},
|
|
{
|
|
"source_id": "vijayalur_tarabala_chandrabala_panchaka",
|
|
"url": "https://vijayalur.com/2011/10/02/tarabala-chandrabala-panchaka/",
|
|
"license_status": "public_article_reference",
|
|
"feature_surface": ["tarabala", "chandrabala", "panchaka"],
|
|
"numeric_worked_example_status": "formula_reference_not_replay_packet",
|
|
"reuse_policy": "cite_as_reference_only",
|
|
},
|
|
]
|
|
|
|
|
|
def build() -> dict:
|
|
factors = sorted({factor for row in ROWS for factor in row["feature_surface"]})
|
|
return {
|
|
"scope": "muhurta_oss_worked_example_readiness",
|
|
"created_at": "2026-07-23",
|
|
"claim_status": "candidate_source_matrix",
|
|
"truth_matrix_allowed": False,
|
|
"production_tuning_allowed": False,
|
|
"final_muhurta_verdict_allowed": False,
|
|
"rows": ROWS,
|
|
"summary": {
|
|
"candidate_count": len(ROWS),
|
|
"factor_surface": factors,
|
|
"numeric_oracle_ready_count": 0,
|
|
"pinned_adapter_ready_count": 0,
|
|
},
|
|
"next_actions": [
|
|
"Pin one permissive OSS package with license and package hash.",
|
|
"Capture local factor raw/hash for Tarabala, Chandrabala, Rahu Kalam, Yamaganda, Gulika Kalam, Abhijit, Panchaka, Sankranti, Vyatipata and Vaidhriti.",
|
|
"Promote only sources with full input, expected factor values, version identity and replayable raw.",
|
|
],
|
|
"boundary": "These are candidate references only; they do not authorize a final auspicious-date verdict.",
|
|
}
|
|
|
|
|
|
def main() -> int:
|
|
packet = build()
|
|
OUTPUT.write_text(json.dumps(packet, ensure_ascii=False, indent=2) + "\n", encoding="utf-8")
|
|
print(json.dumps(packet, ensure_ascii=False, indent=2))
|
|
return 0
|
|
|
|
|
|
if __name__ == "__main__":
|
|
raise SystemExit(main())
|