feat(web): add incremental modifier reader batch
Some checks failed
M6 deployable RC / quick (push) Has been cancelled
M6 deployable RC / chromium (push) Has been cancelled
M6 deployable RC / release (push) Has been cancelled

This commit is contained in:
mes123456
2026-09-03 13:30:30 +08:00
parent 646e580b94
commit c3cce050f8
24 changed files with 9295 additions and 57 deletions

View File

@@ -15,9 +15,9 @@
| 字段 | 值 |
| --- | --- |
| 里程碑 | WBV2 capability workflow |
| 当前任务 | `WBV2-P1151-001` |
| parent manifest | `tests/golden/WBV2-P1151-000/manifest.json` |
| 任务卡 | [`tasks/WBV2-P1151-001.md`](tasks/WBV2-P1151-001.md) |
| 当前任务 | `WBV2-P1152-001` |
| parent manifest | `tests/golden/WBV2-P1152-000/manifest.json` |
| 任务卡 | [`tasks/WBV2-P1152-001.md`](tasks/WBV2-P1152-001.md) |
| 专项验收 | `node tools/web/check-execution-control-plane.mjs` |
| legacy coverage checkpoint | `M16-GAP-00282` |
| legacy coverage parent | `tests/golden/M16-GAP-00281/manifest.json` |

View File

@@ -0,0 +1,7 @@
# WBV2-P1152-000 status
- task: `WBV2-P1152-000`; parent: `WBV2-P1151-001`; status: `done`
- taskClass: `QUEUE_ENABLEMENT`; no modifier-family parity completion claimed
- source-backed batch authorized: `MODIFIER_READER_BATCH_SIX` (12 units)
- dynamic inventory: `3745` units; verified `442`; unverified `3303`; bound delta `0`
- nextTask: `WBV2-P1152-001`

View File

@@ -0,0 +1,9 @@
# WBV2-P1152-001 status
- task: `WBV2-P1152-001`; module: `MODIFIER_READER_BATCH_SIX`; status: `done`
- source hashes stable: `true`; commands passed: `4`
- existing production evidence reused: `false`; skipped commands: `0`
- positive Main mutation, negative no-mutation, recovery and Chromium gates are recorded in the module receipt
- dynamic source inventory: `3745` units; verified `454`; unverified `3291`; planning estimate `5200` (non-binding); this-segment binding delta: `12`
- historical 6900-entry inventory remains read-only; full-family parity: `false`
- nextTask: `NONE`

View File

@@ -0,0 +1,31 @@
# WBV2-P1152-000: authorize module batch
- task: WBV2-P1152-000
- parent: WBV2-P1151-001
- status: done
- gap: capability:MODIFIER_READER_BATCH_SIX
- ownerFamily: MODIFIER
- targetImplementationClass: QUEUE_ONLY
- Implementation entrypoint: `python3 my-tools/authorize_next_wbv2_task.py --write`
## 目标
授权一个共享 Blender Main/WASM/Chromium 功能批次:MODIFIER_READER_BATCH_SIX,共 12 个源码/RNA 单元。
## 输入与范围
- Blender source: `blender-5.2.0/source/blender`
- Fixtures/test: `tests/files/web/generated/M16-GAP-00081-modifier-MESH_TO_VOLUME.blend`, `tests/files/web/generated/M16-GAP-00087-modifier-PARTICLE_INSTANCE.blend`, `tests/files/web/generated/M16-GAP-00098-modifier-SURFACE.blend`, `tests/files/web/generated/M16-GAP-00103-modifier-VERTEX_WEIGHT_EDIT.blend`, `tests/files/web/generated/M16-GAP-00104-modifier-VERTEX_WEIGHT_MIX.blend`, `tests/files/web/generated/M16-GAP-00105-modifier-VERTEX_WEIGHT_PROXIMITY.blend`, `web/tests/e2e/wbv2-modifier-reader-multi-fixture-production.spec.ts`
## 验收
- prior evidence and dynamic inventory remain hash-bound and immutable
- one shared function chain validates the complete selected batch
- missing source, unsupported data, hash drift or false completion remains blocked
- `node tools/web/check-task-context.mjs --task WBV2-P1152-000 --write`
## 交付与回滚
- Manifest: `tests/golden/WBV2-P1152-000/manifest.json`
- Status: `docs/status/WBV2-P1152-000.md`
- Rollback: restore WBV2-P1151-001 as queue parent.

