Control
An official report drafted fully or partly by AI is finalized without the AI disclosure and the author's signed review
Report-writing software that drafts an official report (such as a police report) with AI puts, on each page or in the body, the name of every AI program used and the required statement that the report was written fully or in part using AI, and finalizes the report only with the author's signature verifying that they reviewed it and that its facts are true and correct.
Informational data, not legal advice. Summaries and rules have not been reviewed by a lawyer: always verify official law text for decisions. A suggested guard is intended to address each rule; adding it is not a statement of compliance to that law.
Reach
Law in force in California (US-CA).
Trust and provenance
How far the rules this guard addresses have been checked. Each rule links to its provision, with its citation, official text and its own panel.
- This control
- Audit-grade: meets all 3 checks of the TwinEthos audit standard that apply to it.
- Lanes
- Binding law — in force 1
- Verification
- Sources last verified 4 Oct 2026; each provision states how.
- Data release
- Data release 2026.10.04.3, data as of 4 Oct 2026, schema 0.3.10.
- Legal review
- None of the 1 rule has been reviewed by a lawyer; no TwinEthos rule has been legally reviewed yet. Treat each as research to check against the official text; it is not legal advice. Open questions for counsel on them: 1.
- Audit standard
- 1 of 1 rule audit-grade. The audit standard is TwinEthos's own quality bar for provenance, dates, applicability, detectors, fixtures, remediation and licences; it is not a legal review.
- Detectors
- 1 detector, all experimental: written from the rule's text and not yet measured for precision on real code, so treat a hit as a lead to verify. Each provision lists its detectors' known limits.
The guard to add
Stamp every AI-assisted official report with the AI program used and the statutory AI statement, and finalize it only after the author signs that they reviewed it and its facts are true.
The report model records which AI programs touched the narrative; the PDF and print renderers add, on each page (or once in the body), the program names and the statement 'This report was written either fully or in part using artificial intelligence.'; the finalize endpoint refuses an AI-assisted report until the author's electronic signature and a review attestation ('I reviewed this report and the facts are true and correct') are stored with it.
Where it goes: 9 AI output handling, 1 application source code, 14 user-facing text.
What reviewers look for: the exact AI statement and the AI program names in the report template or renderer for AI-assisted reports; a finalize/submit handler that checks an author signature and review attestation before setting the report official; no path that exports or files an AI-drafted report without both.
Example (Python report service + OpenAI SDK), before:
narrative = client.chat.completions.create(model=MODEL, messages=msgs).choices[0].message.content
report.narrative = narrative
report.status = 'final'
render_pdf(report)After:
AI_STATEMENT = 'This report was written either fully or in part using artificial intelligence.'
narrative = client.chat.completions.create(model=MODEL, messages=msgs).choices[0].message.content
report.narrative = narrative
report.ai_programs.append(MODEL_PRODUCT_NAME)
if not (report.author_signature and report.review_attested):
raise PermissionError('author must sign and attest review before the report is final')
report.status = 'final'
render_pdf(report, page_footer=f"{AI_STATEMENT} AI used: {', '.join(report.ai_programs)}")Engineering guidance, not legal advice. Each provision below may add its own details (a cadence, a deadline, a required notice element): open it for those.
Every rule this guard addresses
Binding law — in force (1)
- California (US-CA)
Informational data, not legal advice. Summaries are TwinEthos's own words and rules have not been reviewed by a lawyer: check the official text before relying on any of it. A guard addresses an item; adding it is not a statement that your code meets any law.