feat(i18n): add footer and privacy page translations (en/de/fr)

SUMMARY:
Implemented complete internationalization for footer component and
privacy page across English, German, and French languages.

CHANGES:

1. Privacy Page Translations (3 files):
   - Created locales/en/privacy.json (baseline)
   - Created locales/de/privacy.json (German - Datenschutzerklärung)
   - Created locales/fr/privacy.json (French - Politique de confidentialité)
   - All 11 sections + Te Tiriti fully translated

2. Footer i18n Enhancement:
   - Rewrote footer.js with data-i18n attributes
   - Added languageChanged event listener for dynamic updates
   - Expanded homepage.json footer translations (en/de/fr)
   - Footer now auto-translates with language selection

3. Privacy Page Integration:
   - Added data-page="privacy" attribute to HTML
   - Added data-i18n to all content sections (header + 11 sections)
   - Integrated with existing language-selector.js component
   - Updated i18n-simple.js pageMap to recognize privacy page

4. Bug Fix:
   - Fixed SessionStart hook error in .claude/settings.local.json
   - Changed from $CLAUDE_PROJECT_DIR to absolute path
   - Hook now runs successfully at session start

BENEFITS:
- Better UX for international users (German, French speakers)
- Legal compliance (privacy policy in native languages)
- Consistent language experience across entire site
- Leverages existing language persistence (localStorage)

INTEGRATION:
- Works with existing language-selector.js (flag icons: 🇬🇧 🇩🇪 🇫🇷)
- Language preference persists across all pages
- Zero duplication - integrates with existing i18n system

WCAG COMPLIANCE:
✓ Maintains semantic HTML structure
✓ Preserves WCAG AA contrast ratios
✓ All links remain accessible and distinguishable
✓ German and French translations maintain accessibility standards

FRAMEWORK COMPLIANCE:
✓ Zero CSP violations - uses data-i18n attributes only
✓ No inline scripts or styles
✓ Follows existing Tractatus i18n patterns

🤖 Generated with Claude Code (https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
TheFlow 2025-10-19 14:44:14 +13:00
parent af42f5f549
commit 31ed5b8a77
9 changed files with 721 additions and 175 deletions

View file

@ -1,95 +1,155 @@
/**
* Footer Component
* Shared footer for all Tractatus pages
* Footer Component - i18n-enabled
* Shared footer for all Tractatus pages with language persistence
*/
(function() {
'use strict';
// Create footer HTML
const footerHTML = `
<footer class="bg-gray-900 text-gray-300 mt-16" role="contentinfo">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12">
class TractatusFooter {
constructor() {
this.init();
}
<!-- Main Footer Content -->
<div class="grid grid-cols-1 md:grid-cols-4 gap-8 mb-8">
init() {
// Wait for I18n to be ready before rendering
if (window.I18n && window.I18n.translations && Object.keys(window.I18n.translations).length > 0) {
this.render();
this.attachEventListeners();
} else {
// If I18n not ready, wait for it
const checkI18n = setInterval(() => {
if (window.I18n && window.I18n.translations && Object.keys(window.I18n.translations).length > 0) {
clearInterval(checkI18n);
this.render();
this.attachEventListeners();
}
}, 100);
// Fallback timeout - render without i18n after 2 seconds
setTimeout(() => {
clearInterval(checkI18n);
if (!document.querySelector('footer[role="contentinfo"]')) {
this.render();
this.attachEventListeners();
}
}, 2000);
}
}
render() {
const currentYear = new Date().getFullYear();
// Create footer HTML with data-i18n attributes
const footerHTML = `
<footer class="bg-gray-900 text-gray-300 mt-16" role="contentinfo">
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-12">
<!-- Main Footer Content -->
<div class="grid grid-cols-1 md:grid-cols-4 gap-8 mb-8">
<!-- About -->
<div>
<h3 class="text-white font-semibold mb-4" data-i18n="footer.about_heading">Tractatus Framework</h3>
<p class="text-sm text-gray-400" data-i18n="footer.about_text">
Architectural constraints for AI safety that preserve human agency through structural, not aspirational, guarantees.
</p>
</div>
<!-- Documentation -->
<div>
<h3 class="text-white font-semibold mb-4" data-i18n="footer.documentation_heading">Documentation</h3>
<ul class="space-y-2 text-sm">
<li><a href="/docs.html" class="hover:text-white transition" data-i18n="footer.documentation_links.framework_docs">Framework Docs</a></li>
<li><a href="/about.html" class="hover:text-white transition" data-i18n="footer.documentation_links.about">About</a></li>
<li><a href="/about/values.html" class="hover:text-white transition" data-i18n="footer.documentation_links.core_values">Core Values</a></li>
<li><a href="/demos/27027-demo.html" class="hover:text-white transition" data-i18n="footer.documentation_links.interactive_demo">Interactive Demo</a></li>
</ul>
</div>
<!-- Support -->
<div>
<h3 class="text-white font-semibold mb-4" data-i18n="footer.support_heading">Support</h3>
<ul class="space-y-2 text-sm">
<li><a href="/koha.html" class="hover:text-white transition" data-i18n="footer.support_links.koha">Support (Koha)</a></li>
<li><a href="/koha/transparency.html" class="hover:text-white transition" data-i18n="footer.support_links.transparency">Transparency</a></li>
<li><a href="/media-inquiry.html" class="hover:text-white transition" data-i18n="footer.support_links.media_inquiries">Media Inquiries</a></li>
<li><a href="/case-submission.html" class="hover:text-white transition" data-i18n="footer.support_links.submit_case">Submit Case Study</a></li>
</ul>
</div>
<!-- Legal & Contact -->
<div>
<h3 class="text-white font-semibold mb-4" data-i18n="footer.legal_heading">Legal</h3>
<ul class="space-y-2 text-sm">
<li><a href="/privacy.html" class="hover:text-white transition" data-i18n="footer.legal_links.privacy">Privacy Policy</a></li>
<li><a href="mailto:hello@agenticgovernance.digital" class="hover:text-white transition" data-i18n="footer.legal_links.contact">Contact Us</a></li>
<li><a href="https://github.com/AgenticGovernance/tractatus-framework" class="hover:text-white transition" target="_blank" rel="noopener">GitHub</a></li>
</ul>
</div>
</div>
<!-- Divider -->
<div class="border-t border-gray-800 pt-8">
<!-- Te Tiriti Acknowledgement -->
<div class="mb-6">
<p class="text-sm text-gray-400">
<strong class="text-gray-300" data-i18n="footer.te_tiriti_label">Te Tiriti o Waitangi:</strong>
<span data-i18n="footer.te_tiriti_text">We acknowledge Te Tiriti o Waitangi and our commitment to partnership, protection, and participation. This project respects Māori data sovereignty (rangatiratanga) and collective guardianship (kaitiakitanga).</span>
</p>
</div>
<!-- Bottom Row -->
<div class="flex flex-col md:flex-row justify-between items-center gap-4 text-sm">
<p class="text-gray-400">
© ${currentYear} <span data-i18n="footer.copyright">John G Stroh. Licensed under</span> <a href="https://www.apache.org/licenses/LICENSE-2.0" class="text-blue-400 hover:text-blue-300 transition" target="_blank" rel="noopener"><span data-i18n="footer.license">Apache 2.0</span></a>.
</p>
<p class="text-gray-400" data-i18n="footer.location">
Made in Aotearoa New Zealand 🇳🇿
</p>
</div>
</div>
<!-- About -->
<div>
<h3 class="text-white font-semibold mb-4">Tractatus Framework</h3>
<p class="text-sm text-gray-400">
Architectural constraints for AI safety that preserve human agency through structural, not aspirational, guarantees.
</p>
</div>
</footer>
`;
<!-- Documentation -->
<div>
<h3 class="text-white font-semibold mb-4">Documentation</h3>
<ul class="space-y-2 text-sm">
<li><a href="/docs.html" class="hover:text-white transition">Framework Docs</a></li>
<li><a href="/about.html" class="hover:text-white transition">About</a></li>
<li><a href="/about/values.html" class="hover:text-white transition">Core Values</a></li>
<li><a href="/demos/27027-demo.html" class="hover:text-white transition">Interactive Demo</a></li>
</ul>
</div>
// Insert footer at end of body
const existingFooter = document.querySelector('footer[role="contentinfo"]');
if (existingFooter) {
existingFooter.outerHTML = footerHTML;
} else if (document.body) {
document.body.insertAdjacentHTML('beforeend', footerHTML);
} else {
// If body not ready, wait for DOM
document.addEventListener('DOMContentLoaded', () => {
document.body.insertAdjacentHTML('beforeend', footerHTML);
});
}
<!-- Support -->
<div>
<h3 class="text-white font-semibold mb-4">Support</h3>
<ul class="space-y-2 text-sm">
<li><a href="/koha.html" class="hover:text-white transition">Support (Koha)</a></li>
<li><a href="/koha/transparency.html" class="hover:text-white transition">Transparency</a></li>
<li><a href="/media-inquiry.html" class="hover:text-white transition">Media Inquiries</a></li>
<li><a href="/case-submission.html" class="hover:text-white transition">Submit Case Study</a></li>
</ul>
</div>
// Apply translations if I18n is available
if (window.I18n && window.I18n.applyTranslations) {
window.I18n.applyTranslations();
}
}
<!-- Legal & Contact -->
<div>
<h3 class="text-white font-semibold mb-4">Legal</h3>
<ul class="space-y-2 text-sm">
<li><a href="/privacy.html" class="hover:text-white transition">Privacy Policy</a></li>
<li><a href="mailto:hello@agenticgovernance.digital" class="hover:text-white transition">Contact Us</a></li>
<li><a href="https://github.com/AgenticGovernance/tractatus-framework" class="hover:text-white transition" target="_blank" rel="noopener">GitHub</a></li>
</ul>
</div>
attachEventListeners() {
// Listen for language changes and re-render footer
window.addEventListener('languageChanged', (event) => {
console.log('[Footer] Language changed to:', event.detail.language);
this.render();
});
}
}
</div>
<!-- Divider -->
<div class="border-t border-gray-800 pt-8">
<!-- Te Tiriti Acknowledgement -->
<div class="mb-6">
<p class="text-sm text-gray-400">
<strong class="text-gray-300">Te Tiriti o Waitangi:</strong> We acknowledge Te Tiriti o Waitangi and our commitment to partnership, protection, and participation. This project respects Māori data sovereignty (rangatiratanga) and collective guardianship (kaitiakitanga).
</p>
</div>
<!-- Bottom Row -->
<div class="flex flex-col md:flex-row justify-between items-center gap-4 text-sm">
<p class="text-gray-400">
© ${new Date().getFullYear()} John G Stroh. Licensed under <a href="https://www.apache.org/licenses/LICENSE-2.0" class="text-blue-400 hover:text-blue-300 transition" target="_blank" rel="noopener">Apache 2.0</a>.
</p>
<p class="text-gray-400">
Made in Aotearoa New Zealand 🇳🇿
</p>
</div>
</div>
</div>
</footer>
`;
// Insert footer at end of body
if (document.body) {
document.body.insertAdjacentHTML('beforeend', footerHTML);
// Auto-initialize when DOM is ready
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', () => new TractatusFooter());
} else {
// If body not ready, wait for DOM
document.addEventListener('DOMContentLoaded', function() {
document.body.insertAdjacentHTML('beforeend', footerHTML);
});
new TractatusFooter();
}
})();

View file

@ -64,7 +64,9 @@ const I18n = {
'/faq.html': 'faq',
'/koha.html': 'koha',
'/koha/transparency.html': 'transparency',
'/koha/transparency': 'transparency'
'/koha/transparency': 'transparency',
'/privacy.html': 'privacy',
'/privacy': 'privacy'
};
return pageMap[path] || 'homepage';

View file

@ -98,9 +98,32 @@
}
},
"footer": {
"description": "Referenzimplementierung architektonischer KI-Sicherheitsbeschränkungen—strukturelle Governance validiert in Einzelprojektbereitstellung.",
"tagline": "Sicherheit durch Struktur, nicht durch Aspiration",
"built_with": "Entwickelt mit",
"acknowledgment": "Dieses Framework erkennt Te Tiriti o Waitangi und indigene Führungsschaft in digitaler Souveränität an. Entwickelt mit Respekt für CARE-Prinzipien und Māori-Datensouveränität."
"about_heading": "Tractatus Framework",
"about_text": "Architektonische Beschränkungen für KI-Sicherheit, die menschliche Entscheidungsfreiheit durch strukturelle, nicht aspirationale, Garantien wahren.",
"documentation_heading": "Dokumentation",
"documentation_links": {
"framework_docs": "Framework-Dokumentation",
"about": "Über uns",
"core_values": "Grundwerte",
"interactive_demo": "Interaktive Demo"
},
"support_heading": "Unterstützung",
"support_links": {
"koha": "Unterstützung (Koha)",
"transparency": "Transparenz",
"media_inquiries": "Medienanfragen",
"submit_case": "Fallstudie einreichen"
},
"legal_heading": "Rechtliches",
"legal_links": {
"privacy": "Datenschutzerklärung",
"contact": "Kontakt",
"github": "GitHub"
},
"te_tiriti_label": "Te Tiriti o Waitangi:",
"te_tiriti_text": "Wir erkennen Te Tiriti o Waitangi und unser Bekenntnis zu Partnerschaft, Schutz und Teilhabe an. Dieses Projekt respektiert die Māori-Datensouveränität (rangatiratanga) und kollektive Vormundschaft (kaitiakitanga).",
"copyright": "John G Stroh. Lizenziert unter",
"license": "Apache 2.0",
"location": "Hergestellt in Aotearoa Neuseeland 🇳🇿"
}
}

