#!/usr/bin/env node /** * Schedule Implementer Page Translation Work * * User request: "Option A now and schedule Option B for our Thursday meeting" * * Task: Add full German and French translation support to implementer.html */ const mongoose = require('mongoose'); const ScheduledTask = require('../src/models/ScheduledTask.model.js'); const MONGODB_URI = 'mongodb://localhost:27017/tractatus_dev'; async function addTranslationTask() { console.log('Scheduling implementer.html translation work for Thursday 9am NZDT...'); console.log(''); try { await mongoose.connect(MONGODB_URI); // Create due date: Thursday October 30, 2025 at 9:00am NZDT (same meeting as docs fix) const dueDate = new Date('2025-10-30T09:00:00+13:00'); const task = new ScheduledTask({ title: 'Add German & French Translations to Implementer Page', description: `Add comprehensive i18n support to implementer.html for new sections. **Scope:** Add data-i18n attributes and translations for all sections rewritten in October 2025 session: 1. **Hero Section** (lines 68-99) - External Governance Services title - Six architectural services description - Value prop cards (Architectural Separation, Instruction Persistence, Audit Trail) 2. **How It Works Section** (lines 120-267) - Pattern Override Challenge - External Architecture Approach - Request Flow with Governance diagram context 3. **Hook Architecture Section** (lines 268-480) - NEW SECTION - Architectural Enforcement badge/title - Hook Architecture: The Credibility Layer - Four enforcement examples (inst_084, CSP, inst_027, BoundaryEnforcer) - Process separation explanations 4. **Deployment Section** (lines 506-548) - Updated deployment guide introduction - PDF download button text 5. **Navigation Links** (lines 105-108) - Hook Architecture link - Other navigation items **Technical Work:** 1. Add ~100+ data-i18n attributes throughout HTML 2. Create translation keys in locales/en/implementer.json 3. Translate all new keys to German (locales/de/implementer.json) 4. Translate all new keys to French (locales/fr/implementer.json) 5. Test language switching on local dev server 6. Verify all sections render correctly in all three languages **Translation Files:** - /public/locales/en/implementer.json (source) - /public/locales/de/implementer.json (German) - /public/locales/fr/implementer.json (French) **Estimated Time:** 2-3 hours **Context:** During October 2025 implementer page redesign, focus was on English content quality and governance compliance. Translations were deferred to avoid delaying production deployment of critical fixes (broken diagrams, GitHub URL security, hook architecture credibility).`, dueDate: dueDate, priority: 'MEDIUM', category: 'project', recurrence: 'once', assignedTo: 'PM', showInSessionInit: true, reminderDaysBefore: 1, tags: ['i18n', 'translations', 'german', 'french', 'implementer-page', 'accessibility'], metadata: { source: 'implementer-page-fixes-2025-10-26', complexity: 'medium', impact: 'medium', task_type: 'internationalization', languages: ['de', 'fr'], files_to_modify: [ 'public/implementer.html', 'public/locales/en/implementer.json', 'public/locales/de/implementer.json', 'public/locales/fr/implementer.json' ], estimated_translation_keys: 100, prerequisite: 'English version must be finalized (completed Oct 26)' } }); await task.save(); console.log('✓ Task scheduled successfully!'); console.log(''); console.log('Task Details:'); console.log(` Title: ${task.title}`); console.log(` Due: Thursday, October 30, 2025 at 9:00am NZDT`); console.log(` Priority: ${task.priority}`); console.log(` Category: ${task.category} (internationalization)`); console.log(''); console.log('This task will add:'); console.log(' • ~100 data-i18n attributes to implementer.html'); console.log(' • German translations for all new sections'); console.log(' • French translations for all new sections'); console.log(' • Language switcher testing and verification'); console.log(''); console.log('Thursday meeting agenda now includes:'); console.log(' 1. Fix Documentation Database Navigation'); console.log(' 2. Add Implementer Page Translations (German/French)'); console.log(''); console.log('View in calendar: http://localhost:9000/admin/calendar.html'); console.log(''); await mongoose.connection.close(); process.exit(0); } catch (err) { console.error('Error scheduling task:', err.message); await mongoose.connection.close(); process.exit(1); } } addTranslationTask();