test(light): preserve empty render contract and guard late static imports

Follow the render-local barrier wrapper without weakening empty-space or
confirmation assertions. Register the cold-import connection guard mutation.

Issue: #789
User-Visible: no
This commit is contained in:
Matysh
2026-10-04 07:17:00 +03:00
parent 7777b8a0a8
commit d8949cfffc
3 changed files with 19 additions and 3 deletions
+5 -1
View File
@@ -76,7 +76,11 @@ test('empty render keeps create/import affordances without spatial layers', () =
// Обёртка: настоящий `nothing` пробрасывается как есть. `noChange` вложен в
// стабильный shell: так тело остаётся, а соседний confirm можно убрать.
const wrapper = methodBody('render');
// #789: внешний render ограничивает кэш барьеров одним проходом; контракт
// пустого тела и подтверждения остаётся во внутренней обёртке.
assert.match(methodBody('render'),
/return this\._lightBarrierPass\.run\(\(\) => this\._renderLightPass\(\)\);/);
const wrapper = methodBody('_renderLightPass');
assert.match(wrapper, /const body = this\._renderBody\(\);/);
assert.match(wrapper, /if \(body === nothing\) return body;/);
assert.match(wrapper, /return this\._renderRoot\(body\);/);