View File

@@ -0,0 +1,45 @@
# WBV2-P1152-001: verify modifier reader batch six
- task: WBV2-P1152-001
- parent: WBV2-P1152-000
- status: in_progress
- gap: capability:MODIFIER_READER_BATCH_SIX
- ownerFamily: MODIFIER
- targetImplementationClass: LOCAL_EXACT
- Implementation entrypoint: `node tools/web/run-wbv2-module-task.mjs --task WBV2-P1152-001 --write`
## 目标
以一个共享 Blender Main reader、WASM build、Worker 路由和 Chromium receipt 批量验证 MOD_mesh_to_volume, MOD_particleinstance, MOD_surface, MOD_weightvgedit, MOD_weightvgmix, MOD_weightvgproximity 的真实 modifier/RNA 元数据。
## 输入与范围
- Blender modifier sources: `blender-5.2.0/source/blender/modifiers/intern/`
- RNA source: `blender-5.2.0/source/blender/makesrna/intern/rna_modifier.cc`
- Native reader: `blender-5.2.0/source/blender/web_engine/web_engine_blend_reader.cpp`
- Fixtures: `tests/files/web/generated/M16-GAP-00081-modifier-MESH_TO_VOLUME.blend`, `tests/files/web/generated/M16-GAP-00087-modifier-PARTICLE_INSTANCE.blend`, `tests/files/web/generated/M16-GAP-00098-modifier-SURFACE.blend`, `tests/files/web/generated/M16-GAP-00103-modifier-VERTEX_WEIGHT_EDIT.blend`, `tests/files/web/generated/M16-GAP-00104-modifier-VERTEX_WEIGHT_MIX.blend`, `tests/files/web/generated/M16-GAP-00105-modifier-VERTEX_WEIGHT_PROXIMITY.blend`
- Chromium test: `web/tests/e2e/wbv2-modifier-reader-multi-fixture-production.spec.ts`
- Selected modifier units: `modifier-source:MOD_mesh_to_volume`, `modifier-source:MOD_particleinstance`, `modifier-source:MOD_surface`, `modifier-source:MOD_weightvgedit`, `modifier-source:MOD_weightvgmix`, `modifier-source:MOD_weightvgproximity`
- Selected RNA units: `rna-struct:MeshToVolumeModifier`, `rna-struct:ParticleInstanceModifier`, `rna-struct:SurfaceModifier`, `rna-struct:VertexWeightEditModifier`, `rna-struct:VertexWeightMixModifier`, `rna-struct:VertexWeightProximityModifier`
## 验收
- one shared Main/WASM/Worker/Chromium chain observes every selected type
- malformed input is rejected without Main mutation
- save/reopen and deterministic second read are exact
- only Chromium is used; JS simulation and per-API duplicate workers are forbidden
- each selected source unit receives an explicit hash-bound coverage binding
- `node tools/web/check-task-context.mjs --task WBV2-P1152-001 --write`
## 失败边界
- any missing source, unsupported type, hash drift, malformed data or non-exact recovery keeps the batch `in_progress`/`blocked`
- partial batch success never claims the omitted family; historical inventory remains read-only
## 交付与回滚
- Receipt: `tests/golden/WBV2-P1152-001/module-receipt.json`
- Aggregate production evidence: `tests/golden/WBV2-P1152-001/modifier-reader-batch-production.json`
- Manifest: `tests/golden/WBV2-P1152-001/manifest.json`
- Status: `docs/status/WBV2-P1152-001.md`
- Rollback: restore WBV2-P1152-000 as queue parent without rewriting prior evidence.