Commit graph

32 commits

Author SHA1 Message Date
Virgil
6ca01b37a5 fix(i18n): append missing-key handlers
All checks were successful
Security Scan / security (push) Successful in 17s
Test / test (push) Successful in 1m35s
2026-04-02 14:36:14 +00:00
Virgil
24eaadda8a feat(i18n): add current prompt alias
All checks were successful
Security Scan / security (push) Successful in 14s
Test / test (push) Successful in 2m29s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 12:31:00 +00:00
Virgil
e1f496f296 feat(i18n): add service prompt and language helpers
All checks were successful
Security Scan / security (push) Successful in 14s
Test / test (push) Successful in 2m29s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 12:27:21 +00:00
Virgil
1ae9ada1fd feat(i18n): add current text direction aliases
All checks were successful
Security Scan / security (push) Successful in 14s
Test / test (push) Successful in 2m27s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 12:10:30 +00:00
Virgil
56099f5f07 fix(i18n): merge missing-key context args
All checks were successful
Security Scan / security (push) Successful in 14s
Test / test (push) Successful in 2m27s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 12:06:17 +00:00
Virgil
849428ab10 feat(i18n): add plural category alias symmetry
All checks were successful
Security Scan / security (push) Successful in 14s
Test / test (push) Successful in 2m22s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 11:52:32 +00:00
Virgil
8551af74be feat(i18n): add current language alias
All checks were successful
Security Scan / security (push) Successful in 22s
Test / test (push) Successful in 2m27s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 11:48:29 +00:00
Virgil
e9f06342a7 feat(i18n): add rtl aliases and definite article template func
All checks were successful
Security Scan / security (push) Successful in 13s
Test / test (push) Successful in 2m23s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 11:37:33 +00:00
Virgil
7f09ee550f feat(i18n): add current RTL and handler aliases
Some checks are pending
Test / test (push) Waiting to run
Security Scan / security (push) Successful in 19s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 11:26:14 +00:00
Virgil
520a5188ba feat(i18n): add core plural category alias
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 10:41:08 +00:00
Virgil
2e4a6e5e11 refactor(i18n): add core service current-state aliases
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 10:38:34 +00:00
Virgil
2195d42413 feat(i18n): add message helper wrappers
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 10:29:18 +00:00
Virgil
1af9f42be3 feat(i18n): add core service handler delegates
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 10:26:05 +00:00
Virgil
149bed3698 feat(i18n): expose core service delegates
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 10:23:19 +00:00
Virgil
174d78b37d feat(i18n): extend core service options
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 10:09:24 +00:00
Virgil
0918f6cf72 feat(i18n): add variadic missing-key handler setter
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 10:05:49 +00:00
Virgil
9e49d133ec fix(i18n): serialise missing key handler registration
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 08:56:00 +00:00
Virgil
9a846ae05b fix(i18n): preserve core language errors
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 08:19:51 +00:00
Virgil
5b139b06f1 fix(i18n): make registered locales idempotent across service swaps
Some checks failed
Test / test (push) Waiting to run
Security Scan / security (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:03:18 +00:00
Virgil
b3fe050512 fix(i18n): make default service reinitialisable
All checks were successful
Security Scan / security (push) Successful in 14s
Test / test (push) Successful in 2m13s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 05:44:02 +00:00
Virgil
f2dd3473b3 feat(i18n): add locale provider registry
Some checks failed
Security Scan / security (push) Successful in 13s
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 05:36:42 +00:00
Virgil
7c269e42e8 fix(i18n): load registered locales on SetDefault
All checks were successful
Security Scan / security (push) Successful in 12s
Test / test (push) Successful in 1m48s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 03:15:00 +00:00
Virgil
94b336247e feat(i18n): add missing-key handler reset
All checks were successful
Security Scan / security (push) Successful in 13s
Test / test (push) Successful in 1m40s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 02:45:48 +00:00
Virgil
b8444b1780 feat(i18n): add missing-key handler registration
All checks were successful
Security Scan / security (push) Successful in 11s
Test / test (push) Successful in 1m41s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 02:33:10 +00:00
Virgil
0baf2d3e7f fix(i18n): preserve missing-key hooks in core service
Some checks are pending
Test / test (push) Waiting to run
Security Scan / security (push) Successful in 11s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 02:07:11 +00:00
Virgil
4b4f30cdb3 Load registered locales immediately
All checks were successful
Security Scan / security (push) Successful in 10s
Test / test (push) Successful in 1m37s
2026-04-02 01:37:43 +00:00
Virgil
07d22a2bd6 fix(i18n): load registered locales in core bootstrap
Some checks failed
Security Scan / security (push) Successful in 13s
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 00:44:12 +00:00
Virgil
be1cf9bba8 fix(i18n): preserve structured missing-key args
All checks were successful
Security Scan / security (push) Successful in 12s
Test / test (push) Successful in 1m31s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 00:28:29 +00:00
Virgil
ed3094a7a7 fix(i18n): report missing-key call sites
All checks were successful
Security Scan / security (push) Successful in 12s
Test / test (push) Successful in 1m27s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 00:16:53 +00:00
Virgil
277445cc5d fix(service): re-detect registered locales after init
All checks were successful
Security Scan / security (push) Successful in 10s
Test / test (push) Successful in 1m17s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 23:06:02 +00:00
Virgil
87557b66e4 feat(i18n): load registered locales during init
All checks were successful
Security Scan / security (push) Successful in 10s
Test / test (push) Successful in 1m2s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 08:17:37 +00:00
Claude
32a55f5d35
test(i18n): add tests for 8 uncovered files, coverage 69.9% -> 86.6%
Add dedicated test files for compose.go, context.go, debug.go, hooks.go,
i18n.go, localise.go, time.go, and transform.go. Uses testify
assert/require with table-driven tests and Good/Bad/Ugly naming.

Key coverage improvements:
- transform.go: toInt/toInt64/toFloat64 18.8% -> 100%
- time.go: TimeAgo/FormatAgo 0% -> 100%/87.5%
- compose.go: newTemplateData/SetFormality/IsInformal 0% -> 100%
- context.go: all functions now 100%
- debug.go: package-level SetDebug 0% -> 100%
- hooks.go: RegisterLocales 0% -> 100%
- i18n.go: T/Raw/N/SetMode/AddHandler/PrependHandler all covered

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 02:09:08 +00:00