View file

@ -0,0 +1,137 @@
{
"meta": {
"title": "Datenschutzerklärung | Tractatus AI-Sicherheits-Framework",
"description": "Datenschutzerklärung für das Tractatus AI-Sicherheits-Framework. Erfahren Sie, wie wir Ihre Daten sammeln, verwenden und schützen."
},
"header": {
"title": "Datenschutzerklärung",
"last_updated": "Zuletzt aktualisiert: 8. Oktober 2025"
},
"privacy_first": {
"badge": "Datenschutz zuerst:",
"text": "Das Tractatus Framework basiert auf den Prinzipien der menschlichen Selbstbestimmung und Transparenz. Wir sammeln minimale Daten, verkaufen niemals Ihre Informationen und geben Ihnen die volle Kontrolle über Ihre Daten."
},
"section_1": {
"title": "1. Informationen, die wir sammeln",
"subtitle_1_1": "1.1 Von Ihnen bereitgestellte Informationen",
"items_1_1": [
"<strong>Spenden (Koha):</strong> Name (optional), E-Mail-Adresse (erforderlich für Quittung), Land (optional), Zahlungsinformationen (von Stripe verarbeitet, nicht von uns gespeichert)",
"<strong>Medienanfragen:</strong> Name, E-Mail, Organisation, Anfragedetails",
"<strong>Falleinreichungen:</strong> Kontaktinformationen, Fallbeschreibung, unterstützende Nachweise",
"<strong>Kontoerstellung (falls zutreffend):</strong> E-Mail, Passwort (gehasht), optionale Profilinformationen"
],
"subtitle_1_2": "1.2 Automatisch erfasste Informationen",
"items_1_2": [
"<strong>Analytik:</strong> Seitenaufrufe, verweisende Websites, Browsertyp, Gerätetyp, allgemeiner Standort (Länderebene)",
"<strong>Cookies:</strong> Sitzungsverwaltung, Präferenzen (z. B. ausgewählte Währung), Analytik",
"<strong>Server-Protokolle:</strong> IP-Adressen, Zugriffszeiten, aufgerufene Seiten (90 Tage für Sicherheit aufbewahrt)"
],
"subtitle_1_3": "1.3 Währungsauswahl",
"text_1_3": "Wenn Sie eine Währung für Spenden auswählen, können wir Ihren ungefähren Standort erkennen, um eine geeignete Währung vorzuschlagen. Diese Standortdaten sind:",
"items_1_3": [
"Von Ihrer IP-Adresse abgeleitet (nur Länderebene, keine präzise Geolokalisierung)",
"Nur zur Vorauswahl einer Währung im Spendenformular verwendet",
"Nicht dauerhaft gespeichert",
"Kann durch manuelle Währungsauswahl überschrieben werden"
]
},
"section_2": {
"title": "2. Wie wir Ihre Informationen verwenden",
"items": [
"<strong>Spenden verarbeiten:</strong> E-Mail-Quittungen, öffentliche Unterstützer anerkennen (nur opt-in), Transparenz-Dashboard pflegen",
"<strong>Auf Anfragen antworten:</strong> Medienfragen beantworten, Falleinreichungen prüfen, Support bieten",
"<strong>Dienste verbessern:</strong> Nutzungsmuster analysieren, Fehler beheben, Benutzererfahrung verbessern",
"<strong>Sicherheit:</strong> Betrug verhindern, Missbrauch erkennen, vor Angriffen schützen",
"<strong>Rechtliche Einhaltung:</strong> Geltende Gesetze einhalten, auf rechtliche Anfragen reagieren",
"<strong>Kommunikation:</strong> Quittungen senden, wichtige Updates (wir senden niemals Marketing-E-Mails ohne ausdrückliche Zustimmung)"
]
},
"section_3": {
"title": "3. Datenweitergabe und Offenlegung",
"subtitle_share": "Wir teilen Ihre Daten mit:",
"share_items": [
"<strong>Stripe:</strong> Zahlungsabwicklung für Spenden (unterliegt der <a href=\"https://stripe.com/privacy\" class=\"text-blue-600 hover:underline\" target=\"_blank\" rel=\"noopener\">Datenschutzerklärung von Stripe</a>)",
"<strong>MongoDB Atlas:</strong> Datenbank-Hosting (unterliegt der <a href=\"https://www.mongodb.com/legal/privacy-policy\" class=\"text-blue-600 hover:underline\" target=\"_blank\" rel=\"noopener\">Datenschutzerklärung von MongoDB</a>)",
"<strong>E-Mail-Dienstanbieter:</strong> Zum Versenden von Quittungen und Kommunikation"
],
"subtitle_never": "Wir werden NIEMALS:",
"never_items": [
"❌ Ihre persönlichen Daten verkaufen",
"❌ Ihre Daten mit Werbetreibenden teilen",
"❌ Ihre Daten für Tracking auf anderen Websites verwenden",
"❌ Spenderinformationen ohne ausdrückliche Zustimmung öffentlich teilen"
],
"subtitle_legal": "Rechtliche Offenlegungen:",
"legal_text": "Wir können Ihre Informationen offenlegen, wenn dies gesetzlich, durch Gerichtsbeschluss oder zum Schutz unserer Rechte und Sicherheit erforderlich ist. Wir werden Sie über solche Anfragen benachrichtigen, sofern gesetzlich nicht verboten."
},
"section_4": {
"title": "4. Datenaufbewahrung",
"items": [
"<strong>Spendenaufzeichnungen:</strong> Auf unbestimmte Zeit für Transparenz und Steuerzwecke aufbewahrt",
"<strong>Server-Protokolle:</strong> Nach 90 Tagen gelöscht",
"<strong>Analytikdaten:</strong> Nach 12 Monaten aggregiert und anonymisiert",
"<strong>Benutzerkonten:</strong> Aufbewahrt, bis Sie die Löschung beantragen",
"<strong>Anfragen/Einreichungen:</strong> 2 Jahre aufbewahrt, dann archiviert oder gelöscht"
]
},
"section_5": {
"title": "5. Ihre Rechte",
"intro": "Sie haben das Recht auf:",
"items": [
"<strong>Zugang:</strong> Kopie Ihrer persönlichen Daten anfordern",
"<strong>Berichtigung:</strong> Ungenaue Informationen aktualisieren oder korrigieren",
"<strong>Löschung:</strong> Löschung Ihrer Daten beantragen (vorbehaltlich gesetzlicher Verpflichtungen)",
"<strong>Übertragbarkeit:</strong> Ihre Daten in maschinenlesbarem Format erhalten",
"<strong>Widerspruch:</strong> Zustimmung zu öffentlichen Anerkennungen jederzeit widerrufen",
"<strong>Einspruch:</strong> Der Verarbeitung Ihrer Daten widersprechen"
],
"contact": "Um Ihre Rechte auszuüben, senden Sie eine E-Mail an: <a href=\"mailto:privacy@agenticgovernance.digital\" class=\"text-blue-600 hover:underline\">privacy@agenticgovernance.digital</a>"
},
"section_6": {
"title": "6. Cookies und Tracking",
"essential": "<strong>Wesentliche Cookies:</strong> Erforderlich für die Funktionalität der Website (Sitzungsverwaltung, Authentifizierung)",
"preference": "<strong>Präferenz-Cookies:</strong> Merken sich Ihre Einstellungen (Währungsauswahl, Theme-Präferenzen)",
"analytics": "<strong>Analytik-Cookies:</strong> Datenschutzfreundliche Analytik (kein seitenübergreifendes Tracking)",
"control": "Sie können Cookies über Ihre Browsereinstellungen steuern. Das Deaktivieren von Cookies kann die Funktionalität der Website beeinträchtigen."
},
"section_7": {
"title": "7. Sicherheit",
"intro": "Wir implementieren branchenübliche Sicherheitsmaßnahmen:",
"items": [
"HTTPS-Verschlüsselung für alle Verbindungen",
"Verschlüsselte Datenbankspeicherung",
"Passwort-Hashing (bcrypt)",
"Regelmäßige Sicherheitsaudits",
"Zugriffskontrollen und Überwachung",
"Keine Speicherung von Zahlungskartendaten (von PCI-konformen Stripe-Systemen verwaltet)"
],
"disclaimer": "Obwohl wir angemessene Vorsichtsmaßnahmen treffen, ist kein System zu 100% sicher. Sicherheitsprobleme melden Sie bitte an: <a href=\"mailto:security@agenticgovernance.digital\" class=\"text-blue-600 hover:underline\">security@agenticgovernance.digital</a>"
},
"section_8": {
"title": "8. Datenschutz für Kinder",
"text": "Das Tractatus Framework richtet sich nicht an Kinder unter 13 Jahren. Wir sammeln wissentlich keine Informationen von Kindern. Wenn Sie glauben, dass ein Kind uns personenbezogene Daten zur Verfügung gestellt hat, kontaktieren Sie uns bitte unter <a href=\"mailto:privacy@agenticgovernance.digital\" class=\"text-blue-600 hover:underline\">privacy@agenticgovernance.digital</a>."
},
"section_9": {
"title": "9. Internationale Datenübertragungen",
"intro": "Das Tractatus Framework wird von Neuseeland aus betrieben. Wenn Sie von anderen Ländern aus auf unsere Dienste zugreifen, können Ihre Daten nach Neuseeland übertragen und dort verarbeitet werden. Durch die Nutzung unserer Dienste stimmen Sie dieser Übertragung zu.",
"gdpr": "<strong>DSGVO-Konformität:</strong> Für EU-Nutzer erfüllen wir die DSGVO-Anforderungen, einschließlich rechtmäßiger Grundlage für die Verarbeitung, Datenminimierung und Ihrer Rechte gemäß den Artikeln 15-22."
},
"section_10": {
"title": "10. Änderungen dieser Richtlinie",
"text": "Wir können diese Datenschutzerklärung von Zeit zu Zeit aktualisieren. Änderungen werden auf dieser Seite mit aktualisiertem \"Zuletzt aktualisiert\"-Datum veröffentlicht. Wesentliche Änderungen werden per E-Mail (für Benutzer, die eine E-Mail angegeben haben) oder durch einen auffälligen Hinweis auf der Website kommuniziert."
},
"section_11": {
"title": "11. Kontaktieren Sie uns",
"intro": "Für datenschutzbezogene Fragen oder Bedenken:",
"email": "E-Mail:",
"email_address": "privacy@agenticgovernance.digital",
"dpo": "Datenschutzbeauftragter:",
"dpo_name": "John Stroh",
"postal": "Postanschrift:",
"postal_text": "Auf Anfrage erhältlich"
},
"te_tiriti": {
"title": "Te Tiriti o Waitangi | Vertragsbekenntnis",
"text": "Als neuseeländisches Projekt erkennen wir Te Tiriti o Waitangi und unser Bekenntnis zu Partnerschaft, Schutz und Teilhabe an. Unsere Datenschutzpraktiken respektieren Māori-Konzepte der Datensouveränität (rangatiratanga) und kollektiven Vormundschaft (kaitiakitanga)."
}
}

