Files
houseplan-card/custom_components/houseplan/frontend/houseplan-assets.json
T
Claude e181b08f2b fix: the adoption bodies are no longer declared Lit properties (#520)
#500 gave `_serverCfg` and `_layout` prototype accessors but left them in
`static properties`. Lit marks such a property `wrapped` and, on the FIRST
update, force-writes it into `changedProperties` with an `undefined` old
value even though nobody assigned anything (`reactive-element.js:249-252`
and `:880-886`). `willUpdate` reads that as a config replacement, raises
`_cfgEpoch`, the memoized model key changes, and a 60-room house builds and
paints its model a second time: measured 19 update cycles, 4 builds and 4
epochs against 18 / 3 / 3 before #500, worth ~550 ms of `modelReadyMs` and
the same on `firstStableRenderMs` (3355 against a 3000 ceiling).

The declaration goes; the bodies stay reactive through the owner —
`_adoption` → `onBodyReplaced` → `requestUpdate(field, previous)` — which
needs no declaration: `getPropertyOptions` falls back to the default and
`changed.has('_serverCfg')` works as before. `noAccessor: true` would not
help, `wrapped` is set before that flag is read. The trap is written above
`static properties`, where someone would put the declaration back.

`cache.entries.cleanFloor` returns to 100 in both interaction budgets: the
120 entries were the extra epoch re-keying the per-room cache, not a
property of the design — the reasoning in 914e8402 was wrong.

Witness: test/config-adoption-ownership.test.mjs pins that neither body is
declared; the mutant `adoption-bodies-declared-reactive` puts the
declaration back and reddens it.

The boot diagnostics of the previous three commits touch four private
members, so they are declared in the performance contract: `_buildModel` and
`_cfgEpoch` outright (both exist in every supported comparison base), and the
adoption entry point as a current/legacy pair — #500 turned the private
`_adoptStructuralResponses` into the public `_adoptAuthoritative`, and an
undeclared rename would have the counter report zero adoptions instead of
failing.

The same commits carried a `node_modules` symlink: `.gitignore` had the
pattern with a trailing slash, which does not cover a symbolic link, and
`git add -A` in a sandbox worktree committed it. The link is removed and the
pattern loses the slash; a mutant run on this branch failed with `EEXIST` on
it.

Issue: #520
User-Visible: no
2026-09-10 18:58:24 +03:00

315 lines
10 KiB
JSON

{
"schema": 1,
"fingerprint": "c8d5c166e30a11241ef32c7e1dc70368632e84c448524a8340494350ec4d5fca",
"entry": "houseplan-card.js",
"panelEntry": "houseplan-panel.js",
"initialViewFiles": [
"houseplan-assets/houseplan-card-DXAxXz4t.js",
"houseplan-card.js"
],
"initialViewGzipBytes": 299772,
"initialPanelFiles": [
"houseplan-assets/houseplan-card-DXAxXz4t.js",
"houseplan-card.js",
"houseplan-panel.js"
],
"initialPanelGzipBytes": 302076,
"initialPanelOnlyFiles": [
"houseplan-panel.js"
],
"initialPanelOnlyGzipBytes": 2304,
"lazyFiles": [
"houseplan-assets/backdrop-pick-qyPNmULR.js",
"houseplan-assets/de-DvdscEer.js",
"houseplan-assets/editor-Gxbn7bnW.js",
"houseplan-assets/fr-jiXq6Mrg.js",
"houseplan-assets/furniture-plan-art.generated-Dw0IIirB.js",
"houseplan-assets/guard-IppSarFv.js",
"houseplan-assets/houseplan-editor-runtime-DbApDIhu.js",
"houseplan-assets/houseplan-onboarding-runtime-BpONoVw8.js",
"houseplan-assets/hp-zigbee-topology-overlay-CvYXeB7d.js",
"houseplan-assets/iso-scene-render-DY37-w1-.js",
"houseplan-assets/live-interaction-runtime-rm6xNkUs.js",
"houseplan-assets/pdf-export-C4aEaLXl.js",
"houseplan-assets/summary-panel-runtime-loaded-Cdo93NMV.js",
"houseplan-assets/zigbee-topology-rqneqkBH.js",
"houseplan-assets/zigbee-topology-runtime-BszC8bHw.js"
],
"lazyGzipBytes": 418117,
"lazyEditorFiles": [
"houseplan-assets/backdrop-pick-qyPNmULR.js",
"houseplan-assets/editor-Gxbn7bnW.js",
"houseplan-assets/furniture-plan-art.generated-Dw0IIirB.js",
"houseplan-assets/guard-IppSarFv.js",
"houseplan-assets/houseplan-editor-runtime-DbApDIhu.js",
"houseplan-assets/zigbee-topology-rqneqkBH.js"
],
"lazyEditorGzipBytes": 205675,
"lazyOnboardingFiles": [
"houseplan-assets/backdrop-pick-qyPNmULR.js",
"houseplan-assets/houseplan-onboarding-runtime-BpONoVw8.js"
],
"lazyOnboardingGzipBytes": 14182,
"lazyLocaleFiles": [
"houseplan-assets/de-DvdscEer.js",
"houseplan-assets/fr-jiXq6Mrg.js"
],
"lazyLocaleGzipBytes": 54854,
"lazyIsometricFiles": [
"houseplan-assets/guard-IppSarFv.js",
"houseplan-assets/iso-scene-render-DY37-w1-.js"
],
"lazyIsometricGzipBytes": 13456,
"lazyFurnitureArtFiles": [
"houseplan-assets/furniture-plan-art.generated-Dw0IIirB.js"
],
"lazyFurnitureArtGzipBytes": 10250,
"lazyPdfFiles": [
"houseplan-assets/furniture-plan-art.generated-Dw0IIirB.js",
"houseplan-assets/pdf-export-C4aEaLXl.js"
],
"lazyPdfGzipBytes": 120364,
"files": [
{
"path": "houseplan-assets/backdrop-pick-qyPNmULR.js",
"sha256": "6fa993afbd4bb34f7c26d281739dc3068e6b3a5a130730da3709ae2804ee18fb",
"rawBytes": 21134,
"gzipBytes": 7144,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-DXAxXz4t.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/de-DvdscEer.js",
"sha256": "550101acdaf740bde5a55bd645556eebca07174fbe12838ca61525deb347bb21",
"rawBytes": 91441,
"gzipBytes": 27711,
"isEntry": false,
"imports": [],
"dynamicImports": []
},
{
"path": "houseplan-assets/editor-Gxbn7bnW.js",
"sha256": "07dae1886ff056c616e2e28d099996dbdc9c80c3a1932056c15c0f8c0f5b643f",
"rawBytes": 3832,
"gzipBytes": 1583,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-DXAxXz4t.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/fr-jiXq6Mrg.js",
"sha256": "5addf773dc8c0fc1104e5569e967cb81a425a86fcfaf963e5aca1859f7830e49",
"rawBytes": 93719,
"gzipBytes": 27143,
"isEntry": false,
"imports": [],
"dynamicImports": []
},
{
"path": "houseplan-assets/furniture-plan-art.generated-Dw0IIirB.js",
"sha256": "baa4e70489f70b4b0c32b1aa99349e152a68dfd95672bf8c771fab2396542e1b",
"rawBytes": 33655,
"gzipBytes": 10250,
"isEntry": false,
"imports": [],
"dynamicImports": []
},
{
"path": "houseplan-assets/guard-IppSarFv.js",
"sha256": "5c6c52a5e681366b86bc8abfae74ab82620ba108f5ea7d91482715a708a2ec09",
"rawBytes": 518,
"gzipBytes": 369,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-DXAxXz4t.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/houseplan-card-DXAxXz4t.js",
"sha256": "4dffdadca288cad87f819c92aa956895804428e5e2816437133b9b3afa479e34",
"rawBytes": 1078511,
"gzipBytes": 298968,
"isEntry": false,
"imports": [],
"dynamicImports": [
"houseplan-assets/de-DvdscEer.js",
"houseplan-assets/editor-Gxbn7bnW.js",
"houseplan-assets/fr-jiXq6Mrg.js",
"houseplan-assets/furniture-plan-art.generated-Dw0IIirB.js",
"houseplan-assets/houseplan-editor-runtime-DbApDIhu.js",
"houseplan-assets/houseplan-onboarding-runtime-BpONoVw8.js",
"houseplan-assets/hp-zigbee-topology-overlay-CvYXeB7d.js",
"houseplan-assets/iso-scene-render-DY37-w1-.js",
"houseplan-assets/live-interaction-runtime-rm6xNkUs.js",
"houseplan-assets/pdf-export-C4aEaLXl.js",
"houseplan-assets/summary-panel-runtime-loaded-Cdo93NMV.js"
]
},
{
"path": "houseplan-assets/houseplan-editor-runtime-DbApDIhu.js",
"sha256": "bef73f3edf6f6ffe346f8290dd92298faab187c58f6ca2cd848f883caa236db7",
"rawBytes": 672160,
"gzipBytes": 178899,
"isEntry": false,
"imports": [
"houseplan-assets/backdrop-pick-qyPNmULR.js",
"houseplan-assets/furniture-plan-art.generated-Dw0IIirB.js",
"houseplan-assets/guard-IppSarFv.js",
"houseplan-assets/houseplan-card-DXAxXz4t.js",
"houseplan-assets/zigbee-topology-rqneqkBH.js"
],
"dynamicImports": [
"houseplan-assets/zigbee-topology-runtime-BszC8bHw.js"
]
},
{
"path": "houseplan-assets/houseplan-onboarding-runtime-BpONoVw8.js",
"sha256": "0d64ddaee8aa9a03b4938d5f15f024ea7d24377bbef4d31984379fcdc491bc34",
"rawBytes": 28287,
"gzipBytes": 7038,
"isEntry": false,
"imports": [
"houseplan-assets/backdrop-pick-qyPNmULR.js",
"houseplan-assets/houseplan-card-DXAxXz4t.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/hp-zigbee-topology-overlay-CvYXeB7d.js",
"sha256": "dda313f3809b269004733a221a92516dbc80d8631ed477d21ae4349705c26307",
"rawBytes": 11034,
"gzipBytes": 3729,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-DXAxXz4t.js",
"houseplan-assets/zigbee-topology-rqneqkBH.js",
"houseplan-assets/zigbee-topology-runtime-BszC8bHw.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/iso-scene-render-DY37-w1-.js",
"sha256": "71225860933d88240310700cb08b48720ecb3783211352792a915d8847a9086e",
"rawBytes": 38562,
"gzipBytes": 13087,
"isEntry": false,
"imports": [
"houseplan-assets/guard-IppSarFv.js",
"houseplan-assets/houseplan-card-DXAxXz4t.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/live-interaction-runtime-rm6xNkUs.js",
"sha256": "4cf9d57863db37c07db55708d5c0b5a4f693454e40fd88ae21f26b3ad713918c",
"rawBytes": 5196,
"gzipBytes": 2128,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-DXAxXz4t.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/pdf-export-C4aEaLXl.js",
"sha256": "4aab60b46cf873993bd90bbccb8ec4d9a92ed2ebce44efff70ae17efef4371b9",
"rawBytes": 237254,
"gzipBytes": 110114,
"isEntry": false,
"imports": [
"houseplan-assets/furniture-plan-art.generated-Dw0IIirB.js",
"houseplan-assets/houseplan-card-DXAxXz4t.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/summary-panel-editor-gDgVUDlQ.js",
"sha256": "36f8ebca3736385ee3cddc87bcc3cb755f5dc275540fb23f9a63540b5e482d7f",
"rawBytes": 14824,
"gzipBytes": 3403,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-DXAxXz4t.js",
"houseplan-assets/summary-panel-runtime-loaded-Cdo93NMV.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/summary-panel-metrics-BhMxYYEx.js",
"sha256": "dd09ca558ac9ab1f5f46cdbbfdeb399ed1fb85b0e6302e0dd193d89bc83cea8a",
"rawBytes": 2610,
"gzipBytes": 1307,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-DXAxXz4t.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/summary-panel-runtime-loaded-Cdo93NMV.js",
"sha256": "69ef0e4c7b8dfb0c0941f7b9ce92b85c7a9759e2bbb2adbf8148c2ef51c827e8",
"rawBytes": 72272,
"gzipBytes": 19729,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-DXAxXz4t.js"
],
"dynamicImports": [
"houseplan-assets/summary-panel-editor-gDgVUDlQ.js",
"houseplan-assets/summary-panel-metrics-BhMxYYEx.js"
]
},
{
"path": "houseplan-assets/zigbee-topology-rqneqkBH.js",
"sha256": "487bff06b76a9fdf2f4a8bb37980f376970971bb1b1997e3fa5b87695862a5b3",
"rawBytes": 18961,
"gzipBytes": 7430,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-DXAxXz4t.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/zigbee-topology-runtime-BszC8bHw.js",
"sha256": "a1aa75416c80e9a3c1aeaa99bdfd85352406ee86e43e0eb8941d9375fa20397b",
"rawBytes": 3941,
"gzipBytes": 1763,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-DXAxXz4t.js",
"houseplan-assets/zigbee-topology-rqneqkBH.js"
],
"dynamicImports": []
},
{
"path": "houseplan-card.js",
"sha256": "90ee769a169d71da4a8e40a997c56cf2f26769eb2f40d65365ef25ca10bed7ed",
"rawBytes": 1205,
"gzipBytes": 804,
"isEntry": true,
"imports": [
"houseplan-assets/houseplan-card-DXAxXz4t.js"
],
"dynamicImports": []
},
{
"path": "houseplan-panel.js",
"sha256": "b113719c1ae979fd17e52eaca2c8a2db1f4b3022f77c3f542d55b5bc8a3f38ee",
"rawBytes": 6124,
"gzipBytes": 2304,
"isEntry": true,
"imports": [
"houseplan-card.js"
],
"dynamicImports": []
}
]
}