@ifc-lite/geometry 4.2.0 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/dist/byte-streaming-prepass-result.d.ts +20 -0
  2. package/dist/byte-streaming-prepass-result.d.ts.map +1 -0
  3. package/dist/byte-streaming-prepass-result.js +5 -0
  4. package/dist/byte-streaming-prepass-result.js.map +1 -0
  5. package/dist/geometry-parallel-options.d.ts +96 -0
  6. package/dist/geometry-parallel-options.d.ts.map +1 -0
  7. package/dist/geometry-parallel-options.js +5 -0
  8. package/dist/geometry-parallel-options.js.map +1 -0
  9. package/dist/geometry-parallel.d.ts +2 -93
  10. package/dist/geometry-parallel.d.ts.map +1 -1
  11. package/dist/geometry-parallel.js +8 -5
  12. package/dist/geometry-parallel.js.map +1 -1
  13. package/dist/geometry.worker.d.ts +6 -0
  14. package/dist/geometry.worker.d.ts.map +1 -1
  15. package/dist/geometry.worker.js +68 -61
  16. package/dist/geometry.worker.js.map +1 -1
  17. package/dist/index.d.ts +3 -1
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +3 -2
  20. package/dist/index.js.map +1 -1
  21. package/dist/prepass-source-fingerprint.d.ts +8 -0
  22. package/dist/prepass-source-fingerprint.d.ts.map +1 -0
  23. package/dist/prepass-source-fingerprint.js +34 -0
  24. package/dist/prepass-source-fingerprint.js.map +1 -0
  25. package/dist/wasm-owned-buffer.d.ts +4 -0
  26. package/dist/wasm-owned-buffer.d.ts.map +1 -0
  27. package/dist/wasm-owned-buffer.js +13 -0
  28. package/dist/wasm-owned-buffer.js.map +1 -0
  29. package/dist/worker-prepass-source.d.ts +38 -0
  30. package/dist/worker-prepass-source.d.ts.map +1 -0
  31. package/dist/worker-prepass-source.js +9 -0
  32. package/dist/worker-prepass-source.js.map +1 -0
  33. package/package.json +2 -2
