Highlights
- Planner LLM → SOQL, validated by a dedicated SOQL guard (whitelisted objects and fields, read-only, injection defence), then a deterministic executor fallback.
- Composer LLM shapes retrieved rows into chart, table and KPI specs.
- Nonsense-question rejection with curated suggestions; schema discovery instead of hard-coded objects.