View file

@ -98,9 +98,32 @@
}
},
"footer": {
"description": "Reference implementation of architectural AI safety constraints—structural governance validated in single-project deployment.",
"tagline": "Safety Through Structure, Not Aspiration",
"built_with": "Built with",
"acknowledgment": "This framework acknowledges Te Tiriti o Waitangi and indigenous leadership in digital sovereignty. Built with respect for CARE Principles and Māori data sovereignty."
"about_heading": "Tractatus Framework",
"about_text": "Architectural constraints for AI safety that preserve human agency through structural, not aspirational, guarantees.",
"documentation_heading": "Documentation",
"documentation_links": {
"framework_docs": "Framework Docs",
"about": "About",
"core_values": "Core Values",
"interactive_demo": "Interactive Demo"
},
"support_heading": "Support",
"support_links": {
"koha": "Support (Koha)",
"transparency": "Transparency",
"media_inquiries": "Media Inquiries",
"submit_case": "Submit Case Study"
},
"legal_heading": "Legal",
"legal_links": {
"privacy": "Privacy Policy",
"contact": "Contact Us",
"github": "GitHub"
},
"te_tiriti_label": "Te Tiriti o Waitangi:",
"te_tiriti_text": "We acknowledge Te Tiriti o Waitangi and our commitment to partnership, protection, and participation. This project respects Māori data sovereignty (rangatiratanga) and collective guardianship (kaitiakitanga).",
"copyright": "John G Stroh. Licensed under",
"license": "Apache 2.0",
"location": "Made in Aotearoa New Zealand 🇳🇿"
}
}

