chore: bump cache version for deployment

This commit is contained in:
TheFlow 2025-12-09 17:39:03 +13:00
parent 72b6a5af3f
commit 50a37ca5a8
20 changed files with 209 additions and 204 deletions

View file

@ -5,9 +5,9 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>About | Tractatus AI Safety Framework</title>
<meta name="description" content="Learn about the Tractatus Framework: our mission, values, team, and commitment to preserving human agency through structural AI safety.">
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<style>
/* Accessibility: Skip link */
.skip-link { position: absolute; left: -9999px; top: 0; }
@ -31,7 +31,7 @@
<a href="#main-content" class="skip-link">Skip to main content</a>
<!-- Navigation (injected by navbar.js) -->
<script src="/js/components/navbar.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/navbar.js?v=0.1.2.1765255143694"></script>
<!-- Breadcrumb Navigation -->
<nav class="bg-gray-50 border-b border-gray-200 py-3" aria-label="Breadcrumb">
@ -371,22 +371,22 @@
<!-- Footer with Te Tiriti Acknowledgment -->
<!-- Footer -->
<!-- Internationalization -->
<script src="/js/i18n-simple.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1763926979200"></script>
<script src="/js/i18n-simple.js?v=0.1.2.1765255143694"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1765255143694"></script>
<!-- Scroll Animations (Phase 3) -->
<script src="/js/scroll-animations.js?v=0.1.2.1763926979200"></script>
<script src="/js/scroll-animations.js?v=0.1.2.1765255143694"></script>
<!-- Page Transitions (Phase 3) -->
<script src="/js/page-transitions.js?v=0.1.2.1763926979200"></script>
<script src="/js/page-transitions.js?v=0.1.2.1765255143694"></script>
<!-- Share CTA functionality -->
<script src="/js/share-cta.js?v=0.1.2.1763926979200"></script>
<script src="/js/share-cta.js?v=0.1.2.1765255143694"></script>
<!-- Footer Component -->
<script src="/js/components/footer.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/footer.js?v=0.1.2.1765255143694"></script>
<!-- Feedback System (Governed by Tractatus + Agent Lightning) -->
<script src="/js/components/feedback.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/feedback.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -4,15 +4,15 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Admin Dashboard | Tractatus Framework</title>
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<script defer src="/js/admin/auth-check.js?v=0.1.2.1763926979200"></script>
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<script defer src="/js/admin/auth-check.js?v=0.1.2.1765255143694"></script>
</head>
<body class="bg-gray-50">
<!-- Navigation -->
<div id="admin-navbar" data-page-title="Dashboard" data-page-icon="dashboard"></div>
<script src="/js/components/navbar-admin.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/navbar-admin.js?v=0.1.2.1765255143694"></script>
<!-- Main Content -->
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8">
@ -225,7 +225,7 @@
<!-- Modals -->
<div id="modal-container"></div>
<script src="/js/admin/dashboard.js?v=0.1.2.1763926979200"></script>
<script src="/js/admin/dashboard.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -5,8 +5,8 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>API Reference | Tractatus Framework</title>
<meta name="description" content="Complete API reference for Tractatus Framework - endpoints, authentication, request/response formats, and examples.">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<style>
.endpoint-badge {
@apply inline-block px-2 py-1 rounded text-xs font-mono font-semibold;
@ -873,7 +873,7 @@
<!-- Footer -->
<!-- Footer Component -->
<script src="/js/components/footer.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/footer.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -31,8 +31,8 @@
<!-- RSS Feed -->
<link rel="alternate" type="application/rss+xml" title="Tractatus Blog RSS Feed" href="/api/blog/rss">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<style>
/* Accessibility: Skip link */
.skip-link { position: absolute; left: -9999px; top: 0; }
@ -122,7 +122,7 @@
<a href="#main-content" class="skip-link">Skip to main content</a>
<!-- Navigation (injected by navbar.js) -->
<script src="/js/components/navbar.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/navbar.js?v=0.1.2.1765255143694"></script>
<!-- Breadcrumb -->
<div class="bg-white border-b border-gray-200">
@ -230,10 +230,10 @@
<!-- Footer -->
<!-- Load Blog Post JavaScript -->
<script src="/js/blog-post.js?v=0.1.2.1763926979200"></script>
<script src="/js/blog-post.js?v=0.1.2.1765255143694"></script>
<!-- Footer Component -->
<script src="/js/components/footer.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/footer.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -28,8 +28,8 @@
<!-- RSS Feed -->
<link rel="alternate" type="application/rss+xml" title="Tractatus Blog RSS Feed" href="/api/blog/rss">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<style>
/* Accessibility: Skip link */
.skip-link { position: absolute; left: -9999px; top: 0; }
@ -54,7 +54,7 @@
<a href="#main-content" class="skip-link">Skip to main content</a>
<!-- Navigation (injected by navbar.js) -->
<script src="/js/components/navbar.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/navbar.js?v=0.1.2.1765255143694"></script>
<!-- Hero Section -->
<div class="bg-gradient-to-br from-indigo-50 to-blue-50 py-20">
@ -264,14 +264,14 @@
<!-- Footer -->
<!-- Internationalization (must load first for footer translations) -->
<script src="/js/i18n-simple.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1763926979200"></script>
<script src="/js/i18n-simple.js?v=0.1.2.1765255143694"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1765255143694"></script>
<!-- Load Blog JavaScript -->
<script src="/js/blog.js?v=0.1.2.1763926979200"></script>
<script src="/js/blog.js?v=0.1.2.1765255143694"></script>
<!-- Footer Component -->
<script src="/js/components/footer.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/footer.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -4,9 +4,9 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title data-i18n="page.title">Submit Case Study | Tractatus AI Safety</title>
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<style>
/* Accessibility: Skip link */
.skip-link { position: absolute; left: -9999px; top: 0; }
@ -82,8 +82,8 @@
<a href="#main-content" class="skip-link">Skip to main content</a>
<!-- Navigation (injected by navbar.js) -->
<script src="/js/components/navbar.js?v=0.1.2.1763926979200"></script>
<script src="/js/i18n-simple.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/navbar.js?v=0.1.2.1765255143694"></script>
<script src="/js/i18n-simple.js?v=0.1.2.1765255143694"></script>
<!-- Main Content -->
<main id="main-content" class="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 py-12">
@ -222,11 +222,11 @@
</main>
<!-- Footer -->
<script src="/js/components/language-selector.js?v=0.1.2.1763926979200"></script>
<script src="/js/case-submission.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1765255143694"></script>
<script src="/js/case-submission.js?v=0.1.2.1765255143694"></script>
<!-- Footer Component -->
<script src="/js/components/footer.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/footer.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -44,6 +44,6 @@
</ol>
</div>
<script src="/js/check-version.js?v=0.1.2.1763926979200"></script>
<script src="/js/check-version.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -4,8 +4,8 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Documentation - Tractatus Framework</title>
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<style>
/* Prose styling for document content */
.prose h1 { @apply text-3xl font-bold mt-8 mb-4 text-gray-900; }
@ -70,12 +70,12 @@
</div>
<!-- Scripts -->
<script src="/js/utils/api.js?v=0.1.2.1763926979200"></script>
<script src="/js/utils/router.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/document-viewer.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/code-copy-button.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/toc.js?v=0.1.2.1763926979200"></script>
<script src="/js/docs-viewer-app.js?v=0.1.2.1763926979200"></script>
<script src="/js/utils/api.js?v=0.1.2.1765255143694"></script>
<script src="/js/utils/router.js?v=0.1.2.1765255143694"></script>
<script src="/js/components/document-viewer.js?v=0.1.2.1765255143694"></script>
<script src="/js/components/code-copy-button.js?v=0.1.2.1765255143694"></script>
<script src="/js/components/toc.js?v=0.1.2.1765255143694"></script>
<script src="/js/docs-viewer-app.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -42,9 +42,9 @@
<link rel="preload" href="/fonts/inter-400.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="/fonts/inter-700.woff2" as="font" type="font/woff2" crossorigin>
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<style>
html { scroll-behavior: smooth; }
@ -507,7 +507,7 @@
<a href="#main-content" class="skip-link">Skip to main content</a>
<!-- Navigation (injected by navbar.js) -->
<script src="/js/components/navbar.js?v=0.1.2.1763926979200" defer></script>
<script src="/js/components/navbar.js?v=0.1.2.1765255143694" defer></script>
<!-- Page Header -->
<div class="bg-white border-b border-gray-200">
@ -849,15 +849,15 @@
<!-- Version Management & PWA -->
<script src="/js/version-manager.js?v=0.1.2.1763926979200" defer></script>
<script src="/js/version-manager.js?v=0.1.2.1765255143694" defer></script>
<script src="/js/components/document-cards.js?v=0.1.2.1763926979200" defer></script>
<script src="/js/docs-app.js?v=0.1.2.1763926979200" defer></script>
<script src="/js/docs-search-enhanced.js?v=0.1.2.1763926979200" defer></script>
<script src="/js/components/document-cards.js?v=0.1.2.1765255143694" defer></script>
<script src="/js/docs-app.js?v=0.1.2.1765255143694" defer></script>
<script src="/js/docs-search-enhanced.js?v=0.1.2.1765255143694" defer></script>
<!-- Internationalization -->
<script src="/js/i18n-simple.js?v=0.1.2.1763926979200" defer></script>
<script src="/js/components/language-selector.js?v=0.1.2.1763926979200" defer></script>
<script src="/js/i18n-simple.js?v=0.1.2.1765255143694" defer></script>
<script src="/js/components/language-selector.js?v=0.1.2.1765255143694" defer></script>
</body>
</html>

View file

@ -18,21 +18,21 @@
<meta name="apple-mobile-web-app-title" content="Tractatus">
<link rel="apple-touch-icon" href="/images/tractatus-icon-new.svg">
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<!-- Syntax highlighting for code blocks -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/github-dark.min.css?v=0.1.2.1763926979200">
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js?v=0.1.2.1763926979200"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/bash.min.js?v=0.1.2.1763926979200"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/javascript.min.js?v=0.1.2.1763926979200"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/json.min.js?v=0.1.2.1763926979200"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/yaml.min.js?v=0.1.2.1763926979200"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/python.min.js?v=0.1.2.1763926979200"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/github-dark.min.css?v=0.1.2.1765255143694">
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js?v=0.1.2.1765255143694"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/bash.min.js?v=0.1.2.1765255143694"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/javascript.min.js?v=0.1.2.1765255143694"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/json.min.js?v=0.1.2.1765255143694"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/yaml.min.js?v=0.1.2.1765255143694"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/python.min.js?v=0.1.2.1765255143694"></script>
<!-- Markdown parser -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/marked/11.0.0/marked.min.js?v=0.1.2.1763926979200"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/marked/11.0.0/marked.min.js?v=0.1.2.1765255143694"></script>
<style>
/* Accessibility: Skip link */
@ -329,7 +329,7 @@
<a href="#main-content" class="skip-link">Skip to main content</a>
<!-- Navigation -->
<script src="/js/components/navbar.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/navbar.js?v=0.1.2.1765255143694"></script>
<!-- Hero -->
<div class="bg-gradient-to-br from-blue-50 to-indigo-50 py-16">
@ -634,17 +634,17 @@
</div>
<!-- Internationalization -->
<script src="/js/i18n-simple.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1763926979200"></script>
<script src="/js/i18n-simple.js?v=0.1.2.1765255143694"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1765255143694"></script>
<!-- Version Management & PWA -->
<script src="/js/version-manager.js?v=0.1.2.1763926979200"></script>
<script src="/js/version-manager.js?v=0.1.2.1765255143694"></script>
<script src="/js/faq.js?v=0.1.2.1763926979200"></script>
<script src="/js/faq.js?v=0.1.2.1765255143694"></script>
<!-- Footer Component -->
<script src="/js/components/footer.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/footer.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -27,9 +27,9 @@
<link rel="manifest" href="/manifest.json">
<meta name="theme-color" content="#3b82f6">
<link rel="icon" type="image/svg+xml" href="/favicon-new.svg">
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<style>
.skip-link { position: absolute; left: -9999px; top: 0; }
.skip-link:focus { left: 0; z-index: 100; background: white; padding: 1rem; border: 2px solid #3b82f6; }
@ -74,7 +74,7 @@
<body class="bg-gray-50">
<a href="#main-content" class="skip-link">Skip to main content</a>
<script src="/js/components/navbar.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/navbar.js?v=0.1.2.1765255143694"></script>
<!-- Breadcrumb -->
<nav class="bg-gray-50 border-b border-gray-200 py-3" aria-label="Breadcrumb">
@ -1689,23 +1689,23 @@ for user_message in conversation:
</section>
<!-- Footer -->
<script src="/js/i18n-simple.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1763926979200"></script>
<script src="/js/scroll-animations.js?v=0.1.2.1763926979200"></script>
<script src="/js/page-transitions.js?v=0.1.2.1763926979200"></script>
<script src="/js/i18n-simple.js?v=0.1.2.1765255143694"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1765255143694"></script>
<script src="/js/scroll-animations.js?v=0.1.2.1765255143694"></script>
<script src="/js/page-transitions.js?v=0.1.2.1765255143694"></script>
<script src="/js/version-manager.js?v=0.1.2.1763926979200"></script>
<script src="/js/version-manager.js?v=0.1.2.1765255143694"></script>
<!-- Share CTA functionality -->
<script src="/js/share-cta.js?v=0.1.2.1763926979200"></script>
<script src="/js/share-cta.js?v=0.1.2.1765255143694"></script>
<script src="/js/components/footer.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/footer.js?v=0.1.2.1765255143694"></script>
<!-- Feedback System (Governed by Tractatus + Agent Lightning) -->
<script src="/js/components/feedback.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/feedback.js?v=0.1.2.1765255143694"></script>
<!-- Newsletter Subscription Modal -->
<script src="/js/components/newsletter.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/newsletter.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -41,10 +41,10 @@
<link rel="icon" type="image/svg+xml" href="/favicon-new.svg">
<!-- Fonts -->
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<style>
.gradient-text { background: linear-gradient(120deg, #3b82f6 0%, #8b5cf6 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.hover-lift { transition: transform 0.2s; }
@ -72,7 +72,7 @@
<!-- Navigation (injected by navbar.js) -->
<div id="navbar-placeholder" class="min-h-16"></div>
<script src="/js/components/navbar.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/navbar.js?v=0.1.2.1765255143694"></script>
<!-- Hero Section -->
<header role="banner">
@ -568,11 +568,11 @@ Handles plural moral values without imposing hierarchy—facilitates human judgm
<!-- Main Header -->
<div class="text-center mb-12">
<div style="display: inline-block; background: #000000; color: #ffffff; padding: 0.25rem 0.75rem; border-radius: 9999px; font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 1rem;">
<div style="display: inline-block; background: #000000; color: #ffffff; padding: 0.25rem 0.75rem; border-radius: 9999px; font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 1rem;" data-i18n="village_section.badge">
Production Evidence
</div>
<h2 style="font-size: 2.25rem; font-weight: 700; margin-bottom: 1rem; color: #000000;">Tractatus in Production: The Village Platform</h2>
<p style="font-size: 1.25rem; color: #000000; max-width: 48rem; margin: 0 auto;">
<h2 style="font-size: 2.25rem; font-weight: 700; margin-bottom: 1rem; color: #000000;" data-i18n="village_section.heading">Tractatus in Production: The Village Platform</h2>
<p style="font-size: 1.25rem; color: #000000; max-width: 48rem; margin: 0 auto;" data-i18n="village_section.subheading">
Our research has produced a practical outcome. Home AI applies all six Tractatus governance services to every user interaction in a live community platform.
</p>
</div>
@ -586,62 +586,62 @@ Handles plural moral values without imposing hierarchy—facilitates human judgm
🏠
</div>
<div>
<h3 style="font-size: 1.5rem; font-weight: 700; color: #000000;">Home AI</h3>
<p style="color: #000000;">Six Services Per Response</p>
<h3 style="font-size: 1.5rem; font-weight: 700; color: #000000;" data-i18n="village_section.home_ai.title">Home AI</h3>
<p style="color: #000000;" data-i18n="village_section.home_ai.subtitle">Six Services Per Response</p>
</div>
</div>
<p style="color: #000000; margin-bottom: 1.5rem; line-height: 1.625;">
<p style="color: #000000; margin-bottom: 1.5rem; line-height: 1.625;" data-i18n="village_section.home_ai.description">
Every Home AI response passes through the complete Tractatus governance stack before reaching the user. BoundaryEnforcer blocks values judgments, CrossReferenceValidator prevents prompt injection, ContextPressureMonitor tracks session health.
</p>
<div style="display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-bottom: 1.5rem;">
<div style="background: #f3f4f6; border-radius: 0.5rem; padding: 1rem; text-align: center;">
<div style="font-size: 1.875rem; font-weight: 700; color: #000000;">6</div>
<div style="font-size: 0.875rem; color: #000000;">Governance services per response</div>
<div style="font-size: 0.875rem; color: #000000;" data-i18n="village_section.home_ai.stat_services">Governance services per response</div>
</div>
<div style="background: #f3f4f6; border-radius: 0.5rem; padding: 1rem; text-align: center;">
<div style="font-size: 1.875rem; font-weight: 700; color: #000000;">11+</div>
<div style="font-size: 0.875rem; color: #000000;">Months in production</div>
<div style="font-size: 0.875rem; color: #000000;" data-i18n="village_section.home_ai.stat_months">Months in production</div>
</div>
</div>
<p style="font-size: 0.875rem; color: #000000; font-style: italic;">
<p style="font-size: 0.875rem; color: #000000; font-style: italic;" data-i18n="village_section.home_ai.disclaimer">
These figures reflect single-tenant deployment. Multi-tenant validation pending.
</p>
</div>
<!-- Governed Features Card -->
<div style="background: rgba(255,255,255,0.9); border-radius: 0.75rem; padding: 2rem; border: 1px solid #e5e7eb;">
<h3 style="font-size: 1.25rem; font-weight: 700; margin-bottom: 1.5rem; color: #000000;">Governance-Protected Features</h3>
<h3 style="font-size: 1.25rem; font-weight: 700; margin-bottom: 1.5rem; color: #000000;" data-i18n="village_section.features.title">Governance-Protected Features</h3>
<ul style="list-style: none; padding: 0; margin: 0;">
<li style="display: flex; align-items: flex-start; gap: 0.75rem; margin-bottom: 1rem;">
<div style="width: 2rem; height: 2rem; border-radius: 0.5rem; background: #14b8a6; display: flex; align-items: center; justify-content: center; flex-shrink: 0; color: white;"></div>
<div>
<div style="font-weight: 600; color: #000000;">RAG-Based Help Centre</div>
<div style="font-size: 0.875rem; color: #000000;">Vector search with permission-aware retrieval</div>
<div style="font-weight: 600; color: #000000;" data-i18n="village_section.features.rag_help.title">RAG-Based Help Centre</div>
<div style="font-size: 0.875rem; color: #000000;" data-i18n="village_section.features.rag_help.description">Vector search with permission-aware retrieval</div>
</div>
</li>
<li style="display: flex; align-items: flex-start; gap: 0.75rem; margin-bottom: 1rem;">
<div style="width: 2rem; height: 2rem; border-radius: 0.5rem; background: #14b8a6; display: flex; align-items: center; justify-content: center; flex-shrink: 0; color: white;"></div>
<div>
<div style="font-weight: 600; color: #000000;">Document OCR</div>
<div style="font-size: 0.875rem; color: #000000;">Automated text extraction under consent controls</div>
<div style="font-weight: 600; color: #000000;" data-i18n="village_section.features.document_ocr.title">Document OCR</div>
<div style="font-size: 0.875rem; color: #000000;" data-i18n="village_section.features.document_ocr.description">Automated text extraction under consent controls</div>
</div>
</li>
<li style="display: flex; align-items: flex-start; gap: 0.75rem; margin-bottom: 1rem;">
<div style="width: 2rem; height: 2rem; border-radius: 0.5rem; background: #14b8a6; display: flex; align-items: center; justify-content: center; flex-shrink: 0; color: white;"></div>
<div>
<div style="font-weight: 600; color: #000000;">Story Assistance</div>
<div style="font-size: 0.875rem; color: #000000;">Content suggestions filtered through BoundaryEnforcer</div>
<div style="font-weight: 600; color: #000000;" data-i18n="village_section.features.story_assistance.title">Story Assistance</div>
<div style="font-size: 0.875rem; color: #000000;" data-i18n="village_section.features.story_assistance.description">Content suggestions filtered through BoundaryEnforcer</div>
</div>
</li>
<li style="display: flex; align-items: flex-start; gap: 0.75rem;">
<div style="width: 2rem; height: 2rem; border-radius: 0.5rem; background: #14b8a6; display: flex; align-items: center; justify-content: center; flex-shrink: 0; color: white;"></div>
<div>
<div style="font-weight: 600; color: #000000;">AI Memory Transparency</div>
<div style="font-size: 0.875rem; color: #000000;">User-controlled summarisation with audit dashboard</div>
<div style="font-weight: 600; color: #000000;" data-i18n="village_section.features.ai_memory.title">AI Memory Transparency</div>
<div style="font-size: 0.875rem; color: #000000;" data-i18n="village_section.features.ai_memory.description">User-controlled summarisation with audit dashboard</div>
</div>
</li>
</ul>
@ -653,11 +653,13 @@ Handles plural moral values without imposing hierarchy—facilitates human judgm
<a href="https://mysovereignty.digital"
target="_blank"
rel="noopener noreferrer"
style="display: inline-block; background: #ffffff; color: #0f766e; padding: 0.75rem 2rem; border-radius: 0.5rem; font-weight: 600; text-decoration: none; box-shadow: 0 4px 6px rgba(0,0,0,0.1); text-align: center;">
style="display: inline-block; background: #ffffff; color: #0f766e; padding: 0.75rem 2rem; border-radius: 0.5rem; font-weight: 600; text-decoration: none; box-shadow: 0 4px 6px rgba(0,0,0,0.1); text-align: center;"
data-i18n="village_section.cta_explore">
Explore the Village →
</a>
<a href="/village-case-study.html"
style="display: inline-block; background: #115e59; color: #ffffff; padding: 0.75rem 2rem; border-radius: 0.5rem; font-weight: 600; text-decoration: none; border: 2px solid #2dd4bf; text-align: center;">
style="display: inline-block; background: #115e59; color: #ffffff; padding: 0.75rem 2rem; border-radius: 0.5rem; font-weight: 600; text-decoration: none; border: 2px solid #2dd4bf; text-align: center;"
data-i18n="village_section.cta_case_study">
Technical Case Study →
</a>
</div>
@ -665,8 +667,8 @@ Handles plural moral values without imposing hierarchy—facilitates human judgm
<!-- Honest Limitations -->
<div style="margin-top: 2rem; background: #fef3c7; border: 2px solid #f59e0b; border-radius: 0.5rem; padding: 1rem; text-align: center;">
<p style="font-size: 0.875rem; color: #78350f; margin: 0;">
<strong>Limitations:</strong> Single implementation, self-reported metrics, operator-developer overlap.
Independent audit and multi-site validation scheduled for 2026.
<strong data-i18n="village_section.limitations_label">Limitations:</strong> <span data-i18n="village_section.limitations">Single implementation, self-reported metrics, operator-developer overlap.
Independent audit and multi-site validation scheduled for 2026.</span>
</p>
</div>
@ -776,29 +778,29 @@ Handles plural moral values without imposing hierarchy—facilitates human judgm
<!-- Footer -->
<!-- Version Management & PWA -->
<script src="/js/version-manager.js?v=0.1.2.1763926979200"></script>
<script src="/js/version-manager.js?v=0.1.2.1765255143694"></script>
<!-- Share CTA functionality -->
<script src="/js/share-cta.js?v=0.1.2.1763926979200"></script>
<script src="/js/share-cta.js?v=0.1.2.1765255143694"></script>
<!-- Internationalization -->
<script src="/js/i18n-simple.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1763926979200"></script>
<script src="/js/i18n-simple.js?v=0.1.2.1765255143694"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1765255143694"></script>
<!-- Scroll Animations (Phase 3) -->
<script src="/js/scroll-animations.js?v=0.1.2.1763926979200"></script>
<script src="/js/scroll-animations.js?v=0.1.2.1765255143694"></script>
<!-- Page Transitions (Phase 3) -->
<script src="/js/page-transitions.js?v=0.1.2.1763926979200"></script>
<script src="/js/page-transitions.js?v=0.1.2.1765255143694"></script>
<!-- Footer Component -->
<script src="/js/components/footer.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/footer.js?v=0.1.2.1765255143694"></script>
<!-- Feedback System (Governed by Tractatus + Agent Lightning) -->
<script src="/js/components/feedback.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/feedback.js?v=0.1.2.1765255143694"></script>
<!-- Newsletter Subscription Modal -->
<script src="/js/components/newsletter.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/newsletter.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -5,8 +5,8 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Koha — Reciprocal Support | Tractatus AI Safety</title>
<meta name="description" content="Join a relationship of mutual support for AI safety. Koha is reciprocal giving that maintains community bonds — your contribution sustains this work; our work serves you and the commons.">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<style>
.gradient-text { background: linear-gradient(120deg, #3b82f6 0%, #8b5cf6 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.skip-link { position: absolute; left: -9999px; }
@ -55,7 +55,7 @@
<a href="#main-content" class="skip-link">Skip to main content</a>
<!-- Navigation (injected by navbar.js) -->
<script src="/js/components/navbar.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/navbar.js?v=0.1.2.1765255143694"></script>
<!-- Main Content -->
<main id="main-content" class="max-w-5xl mx-auto px-4 sm:px-6 lg:px-8 py-12">
@ -384,17 +384,17 @@
</main>
<!-- Footer -->
<script src="/js/components/footer.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/footer.js?v=0.1.2.1765255143694"></script>
<!-- Currency utilities and selector -->
<script src="/js/utils/currency.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/currency-selector.js?v=0.1.2.1763926979200"></script>
<script src="/js/utils/currency.js?v=0.1.2.1765255143694"></script>
<script src="/js/components/currency-selector.js?v=0.1.2.1765255143694"></script>
<!-- Donation form functionality -->
<script src="/js/koha-donation.js?v=0.1.2.1763926979200"></script>
<script src="/js/koha-donation.js?v=0.1.2.1765255143694"></script>
<!-- Internationalization -->
<script src="/js/i18n-simple.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1763926979200"></script>
<script src="/js/i18n-simple.js?v=0.1.2.1765255143694"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -35,9 +35,9 @@
<link rel="apple-touch-icon" href="/images/tractatus-icon-new.svg">
<link rel="icon" type="image/svg+xml" href="/favicon-new.svg">
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<style>
.hover-lift { transition: all 0.3s ease; }
.hover-lift:hover { transform: translateY(-2px); }
@ -85,7 +85,7 @@
<a href="#main-content" class="skip-link">Skip to main content</a>
<script src="/js/components/navbar.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/navbar.js?v=0.1.2.1765255143694"></script>
<!-- Breadcrumb Navigation -->
<nav class="bg-gray-50 border-b border-gray-200 py-3" aria-label="Breadcrumb">
@ -1030,30 +1030,30 @@
<!-- Footer -->
<!-- Internationalization (must load first for footer translations) -->
<script src="/js/i18n-simple.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1763926979200"></script>
<script src="/js/i18n-simple.js?v=0.1.2.1765255143694"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1765255143694"></script>
<!-- Scroll Animations (Phase 3) -->
<script src="/js/scroll-animations.js?v=0.1.2.1763926979200"></script>
<script src="/js/scroll-animations.js?v=0.1.2.1765255143694"></script>
<!-- Page Transitions (Phase 3) -->
<script src="/js/page-transitions.js?v=0.1.2.1763926979200"></script>
<script src="/js/page-transitions.js?v=0.1.2.1765255143694"></script>
<!-- Version Management & PWA -->
<script src="/js/version-manager.js?v=0.1.2.1763926979200"></script>
<script src="/js/leader-page.js?v=0.1.2.1763926979200"></script>
<script src="/js/version-manager.js?v=0.1.2.1765255143694"></script>
<script src="/js/leader-page.js?v=0.1.2.1765255143694"></script>
<!-- Share CTA functionality -->
<script src="/js/share-cta.js?v=0.1.2.1763926979200"></script>
<script src="/js/share-cta.js?v=0.1.2.1765255143694"></script>
<!-- Footer Component -->
<script src="/js/components/footer.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/footer.js?v=0.1.2.1765255143694"></script>
<!-- Feedback System (Governed by Tractatus + Agent Lightning) -->
<script src="/js/components/feedback.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/feedback.js?v=0.1.2.1765255143694"></script>
<!-- Newsletter Subscription Modal -->
<script src="/js/components/newsletter.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/newsletter.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -4,9 +4,9 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title data-i18n="page.title">Media Inquiry | Tractatus AI Safety</title>
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<style>
.form-group { margin-bottom: 1.5rem; }
.form-label {
@ -72,8 +72,8 @@
<a href="#main-content" class="skip-link">Skip to main content</a>
<!-- Navigation (injected by navbar.js) -->
<script src="/js/components/navbar.js?v=0.1.2.1763926979200"></script>
<script src="/js/i18n-simple.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/navbar.js?v=0.1.2.1765255143694"></script>
<script src="/js/i18n-simple.js?v=0.1.2.1765255143694"></script>
<!-- Main Content -->
<main id="main-content" class="max-w-3xl mx-auto px-4 sm:px-6 lg:px-8 py-12">
@ -176,11 +176,11 @@
</main>
<!-- Footer -->
<script src="/js/components/language-selector.js?v=0.1.2.1763926979200"></script>
<script src="/js/media-inquiry.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1765255143694"></script>
<script src="/js/media-inquiry.js?v=0.1.2.1765255143694"></script>
<!-- Footer Component -->
<script src="/js/components/footer.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/footer.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -5,8 +5,8 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<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.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<style>
.skip-link { position: absolute; left: -9999px; }
.skip-link:focus { left: 0; z-index: 100; background: white; padding: 1rem; }
@ -30,11 +30,11 @@
<a href="#main-content" class="skip-link">Skip to main content</a>
<!-- Navigation (injected by navbar.js) -->
<script src="/js/components/navbar.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/navbar.js?v=0.1.2.1765255143694"></script>
<!-- i18n Support -->
<script src="/js/i18n-simple.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1763926979200"></script>
<script src="/js/i18n-simple.js?v=0.1.2.1765255143694"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1765255143694"></script>
<!-- Main Content -->
<main id="main-content" class="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 py-12">
@ -324,7 +324,7 @@
</main>
<!-- Footer -->
<script src="/js/components/footer.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/footer.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -35,9 +35,9 @@
<link rel="apple-touch-icon" href="/images/tractatus-icon-new.svg">
<link rel="icon" type="image/svg+xml" href="/favicon-new.svg">
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1763926979200">
<link rel="stylesheet" href="/css/fonts.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tailwind.css?v=0.1.2.1765255143694">
<link rel="stylesheet" href="/css/tractatus-theme.min.css?v=0.1.2.1765255143694">
<style>
.skip-link { position: absolute; left: -9999px; }
.skip-link:focus { left: 0; z-index: 100; background: white; padding: 1rem; }
@ -91,7 +91,7 @@
</div>
</noscript>
<script src="/js/components/navbar.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/navbar.js?v=0.1.2.1765255143694"></script>
<!-- Breadcrumb Navigation -->
<nav class="bg-gray-50 border-b border-gray-200 py-3" aria-label="Breadcrumb">
@ -1575,30 +1575,30 @@
<!-- Footer -->
<!-- Internationalization (must load first for footer translations) -->
<script src="/js/i18n-simple.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1763926979200"></script>
<script src="/js/i18n-simple.js?v=0.1.2.1765255143694"></script>
<script src="/js/components/language-selector.js?v=0.1.2.1765255143694"></script>
<!-- Scroll Animations (Phase 3) -->
<script src="/js/scroll-animations.js?v=0.1.2.1763926979200"></script>
<script src="/js/scroll-animations.js?v=0.1.2.1765255143694"></script>
<!-- Page Transitions (Phase 3) -->
<script src="/js/page-transitions.js?v=0.1.2.1763926979200"></script>
<script src="/js/page-transitions.js?v=0.1.2.1765255143694"></script>
<!-- Version Management & PWA -->
<script src="/js/version-manager.js?v=0.1.2.1763926979200"></script>
<script src="/js/researcher-page.js?v=0.1.2.1763926979200"></script>
<script src="/js/version-manager.js?v=0.1.2.1765255143694"></script>
<script src="/js/researcher-page.js?v=0.1.2.1765255143694"></script>
<!-- Share CTA functionality -->
<script src="/js/share-cta.js?v=0.1.2.1763926979200"></script>
<script src="/js/share-cta.js?v=0.1.2.1765255143694"></script>
<!-- Footer Component -->
<script src="/js/components/footer.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/footer.js?v=0.1.2.1765255143694"></script>
<!-- Feedback System (Governed by Tractatus + Agent Lightning) -->
<script src="/js/components/feedback.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/feedback.js?v=0.1.2.1765255143694"></script>
<!-- Newsletter Subscription Modal -->
<script src="/js/components/newsletter.js?v=0.1.2.1763926979200"></script>
<script src="/js/components/newsletter.js?v=0.1.2.1765255143694"></script>
</body>
</html>

View file

@ -4,7 +4,7 @@
* NO aggressive caching (rely on HTTP caching instead)
*/
const CACHE_VERSION = '0.2.0';
const CACHE_VERSION = '0.1.3';
// Install immediately, don't cache anything
self.addEventListener('install', (event) => {

View file

@ -1,12 +1,12 @@
{
"version": "0.2.0",
"buildDate": "2025-12-09T01:40:00.000Z",
"version": "0.1.3",
"buildDate": "2025-12-09T04:39:03.699Z",
"changelog": [
"Village platform case study added",
"Home AI integration section",
"Framework metrics v0.2 update",
"Added German/French translations for Village section",
"Added Village case study translations (EN/DE/FR)",
"i18n support for village-case-study.html",
"Force cache invalidation"
],
"forceUpdate": true,
"minVersion": "0.2.0"
"minVersion": "0.2.1"
}

View file

@ -59,7 +59,7 @@
<ol class="flex items-center space-x-2 text-sm">
<li><a href="/" class="text-blue-600 hover:underline transition-colors">Home</a></li>
<li class="text-gray-400">/</li>
<li class="text-gray-900 font-medium" aria-current="page">Village Case Study</li>
<li class="text-gray-900 font-medium" aria-current="page" data-i18n="breadcrumb">Village Case Study</li>
</ol>
</div>
</nav>
@ -69,21 +69,21 @@
<section style="background: linear-gradient(135deg, #0d9488 0%, #0f766e 50%, #047857 100%); padding: 4rem 0;">
<div style="max-width: 80rem; margin: 0 auto; padding: 0 1rem;">
<div style="text-align: center;">
<div style="display: inline-block; background: #000000; color: #ffffff; padding: 0.5rem 1rem; border-radius: 0.5rem; font-weight: 600; margin-bottom: 1.5rem; font-size: 0.875rem;">
<div style="display: inline-block; background: #000000; color: #ffffff; padding: 0.5rem 1rem; border-radius: 0.5rem; font-weight: 600; margin-bottom: 1.5rem; font-size: 0.875rem;" data-i18n="hero.badge">
CASE STUDY
</div>
<h1 style="font-size: 2.5rem; font-weight: 700; margin-bottom: 1.5rem; color: #000000;">
<h1 style="font-size: 2.5rem; font-weight: 700; margin-bottom: 1.5rem; color: #000000;" data-i18n="hero.title">
Village Platform: Tractatus in Production
</h1>
<p style="font-size: 1.25rem; margin-bottom: 2rem; max-width: 48rem; margin-left: auto; margin-right: auto; color: #000000;">
<p style="font-size: 1.25rem; margin-bottom: 2rem; max-width: 48rem; margin-left: auto; margin-right: auto; color: #000000;" data-i18n="hero.subtitle">
How Home AI applies all six Tractatus governance services to every user interaction in a live community platform.
</p>
<!-- Caveat Box - HIGH VISIBILITY DISCLAIMER -->
<div style="background: #fef3c7; border: 3px solid #f59e0b; border-radius: 0.5rem; padding: 1.5rem; max-width: 48rem; margin: 0 auto;">
<p style="color: #78350f; font-size: 1.125rem; margin: 0;">
<strong style="color: #92400e;">⚠️ Important:</strong> This documents a single implementation by the framework developer.
Metrics are self-reported. Independent audit and multi-site validation are planned but not yet conducted.
<strong style="color: #92400e;">⚠️ <span data-i18n="hero.disclaimer.label">Important:</span></strong> <span data-i18n="hero.disclaimer.text">This documents a single implementation by the framework developer.
Metrics are self-reported. Independent audit and multi-site validation are planned but not yet conducted.</span>
</p>
</div>
</div>
@ -96,36 +96,36 @@
<!-- Overview Section -->
<section class="mb-16">
<h2 class="text-3xl font-bold text-gray-900 mb-6">Overview</h2>
<h2 class="text-3xl font-bold text-gray-900 mb-6" data-i18n="overview.heading">Overview</h2>
<div class="bg-white rounded-xl shadow-md p-8 mb-8">
<div class="grid grid-cols-1 md:grid-cols-2 gap-8">
<div>
<h3 class="text-lg font-semibold text-gray-900 mb-4">Platform Purpose</h3>
<p class="text-gray-700 leading-relaxed">
<h3 class="text-lg font-semibold text-gray-900 mb-4" data-i18n="overview.platform_purpose.title">Platform Purpose</h3>
<p class="text-gray-700 leading-relaxed" data-i18n="overview.platform_purpose.description">
The Village is a member-owned community platform providing sovereign data storage,
AI-assisted features, and privacy-by-design architecture. Communities operate
with full data ownership and governance-protected AI assistance.
</p>
</div>
<div>
<h3 class="text-lg font-semibold text-gray-900 mb-4">Deployment Facts</h3>
<h3 class="text-lg font-semibold text-gray-900 mb-4" data-i18n="overview.deployment_facts.title">Deployment Facts</h3>
<ul class="space-y-2 text-gray-700">
<li class="flex items-center">
<span class="w-32 font-medium">Duration:</span>
<span>11+ months in production</span>
<span class="w-32 font-medium" data-i18n="overview.deployment_facts.duration_label">Duration:</span>
<span data-i18n="overview.deployment_facts.duration_value">11+ months in production</span>
</li>
<li class="flex items-center">
<span class="w-32 font-medium">Tenant Model:</span>
<span>Single-tenant (multi-tenant planned)</span>
<span class="w-32 font-medium" data-i18n="overview.deployment_facts.tenant_label">Tenant Model:</span>
<span data-i18n="overview.deployment_facts.tenant_value">Single-tenant (multi-tenant planned)</span>
</li>
<li class="flex items-center">
<span class="w-32 font-medium">AI Features:</span>
<span>4 governed features live</span>
<span class="w-32 font-medium" data-i18n="overview.deployment_facts.features_label">AI Features:</span>
<span data-i18n="overview.deployment_facts.features_value">4 governed features live</span>
</li>
<li class="flex items-center">
<span class="w-32 font-medium">Services/Response:</span>
<span>6 governance checks</span>
<span class="w-32 font-medium" data-i18n="overview.deployment_facts.services_label">Services/Response:</span>
<span data-i18n="overview.deployment_facts.services_value">6 governance checks</span>
</li>
</ul>
</div>
@ -429,23 +429,26 @@
<!-- CTAs -->
<section style="background: linear-gradient(90deg, #0d9488 0%, #059669 100%); border-radius: 0.75rem; padding: 2rem; text-align: center;">
<h2 style="font-size: 1.5rem; font-weight: 700; margin-bottom: 1rem; color: #000000;">Explore Further</h2>
<p style="color: #000000; margin-bottom: 1.5rem; max-width: 42rem; margin-left: auto; margin-right: auto;">
<h2 style="font-size: 1.5rem; font-weight: 700; margin-bottom: 1rem; color: #000000;" data-i18n="cta.heading">Explore Further</h2>
<p style="color: #000000; margin-bottom: 1.5rem; max-width: 42rem; margin-left: auto; margin-right: auto;" data-i18n="cta.description">
See the Village platform in action, or dive deeper into the technical architecture.
</p>
<div style="display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center;">
<a href="https://mysovereignty.digital"
target="_blank"
rel="noopener noreferrer"
style="display: inline-block; background: #ffffff; color: #0f766e; padding: 0.75rem 2rem; border-radius: 0.5rem; font-weight: 600; text-decoration: none; box-shadow: 0 4px 6px rgba(0,0,0,0.1);">
style="display: inline-block; background: #ffffff; color: #0f766e; padding: 0.75rem 2rem; border-radius: 0.5rem; font-weight: 600; text-decoration: none; box-shadow: 0 4px 6px rgba(0,0,0,0.1);"
data-i18n="cta.visit_village">
Visit the Village →
</a>
<a href="/architecture.html"
style="display: inline-block; background: #115e59; color: #ffffff; padding: 0.75rem 2rem; border-radius: 0.5rem; font-weight: 600; text-decoration: none; border: 2px solid #2dd4bf;">
style="display: inline-block; background: #115e59; color: #ffffff; padding: 0.75rem 2rem; border-radius: 0.5rem; font-weight: 600; text-decoration: none; border: 2px solid #2dd4bf;"
data-i18n="cta.system_architecture">
System Architecture →
</a>
<a href="/researcher.html"
style="display: inline-block; background: #115e59; color: #ffffff; padding: 0.75rem 2rem; border-radius: 0.5rem; font-weight: 600; text-decoration: none; border: 2px solid #2dd4bf;">
style="display: inline-block; background: #115e59; color: #ffffff; padding: 0.75rem 2rem; border-radius: 0.5rem; font-weight: 600; text-decoration: none; border: 2px solid #2dd4bf;"
data-i18n="cta.research_details">
Research Details →
</a>
</div>