@@ -0,0 +1,20 @@
1
+ export interface ByteStreamingPrePassResult {
2
+ jobs: Uint32Array;
3
+ totalJobs: number;
4
+ unitScale: number;
5
+ rtcOffset?: Float64Array;
6
+ needsShift: boolean;
7
+ buildingRotation?: number | null;
8
+ voidKeys: Uint32Array;
9
+ voidCounts: Uint32Array;
10
+ voidValues: Uint32Array;
11
+ styleIds: Uint32Array;
12
+ styleColors: Uint8Array;
13
+ /** Prepass-resolved plane-angle→radians scale (additive wire field). */
14
+ planeAngleToRadians?: number;
15
+ /** #407/#913 §2.3 per-element material colour lists (flat encoding). */
16
+ materialElementIds?: Uint32Array;
17
+ materialColorCounts?: Uint32Array;
18
+ materialColors?: Uint8Array;
19
+ }
20
+ //# sourceMappingURL=byte-streaming-prepass-result.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"byte-streaming-prepass-result.d.ts","sourceRoot":"","sources":["../src/byte-streaming-prepass-result.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,YAAY,CAAC;IACzB,UAAU,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,EAAE,WAAW,CAAC;IACtB,UAAU,EAAE,WAAW,CAAC;IACxB,UAAU,EAAE,WAAW,CAAC;IACxB,QAAQ,EAAE,WAAW,CAAC;IACtB,WAAW,EAAE,UAAU,CAAC;IACxB,wEAAwE;IACxE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wEAAwE;IACxE,kBAAkB,CAAC,EAAE,WAAW,CAAC;IACjC,mBAAmB,CAAC,EAAE,WAAW,CAAC;IAClC,cAAc,CAAC,EAAE,UAAU,CAAC;CAC7B"}
@@ -0,0 +1,5 @@
1
+ /* This Source Code Form is subject to the terms of the Mozilla Public
2
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
3
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4
+ export {};
5
+ //# sourceMappingURL=byte-streaming-prepass-result.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"byte-streaming-prepass-result.js","sourceRoot":"","sources":["../src/byte-streaming-prepass-result.ts"],"names":[],"mappings":"AAAA;;+DAE+D"}
@@ -0,0 +1,96 @@
1
+ import type { TessellationQuality } from './types.js';
2
+ import type { BatchSizingConfig } from './batch-sizing.js';
3
+ export interface ProcessParallelOptions {
4
+ /** Fresh per-load fingerprint cell shared only with the matching parser. */
5
+ sourceFingerprint?: SharedArrayBuffer;
6
+ /**
7
+ * Fires when the streaming pre-pass finishes building the entity index
8
+ * (after styles), with SAB-backed Uint32Array views over the shared
9
+ * column buffers. The parser worker uses this to skip its own
10
+ * `scanEntitiesFastBytes` call (~10 s on 1 GB files under WASM
11
+ * contention with the geometry workers).
12
+ */
13
+ onEntityIndex?: (ids: Uint32Array, starts: Uint32Array, lengths: Uint32Array, oversizedIdCount?: number, // #3395 refused records
14
+ malformedRecordCount?: number) => void;
15
+ /**
16
+ * Issue #540 — "Merge Multilayer Walls" load-time toggle. When
17
+ * `true`, the geometry workers' IfcAPI receive
18
+ * `setMergeLayers(true)` before the first stream-chunk lands, so
19
+ * Revit-style multilayer-wall part meshes are suppressed at the
20
+ * Rust layer. Default `false` keeps existing behaviour.
21
+ */
22
+ mergeLayers?: boolean;
23
+ /**
24
+ * GPU-instancing partition toggle (default true). Set false for FEDERATED loads:
25
+ * the instanced render path is primary-model only, so a federated model must keep
26
+ * all geometry on the flat path or its opaque repeated occurrences are dropped.
27
+ */
28
+ enableInstancing?: boolean;
29
+ /**
30
+ * Issue #924 — per-entity geometry-hash tolerance in metres. When a
31
+ * positive value is given, each geometry worker's IfcAPI receives
32
+ * `setComputeGeometryHashes(tol)` before the first stream-chunk, so the
33
+ * RTC-invariant `geometryHash` lands on every emitted mesh for the
34
+ * model-diff / compare feature. `undefined`/`null` ⇒ off (zero overhead).
35
+ */
36
+ geometryHashTolerance?: number | null;
37
+ /**
38
+ * Issue #976 — tessellation detail level for curved geometry. When set,
39
+ * each geometry worker's IfcAPI receives `setTessellationQuality(level)`
40
+ * before the first stream-chunk. `undefined`/`null` ⇒ engine default
41
+ * (`'medium'`, output identical to the pre-quality pipeline).
42
+ */
43
+ tessellationQuality?: TessellationQuality | null;
44
+ /**
45
+ * Issue #1286 — tier-independent small-cut skip. When true, each geometry
46
+ * worker's IfcAPI receives `setSkipSmallCuts(true)` before the first
47
+ * stream-chunk, dropping tiny `IfcBooleanResult` detail cuts while keeping the
48
+ * tessellation tier. `undefined`/`false` ⇒ every cut runs (default).
49
+ */
50
+ skipSmallCuts?: boolean;
51
+ /**
52
+ * Explicit URL for the wasm-bindgen `.wasm` binary. When provided,
53
+ * forwarded to the geometry workers' init messages so they call
54
+ * `init(wasmUrl)` instead of relying on wasm-bindgen's default
55
+ * `import.meta.url`-based resolution.
56
+ *
57
+ * Vite + webpack 5 consumers don't need to set this — the bundler
58
+ * rewrites the `new URL('ifc-lite_bg.wasm', import.meta.url)` literal
59
+ * inside the wasm-bindgen glue at build time. This option exists for
60
+ * consumers whose bundler doesn't transform that pattern, or who
61
+ * serve the wasm from a CDN at a different origin (e.g., self-hosted
62
+ * deployments, Tauri custom protocols, embedded usage).
63
+ */
64
+ wasmUrls?: {
65
+ wasm?: string;
66
+ };
67
+ /**
68
+ * Issue #1097 — optional override for the worker's adaptive batch sizing
69
+ * (the watchdog↔throughput knob). Takes precedence over the `globalThis`
70
+ * tuning hook; omitted ⇒ `DEFAULT_BATCH_SIZING`. Forwarded to every worker
71
+ * in its `stream-start` message and validated there.
72
+ */
73
+ batchSizing?: Partial<BatchSizingConfig>;
74
+ /**
75
+ * #1097 load-time visibility filter. `disabledTypes` (uppercase STEP keywords)
76
+ * and `skipTypeGeometry` are forwarded to the prepass so the matching geometry
77
+ * jobs are never produced — cutting decode + CSG + tessellation + upload for
78
+ * hidden types (spaces/annotations/grids/type-library). Takes precedence over
79
+ * the `globalThis.__IFC_LITE_VISIBILITY_FILTER` hook. Toggling a type back on
80
+ * requires a reload.
81
+ */
82
+ visibilityFilter?: {
83
+ disabledTypes?: string[];
84
+ skipTypeGeometry?: boolean;
85
+ };
86
+ /**
87
+ * Explicit geometry-worker count for A/B tuning (the viewer's
88
+ * `?geomWorkers=N` knob). Overrides the cores-tier heuristic but stays
89
+ * clamped to the memory budget — see the worker-count policy. `undefined`
90
+ * ⇒ use the heuristic. Lets a user measure their host's true thermal optimum
91
+ * (which is machine-specific). Geometry output is unaffected by the count
92
+ * (workers process disjoint, deterministic element slices).
93
+ */
94
+ workerCountOverride?: number;
95
+ }
96
+ //# sourceMappingURL=geometry-parallel-options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geometry-parallel-options.d.ts","sourceRoot":"","sources":["../src/geometry-parallel-options.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,MAAM,WAAW,sBAAsB;IACrC,4EAA4E;IAC5E,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CACd,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,WAAW,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE,wBAAwB;IACzE,oBAAoB,CAAC,EAAE,MAAM,KAC1B,IAAI,CAAC;IACV;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACjD;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,EAAE;QACT,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACzC;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC5E;;;;;;;OAOG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B"}
@@ -0,0 +1,5 @@
1
+ /* This Source Code Form is subject to the terms of the Mozilla Public
2
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
3
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4
+ export {};
5
+ //# sourceMappingURL=geometry-parallel-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geometry-parallel-options.js","sourceRoot":"","sources":["../src/geometry-parallel-options.ts"],"names":[],"mappings":"AAAA;;+DAE+D"}
@@ -19,10 +19,9 @@
19
19
  * (full pre-pass + worker spawn + first batch) to ~3-5 s (pre-pass
20
20
  * scans first 100 K bytes → meta → first chunk → first batch).
21
21
  */
