Advance deduplicated lighting capability coverage
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-08-28 12:19:18 +08:00
parent dc55bacce6
commit 4a5c70910b
35 changed files with 4601 additions and 12 deletions

View File

@@ -13,9 +13,9 @@
| 字段 | 值 |
| --- | --- |
| 里程碑 | WBV2 capability workflow |
| 当前任务 | `WBV2-P14-003` |
| parent manifest | `tests/golden/WBV2-P14-002/manifest.json` |
| 任务卡 | [`tasks/WBV2-P14-003.md`](tasks/WBV2-P14-003.md) |
| 当前任务 | `WBV2-P15-003` |
| parent manifest | `tests/golden/WBV2-P15-002/manifest.json` |
| 任务卡 | [`tasks/WBV2-P15-003.md`](tasks/WBV2-P15-003.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,9 @@
# WBV2-P15-000 status
- task: `WBV2-P15-000`; parent: `WBV2-P14-003`; status: `done`
- candidate: `RENDER.LIGHTING_FIELDS`; source API and Chromium test are present
- inventory carried forward: `6900` total, `6618` pending
- duplicate validation: `forbidden`; representative slice only
- nextTask: `WBV2-P15-001`
P15 is an authorized continuation that reuses the P14 coverage ledger and validates one source-backed Camera/Light/World behavior batch in Chromium.

View File

@@ -0,0 +1,11 @@
# WBV2-P15-001 status
- task: `WBV2-P15-001`; parent: `WBV2-P15-000`; status: `done`
- selected capability: `RENDER.LIGHTING_FIELDS`; operations: Camera, Light, World fields
- matched inventory entries: `197`; inventory remains `6900` total, `6618` pending
- behavior hash: `09abd86000c428dea647249b5e1322ae12650a438a39ed0db17d6664bb8ffa53`
- dedupe key binds source API/test hashes; repeated Blender/Chromium runs: `0`
- representative slice: `true`; full-family parity: `false`
- nextTask: `WBV2-P15-002`
The candidate is selected from the existing parity map and source/test implementations. Only one unique Camera/Light/World behavior batch will be executed; matching inventory entries remain coverage references, not completion claims.

View File

@@ -0,0 +1,11 @@
# WBV2-P15-002 status
- task: `WBV2-P15-002`; parent: `WBV2-P15-001`; status: `done`
- Chromium/WASM Main operations: Camera, Light, World fields
- revisions: `1 -> 10` sequential across edit/undo/redo actions
- malformed camera range: `RENDER_PROPERTY_INVALID`; Main revision preserved
- save/reopen: `EXACT`; deterministic second run: `true`
- representative slice: `true`; full-family parity: `false`; inventory pending: `6618`
- nextTask: `WBV2-P15-003`
The compiled WebEngine WASM Main now has a hash-bound Chromium receipt for bounded Camera/Light/World field edits. The receipt covers only the selected behavior hash and does not close the remaining lighting/render inventory.

View File

@@ -0,0 +1,10 @@
# WBV2-P15-003 status
- task: `WBV2-P15-003`; parent: `WBV2-P15-002`; status: `done`
- new engine-bound claim: `RENDER.LIGHTING_FIELDS`; representative entries: `197`; full-family parity: `false`
- total engine-bound feature claims: `9`; inventory: `6900` total, `6618` pending, claimed complete: `0`
- unique behavior runs: `2`; repeated Blender/Chromium validation: `0`; duplicate validation avoided: `true`
- provenance epoch: `2`; release: `AUTHORIZED_REBASELINE_ONLY`; fullHistoricalReproduction: `false`
- nextTask: `NONE`
The Lighting/Camera/World slice is now a hash-bound Chromium/WASM Main feature claim. The 197 matched inventory entries are coverage references only; remaining lighting/render behaviors require unique behavior evidence.

View File

@@ -0,0 +1,24 @@
# WBV2-P15-000: lighting capability continuation root
- task: WBV2-P15-000
- parent: WBV2-P14-003
- status: done
- gap: workflow:authorize_lighting_capability_continuation
- ownerFamily: PROGRAM
- targetImplementationClass: LOCAL_BOUNDED
## 目标
Authorize a source-backed Lighting/Camera/World continuation. P15 reuses the 6900-entry coverage ledger and runs only one representative Chromium production slice for fields already exposed by the compiled WebEngine API.
## 验收
- `node tools/web/generate-wbv2-lights-root.mjs`
- `node tools/web/check-execution-control-plane.mjs`
- `node tools/web/check-v2-task-index.mjs`
## 交付与回滚
- Reports: `tests/golden/WBV2-P15-000/`
- Manifest: `tests/golden/WBV2-P15-000/manifest.json`
- Rollback: restore P14-003 as queue parent without rewriting P14 evidence.

View File

@@ -0,0 +1,34 @@
# WBV2-P15-001: select_lighting_capability_batch
- task: WBV2-P15-001
- parent: WBV2-P15-000
- status: in_progress
- gap: capability:RENDER.LIGHTING_FIELDS
- ownerFamily: PARITY
- targetImplementationClass: LOCAL_BOUNDED
## 目标
Select one deterministic Camera, Light, and World field behavior batch from the existing source API and Chromium test.
## 输入与范围
- Focused source: `blender-5.2.0/source/blender/web_engine/web_engine_api.cpp`
- Existing production test: `web/tests/e2e/lighting-field-roundtrip.spec.ts`
- Inventory: `tests/golden/WBV2-P0-002/parity-map.json`
- Production entrypoint: `node tools/web/generate-wbv2-lighting-selection.mjs --write`
## 验收
- source API and Chromium test hashes are bound
- one behavior hash covers camera/light/world fields
- representative slice is not promoted to full-family parity
- malformed, hash-drift, unsupported, or false-completion input keeps in_progress
- `node tools/web/check-task-context.mjs --task WBV2-P15-001 --write`
## 交付与回滚
- Reports: `tests/golden/WBV2-P15-001/`
- Status: `docs/status/WBV2-P15-001.md`
- Manifest: `tests/golden/WBV2-P15-001/manifest.json`
- Rollback: restore P15-000 as queue parent.

View File

@@ -0,0 +1,34 @@
# WBV2-P15-002: lighting_fields_engine_receipt
- task: WBV2-P15-002
- parent: WBV2-P15-001
- status: in_progress
- gap: capability:RENDER.LIGHTING_FIELDS
- ownerFamily: RENDER
- targetImplementationClass: LOCAL_EXACT
## 目标
Bind Camera, Light, and World edits, undo/redo, and exact save/reopen to the compiled WASM Main in Chromium.
## 输入与范围
- Focused source: `tests/golden/WBV2-P15-001/lighting-selection-report.json`
- Production test: `web/tests/e2e/wbv2-lighting-fields-production.spec.ts`
- Production entrypoint: `npm --prefix web run test:e2e -- --workers=1 tests/e2e/wbv2-lighting-fields-production.spec.ts`
## 验收
- camera/light/world fields match the bounded expected values
- undo/redo revisions are sequential
- save/reopen is exact
- malformed values fail closed without Main mutation
- Chromium is the only browser
- `node tools/web/check-task-context.mjs --task WBV2-P15-002 --write`
## 交付与回滚
- Reports: `tests/golden/WBV2-P15-002/`
- Status: `docs/status/WBV2-P15-002.md`
- Manifest: `tests/golden/WBV2-P15-002/manifest.json`
- Rollback: restore P15-001 as queue parent.

View File

@@ -0,0 +1,34 @@
# WBV2-P15-003: close_lighting_capability_gate
- task: WBV2-P15-003
- parent: WBV2-P15-002
- status: in_progress
- gap: workflow:close_lighting_capability_gate
- ownerFamily: RELEASE
- targetImplementationClass: LOCAL_BOUNDED
## 目标
Close the Lighting capability gate while preserving partial-family and 6900-entry limitations.
## 输入与范围
- Focused receipt: `tests/golden/WBV2-P15-002/lighting-fields-receipt-report.json`
- Coverage matrix: `tests/golden/WBV2-P14-002/capability-evidence-matrix.json`
- Production entrypoint: `node tools/web/generate-wbv2-lighting-gate.mjs --write`
## 验收
- only the tested lighting slice is claimed
- pending inventory remains 6618
- duplicate validation remains zero
- historical reproduction remains false
- malformed, hash-drift, or unsupported evidence keeps the gate in_progress
- `node tools/web/check-task-context.mjs --task WBV2-P15-003 --write`
## 交付与回滚
- Reports: `tests/golden/WBV2-P15-003/`
- Status: `docs/status/WBV2-P15-003.md`
- Manifest: `tests/golden/WBV2-P15-003/manifest.json`
- Rollback: restore P15-002 as queue parent.