Virgil
d2017eb6e3
fix(i18n): honour word map in action failures
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:23:49 +00:00
Virgil
69bf91b1b9
fix(loader): preserve zero-valued signal priors
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:20:32 +00:00
Virgil
ac8645466f
feat(i18n): restore package-level LoadFS helper
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:17:56 +00:00
Virgil
ff42b06ae4
fix(time): normalise relative-time unit input
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:14:13 +00:00
Virgil
f091340da3
fix(service): copy handler slices in options
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:10:49 +00:00
Virgil
d95218917e
fix(i18n): guard against nil loaders
2026-04-02 07:07:42 +00:00
Virgil
7b36000b7d
fix(localise): support LANGUAGE locale lists
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:04:54 +00:00
Virgil
dd42265f90
fix(loader): add base-language file fallback
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 07:00:58 +00:00
Virgil
379cab296c
fix(reversal): honor base-language fallback in tokeniser
...
Support underscore-separated locale tags like fr_CA by falling back to the base language when building reverse indexes and matching French articles.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:56:21 +00:00
Virgil
8f8252cfc5
refactor(reversal): expose default disambiguation weights
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:53:06 +00:00
Virgil
6810b352c5
fix(service): apply default location to contextual lookups
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:49:28 +00:00
Virgil
78637dc14f
fix(i18n): escape quoted strings
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:44:58 +00:00
Virgil
50dcc47836
fix(i18n): preserve translate ok in debug mode
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:39:39 +00:00
Virgil
94e6c2d5d7
fix(i18n): canonicalise locale scans
...
Security Scan / security (push) Successful in 12s
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:35:46 +00:00
Virgil
c4b91d6585
fix(i18n): normalise loader language tags
...
Security Scan / security (push) Successful in 15s
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:31:35 +00:00
Virgil
4614931ae1
fix(i18n): prefer locale override precedence
...
Security Scan / security (push) Successful in 13s
Test / test (push) Successful in 2m16s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:26:29 +00:00
Virgil
956e90aa45
fix(i18n): canonicalise fallback language tags
...
Security Scan / security (push) Successful in 20s
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:22:07 +00:00
Virgil
7e0f6cb13a
fix(i18n): normalise fallback language tags
...
Security Scan / security (push) Successful in 23s
Test / test (push) Successful in 2m14s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:17:36 +00:00
Virgil
3c32b7a7ef
fix(i18n): release raw missing-key lock
...
Security Scan / security (push) Successful in 12s
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:13:20 +00:00
Virgil
3f6c06add5
fix(i18n): release service lock before handler callbacks
...
Test / test (push) Waiting to run
Security Scan / security (push) Successful in 13s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:10:14 +00:00
Virgil
885933626d
fix(i18n): register runtime messages as languages
...
Security Scan / security (push) Successful in 14s
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 06:06:45 +00:00
Virgil
5b139b06f1
fix(i18n): make registered locales idempotent across service swaps
...
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
...
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
c60a5e0474
fix(i18n): flag missing translations in Translate
...
Test / test (push) Waiting to run
Security Scan / security (push) Successful in 13s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 05:40:52 +00:00
Virgil
f2dd3473b3
feat(i18n): add locale provider registry
...
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
bae8b1b788
fix(i18n): fall back to base fallback language tags
...
Security Scan / security (push) Successful in 9s
Test / test (push) Successful in 2m1s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 05:31:48 +00:00
Virgil
459876c8b7
feat(i18n): expose available languages helper
...
Security Scan / security (push) Successful in 12s
Test / test (push) Successful in 2m5s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 05:27:30 +00:00
Virgil
1a0cb1b7f9
feat(i18n): add package-level translate wrapper
...
Security Scan / security (push) Successful in 14s
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 05:24:32 +00:00
Virgil
31d0b2db22
fix(reversal): support configured apostrophe articles
...
Security Scan / security (push) Successful in 14s
Test / test (push) Successful in 2m0s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 05:20:08 +00:00
Virgil
9f76b3ee3d
fix(time): pluralize nil-service relative time fallback
...
Security Scan / security (push) Successful in 10s
Test / test (push) Successful in 1m58s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 05:14:43 +00:00
Virgil
5449026041
Fix unicode capitalization in plural forms
Security Scan / security (push) Successful in 15s
Test / test (push) Successful in 1m58s
2026-04-02 05:10:36 +00:00
Virgil
c7e5ee8512
feat(i18n): add template alias for numeric shorthand
...
Security Scan / security (push) Successful in 14s
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 05:07:09 +00:00
Virgil
2f43e2731f
fix(reversal): accept modifier apostrophes in french elision
...
Security Scan / security (push) Successful in 12s
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 05:03:14 +00:00
Virgil
7f6240caf3
fix(reversal): normalize french apostrophes in article matching
...
Security Scan / security (push) Successful in 13s
Test / test (push) Successful in 1m53s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 04:57:42 +00:00
Virgil
4d672f8fb6
fix(i18n): base fallback for common keys
...
Security Scan / security (push) Successful in 12s
Test / test (push) Successful in 2m6s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 04:52:39 +00:00
Virgil
7e931ed08f
feat(i18n): implement core translator contract
...
Security Scan / security (push) Successful in 13s
Test / test (push) Successful in 2m5s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 04:49:33 +00:00
Virgil
297fceff2e
fix(reversal): recognise uncontracted French partitive articles
...
Security Scan / security (push) Successful in 14s
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 04:45:45 +00:00
Virgil
d5060197f5
feat(i18n): add base language message fallback
...
Security Scan / security (push) Successful in 11s
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 04:41:24 +00:00
Virgil
1c9cf442b6
feat(i18n): add base language grammar fallback
...
Test / test (push) Waiting to run
Security Scan / security (push) Successful in 12s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 04:37:45 +00:00
Virgil
c5fbf6ee0c
fix(reversal): ignore punctuation in article matching
...
Security Scan / security (push) Successful in 12s
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 04:34:12 +00:00
Virgil
9eca049323
feat(i18n): forward variadic numeric shorthand
...
Security Scan / security (push) Successful in 12s
Test / test (push) Successful in 1m54s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 04:30:09 +00:00
Virgil
4d8d075189
feat(i18n): add current plural category accessor
...
Security Scan / security (push) Successful in 11s
Test / test (push) Successful in 1m57s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 04:27:15 +00:00
Virgil
60bb0e91e8
feat(i18n): add current direction accessor
...
Security Scan / security (push) Successful in 14s
Test / test (push) Successful in 1m42s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 04:23:18 +00:00
Virgil
a2e7f01cbb
feat(i18n): expose fallback language accessors
...
Security Scan / security (push) Successful in 9s
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 04:20:04 +00:00
Virgil
9a58b60f0e
feat(reversal): expand dual-class vocabulary
...
Security Scan / security (push) Successful in 13s
Test / test (push) Successful in 1m52s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 04:16:00 +00:00
Virgil
9de96a76d0
feat(reversal): match configured article phrases
...
Security Scan / security (push) Successful in 11s
Test / test (push) Successful in 1m44s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 04:05:27 +00:00
Virgil
edbfde8c6f
fix(i18n): normalise shorthand lookups
...
Security Scan / security (push) Successful in 15s
Test / test (push) Successful in 1m47s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 04:00:33 +00:00
Virgil
a8ea6532f9
Expand French article reversal
Security Scan / security (push) Successful in 12s
Test / test (push) Successful in 1m43s
2026-04-02 03:57:11 +00:00
Virgil
632681c0df
fix(reversal): recognise French article phrases
...
Test / test (push) Waiting to run
Security Scan / security (push) Successful in 16s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 03:54:13 +00:00
Virgil
c21afd4263
fix(service): accept string maps in translation lookups
...
Security Scan / security (push) Successful in 13s
Test / test (push) Successful in 1m59s
Support map[string]string inputs for translation-context fields, extra lookup suffixes, and missing-key payloads, plus matching handler coverage.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 03:49:25 +00:00