Validate Report
validate_reportCheck a draft report against the statutory content list and its deadline. PREMIUM (license).
Typical input {"regime": "eu_gdpr", "obligation": "supervisory_authority_notification", "report": {"nature": "...", "contact": "...", "consequences": "...", "measures": "..."}} returns {"checklist": [{"item": "...", "found": true, "evidence": [...]}, ...], "missing": [...], "coverage": 0.75, "timing": {...}}. The content check is a keyword heuristic over the report text, reported as such; the timing check compares submitted_at with due_at and, for GDPR, flags a late notification that gives no reasons for the delay. Use before a report is sent. Not a legal review, and it cannot judge quality, only presence. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": ""} (for example {"error": "unknown obligation '' for /; one of "}). Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| due_at | No | the computed due instant (from compute_deadlines), optional. | |
| regime | Yes | regime id from list_regimes. | |
| report | Yes | the draft, as an object of section name -> text (any keys). | |
| event_type | No | event type within the regime; optional when the regime has one. | |
| obligation | Yes | obligation id (for example incident_notification). | |
| submitted_at | No | when the report was or will be submitted, optional. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||