Commit graph

12 commits

Author SHA1 Message Date
callumalpass
ad1c00f1f2 refactor service and ui boundaries 2026-05-20 06:57:26 +10:00
callumalpass
bdce7792ae refactor architecture boundaries for lint ratchet 2026-05-20 06:43:51 +10:00
callumalpass
9d0665e82f Clean up CSS lint issues 2026-05-14 21:06:30 +10:00
callumalpass
594ee77f67 Extract core logic and add conformance waivers 2026-03-31 05:41:55 +11:00
callumalpass
c3863baacc chore: checkpoint current tasknotes state 2026-03-25 08:08:28 +11:00
callumalpass
413df27517 chore(docs): add docs sync and CI quality checks 2026-02-15 11:03:35 +11:00
callumalpass
d7550484cd Merge branch 'i18n-improvements' 2025-11-02 20:34:34 +11:00
callumalpass
50ab21db58 feat(i18n): add template generation with stale detection
Add generate-template command that creates translation files with
state-based detection of missing and stale translations. Uses the
same hash verification logic as the verify command to properly
identify outdated translations when source text changes.

- Add i18n:generate-template npm script
- Mark missing translations as "TODO: English text"
- Mark stale translations as "STALE: old translation"
- Preserve up-to-date translations
- Show statistics for missing/stale/up-to-date keys
- Update I18N_GUIDE.md with template generation workflow
2025-11-02 20:30:46 +11:00
callumalpass
73fcaf30ea feat(i18n): complete missing translations and internationalize hardcoded strings
Complete missing translations for all languages:
- de, es, fr: All missing keys translated (100% coverage for existing keys)
- ja, ru, zh: Missing keys translated and stale keys updated

Add 159 new translation keys for previously hardcoded strings:
- modals.deviceCode (12 keys)
- modals.icsEventInfo (18 keys)
- modals.timeblockInfo (23 keys)
- modals.timeblockCreation (20 keys)
- modals.icsNoteCreation (16 keys)
- views.stats (25 keys)
- views.agenda, views.notes, views.kanban (additional keys)
- components.dateContextMenu (10 keys)
- components.subgroupMenuBuilder (10 keys)
- notices (23 keys)

Update source files to use i18n:
- 5 modal files
- 5 view files
- 3 component files
- OAuthService, FilterBar

Translation status:
- de, es: 100% (1704/1704)
- fr, ja, ru, zh: ~90% of new keys translated
2025-11-02 20:30:20 +11:00
callumalpass
3ccb66ca9c feat(i18n): enhance translation management system
- Add new i18n commands:
  - npm run i18n:find-unused - Find keys in en.ts not used in source code
  - npm run i18n:check-duplicates - Check for duplicate keys in translation files
  - npm run i18n:check-usage - Verify all keys used in code exist in en.ts

- Update all i18n commands to show complete lists instead of truncated summaries
  - i18n:verify now shows all missing/stale keys (not just first 10)
  - i18n:find-unused shows all potentially unused keys
  - Enables piping to files, filtering, and scripting

- Add refactoring script scripts/refactor-i18n-calls.mjs
  - Standardizes translation function calls to this.translate()
  - Includes dry-run mode for safe preview
  - Ready to run when needed to improve consistency

- Enhance I18N_GUIDE.md with:
  - Documentation for all new commands
  - Best practices for translation usage patterns
  - Claude Code integration documentation
  - Comprehensive troubleshooting section
  - Usage verification workflow examples

- Update /translate-missing slash command to read I18N_GUIDE.md
  - Ensures AI translations follow documented guidelines

All i18n commands now detect 5 translation patterns:
- t("key")
- translate("key")
- this.t("key")
- this.translate("key")
- plugin.i18n.translate("key")

Achieves 76% static analysis coverage (1172/1540 keys detected)
2025-11-02 19:54:26 +11:00
callumalpass
c721a67230 feat: complete fr locale and fix i18n tooling 2025-09-23 22:10:35 +10:00
callumalpass
eb7be73987 feat: implement comprehensive i18n CI/CD system
- Add i18n management script with sync, verify, and status commands
- Integrate GitHub Actions workflow to enforce translation consistency
- Generate initial manifest (1209 keys) and state files for English/French
- Add package.json scripts for easy i18n workflow management
- Create comprehensive I18N_GUIDE.md with usage examples and best practices

Features:
- Automatic detection of missing/stale translations
- CI/CD enforcement preventing deployment of untranslated strings
- Hash-based tracking system for source string changes
- Support for multiple locales with individual progress tracking
- TypeScript file parsing with automatic cleanup

This ensures translation quality and prevents regressions while providing
clear workflows for both developers and translators.
2025-09-23 22:10:35 +10:00