feat(web): add incremental modifier reader batch
This commit is contained in:
@@ -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` |
|
||||
|
||||
7
docs/status/WBV2-P1152-000.md
Normal file
7
docs/status/WBV2-P1152-000.md
Normal 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`
|
||||
9
docs/status/WBV2-P1152-001.md
Normal file
9
docs/status/WBV2-P1152-001.md
Normal 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`
|
||||
31
docs/tasks/WBV2-P1152-000.md
Normal file
31
docs/tasks/WBV2-P1152-000.md
Normal 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.
|
||||
45
docs/tasks/WBV2-P1152-001.md
Normal file
45
docs/tasks/WBV2-P1152-001.md
Normal 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.
|
||||
Reference in New Issue
Block a user