923 lines
48 KiB
JSON
923 lines
48 KiB
JSON
{
|
||
"schemaVersion": 4,
|
||
"source": "docs/status/parity-ledger.json",
|
||
"sourceSha256": "1e16518a25c6b6bed4ab7f605ea1ad5babe529f2842c858b20ae6daae30bd478",
|
||
"generatedAt": "2026-08-15T02:29:05.407Z",
|
||
"families": [
|
||
{
|
||
"id": "N-015",
|
||
"name": "Non-mesh geometry",
|
||
"parityStatus": "BLOCKED",
|
||
"releaseClass": "LOCAL_BOUNDED",
|
||
"releaseStatus": "READY",
|
||
"v1RequiredSlices": [
|
||
"C3-roundtrip",
|
||
"D2-nanovdb-bounded-webgpu-integration",
|
||
"E2-vdb-network-worker-quota-tamper-rollback-faults"
|
||
],
|
||
"v1ExcludedSlices": [
|
||
"C2-new-external-font-import",
|
||
"D2-nanovdb-production-viewport-automatic-page-fault-depth-composition",
|
||
"C3-volume-combined-asset-viewport-reopen",
|
||
"E1-volume-glb-usd-loss-desktop-chromium-golden",
|
||
"E2-vdb-large-stream-device-loss-oom"
|
||
],
|
||
"roadmapStatus": "in_progress",
|
||
"completedSlices": [
|
||
"A1",
|
||
"A2-malformed-binary-partial",
|
||
"A2-integer-overflow-fixtures",
|
||
"A2-multichunk-attribute-completeness",
|
||
"B2",
|
||
"B3-metadata",
|
||
"B3-vdb-conversion-request-boundary",
|
||
"B3-nanovdb-manifest-range-hash-protocol",
|
||
"B3-nanovdb-serial-range-streamer",
|
||
"B3-vdb-stage-capability-gates",
|
||
"B3-vdb-real-resource-license-hash-catalog",
|
||
"B3-desktop-openvdb13-nanovdb32-converter",
|
||
"B3-native-conversion-determinism-malformed-input",
|
||
"B3-vdb-server-job-isolation-cancel-timeout",
|
||
"B3-vdb-desktop-server-hash-equality",
|
||
"B3-nanovdb-http-retry-if-range-body-resume",
|
||
"C1-topology-partial",
|
||
"C1-handle-points-partial",
|
||
"C1-handle-preview-raycast-partial",
|
||
"C1-handle-identity-gizmo-main-roundtrip",
|
||
"C1-multi-handle-selection-highlight-bounded-commit",
|
||
"C1-gizmo-revision-delta-transaction-boundary",
|
||
"C1-continuous-handle-gizmo-preview-single-commit",
|
||
"C1-handle-local-origin-orientation-gizmo",
|
||
"C1-rename-partial",
|
||
"C1-create-delete-poly-partial",
|
||
"C1-poly-bezier-nurbs-1d-conversion",
|
||
"C1-multispline-create-delete-bulk-handle-cyclic-transaction",
|
||
"C1-surface-2d-topology-transaction",
|
||
"C2-font-geometry-partial",
|
||
"C2-font-layout-partial",
|
||
"C2-font-character-style-textbox-roundtrip",
|
||
"C2-existing-packed-vfont-style-links",
|
||
"C2-builtin-font-evaluation-exact",
|
||
"C3-roundtrip",
|
||
"C3-volume-main-properties-save-reopen",
|
||
"C3-nanovdb-opfs-binding-worker-reopen",
|
||
"D1-raycast-partial",
|
||
"D1-offscreen-vert-edge-partial",
|
||
"D1-selection-history-partial",
|
||
"D1-cross-object-history-range-patch",
|
||
"D1-handle-identity-axis-gizmo",
|
||
"D2-partial",
|
||
"D2-nanovdb-float32-cpu-wgsl-sampling",
|
||
"D2-nanovdb-bounded-webgpu-integration",
|
||
"D2-webgpu-device-loss-session-recovery",
|
||
"D2-nanovdb-grid-material-mapping",
|
||
"D2-nanovdb-explicit-resident-page-lru-recovery",
|
||
"E1-partial",
|
||
"E1-desktop-geometry-golden",
|
||
"E1-true-2d-surface-desktop-golden",
|
||
"E1-glb-evaluated-nonmesh-roundtrip-partial",
|
||
"E1-glb-curve-line-surface-mesh-evaluated",
|
||
"E1-usda-four-object-desktop-roundtrip",
|
||
"E1-pointcloud-curves-hair-glb-usd-loss-fixture",
|
||
"E2-1M-chromium",
|
||
"E2-chromium-worker-recovery",
|
||
"E2-opfs-quota-chromium",
|
||
"E2-vdb-network-worker-quota-tamper-rollback-faults"
|
||
],
|
||
"blockedSlices": [
|
||
"C2-new-external-font-import",
|
||
"D2-nanovdb-production-viewport-automatic-page-fault-depth-composition",
|
||
"C3-volume-combined-asset-viewport-reopen",
|
||
"E1-volume-glb-usd-loss-desktop-chromium-golden",
|
||
"E2-vdb-large-stream-device-loss-oom"
|
||
],
|
||
"excludedSlices": [],
|
||
"acceptance": [
|
||
"web:test:nonmesh-roundtrip",
|
||
"web:test:nonmesh-desktop-golden",
|
||
"web:test:nonmesh-glb-blender-roundtrip",
|
||
"web:test:nonmesh-usd-serialization",
|
||
"web:test:nonmesh-usd-blender-roundtrip",
|
||
"web:test:nonmesh-binary",
|
||
"web:test:selection-history",
|
||
"web:test:nonmesh-interaction",
|
||
"web:test:vdb",
|
||
"web:test:vdb-availability",
|
||
"web:test:vdb-native",
|
||
"web:test:vdb-server",
|
||
"web:test:vdb-opfs",
|
||
"web:test:vdb-webgpu",
|
||
"web:test:vdb-viewport",
|
||
"web:test:vdb-faults",
|
||
"web:e2e:N-015|non-mesh",
|
||
"web:e2e:real OPFS quota"
|
||
],
|
||
"dependencies": []
|
||
},
|
||
{
|
||
"id": "N-016",
|
||
"name": "Grease Pencil",
|
||
"parityStatus": "BLOCKED",
|
||
"releaseClass": "LOCAL_BOUNDED",
|
||
"releaseStatus": "READY",
|
||
"v1RequiredSlices": [
|
||
"D-worker-restart-save-reopen"
|
||
],
|
||
"v1ExcludedSlices": [
|
||
"C-material-modifier-full-semantics",
|
||
"D-full-2d-canvas-marquee-dope-editor",
|
||
"E-desktop-browser-golden-export-opfs"
|
||
],
|
||
"roadmapStatus": "planned",
|
||
"completedSlices": [
|
||
"A-schema-budget",
|
||
"A-main-reader",
|
||
"B-layer-frame-stroke-transaction-partial",
|
||
"C-point-radius-opacity-color-cyclic-material-partial",
|
||
"C-bounded-previous-next-onion-preview",
|
||
"D-current-frame-stroke-preview-main-offscreen-chromium",
|
||
"D-editor-layer-frame-selection-context-partial",
|
||
"D-editor-main-layer-frame-panel-partial",
|
||
"D-single-point-revision-bound-main-translation",
|
||
"D-viewport-point-raycast-multipoint-gizmo-transaction",
|
||
"D-continuous-point-preview-single-main-commit",
|
||
"D-bounded-drawing-frame-dope-navigation",
|
||
"D-worker-restart-save-reopen"
|
||
],
|
||
"blockedSlices": [
|
||
"C-material-modifier-full-semantics",
|
||
"D-full-2d-canvas-marquee-dope-editor",
|
||
"E-desktop-browser-golden-export-opfs"
|
||
],
|
||
"acceptance": [
|
||
"web:test:grease-pencil",
|
||
"web:test:grease-pencil-editor",
|
||
"web:e2e:N-016 Grease Pencil"
|
||
],
|
||
"dependencies": [
|
||
"N-015"
|
||
]
|
||
},
|
||
{
|
||
"id": "N-017",
|
||
"name": "Paint and weights",
|
||
"parityStatus": "BLOCKED",
|
||
"releaseClass": "LOCAL_BOUNDED",
|
||
"releaseStatus": "READY",
|
||
"v1RequiredSlices": [
|
||
"B-blender52-vertex-group-summary-save-reopen",
|
||
"C-udim-memory-range-patch-hash-boundary"
|
||
],
|
||
"v1ExcludedSlices": [
|
||
"A-real-pbvh-depth-occlusion-desktop-falloff",
|
||
"B-clean-mirror-desktop-brush",
|
||
"C-blender-packed-udim-dirty-atomic-save",
|
||
"D-E-face-mask-gpu-quota-desktop-golden"
|
||
],
|
||
"roadmapStatus": "planned",
|
||
"completedSlices": [
|
||
"A-stroke-hit-weight-schema-budget-partial",
|
||
"A-three-raycast-source-face-barycentric-uv",
|
||
"A-bounded-cpu-candidate-falloff",
|
||
"A-uniform-grid-candidate-depth-visibility-gate",
|
||
"A-selection-mask-identity-gated-brush-patch",
|
||
"B-main-vertex-color-partial",
|
||
"B-main-vertex-weight-normalize-partial",
|
||
"B-selected-vertex-color-weight-ui-transaction-partial",
|
||
"B-selection-masked-color-weight-main-transaction",
|
||
"B-blender52-vertex-group-summary-save-reopen",
|
||
"C-udim-memory-range-patch-hash-boundary"
|
||
],
|
||
"blockedSlices": [
|
||
"A-real-pbvh-depth-occlusion-desktop-falloff",
|
||
"B-clean-mirror-desktop-brush",
|
||
"C-blender-packed-udim-dirty-atomic-save",
|
||
"D-E-face-mask-gpu-quota-desktop-golden"
|
||
],
|
||
"acceptance": [
|
||
"web:test:paint-roundtrip",
|
||
"web:e2e:N-017 paint"
|
||
],
|
||
"dependencies": [
|
||
"N-016"
|
||
]
|
||
},
|
||
{
|
||
"id": "N-018",
|
||
"name": "Physics and simulation",
|
||
"parityStatus": "BLOCKED",
|
||
"releaseClass": "LOCAL_BOUNDED",
|
||
"releaseStatus": "READY",
|
||
"v1RequiredSlices": [
|
||
"C-browser-transform-storage-restart-playback"
|
||
],
|
||
"v1ExcludedSlices": [
|
||
"A-B-full-family-settings-effectors-cache-binding",
|
||
"C-desktop-bake-decoder-playback-100-frame-golden",
|
||
"D-wasm-solvers",
|
||
"E-bake-server-recovery-progress-ui"
|
||
],
|
||
"roadmapStatus": "planned",
|
||
"completedSlices": [
|
||
"A-family-capability-inventory",
|
||
"A-authoritative-main-physics-reader-partial",
|
||
"B-settings-dependency-cache-manifest-partial",
|
||
"B-cloth-softbody-collision-settings-sha256-save-reopen",
|
||
"C-exact-frame-selection-gate",
|
||
"C-content-addressed-frame-range-read-hash-gate",
|
||
"C-browser-transform-frame-binary-decoder",
|
||
"C-browser-transform-sceneir-preview",
|
||
"C-browser-transform-cancellable-playback-session",
|
||
"C-browser-transform-storage-restart-playback"
|
||
],
|
||
"blockedSlices": [
|
||
"A-B-full-family-settings-effectors-cache-binding",
|
||
"C-desktop-bake-decoder-playback-100-frame-golden",
|
||
"D-wasm-solvers",
|
||
"E-bake-server-recovery-progress-ui"
|
||
],
|
||
"acceptance": [
|
||
"web:e2e:N-018 physics",
|
||
"web:test:simulation-cache",
|
||
"web:test:physics-main-reader"
|
||
],
|
||
"dependencies": [
|
||
"N-017"
|
||
]
|
||
},
|
||
{
|
||
"id": "N-019",
|
||
"name": "Lighting and render",
|
||
"parityStatus": "BLOCKED",
|
||
"releaseClass": "LOCAL_BOUNDED",
|
||
"releaseStatus": "READY",
|
||
"v1RequiredSlices": [
|
||
"B-world-scene-render-delta-roundtrip",
|
||
"B-C-nanovdb-float32-wgsl-bounded-ray-integration"
|
||
],
|
||
"v1ExcludedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E",
|
||
"B-C-nanovdb-production-viewport-paging-advanced-material",
|
||
"E-volume-desktop-chromium-pixel-golden"
|
||
],
|
||
"roadmapStatus": "planned",
|
||
"completedSlices": [
|
||
"A-camera-light-world-scene-reader-partial",
|
||
"A-main-camera-dof-properties-partial",
|
||
"A-main-light-world-properties-partial",
|
||
"A-white-balance-integrity-gate",
|
||
"B-three-exposure-shadow-mapping-partial",
|
||
"B-bounded-kelvin-linear-light-color",
|
||
"B-world-scene-render-delta-roundtrip",
|
||
"B-volume-material-manifest-boundary",
|
||
"B-C-nanovdb-float32-wgsl-bounded-ray-integration"
|
||
],
|
||
"blockedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E",
|
||
"B-C-nanovdb-production-viewport-paging-advanced-material",
|
||
"E-volume-desktop-chromium-pixel-golden"
|
||
],
|
||
"acceptance": [
|
||
"web:test:lighting-roundtrip",
|
||
"web:e2e:N-019 Scene exposure"
|
||
],
|
||
"dependencies": [
|
||
"N-018"
|
||
]
|
||
},
|
||
{
|
||
"id": "N-020",
|
||
"name": "Compositor",
|
||
"parityStatus": "BLOCKED",
|
||
"releaseClass": "LOCAL_BOUNDED",
|
||
"releaseStatus": "READY",
|
||
"v1RequiredSlices": [
|
||
"B-real-main-exposure-invert-cpu-chain",
|
||
"D-unsupported-node-preservation-gate"
|
||
],
|
||
"v1ExcludedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E"
|
||
],
|
||
"roadmapStatus": "planned",
|
||
"completedSlices": [
|
||
"A-graph-resource-cycle-schema",
|
||
"A-main-graph-structure-reader-partial",
|
||
"A-main-exposure-default-invert-parameter-reader",
|
||
"B-bounded-cpu-executor-partial",
|
||
"B-real-main-exposure-invert-cpu-chain",
|
||
"C-image-operation-budget-cancel-partial",
|
||
"C-content-addressed-frame-lru-cache",
|
||
"D-unsupported-node-preservation-gate"
|
||
],
|
||
"blockedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E"
|
||
],
|
||
"acceptance": [
|
||
"web:test:compositor-main-reader",
|
||
"web:e2e:N-020 CPU compositor"
|
||
],
|
||
"dependencies": [
|
||
"N-019"
|
||
]
|
||
},
|
||
{
|
||
"id": "N-021",
|
||
"name": "Sequencer and audio",
|
||
"parityStatus": "BLOCKED",
|
||
"releaseClass": "LOCAL_BOUNDED",
|
||
"releaseStatus": "READY",
|
||
"v1RequiredSlices": [
|
||
"B-real-main-cross-still-frame-resolution",
|
||
"C-runtime-codec-probe-gate"
|
||
],
|
||
"v1ExcludedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E"
|
||
],
|
||
"roadmapStatus": "planned",
|
||
"completedSlices": [
|
||
"A-strip-resource-schema",
|
||
"A-main-strip-timeline-reader-partial",
|
||
"B-deterministic-move-trim-split-partial",
|
||
"B-source-frame-seek",
|
||
"B-active-frame-dependency-resolution",
|
||
"B-cross-transition-progress-input-resolution",
|
||
"B-real-main-cross-still-frame-resolution",
|
||
"C-runtime-codec-probe-gate"
|
||
],
|
||
"blockedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E"
|
||
],
|
||
"acceptance": [
|
||
"web:test:sequencer-main-reader",
|
||
"web:e2e:N-021 sequencer"
|
||
],
|
||
"dependencies": [
|
||
"N-020"
|
||
]
|
||
},
|
||
{
|
||
"id": "N-022",
|
||
"name": "Tracking and masks",
|
||
"parityStatus": "BLOCKED",
|
||
"releaseClass": "LOCAL_BOUNDED",
|
||
"releaseStatus": "READY",
|
||
"v1RequiredSlices": [
|
||
"C-browser-probe-solve-gate",
|
||
"D-real-main-locked-editable-raycast-marquee"
|
||
],
|
||
"v1ExcludedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E"
|
||
],
|
||
"roadmapStatus": "planned",
|
||
"completedSlices": [
|
||
"A-clip-track-plane-mask-schema",
|
||
"A-main-mask-layer-spline-point-reader",
|
||
"B-revision-marker-mask-edit-partial",
|
||
"B-source-hash-binding-validation",
|
||
"C-browser-probe-solve-gate",
|
||
"D-mask-bezier-stable-identity-raycast",
|
||
"D-mask-stable-identity-marquee-selection",
|
||
"D-real-main-locked-editable-raycast-marquee"
|
||
],
|
||
"blockedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E"
|
||
],
|
||
"acceptance": [
|
||
"web:test:mask-main-reader",
|
||
"web:e2e:N-022 tracking"
|
||
],
|
||
"dependencies": [
|
||
"N-021"
|
||
]
|
||
},
|
||
{
|
||
"id": "N-023",
|
||
"name": "Assets, libraries and IO",
|
||
"parityStatus": "BLOCKED",
|
||
"releaseClass": "LOCAL_BOUNDED",
|
||
"releaseStatus": "READY",
|
||
"v1RequiredSlices": [
|
||
"C-glb-export-usd-analysis-gates",
|
||
"E-archive-path-conflict-compressed-budget-range-plan",
|
||
"E-nanovdb-opfs-tamper-rollback-quota-recovery"
|
||
],
|
||
"v1ExcludedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E",
|
||
"E-nanovdb-large-bundle-performance"
|
||
],
|
||
"roadmapStatus": "planned",
|
||
"completedSlices": [
|
||
"A-catalog-asset-license-source-schema",
|
||
"A-content-addressed-opfs-capability",
|
||
"A-preview-content-signature-dimension-verification",
|
||
"A-vdb-external-resource-license-sha-catalog",
|
||
"B-library-dependency-order-partial",
|
||
"B-main-library-inventory-reader",
|
||
"C-glb-export-usd-analysis-gates",
|
||
"E-archive-path-ratio-budget",
|
||
"E-archive-path-conflict-compressed-budget-range-plan",
|
||
"E-nanovdb-http206-range-hash-streaming-boundary",
|
||
"E-nanovdb-http-retry-if-range-body-resume",
|
||
"E-nanovdb-opfs-atomic-binding-worker-reopen-bundle-lru",
|
||
"E-nanovdb-opfs-tamper-rollback-quota-recovery",
|
||
"E-nanovdb-gpu-resident-page-lru"
|
||
],
|
||
"blockedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E",
|
||
"E-nanovdb-large-bundle-performance"
|
||
],
|
||
"acceptance": [
|
||
"web:test:library-main-reader",
|
||
"web:test:vdb-faults",
|
||
"web:e2e:N-023 asset"
|
||
],
|
||
"dependencies": [
|
||
"N-022"
|
||
]
|
||
},
|
||
{
|
||
"id": "N-024",
|
||
"name": "Editors and workflow",
|
||
"parityStatus": "BLOCKED",
|
||
"releaseClass": "LOCAL_BOUNDED",
|
||
"releaseStatus": "READY",
|
||
"v1RequiredSlices": [
|
||
"C-executable-context-filtered-operator-search",
|
||
"D-context-scoped-keymap-resolution"
|
||
],
|
||
"v1ExcludedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E"
|
||
],
|
||
"roadmapStatus": "planned",
|
||
"completedSlices": [
|
||
"A-unified-area-region-context",
|
||
"B-read-only-editor-manifest-partial",
|
||
"B-main-workspace-area-region-reader",
|
||
"C-selection-sync-revision-partial",
|
||
"C-executable-context-filtered-operator-search",
|
||
"D-keymap-layout-budget-gates",
|
||
"D-normalized-key-chord-conflict-resolution",
|
||
"D-context-scoped-keymap-resolution"
|
||
],
|
||
"blockedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E"
|
||
],
|
||
"acceptance": [
|
||
"web:test:editor-main-reader",
|
||
"web:e2e:N-024 editor"
|
||
],
|
||
"dependencies": [
|
||
"N-023"
|
||
]
|
||
},
|
||
{
|
||
"id": "N-025",
|
||
"name": "Scripting and platform",
|
||
"parityStatus": "BLOCKED",
|
||
"releaseClass": "EXCLUDED",
|
||
"releaseStatus": "READY",
|
||
"v1RequiredSlices": [
|
||
"A-default-deny-script-policy",
|
||
"B-approved-key-still-sandbox-blocked-audit",
|
||
"D-platform-capability-report"
|
||
],
|
||
"v1ExcludedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E"
|
||
],
|
||
"roadmapStatus": "planned",
|
||
"completedSlices": [
|
||
"A-default-deny-script-policy",
|
||
"A-main-text-source-inventory-reader",
|
||
"B-signed-manifest-permission-budget",
|
||
"B-approved-key-still-sandbox-blocked-audit",
|
||
"B-request-decision-audit-receipt",
|
||
"C-server-source-hash-job-gate",
|
||
"D-platform-capability-report",
|
||
"E-bounded-replay-resistant-audit-hash-chain"
|
||
],
|
||
"blockedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E"
|
||
],
|
||
"acceptance": [
|
||
"web:test:script-main-reader",
|
||
"web:test:scripting-isolation",
|
||
"web:e2e:N-025 script"
|
||
],
|
||
"dependencies": [
|
||
"N-024"
|
||
]
|
||
},
|
||
{
|
||
"id": "N-026",
|
||
"name": "Release gate",
|
||
"parityStatus": "BLOCKED",
|
||
"releaseClass": "LOCAL_EXACT",
|
||
"releaseStatus": "READY",
|
||
"v1RequiredSlices": [
|
||
"B-v1-p0-user-loop"
|
||
],
|
||
"v1ExcludedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E",
|
||
"C-vdb-server-webgpu-save-reopen-golden-evidence"
|
||
],
|
||
"roadmapStatus": "planned",
|
||
"completedSlices": [
|
||
"A-machine-readable-parity-manifest",
|
||
"A-dependency-status-validation",
|
||
"A-command-hash-evidence-binding",
|
||
"A-known-enabled-field-artifact-binding",
|
||
"B-chromium-runtime-evidence-gate",
|
||
"B-chromium-full-suite-evidence",
|
||
"B-v1-p0-user-loop",
|
||
"C-performance-fault-provenance-gate",
|
||
"C-performance-1M-malicious-input-partial",
|
||
"C-performance-4k-texture-upload-render",
|
||
"C-performance-8k-texture-upload-render",
|
||
"C-simulation-cache-opfs-playback-performance",
|
||
"C-network-interruption-main-save-reopen",
|
||
"C-main-thread-webgl-device-loss-recovery",
|
||
"C-zip-bomb-ratio-rejection",
|
||
"C-vdb-resource-converter-provenance-partial",
|
||
"C-vdb-network-opfs-quota-tamper-device-loss-partial",
|
||
"C-release-package-notices-partial",
|
||
"C-spdx-2.3-lockfile-sbom",
|
||
"D-deterministic-manifest-serialization",
|
||
"D-offline-reproducible-source-archive-partial"
|
||
],
|
||
"blockedSlices": [
|
||
"A",
|
||
"B",
|
||
"C",
|
||
"D",
|
||
"E",
|
||
"C-vdb-server-webgpu-save-reopen-golden-evidence"
|
||
],
|
||
"acceptance": [
|
||
"web:e2e:N-026 release",
|
||
"web:test:v1-user-loop",
|
||
"web:test:release-evidence",
|
||
"web:test:browser",
|
||
"web:test:release-package",
|
||
"web:release:offline",
|
||
"web:test:release-performance",
|
||
"web:test:malicious-blends"
|
||
],
|
||
"dependencies": [
|
||
"N-015",
|
||
"N-016",
|
||
"N-017",
|
||
"N-018",
|
||
"N-019",
|
||
"N-020",
|
||
"N-021",
|
||
"N-022",
|
||
"N-023",
|
||
"N-024",
|
||
"N-025"
|
||
]
|
||
}
|
||
],
|
||
"evidence": {
|
||
"browser": {
|
||
"chromium": true
|
||
},
|
||
"runtime": {
|
||
"offline": true,
|
||
"workerRestart": true,
|
||
"opfsRecovery": true
|
||
},
|
||
"performance": {
|
||
"geometry1M": true,
|
||
"geometry10M": true,
|
||
"texture4K": true,
|
||
"texture8K": true,
|
||
"longMedia": true,
|
||
"simulationCache": true
|
||
},
|
||
"faults": {
|
||
"oom": true,
|
||
"deviceLoss": true,
|
||
"networkInterrupt": true,
|
||
"malformedBlend": true,
|
||
"zipBomb": true
|
||
},
|
||
"provenance": {
|
||
"license": true,
|
||
"sbom": true,
|
||
"sourceOffer": true,
|
||
"deterministicPackage": true
|
||
},
|
||
"records": [
|
||
{
|
||
"id": "sbom",
|
||
"fields": [
|
||
"provenance.license",
|
||
"provenance.sbom"
|
||
],
|
||
"command": "npm --prefix web run release:sbom",
|
||
"exitCode": 0,
|
||
"durationMs": 372,
|
||
"output": "> blender-web-editor@0.1.0 release:sbom\n> node ../tools/web/generate-sbom.mjs\n\nsbom-ok packages=150 sha256=8b04215a993f62ba64e0adcb1ba36ac830191f8215bf8cf2681fdf7bbb63da30",
|
||
"artifactSha256": [
|
||
"8b04215a993f62ba64e0adcb1ba36ac830191f8215bf8cf2681fdf7bbb63da30",
|
||
"d5ec6e6ec9e1e0a50fe4455513a2938838609d3809224eaf26a2ebfac474f0ae",
|
||
"3c65ff96cc15c9072d2517555484ccfd0009a2814d96faadcc5bd7b2e3458503"
|
||
]
|
||
},
|
||
{
|
||
"id": "vdb-boundary",
|
||
"fields": [],
|
||
"command": "npm --prefix web run test:vdb-availability && npm --prefix web run test:vdb-native && npm --prefix web run test:vdb",
|
||
"exitCode": 0,
|
||
"durationMs": 5823,
|
||
"output": "> blender-web-editor@0.1.0 test:vdb-availability\n> node ../tools/web/check-vdb-availability.mjs\n\nvdb-availability-ok core=READY release=BLOCKED browser-openvdb=disabled desktop=ready server=ready opfs=ready webgpu-core=ready main-roundtrip=ready viewport=blocked advanced-material=blocked resources=9\n\n> blender-web-editor@0.1.0 test:vdb-native\n> node ../tools/web/check-vdb-native-pipeline.mjs\n\nvdb-native-pipeline-ok resources=14 converter=openvdb13-nanovdb32 conversion-deterministic=1 semantic-deterministic=1 official-deterministic=1 malformed=blocked browser-openvdb=off\n\n> blender-web-editor@0.1.0 test:vdb\n> playwright test --config playwright.config.ts -g \"VDB conversion boundary\"\n\n\nRunning 1 test using 1 worker\n\n ✓ 1 tests/e2e/smoke.spec.ts:1156:1 › validates the VDB conversion boundary and NanoVDB streaming contract (1.5s)\n\n 1 passed (3.3s)\n\n[WebServer] (node:1987436) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n[WebServer] (node:1987453) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)",
|
||
"artifactSha256": [
|
||
"885edcc156f87abdbddb0e70fde5566130acfc2770a0b6764d66d12c344973a6",
|
||
"7b2d576a613dff314f4b40177f10efa3c01e160b7aeb10bf95a69f6553f8f73b",
|
||
"a4c57345a4ea7302b9e2a7e0f8b0ed48f8f27c3ac70d41e02f6d92475a751298",
|
||
"179868fde557873b4c74c48e2f0d3199784efb6309ed00dd17310b494b975483",
|
||
"a13cf2747dacfbf4c0e6b50dd341db3adac32c7c3c9c07814349a90aa4436a3b"
|
||
]
|
||
},
|
||
{
|
||
"id": "chromium",
|
||
"fields": [
|
||
"browser.chromium",
|
||
"runtime.offline",
|
||
"runtime.workerRestart",
|
||
"runtime.opfsRecovery"
|
||
],
|
||
"command": "npm --prefix web run test:e2e -- --workers=1 && npm --prefix web run test:browser",
|
||
"exitCode": 0,
|
||
"durationMs": 219085,
|
||
"output": " (1.4s)\n ✓ 95 tests/e2e/smoke.spec.ts:2607:1 › reports GLB export blockers before any binary export (1.1s)\n ✓ 96 tests/e2e/smoke.spec.ts:2619:1 › blocks Shader graphs that cannot be mapped to glTF PBR (1.0s)\n ✓ 97 tests/e2e/smoke.spec.ts:2646:1 › maps bounded RGB and Value Shader constants to glTF PBR factors (1.0s)\n ✓ 98 tests/e2e/smoke.spec.ts:2679:1 › exports a local SceneIR mesh as a standards-shaped GLB (1.0s)\n ✓ 99 tests/e2e/smoke.spec.ts:2712:1 › keeps per-vertex UV and color attributes in GLB output (1.1s)\n ✓ 100 tests/e2e/smoke.spec.ts:2739:1 › evaluates modifier dependency order and blocks unevaluated or cyclic stacks (1.1s)\n ✓ 101 tests/e2e/smoke.spec.ts:2754:1 › embeds local textures and exports glTF skin and animation records (1.1s)\n ✓ 102 tests/e2e/smoke.spec.ts:2804:1 › reports lightweight budget violations without altering usage (1.1s)\n ✓ 103 tests/e2e/smoke.spec.ts:2822:1 › aggregates project, collection, object and LOD budgets without double counting LOD (1.0s)\n ✓ 104 tests/e2e/smoke.spec.ts:2848:1 › round-trips LOD geometry through the local binary mesh cache container (1.0s)\n ✓ 105 tests/e2e/smoke.spec.ts:2872:1 › blocks ImageIR paths outside the project asset sandbox (1.3s)\n ✓ 106 tests/e2e/smoke.spec.ts:2915:1 › extracts Blender packed image bytes through the local asset request API (1.4s)\n ✓ 107 tests/e2e/smoke.spec.ts:2960:1 › matches Blender Depsgraph deformation golden within the declared error budget (1.4s)\n ✓ 108 tests/e2e/smoke.spec.ts:2999:1 › evaluates the full Blender Depsgraph or reports its safe capability gate (1.4s)\n ✓ 109 tests/e2e/smoke.spec.ts:3059:1 › exports layered Action keyframes through SceneIR (1.3s)\n ✓ 110 tests/e2e/smoke.spec.ts:3100:1 › patches changed mesh buffer ranges without replacing stable topology (1.1s)\n ✓ 111 tests/e2e/smoke.spec.ts:3124:1 › renders through the capability-gated OffscreenCanvas worker (1.4s)\n ✓ 112 tests/e2e/smoke.spec.ts:3137:1 › coalesces linked mesh objects into a raycastable instance group (1.9s)\n ✓ 113 tests/e2e/smoke.spec.ts:3145:1 › returns structured gates for the undeclared capability protocols (1.2s)\n ✓ 114 tests/e2e/smoke.spec.ts:3204:1 › exposes PBR-007 to PBR-012 renderer security gates (1.1s)\n ✓ 115 tests/e2e/smoke.spec.ts:3238:1 › transfers packed raster assets into the PBR viewport with an explicit status (1.7s)\n ✓ 116 tests/e2e/smoke.spec.ts:3247:1 › uses the same packed texture payload in the OffscreenCanvas renderer (1.8s)\n ✓ 117 tests/e2e/texture-4k-performance.spec.ts:3:1 › decodes, uploads and renders a validated 4K texture in Chromium (1.8s)\n ✓ 118 tests/e2e/texture-8k-performance.spec.ts:3:1 › decodes, uploads and renders a validated 8K texture in Chromium (4.2s)\n\n 118 passed (3.5m)\n\n> blender-web-editor@0.1.0 test:browser\n> playwright test --config playwright.release.config.ts\n\n\nRunning 3 tests using 1 worker\n\n ✓ 1 [chromium] › tests/e2e/cross-browser.spec.ts:6:1 › boots the offline engine, renders SceneIR and performs a Main edit (2.8s)\n ✓ 2 [chromium] › tests/e2e/cross-browser.spec.ts:32:1 › keeps content-addressed asset recovery available in Chromium (1.0s)\n ✓ 3 [chromium] › tests/e2e/cross-browser.spec.ts:51:1 › keeps the committed project after quota failure and Worker restart in Chromium (1.1s)\n\n 3 passed (6.6s)\n\n[WebServer] (node:1987737) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n[WebServer] (node:1987749) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n[WebServer] (node:1993877) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n[WebServer] (node:1993889) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)",
|
||
"artifactSha256": [
|
||
"5d87a9ea57bd7a1888f16a5f4306e1c6d3a1bdfcf832c9485fe8518aac528fd8"
|
||
]
|
||
},
|
||
{
|
||
"id": "geometry-1m",
|
||
"fields": [
|
||
"performance.geometry1M"
|
||
],
|
||
"command": "npm --prefix web run test:release-performance",
|
||
"exitCode": 0,
|
||
"durationMs": 93399,
|
||
"output": "> blender-web-editor@0.1.0 test:release-performance\n> node ../tools/web/check-release-performance.mjs\n\nrelease-performance-ok [{\"target\":100000,\"ratio\":0.9,\"outputTriangles\":89999,\"elapsedMs\":92308,\"heapBytes\":67108864},{\"target\":1000000,\"ratio\":1,\"outputTriangles\":1000000,\"elapsedMs\":540,\"heapBytes\":346554368}]\n\nHeap resize call from 67108864 to 80543744 took 0.22668800000974443 msecs. Success: true\nHeap resize call from 80543744 to 96665600 took 0.08722699999634642 msecs. Success: true\nHeap resize call from 96665600 to 115998720 took 0.04216300000553019 msecs. Success: true\nHeap resize call from 115998720 to 139198464 took 1.3969159999978729 msecs. Success: true\nHeap resize call from 139198464 to 167051264 took 1.700714999999036 msecs. Success: true\nHeap resize call from 167051264 to 200474624 took 1.4438179999997374 msecs. Success: true\nHeap resize call from 200474624 to 240582656 took 1.4305880000028992 msecs. Success: true\nHeap resize call from 240582656 to 288751616 took 1.5049569999973755 msecs. Success: true\nHeap resize call from 288751616 to 346554368 took 1.4472269999969285 msecs. Success: true",
|
||
"artifactSha256": [
|
||
"5d87a9ea57bd7a1888f16a5f4306e1c6d3a1bdfcf832c9485fe8518aac528fd8"
|
||
]
|
||
},
|
||
{
|
||
"id": "simulation-cache",
|
||
"fields": [
|
||
"performance.simulationCache"
|
||
],
|
||
"command": "npm --prefix web run test:simulation-cache-performance",
|
||
"exitCode": 0,
|
||
"durationMs": 7549,
|
||
"output": "> blender-web-editor@0.1.0 test:simulation-cache-performance\n> playwright test --config playwright.config.ts tests/e2e/simulation-cache-performance.spec.ts\n\n\nRunning 1 test using 1 worker\n\n ✓ 1 tests/e2e/simulation-cache-performance.spec.ts:3:1 › meets the Chromium OPFS Simulation cache playback performance gate (5.1s)\n\n 1 passed (6.7s)\n\n[WebServer] (node:1994548) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n[WebServer] (node:1994560) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)",
|
||
"artifactSha256": [
|
||
"c8074425a4556c8d08c2382dc9fd7be8aa6078d11a45640c4b19bf6ef45aa590",
|
||
"331d5c6a59dc80a12cc7105abbd60d25a64a113809eae9ad3d4061d81ec5f59f",
|
||
"535285f629b981e63e423f16df47d90afea4f5f17fca2bef36d0f6a8236697b2"
|
||
]
|
||
},
|
||
{
|
||
"id": "malformed-blend",
|
||
"fields": [
|
||
"faults.malformedBlend"
|
||
],
|
||
"command": "npm --prefix web run test:malicious-blends",
|
||
"exitCode": 0,
|
||
"durationMs": 541,
|
||
"output": "> blender-web-editor@0.1.0 test:malicious-blends\n> node ../tools/web/check-malicious-blends.mjs\n\nmalicious-blends-ok rejected=5",
|
||
"artifactSha256": [
|
||
"6fcc55bda74da8c95da96ba068b60339bf60ca44147ff8000fbb95d296db2a73"
|
||
]
|
||
},
|
||
{
|
||
"id": "network-interruption",
|
||
"fields": [
|
||
"faults.networkInterrupt"
|
||
],
|
||
"command": "npm --prefix web run test:network-interruption",
|
||
"exitCode": 0,
|
||
"durationMs": 5632,
|
||
"output": "> blender-web-editor@0.1.0 test:network-interruption\n> playwright test --config playwright.config.ts tests/e2e/network-interruption.spec.ts\n\n\nRunning 1 test using 1 worker\n\n ✓ 1 tests/e2e/network-interruption.spec.ts:6:1 › keeps Main edit and save-reopen available during a Chromium network interruption (3.1s)\n\n 1 passed (4.7s)\n\n[WebServer] (node:1994872) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n[WebServer] (node:1994884) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)",
|
||
"artifactSha256": [
|
||
"b1c03863f44026d44691042536ff1d1095617a35c8d767cc70372e5cbdc70db5",
|
||
"5d87a9ea57bd7a1888f16a5f4306e1c6d3a1bdfcf832c9485fe8518aac528fd8"
|
||
]
|
||
},
|
||
{
|
||
"id": "device-loss",
|
||
"fields": [
|
||
"faults.deviceLoss"
|
||
],
|
||
"command": "npm --prefix web run test:device-loss",
|
||
"exitCode": 0,
|
||
"durationMs": 5138,
|
||
"output": "> blender-web-editor@0.1.0 test:device-loss\n> playwright test --config playwright.config.ts tests/e2e/device-loss.spec.ts\n\n\nRunning 1 test using 1 worker\n\n ✓ 1 tests/e2e/device-loss.spec.ts:6:1 › recovers the main-thread Chromium viewport after a real WebGL context loss (2.6s)\n\n 1 passed (4.2s)\n\n[WebServer] (node:1995187) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n[WebServer] (node:1995199) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)",
|
||
"artifactSha256": [
|
||
"3b18c884f3baed68d4deb72feafbd7fe8b4af7935aaf02206ccc583ea9c527e2",
|
||
"76d781c0f8508ee68fde09b1bb0d3f7db963e3e2be7d10d60708af2a6a582c24"
|
||
]
|
||
},
|
||
{
|
||
"id": "texture-4k",
|
||
"fields": [
|
||
"performance.texture4K"
|
||
],
|
||
"command": "npm --prefix web run test:texture-4k-performance",
|
||
"exitCode": 0,
|
||
"durationMs": 4857,
|
||
"output": "> blender-web-editor@0.1.0 test:texture-4k-performance\n> playwright test --config playwright.config.ts tests/e2e/texture-4k-performance.spec.ts\n\n\nRunning 1 test using 1 worker\n\n ✓ 1 tests/e2e/texture-4k-performance.spec.ts:3:1 › decodes, uploads and renders a validated 4K texture in Chromium (2.3s)\n\n 1 passed (4.0s)\n\n[WebServer] (node:1995463) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n[WebServer] (node:1995475) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)",
|
||
"artifactSha256": [
|
||
"093588bcdf08f8b5a5aa8baceddbd7b499c43e5acda7f793b34ac54c79782490",
|
||
"75f2f33753a160f60acc56ad850bc149cef7fa2b54a42d5e75cf22402c9ac91d"
|
||
]
|
||
},
|
||
{
|
||
"id": "texture-8k",
|
||
"fields": [
|
||
"performance.texture8K"
|
||
],
|
||
"command": "npm --prefix web run test:texture-8k-performance",
|
||
"exitCode": 0,
|
||
"durationMs": 7112,
|
||
"output": "> blender-web-editor@0.1.0 test:texture-8k-performance\n> playwright test --config playwright.config.ts tests/e2e/texture-8k-performance.spec.ts\n\n\nRunning 1 test using 1 worker\n\n ✓ 1 tests/e2e/texture-8k-performance.spec.ts:3:1 › decodes, uploads and renders a validated 8K texture in Chromium (4.6s)\n\n 1 passed (6.2s)\n\n[WebServer] (node:1995736) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n[WebServer] (node:1995748) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)",
|
||
"artifactSha256": [
|
||
"093588bcdf08f8b5a5aa8baceddbd7b499c43e5acda7f793b34ac54c79782490",
|
||
"75f2f33753a160f60acc56ad850bc149cef7fa2b54a42d5e75cf22402c9ac91d"
|
||
]
|
||
},
|
||
{
|
||
"id": "zip-bomb",
|
||
"fields": [
|
||
"faults.zipBomb"
|
||
],
|
||
"command": "WEB_TEST_PORT=5323 npm --prefix web run test:asset-library",
|
||
"exitCode": 0,
|
||
"durationMs": 4198,
|
||
"output": "> blender-web-editor@0.1.0 test:asset-library\n> playwright test --config playwright.config.ts -g \"N-023 asset\"\n\n\nRunning 1 test using 1 worker\n\n ✓ 1 tests/e2e/smoke.spec.ts:969:1 › validates N-023 asset catalogs, library graphs, archive budgets and IO gates (1.5s)\n\n 1 passed (3.3s)\n\n[WebServer] (node:1996023) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n[WebServer] (node:1996035) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)",
|
||
"artifactSha256": [
|
||
"5c62539db3833a2113007dfbdfd12ca06704d86e0cf0e57ad97f7fbf6acda7f4"
|
||
]
|
||
},
|
||
{
|
||
"id": "release-package",
|
||
"fields": [],
|
||
"command": "npm --prefix web run test:release-package",
|
||
"exitCode": 0,
|
||
"durationMs": 5619,
|
||
"output": "> blender-web-editor@0.1.0 test:release-package\n> npm run build && npm run release:sbom && node ../tools/web/check-release-package.mjs\n\n\n> blender-web-editor@0.1.0 build\n> tsc -p tsconfig.json && vite build --config app/vite.config.ts\n\nvite v8.2.0 building client environment for production...\n\u001b[2K\rtransforming...✓ 51 modules transformed.\nrendering chunks...\ncomputing gzip size...\ndist/index.html 0.45 kB │ gzip: 0.29 kB\ndist/assets/storage.worker-hjSYzFAQ.js 36.77 kB\ndist/assets/web-engine.worker-CWkf48pG.js 245.76 kB\ndist/assets/viewport-render.worker-DXSzkSWB.js 592.78 kB\ndist/assets/web_engine-CvVHxFlQ.wasm 15,048.04 kB │ gzip: 3,562.32 kB\ndist/assets/index-QI0bg0OR.css 11.41 kB │ gzip: 3.18 kB\ndist/assets/index-Ce6I8dqP.js 951.79 kB │ gzip: 256.93 kB\n\n✓ built in 623ms\n\n> blender-web-editor@0.1.0 release:sbom\n> node ../tools/web/generate-sbom.mjs\n\nsbom-ok packages=150 sha256=8b04215a993f62ba64e0adcb1ba36ac830191f8215bf8cf2681fdf7bbb63da30\nrelease-package-ok files=10 bytes=32067024\n\n[plugin rolldown:vite-resolve] Module \"module\" has been externalized for browser compatibility, imported by \"/home/mes123456/workinf_Blender_Wasm/web/app/src/vendor/blender/web_engine.js\". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details.\n[plugin builtin:vite-reporter] \n(!) Some chunks are larger than 500 kB after minification. Consider:\n- Using dynamic import() to code-split the application\n- Use build.rolldownOptions.output.codeSplitting to improve chunking: https://rolldown.rs/reference/OutputOptions.codeSplitting\n- Adjust chunk size limit for this warning via build.chunkSizeWarningLimit.",
|
||
"artifactSha256": [
|
||
"8b04215a993f62ba64e0adcb1ba36ac830191f8215bf8cf2681fdf7bbb63da30",
|
||
"5d87a9ea57bd7a1888f16a5f4306e1c6d3a1bdfcf832c9485fe8518aac528fd8"
|
||
]
|
||
},
|
||
{
|
||
"id": "offline-reproducibility",
|
||
"fields": [
|
||
"provenance.sourceOffer",
|
||
"provenance.deterministicPackage"
|
||
],
|
||
"command": "npm --prefix web run release:offline",
|
||
"exitCode": 0,
|
||
"durationMs": 41303,
|
||
"output": "> blender-web-editor@0.1.0 release:offline\n> npm run build && node ../tools/web/check-offline-reproducibility.mjs\n\n\n> blender-web-editor@0.1.0 build\n> tsc -p tsconfig.json && vite build --config app/vite.config.ts\n\nvite v8.2.0 building client environment for production...\n\u001b[2K\rtransforming...✓ 51 modules transformed.\nrendering chunks...\ncomputing gzip size...\ndist/index.html 0.45 kB │ gzip: 0.29 kB\ndist/assets/storage.worker-hjSYzFAQ.js 36.77 kB\ndist/assets/web-engine.worker-CWkf48pG.js 245.76 kB\ndist/assets/viewport-render.worker-DXSzkSWB.js 592.78 kB\ndist/assets/web_engine-CvVHxFlQ.wasm 15,048.04 kB │ gzip: 3,562.32 kB\ndist/assets/index-QI0bg0OR.css 11.41 kB │ gzip: 3.18 kB\ndist/assets/index-Ce6I8dqP.js 951.79 kB │ gzip: 256.93 kB\n\n✓ built in 723ms\nsbom-ok packages=150 sha256=8b04215a993f62ba64e0adcb1ba36ac830191f8215bf8cf2681fdf7bbb63da30\noffline-release-ok binary=7575306 source=205785402 sha256=078f45513ab579800ab3688f7c5e35d31be0d9dc283db5cee1a68d77553bfb34\nsbom-ok packages=150 sha256=8b04215a993f62ba64e0adcb1ba36ac830191f8215bf8cf2681fdf7bbb63da30\noffline-release-ok binary=7575306 source=205785402 sha256=078f45513ab579800ab3688f7c5e35d31be0d9dc283db5cee1a68d77553bfb34\noffline-reproducibility-ok binary=078f45513ab579800ab3688f7c5e35d31be0d9dc283db5cee1a68d77553bfb34 source=ca97bef8cbe7943586e7af1df631775ce6ea041677c8bbb98da2fcc73baa9e1a\n\n[plugin rolldown:vite-resolve] Module \"module\" has been externalized for browser compatibility, imported by \"/home/mes123456/workinf_Blender_Wasm/web/app/src/vendor/blender/web_engine.js\". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details.\n[plugin builtin:vite-reporter] \n(!) Some chunks are larger than 500 kB after minification. Consider:\n- Using dynamic import() to code-split the application\n- Use build.rolldownOptions.output.codeSplitting to improve chunking: https://rolldown.rs/reference/OutputOptions.codeSplitting\n- Adjust chunk size limit for this warning via build.chunkSizeWarningLimit.",
|
||
"artifactSha256": [
|
||
"078f45513ab579800ab3688f7c5e35d31be0d9dc283db5cee1a68d77553bfb34",
|
||
"ca97bef8cbe7943586e7af1df631775ce6ea041677c8bbb98da2fcc73baa9e1a",
|
||
"39c7f9be555f2727519a733237de22e66a33d33ac1b0aecfacd2ae695de10b28"
|
||
]
|
||
},
|
||
{
|
||
"id": "v1-user-loop",
|
||
"fields": [],
|
||
"command": "npm --prefix web run test:v1-user-loop",
|
||
"exitCode": 0,
|
||
"durationMs": 5240,
|
||
"output": "> blender-web-editor@0.1.0 test:v1-user-loop\n> playwright test --config playwright.config.ts tests/e2e/v1-user-loop.spec.ts\n\n\nRunning 1 test using 1 worker\n\n ✓ 1 tests/e2e/v1-user-loop.spec.ts:6:1 › completes the V1 import-edit-save-restart-reopen-GLB loop (2.9s)\n\n 1 passed (4.4s)\n\n[WebServer] (node:2124514) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n[WebServer] (node:2124526) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)",
|
||
"artifactSha256": [
|
||
"3defbaa426195254fcaefaddabf9b128002a94def03aa255513c33eaf4ac0926",
|
||
"5d87a9ea57bd7a1888f16a5f4306e1c6d3a1bdfcf832c9485fe8518aac528fd8"
|
||
]
|
||
},
|
||
{
|
||
"id": "geometry-10m",
|
||
"fields": [
|
||
"performance.geometry10M"
|
||
],
|
||
"command": "npm --prefix web run test:geometry-10m-performance",
|
||
"exitCode": 0,
|
||
"durationMs": 5954,
|
||
"output": "> blender-web-editor@0.1.0 test:geometry-10m-performance\n> playwright test --config playwright.config.ts tests/e2e/geometry-10m-performance.spec.ts\n\n\nRunning 1 test using 1 worker\n\ngeometry-10m-performance {\"triangleCount\":10000000,\"chunkCount\":40,\"transferredBytes\":180492000,\"peakWorkingSetBytes\":4512300,\"manifestSha256\":\"224738e0c3aa28ae42167bf8974455a3d0f940f59f19eb51c5768f435c66b24f\",\"firstInteractiveMs\":1220,\"chunksAtFirstInteractive\":20,\"estimatedGpuBytes\":1124880,\"wasmAllocatedBytes\":0,\"cancelLatencyMs\":62,\"elapsedMs\":1886}\n ✓ 1 tests/e2e/geometry-10m-performance.spec.ts:3:1 › streams ten-million-triangle SceneIR ranges into a bounded interactive LOD (3.4s)\n\n 1 passed (5.0s)\n\n[WebServer] (node:2142662) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n[WebServer] (node:2142686) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n(node:2142761) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n(Use `node --trace-warnings ...` to show where the warning was created)",
|
||
"artifactSha256": [
|
||
"6f2708499d59a5e0e90e4581359d6131428c22da0da1543bb4aa0fc38e5e6b29",
|
||
"04743733e385f33efbb144b0c6cd831a21840dad9b6e0715e8a73791d8a95e33",
|
||
"969bda967852622b78bd5c0a56b0c0832bf1e46b19fa09b6b26316f2c367fdaf",
|
||
"101ba99e9f75617acb7105845c49f500f6f65a5b4ce5be20c4d8c1e0a9d458e2"
|
||
]
|
||
},
|
||
{
|
||
"id": "long-media",
|
||
"fields": [
|
||
"performance.longMedia"
|
||
],
|
||
"command": "npm --prefix web run test:long-media-performance",
|
||
"exitCode": 0,
|
||
"durationMs": 5319,
|
||
"output": "> blender-web-editor@0.1.0 test:long-media-performance\n> playwright test --config playwright.config.ts tests/e2e/long-media-performance.spec.ts\n\n\nRunning 1 test using 1 worker\n\nlong-media-performance {\"frameCount\":1000000,\"stripCount\":10001,\"referenceCount\":11914,\"indexBuildMs\":227,\"coldSeekMs\":1,\"hotSeekMs\":0,\"randomSeekMs\":14,\"cacheBytes\":16305,\"evictions\":71,\"manifestSha256\":\"d2e7e3c5ed9ae4fda6fe358cebb474f5774f1d2037dff3df9b6dfde9e0bebd2d\",\"elapsedMs\":1010}\n ✓ 1 tests/e2e/long-media-performance.spec.ts:8:1 › indexes, seeks, cancels and reopens a bounded one-million-frame media timeline (2.6s)\n\n 1 passed (4.4s)\n\n[WebServer] (node:2156644) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n[WebServer] (node:2156658) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n(node:2156737) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n(Use `node --trace-warnings ...` to show where the warning was created)",
|
||
"artifactSha256": [
|
||
"3427a057e564c9e1b16d464d06e65cde90ae8557f4f51cb98ad43774658e8dca",
|
||
"a3088cadf92c99377856e403d0c844231e9d96e0479016befbb1b7606d35bf62",
|
||
"9b48e65b35a7f5fd6b86568d20255a0446882c3f3281f753af625b9c2fa4995c",
|
||
"295b083db2299ab904947eb39c17173de70c211882b0d855537d8f3cc27698ed",
|
||
"56d4af65701c26df20bd4021eda95b6e830348ce3a746086079fe89285548dc9"
|
||
]
|
||
},
|
||
{
|
||
"id": "oom-recovery",
|
||
"fields": [
|
||
"faults.oom"
|
||
],
|
||
"command": "npm --prefix web run test:oom-recovery",
|
||
"exitCode": 0,
|
||
"durationMs": 4874,
|
||
"output": "> blender-web-editor@0.1.0 test:oom-recovery\n> playwright test --config playwright.config.ts tests/e2e/oom-recovery.spec.ts\n\n\nRunning 1 test using 1 worker\n\noom-recovery [{\"scenario\":\"WASM_MAIN\",\"errors\":[\"WASM_OUT_OF_MEMORY@WASM_OPEN_INPUT\",\"WASM_OUT_OF_MEMORY@MAIN_EDIT_COMMAND\",\"WASM_OUT_OF_MEMORY@WASM_SAVE_RESULT\"],\"revision\":[2,2],\"hashStable\":true,\"releasedBytes\":205638,\"temporaryResourcesAfter\":0,\"recovered\":true},{\"scenario\":\"OPFS_STAGING\",\"errors\":[\"STORAGE_QUOTA@OPFS_STAGING_WRITE\"],\"revision\":[7,7],\"hashStable\":true,\"releasedBytes\":47804,\"temporaryResourcesAfter\":0,\"recovered\":true},{\"scenario\":\"GPU_RESOURCES\",\"errors\":[\"GPU_TEXTURE_BUDGET_EXCEEDED@GPU_TEXTURE_UPLOAD\"],\"revision\":[0,0],\"hashStable\":true,\"releasedBytes\":36,\"temporaryResourcesAfter\":0,\"recovered\":true},{\"scenario\":\"NANOVDB_RESIDENT\",\"errors\":[\"NANOVDB_GPU_BUDGET_EXCEEDED@NANOVDB_PAGE_TABLE\"],\"revision\":[0,0],\"hashStable\":true,\"releasedBytes\":65536,\"temporaryResourcesAfter\":0,\"recovered\":true}]\n ✓ 1 tests/e2e/oom-recovery.spec.ts:7:1 › recovers deterministically from WASM, OPFS, GPU and NanoVDB allocation faults (2.5s)\n\n 1 passed (4.1s)\n\n[WebServer] (node:2169927) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n[WebServer] (node:2169939) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n[WebServer] (Use `node --trace-warnings ...` to show where the warning was created)\n(node:2169985) Warning: The 'NO_COLOR' env is ignored due to the 'FORCE_COLOR' env being set.\n(Use `node --trace-warnings ...` to show where the warning was created)",
|
||
"artifactSha256": [
|
||
"d5fe9184c693eb5b5d3ede8797cb09859669f43d9a82b55b9591cabb2a2c4a56",
|
||
"50fa383e7c7b3cf7a87eb652671dd9c180e30c86b99a8b129726d8af2f76a5a0",
|
||
"e6cec43ffa61b97cadf0926cd6468257cd47a38b05a121c4ea4a252fe257e585",
|
||
"3d0b7d7b98d1c9ffeda1b4c4ea43c4ced400e36814d5a819f7d26df2bd25d873",
|
||
"aac12afe4c92684dc74d546701d3f9e56f305f5ceb83fc4699bf8a06e6abed1b",
|
||
"ce2a44329068e6e9aafbb37259e8a47c1d9e306e563cae8b957d0b2f6b2b61cb",
|
||
"5d87a9ea57bd7a1888f16a5f4306e1c6d3a1bdfcf832c9485fe8518aac528fd8"
|
||
]
|
||
}
|
||
]
|
||
}
|
||
}
|