@trillboards/edge-sdk 0.2.98 → 0.2.101
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.
- package/deploy/systemd/install.sh +78 -0
- package/deploy/systemd/setup-litertlm.sh +17 -0
- package/dist/CloudSensingManager.d.ts +48 -0
- package/dist/CloudSensingManager.d.ts.map +1 -1
- package/dist/CloudSensingManager.js +101 -0
- package/dist/CloudSensingManager.js.map +1 -1
- package/dist/EdgeAgent.js +1 -1
- package/dist/EdgeAgent.js.map +1 -1
- package/dist/SceneChangeDetector.d.ts +48 -0
- package/dist/SceneChangeDetector.d.ts.map +1 -1
- package/dist/SceneChangeDetector.js +65 -6
- package/dist/SceneChangeDetector.js.map +1 -1
- package/dist/SensingProfileClient.d.ts +34 -0
- package/dist/SensingProfileClient.d.ts.map +1 -1
- package/dist/SensingProfileClient.js +33 -0
- package/dist/SensingProfileClient.js.map +1 -1
- package/dist/config.d.ts +26 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js.map +1 -1
- package/dist/deployedCadenceSource.d.ts +22 -0
- package/dist/deployedCadenceSource.d.ts.map +1 -1
- package/dist/deployedCadenceSource.js +36 -0
- package/dist/deployedCadenceSource.js.map +1 -1
- package/dist/detectorCascadeGate.d.ts +216 -0
- package/dist/detectorCascadeGate.d.ts.map +1 -0
- package/dist/detectorCascadeGate.js +84 -0
- package/dist/detectorCascadeGate.js.map +1 -0
- package/dist/diagnose.d.ts +1 -1
- package/dist/diagnose.d.ts.map +1 -1
- package/dist/diagnose.js +1 -1
- package/dist/diagnose.js.map +1 -1
- package/dist/sensingCatchRate.d.ts +156 -8
- package/dist/sensingCatchRate.d.ts.map +1 -1
- package/dist/sensingCatchRate.js +165 -7
- package/dist/sensingCatchRate.js.map +1 -1
- package/dist/sensingRunMode.d.ts.map +1 -1
- package/dist/sensingRunMode.js +77 -2
- package/dist/sensingRunMode.js.map +1 -1
- package/package.json +2 -2
|
@@ -53,6 +53,84 @@ sudo -u trillboards HOME=/opt/trillboards bash \
|
|
|
53
53
|
*** itself as 'waiting for the on-device model' until it does — it will NOT
|
|
54
54
|
*** fall back to paid cloud inference. Re-run install.sh to retry."
|
|
55
55
|
|
|
56
|
+
# START IT HERE, THEN LET THE PROVISIONER VERIFY — in that order, and the order
|
|
57
|
+
# is the whole fix.
|
|
58
|
+
#
|
|
59
|
+
# `systemctl enable` above only enables; it does NOT start. The provisioner runs
|
|
60
|
+
# as the unprivileged `trillboards` service user (nologin, no sudoers entry:
|
|
61
|
+
# `sudo -n` returns "a password is required"), so `restart_litertlm_serve`
|
|
62
|
+
# cannot start the unit either — it logs a WARN and continues.
|
|
63
|
+
#
|
|
64
|
+
# That matters because `setup-litertlm.sh` writes `vision_backend=gpu` and then
|
|
65
|
+
# VERIFIES it with one real image inference, falling back to the CPU encoder
|
|
66
|
+
# only when the delegate does not apply. The cascade is gated on the serve being
|
|
67
|
+
# up. With the serve dead it is SKIPPED, and the box keeps an unverified `gpu`
|
|
68
|
+
# that survives the reboot which finally starts the enabled unit:
|
|
69
|
+
#
|
|
70
|
+
# GET /v1/models -> 200, lists the model
|
|
71
|
+
# POST /v1/chat/completions with an image -> 500 Failed to create conversation
|
|
72
|
+
#
|
|
73
|
+
# every frame, forever, with every health signal green. Measured on two fresh
|
|
74
|
+
# boxes, two zones, two machine families (c4-standard-8 us-central1-a,
|
|
75
|
+
# n2-standard-8 us-central1-b).
|
|
76
|
+
#
|
|
77
|
+
# STARTING IT IS NOT ENOUGH ON ITS OWN. The first provisioner pass has already
|
|
78
|
+
# run by then, so its fallback has already reset `vision_backend` to CPU — and a
|
|
79
|
+
# `--now` alone would start that CPU config and never revisit it, costing every
|
|
80
|
+
# Linux box the GPU vision encoder (measured: image encode 0.804 s -> 0.175 s
|
|
81
|
+
# p50, 76% of a SOP frame). Trading a broken box for a permanently slow one is
|
|
82
|
+
# not a fix.
|
|
83
|
+
#
|
|
84
|
+
# So: start the unit, then run the provisioner a SECOND time. The second pass is
|
|
85
|
+
# cheap and idempotent — it finds the pinned CLI healthy and keeps the current
|
|
86
|
+
# install ("litert-lm CLI is healthy at pinned 0.16.0 — keeping current
|
|
87
|
+
# install"), no 2.4 GB re-download — but this time the serve is up, so the
|
|
88
|
+
# verification cascade actually runs and decides GPU-vs-CPU on evidence.
|
|
89
|
+
sudo systemctl enable --now trillboards-litertlm \
|
|
90
|
+
|| echo " *** The LiteRT-LM unit did not start. The connector will report itself as
|
|
91
|
+
*** 'waiting for the on-device model'. Check: sudo systemctl status trillboards-litertlm"
|
|
92
|
+
|
|
93
|
+
# The verification pass. Idempotent; the serve is up now, so the GPU probe runs.
|
|
94
|
+
VERIFY_OK=1
|
|
95
|
+
sudo -u trillboards HOME=/opt/trillboards bash \
|
|
96
|
+
node_modules/@trillboards/edge-sdk/deploy/systemd/setup-litertlm.sh \
|
|
97
|
+
|| { VERIFY_OK=0; echo " *** Vision-backend verification did not finish. The connector still runs;
|
|
98
|
+
*** re-run install.sh to retry."; }
|
|
99
|
+
|
|
100
|
+
# APPLY WHAT THE VERIFICATION DECIDED. The pass above can DECIDE but it cannot
|
|
101
|
+
# ACT: `write_litertlm_config` succeeds as the `trillboards` user, and the
|
|
102
|
+
# `restart_litertlm_serve` that would make the process re-read it does not —
|
|
103
|
+
# same nologin / no-sudoers reason as the start. Measured on a fresh box, the
|
|
104
|
+
# verification pass logs exactly this and then leaves the running engine on the
|
|
105
|
+
# old backend:
|
|
106
|
+
#
|
|
107
|
+
# WARN: GPU vision encoder did not answer a probe inference - falling back to
|
|
108
|
+
# the CPU encoder
|
|
109
|
+
# WARN: could not restart trillboards-litertlm
|
|
110
|
+
# local AI healthy on the CPU vision encoder (slower, but serving)
|
|
111
|
+
# -> config on disk says CPU, the loaded engine is still GPU, and a real image
|
|
112
|
+
# call still returns 500 Failed to create conversation
|
|
113
|
+
#
|
|
114
|
+
# A config the process never re-read is a decision nobody acted on. So the whole
|
|
115
|
+
# sequence needs THREE root actions around one unprivileged provisioner: START
|
|
116
|
+
# it (so the probe can run), let it VERIFY, then RESTART it (so the verdict is
|
|
117
|
+
# loaded). install.sh holds root at each point; the provisioner holds it at none.
|
|
118
|
+
# ONLY WHEN THE VERIFICATION ACTUALLY SUCCEEDED. If that pass exited nonzero —
|
|
119
|
+
# `uv tool install --force` failing while repairing a drifted install is the
|
|
120
|
+
# realistic case — there is no verdict to apply, and on an UPGRADE the old
|
|
121
|
+
# in-memory engine is still serving. Restarting into a half-installed state
|
|
122
|
+
# turns a degraded-but-serving box into a dead one, which is a worse outcome
|
|
123
|
+
# than the bug this whole change fixes.
|
|
124
|
+
if [ "$VERIFY_OK" -eq 1 ]; then
|
|
125
|
+
sudo systemctl restart trillboards-litertlm \
|
|
126
|
+
|| echo " *** Could not restart LiteRT-LM to apply the verified vision backend.
|
|
127
|
+
*** Run: sudo systemctl restart trillboards-litertlm"
|
|
128
|
+
else
|
|
129
|
+
echo " *** Skipping the LiteRT-LM restart: verification did not complete, so there is
|
|
130
|
+
*** no verified backend to apply and the running engine is left as it is."
|
|
131
|
+
fi
|
|
132
|
+
|
|
133
|
+
|
|
56
134
|
# The on-device OBJECT DETECTOR cascade gate (RF-DETR, 127.0.0.1:9380). Its own
|
|
57
135
|
# uv tool, its own venv, its own unit — never a package added into litert-lm's,
|
|
58
136
|
# which `uv tool install --force` rebuilds from scratch on any drift.
|
|
@@ -399,6 +399,23 @@ if [ "$HEALTHY" -eq 1 ]; then
|
|
|
399
399
|
fi
|
|
400
400
|
|
|
401
401
|
if [ "$HEALTHY" -ne 1 ]; then
|
|
402
|
+
# AN UNVERIFIED OPTIMISM MUST NOT BE LEFT ON DISK.
|
|
403
|
+
#
|
|
404
|
+
# We wrote `vision_backend=gpu` above and the cascade that checks it never got
|
|
405
|
+
# to run, because it is gated on a serve that did not come up. The config then
|
|
406
|
+
# OUTLIVES this install: the unit is enabled, so the next boot starts it on a
|
|
407
|
+
# backend nobody confirmed, and if the delegate does not apply every image call
|
|
408
|
+
# 500s with `Failed to create conversation` while `/v1/models` keeps answering
|
|
409
|
+
# 200. Measured on two fresh boxes, two zones, two machine families.
|
|
410
|
+
#
|
|
411
|
+
# So fall back to the CPU default HERE. It is the slower encoder and it always
|
|
412
|
+
# works, which is the right trade for a value we could not check: a box that is
|
|
413
|
+
# slow is a box that is serving, and `setup-litertlm.sh` re-runs on every
|
|
414
|
+
# install.sh, which will promote it to GPU the moment it can prove GPU works.
|
|
415
|
+
write_litertlm_config "" \
|
|
416
|
+
|| log "WARN: could not rewrite $CONFIG_JSON to the CPU default"
|
|
417
|
+
log "vision_backend left UNVERIFIED, so it was reset to the CPU encoder"
|
|
418
|
+
|
|
402
419
|
# NOT fatal. auto-sense waits and beacons, so an install that gets this far
|
|
403
420
|
# with the model on disk recovers by itself once the serve comes up.
|
|
404
421
|
log "WARN: Gemma is installed but the serve did not answer yet; auto-sense will"
|
|
@@ -10,6 +10,7 @@ import { type MotionGateOptions, type MotionGateReason } from './SceneChangeDete
|
|
|
10
10
|
import { type VlmCandidateBufferOptions, type VlmCandidateBufferStats } from './VlmCandidateBuffer';
|
|
11
11
|
import { type DurableVlmCandidateSpoolOptions } from './DurableVlmCandidateSpool';
|
|
12
12
|
import { DetectorShadowProbe, type DetectorShadowStats } from './DetectorShadowProbe';
|
|
13
|
+
import { type CascadeGateStats } from './detectorCascadeGate';
|
|
13
14
|
import type { DeployedCadence } from './deployedCadence';
|
|
14
15
|
import { type CaptureMode } from './connectorCadence';
|
|
15
16
|
import type { LiteRtAccelerator, LiteRtAcceleratorHealth } from './LiteRtVlmProvider';
|
|
@@ -410,6 +411,14 @@ export declare class CloudSensingManager extends EventEmitter {
|
|
|
410
411
|
* existed, which is the property the existing suites assert by not changing.
|
|
411
412
|
*/
|
|
412
413
|
private readonly detectorShadow;
|
|
414
|
+
/**
|
|
415
|
+
* What the ARMED gate actually did, connector-wide.
|
|
416
|
+
*
|
|
417
|
+
* Connector-wide and not per feed because the question it answers is "is this
|
|
418
|
+
* box suppressing anything, and why" — a support question about the machine.
|
|
419
|
+
* The per-feed suppression counts live on `LoopState` for the health beacon.
|
|
420
|
+
*/
|
|
421
|
+
private readonly cascadeGateStats;
|
|
413
422
|
private readonly motionDrivesCadence;
|
|
414
423
|
/** Retained so a cadence change can rebuild each feed's gate heartbeat. */
|
|
415
424
|
private readonly audioSensingOptions;
|
|
@@ -697,12 +706,29 @@ export declare class CloudSensingManager extends EventEmitter {
|
|
|
697
706
|
* wedged".
|
|
698
707
|
*/
|
|
699
708
|
detectorShadow: DetectorShadowStats;
|
|
709
|
+
/**
|
|
710
|
+
* What the ARMED gate did. `suppressed` is the only number that represents
|
|
711
|
+
* work NOT done; every other counter is an admission and therefore a frame
|
|
712
|
+
* that reached the model exactly as it would have before this shipped.
|
|
713
|
+
*
|
|
714
|
+
* Read `admittedUnavailable` beside `suppressed`: a box with both high is a
|
|
715
|
+
* box whose detector is flapping, and the suppressions it did make were
|
|
716
|
+
* decided by a service that is not reliably answering.
|
|
717
|
+
*/
|
|
718
|
+
detectorCascade: CascadeGateStats;
|
|
700
719
|
perFeed: Array<{
|
|
701
720
|
name: string;
|
|
702
721
|
captures: number;
|
|
703
722
|
analyses: number;
|
|
704
723
|
admissionDenied: number;
|
|
705
724
|
motionSkipped: number;
|
|
725
|
+
/**
|
|
726
|
+
* Frames the ARMED cascade removed this run. 0 on every connector whose
|
|
727
|
+
* screens are not armed, which is the fleet default.
|
|
728
|
+
*/
|
|
729
|
+
cascadeSuppressed: number;
|
|
730
|
+
/** Whether the armed gate is live on THIS feed. Per screen, server-decided. */
|
|
731
|
+
cascadeArmed: boolean;
|
|
706
732
|
/**
|
|
707
733
|
* Uploads the SERVER rejected this run. Present because a rejected feed is
|
|
708
734
|
* otherwise indistinguishable from a quiet one: `analyses` simply stops
|
|
@@ -758,6 +784,28 @@ export declare class CloudSensingManager extends EventEmitter {
|
|
|
758
784
|
}>;
|
|
759
785
|
/** Stop all loops and close cameras. */
|
|
760
786
|
stop(): Promise<void>;
|
|
787
|
+
/**
|
|
788
|
+
* Arm or disarm the detector cascade for ONE feed.
|
|
789
|
+
*
|
|
790
|
+
* Per feed because arming is per SCREEN, and one connector runs N screens: a
|
|
791
|
+
* bay camera watching for a forklift and a corridor camera watching for
|
|
792
|
+
* people share a box and cannot share this answer. Driven by the
|
|
793
|
+
* sensing-profile poll, which is the only channel that knows the operator's
|
|
794
|
+
* routes.
|
|
795
|
+
*
|
|
796
|
+
* Returns false for an unknown feed name rather than throwing: this is called
|
|
797
|
+
* from a best-effort background refresh, and a profile that names a camera
|
|
798
|
+
* this connector no longer runs must not take the poll down.
|
|
799
|
+
*
|
|
800
|
+
* NOTE the asymmetry, and that it is deliberate — DISARMING takes effect on
|
|
801
|
+
* the next frame, and so does arming, but only arming needs a server to say
|
|
802
|
+
* so. A connector that loses the API keeps whatever it last heard for the
|
|
803
|
+
* feeds it already has, and every NEW feed starts disarmed. There is no path
|
|
804
|
+
* by which silence turns suppression ON.
|
|
805
|
+
*/
|
|
806
|
+
setCascadeArmed(loopName: string, armed: boolean): boolean;
|
|
807
|
+
/** Whether the armed gate is live on a feed. `false` for an unknown feed. */
|
|
808
|
+
isCascadeArmed(loopName: string): boolean;
|
|
761
809
|
/**
|
|
762
810
|
* Notify a loop (by feed name) that its face-detection state changed —
|
|
763
811
|
* switches that loop between the periodic and face-triggered cadence.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CloudSensingManager.d.ts","sourceRoot":"","sources":["../src/CloudSensingManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CloudSensingManager.d.ts","sourceRoot":"","sources":["../src/CloudSensingManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,7 @@ const SceneChangeDetector_1 = require("./SceneChangeDetector");
|
|
|
16
16
|
const VlmCandidateBuffer_1 = require("./VlmCandidateBuffer");
|
|
17
17
|
const DurableVlmCandidateSpool_1 = require("./DurableVlmCandidateSpool");
|
|
18
18
|
const DetectorShadowProbe_1 = require("./DetectorShadowProbe");
|
|
19
|
+
const detectorCascadeGate_1 = require("./detectorCascadeGate");
|
|
19
20
|
const connectorCadence_1 = require("./connectorCadence");
|
|
20
21
|
/**
|
|
21
22
|
* Thin cloud-sensing run mode.
|
|
@@ -265,6 +266,14 @@ class CloudSensingManager extends events_1.EventEmitter {
|
|
|
265
266
|
this.localNetworkVerdict = null;
|
|
266
267
|
this.localNetworkProbeInFlight = false;
|
|
267
268
|
this.candidatePumpTimer = null;
|
|
269
|
+
/**
|
|
270
|
+
* What the ARMED gate actually did, connector-wide.
|
|
271
|
+
*
|
|
272
|
+
* Connector-wide and not per feed because the question it answers is "is this
|
|
273
|
+
* box suppressing anything, and why" — a support question about the machine.
|
|
274
|
+
* The per-feed suppression counts live on `LoopState` for the health beacon.
|
|
275
|
+
*/
|
|
276
|
+
this.cascadeGateStats = { ...detectorCascadeGate_1.EMPTY_CASCADE_GATE_STATS };
|
|
268
277
|
/** Live audio attachments, keyed by feed name. Empty unless audio is enabled. */
|
|
269
278
|
this.audioAttachments = [];
|
|
270
279
|
this.motionGateOptions = null;
|
|
@@ -325,6 +334,12 @@ class CloudSensingManager extends events_1.EventEmitter {
|
|
|
325
334
|
lastCaptureAtMs: null,
|
|
326
335
|
lastHealthReportAtMs: null,
|
|
327
336
|
lastSensingState: null,
|
|
337
|
+
// Never armed at construction. Arming is a server decision this connector
|
|
338
|
+
// has not heard yet, and defaulting to `true` anywhere would make a
|
|
339
|
+
// connector that cannot reach the API suppress on a stale belief.
|
|
340
|
+
cascadeArmed: false,
|
|
341
|
+
cascadeSuppressedCount: 0,
|
|
342
|
+
runCascadeSuppressed: 0,
|
|
328
343
|
}));
|
|
329
344
|
this.periodicIntervalMs = options.periodicIntervalMs ?? DEFAULT_PERIODIC_MS;
|
|
330
345
|
this.faceTriggeredIntervalMs = options.faceTriggeredIntervalMs ?? DEFAULT_FACE_MS;
|
|
@@ -704,6 +719,7 @@ class CloudSensingManager extends events_1.EventEmitter {
|
|
|
704
719
|
},
|
|
705
720
|
accelerator: foldAcceleratorHealth(this.loops.map((s) => acceleratorHealthFor(s)).filter((a) => a !== null)),
|
|
706
721
|
detectorShadow: this.detectorShadow?.getStats() ?? EMPTY_DETECTOR_SHADOW_STATS,
|
|
722
|
+
detectorCascade: { ...this.cascadeGateStats },
|
|
707
723
|
perFeed: this.loops.map((s, i) => ({
|
|
708
724
|
name: s.deps.name,
|
|
709
725
|
captures: s.captureCount,
|
|
@@ -712,6 +728,8 @@ class CloudSensingManager extends events_1.EventEmitter {
|
|
|
712
728
|
rejected: s.runPostRejected,
|
|
713
729
|
admissionDenied: s.runAdmissionDenied,
|
|
714
730
|
motionSkipped: s.runMotionSkipped,
|
|
731
|
+
cascadeSuppressed: s.runCascadeSuppressed,
|
|
732
|
+
cascadeArmed: s.cascadeArmed,
|
|
715
733
|
motionSkippedByReason: gateStats[i]
|
|
716
734
|
? { ...emptyMotionReasonCounts(), ...gateStats[i].byReason }
|
|
717
735
|
: emptyMotionReasonCounts(),
|
|
@@ -747,6 +765,7 @@ class CloudSensingManager extends events_1.EventEmitter {
|
|
|
747
765
|
s.runPostRejected = 0;
|
|
748
766
|
s.runAdmissionDenied = 0;
|
|
749
767
|
s.runMotionSkipped = 0;
|
|
768
|
+
s.runCascadeSuppressed = 0;
|
|
750
769
|
void this.startLoop(s, generation).catch((err) => this.emitLoopError(s, err));
|
|
751
770
|
}
|
|
752
771
|
// Acoustic sensing, when the operator has turned it on. Attaching is
|
|
@@ -881,6 +900,39 @@ class CloudSensingManager extends events_1.EventEmitter {
|
|
|
881
900
|
}
|
|
882
901
|
}
|
|
883
902
|
}
|
|
903
|
+
/**
|
|
904
|
+
* Arm or disarm the detector cascade for ONE feed.
|
|
905
|
+
*
|
|
906
|
+
* Per feed because arming is per SCREEN, and one connector runs N screens: a
|
|
907
|
+
* bay camera watching for a forklift and a corridor camera watching for
|
|
908
|
+
* people share a box and cannot share this answer. Driven by the
|
|
909
|
+
* sensing-profile poll, which is the only channel that knows the operator's
|
|
910
|
+
* routes.
|
|
911
|
+
*
|
|
912
|
+
* Returns false for an unknown feed name rather than throwing: this is called
|
|
913
|
+
* from a best-effort background refresh, and a profile that names a camera
|
|
914
|
+
* this connector no longer runs must not take the poll down.
|
|
915
|
+
*
|
|
916
|
+
* NOTE the asymmetry, and that it is deliberate — DISARMING takes effect on
|
|
917
|
+
* the next frame, and so does arming, but only arming needs a server to say
|
|
918
|
+
* so. A connector that loses the API keeps whatever it last heard for the
|
|
919
|
+
* feeds it already has, and every NEW feed starts disarmed. There is no path
|
|
920
|
+
* by which silence turns suppression ON.
|
|
921
|
+
*/
|
|
922
|
+
setCascadeArmed(loopName, armed) {
|
|
923
|
+
const s = this.loops.find((l) => l.deps.name === loopName);
|
|
924
|
+
if (!s)
|
|
925
|
+
return false;
|
|
926
|
+
if (s.cascadeArmed === armed)
|
|
927
|
+
return true;
|
|
928
|
+
s.cascadeArmed = armed;
|
|
929
|
+
this.emit('cascadeArmChanged', { name: s.deps.name, armed });
|
|
930
|
+
return true;
|
|
931
|
+
}
|
|
932
|
+
/** Whether the armed gate is live on a feed. `false` for an unknown feed. */
|
|
933
|
+
isCascadeArmed(loopName) {
|
|
934
|
+
return this.loops.find((l) => l.deps.name === loopName)?.cascadeArmed ?? false;
|
|
935
|
+
}
|
|
884
936
|
/**
|
|
885
937
|
* Notify a loop (by feed name) that its face-detection state changed —
|
|
886
938
|
* switches that loop between the periodic and face-triggered cadence.
|
|
@@ -1518,6 +1570,55 @@ class CloudSensingManager extends events_1.EventEmitter {
|
|
|
1518
1570
|
const detectorShadow = shadowObservation
|
|
1519
1571
|
? DetectorShadowProbe_1.DetectorShadowProbe.toWire(shadowObservation)
|
|
1520
1572
|
: undefined;
|
|
1573
|
+
// ── THE ARMED GATE ──────────────────────────────────────────────────────
|
|
1574
|
+
//
|
|
1575
|
+
// The one place a detector verdict is allowed to remove a VLM call. It sits
|
|
1576
|
+
// between the shadow reading and `tryAcquire` because that is where the
|
|
1577
|
+
// saving is: a suppressed frame costs no admission slot, no inference and
|
|
1578
|
+
// no upload. See `detectorCascadeGate.ts` for why five of its six rules
|
|
1579
|
+
// admit, and why the ONLY suppressible reason is `motion`: a heartbeat is a
|
|
1580
|
+
// promise about TIME rather than about content, and suppressing one is an
|
|
1581
|
+
// absorbing state that takes the whole feed dark.
|
|
1582
|
+
//
|
|
1583
|
+
// `armed` is per FEED and server-decided. A connector cannot see
|
|
1584
|
+
// `sensing_routes`, so it cannot know whether this screen's operator is
|
|
1585
|
+
// watching for a forklift, a spill or a fire — none of which a PERSON
|
|
1586
|
+
// detector can vouch for. Deciding that here would be guessing about
|
|
1587
|
+
// whether somebody's fire alarm still works.
|
|
1588
|
+
const cascade = (0, detectorCascadeGate_1.decideCascadeGate)({
|
|
1589
|
+
armed: s.cascadeArmed,
|
|
1590
|
+
verdict: shadowObservation ? shadowObservation.verdict : null,
|
|
1591
|
+
motion: verdict,
|
|
1592
|
+
});
|
|
1593
|
+
(0, detectorCascadeGate_1.foldCascadeGateStats)(this.cascadeGateStats, cascade);
|
|
1594
|
+
if (cascade.outcome === 'suppress') {
|
|
1595
|
+
s.cascadeSuppressedCount++;
|
|
1596
|
+
s.runCascadeSuppressed++;
|
|
1597
|
+
// Advance the MOTION throttle — and only it. Without this the feed is
|
|
1598
|
+
// pathological rather than cheap: `markAnalyzed()` never fires on a
|
|
1599
|
+
// suppressed frame, so the 30 s motion floor expires and never re-arms,
|
|
1600
|
+
// every 500 ms look then returns `analyze: true`, and the shadow probe's
|
|
1601
|
+
// own 15 s per-feed bound answers one of them and lets the other ~29
|
|
1602
|
+
// through as `no_reading` — which ADMIT. Arming would increase analyses.
|
|
1603
|
+
// `markSuppressed` deliberately does NOT touch the heartbeat clock or the
|
|
1604
|
+
// stationary baseline; see its docblock for why those want the opposite
|
|
1605
|
+
// answer about the same event.
|
|
1606
|
+
s.motionGate?.markSuppressed();
|
|
1607
|
+
// Reported as its OWN state, never as an analysis. A suppression that
|
|
1608
|
+
// rendered as "analyzing" would be the runtime-edge-cases defect wearing
|
|
1609
|
+
// a new face: the portal's "AI active" tile would stay green on a
|
|
1610
|
+
// connector that had stopped looking at anything. The frame is NOT
|
|
1611
|
+
// offered to the candidate buffer either — holding a frame we decided not
|
|
1612
|
+
// to analyze would spend a slot later on the same decision.
|
|
1613
|
+
this.emit('cascadeSuppressed', {
|
|
1614
|
+
name: s.deps.name,
|
|
1615
|
+
reason: cascade.reason,
|
|
1616
|
+
motionReason: verdict.reason,
|
|
1617
|
+
minConfidence: shadowObservation ? shadowObservation.minConfidence : null,
|
|
1618
|
+
});
|
|
1619
|
+
this.reportCameraOpen(s, { sensingState: this.idleSensingState() });
|
|
1620
|
+
return null;
|
|
1621
|
+
}
|
|
1521
1622
|
const ticket = this.admissionGate.tryAcquire(s.deps.name);
|
|
1522
1623
|
if (!ticket) {
|
|
1523
1624
|
s.admissionDeniedCount++;
|