TwinEthosRequest access

Control

AI-generated public-interest text published without disclosure

Deployers publishing AI-generated/manipulated text to inform the public on matters of public interest must disclose it is artificially generated — unless human editorial review/responsibility applies.

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.

Family: AI-generated content is not labeled, marked, or traceable as artificial · control id cond.ai-generated-public-interest-text-no-disclosure

Reach

1items this one guard addresses
1jurisdictions where binding law on it is in force
0more where it is enacted, not yet applying
0standards and frameworks on the same control

Law in force in European Union (EU).

The guard to add

Label AI-generated public-interest text as artificially generated where it is published, or hold it as a draft until a named editor reviews it and takes responsibility.

In the code that turns model output into a published article, post, or tweet (WordPress or Ghost post creation, create_tweet, cms.publish), one of two paths is enforced: the published item carries a visible disclosure (byline or label stating the text was AI-generated) rendered with the content, or the item is created as draft or pending and only an editorial-review step publishes it, recording the reviewing editor and the person or organization holding editorial responsibility. No path posts model output directly with status 'publish' and neither marker.

Where it goes: 9 AI output handling, 1 application source code, 14 user-facing text.

What reviewers look for: either a disclosure that appears on the published page (in the content or byline template, not only in hidden metadata) or a draft/pending status with a recorded editor approval before publish; no direct model-output-to-publish call in the same path without either.

Example (WordPress REST API (editorial review)), before:

text = client.chat.completions.create(model=MODEL, messages=msgs).choices[0].message.content
requests.post(f'{WP}/wp-json/wp/v2/posts', auth=WP_AUTH,
              json={'title': title, 'content': text, 'status': 'publish'})

After:

text = client.chat.completions.create(model=MODEL, messages=msgs).choices[0].message.content
post = requests.post(f'{WP}/wp-json/wp/v2/posts', auth=WP_AUTH,
                     json={'title': title, 'content': text, 'status': 'draft'}).json()
editorial_review.enqueue(post_id=post['id'])   # an editor edits, approves, and publishes; approver recorded

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)