View file

@ -0,0 +1,137 @@
{
"meta": {
"title": "Privacy Policy | Tractatus AI Safety Framework",
"description": "Privacy policy for the Tractatus AI Safety Framework. Learn how we collect, use, and protect your data."
},
"header": {
"title": "Privacy Policy",
"last_updated": "Last updated: October 8, 2025"
},
"privacy_first": {
"badge": "Privacy First:",
"text": "The Tractatus Framework is built on principles of human agency and transparency. We collect minimal data, never sell your information, and give you full control over your data."
},
"section_1": {
"title": "1. Information We Collect",
"subtitle_1_1": "1.1 Information You Provide",
"items_1_1": [
"<strong>Donations (Koha):</strong> Name (optional), email address (required for receipt), country (optional), payment information (processed by Stripe, not stored by us)",
"<strong>Media Inquiries:</strong> Name, email, organization, inquiry details",
"<strong>Case Submissions:</strong> Contact information, case description, supporting evidence",
"<strong>Account Creation (if applicable):</strong> Email, password (hashed), optional profile information"
],
"subtitle_1_2": "1.2 Automatically Collected Information",
"items_1_2": [
"<strong>Analytics:</strong> Page views, referring sites, browser type, device type, general location (country-level)",
"<strong>Cookies:</strong> Session management, preferences (e.g., selected currency), analytics",
"<strong>Server Logs:</strong> IP addresses, access times, pages accessed (retained for 90 days for security)"
],
"subtitle_1_3": "1.3 Currency Selection",
"text_1_3": "When you select a currency for donations, we may detect your approximate location to suggest an appropriate currency. This location data is:",
"items_1_3": [
"Derived from your IP address (country-level only, not precise geolocation)",
"Used only to pre-select a currency in the donation form",
"Not stored permanently",
"Can be overridden by manual currency selection"
]
},
"section_2": {
"title": "2. How We Use Your Information",
"items": [
"<strong>Process Donations:</strong> Email receipts, acknowledge public supporters (opt-in only), maintain transparency dashboard",
"<strong>Respond to Inquiries:</strong> Answer media questions, review case submissions, provide support",
"<strong>Improve Services:</strong> Analyze usage patterns, fix bugs, enhance user experience",
"<strong>Security:</strong> Prevent fraud, detect abuse, protect against attacks",
"<strong>Legal Compliance:</strong> Comply with applicable laws, respond to legal requests",
"<strong>Communications:</strong> Send receipts, important updates (we never send marketing emails without explicit opt-in)"
]
},
"section_3": {
"title": "3. Data Sharing and Disclosure",
"subtitle_share": "We Share Your Data With:",
"share_items": [
"<strong>Stripe:</strong> Payment processing for donations (subject to <a href=\"https://stripe.com/privacy\" class=\"text-blue-600 hover:underline\" target=\"_blank\" rel=\"noopener\">Stripe's Privacy Policy</a>)",
"<strong>MongoDB Atlas:</strong> Database hosting (subject to <a href=\"https://www.mongodb.com/legal/privacy-policy\" class=\"text-blue-600 hover:underline\" target=\"_blank\" rel=\"noopener\">MongoDB's Privacy Policy</a>)",
"<strong>Email Service Provider:</strong> For sending receipts and communications"
],
"subtitle_never": "We NEVER:",
"never_items": [
"❌ Sell your personal data",
"❌ Share your data with advertisers",
"❌ Use your data for tracking across other websites",
"❌ Share donor information publicly without explicit opt-in"
],
"subtitle_legal": "Legal Disclosures:",
"legal_text": "We may disclose your information if required by law, court order, or to protect our rights and safety. We will notify you of such requests unless prohibited by law."
},
"section_4": {
"title": "4. Data Retention",
"items": [
"<strong>Donation Records:</strong> Retained indefinitely for transparency and tax purposes",
"<strong>Server Logs:</strong> Deleted after 90 days",
"<strong>Analytics Data:</strong> Aggregated, anonymized after 12 months",
"<strong>User Accounts:</strong> Retained until you request deletion",
"<strong>Inquiries/Submissions:</strong> Retained for 2 years, then archived or deleted"
]
},
"section_5": {
"title": "5. Your Rights",
"intro": "You have the right to:",
"items": [
"<strong>Access:</strong> Request a copy of your personal data",
"<strong>Correction:</strong> Update or correct inaccurate information",
"<strong>Deletion:</strong> Request deletion of your data (subject to legal obligations)",
"<strong>Portability:</strong> Receive your data in a machine-readable format",
"<strong>Opt-Out:</strong> Withdraw consent for public acknowledgements anytime",
"<strong>Object:</strong> Object to processing of your data"
],
"contact": "To exercise your rights, email: <a href=\"mailto:privacy@agenticgovernance.digital\" class=\"text-blue-600 hover:underline\">privacy@agenticgovernance.digital</a>"
},
"section_6": {
"title": "6. Cookies and Tracking",
"essential": "<strong>Essential Cookies:</strong> Required for site functionality (session management, authentication)",
"preference": "<strong>Preference Cookies:</strong> Remember your settings (currency selection, theme preferences)",
"analytics": "<strong>Analytics Cookies:</strong> Privacy-respecting analytics (no cross-site tracking)",
"control": "You can control cookies through your browser settings. Disabling cookies may affect site functionality."
},
"section_7": {
"title": "7. Security",
"intro": "We implement industry-standard security measures:",
"items": [
"HTTPS encryption for all connections",
"Encrypted database storage",
"Password hashing (bcrypt)",
"Regular security audits",
"Access controls and monitoring",
"No storage of payment card data (handled by Stripe PCI-compliant systems)"
],
"disclaimer": "While we take reasonable precautions, no system is 100% secure. Report security issues to: <a href=\"mailto:security@agenticgovernance.digital\" class=\"text-blue-600 hover:underline\">security@agenticgovernance.digital</a>"
},
"section_8": {
"title": "8. Children's Privacy",
"text": "The Tractatus Framework is not directed at children under 13. We do not knowingly collect information from children. If you believe a child has provided us with personal data, please contact us at <a href=\"mailto:privacy@agenticgovernance.digital\" class=\"text-blue-600 hover:underline\">privacy@agenticgovernance.digital</a>."
},
"section_9": {
"title": "9. International Data Transfers",
"intro": "The Tractatus Framework operates from New Zealand. If you access our services from other countries, your data may be transferred to and processed in New Zealand. By using our services, you consent to this transfer.",
"gdpr": "<strong>GDPR Compliance:</strong> For EU users, we comply with GDPR requirements including lawful basis for processing, data minimization, and your rights under Articles 15-22."
},
"section_10": {
"title": "10. Changes to This Policy",
"text": "We may update this Privacy Policy from time to time. Changes will be posted on this page with an updated \"Last updated\" date. Material changes will be communicated via email (for users who provided email) or prominent notice on the website."
},
"section_11": {
"title": "11. Contact Us",
"intro": "For privacy-related questions or concerns:",
"email": "Email:",
"email_address": "privacy@agenticgovernance.digital",
"dpo": "Data Protection Officer:",
"dpo_name": "John Stroh",
"postal": "Postal Address:",
"postal_text": "Available upon request"
},
"te_tiriti": {
"title": "Te Tiriti o Waitangi | Treaty Commitment",
"text": "As a New Zealand-based project, we acknowledge Te Tiriti o Waitangi and our commitment to partnership, protection, and participation. Our privacy practices respect Māori concepts of data sovereignty (rangatiratanga) and collective guardianship (kaitiakitanga)."
}
}

