Files
houseplan-card/dist/houseplan-assets.json
T
Codex 1397afefd5 fix: the locale runtime the card ships is the code the tests prove (#354)
The production LANGUAGE_RUNTIME was a handwritten twin of the tested
LanguageRuntime class (germanDictionary/Pending/Failed): equivalent on the
day it was written, invisible to every i18n-runtime test afterwards. The
registry now exports one page-scoped `new LanguageRuntime(LANGUAGE_REGISTRY,
…)` instance — the whole existing suite starts proving the object production
actually runs, and a contract unit (instanceof + source free of the old
field names) keeps the duplicate from returning.

The class gains an optional `loadFailed(code)` hook — fired once when a
dictionary load settles into English fallback — and the registry fans it out
through `subscribeLanguageLoadFailures`. Only the View card subscribes (it
alone owns toast infrastructure): a failed language pack now shows the new
`toast.locale_load_failed` message (en/ru/de) instead of a console-only
warning; space card and both GUI editors keep the console warning as before.

Proofs: contract unit, hook unit, subscription unit; smoke_german_locale
extended — the both-attempts-failed scenario now asserts the visible toast;
two new registry mutants (handwritten-twin returns, toast dropped).

Issue: #354
User-Visible: yes
2026-08-28 17:49:59 +03:00

114 lines
3.5 KiB
JSON

{
"schema": 1,
"fingerprint": "f4223f763dcd6ca7756b77bef6936c1cfd4eff678814c4d37f22bc3a15f49852",
"entry": "houseplan-card.js",
"initialViewFiles": [
"houseplan-assets/houseplan-card-CRVz7yAZ.js",
"houseplan-card.js"
],
"initialViewGzipBytes": 257222,
"lazyFiles": [
"houseplan-assets/de-CaUzN0Gb.js",
"houseplan-assets/editor-Cx6zLzlf.js",
"houseplan-assets/houseplan-editor-runtime-g5SOkk1f.js",
"houseplan-assets/houseplan-onboarding-runtime-gghL8Cm4.js",
"houseplan-assets/space-deletion-Efs-z9tD.js"
],
"lazyGzipBytes": 160428,
"lazyEditorFiles": [
"houseplan-assets/editor-Cx6zLzlf.js",
"houseplan-assets/houseplan-editor-runtime-g5SOkk1f.js",
"houseplan-assets/space-deletion-Efs-z9tD.js"
],
"lazyEditorGzipBytes": 131845,
"lazyOnboardingFiles": [
"houseplan-assets/houseplan-onboarding-runtime-gghL8Cm4.js",
"houseplan-assets/space-deletion-Efs-z9tD.js"
],
"lazyOnboardingGzipBytes": 7203,
"lazyLocaleFiles": [
"houseplan-assets/de-CaUzN0Gb.js"
],
"lazyLocaleGzipBytes": 21934,
"files": [
{
"path": "houseplan-assets/de-CaUzN0Gb.js",
"sha256": "28905f1ea79271d20a7837a9c03b5492dd4e581570dda1c1744b6c0649b38fbd",
"rawBytes": 71667,
"gzipBytes": 21934,
"isEntry": false,
"imports": [],
"dynamicImports": []
},
{
"path": "houseplan-assets/editor-Cx6zLzlf.js",
"sha256": "e1234c8e7ff9c1cc932d45a633fef965a23b6c8db9dc5b684092df6b25a5bffa",
"rawBytes": 3831,
"gzipBytes": 1586,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-CRVz7yAZ.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/houseplan-card-CRVz7yAZ.js",
"sha256": "c8ed01fa23f357e2a2691a4b64ba459f67b2ff9567314be2159a30429fe951dd",
"rawBytes": 912395,
"gzipBytes": 256466,
"isEntry": false,
"imports": [],
"dynamicImports": [
"houseplan-assets/de-CaUzN0Gb.js",
"houseplan-assets/editor-Cx6zLzlf.js",
"houseplan-assets/houseplan-editor-runtime-g5SOkk1f.js",
"houseplan-assets/houseplan-onboarding-runtime-gghL8Cm4.js"
]
},
{
"path": "houseplan-assets/houseplan-editor-runtime-g5SOkk1f.js",
"sha256": "9e82dc7246a631a56e31e842603e099fdb5f8b89d2c4b282af4f3306330e3577",
"rawBytes": 504959,
"gzipBytes": 129705,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-CRVz7yAZ.js",
"houseplan-assets/space-deletion-Efs-z9tD.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/houseplan-onboarding-runtime-gghL8Cm4.js",
"sha256": "8b429f66b9bdc598278504cebde6800730c9f8d19e42c7b184d6cd7445a92b04",
"rawBytes": 26356,
"gzipBytes": 6649,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-CRVz7yAZ.js",
"houseplan-assets/space-deletion-Efs-z9tD.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/space-deletion-Efs-z9tD.js",
"sha256": "534af6bd61ad2404183665d7401e625383a59321feeb55db99c514d9f23415aa",
"rawBytes": 911,
"gzipBytes": 554,
"isEntry": false,
"imports": [],
"dynamicImports": []
},
{
"path": "houseplan-card.js",
"sha256": "a950c24f9f8f6cc9c50a67a5b41ad644acda7dc94501f4cbe2e771b0fa271090",
"rawBytes": 1089,
"gzipBytes": 756,
"isEntry": true,
"imports": [
"houseplan-assets/houseplan-card-CRVz7yAZ.js"
],
"dynamicImports": []
}
]
}