22
+ import type { ProcessParallelOptions } from './geometry-parallel-options.js';
22
23
  import type { CoordinateHandler } from './coordinate-handler.js';
23
- import type { TessellationQuality } from './types.js';
24
24
  import type { StreamingGeometryEvent } from './index.js';
25
- import type { BatchSizingConfig } from './batch-sizing.js';
26
25
  /**
27
26
  * Prepass class-byte layout, mirroring the `PREPASS_CLASS_*` definitions in
28
27
  * `rust/processing/src/shard_classes.rs` (the source of truth — these are
@@ -70,97 +69,7 @@ export declare function planAffinityRouting(affinity: Uint32Array, totalJobs: nu
70
69
  buckets: number[][];
71
70
  nextWorker: number;
72
71
  };
73
- export interface ProcessParallelOptions {
74
- /**
75
- * Fires when the streaming pre-pass finishes building the entity index
76
- * (after styles), with SAB-backed Uint32Array views over the shared
77
- * column buffers. The parser worker uses this to skip its own
78
- * `scanEntitiesFastBytes` call (~10 s on 1 GB files under WASM
79
- * contention with the geometry workers).
80
- */
81
- onEntityIndex?: (ids: Uint32Array, starts: Uint32Array, lengths: Uint32Array, oversizedIdCount?: number, // #3395 refused records
82
- malformedRecordCount?: number) => void;
83
- /**
84
- * Issue #540 — "Merge Multilayer Walls" load-time toggle. When
85
- * `true`, the geometry workers' IfcAPI receive
86
- * `setMergeLayers(true)` before the first stream-chunk lands, so
87
- * Revit-style multilayer-wall part meshes are suppressed at the
88
- * Rust layer. Default `false` keeps existing behaviour.
89
- */
90
- mergeLayers?: boolean;
91
- /**
92
- * GPU-instancing partition toggle (default true). Set false for FEDERATED loads:
93
- * the instanced render path is primary-model only, so a federated model must keep
94
- * all geometry on the flat path or its opaque repeated occurrences are dropped.
95
- */
96
- enableInstancing?: boolean;
97
- /**
98
- * Issue #924 — per-entity geometry-hash tolerance in metres. When a
99
- * positive value is given, each geometry worker's IfcAPI receives
100
- * `setComputeGeometryHashes(tol)` before the first stream-chunk, so the
101
- * RTC-invariant `geometryHash` lands on every emitted mesh for the
102
- * model-diff / compare feature. `undefined`/`null` ⇒ off (zero overhead).
103
- */
104
- geometryHashTolerance?: number | null;
105
- /**
106
- * Issue #976 — tessellation detail level for curved geometry. When set,
107
- * each geometry worker's IfcAPI receives `setTessellationQuality(level)`
108
- * before the first stream-chunk. `undefined`/`null` ⇒ engine default
109
- * (`'medium'`, output identical to the pre-quality pipeline).
110
- */
111
- tessellationQuality?: TessellationQuality | null;
112
- /**
113
- * Issue #1286 — tier-independent small-cut skip. When true, each geometry
114
- * worker's IfcAPI receives `setSkipSmallCuts(true)` before the first
115
- * stream-chunk, dropping tiny `IfcBooleanResult` detail cuts while keeping the
116
- * tessellation tier. `undefined`/`false` ⇒ every cut runs (default).
117
- */
118
- skipSmallCuts?: boolean;
119
- /**
120
- * Explicit URL for the wasm-bindgen `.wasm` binary. When provided,
121
- * forwarded to the geometry workers' init messages so they call
122
- * `init(wasmUrl)` instead of relying on wasm-bindgen's default
123
- * `import.meta.url`-based resolution.
124
- *
125
- * Vite + webpack 5 consumers don't need to set this — the bundler
126
- * rewrites the `new URL('ifc-lite_bg.wasm', import.meta.url)` literal
127
- * inside the wasm-bindgen glue at build time. This option exists for
128
- * consumers whose bundler doesn't transform that pattern, or who
129
- * serve the wasm from a CDN at a different origin (e.g., self-hosted
130
- * deployments, Tauri custom protocols, embedded usage).
131
- */
132
- wasmUrls?: {
133
- wasm?: string;
134
- };
135
- /**
136
- * Issue #1097 — optional override for the worker's adaptive batch sizing
137
- * (the watchdog↔throughput knob). Takes precedence over the `globalThis`
138
- * tuning hook; omitted ⇒ `DEFAULT_BATCH_SIZING`. Forwarded to every worker
139
- * in its `stream-start` message and validated there.
140
- */
141
- batchSizing?: Partial<BatchSizingConfig>;
142
- /**
143
- * #1097 load-time visibility filter. `disabledTypes` (uppercase STEP keywords)
144
- * and `skipTypeGeometry` are forwarded to the prepass so the matching geometry
145
- * jobs are never produced — cutting decode + CSG + tessellation + upload for
146
- * hidden types (spaces/annotations/grids/type-library). Takes precedence over
147
- * the `globalThis.__IFC_LITE_VISIBILITY_FILTER` hook. Toggling a type back on
148
- * requires a reload.
149
- */
150
- visibilityFilter?: {
151
- disabledTypes?: string[];
152
- skipTypeGeometry?: boolean;
153
- };
154
- /**
155
- * Explicit geometry-worker count for A/B tuning (the viewer's
156
- * `?geomWorkers=N` knob). Overrides the cores-tier heuristic but stays
157
- * clamped to the memory budget — see {@link computeWorkerCount}. `undefined`
158
- * ⇒ use the heuristic. Lets a user measure their host's true thermal optimum
159
- * (which is machine-specific). Geometry output is unaffected by the count
160
- * (workers process disjoint, deterministic element slices).
161
- */
162
- workerCountOverride?: number;
163
- }
72
+ export type { ProcessParallelOptions } from './geometry-parallel-options.js';
164
73
  export declare function processParallel(buffer: Uint8Array, coordinator: CoordinateHandler, sharedRtcOffset?: {
165
74
  x: number;
166
75
  y: number;
@@ -1 +1 @@
1
- {"version":3,"file":"geometry-parallel.d.ts","sourceRoot":"","sources":["../src/geometry-parallel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"geometry-parallel.d.ts","sourceRoot":"","sources":["../src/geometry-parallel.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAE7E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAWzD;;;;;;;;;GASG;AACH,eAAO,MAAM,uBAAuB,KAAO,CAAC;AAC5C,uBAAuB;AACvB,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,6BAA6B;AAC7B,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAClD,6CAA6C;AAC7C,eAAO,MAAM,+BAA+B,IAAI,CAAC;AACjD,kCAAkC;AAClC,eAAO,MAAM,qCAAqC,IAAI,CAAC;AACvD,4BAA4B;AAC5B,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,4BAA4B;AAC5B,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,0BAA0B;AAC1B,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAa/C;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,UAAU,EACnB,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,WAAW,GACnB,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAmB1B;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,WAAW,EACrB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAChC,WAAW,EAAE,MAAM,GAClB;IAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAc7C;AAyED,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAI7E,wBAAuB,eAAe,CACpC,MAAM,EAAE,UAAU,EAClB,WAAW,EAAE,iBAAiB,EAC9B,eAAe,CAAC,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE;AACrD,gFAAgF;AAChF,WAAW,CAAC,EAAE,iBAAiB,EAC/B,OAAO,CAAC,EAAE,sBAAsB,GAC/B,cAAc,CAAC,sBAAsB,CAAC,CAszCxC"}
@@ -159,9 +159,11 @@ function terminateWorkerQuietly(worker, label) {
159
159
  console.warn(`[stream] ${label} terminate failed:`, err);
160
160
  }
161
161
  }
162
+ let nextSourceSessionId = 0;
162
163
  export async function* processParallel(buffer, coordinator, sharedRtcOffset,
163
164
  /** Optional pre-allocated SAB the caller already shares with another worker. */
164
165
  existingSab, options) {
166
+ const sourceSessionId = `geometry-source-${++nextSourceSessionId}`;
165
167
  coordinator.reset();
166
168
  yield { type: 'start', totalEstimate: buffer.length / 1000 };
167
169
  yield { type: 'model-open', modelID: 0 };
@@ -608,7 +610,7 @@ existingSab, options) {
608
610
  const batchSizing = options?.batchSizing ?? readBatchSizingOverride();
609
611
  for (const worker of workers) {
610
612
  worker.postMessage({
611
- type: 'stream-start',
613
+ type: 'stream-start', sourceSessionId,
612
614
  sharedBuffer,
613
615
  unitScale: prepassMeta.unitScale,
614
616
  planeAngleToRadians: prepassMeta.planeAngleToRadians,
@@ -877,7 +879,7 @@ existingSab, options) {
877
879
  const from = Math.floor((i * styledCount) / sliceCount) * 3;
878
880
  const to = i + 1 === sliceCount ? styledCount * 3 : Math.floor(((i + 1) * styledCount) / sliceCount) * 3;
879
881
  const slice = styledSpans.slice(from, to);
880
- workers[i % workers.length].postMessage({ type: 'resolve-styles-shard', sharedBuffer, sliceIndex: i, spans: slice }, [slice.buffer]);
882
+ workers[i % workers.length].postMessage({ type: 'resolve-styles-shard', sourceSessionId, sharedBuffer, sliceIndex: i, spans: slice }, [slice.buffer]);
881
883
  }
882
884
  // Start the sharded pre-pass with the stitched index columns + classes
883
885
  // (stage 2: the pre-pass discovers jobs/spans from the class column and
@@ -948,7 +950,7 @@ existingSab, options) {
948
950
  finalizeDispatched = true;
949
951
  const m = mergedStylesForFinalize;
950
952
  workers[0].postMessage({
951
- type: 'finalize-styles',
953
+ type: 'finalize-styles', sourceSessionId,
952
954
  sharedBuffer,
953
955
  orphanIds: m.orphanIds,
954
956
  orphanColors: m.orphanColors,
@@ -978,7 +980,7 @@ existingSab, options) {
978
980
  const rangeStart = Math.floor((i * len) / n);
979
981
  const rangeEnd = i + 1 === n ? len : Math.floor(((i + 1) * len) / n);
980
982
  workers[i].postMessage({
981
- type: 'scan-shard',
983
+ type: 'scan-shard', sourceSessionId,
982
984
  sharedBuffer,
983
985
  shardIndex: i,
984
986
  rangeStart,
@@ -993,7 +995,6 @@ existingSab, options) {
993
995
  // is suspended at a `yield` or the `resolveWaiting` await. The viewer's
994
996
  // `watchedGeometryStream` relies on this `finally` to tear down workers
995
997
  // on break / abort / watchdog (see boundedIteratorReturn). The existing
996
- // branch-local `terminate()` calls remain — `terminate()` is idempotent.
997
998
  try {
998
999
  // Forward the consumer-supplied wasm URL to the pre-pass worker so it
999
1000
  // doesn't fall back to wasm-bindgen's `import.meta.url` default. The
@@ -1305,6 +1306,7 @@ existingSab, options) {
1305
1306
  }
1306
1307
  prepassWorker.postMessage({
1307
1308
  type: 'prepass-streaming-sharded',
1309
+ sourceFingerprint: options?.sourceFingerprint,
1308
1310
  sharedBuffer,
1309
1311
  chunkSize: 50_000,
1310
1312
  ...(visibilityFilter?.disabledTypes ? { disabledTypes: visibilityFilter.disabledTypes } : {}),
@@ -1318,6 +1320,7 @@ existingSab, options) {
1318
1320
  else {
1319
1321
  prepassWorker.postMessage({
1320
1322
  type: 'prepass-streaming',
1323
+ sourceFingerprint: options?.sourceFingerprint,
1321
1324
  sharedBuffer,
1322
1325
  chunkSize: 50_000,
1323
1326
  ...(visibilityFilter?.disabledTypes ? { disabledTypes: visibilityFilter.disabledTypes } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"geometry-parallel.js","sourceRoot":"","sources":["../src/geometry-parallel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"geometry-parallel.js","sourceRoot":"","sources":["../src/geometry-parallel.ts"],"names":[],"mappings":"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"}
@@ -30,6 +30,7 @@ export interface GeometryWorkerInitMessage {
30
30
  export interface GeometryWorkerStreamStartMessage {
31
31
  type: 'stream-start';
32
32
  sharedBuffer: SharedArrayBuffer;
33
+ sourceSessionId?: string;
33
34
  unitScale: number;
34
35
  rtcX: number;
35
36
  rtcY: number;
@@ -131,12 +132,14 @@ export interface GeometryWorkerSetPrepassColumnsMessage {
131
132
  export interface GeometryWorkerScanShardMessage {
132
133
  type: 'scan-shard';
133
134
  sharedBuffer: SharedArrayBuffer;
135
+ sourceSessionId?: string;
134
136
  shardIndex: number;
135
137
  rangeStart: number;
136
138
  rangeEnd: number;
137
139
  }
138
140
  export interface GeometryWorkerPrePassMessage {
139
141
  type: 'prepass-streaming';
142
+ sourceFingerprint?: SharedArrayBuffer;
140
143
  sharedBuffer: SharedArrayBuffer;
141
144
  /** Jobs per chunk (defaults to 50_000). */
142
145
  chunkSize?: number;
@@ -233,6 +236,7 @@ export interface GeometryWorkerShardResultMessage {
233
236
  export interface GeometryWorkerResolveStylesShardMessage {
234
237
  type: 'resolve-styles-shard';
235
238
  sharedBuffer: SharedArrayBuffer;
239
+ sourceSessionId?: string;
236
240
  sliceIndex: number;
237
241
  spans: Uint32Array;
238
242
  }
@@ -254,6 +258,7 @@ export interface GeometryWorkerStylesShardResultMessage {
254
258
  */
255
259
  export interface GeometryWorkerPrePassShardedMessage {
256
260
  type: 'prepass-streaming-sharded';
261
+ sourceFingerprint?: SharedArrayBuffer;
257
262
  sharedBuffer: SharedArrayBuffer;
258
263
  chunkSize?: number;
259
264
  disabledTypes?: string[];
@@ -273,6 +278,7 @@ export interface GeometryWorkerPrePassShardedMessage {
273
278
  export interface GeometryWorkerFinalizeStylesMessage {
274
279
  type: 'finalize-styles';
275
280
  sharedBuffer: SharedArrayBuffer;
281
+ sourceSessionId?: string;
276
282
  orphanIds: Uint32Array;
277
283
  orphanColors: Float32Array;
278
284
  geomIds: Uint32Array;
@@ -1 +1 @@
1
- {"version":3,"file":"geometry.worker.d.ts","sourceRoot":"","sources":["../src/geometry.worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"geometry.worker.d.ts","sourceRoot":"","sources":["../src/geometry.worker.ts"],"names":[],"mappings":"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"}