View file

@ -98,9 +98,32 @@
}
},
"footer": {
"description": "Implémentation de référence des contraintes de sécurité IA architecturales—gouvernance structurelle validée dans un déploiement de projet unique.",
"tagline": "Sécurité par la Structure, pas par l'Aspiration",
"built_with": "Construit avec",
"acknowledgment": "Ce framework reconnaît Te Tiriti o Waitangi et le leadership autochtone en matière de souveraineté numérique. Construit dans le respect des Principes CARE et de la souveraineté des données māories."
"about_heading": "Tractatus Framework",
"about_text": "Contraintes architecturales pour la sécurité de l'IA qui préservent l'autonomie humaine par des garanties structurelles, et non aspirationnelles.",
"documentation_heading": "Documentation",
"documentation_links": {
"framework_docs": "Documentation du Framework",
"about": "À propos",
"core_values": "Valeurs fondamentales",
"interactive_demo": "Démo interactive"
},
"support_heading": "Support",
"support_links": {
"koha": "Support (Koha)",
"transparency": "Transparence",
"media_inquiries": "Demandes des médias",
"submit_case": "Soumettre une étude de cas"
},
"legal_heading": "Légal",
"legal_links": {
"privacy": "Politique de confidentialité",
"contact": "Nous contacter",
"github": "GitHub"
},
"te_tiriti_label": "Te Tiriti o Waitangi :",
"te_tiriti_text": "Nous reconnaissons Te Tiriti o Waitangi et notre engagement envers le partenariat, la protection et la participation. Ce projet respecte la souveraineté des données māori (rangatiratanga) et la tutelle collective (kaitiakitanga).",
"copyright": "John G Stroh. Sous licence",
"license": "Apache 2.0",
"location": "Fabriqué en Aotearoa Nouvelle-Zélande 🇳🇿"
}
}

View file

@ -0,0 +1,137 @@
{
"meta": {
"title": "Politique de confidentialité | Tractatus AI Safety Framework",
"description": "Politique de confidentialité du Tractatus AI Safety Framework. Découvrez comment nous collectons, utilisons et protégeons vos données."
},
"header": {
"title": "Politique de confidentialité",
"last_updated": "Dernière mise à jour : 8 octobre 2025"
},
"privacy_first": {
"badge": "Confidentialité d'abord :",
"text": "Le Tractatus Framework est construit sur les principes d'autonomie humaine et de transparence. Nous collectons un minimum de données, ne vendons jamais vos informations et vous donnons un contrôle total sur vos données."
},
"section_1": {
"title": "1. Informations que nous collectons",
"subtitle_1_1": "1.1 Informations que vous fournissez",
"items_1_1": [
"<strong>Dons (Koha) :</strong> Nom (optionnel), adresse e-mail (obligatoire pour le reçu), pays (optionnel), informations de paiement (traitées par Stripe, non stockées par nous)",
"<strong>Demandes médias :</strong> Nom, e-mail, organisation, détails de la demande",
"<strong>Soumissions de cas :</strong> Informations de contact, description du cas, preuves à l'appui",
"<strong>Création de compte (le cas échéant) :</strong> E-mail, mot de passe (haché), informations de profil optionnelles"
],
"subtitle_1_2": "1.2 Informations collectées automatiquement",
"items_1_2": [
"<strong>Analytique :</strong> Pages vues, sites référents, type de navigateur, type d'appareil, localisation générale (niveau pays)",
"<strong>Cookies :</strong> Gestion de session, préférences (par ex., devise sélectionnée), analytique",
"<strong>Journaux du serveur :</strong> Adresses IP, heures d'accès, pages consultées (conservées 90 jours pour la sécurité)"
],
"subtitle_1_3": "1.3 Sélection de devise",
"text_1_3": "Lorsque vous sélectionnez une devise pour les dons, nous pouvons détecter votre emplacement approximatif pour suggérer une devise appropriée. Ces données de localisation sont :",
"items_1_3": [
"Dérivées de votre adresse IP (niveau pays uniquement, pas de géolocalisation précise)",
"Utilisées uniquement pour présélectionner une devise dans le formulaire de don",
"Non stockées de façon permanente",
"Peuvent être remplacées par une sélection manuelle de devise"
]
},
"section_2": {
"title": "2. Comment nous utilisons vos informations",
"items": [
"<strong>Traiter les dons :</strong> Envoyer des reçus par e-mail, reconnaître les supporters publics (opt-in uniquement), maintenir le tableau de transparence",
"<strong>Répondre aux demandes :</strong> Répondre aux questions des médias, examiner les soumissions de cas, fournir un support",
"<strong>Améliorer les services :</strong> Analyser les modèles d'utilisation, corriger les bugs, améliorer l'expérience utilisateur",
"<strong>Sécurité :</strong> Prévenir la fraude, détecter les abus, protéger contre les attaques",
"<strong>Conformité légale :</strong> Se conformer aux lois applicables, répondre aux demandes légales",
"<strong>Communications :</strong> Envoyer des reçus, mises à jour importantes (nous n'envoyons jamais d'e-mails marketing sans opt-in explicite)"
]
},
"section_3": {
"title": "3. Partage et divulgation des données",
"subtitle_share": "Nous partageons vos données avec :",
"share_items": [
"<strong>Stripe :</strong> Traitement des paiements pour les dons (soumis à la <a href=\"https://stripe.com/privacy\" class=\"text-blue-600 hover:underline\" target=\"_blank\" rel=\"noopener\">Politique de confidentialité de Stripe</a>)",
"<strong>MongoDB Atlas :</strong> Hébergement de base de données (soumis à la <a href=\"https://www.mongodb.com/legal/privacy-policy\" class=\"text-blue-600 hover:underline\" target=\"_blank\" rel=\"noopener\">Politique de confidentialité de MongoDB</a>)",
"<strong>Fournisseur de services e-mail :</strong> Pour l'envoi de reçus et de communications"
],
"subtitle_never": "Nous ne faisons JAMAIS :",
"never_items": [
"❌ Vendre vos données personnelles",
"❌ Partager vos données avec des annonceurs",
"❌ Utiliser vos données pour le suivi sur d'autres sites web",
"❌ Partager les informations des donateurs publiquement sans opt-in explicite"
],
"subtitle_legal": "Divulgations légales :",
"legal_text": "Nous pouvons divulguer vos informations si la loi l'exige, par ordonnance du tribunal, ou pour protéger nos droits et notre sécurité. Nous vous informerons de telles demandes sauf si la loi l'interdit."
},
"section_4": {
"title": "4. Conservation des données",
"items": [
"<strong>Enregistrements de dons :</strong> Conservés indéfiniment à des fins de transparence et fiscales",
"<strong>Journaux du serveur :</strong> Supprimés après 90 jours",
"<strong>Données analytiques :</strong> Agrégées, anonymisées après 12 mois",
"<strong>Comptes utilisateurs :</strong> Conservés jusqu'à ce que vous demandiez la suppression",
"<strong>Demandes/Soumissions :</strong> Conservées pendant 2 ans, puis archivées ou supprimées"
]
},
"section_5": {
"title": "5. Vos droits",
"intro": "Vous avez le droit de :",
"items": [
"<strong>Accès :</strong> Demander une copie de vos données personnelles",
"<strong>Rectification :</strong> Mettre à jour ou corriger des informations inexactes",
"<strong>Suppression :</strong> Demander la suppression de vos données (sous réserve d'obligations légales)",
"<strong>Portabilité :</strong> Recevoir vos données dans un format lisible par machine",
"<strong>Opt-out :</strong> Retirer votre consentement aux reconnaissances publiques à tout moment",
"<strong>Opposition :</strong> Vous opposer au traitement de vos données"
],
"contact": "Pour exercer vos droits, envoyez un e-mail à : <a href=\"mailto:privacy@agenticgovernance.digital\" class=\"text-blue-600 hover:underline\">privacy@agenticgovernance.digital</a>"
},
"section_6": {
"title": "6. Cookies et suivi",
"essential": "<strong>Cookies essentiels :</strong> Requis pour la fonctionnalité du site (gestion de session, authentification)",
"preference": "<strong>Cookies de préférence :</strong> Mémorisent vos paramètres (sélection de devise, préférences de thème)",
"analytics": "<strong>Cookies analytiques :</strong> Analytique respectueuse de la confidentialité (pas de suivi intersites)",
"control": "Vous pouvez contrôler les cookies via les paramètres de votre navigateur. La désactivation des cookies peut affecter la fonctionnalité du site."
},
"section_7": {
"title": "7. Sécurité",
"intro": "Nous mettons en œuvre des mesures de sécurité conformes aux normes de l'industrie :",
"items": [
"Chiffrement HTTPS pour toutes les connexions",
"Stockage de base de données chiffré",
"Hachage des mots de passe (bcrypt)",
"Audits de sécurité réguliers",
"Contrôles d'accès et surveillance",
"Pas de stockage de données de carte de paiement (géré par les systèmes conformes PCI de Stripe)"
],
"disclaimer": "Bien que nous prenions des précautions raisonnables, aucun système n'est sûr à 100%. Signalez les problèmes de sécurité à : <a href=\"mailto:security@agenticgovernance.digital\" class=\"text-blue-600 hover:underline\">security@agenticgovernance.digital</a>"
},
"section_8": {
"title": "8. Confidentialité des enfants",
"text": "Le Tractatus Framework ne s'adresse pas aux enfants de moins de 13 ans. Nous ne collectons pas sciemment d'informations sur les enfants. Si vous pensez qu'un enfant nous a fourni des données personnelles, veuillez nous contacter à <a href=\"mailto:privacy@agenticgovernance.digital\" class=\"text-blue-600 hover:underline\">privacy@agenticgovernance.digital</a>."
},
"section_9": {
"title": "9. Transferts internationaux de données",
"intro": "Le Tractatus Framework opère depuis la Nouvelle-Zélande. Si vous accédez à nos services depuis d'autres pays, vos données peuvent être transférées et traitées en Nouvelle-Zélande. En utilisant nos services, vous consentez à ce transfert.",
"gdpr": "<strong>Conformité RGPD :</strong> Pour les utilisateurs de l'UE, nous respectons les exigences du RGPD, y compris la base légale du traitement, la minimisation des données et vos droits en vertu des articles 15-22."
},
"section_10": {
"title": "10. Modifications de cette politique",
"text": "Nous pouvons mettre à jour cette politique de confidentialité de temps à autre. Les modifications seront publiées sur cette page avec une date \"Dernière mise à jour\" actualisée. Les modifications importantes seront communiquées par e-mail (pour les utilisateurs ayant fourni un e-mail) ou par un avis visible sur le site web."
},
"section_11": {
"title": "11. Nous contacter",
"intro": "Pour les questions ou préoccupations liées à la confidentialité :",
"email": "E-mail :",
"email_address": "privacy@agenticgovernance.digital",
"dpo": "Délégué à la protection des données :",
"dpo_name": "John Stroh",
"postal": "Adresse postale :",
"postal_text": "Disponible sur demande"
},
"te_tiriti": {
"title": "Te Tiriti o Waitangi | Engagement envers le traité",
"text": "En tant que projet basé en Nouvelle-Zélande, nous reconnaissons Te Tiriti o Waitangi et notre engagement envers le partenariat, la protection et la participation. Nos pratiques de confidentialité respectent les concepts maoris de souveraineté des données (rangatiratanga) et de tutelle collective (kaitiakitanga)."
}
}

