@trillboards/edge-sdk 0.2.138 → 0.2.150
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/README.md +2 -2
- package/deploy/detector/pyproject.toml +20 -2
- package/deploy/detector/tests/test_execution.py +124 -0
- package/deploy/detector/tests/test_model_identity.py +80 -0
- package/deploy/detector/tests/test_registry.py +18 -0
- package/deploy/detector/tests/test_server.py +3 -1
- package/deploy/detector/tests/test_version_stamp.py +4 -1
- package/deploy/detector/trillboards_detector/_version.py +2 -2
- package/deploy/detector/trillboards_detector/cli.py +3 -0
- package/deploy/detector/trillboards_detector/detections.py +7 -0
- package/deploy/detector/trillboards_detector/errors.py +4 -0
- package/deploy/detector/trillboards_detector/execution.py +109 -0
- package/deploy/detector/trillboards_detector/loader.py +6 -3
- package/deploy/detector/trillboards_detector/registry.py +27 -5
- package/deploy/detector/trillboards_detector/server.py +29 -2
- package/deploy/detector/trillboards_detector/session.py +15 -3
- package/deploy/litertlm/test_trillboards_litertlm_shim.py +81 -0
- package/deploy/litertlm/test_verify_model_proof.py +30 -0
- package/deploy/litertlm/trillboards_litertlm_shim.py +150 -1
- package/deploy/litertlm/verify_model_proof.py +30 -0
- package/deploy/macos/TrillboardsSetupApp.m +131 -3
- package/deploy/macos/build-macos-pkg.sh +13 -10
- package/deploy/macos/scripts/setup-detector.sh +2 -2
- package/deploy/macos/scripts/setup-litertlm.sh +66 -30
- package/deploy/macos/test-setup-litertlm-reinstall.sh +57 -4
- package/deploy/setup-guidance.json +112 -0
- package/deploy/systemd/setup-detector.sh +2 -2
- package/deploy/systemd/setup-litertlm.sh +51 -27
- package/deploy/windows/build-windows.ps1 +11 -6
- package/deploy/windows/bundle-windows-installer.ps1 +3 -3
- package/deploy/windows/e2e/test-local-sense.ps1 +6 -5
- package/deploy/windows/install-update.ps1 +52 -9
- package/deploy/windows/set-executable-icon.ps1 +24 -5
- package/deploy/windows/setup-detector.ps1 +142 -4
- package/deploy/windows/setup-litertlm.ps1 +53 -10
- package/deploy/windows/trillboards-setup.ps1 +101 -2
- package/dist/AudienceAnalyzeClient.d.ts +10 -0
- package/dist/AudienceAnalyzeClient.d.ts.map +1 -1
- package/dist/AudienceAnalyzeClient.js +5 -4
- package/dist/AudienceAnalyzeClient.js.map +1 -1
- package/dist/CloudSensingManager.d.ts +38 -1
- package/dist/CloudSensingManager.d.ts.map +1 -1
- package/dist/CloudSensingManager.js +403 -25
- package/dist/CloudSensingManager.js.map +1 -1
- package/dist/DetectorFieldProducer.d.ts +5 -1
- package/dist/DetectorFieldProducer.d.ts.map +1 -1
- package/dist/DetectorFieldProducer.js +8 -1
- package/dist/DetectorFieldProducer.js.map +1 -1
- package/dist/DurableVlmCandidateSpool.d.ts +83 -2
- package/dist/DurableVlmCandidateSpool.d.ts.map +1 -1
- package/dist/DurableVlmCandidateSpool.js +596 -30
- package/dist/DurableVlmCandidateSpool.js.map +1 -1
- package/dist/EdgeAgent.js +1 -1
- package/dist/FrameGroupingShadow.d.ts +51 -0
- package/dist/FrameGroupingShadow.d.ts.map +1 -0
- package/dist/FrameGroupingShadow.js +158 -0
- package/dist/FrameGroupingShadow.js.map +1 -0
- package/dist/ImageClassifierFieldProducer.d.ts +36 -0
- package/dist/ImageClassifierFieldProducer.d.ts.map +1 -0
- package/dist/ImageClassifierFieldProducer.js +150 -0
- package/dist/ImageClassifierFieldProducer.js.map +1 -0
- package/dist/LiteRtVlmProvider.d.ts +5 -0
- package/dist/LiteRtVlmProvider.d.ts.map +1 -1
- package/dist/LiteRtVlmProvider.js +72 -7
- package/dist/LiteRtVlmProvider.js.map +1 -1
- package/dist/LocalDetectorClient.d.ts +6 -0
- package/dist/LocalDetectorClient.d.ts.map +1 -1
- package/dist/LocalDetectorClient.js +8 -0
- package/dist/LocalDetectorClient.js.map +1 -1
- package/dist/OrderedFrameReview.d.ts +57 -0
- package/dist/OrderedFrameReview.d.ts.map +1 -0
- package/dist/OrderedFrameReview.js +121 -0
- package/dist/OrderedFrameReview.js.map +1 -0
- package/dist/OrderedReviewClient.d.ts +38 -0
- package/dist/OrderedReviewClient.d.ts.map +1 -0
- package/dist/OrderedReviewClient.js +121 -0
- package/dist/OrderedReviewClient.js.map +1 -0
- package/dist/OrderedSequenceStore.d.ts +69 -0
- package/dist/OrderedSequenceStore.d.ts.map +1 -0
- package/dist/OrderedSequenceStore.js +257 -0
- package/dist/OrderedSequenceStore.js.map +1 -0
- package/dist/ProfileReviewWork.d.ts +68 -0
- package/dist/ProfileReviewWork.d.ts.map +1 -0
- package/dist/ProfileReviewWork.js +150 -0
- package/dist/ProfileReviewWork.js.map +1 -0
- package/dist/RetainedFieldContract.d.ts +21 -0
- package/dist/RetainedFieldContract.d.ts.map +1 -0
- package/dist/RetainedFieldContract.js +92 -0
- package/dist/RetainedFieldContract.js.map +1 -0
- package/dist/ReviewModelUse.d.ts +7 -0
- package/dist/ReviewModelUse.d.ts.map +1 -0
- package/dist/ReviewModelUse.js +30 -0
- package/dist/ReviewModelUse.js.map +1 -0
- package/dist/ReviewPriority.d.ts +12 -0
- package/dist/ReviewPriority.d.ts.map +1 -0
- package/dist/ReviewPriority.js +45 -0
- package/dist/ReviewPriority.js.map +1 -0
- package/dist/RuntimeModelSelection.d.ts +10 -0
- package/dist/RuntimeModelSelection.d.ts.map +1 -0
- package/dist/RuntimeModelSelection.js +58 -0
- package/dist/RuntimeModelSelection.js.map +1 -0
- package/dist/SceneChangeDetector.d.ts +1 -1
- package/dist/SceneChangeDetector.d.ts.map +1 -1
- package/dist/SceneChangeDetector.js +18 -6
- package/dist/SceneChangeDetector.js.map +1 -1
- package/dist/ScopedVlmReview.d.ts +76 -0
- package/dist/ScopedVlmReview.d.ts.map +1 -0
- package/dist/ScopedVlmReview.js +267 -0
- package/dist/ScopedVlmReview.js.map +1 -0
- package/dist/SensingProfileClient.d.ts +50 -0
- package/dist/SensingProfileClient.d.ts.map +1 -1
- package/dist/SensingProfileClient.js +58 -2
- package/dist/SensingProfileClient.js.map +1 -1
- package/dist/TemporalReviewClient.d.ts +43 -0
- package/dist/TemporalReviewClient.d.ts.map +1 -0
- package/dist/TemporalReviewClient.js +117 -0
- package/dist/TemporalReviewClient.js.map +1 -0
- package/dist/TemporalReviewJournal.d.ts +91 -0
- package/dist/TemporalReviewJournal.d.ts.map +1 -0
- package/dist/TemporalReviewJournal.js +337 -0
- package/dist/TemporalReviewJournal.js.map +1 -0
- package/dist/UrgentReviewTriage.d.ts +35 -0
- package/dist/UrgentReviewTriage.d.ts.map +1 -0
- package/dist/UrgentReviewTriage.js +52 -0
- package/dist/UrgentReviewTriage.js.map +1 -0
- package/dist/VideoSegmentUploader.d.ts +293 -0
- package/dist/VideoSegmentUploader.d.ts.map +1 -0
- package/dist/VideoSegmentUploader.js +1002 -0
- package/dist/VideoSegmentUploader.js.map +1 -0
- package/dist/VlmCandidateBuffer.d.ts +19 -0
- package/dist/VlmCandidateBuffer.d.ts.map +1 -1
- package/dist/VlmCandidateBuffer.js.map +1 -1
- package/dist/autoSense.d.ts +2 -2
- package/dist/autoSense.d.ts.map +1 -1
- package/dist/autoSense.js +16 -11
- package/dist/autoSense.js.map +1 -1
- package/dist/cli.js +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +2 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js.map +1 -1
- package/dist/continuousReview.d.ts +71 -0
- package/dist/continuousReview.d.ts.map +1 -0
- package/dist/continuousReview.js +53 -0
- package/dist/continuousReview.js.map +1 -0
- package/dist/detectorCountReview.d.ts +9 -0
- package/dist/detectorCountReview.d.ts.map +1 -0
- package/dist/detectorCountReview.js +79 -0
- package/dist/detectorCountReview.js.map +1 -0
- package/dist/diagnose.d.ts +1 -1
- package/dist/diagnose.js +1 -1
- package/dist/installerOnboardingMode.d.ts.map +1 -1
- package/dist/installerOnboardingMode.js +5 -3
- package/dist/installerOnboardingMode.js.map +1 -1
- package/dist/localInferenceSchema.d.ts +8 -0
- package/dist/localInferenceSchema.d.ts.map +1 -1
- package/dist/localInferenceSchema.js +3 -3
- package/dist/localInferenceSchema.js.map +1 -1
- package/dist/localSenseE2eHarness.d.ts +12 -0
- package/dist/localSenseE2eHarness.d.ts.map +1 -1
- package/dist/localSenseE2eHarness.js +77 -4
- package/dist/localSenseE2eHarness.js.map +1 -1
- package/dist/localSensing.d.ts +91 -18
- package/dist/localSensing.d.ts.map +1 -1
- package/dist/localSensing.js +678 -153
- package/dist/localSensing.js.map +1 -1
- package/dist/mixedScopedCounts.d.ts +17 -0
- package/dist/mixedScopedCounts.d.ts.map +1 -0
- package/dist/mixedScopedCounts.js +90 -0
- package/dist/mixedScopedCounts.js.map +1 -0
- package/dist/sensingCatchRate.d.ts +9 -5
- package/dist/sensingCatchRate.d.ts.map +1 -1
- package/dist/sensingCatchRate.js +10 -6
- package/dist/sensingCatchRate.js.map +1 -1
- package/dist/sensingRunMode.d.ts +5 -0
- package/dist/sensingRunMode.d.ts.map +1 -1
- package/dist/sensingRunMode.js +56 -0
- package/dist/sensingRunMode.js.map +1 -1
- package/package.json +7 -4
- package/retained/ArchiveLifecycle.cjs +79 -0
- package/retained/ModelStageScheduler.cjs +66 -0
- package/retained/ProfileAuthorityClient.cjs +88 -0
- package/retained/RetainedCaptureClient.cjs +164 -0
- package/retained/WaitRecheckCaptureClient.cjs +109 -0
- package/retained/__tests__/archive-lifecycle.test.cjs +117 -0
- package/retained/__tests__/runtime.test.cjs +384 -0
- package/retained/alert-rule-policy.cjs +37 -0
- package/retained/manager.cjs +133 -0
- package/retained/pilot-profile-client.cjs +82 -0
- package/retained/temporal-grouping.cjs +78 -0
- package/retained/website-api-capability.cjs +122 -0
|
@@ -152,8 +152,21 @@ function createStubVlmServer(options = {}) {
|
|
|
152
152
|
res.end(`FileNotFoundError: Model ${requestedModel} not found`);
|
|
153
153
|
return;
|
|
154
154
|
}
|
|
155
|
-
|
|
156
|
-
|
|
155
|
+
if (options.runtimeModelSha256) {
|
|
156
|
+
if (req.headers['x-trillboards-model-sha256'] !== options.runtimeModelSha256 || !requestedModel) {
|
|
157
|
+
res.writeHead(409, { 'Content-Type': 'application/json' });
|
|
158
|
+
res.end(JSON.stringify({ error: 'stub model pin mismatch' }));
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
res.writeHead(200, { 'Content-Type': 'application/json' });
|
|
162
|
+
res.end(JSON.stringify({ ...buildStubChatCompletion(result), runtimeModel: {
|
|
163
|
+
version: 1, sha256: options.runtimeModelSha256, format: 'litert-lm', runtimeModelId: requestedModel,
|
|
164
|
+
} }));
|
|
165
|
+
}
|
|
166
|
+
else {
|
|
167
|
+
res.writeHead(200, { 'Content-Type': 'application/json' });
|
|
168
|
+
res.end(completion);
|
|
169
|
+
}
|
|
157
170
|
return;
|
|
158
171
|
}
|
|
159
172
|
res.writeHead(404, { 'Content-Type': 'application/json' });
|
|
@@ -188,17 +201,55 @@ function createIngestCaptureServer(options = {}) {
|
|
|
188
201
|
const host = options.host || '127.0.0.1';
|
|
189
202
|
const profileBody = options.profileBody ?? { profileName: null, fields: [] };
|
|
190
203
|
const captured = [];
|
|
204
|
+
const requestPaths = [];
|
|
205
|
+
let servedLegacyProfiles = 0;
|
|
191
206
|
const server = http.createServer((req, res) => {
|
|
192
207
|
const url = req.url || '';
|
|
193
208
|
const chunks = [];
|
|
194
209
|
req.on('data', (c) => chunks.push(c));
|
|
195
210
|
req.on('end', () => {
|
|
211
|
+
const parsedUrl = new URL(url, 'http://127.0.0.1');
|
|
212
|
+
requestPaths.push(parsedUrl.pathname);
|
|
213
|
+
const retained = options.retainedApi;
|
|
214
|
+
if (parsedUrl.pathname.startsWith('/v2/earner/cctv-retained/')) {
|
|
215
|
+
if (!retained) {
|
|
216
|
+
res.writeHead(404);
|
|
217
|
+
res.end();
|
|
218
|
+
return;
|
|
219
|
+
}
|
|
220
|
+
if (req.headers['x-device-token'] !== retained.deviceToken
|
|
221
|
+
|| parsedUrl.searchParams.get('screen_id') !== retained.cameraId) {
|
|
222
|
+
res.writeHead(403);
|
|
223
|
+
res.end();
|
|
224
|
+
return;
|
|
225
|
+
}
|
|
226
|
+
if (req.method === 'GET' && parsedUrl.pathname.endsWith('/capabilities')) {
|
|
227
|
+
res.writeHead(200, { 'Content-Type': 'application/json' });
|
|
228
|
+
res.end(JSON.stringify({ retainedReview: true, protocolVersion: 1, lateEvidenceAccepted: true,
|
|
229
|
+
timedModes: ['any', 'wait_recheck'], cameraId: retained.cameraId, maxBodyBytes: 2 * 1024 * 1024 }));
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
if (req.method === 'GET' && parsedUrl.pathname.endsWith('/sensing-profile')) {
|
|
233
|
+
res.writeHead(200, { 'Content-Type': 'application/json' });
|
|
234
|
+
res.end(JSON.stringify(profileBody));
|
|
235
|
+
return;
|
|
236
|
+
}
|
|
237
|
+
}
|
|
196
238
|
if (req.method === 'GET' && url.includes('/v2/earner/cameras/sensing-profile')) {
|
|
239
|
+
// The normal CLI's OTA grant reader still probes this route. A probe
|
|
240
|
+
// is not a sensing fallback. In retained fixtures, refuse the legacy
|
|
241
|
+
// response so an accepted review cannot have depended on that profile.
|
|
242
|
+
if (retained) {
|
|
243
|
+
res.writeHead(404);
|
|
244
|
+
res.end();
|
|
245
|
+
return;
|
|
246
|
+
}
|
|
247
|
+
servedLegacyProfiles += 1;
|
|
197
248
|
res.writeHead(200, { 'Content-Type': 'application/json' });
|
|
198
249
|
res.end(JSON.stringify(profileBody));
|
|
199
250
|
return;
|
|
200
251
|
}
|
|
201
|
-
if (req.method === 'POST' &&
|
|
252
|
+
if (req.method === 'POST' && parsedUrl.pathname === '/v2/earner/audience-analyze') {
|
|
202
253
|
let body = null;
|
|
203
254
|
try {
|
|
204
255
|
body = JSON.parse(Buffer.concat(chunks).toString('utf-8'));
|
|
@@ -212,6 +263,26 @@ function createIngestCaptureServer(options = {}) {
|
|
|
212
263
|
const pre = body && typeof body.preAnalyzed === 'object' && body.preAnalyzed !== null
|
|
213
264
|
? body.preAnalyzed
|
|
214
265
|
: null;
|
|
266
|
+
let response = { status: true, ok: true, profileId: 'p_e2e' };
|
|
267
|
+
if (retained) {
|
|
268
|
+
if (!body || body.screenId !== retained.cameraId || deviceToken !== retained.deviceToken) {
|
|
269
|
+
res.writeHead(403);
|
|
270
|
+
res.end();
|
|
271
|
+
return;
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
if (retained && pre) {
|
|
275
|
+
try {
|
|
276
|
+
if (!body)
|
|
277
|
+
throw Error('invalid JSON');
|
|
278
|
+
response = retained.acceptReview(body);
|
|
279
|
+
}
|
|
280
|
+
catch {
|
|
281
|
+
res.writeHead(400);
|
|
282
|
+
res.end(JSON.stringify({ error: 'invalid retained review' }));
|
|
283
|
+
return;
|
|
284
|
+
}
|
|
285
|
+
}
|
|
215
286
|
captured.push({
|
|
216
287
|
preAnalyzed: pre,
|
|
217
288
|
deviceToken,
|
|
@@ -220,7 +291,7 @@ function createIngestCaptureServer(options = {}) {
|
|
|
220
291
|
raw: body,
|
|
221
292
|
});
|
|
222
293
|
res.writeHead(200, { 'Content-Type': 'application/json' });
|
|
223
|
-
res.end(JSON.stringify(
|
|
294
|
+
res.end(JSON.stringify(response));
|
|
224
295
|
return;
|
|
225
296
|
}
|
|
226
297
|
res.writeHead(404, { 'Content-Type': 'application/json' });
|
|
@@ -235,6 +306,8 @@ function createIngestCaptureServer(options = {}) {
|
|
|
235
306
|
baseUrl: `http://${host}:${port}`,
|
|
236
307
|
port,
|
|
237
308
|
getCaptured: () => captured,
|
|
309
|
+
getRequestPaths: () => [...requestPaths],
|
|
310
|
+
getServedLegacyProfiles: () => servedLegacyProfiles,
|
|
238
311
|
close: () => new Promise((res) => {
|
|
239
312
|
server.close(() => res());
|
|
240
313
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localSenseE2eHarness.js","sourceRoot":"","sources":["../src/localSenseE2eHarness.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"localSenseE2eHarness.js","sourceRoot":"","sources":["../src/localSenseE2eHarness.ts"],"names":[],"mappings":"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"}
|
package/dist/localSensing.d.ts
CHANGED
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import type { CameraProvider } from '@trillboards/edge-core';
|
|
2
|
-
import {
|
|
2
|
+
import { type AttachCctvVideoRecorderArgs } from './VideoSegmentUploader';
|
|
3
|
+
import { AudienceAnalyzeClient, type AudienceAnalyzeResponse, type AudienceAnalyzeRequest, type CameraHealthReport, type HttpPoster } from './AudienceAnalyzeClient';
|
|
3
4
|
import { LiteRtVlmProvider, type LiteRtAcceleratorHealth } from './LiteRtVlmProvider';
|
|
5
|
+
import { type ProfileReviewWork, type ProfileWorkResult } from './ProfileReviewWork';
|
|
4
6
|
import { DetectorFieldProducer, type DetectorFieldProducerOptions } from './DetectorFieldProducer';
|
|
5
7
|
import { SensingProfileClient } from './SensingProfileClient';
|
|
6
8
|
import { type ResolvedFeed, type SensingClient, type SensingLoopDeps } from './CloudSensingManager';
|
|
7
9
|
import type { SharedFrameSource } from './MosaicSource';
|
|
8
10
|
import { type LocalSchemaFieldSet } from './localInferenceSchema';
|
|
9
11
|
import type { EdgeAgentConfig } from './config';
|
|
12
|
+
import type { ImageClassifierFieldProducer } from './ImageClassifierFieldProducer';
|
|
13
|
+
import { type ReviewModelUse } from './ReviewModelUse';
|
|
10
14
|
/**
|
|
11
15
|
* Map a deployed profile's SELF-DESCRIBING type to the on-device field set.
|
|
12
16
|
*
|
|
@@ -24,6 +28,8 @@ import type { EdgeAgentConfig } from './config';
|
|
|
24
28
|
*/
|
|
25
29
|
export declare function fieldSetForProfileType(profileType: string | null | undefined): LocalSchemaFieldSet;
|
|
26
30
|
export interface LocalSensingClientOptions {
|
|
31
|
+
/** Paired API resolved only by the explicit retained-review pilot setting. */
|
|
32
|
+
retainedApiBaseUrl?: string;
|
|
27
33
|
/**
|
|
28
34
|
* Fetches the deployed Sense-Anything profile for this feed's screen so the
|
|
29
35
|
* on-device VLM emits the operator's custom fields (cloud-parity). When
|
|
@@ -56,6 +62,23 @@ export interface LocalSensingClientOptions {
|
|
|
56
62
|
detectorFieldProducer?: DetectorFieldProducer | null;
|
|
57
63
|
/** Options for the producer built when none is injected. */
|
|
58
64
|
detectorFieldProducerOptions?: DetectorFieldProducerOptions;
|
|
65
|
+
/** Explicit local review-only comparison adapter; never used by capture/upload review. */
|
|
66
|
+
imageClassifierFieldProducer?: ImageClassifierFieldProducer;
|
|
67
|
+
/** Isolated review-only source-runtime experiment; normal capture/upload rejects this format. */
|
|
68
|
+
rfDetrSourceRuntime?: {
|
|
69
|
+
modelId: string;
|
|
70
|
+
sha256: string;
|
|
71
|
+
};
|
|
72
|
+
/** Default-off local experiment; requires durable evidence and a loopback receiver. */
|
|
73
|
+
detectorCounts?: boolean;
|
|
74
|
+
/** Default-off local experiment. Requires retained evidence and a loopback receiver. */
|
|
75
|
+
scopedVlmReview?: boolean;
|
|
76
|
+
/** Local comparison only: overlap CPU counts and the first unfinished GPU scope. */
|
|
77
|
+
overlapMixedReview?: boolean;
|
|
78
|
+
/** Local comparison only: omit implicit scene questions on a pinned VLM-only operator profile. */
|
|
79
|
+
declaredProfileReview?: boolean;
|
|
80
|
+
/** Normal website factory owns this setting; no extra user setup is needed. */
|
|
81
|
+
websiteManagedProfiles?: boolean;
|
|
59
82
|
}
|
|
60
83
|
/**
|
|
61
84
|
* Repair one measured Gemma contradiction before it can become an alert:
|
|
@@ -174,6 +197,22 @@ export declare class LocalSensingClient implements SensingClient {
|
|
|
174
197
|
private readonly basePrompt;
|
|
175
198
|
private cachedSchema;
|
|
176
199
|
private cachedPrompt;
|
|
200
|
+
private readonly detectorCountsEnabled;
|
|
201
|
+
private cachedDetectorCounts;
|
|
202
|
+
private cachedMixedScopedCounts;
|
|
203
|
+
private cachedMixedFrameCounts;
|
|
204
|
+
private cachedReviewPolicy;
|
|
205
|
+
private cachedFieldContract;
|
|
206
|
+
private cachedModelSelection;
|
|
207
|
+
private readonly scopedVlmReviewEnabled;
|
|
208
|
+
private readonly overlapMixedReviewEnabled;
|
|
209
|
+
private readonly declaredProfileReviewEnabled;
|
|
210
|
+
private readonly websiteManagedProfiles;
|
|
211
|
+
private readonly imageClassifierProducer?;
|
|
212
|
+
private readonly rfDetrSourceRuntime?;
|
|
213
|
+
private cachedDeclaredProfileReview;
|
|
214
|
+
private cachedVlmFields;
|
|
215
|
+
private cachedFocusRegionsValid;
|
|
177
216
|
/**
|
|
178
217
|
* Fields whose ABSENT reading an operator route on this screen fires on, from the
|
|
179
218
|
* deployed profile (see SensingProfileClient.absenceWatchedFields). Refreshed on the
|
|
@@ -287,6 +326,7 @@ export declare class LocalSensingClient implements SensingClient {
|
|
|
287
326
|
private readonly analyzeCost;
|
|
288
327
|
/** The active profile name (for logging / observability). */
|
|
289
328
|
activeProfileName: string | null;
|
|
329
|
+
private reviewProfileState;
|
|
290
330
|
/**
|
|
291
331
|
* Which field set the active profile resolved to (for logging / observability):
|
|
292
332
|
* 'operator' for a Sense-Anything profile, 'audience' for a DOOH preset or no
|
|
@@ -346,23 +386,23 @@ export declare class LocalSensingClient implements SensingClient {
|
|
|
346
386
|
* `null` while the conservative bootstrap still governs.
|
|
347
387
|
*/
|
|
348
388
|
getObservedAnalyzeMs(): number | null;
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
389
|
+
/** Resolve once before LOOK starts; later refreshes never hold up capture. */
|
|
390
|
+
prepareReview(): Promise<void>;
|
|
391
|
+
/** Only an explicitly verified inactive profile pauses new model work. */
|
|
392
|
+
isReviewActive(): boolean;
|
|
393
|
+
private usesWebsiteProfile;
|
|
394
|
+
captureReviewContext(): Record<string, unknown>;
|
|
395
|
+
/** Admission follows the saved profile, never the camera's current setting. */
|
|
396
|
+
getReviewModelUse(context: Record<string, unknown> | undefined): ReviewModelUse;
|
|
397
|
+
/** Finish and durably checkpoint inference without starting a network upload. */
|
|
398
|
+
reviewCandidate(request: AudienceAnalyzeRequest): Promise<void>;
|
|
399
|
+
/** Isolated review-only rehearsal. Sparse results never enter the normal upload envelope. */
|
|
400
|
+
reviewProfileWork(request: AudienceAnalyzeRequest, work: ProfileReviewWork, checkpoint: (result: ProfileWorkResult) => void): Promise<ProfileWorkResult>;
|
|
401
|
+
private prepareAnalysis;
|
|
402
|
+
private readonly retainedApiBaseUrl?;
|
|
403
|
+
private assertLocalCountReceiver;
|
|
404
|
+
private assertLocalScopedReceiver;
|
|
405
|
+
analyze(request: AudienceAnalyzeRequest): Promise<AudienceAnalyzeResponse>;
|
|
366
406
|
}
|
|
367
407
|
/**
|
|
368
408
|
* Resolve `cloudSensing.maxStreamSessionsPerSource` into the number the persistent
|
|
@@ -379,16 +419,49 @@ export declare class LocalSensingClient implements SensingClient {
|
|
|
379
419
|
export declare function resolveMaxStreamSessionsPerSource(requested: number | undefined, warn?: (msg: string) => void): number | undefined;
|
|
380
420
|
/** Injection points for tests (default to the real providers/clients). */
|
|
381
421
|
export interface BuildLocalSensingDeps {
|
|
422
|
+
/** Selected internally by the normal retained factory, not a second config. */
|
|
423
|
+
websiteManagedProfiles?: boolean;
|
|
382
424
|
rtspProviderFactory?: (feed: ResolvedFeed) => CameraProvider;
|
|
383
425
|
streamUrlResolver?: (feed: ResolvedFeed, currentUrl: string, error: Error) => Promise<string | null>;
|
|
384
426
|
localProviderFactory?: (feed: ResolvedFeed) => LiteRtVlmProvider;
|
|
385
427
|
uploadClientFactory?: (feed: ResolvedFeed) => AudienceAnalyzeClient;
|
|
386
428
|
profileClientFactory?: (feed: ResolvedFeed) => SensingProfileClient | undefined;
|
|
429
|
+
detectorFieldProducerOptions?: DetectorFieldProducerOptions;
|
|
387
430
|
httpPoster?: HttpPoster;
|
|
388
431
|
/** Shared per-mosaic-source pull registry so the local VLM attaches to the SAME
|
|
389
432
|
* SharedFrameSource the on-device zoo uses (one RTSP pull for both rails). */
|
|
390
433
|
sharedSources?: Map<string, SharedFrameSource>;
|
|
434
|
+
/**
|
|
435
|
+
* Attaches video recording to a provider the DEFAULT factory built (an
|
|
436
|
+
* injected `rtspProviderFactory` owns its own providers and gets none).
|
|
437
|
+
* Default `attachCctvVideoRecorder`; `null` wires nothing — a test seam.
|
|
438
|
+
*/
|
|
439
|
+
videoRecorderFactory?: ((args: AttachCctvVideoRecorderArgs) => unknown) | null;
|
|
440
|
+
}
|
|
441
|
+
/** Under the connector's data root: one directory per recording feed. */
|
|
442
|
+
export declare const VIDEO_SEGMENTS_DIRNAME = "video-segments";
|
|
443
|
+
/**
|
|
444
|
+
* One stream, one key: scheme, host, port, path and query of an RTSP URL,
|
|
445
|
+
* WITHOUT its credentials — two feeds pointing at the same channel with
|
|
446
|
+
* different logins are one camera, and record once.
|
|
447
|
+
*/
|
|
448
|
+
export declare function recordingUrlKey(rtspUrl: string): string | null;
|
|
449
|
+
/**
|
|
450
|
+
* A feed's video directory name: its screen id (stable across restarts and
|
|
451
|
+
* re-pairs), else a hash of its token — never the token itself.
|
|
452
|
+
*/
|
|
453
|
+
export declare function videoFeedKey(feed: Pick<ResolvedFeed, 'screenId' | 'deviceToken'>): string;
|
|
454
|
+
/** Which feeds record, and which were skipped and why — the last build's plan. */
|
|
455
|
+
export interface VideoRecordingPlan {
|
|
456
|
+
/** One per distinct RTSP URL: the first crop-less feed built for it. */
|
|
457
|
+
recordingFeeds: string[];
|
|
458
|
+
/** Feeds whose URL another feed already records (mosaic tiles, duplicates). */
|
|
459
|
+
sharedUrlFeeds: string[];
|
|
460
|
+
/** Cropped tiles whose URL no crop-less feed records. */
|
|
461
|
+
croppedFeeds: string[];
|
|
391
462
|
}
|
|
463
|
+
/** The plan `buildLocalSensingLoops` last built, for diagnostics. */
|
|
464
|
+
export declare function getVideoRecordingPlan(): VideoRecordingPlan;
|
|
392
465
|
/**
|
|
393
466
|
* Build per-feed capture loops for LOCAL sensing — one RTSP provider + one
|
|
394
467
|
* LocalSensingClient (local VLM + preAnalyzed upload) per feed, each under its
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localSensing.d.ts","sourceRoot":"","sources":["../src/localSensing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAwB,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"localSensing.d.ts","sourceRoot":"","sources":["../src/localSensing.ts"],"names":[],"mappings":"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"}
|