@m4l/gclick-realtime 1.9.0 → 1.10.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.
@@ -694,6 +694,174 @@ export declare const REAL_TIME_DUMMY_SCENARIOS: {
694
694
  };
695
695
  readonly scenarioId: "single_marker_motion_probe";
696
696
  };
697
+ readonly trajectory_coalesce_probe: {
698
+ readonly devices: [{
699
+ readonly alias: "Coalesce Probe 01";
700
+ readonly blueprintId: "teal_pickup";
701
+ readonly messagePayloadPatches: [{
702
+ readonly description: "Pin one moving frame to the coalesce lane before stationary duplicates begin.";
703
+ readonly messageIndex: 7;
704
+ readonly payloadPatch: {
705
+ readonly current: {
706
+ readonly vpts: {
707
+ readonly vptGnss: {
708
+ readonly gnssCourse: {
709
+ readonly value: number;
710
+ };
711
+ readonly gnssLatitude: {
712
+ readonly value: number;
713
+ };
714
+ readonly gnssLongitude: {
715
+ readonly value: number;
716
+ };
717
+ };
718
+ };
719
+ };
720
+ readonly root: {
721
+ readonly current: {
722
+ readonly vpts: {
723
+ readonly vptGnss: {
724
+ readonly gnssCourse: {
725
+ readonly value: number;
726
+ };
727
+ readonly gnssLatitude: {
728
+ readonly value: number;
729
+ };
730
+ readonly gnssLongitude: {
731
+ readonly value: number;
732
+ };
733
+ };
734
+ };
735
+ };
736
+ };
737
+ };
738
+ }, {
739
+ readonly description: "Inject the first consecutive stationary duplicate that trajectory should coalesce.";
740
+ readonly messageIndex: 8;
741
+ readonly payloadPatch: {
742
+ readonly current: {
743
+ readonly vpts: {
744
+ readonly vptGnss: {
745
+ readonly gnssCourse: {
746
+ readonly value: number;
747
+ };
748
+ readonly gnssLatitude: {
749
+ readonly value: number;
750
+ };
751
+ readonly gnssLongitude: {
752
+ readonly value: number;
753
+ };
754
+ };
755
+ };
756
+ };
757
+ readonly root: {
758
+ readonly current: {
759
+ readonly vpts: {
760
+ readonly vptGnss: {
761
+ readonly gnssCourse: {
762
+ readonly value: number;
763
+ };
764
+ readonly gnssLatitude: {
765
+ readonly value: number;
766
+ };
767
+ readonly gnssLongitude: {
768
+ readonly value: number;
769
+ };
770
+ };
771
+ };
772
+ };
773
+ };
774
+ };
775
+ }, {
776
+ readonly description: "Inject the second consecutive stationary duplicate while the later route still moves forward.";
777
+ readonly messageIndex: 9;
778
+ readonly payloadPatch: {
779
+ readonly current: {
780
+ readonly vpts: {
781
+ readonly vptGnss: {
782
+ readonly gnssCourse: {
783
+ readonly value: number;
784
+ };
785
+ readonly gnssLatitude: {
786
+ readonly value: number;
787
+ };
788
+ readonly gnssLongitude: {
789
+ readonly value: number;
790
+ };
791
+ };
792
+ };
793
+ };
794
+ readonly root: {
795
+ readonly current: {
796
+ readonly vpts: {
797
+ readonly vptGnss: {
798
+ readonly gnssCourse: {
799
+ readonly value: number;
800
+ };
801
+ readonly gnssLatitude: {
802
+ readonly value: number;
803
+ };
804
+ readonly gnssLongitude: {
805
+ readonly value: number;
806
+ };
807
+ };
808
+ };
809
+ };
810
+ };
811
+ };
812
+ }, {
813
+ readonly description: "Move forward again so duplicate coalescing cannot become a false final stop.";
814
+ readonly messageIndex: 10;
815
+ readonly payloadPatch: {
816
+ readonly current: {
817
+ readonly vpts: {
818
+ readonly vptGnss: {
819
+ readonly gnssCourse: {
820
+ readonly value: number;
821
+ };
822
+ readonly gnssLatitude: {
823
+ readonly value: number;
824
+ };
825
+ readonly gnssLongitude: {
826
+ readonly value: number;
827
+ };
828
+ };
829
+ };
830
+ };
831
+ readonly root: {
832
+ readonly current: {
833
+ readonly vpts: {
834
+ readonly vptGnss: {
835
+ readonly gnssCourse: {
836
+ readonly value: number;
837
+ };
838
+ readonly gnssLatitude: {
839
+ readonly value: number;
840
+ };
841
+ readonly gnssLongitude: {
842
+ readonly value: number;
843
+ };
844
+ };
845
+ };
846
+ };
847
+ };
848
+ };
849
+ }];
850
+ readonly name: "COL001";
851
+ readonly planId: "single_marker_motion_probe";
852
+ readonly playbackOffsetSeconds: 18;
853
+ readonly resourceSerialId: "19500";
854
+ readonly routeId: "envigado_horizontal_jump_probe_5km";
855
+ }];
856
+ readonly name: "Trajectory coalesce probe";
857
+ readonly playback: {
858
+ readonly framesPerTick: 3;
859
+ readonly intervalMs: 1000;
860
+ readonly logicalSampleSeconds: 1;
861
+ readonly loop: true;
862
+ };
863
+ readonly scenarioId: "trajectory_coalesce_probe";
864
+ };
697
865
  readonly non_selected_viewport_gate_probe: {
698
866
  readonly devices: [{
699
867
  readonly alias: "Gate Probe 01";
@@ -1 +1 @@
1
- {"version":3,"file":"scenarios.d.ts","sourceRoot":"","sources":["../../../../../../packages/gclick-realtime/src/dummy/catalogs/scenarios.ts"],"names":[],"mappings":"AAyBA,eAAO,MAAM,gCAAgC;;;;;CAKQ,CAAC;AAwKtD;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmZqC,CAAC;AAE5E,MAAM,MAAM,uBAAuB,GAAG,MAAM,OAAO,yBAAyB,CAAC;AAE7E,eAAO,MAAM,mCAAmC,EAAE,uBAA4C,CAAC"}
1
+ {"version":3,"file":"scenarios.d.ts","sourceRoot":"","sources":["../../../../../../packages/gclick-realtime/src/dummy/catalogs/scenarios.ts"],"names":[],"mappings":"AAyBA,eAAO,MAAM,gCAAgC;;;;;CAKQ,CAAC;AAuLtD;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8bqC,CAAC;AAE5E,MAAM,MAAM,uBAAuB,GAAG,MAAM,OAAO,yBAAyB,CAAC;AAE7E,eAAO,MAAM,mCAAmC,EAAE,uBAA4C,CAAC"}
@@ -1,4 +1,4 @@
1
- const g = {
1
+ const b = {
2
2
  framesPerTick: 1,
3
3
  intervalMs: 1e3,
4
4
  logicalSampleSeconds: 3,
@@ -64,7 +64,7 @@ const g = {
64
64
  }
65
65
  }
66
66
  };
67
- function t(e) {
67
+ function a(e) {
68
68
  return {
69
69
  current: {
70
70
  vpts: {
@@ -100,36 +100,44 @@ function t(e) {
100
100
  }
101
101
  };
102
102
  }
103
- function m(e) {
103
+ function S(e) {
104
104
  return Array.from({ length: e.pointCount }, (s, n) => {
105
- const a = (n + 1) / e.pointCount, p = e.startLat + (e.endLat - e.startLat) * a, u = e.startLng + (e.endLng - e.startLng) * a;
106
- return t({
105
+ const r = (n + 1) / e.pointCount, m = e.startLat + (e.endLat - e.startLat) * r, I = e.startLng + (e.endLng - e.startLng) * r;
106
+ return a({
107
107
  course: e.course,
108
- lat: p,
109
- lng: u
108
+ lat: m,
109
+ lng: I
110
110
  });
111
111
  });
112
112
  }
113
- const r = 6.18135, l = 270, I = t({
113
+ const t = 6.18135, l = 270, v = a({
114
114
  course: l,
115
- lat: r,
115
+ lat: t,
116
116
  lng: -75.58649226663906
117
- }), i = t({
117
+ }), i = a({
118
118
  course: l,
119
- lat: r,
119
+ lat: t,
120
120
  lng: -75.58878387127996
121
- }), b = t({
121
+ }), f = a({
122
122
  course: l,
123
- lat: r,
123
+ lat: t,
124
124
  lng: -75.59157299534948
125
- }), c = m({
125
+ }), p = S({
126
126
  course: l,
127
- endLat: r,
127
+ endLat: t,
128
128
  endLng: -75.59157299534948,
129
129
  pointCount: 17,
130
- startLat: r,
130
+ startLat: t,
131
131
  startLng: -75.58878387127996
132
- }), S = {
132
+ }), u = 6.18135, g = 270, c = a({
133
+ course: g,
134
+ lat: u,
135
+ lng: -75.5869
136
+ }), k = a({
137
+ course: g,
138
+ lat: u,
139
+ lng: -75.58745
140
+ }), y = {
133
141
  fleet_delete_cycle: {
134
142
  devices: [
135
143
  { blueprintId: "red_tractor", name: "DEL001", planId: "yard_cycle_with_delete", playbackOffsetSeconds: 18, resourceSerialId: "10006", routeId: "medellin_centro_6km_reverse" },
@@ -309,7 +317,7 @@ const r = 6.18135, l = 270, I = t({
309
317
  {
310
318
  description: "Inject one visible near-threshold jump that should remain interpolated instead of snapping.",
311
319
  messageIndex: 12,
312
- payloadPatch: I
320
+ payloadPatch: v
313
321
  },
314
322
  {
315
323
  description: "Inject one visible >250m jump that should snap immediately instead of animating stale travel.",
@@ -326,12 +334,12 @@ const r = 6.18135, l = 270, I = t({
326
334
  messageIndex: 15,
327
335
  payloadPatch: i
328
336
  },
329
- ...c.map((e, s) => {
330
- const n = 16 + s, a = s === c.length - 1;
337
+ ...p.map((e, s) => {
338
+ const n = 16 + s, r = s === p.length - 1;
331
339
  return {
332
- description: a ? "Rejoin the natural westbound serpentine lane after one slightly longer visible restore so the headed probe ends back on the deterministic route without one backward rebound." : "Keep the post-snap restore on one compact westbound serpentine lane so the comet can rebuild through many small visible points for roughly two extra visible seconds.",
340
+ description: r ? "Rejoin the natural westbound serpentine lane after one slightly longer visible restore so the headed probe ends back on the deterministic route without one backward rebound." : "Keep the post-snap restore on one compact westbound serpentine lane so the comet can rebuild through many small visible points for roughly two extra visible seconds.",
333
341
  messageIndex: n,
334
- payloadPatch: a ? b : e
342
+ payloadPatch: r ? f : e
335
343
  };
336
344
  })
337
345
  ],
@@ -423,6 +431,49 @@ const r = 6.18135, l = 270, I = t({
423
431
  },
424
432
  scenarioId: "single_marker_motion_probe"
425
433
  },
434
+ trajectory_coalesce_probe: {
435
+ devices: [
436
+ {
437
+ alias: "Coalesce Probe 01",
438
+ blueprintId: "teal_pickup",
439
+ messagePayloadPatches: [
440
+ {
441
+ description: "Pin one moving frame to the coalesce lane before stationary duplicates begin.",
442
+ messageIndex: 7,
443
+ payloadPatch: c
444
+ },
445
+ {
446
+ description: "Inject the first consecutive stationary duplicate that trajectory should coalesce.",
447
+ messageIndex: 8,
448
+ payloadPatch: c
449
+ },
450
+ {
451
+ description: "Inject the second consecutive stationary duplicate while the later route still moves forward.",
452
+ messageIndex: 9,
453
+ payloadPatch: c
454
+ },
455
+ {
456
+ description: "Move forward again so duplicate coalescing cannot become a false final stop.",
457
+ messageIndex: 10,
458
+ payloadPatch: k
459
+ }
460
+ ],
461
+ name: "COL001",
462
+ planId: "single_marker_motion_probe",
463
+ playbackOffsetSeconds: 18,
464
+ resourceSerialId: "19500",
465
+ routeId: "envigado_horizontal_jump_probe_5km"
466
+ }
467
+ ],
468
+ name: "Trajectory coalesce probe",
469
+ playback: {
470
+ framesPerTick: 3,
471
+ intervalMs: 1e3,
472
+ logicalSampleSeconds: 1,
473
+ loop: !0
474
+ },
475
+ scenarioId: "trajectory_coalesce_probe"
476
+ },
426
477
  non_selected_viewport_gate_probe: {
427
478
  devices: [
428
479
  {
@@ -507,7 +558,7 @@ const r = 6.18135, l = 270, I = t({
507
558
  { blueprintId: "bootstrap_pending_icon", name: "MIX008", planId: "corridor_express", playbackOffsetSeconds: 102, resourceSerialId: "10007", routeId: "envigado_loop_5km_reverse" }
508
559
  ],
509
560
  name: "Mixed city fleet",
510
- playback: g,
561
+ playback: b,
511
562
  scenarioId: "fleet_mixed_city"
512
563
  },
513
564
  fleet_signal_loss: {
@@ -526,9 +577,9 @@ const r = 6.18135, l = 270, I = t({
526
577
  },
527
578
  scenarioId: "fleet_signal_loss"
528
579
  }
529
- }, v = "fleet_mixed_city";
580
+ }, h = "fleet_mixed_city";
530
581
  export {
531
- g as REAL_TIME_DUMMY_DEFAULT_PLAYBACK,
532
- v as REAL_TIME_DUMMY_DEFAULT_SCENARIO_ID,
533
- S as REAL_TIME_DUMMY_SCENARIOS
582
+ b as REAL_TIME_DUMMY_DEFAULT_PLAYBACK,
583
+ h as REAL_TIME_DUMMY_DEFAULT_SCENARIO_ID,
584
+ y as REAL_TIME_DUMMY_SCENARIOS
534
585
  };
@@ -153,6 +153,15 @@ export declare const REAL_TIME_DUMMY_SIMULATION_PRESET_CATALOG: {
153
153
  scenarioIds: "single_marker_motion_probe"[];
154
154
  };
155
155
  };
156
+ trajectory_coalesce_probe_ci_fast: {
157
+ description: string;
158
+ name: string;
159
+ presetId: RealTimeDummySimulationPresetId.TrajectoryCoalesceProbeCiFast;
160
+ simulation: {
161
+ playbackProfileId: "burst";
162
+ scenarioIds: "trajectory_coalesce_probe"[];
163
+ };
164
+ };
156
165
  viewport_follow_probe_ci_fast: {
157
166
  description: string;
158
167
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../packages/gclick-realtime/src/fixtures/constants.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,+BAA+B,EAAE,MAAM,SAAS,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,iCAAiC,kBAAkB,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,4CAA4C;;;;;;;;;;;;;;;;;;;;;;;;;CA4BxD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,yCAAyC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyMwC,CAAC;AAE/F;;GAEG;AACH,eAAO,MAAM,4CAA4C,+DACK,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,qCAAqC,mCAEjD,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../packages/gclick-realtime/src/fixtures/constants.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,+BAA+B,EAAE,MAAM,SAAS,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,iCAAiC,kBAAkB,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,4CAA4C;;;;;;;;;;;;;;;;;;;;;;;;;CA4BxD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,yCAAyC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkNwC,CAAC;AAE/F;;GAEG;AACH,eAAO,MAAM,4CAA4C,+DACK,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,qCAAqC,mCAEjD,CAAC"}
@@ -142,6 +142,15 @@ const i = "dummyPresetId", a = {
142
142
  scenarioIds: ["single_marker_motion_probe"]
143
143
  }
144
144
  },
145
+ [e.TrajectoryCoalesceProbeCiFast]: {
146
+ description: "Fast trajectory probe that injects consecutive stationary GNSS fixes before moving again so browser contracts can prove renderable coalescing does not create false brakes.",
147
+ name: "Trajectory coalesce probe CI fast",
148
+ presetId: e.TrajectoryCoalesceProbeCiFast,
149
+ simulation: {
150
+ playbackProfileId: "burst",
151
+ scenarioIds: ["trajectory_coalesce_probe"]
152
+ }
153
+ },
145
154
  [e.ViewportFollowProbeCiFast]: {
146
155
  description: "Fast selected-marker viewport-follow probe tuned for CI-friendly autofocus visibility checks.",
147
156
  name: "Viewport-follow probe CI fast",
@@ -87,6 +87,18 @@ export declare const REAL_TIME_DUMMY_SCENARIO_CATALOG: {
87
87
  };
88
88
  scenarioId: "single_marker_motion_probe";
89
89
  };
90
+ trajectory_coalesce_probe: {
91
+ description: string;
92
+ deviceCount: number;
93
+ name: string;
94
+ playback: {
95
+ framesPerTick: number;
96
+ intervalMs: number;
97
+ logicalSampleSeconds: number;
98
+ loop: true;
99
+ };
100
+ scenarioId: "trajectory_coalesce_probe";
101
+ };
90
102
  non_selected_viewport_gate_probe: {
91
103
  description: string;
92
104
  deviceCount: number;
@@ -1 +1 @@
1
- {"version":3,"file":"scenarios.d.ts","sourceRoot":"","sources":["../../../../../packages/gclick-realtime/src/fixtures/scenarios.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,8BAA8B,EAC/B,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqLwC,CAAC;AAEtF;;GAEG;AACH,eAAO,MAAM,2CAA2C,EAAE,8BACtC,CAAC;AAErB;;GAEG;AACH,eAAO,MAAM,oCAAoC,EAE5C,8BAA8B,EAAE,CAAC"}
1
+ {"version":3,"file":"scenarios.d.ts","sourceRoot":"","sources":["../../../../../packages/gclick-realtime/src/fixtures/scenarios.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,8BAA8B,EAC/B,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiMwC,CAAC;AAEtF;;GAEG;AACH,eAAO,MAAM,2CAA2C,EAAE,8BACtC,CAAC;AAErB;;GAEG;AACH,eAAO,MAAM,oCAAoC,EAE5C,8BAA8B,EAAE,CAAC"}
@@ -83,6 +83,18 @@ const e = {
83
83
  },
84
84
  scenarioId: "single_marker_motion_probe"
85
85
  },
86
+ trajectory_coalesce_probe: {
87
+ description: "Single-device deterministic trajectory probe that injects stationary duplicate fixes before moving again.",
88
+ deviceCount: 1,
89
+ name: "Trajectory coalesce probe",
90
+ playback: {
91
+ framesPerTick: 3,
92
+ intervalMs: 1e3,
93
+ logicalSampleSeconds: 1,
94
+ loop: !0
95
+ },
96
+ scenarioId: "trajectory_coalesce_probe"
97
+ },
86
98
  non_selected_viewport_gate_probe: {
87
99
  description: "Single-device deterministic center-start scenario used by the deep non-selected viewport and buffered-ring gate contract.",
88
100
  deviceCount: 1,
@@ -14,7 +14,7 @@ export type RealTimeDummySimulationPlaybackProfileId = 'balanced' | 'burst' | 'f
14
14
  /**
15
15
  * Scenario id that callers can reference without importing the runtime simulator package.
16
16
  */
17
- export type RealTimeDummyScenarioCatalogId = 'fleet_delete_cycle' | 'fleet_mixed_city' | 'fleet_signal_loss' | 'large_jump_snap_probe' | 'missing_position_preview' | 'not_detectable_preview' | 'malformed_coordinate_probe' | 'non_selected_viewport_gate_probe' | 'rotation_fallback_probe' | 'selection_no_position_probe' | 'single_marker_motion_probe' | 'viewport_follow_probe' | 'google_envigado_swarm_preview' | 'two_marker_alignment_probe' | 'google_loop_preview';
17
+ export type RealTimeDummyScenarioCatalogId = 'fleet_delete_cycle' | 'fleet_mixed_city' | 'fleet_signal_loss' | 'large_jump_snap_probe' | 'missing_position_preview' | 'not_detectable_preview' | 'malformed_coordinate_probe' | 'non_selected_viewport_gate_probe' | 'rotation_fallback_probe' | 'selection_no_position_probe' | 'single_marker_motion_probe' | 'trajectory_coalesce_probe' | 'viewport_follow_probe' | 'google_envigado_swarm_preview' | 'two_marker_alignment_probe' | 'google_loop_preview';
18
18
  /**
19
19
  * Lightweight simulation descriptor used by the shared preset catalog.
20
20
  */
@@ -56,6 +56,7 @@ export declare enum RealTimeDummySimulationPresetId {
56
56
  SelectionNoPositionProbeCiFast = "selection_no_position_probe_ci_fast",
57
57
  SingleMarkerMotionProbeCiFast = "single_marker_motion_probe_ci_fast",
58
58
  SingleMarkerMotionProbeRealistic = "single_marker_motion_probe_realistic",
59
+ TrajectoryCoalesceProbeCiFast = "trajectory_coalesce_probe_ci_fast",
59
60
  ViewportFollowProbeCiFast = "viewport_follow_probe_ci_fast",
60
61
  ViewportFollowProbeRealistic = "viewport_follow_probe_realistic",
61
62
  GoogleEnvigadoSwarmFast = "google_envigado_swarm_fast",
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../packages/gclick-realtime/src/fixtures/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,sCAAsC;IACrD,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,IAAI,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,MAAM,MAAM,wCAAwC,GAChD,UAAU,GACV,OAAO,GACP,MAAM,GACN,WAAW,CAAC;AAEhB;;GAEG;AACH,MAAM,MAAM,8BAA8B,GACtC,oBAAoB,GACpB,kBAAkB,GAClB,mBAAmB,GACnB,uBAAuB,GACvB,0BAA0B,GAC1B,wBAAwB,GACxB,4BAA4B,GAC5B,kCAAkC,GAClC,yBAAyB,GACzB,6BAA6B,GAC7B,4BAA4B,GAC5B,uBAAuB,GACvB,+BAA+B,GAC/B,4BAA4B,GAC5B,qBAAqB,CAAC;AAE1B;;GAEG;AACH,MAAM,WAAW,8CAA8C;IAC7D,iBAAiB,EAAE,wCAAwC,CAAC;IAC5D,WAAW,EAAE,SAAS,8BAA8B,EAAE,CAAC;CACxD;AAED;;GAEG;AACH,MAAM,WAAW,iCAAiC;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,sCAAsC,CAAC;IACjD,UAAU,EAAE,8BAA8B,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,yCAAyC;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,+BAA+B,CAAC;IAC1C,UAAU,EAAE,8CAA8C,CAAC;CAC5D;AAED;;GAEG;AACH,oBAAY,+BAA+B;IACzC,gCAAgC,0CAA0C;IAC1E,2BAA2B,oCAAoC;IAC/D,8BAA8B,sCAAsC;IACpE,wBAAwB,kCAAkC;IAC1D,8BAA8B,uCAAuC;IACrE,qCAAqC,+CAA+C;IACpF,2BAA2B,oCAAoC;IAC/D,8BAA8B,sCAAsC;IACpE,8BAA8B,wCAAwC;IACtE,6BAA6B,uCAAuC;IACpE,gCAAgC,yCAAyC;IACzE,yBAAyB,kCAAkC;IAC3D,4BAA4B,oCAAoC;IAChE,uBAAuB,+BAA+B;IACtD,4BAA4B,oCAAoC;IAChE,wCAAwC,kDAAkD;IAC1F,6BAA6B,uCAAuC;IACpE,gCAAgC,yCAAyC;IACzE,qBAAqB,6BAA6B;IAClD,0BAA0B,kCAAkC;IAC5D,wBAAwB,gCAAgC;CACzD"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../packages/gclick-realtime/src/fixtures/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,sCAAsC;IACrD,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,IAAI,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,MAAM,MAAM,wCAAwC,GAChD,UAAU,GACV,OAAO,GACP,MAAM,GACN,WAAW,CAAC;AAEhB;;GAEG;AACH,MAAM,MAAM,8BAA8B,GACtC,oBAAoB,GACpB,kBAAkB,GAClB,mBAAmB,GACnB,uBAAuB,GACvB,0BAA0B,GAC1B,wBAAwB,GACxB,4BAA4B,GAC5B,kCAAkC,GAClC,yBAAyB,GACzB,6BAA6B,GAC7B,4BAA4B,GAC5B,2BAA2B,GAC3B,uBAAuB,GACvB,+BAA+B,GAC/B,4BAA4B,GAC5B,qBAAqB,CAAC;AAE1B;;GAEG;AACH,MAAM,WAAW,8CAA8C;IAC7D,iBAAiB,EAAE,wCAAwC,CAAC;IAC5D,WAAW,EAAE,SAAS,8BAA8B,EAAE,CAAC;CACxD;AAED;;GAEG;AACH,MAAM,WAAW,iCAAiC;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,sCAAsC,CAAC;IACjD,UAAU,EAAE,8BAA8B,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,yCAAyC;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,+BAA+B,CAAC;IAC1C,UAAU,EAAE,8CAA8C,CAAC;CAC5D;AAED;;GAEG;AACH,oBAAY,+BAA+B;IACzC,gCAAgC,0CAA0C;IAC1E,2BAA2B,oCAAoC;IAC/D,8BAA8B,sCAAsC;IACpE,wBAAwB,kCAAkC;IAC1D,8BAA8B,uCAAuC;IACrE,qCAAqC,+CAA+C;IACpF,2BAA2B,oCAAoC;IAC/D,8BAA8B,sCAAsC;IACpE,8BAA8B,wCAAwC;IACtE,6BAA6B,uCAAuC;IACpE,gCAAgC,yCAAyC;IACzE,6BAA6B,sCAAsC;IACnE,yBAAyB,kCAAkC;IAC3D,4BAA4B,oCAAoC;IAChE,uBAAuB,+BAA+B;IACtD,4BAA4B,oCAAoC;IAChE,wCAAwC,kDAAkD;IAC1F,6BAA6B,uCAAuC;IACpE,gCAAgC,yCAAyC;IACzE,qBAAqB,6BAA6B;IAClD,0BAA0B,kCAAkC;IAC5D,wBAAwB,gCAAgC;CACzD"}
package/fixtures/types.js CHANGED
@@ -1,4 +1,4 @@
1
- var _ = /* @__PURE__ */ ((o) => (o.BufferedPlaybackBurstProbeCiFast = "buffered_playback_burst_probe_ci_fast", o.BufferedPlaybackProbeCiFast = "buffered_playback_probe_ci_fast", o.BufferedPlaybackProbeRealistic = "buffered_playback_probe_realistic", o.LargeJumpSnapProbeCiFast = "large_jump_snap_probe_ci_fast", o.MalformedCoordinateProbeCiFast = "malformed_coordinate_probe_ci_fast", o.NonSelectedViewportGateProbeRealistic = "non_selected_viewport_gate_probe_realistic", o.RotationFallbackProbeCiFast = "rotation_fallback_probe_ci_fast", o.RotationFallbackProbeRealistic = "rotation_fallback_probe_realistic", o.SelectionNoPositionProbeCiFast = "selection_no_position_probe_ci_fast", o.SingleMarkerMotionProbeCiFast = "single_marker_motion_probe_ci_fast", o.SingleMarkerMotionProbeRealistic = "single_marker_motion_probe_realistic", o.ViewportFollowProbeCiFast = "viewport_follow_probe_ci_fast", o.ViewportFollowProbeRealistic = "viewport_follow_probe_realistic", o.GoogleEnvigadoSwarmFast = "google_envigado_swarm_fast", o.GoogleEnvigadoSwarmRealistic = "google_envigado_swarm_realistic", o.GoogleMultiZoneRotationFallbackRealistic = "google_multi_zone_rotation_fallback_realistic", o.TwoMarkerAlignmentProbeCiFast = "two_marker_alignment_probe_ci_fast", o.TwoMarkerAlignmentProbeRealistic = "two_marker_alignment_probe_realistic", o.GoogleLoopPreviewFast = "google_loop_preview_fast", o.GoogleLoopPreviewRealistic = "google_loop_preview_realistic", o.GoogleMultiZoneRealistic = "google_multi_zone_realistic", o))(_ || {});
1
+ var _ = /* @__PURE__ */ ((o) => (o.BufferedPlaybackBurstProbeCiFast = "buffered_playback_burst_probe_ci_fast", o.BufferedPlaybackProbeCiFast = "buffered_playback_probe_ci_fast", o.BufferedPlaybackProbeRealistic = "buffered_playback_probe_realistic", o.LargeJumpSnapProbeCiFast = "large_jump_snap_probe_ci_fast", o.MalformedCoordinateProbeCiFast = "malformed_coordinate_probe_ci_fast", o.NonSelectedViewportGateProbeRealistic = "non_selected_viewport_gate_probe_realistic", o.RotationFallbackProbeCiFast = "rotation_fallback_probe_ci_fast", o.RotationFallbackProbeRealistic = "rotation_fallback_probe_realistic", o.SelectionNoPositionProbeCiFast = "selection_no_position_probe_ci_fast", o.SingleMarkerMotionProbeCiFast = "single_marker_motion_probe_ci_fast", o.SingleMarkerMotionProbeRealistic = "single_marker_motion_probe_realistic", o.TrajectoryCoalesceProbeCiFast = "trajectory_coalesce_probe_ci_fast", o.ViewportFollowProbeCiFast = "viewport_follow_probe_ci_fast", o.ViewportFollowProbeRealistic = "viewport_follow_probe_realistic", o.GoogleEnvigadoSwarmFast = "google_envigado_swarm_fast", o.GoogleEnvigadoSwarmRealistic = "google_envigado_swarm_realistic", o.GoogleMultiZoneRotationFallbackRealistic = "google_multi_zone_rotation_fallback_realistic", o.TwoMarkerAlignmentProbeCiFast = "two_marker_alignment_probe_ci_fast", o.TwoMarkerAlignmentProbeRealistic = "two_marker_alignment_probe_realistic", o.GoogleLoopPreviewFast = "google_loop_preview_fast", o.GoogleLoopPreviewRealistic = "google_loop_preview_realistic", o.GoogleMultiZoneRealistic = "google_multi_zone_realistic", o))(_ || {});
2
2
  export {
3
3
  _ as RealTimeDummySimulationPresetId
4
4
  };
@@ -84,6 +84,7 @@ const e = {
84
84
  codePaths: [
85
85
  "apps/gclick/gclick_host/src/observability/host/runtimeErrors.ts",
86
86
  "packages/layouts/src/components/MFHostApp/MFHostAppErrorBoundary.tsx",
87
+ "packages/layouts/src/components/MFRuntimeErrorWrapper/MFRuntimeErrorWrapper.tsx",
87
88
  "apps/gclick/gclick_host/src/components/HostShellErrorBoundary/HostShellErrorBoundary.tsx"
88
89
  ],
89
90
  controlPlane: "always-on",
@@ -91,7 +92,8 @@ const e = {
91
92
  id: "gclickHostRuntimeBoundaryCrash",
92
93
  key: "gclick_host.runtime-errors.boundary-crash",
93
94
  notes: [
94
- "This family is intentionally always-on because React boundary crashes are rare fatal degradations that should remain countable in Grafana logs, not only in traces."
95
+ "This family is intentionally always-on because React boundary crashes are rare fatal degradations that should remain countable in Grafana logs, not only in traces.",
96
+ "Host-loaded MF wrapper boundaries reuse this family with `runtime.boundary_scope=wrapper` and a stable `runtime.wrapper_id` so support can group contained subtree crashes without a separate policy."
95
97
  ],
96
98
  owner: e,
97
99
  purpose: "Report contained host-shell and host-loaded MF boundary crashes as structured always-on diagnostic logs for dashboarding and alerting.",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@m4l/gclick-realtime",
3
- "version": "1.9.0",
3
+ "version": "1.10.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },