26 lines
1.9 KiB
Markdown
26 lines
1.9 KiB
Markdown
# M16-GAP-00023 Status
|
|
|
|
status: done
|
|
task: Speaker data-block LOCAL_EXACT slice
|
|
updated: 2026-08-20 America/New_York
|
|
|
|
scope: Blender 5.2 `Speaker` identity and bounded speaker resource fields through the same generated fixture in desktop and WASM/Main: linked sound identity, volume limits, distance controls, attenuation, cone controls, volume and pitch.
|
|
|
|
evidence:
|
|
|
|
- `tools/web/generated/M16-GAP-00023.py` deterministically creates `speaker:WebGapSpeaker` linked to `sound:WebGapSpeakerSound` and saves the Blend fixture.
|
|
- Desktop reopen report matches exactly for the speaker identity, linked sound and all bounded fields.
|
|
- The reader exports Blender's `Speaker` structure as a `speakers` Scene IR resource, including the linked sound ID; protocol validation bounds the resource fields.
|
|
- WASM/Main opened the same fixture, matched every desktop speaker field, saved and reopened with an identical snapshot, and rejected a truncated Blend without mutating the loaded Main.
|
|
- `build_blender_5.2.0/bin/blender -b --factory-startup --python tools/web/generated/M16-GAP-00023.py -- tests/files/web/generated/M16-GAP-00023-datablock-Speaker.blend` exited 0.
|
|
- `npm --prefix web run test:generated-gap -- --task M16-GAP-00023` exited 0.
|
|
- `node tools/web/check-generated-gap.mjs --task M16-GAP-00023` exited 0.
|
|
|
|
artifacts: `tests/golden/M16-GAP-00023/manifest.json` contains SHA-256 for the parent manifest, fixture, generator, desktop/Web checkers, reader/protocol/runtime and both reports.
|
|
|
|
knownRisk: This closes only the `datablock:Speaker` resource-observability slice. Audio playback, speaker operators and other data-blocks remain separate tasks.
|
|
|
|
rollback: remove this task's fixture, generator, desktop checker, checker branch, reader/protocol/runtime changes, reports, manifest, status and context; restore `M16-GAP-00022` as the queue tail without editing its successful evidence.
|
|
|
|
nextTask: `M16-GAP-00024`
|