Commit graph

6 commits

Author SHA1 Message Date
TheFlow
bbed39623c feat(i18n): add complete German and French translations for implementer page
Add comprehensive internationalization support for implementer.html:

- Added 277 data-i18n attributes across all major sections:
  * Hero section (title, subtitle, 3 value props)
  * Quick Links navigation (8 items)
  * How It Works section
  * Architecture diagrams (3 sections)
  * Hook Architecture (~50+ elements)
  * Deployment guide
  * Core Services (6 service cards)
  * API Reference (4 examples)
  * Integration Examples & Patterns (8 items)
  * Development Roadmap (6 items + CTA)
  * Resources section

- Translation files:
  * EN: 289 keys (complete structure)
  * DE: 282 keys translated via DeepL Pro API (0 errors)
  * FR: 282 keys translated via DeepL Pro API (0 errors)
  * Validation: 100% - all 277 HTML keys present in all languages

- Added automation scripts:
  * translate-implementer-deepl.js - DeepL translation automation
  * validate-implementer-i18n.js - Translation validation

Follows successful pattern from researcher page translation.
All translations professionally formatted with proper formality.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 00:57:29 +13:00
TheFlow
2298d36bed fix(submissions): restructure Economist package and fix article display
- Create Economist SubmissionTracking package correctly:
  * mainArticle = full blog post content
  * coverLetter = 216-word SIR— letter
  * Links to blog post via blogPostId
- Archive 'Letter to The Economist' from blog posts (it's the cover letter)
- Fix date display on article cards (use published_at)
- Target publication already displaying via blue badge

Database changes:
- Make blogPostId optional in SubmissionTracking model
- Economist package ID: 68fa85ae49d4900e7f2ecd83
- Le Monde package ID: 68fa2abd2e6acd5691932150

Next: Enhanced modal with tabs, validation, export

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 08:47:42 +13:00
TheFlow
0dd4a5f6c8 refactor: reduce public repo to minimal implementation-only resource
REMOVED: 267 non-implementation files (51% reduction)

Categories removed:
- Research documents & case studies (35 files)
- Planning/internal development docs (28 files)
- Website pages & assets (93 files - this is framework code, not website code)
- Audit reports (6 files)
- Non-essential admin UI (11 files)
- Markdown content duplicates (10 files)
- Internal development scripts (96 files)
- Internal setup docs (2 files)

RETAINED: 253 implementation-focused files
- Core framework services (src/)
- Test suite (tests/)
- API documentation (docs/api/)
- Deployment quickstart guide
- Essential admin UI (rule manager, dashboard, hooks dashboard)
- Architecture decision records
- Configuration files

PURPOSE: Public repo is now focused exclusively on developers
implementing Tractatus, not researchers studying it or users visiting
the website. All background/research content available at
https://agenticgovernance.digital

🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-21 21:09:34 +13:00
TheFlow
85ad18529d fix(i18n): eliminate inst_017/018 violations from German and French translations
GERMAN TRANSLATIONS (2 violations → 0):
- public/locales/de/about.json:70
  - "architektonische Garantien" → "architektonische Beschränkungen"
  - (architectural guarantees → architectural constraints)

- public/locales/de/implementer.json:16
  - "produktionsreife kommerzielle Software" → "kommerzielle Software"
  - (production-ready commercial software → commercial software)

FRENCH TRANSLATIONS (2 violations → 0):
- public/locales/fr/about.json:70
  - "garanties architecturales" → "contraintes architecturales"
  - (architectural guarantees → architectural constraints)

- public/locales/fr/implementer.json:16
  - "logiciel commercial prêt pour la production" → "logiciel commercial"
  - (commercial software ready for production → commercial software)

RESULT: All German and French translations now match English inst_016/017/018 compliance

🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-21 18:03:40 +13:00
TheFlow
46df47d6d8 fix(contact): replace personal email with research@agenticgovernance.digital
SUMMARY:
Replaced all instances of personal email (john.stroh.nz@pm.me) with
the official research contact email (research@agenticgovernance.digital)
across all public-facing documents.

CHANGES:
Replaced in 4 files:
1. public/implementer.html (line 144)
2. public/locales/en/implementer.json (line 23)
3. public/locales/de/implementer.json (line 23)
4. public/locales/fr/implementer.json (line 23)

IMPACT:
- Contact information now uses official organizational email
- Maintains consistency across all language versions
- No personal contact information exposed publicly

VERIFICATION:
✓ All 4 instances replaced
✓ No remaining instances of old email in public directory

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-19 21:00:38 +13:00
TheFlow
06c3631ec4 feat: add multilingual support for 5 key pages (researcher, leader, implementer, about, faq)
Translation Infrastructure:
- Created 15 new translation files (en/de/fr) for 5 pages
- Enhanced i18n-simple.js to auto-detect page names
- Added page detection logic mapping URLs to translation files
- Supports researcher, leader, implementer, about, faq pages

Translation Files Created:
English (en/):
  - researcher.json (research foundations, empirical observations)
  - leader.json (governance gap, architectural approach, EU AI Act)
  - implementer.json (integration approaches, quick start, deployment)
  - about.json (mission, values, origin story, license)
  - faq.json (search modal, browse by audience, tips)

German (de/):
  - researcher.json (Forschungsgrundlagen, Empirische Beobachtungen)
  - leader.json (Governance-Lücke, Architektonischer Ansatz)
  - implementer.json (Integrationsansätze, Schnellstart)
  - about.json (Mission, Werte, Ursprungsgeschichte)
  - faq.json (Häufig gestellte Fragen)

French (fr/):
  - researcher.json (Fondements de Recherche, Observations Empiriques)
  - leader.json (Lacune de Gouvernance, Approche Architecturale)
  - implementer.json (Approches d'Intégration, Démarrage Rapide)
  - about.json (Mission, Valeurs, Histoire d'Origine)
  - faq.json (Questions Fréquemment Posées)

Technical Changes:
- i18n-simple.js: Added detectPageName() method
- Maps URL paths to translation file names
- Loads page-specific translations automatically
- researcher.html: Added data-i18n attributes to header section

Language Selector:
- Already deployed on all 6 pages (mobile icon-based design)
- Now backed by full translation infrastructure
- Switching languages loads correct page-specific translations

Implementation Status:
 Translation files: Complete (15 files, ~350 translation keys)
 i18n system: Enhanced with page detection
 Proof of concept: Working on researcher.html
 Full implementation: data-i18n attributes needed on remaining pages

Next Steps for Full i18n:
- Add data-i18n attributes to leader.html (~60 elements)
- Add data-i18n attributes to implementer.html (~70 elements)
- Add data-i18n attributes to about.html (~40 elements)
- Add data-i18n attributes to faq.html (~30 elements)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-16 23:11:12 +13:00