1.8 KiB
M16-GAP-00016 Status
status: done task: NodeTree data-block LOCAL_EXACT slice updated: 2026-08-19 America/New_York
scope: Blender 5.2 shader NodeTree observability through a retained Material: RGB -> Principled -> Material Output nodes, links and the reader's stable shader graph hash.
evidence:
tools/web/generated/M16-GAP-00016.pygeneratedWebGapNodeTreeMaterialwith three nodes and two links, retained by a minimal triangle object.- Desktop report reopened after save and matched exactly: ShaderNodeRGB, ShaderNodeBsdfPrincipled and ShaderNodeOutputMaterial with two deterministic links.
- WASM/Main opened the same fixture, exposed the graph through the material shader graph with three nodes, two links and a 64-character hash, and save/reopen matched the material graph exactly.
- A truncated malformed Blend submitted to an already loaded Main was rejected and the original snapshot remained unchanged.
build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00016.py -- tests/files/web/generated/M16-GAP-00016-datablock-NodeTree.blendexited 0.npm --prefix web run test:generated-gap -- --task M16-GAP-00016exited 0.node tools/web/check-generated-gap.mjs --task M16-GAP-00016exited 0.
artifacts: tests/golden/M16-GAP-00016/manifest.json contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports.
knownRisk: This closes the shader NodeTree reader slice exposed by Material. Geometry-node groups, compositor trees, node editing and all other generated gaps remain separate tasks.
rollback: remove this task's fixture, checker, reports, manifest, status and context; restore M16-GAP-00015 as the queue tail without editing its successful evidence.
nextTask: M16-GAP-00017