279 lines
10 KiB
JSON
279 lines
10 KiB
JSON
{
|
|
"scope": "vedastro_parity_matrix",
|
|
"schema_version": 1,
|
|
"generated_at": "2026-07-16T11:53:05.440396+00:00",
|
|
"summary": {
|
|
"row_count": 13,
|
|
"p0_count": 11,
|
|
"status_counts": {
|
|
"partial": 8,
|
|
"covered": 4,
|
|
"missing": 1
|
|
},
|
|
"recommended_path_counts": {
|
|
"hybrid_local_plus_vedastro": 7,
|
|
"local_native": 4,
|
|
"new_local_impl": 1,
|
|
"external_evidence_only": 1
|
|
},
|
|
"fastest_path_lane_counts": {
|
|
"official_python_bridge": 3,
|
|
"hybrid_router": 1,
|
|
"local_native_preferred": 5,
|
|
"official_mcp": 1,
|
|
"rest_adapter": 2,
|
|
"external_evidence_only": 1
|
|
},
|
|
"local_registry_technique_count": 91
|
|
},
|
|
"boundary": {
|
|
"not_a_clone_claim": true,
|
|
"external_outputs_are_adapter_evidence_until_promoted": true,
|
|
"local_adjudicator_remains_final_reasoning_layer": true
|
|
},
|
|
"rows": [
|
|
{
|
|
"vedastro_capability": "Tajika Annual",
|
|
"category": "annual_prediction",
|
|
"local_status": "partial",
|
|
"local_assets": [
|
|
"tajika.py",
|
|
"varshaphala.py",
|
|
"sahams",
|
|
"solar_return"
|
|
],
|
|
"can_call_vedastro": true,
|
|
"recommended_path": "hybrid_local_plus_vedastro",
|
|
"fastest_path_lane": "official_python_bridge",
|
|
"priority": "P0",
|
|
"license_boundary": "local_native_or_external_oracle",
|
|
"adjudicator_use": "secondary",
|
|
"gap_notes": "Annual modules exist; yearly career/wealth/month windows need stronger strict-workflow integration.",
|
|
"route_notes": "Use Python bridge for breadth, but keep year-chart reasoning and labels local."
|
|
},
|
|
{
|
|
"vedastro_capability": "Ayanamsa Selection",
|
|
"category": "ephemeris_policy",
|
|
"local_status": "partial",
|
|
"local_assets": [
|
|
"ayanamsa_utils",
|
|
"ephemeris_adapter_contract"
|
|
],
|
|
"can_call_vedastro": true,
|
|
"recommended_path": "hybrid_local_plus_vedastro",
|
|
"fastest_path_lane": "hybrid_router",
|
|
"priority": "P0",
|
|
"license_boundary": "external_service_or_clean_room_only",
|
|
"adjudicator_use": "oracle_only",
|
|
"gap_notes": "Local Lahiri path is usable, but broad ayanamsa parity and public comparison artifacts remain incomplete.",
|
|
"route_notes": "Prefer local ayanamsa controls for production and use VedAstro only as parity/oracle evidence."
|
|
},
|
|
{
|
|
"vedastro_capability": "Prashna / Horary",
|
|
"category": "horary",
|
|
"local_status": "covered",
|
|
"local_assets": [
|
|
"prashna.py",
|
|
"kp_system.py",
|
|
"upagraha_gulika_maandi",
|
|
"sphuta_trisphuta_family"
|
|
],
|
|
"can_call_vedastro": true,
|
|
"recommended_path": "local_native",
|
|
"fastest_path_lane": "local_native_preferred",
|
|
"priority": "P0",
|
|
"license_boundary": "local_native_or_clean_room",
|
|
"adjudicator_use": "secondary",
|
|
"gap_notes": "Horary modules exist but are not yet a first-class question adjudicator route.",
|
|
"route_notes": "No need to outsource core horary math while local modules already exist."
|
|
},
|
|
{
|
|
"vedastro_capability": "Jaimini / Chara Dasha",
|
|
"category": "jaimini",
|
|
"local_status": "covered",
|
|
"local_assets": [
|
|
"jaimini.py",
|
|
"AK",
|
|
"DK",
|
|
"UL",
|
|
"Chara Dasha",
|
|
"Jaimini marriage bridge v1"
|
|
],
|
|
"can_call_vedastro": true,
|
|
"recommended_path": "local_native",
|
|
"fastest_path_lane": "local_native_preferred",
|
|
"priority": "P0",
|
|
"license_boundary": "local_native_mit_attribution_for_reused_parts",
|
|
"adjudicator_use": "secondary",
|
|
"gap_notes": "Core Jaimini exists; mission/career/marriage quality adjudicator folding is not yet exhaustive.",
|
|
"route_notes": "Keep Jaimini native; external engines help only as spot-check evidence."
|
|
},
|
|
{
|
|
"vedastro_capability": "Report Rendering",
|
|
"category": "presentation",
|
|
"local_status": "partial",
|
|
"local_assets": [
|
|
"report_artifact API",
|
|
"report_builder.py",
|
|
"chart_renderer.py",
|
|
"jyotish-app export"
|
|
],
|
|
"can_call_vedastro": false,
|
|
"recommended_path": "new_local_impl",
|
|
"fastest_path_lane": "local_native_preferred",
|
|
"priority": "P0",
|
|
"license_boundary": "local_native",
|
|
"adjudicator_use": "not_used",
|
|
"gap_notes": "HTML/PDF artifact path exists; polished SVG/PDF chart rendering and cloud-scale report production are not finished.",
|
|
"route_notes": "Rendering is a local product concern, not a VedAstro dependency."
|
|
},
|
|
{
|
|
"vedastro_capability": "Synastry / Ashtakoot",
|
|
"category": "relationship_matching",
|
|
"local_status": "covered",
|
|
"local_assets": [
|
|
"synastry.py",
|
|
"ashtakoot.py",
|
|
"36-point Ashtakoot",
|
|
"16-factor compatibility"
|
|
],
|
|
"can_call_vedastro": true,
|
|
"recommended_path": "local_native",
|
|
"fastest_path_lane": "local_native_preferred",
|
|
"priority": "P0",
|
|
"license_boundary": "local_native_mit_attribution_for_reused_parts",
|
|
"adjudicator_use": "secondary",
|
|
"gap_notes": "Matching modules exist and API-backed; relationship adjudicator still needs a formal bridge.",
|
|
"route_notes": "Local matching is already stronger than a thin external call unless you need an oracle comparison."
|
|
},
|
|
{
|
|
"vedastro_capability": "MCP / API Surface",
|
|
"category": "service_surface",
|
|
"local_status": "partial",
|
|
"local_assets": [
|
|
"mcp_server.py",
|
|
"jyotish_api_server.py",
|
|
"strict workflows",
|
|
"vedastro_service_adapter.py",
|
|
"vedastro_official_mcp_bridge.py"
|
|
],
|
|
"can_call_vedastro": true,
|
|
"recommended_path": "hybrid_local_plus_vedastro",
|
|
"fastest_path_lane": "official_mcp",
|
|
"priority": "P0",
|
|
"license_boundary": "external_service_or_local_native",
|
|
"adjudicator_use": "primary",
|
|
"gap_notes": "Local API/MCP surfaces exist and the official public MCP bridge is live; REST adapter official endpoint smoke still depends on configured endpoint-backed execution.",
|
|
"route_notes": "If official MCP is available, that is the fastest direct agent path; otherwise fall back to local REST adapter."
|
|
},
|
|
{
|
|
"vedastro_capability": "Ashtakavarga",
|
|
"category": "strength",
|
|
"local_status": "partial",
|
|
"local_assets": [
|
|
"ashtakavarga",
|
|
"ashtakavarga_pav",
|
|
"ashtakavarga_sodhita",
|
|
"finance_ashtakavarga_bridge"
|
|
],
|
|
"can_call_vedastro": true,
|
|
"recommended_path": "hybrid_local_plus_vedastro",
|
|
"fastest_path_lane": "official_python_bridge",
|
|
"priority": "P0",
|
|
"license_boundary": "local_native_or_external_oracle",
|
|
"adjudicator_use": "secondary",
|
|
"gap_notes": "SAV/BAV is in production; PAV/Sodhita/Kakshya bridges need continued regression before being dominant labels.",
|
|
"route_notes": "Use the Python bridge for broad calculator access while local strict workflows stay authoritative."
|
|
},
|
|
{
|
|
"vedastro_capability": "Shadbala",
|
|
"category": "strength",
|
|
"local_status": "partial",
|
|
"local_assets": [
|
|
"shadbala",
|
|
"shadbala_advanced",
|
|
"shadbala_component_cap",
|
|
"oracle_shadbala_queue"
|
|
],
|
|
"can_call_vedastro": true,
|
|
"recommended_path": "hybrid_local_plus_vedastro",
|
|
"fastest_path_lane": "official_python_bridge",
|
|
"priority": "P0",
|
|
"license_boundary": "local_native_or_external_oracle",
|
|
"adjudicator_use": "secondary",
|
|
"gap_notes": "Local component-aware cap exists; absolute external oracle closure is still incomplete.",
|
|
"route_notes": "Broad strength calculators are easiest through the Python bridge, then folded back as oracle evidence."
|
|
},
|
|
{
|
|
"vedastro_capability": "EventsAtRange / Life Event Graph",
|
|
"category": "timing_range_scan",
|
|
"local_status": "partial",
|
|
"local_assets": [
|
|
"transit_trigger",
|
|
"dasha",
|
|
"narayana_dasha",
|
|
"vedastro_service_adapter.range_scan"
|
|
],
|
|
"can_call_vedastro": true,
|
|
"recommended_path": "hybrid_local_plus_vedastro",
|
|
"fastest_path_lane": "rest_adapter",
|
|
"priority": "P0",
|
|
"license_boundary": "external_service_or_clean_room_only",
|
|
"adjudicator_use": "oracle_only",
|
|
"gap_notes": "Local timing modules exist, but a high-frequency day/hour event graph is not yet a local productized radar.",
|
|
"route_notes": "Use official REST adapter first for range scans; keep local adjudicator as the reasoning layer."
|
|
},
|
|
{
|
|
"vedastro_capability": "D1-D60 Divisional Charts",
|
|
"category": "varga",
|
|
"local_status": "covered",
|
|
"local_assets": [
|
|
"varga",
|
|
"varga_full",
|
|
"shodasavarga",
|
|
"divisional_charts_extended"
|
|
],
|
|
"can_call_vedastro": true,
|
|
"recommended_path": "local_native",
|
|
"fastest_path_lane": "local_native_preferred",
|
|
"priority": "P0",
|
|
"license_boundary": "local_native_or_clean_room",
|
|
"adjudicator_use": "primary",
|
|
"gap_notes": "Local varga coverage is strong; keep VedAstro/PyJHora as benchmark evidence rather than replacing local math.",
|
|
"route_notes": "Do not pay external-call cost here; local engine is already the primary route."
|
|
},
|
|
{
|
|
"vedastro_capability": "Birth Time ML / Rectification Assistant",
|
|
"category": "birth_time_rectification",
|
|
"local_status": "partial",
|
|
"local_assets": [
|
|
"birth_time_rectifier.py",
|
|
"rectification_gate",
|
|
"jyotish-app rectification"
|
|
],
|
|
"can_call_vedastro": true,
|
|
"recommended_path": "hybrid_local_plus_vedastro",
|
|
"fastest_path_lane": "rest_adapter",
|
|
"priority": "P1",
|
|
"license_boundary": "external_service_or_local_native",
|
|
"adjudicator_use": "secondary",
|
|
"gap_notes": "Local rectification exists; ML parity with VedAstro-style service behavior is not established.",
|
|
"route_notes": "Use VedAstro externally only as supporting evidence; local rectification gate stays in control."
|
|
},
|
|
{
|
|
"vedastro_capability": "Numerology / Non-Jyotish Tools",
|
|
"category": "adjacent_tools",
|
|
"local_status": "missing",
|
|
"local_assets": [],
|
|
"can_call_vedastro": true,
|
|
"recommended_path": "external_evidence_only",
|
|
"fastest_path_lane": "external_evidence_only",
|
|
"priority": "P2",
|
|
"license_boundary": "external_service_only",
|
|
"adjudicator_use": "not_used",
|
|
"gap_notes": "Adjacent product feature; not required for Jyotish adjudicator depth.",
|
|
"route_notes": "Do not implement locally unless it becomes product-critical."
|
|
}
|
|
]
|
|
}
|