| 1 | --- |
| 2 | name: "ai-content-disclosure" |
| 3 | description: "Reusable pattern for visibly disclosing AI-generated editorial content across the Hugo site." |
| 4 | domain: "responsible-ai, frontend, hugo, accessibility" |
| 5 | confidence: "medium" |
| 6 | source: "Amy AI disclosure implementation — 2026-05-25" |
| 7 | owner: "Amy" |
| 8 | --- |
| 9 | |
| 10 | ## Pattern |
| 11 | |
| 12 | Use one global Hugo partial for baseline disclosure on every page, then add a stronger badge in article metadata for generated analysis pages. |
| 13 | |
| 14 | ## Requirements |
| 15 | |
| 16 | - Keep visible disclosure text in the normal reading flow; do not rely only on metadata, tooltips, or ARIA. |
| 17 | - Use generic language such as "AI models" rather than vendor-specific names. |
| 18 | - Name accountability: editorial structure and source curation are owned by the SquadScope maintainer. |
| 19 | - Provide an error-reporting path to GitHub issues. |
| 20 | - Keep the footer partial as the single source of truth so new pages inherit disclosure automatically. |
| 21 | - Ensure print styles preserve the disclosure. |
| 22 | |
| 23 | ## Hugo Implementation |
| 24 | |
| 25 | 1. Render `layouts/partials/ai-disclosure.html` from `layouts/partials/footer.html`. |
| 26 | 2. Add `<meta name="ai-generated" content="true">` in `layouts/partials/head.html`. |
| 27 | 3. Add `data-ai-generated="true"` to the `<body>` in `layouts/_default/baseof.html`. |
| 28 | 4. Add an `AI-generated analysis` badge in `layouts/partials/article-meta.html` for weekly/topic analysis pages. |
| 29 | |
| 30 | ## Verification |
| 31 | |
| 32 | Build the site, inspect rendered HTML for the meta and body attributes, and visually check the footer disclosure plus article badge in light/dark and mobile/desktop viewports. |