View file

@ -1,10 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<html lang="en" data-page="privacy">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Privacy Policy | Tractatus AI Safety Framework</title>
<meta name="description" content="Privacy policy for the Tractatus AI Safety Framework. Learn how we collect, use, and protect your data.">
<title data-i18n="meta.title">Privacy Policy | Tractatus AI Safety Framework</title>
<meta name="description" content="Privacy policy for the Tractatus AI Safety Framework. Learn how we collect, use, and protect your data." data-i18n="meta.description">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.0.1760254958072">
<link rel="stylesheet" href="/css/tractatus-theme.min.css">
<style>
@ -28,19 +28,23 @@
<!-- Navigation (injected by navbar.js) -->
<script src="/js/components/navbar.js?v=0.1.0.1760254958072"></script>
<!-- i18n Support -->
<script src="/js/i18n-simple.js"></script>
<script src="/js/components/language-selector.js"></script>
<!-- Main Content -->
<main id="main-content" class="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 py-12">
<!-- Header -->
<div class="mb-12">
<h1 class="text-4xl md:text-5xl font-bold text-gray-900 mb-4">Privacy Policy</h1>
<p class="text-lg text-gray-600">Last updated: October 8, 2025</p>
<h1 class="text-4xl md:text-5xl font-bold text-gray-900 mb-4" data-i18n="header.title">Privacy Policy</h1>
<p class="text-lg text-gray-600" data-i18n="header.last_updated">Last updated: October 8, 2025</p>
</div>
<!-- Introduction -->
<div class="bg-blue-50 border-l-4 border-blue-500 p-6 mb-8 rounded">
<p class="text-blue-900">
<strong>Privacy First:</strong> The Tractatus Framework is built on principles of human agency and transparency. We collect minimal data, never sell your information, and give you full control over your data.
<strong data-i18n="privacy_first.badge">Privacy First:</strong> <span data-i18n="privacy_first.text">The Tractatus Framework is built on principles of human agency and transparency. We collect minimal data, never sell your information, and give you full control over your data.</span>
</p>
</div>
@ -49,190 +53,190 @@
<!-- 1. Information We Collect -->
<section class="bg-white shadow rounded-lg p-8">
<h2 class="text-2xl font-bold text-gray-900 mb-4">1. Information We Collect</h2>
<h2 class="text-2xl font-bold text-gray-900 mb-4" data-i18n="section_1.title">1. Information We Collect</h2>
<h3 class="text-xl font-semibold text-gray-900 mt-6 mb-3">1.1 Information You Provide</h3>
<h3 class="text-xl font-semibold text-gray-900 mt-6 mb-3" data-i18n="section_1.subtitle_1_1">1.1 Information You Provide</h3>
<ul class="list-disc pl-6 text-gray-700 space-y-2">
<li><strong>Donations (Koha):</strong> Name (optional), email address (required for receipt), country (optional), payment information (processed by Stripe, not stored by us)</li>
<li><strong>Media Inquiries:</strong> Name, email, organization, inquiry details</li>
<li><strong>Case Submissions:</strong> Contact information, case description, supporting evidence</li>
<li><strong>Account Creation (if applicable):</strong> Email, password (hashed), optional profile information</li>
<li data-i18n="section_1.items_1_1.0"><strong>Donations (Koha):</strong> Name (optional), email address (required for receipt), country (optional), payment information (processed by Stripe, not stored by us)</li>
<li data-i18n="section_1.items_1_1.1"><strong>Media Inquiries:</strong> Name, email, organization, inquiry details</li>
<li data-i18n="section_1.items_1_1.2"><strong>Case Submissions:</strong> Contact information, case description, supporting evidence</li>
<li data-i18n="section_1.items_1_1.3"><strong>Account Creation (if applicable):</strong> Email, password (hashed), optional profile information</li>
</ul>
<h3 class="text-xl font-semibold text-gray-900 mt-6 mb-3">1.2 Automatically Collected Information</h3>
<h3 class="text-xl font-semibold text-gray-900 mt-6 mb-3" data-i18n="section_1.subtitle_1_2">1.2 Automatically Collected Information</h3>
<ul class="list-disc pl-6 text-gray-700 space-y-2">
<li><strong>Analytics:</strong> Page views, referring sites, browser type, device type, general location (country-level)</li>
<li><strong>Cookies:</strong> Session management, preferences (e.g., selected currency), analytics</li>
<li><strong>Server Logs:</strong> IP addresses, access times, pages accessed (retained for 90 days for security)</li>
<li data-i18n="section_1.items_1_2.0"><strong>Analytics:</strong> Page views, referring sites, browser type, device type, general location (country-level)</li>
<li data-i18n="section_1.items_1_2.1"><strong>Cookies:</strong> Session management, preferences (e.g., selected currency), analytics</li>
<li data-i18n="section_1.items_1_2.2"><strong>Server Logs:</strong> IP addresses, access times, pages accessed (retained for 90 days for security)</li>
</ul>
<h3 class="text-xl font-semibold text-gray-900 mt-6 mb-3">1.3 Currency Selection</h3>
<p class="text-gray-700">
<h3 class="text-xl font-semibold text-gray-900 mt-6 mb-3" data-i18n="section_1.subtitle_1_3">1.3 Currency Selection</h3>
<p class="text-gray-700" data-i18n="section_1.text_1_3">
When you select a currency for donations, we may detect your approximate location to suggest an appropriate currency. This location data is:
</p>
<ul class="list-disc pl-6 text-gray-700 space-y-2">
<li>Derived from your IP address (country-level only, not precise geolocation)</li>
<li>Used only to pre-select a currency in the donation form</li>
<li>Not stored permanently</li>
<li>Can be overridden by manual currency selection</li>
<li data-i18n="section_1.items_1_3.0">Derived from your IP address (country-level only, not precise geolocation)</li>
<li data-i18n="section_1.items_1_3.1">Used only to pre-select a currency in the donation form</li>
<li data-i18n="section_1.items_1_3.2">Not stored permanently</li>
<li data-i18n="section_1.items_1_3.3">Can be overridden by manual currency selection</li>
</ul>
</section>
<!-- 2. How We Use Your Information -->
<section class="bg-white shadow rounded-lg p-8">
<h2 class="text-2xl font-bold text-gray-900 mb-4">2. How We Use Your Information</h2>
<h2 class="text-2xl font-bold text-gray-900 mb-4" data-i18n="section_2.title">2. How We Use Your Information</h2>
<ul class="list-disc pl-6 text-gray-700 space-y-3">
<li><strong>Process Donations:</strong> Email receipts, acknowledge public supporters (opt-in only), maintain transparency dashboard</li>
<li><strong>Respond to Inquiries:</strong> Answer media questions, review case submissions, provide support</li>
<li><strong>Improve Services:</strong> Analyze usage patterns, fix bugs, enhance user experience</li>
<li><strong>Security:</strong> Prevent fraud, detect abuse, protect against attacks</li>
<li><strong>Legal Compliance:</strong> Comply with applicable laws, respond to legal requests</li>
<li><strong>Communications:</strong> Send receipts, important updates (we never send marketing emails without explicit opt-in)</li>
<li data-i18n="section_2.items.0"><strong>Process Donations:</strong> Email receipts, acknowledge public supporters (opt-in only), maintain transparency dashboard</li>
<li data-i18n="section_2.items.1"><strong>Respond to Inquiries:</strong> Answer media questions, review case submissions, provide support</li>
<li data-i18n="section_2.items.2"><strong>Improve Services:</strong> Analyze usage patterns, fix bugs, enhance user experience</li>
<li data-i18n="section_2.items.3"><strong>Security:</strong> Prevent fraud, detect abuse, protect against attacks</li>
<li data-i18n="section_2.items.4"><strong>Legal Compliance:</strong> Comply with applicable laws, respond to legal requests</li>
<li data-i18n="section_2.items.5"><strong>Communications:</strong> Send receipts, important updates (we never send marketing emails without explicit opt-in)</li>
</ul>
</section>
<!-- 3. Data Sharing -->
<section class="bg-white shadow rounded-lg p-8">
<h2 class="text-2xl font-bold text-gray-900 mb-4">3. Data Sharing and Disclosure</h2>
<h2 class="text-2xl font-bold text-gray-900 mb-4" data-i18n="section_3.title">3. Data Sharing and Disclosure</h2>
<h3 class="text-xl font-semibold text-gray-900 mt-6 mb-3">We Share Your Data With:</h3>
<h3 class="text-xl font-semibold text-gray-900 mt-6 mb-3" data-i18n="section_3.subtitle_share">We Share Your Data With:</h3>
<ul class="list-disc pl-6 text-gray-700 space-y-2">
<li><strong>Stripe:</strong> Payment processing for donations (subject to <a href="https://stripe.com/privacy" class="text-blue-600 hover:underline" target="_blank" rel="noopener">Stripe's Privacy Policy</a>)</li>
<li><strong>MongoDB Atlas:</strong> Database hosting (subject to <a href="https://www.mongodb.com/legal/privacy-policy" class="text-blue-600 hover:underline" target="_blank" rel="noopener">MongoDB's Privacy Policy</a>)</li>
<li><strong>Email Service Provider:</strong> For sending receipts and communications</li>
<li data-i18n="section_3.share_items.0"><strong>Stripe:</strong> Payment processing for donations (subject to <a href="https://stripe.com/privacy" class="text-blue-600 hover:underline" target="_blank" rel="noopener">Stripe's Privacy Policy</a>)</li>
<li data-i18n="section_3.share_items.1"><strong>MongoDB Atlas:</strong> Database hosting (subject to <a href="https://www.mongodb.com/legal/privacy-policy" class="text-blue-600 hover:underline" target="_blank" rel="noopener">MongoDB's Privacy Policy</a>)</li>
<li data-i18n="section_3.share_items.2"><strong>Email Service Provider:</strong> For sending receipts and communications</li>
</ul>
<h3 class="text-xl font-semibold text-gray-900 mt-6 mb-3">We NEVER:</h3>
<h3 class="text-xl font-semibold text-gray-900 mt-6 mb-3" data-i18n="section_3.subtitle_never">We NEVER:</h3>
<ul class="list-disc pl-6 text-gray-700 space-y-2">
<li>❌ Sell your personal data</li>
<li>❌ Share your data with advertisers</li>
<li>❌ Use your data for tracking across other websites</li>
<li>❌ Share donor information publicly without explicit opt-in</li>
<li data-i18n="section_3.never_items.0">❌ Sell your personal data</li>
<li data-i18n="section_3.never_items.1">❌ Share your data with advertisers</li>
<li data-i18n="section_3.never_items.2">❌ Use your data for tracking across other websites</li>
<li data-i18n="section_3.never_items.3">❌ Share donor information publicly without explicit opt-in</li>
</ul>
<h3 class="text-xl font-semibold text-gray-900 mt-6 mb-3">Legal Disclosures:</h3>
<p class="text-gray-700">
<h3 class="text-xl font-semibold text-gray-900 mt-6 mb-3" data-i18n="section_3.subtitle_legal">Legal Disclosures:</h3>
<p class="text-gray-700" data-i18n="section_3.legal_text">
We may disclose your information if required by law, court order, or to protect our rights and safety. We will notify you of such requests unless prohibited by law.
</p>
</section>
<!-- 4. Data Retention -->
<section class="bg-white shadow rounded-lg p-8">
<h2 class="text-2xl font-bold text-gray-900 mb-4">4. Data Retention</h2>
<h2 class="text-2xl font-bold text-gray-900 mb-4" data-i18n="section_4.title">4. Data Retention</h2>
<ul class="list-disc pl-6 text-gray-700 space-y-2">
<li><strong>Donation Records:</strong> Retained indefinitely for transparency and tax purposes</li>
<li><strong>Server Logs:</strong> Deleted after 90 days</li>
<li><strong>Analytics Data:</strong> Aggregated, anonymized after 12 months</li>
<li><strong>User Accounts:</strong> Retained until you request deletion</li>
<li><strong>Inquiries/Submissions:</strong> Retained for 2 years, then archived or deleted</li>
<li data-i18n="section_4.items.0"><strong>Donation Records:</strong> Retained indefinitely for transparency and tax purposes</li>
<li data-i18n="section_4.items.1"><strong>Server Logs:</strong> Deleted after 90 days</li>
<li data-i18n="section_4.items.2"><strong>Analytics Data:</strong> Aggregated, anonymized after 12 months</li>
<li data-i18n="section_4.items.3"><strong>User Accounts:</strong> Retained until you request deletion</li>
<li data-i18n="section_4.items.4"><strong>Inquiries/Submissions:</strong> Retained for 2 years, then archived or deleted</li>
</ul>
</section>
<!-- 5. Your Rights -->
<section class="bg-white shadow rounded-lg p-8">
<h2 class="text-2xl font-bold text-gray-900 mb-4">5. Your Rights</h2>
<h2 class="text-2xl font-bold text-gray-900 mb-4" data-i18n="section_5.title">5. Your Rights</h2>
<p class="text-gray-700 mb-4">You have the right to:</p>
<p class="text-gray-700 mb-4" data-i18n="section_5.intro">You have the right to:</p>
<ul class="list-disc pl-6 text-gray-700 space-y-2">
<li><strong>Access:</strong> Request a copy of your personal data</li>
<li><strong>Correction:</strong> Update or correct inaccurate information</li>
<li><strong>Deletion:</strong> Request deletion of your data (subject to legal obligations)</li>
<li><strong>Portability:</strong> Receive your data in a machine-readable format</li>
<li><strong>Opt-Out:</strong> Withdraw consent for public acknowledgements anytime</li>
<li><strong>Object:</strong> Object to processing of your data</li>
<li data-i18n="section_5.items.0"><strong>Access:</strong> Request a copy of your personal data</li>
<li data-i18n="section_5.items.1"><strong>Correction:</strong> Update or correct inaccurate information</li>
<li data-i18n="section_5.items.2"><strong>Deletion:</strong> Request deletion of your data (subject to legal obligations)</li>
<li data-i18n="section_5.items.3"><strong>Portability:</strong> Receive your data in a machine-readable format</li>
<li data-i18n="section_5.items.4"><strong>Opt-Out:</strong> Withdraw consent for public acknowledgements anytime</li>
<li data-i18n="section_5.items.5"><strong>Object:</strong> Object to processing of your data</li>
</ul>
<p class="text-gray-700 mt-4">
<p class="text-gray-700 mt-4" data-i18n="section_5.contact">
To exercise your rights, email: <a href="mailto:privacy@agenticgovernance.digital" class="text-blue-600 hover:underline">privacy@agenticgovernance.digital</a>
</p>
</section>
<!-- 6. Cookies -->
<section class="bg-white shadow rounded-lg p-8">
<h2 class="text-2xl font-bold text-gray-900 mb-4">6. Cookies and Tracking</h2>
<h2 class="text-2xl font-bold text-gray-900 mb-4" data-i18n="section_6.title">6. Cookies and Tracking</h2>
<p class="text-gray-700 mb-4"><strong>Essential Cookies:</strong> Required for site functionality (session management, authentication)</p>
<p class="text-gray-700 mb-4" data-i18n="section_6.essential"><strong>Essential Cookies:</strong> Required for site functionality (session management, authentication)</p>
<p class="text-gray-700 mb-4"><strong>Preference Cookies:</strong> Remember your settings (currency selection, theme preferences)</p>
<p class="text-gray-700 mb-4" data-i18n="section_6.preference"><strong>Preference Cookies:</strong> Remember your settings (currency selection, theme preferences)</p>
<p class="text-gray-700 mb-4"><strong>Analytics Cookies:</strong> Privacy-respecting analytics (no cross-site tracking)</p>
<p class="text-gray-700 mb-4" data-i18n="section_6.analytics"><strong>Analytics Cookies:</strong> Privacy-respecting analytics (no cross-site tracking)</p>
<p class="text-gray-700">
<p class="text-gray-700" data-i18n="section_6.control">
You can control cookies through your browser settings. Disabling cookies may affect site functionality.
</p>
</section>
<!-- 7. Security -->
<section class="bg-white shadow rounded-lg p-8">
<h2 class="text-2xl font-bold text-gray-900 mb-4">7. Security</h2>
<h2 class="text-2xl font-bold text-gray-900 mb-4" data-i18n="section_7.title">7. Security</h2>
<p class="text-gray-700 mb-4">We implement industry-standard security measures:</p>
<p class="text-gray-700 mb-4" data-i18n="section_7.intro">We implement industry-standard security measures:</p>
<ul class="list-disc pl-6 text-gray-700 space-y-2">
<li>HTTPS encryption for all connections</li>
<li>Encrypted database storage</li>
<li>Password hashing (bcrypt)</li>
<li>Regular security audits</li>
<li>Access controls and monitoring</li>
<li>No storage of payment card data (handled by Stripe PCI-compliant systems)</li>
<li data-i18n="section_7.items.0">HTTPS encryption for all connections</li>
<li data-i18n="section_7.items.1">Encrypted database storage</li>
<li data-i18n="section_7.items.2">Password hashing (bcrypt)</li>
<li data-i18n="section_7.items.3">Regular security audits</li>
<li data-i18n="section_7.items.4">Access controls and monitoring</li>
<li data-i18n="section_7.items.5">No storage of payment card data (handled by Stripe PCI-compliant systems)</li>
</ul>
<p class="text-gray-700 mt-4">
<p class="text-gray-700 mt-4" data-i18n="section_7.disclaimer">
While we take reasonable precautions, no system is 100% secure. Report security issues to: <a href="mailto:security@agenticgovernance.digital" class="text-blue-600 hover:underline">security@agenticgovernance.digital</a>
</p>
</section>
<!-- 8. Children's Privacy -->
<section class="bg-white shadow rounded-lg p-8">
<h2 class="text-2xl font-bold text-gray-900 mb-4">8. Children's Privacy</h2>
<h2 class="text-2xl font-bold text-gray-900 mb-4" data-i18n="section_8.title">8. Children's Privacy</h2>
<p class="text-gray-700">
<p class="text-gray-700" data-i18n="section_8.text">
The Tractatus Framework is not directed at children under 13. We do not knowingly collect information from children. If you believe a child has provided us with personal data, please contact us at <a href="mailto:privacy@agenticgovernance.digital" class="text-blue-600 hover:underline">privacy@agenticgovernance.digital</a>.
</p>
</section>
<!-- 9. International Users -->
<section class="bg-white shadow rounded-lg p-8">
<h2 class="text-2xl font-bold text-gray-900 mb-4">9. International Data Transfers</h2>
<h2 class="text-2xl font-bold text-gray-900 mb-4" data-i18n="section_9.title">9. International Data Transfers</h2>
<p class="text-gray-700">
<p class="text-gray-700" data-i18n="section_9.intro">
The Tractatus Framework operates from New Zealand. If you access our services from other countries, your data may be transferred to and processed in New Zealand. By using our services, you consent to this transfer.
</p>
<p class="text-gray-700 mt-4">
<p class="text-gray-700 mt-4" data-i18n="section_9.gdpr">
<strong>GDPR Compliance:</strong> For EU users, we comply with GDPR requirements including lawful basis for processing, data minimization, and your rights under Articles 15-22.
</p>
</section>
<!-- 10. Changes to This Policy -->
<section class="bg-white shadow rounded-lg p-8">
<h2 class="text-2xl font-bold text-gray-900 mb-4">10. Changes to This Policy</h2>
<h2 class="text-2xl font-bold text-gray-900 mb-4" data-i18n="section_10.title">10. Changes to This Policy</h2>
<p class="text-gray-700">
<p class="text-gray-700" data-i18n="section_10.text">
We may update this Privacy Policy from time to time. Changes will be posted on this page with an updated "Last updated" date. Material changes will be communicated via email (for users who provided email) or prominent notice on the website.
</p>
</section>
<!-- 11. Contact Us -->
<section class="bg-white shadow rounded-lg p-8">
<h2 class="text-2xl font-bold text-gray-900 mb-4">11. Contact Us</h2>
<h2 class="text-2xl font-bold text-gray-900 mb-4" data-i18n="section_11.title">11. Contact Us</h2>
<p class="text-gray-700 mb-4">For privacy-related questions or concerns:</p>
<p class="text-gray-700 mb-4" data-i18n="section_11.intro">For privacy-related questions or concerns:</p>
<div class="bg-gray-50 p-4 rounded border border-gray-200">
<p class="text-gray-900"><strong>Email:</strong> <a href="mailto:privacy@agenticgovernance.digital" class="text-blue-600 hover:underline">privacy@agenticgovernance.digital</a></p>
<p class="text-gray-900 mt-2"><strong>Data Protection Officer:</strong> John Stroh</p>
<p class="text-gray-900 mt-2"><strong>Postal Address:</strong> Available upon request</p>
<p class="text-gray-900"><strong data-i18n="section_11.email">Email:</strong> <a href="mailto:privacy@agenticgovernance.digital" class="text-blue-600 hover:underline" data-i18n="section_11.email_address">privacy@agenticgovernance.digital</a></p>
<p class="text-gray-900 mt-2"><strong data-i18n="section_11.dpo">Data Protection Officer:</strong> <span data-i18n="section_11.dpo_name">John Stroh</span></p>
<p class="text-gray-900 mt-2"><strong data-i18n="section_11.postal">Postal Address:</strong> <span data-i18n="section_11.postal_text">Available upon request</span></p>
</div>
</section>
<!-- Te Tiriti Acknowledgement -->
<section class="bg-gradient-to-r from-blue-600 to-purple-600 text-white rounded-lg p-8 mt-8">
<h2 class="text-2xl font-bold mb-4">Te Tiriti o Waitangi | Treaty Commitment</h2>
<p class="text-blue-100">
<h2 class="text-2xl font-bold mb-4" data-i18n="te_tiriti.title">Te Tiriti o Waitangi | Treaty Commitment</h2>
<p class="text-blue-100" data-i18n="te_tiriti.text">
As a New Zealand-based project, we acknowledge Te Tiriti o Waitangi and our commitment to partnership, protection, and participation. Our privacy practices respect Māori concepts of data sovereignty (rangatiratanga) and collective guardianship (kaitiakitanga).
</p>
</section>