@camstack/types 1.2.183 → 1.2.185
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.
|
@@ -1243,6 +1243,26 @@ declare const SummariesPageSchema: z.ZodObject<{
|
|
|
1243
1243
|
}, z.core.$strip>>>;
|
|
1244
1244
|
}, z.core.$strip>;
|
|
1245
1245
|
export type SummariesPage = z.infer<typeof SummariesPageSchema>;
|
|
1246
|
+
/**
|
|
1247
|
+
* One member of a group, as a reader needs it.
|
|
1248
|
+
*
|
|
1249
|
+
* The class and the role travel WITH the id because every consumer that shows
|
|
1250
|
+
* a group has to say what it was made of — "two people and a dog" — and asking
|
|
1251
|
+
* `getTrack` per member to find that out turns one card into `memberCount`
|
|
1252
|
+
* round trips. The member row already holds both (they are written at the
|
|
1253
|
+
* join), so this costs the reader nothing.
|
|
1254
|
+
*/
|
|
1255
|
+
declare const SummaryMemberSchema: z.ZodObject<{
|
|
1256
|
+
trackId: z.ZodString;
|
|
1257
|
+
className: z.ZodNullable<z.ZodString>;
|
|
1258
|
+
role: z.ZodNullable<z.ZodEnum<{
|
|
1259
|
+
primary: "primary";
|
|
1260
|
+
sibling: "sibling";
|
|
1261
|
+
child: "child";
|
|
1262
|
+
}>>;
|
|
1263
|
+
joinedAt: z.ZodNumber;
|
|
1264
|
+
}, z.core.$strip>;
|
|
1265
|
+
export type SummaryMemberOut = z.infer<typeof SummaryMemberSchema>;
|
|
1246
1266
|
declare const SummaryDetailSchema: z.ZodObject<{
|
|
1247
1267
|
summary: z.ZodObject<{
|
|
1248
1268
|
id: z.ZodString;
|
|
@@ -1253,7 +1273,16 @@ declare const SummaryDetailSchema: z.ZodObject<{
|
|
|
1253
1273
|
memberCount: z.ZodNumber;
|
|
1254
1274
|
groupShotMediaId: z.ZodNullable<z.ZodNumber>;
|
|
1255
1275
|
}, z.core.$strip>;
|
|
1256
|
-
|
|
1276
|
+
members: z.ZodReadonly<z.ZodArray<z.ZodObject<{
|
|
1277
|
+
trackId: z.ZodString;
|
|
1278
|
+
className: z.ZodNullable<z.ZodString>;
|
|
1279
|
+
role: z.ZodNullable<z.ZodEnum<{
|
|
1280
|
+
primary: "primary";
|
|
1281
|
+
sibling: "sibling";
|
|
1282
|
+
child: "child";
|
|
1283
|
+
}>>;
|
|
1284
|
+
joinedAt: z.ZodNumber;
|
|
1285
|
+
}, z.core.$strip>>>;
|
|
1257
1286
|
}, z.core.$strip>;
|
|
1258
1287
|
export type SummaryDetail = z.infer<typeof SummaryDetailSchema>;
|
|
1259
1288
|
declare const RecentTracksPageSchema: z.ZodObject<{
|
|
@@ -2260,7 +2289,16 @@ export declare const pipelineAnalyticsCapability: {
|
|
|
2260
2289
|
memberCount: z.ZodNumber;
|
|
2261
2290
|
groupShotMediaId: z.ZodNullable<z.ZodNumber>;
|
|
2262
2291
|
}, z.core.$strip>;
|
|
2263
|
-
|
|
2292
|
+
members: z.ZodReadonly<z.ZodArray<z.ZodObject<{
|
|
2293
|
+
trackId: z.ZodString;
|
|
2294
|
+
className: z.ZodNullable<z.ZodString>;
|
|
2295
|
+
role: z.ZodNullable<z.ZodEnum<{
|
|
2296
|
+
primary: "primary";
|
|
2297
|
+
sibling: "sibling";
|
|
2298
|
+
child: "child";
|
|
2299
|
+
}>>;
|
|
2300
|
+
joinedAt: z.ZodNumber;
|
|
2301
|
+
}, z.core.$strip>>>;
|
|
2264
2302
|
}, z.core.$strip>>, import("./capability-definition.js").CapabilityMethodKind>;
|
|
2265
2303
|
readonly clearTracks: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
2266
2304
|
deviceId: z.ZodNumber;
|
|
@@ -466,6 +466,7 @@ declare const LoggingSettingsPatchSchema: z.ZodObject<{
|
|
|
466
466
|
armMs: z.ZodNumber;
|
|
467
467
|
deviceIds: z.ZodOptional<z.ZodNullable<z.ZodReadonly<z.ZodArray<z.ZodNumber>>>>;
|
|
468
468
|
}, z.core.$strip>>>>;
|
|
469
|
+
opsLogRetentionDays: z.ZodOptional<z.ZodNumber>;
|
|
469
470
|
}, z.core.$strip>;
|
|
470
471
|
/**
|
|
471
472
|
* Which LAYER of the hierarchy is addressed. Absent = the cluster layer.
|
|
@@ -555,6 +556,7 @@ declare const SetLoggingSettingsInputSchema: z.ZodObject<{
|
|
|
555
556
|
armMs: z.ZodNumber;
|
|
556
557
|
deviceIds: z.ZodOptional<z.ZodNullable<z.ZodReadonly<z.ZodArray<z.ZodNumber>>>>;
|
|
557
558
|
}, z.core.$strip>>>>;
|
|
559
|
+
opsLogRetentionDays: z.ZodOptional<z.ZodNumber>;
|
|
558
560
|
}, z.core.$strip>;
|
|
559
561
|
}, z.core.$strip>;
|
|
560
562
|
/**
|
|
@@ -626,6 +628,7 @@ declare const LoggingSettingsStateSchema: z.ZodObject<{
|
|
|
626
628
|
remainingMs: z.ZodNumber;
|
|
627
629
|
deviceIds: z.ZodNullable<z.ZodReadonly<z.ZodArray<z.ZodNumber>>>;
|
|
628
630
|
}, z.core.$strip>>>;
|
|
631
|
+
opsLogRetentionDays: z.ZodNumber;
|
|
629
632
|
persisted: z.ZodBoolean;
|
|
630
633
|
}, z.core.$strip>;
|
|
631
634
|
export declare const systemCapability: {
|
|
@@ -931,6 +934,7 @@ export declare const systemCapability: {
|
|
|
931
934
|
remainingMs: z.ZodNumber;
|
|
932
935
|
deviceIds: z.ZodNullable<z.ZodReadonly<z.ZodArray<z.ZodNumber>>>;
|
|
933
936
|
}, z.core.$strip>>>;
|
|
937
|
+
opsLogRetentionDays: z.ZodNumber;
|
|
934
938
|
persisted: z.ZodBoolean;
|
|
935
939
|
}, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
|
|
936
940
|
/**
|
|
@@ -964,6 +968,7 @@ export declare const systemCapability: {
|
|
|
964
968
|
armMs: z.ZodNumber;
|
|
965
969
|
deviceIds: z.ZodOptional<z.ZodNullable<z.ZodReadonly<z.ZodArray<z.ZodNumber>>>>;
|
|
966
970
|
}, z.core.$strip>>>>;
|
|
971
|
+
opsLogRetentionDays: z.ZodOptional<z.ZodNumber>;
|
|
967
972
|
}, z.core.$strip>;
|
|
968
973
|
}, z.core.$strip>, z.ZodObject<{
|
|
969
974
|
scopeNodeId: z.ZodNullable<z.ZodString>;
|
|
@@ -1025,6 +1030,7 @@ export declare const systemCapability: {
|
|
|
1025
1030
|
remainingMs: z.ZodNumber;
|
|
1026
1031
|
deviceIds: z.ZodNullable<z.ZodReadonly<z.ZodArray<z.ZodNumber>>>;
|
|
1027
1032
|
}, z.core.$strip>>>;
|
|
1033
|
+
opsLogRetentionDays: z.ZodNumber;
|
|
1028
1034
|
persisted: z.ZodBoolean;
|
|
1029
1035
|
}, z.core.$strip>, "mutation">;
|
|
1030
1036
|
};
|
package/dist/index.js
CHANGED
|
@@ -20252,10 +20252,31 @@ var SummariesQueryInput = zod.z.object({
|
|
|
20252
20252
|
limit: zod.z.number().int().min(1).max(200).default(50)
|
|
20253
20253
|
});
|
|
20254
20254
|
var SummariesPageSchema = zod.z.object({ summaries: zod.z.array(SummarySchema).readonly() });
|
|
20255
|
+
/**
|
|
20256
|
+
* One member of a group, as a reader needs it.
|
|
20257
|
+
*
|
|
20258
|
+
* The class and the role travel WITH the id because every consumer that shows
|
|
20259
|
+
* a group has to say what it was made of — "two people and a dog" — and asking
|
|
20260
|
+
* `getTrack` per member to find that out turns one card into `memberCount`
|
|
20261
|
+
* round trips. The member row already holds both (they are written at the
|
|
20262
|
+
* join), so this costs the reader nothing.
|
|
20263
|
+
*/
|
|
20264
|
+
var SummaryMemberSchema = zod.z.object({
|
|
20265
|
+
trackId: zod.z.string(),
|
|
20266
|
+
/** The track's class at the time it joined, or `null` when unresolved. */
|
|
20267
|
+
className: zod.z.string().nullable(),
|
|
20268
|
+
/** `primary` is the one member that carries the group's identity. */
|
|
20269
|
+
role: zod.z.enum([
|
|
20270
|
+
"primary",
|
|
20271
|
+
"sibling",
|
|
20272
|
+
"child"
|
|
20273
|
+
]).nullable(),
|
|
20274
|
+
joinedAt: zod.z.number()
|
|
20275
|
+
});
|
|
20255
20276
|
var SummaryDetailSchema = zod.z.object({
|
|
20256
20277
|
summary: SummarySchema,
|
|
20257
|
-
/**
|
|
20258
|
-
|
|
20278
|
+
/** Members in absorption order, oldest join first. */
|
|
20279
|
+
members: zod.z.array(SummaryMemberSchema).readonly()
|
|
20259
20280
|
});
|
|
20260
20281
|
var RecentTracksPageSchema = zod.z.object({
|
|
20261
20282
|
/** Merged page, ordered by (`lastSeen` DESC, `trackId` DESC). */
|
|
@@ -36465,7 +36486,29 @@ var LoggingSettingsPatchSchema = zod.z.object({
|
|
|
36465
36486
|
* disarmed the channels it did not mention would make the Levels page and
|
|
36466
36487
|
* the Diagnostics page fight over the same value.
|
|
36467
36488
|
*/
|
|
36468
|
-
channels: zod.z.array(LogChannelWindowPatchSchema).readonly().optional()
|
|
36489
|
+
channels: zod.z.array(LogChannelWindowPatchSchema).readonly().optional(),
|
|
36490
|
+
/**
|
|
36491
|
+
* How many days the analytics OPS LOG is kept — the audit trail of what
|
|
36492
|
+
* retention actually deleted.
|
|
36493
|
+
*
|
|
36494
|
+
* It lives HERE, on the logging document, and not on the analytics addon's
|
|
36495
|
+
* settings form, on the operator's instruction: every other log-ish window in
|
|
36496
|
+
* this system is configured through this one document, and a retention audit
|
|
36497
|
+
* configured somewhere else is a second place to look when the question is
|
|
36498
|
+
* "what happened to my data".
|
|
36499
|
+
*
|
|
36500
|
+
* That placement has a cost worth stating: this document ships in the
|
|
36501
|
+
* framework closure, so this knob needs a published `@camstack/server` while
|
|
36502
|
+
* the four windows beside it (D485) reach a node on `camstack deploy`.
|
|
36503
|
+
*
|
|
36504
|
+
* `retention-model.ts` argued this one must NOT follow a device window,
|
|
36505
|
+
* because the audit trail is the history of the SWEEP and not of the camera.
|
|
36506
|
+
* That argument stands and is untouched — what changes is that 30 days stops
|
|
36507
|
+
* being a constant nobody can reach. `0` keeps it forever. The floor is 1 day
|
|
36508
|
+
* rather than 0-as-delete: an audit log truncated to nothing is precisely the
|
|
36509
|
+
* state in which the next 9.5 GiB leak cannot be explained.
|
|
36510
|
+
*/
|
|
36511
|
+
opsLogRetentionDays: zod.z.number().int().min(0).max(3650).optional()
|
|
36469
36512
|
});
|
|
36470
36513
|
/**
|
|
36471
36514
|
* Which LAYER of the hierarchy is addressed. Absent = the cluster layer.
|
|
@@ -36538,6 +36581,14 @@ var LoggingSettingsStateSchema = zod.z.object({
|
|
|
36538
36581
|
channels: zod.z.array(LogChannelDescriptorSchema).readonly(),
|
|
36539
36582
|
/** The channels ARMED right now, each with its deadline. */
|
|
36540
36583
|
activeChannels: zod.z.array(LogChannelWindowStateSchema).readonly(),
|
|
36584
|
+
/**
|
|
36585
|
+
* The ops-log window in days, as it is in force. `0` = kept forever.
|
|
36586
|
+
*
|
|
36587
|
+
* Reported rather than left to the caller's memory of what it wrote: this is
|
|
36588
|
+
* the value the analytics sweep will actually use, and an operator asking how
|
|
36589
|
+
* long their audit trail lives should not have to infer it from a default.
|
|
36590
|
+
*/
|
|
36591
|
+
opsLogRetentionDays: zod.z.number().int().min(0),
|
|
36541
36592
|
persisted: zod.z.boolean()
|
|
36542
36593
|
});
|
|
36543
36594
|
var systemCapability = {
|
package/dist/index.mjs
CHANGED
|
@@ -20251,10 +20251,31 @@ var SummariesQueryInput = z.object({
|
|
|
20251
20251
|
limit: z.number().int().min(1).max(200).default(50)
|
|
20252
20252
|
});
|
|
20253
20253
|
var SummariesPageSchema = z.object({ summaries: z.array(SummarySchema).readonly() });
|
|
20254
|
+
/**
|
|
20255
|
+
* One member of a group, as a reader needs it.
|
|
20256
|
+
*
|
|
20257
|
+
* The class and the role travel WITH the id because every consumer that shows
|
|
20258
|
+
* a group has to say what it was made of — "two people and a dog" — and asking
|
|
20259
|
+
* `getTrack` per member to find that out turns one card into `memberCount`
|
|
20260
|
+
* round trips. The member row already holds both (they are written at the
|
|
20261
|
+
* join), so this costs the reader nothing.
|
|
20262
|
+
*/
|
|
20263
|
+
var SummaryMemberSchema = z.object({
|
|
20264
|
+
trackId: z.string(),
|
|
20265
|
+
/** The track's class at the time it joined, or `null` when unresolved. */
|
|
20266
|
+
className: z.string().nullable(),
|
|
20267
|
+
/** `primary` is the one member that carries the group's identity. */
|
|
20268
|
+
role: z.enum([
|
|
20269
|
+
"primary",
|
|
20270
|
+
"sibling",
|
|
20271
|
+
"child"
|
|
20272
|
+
]).nullable(),
|
|
20273
|
+
joinedAt: z.number()
|
|
20274
|
+
});
|
|
20254
20275
|
var SummaryDetailSchema = z.object({
|
|
20255
20276
|
summary: SummarySchema,
|
|
20256
|
-
/**
|
|
20257
|
-
|
|
20277
|
+
/** Members in absorption order, oldest join first. */
|
|
20278
|
+
members: z.array(SummaryMemberSchema).readonly()
|
|
20258
20279
|
});
|
|
20259
20280
|
var RecentTracksPageSchema = z.object({
|
|
20260
20281
|
/** Merged page, ordered by (`lastSeen` DESC, `trackId` DESC). */
|
|
@@ -36457,7 +36478,29 @@ var LoggingSettingsPatchSchema = z.object({
|
|
|
36457
36478
|
* disarmed the channels it did not mention would make the Levels page and
|
|
36458
36479
|
* the Diagnostics page fight over the same value.
|
|
36459
36480
|
*/
|
|
36460
|
-
channels: z.array(LogChannelWindowPatchSchema).readonly().optional()
|
|
36481
|
+
channels: z.array(LogChannelWindowPatchSchema).readonly().optional(),
|
|
36482
|
+
/**
|
|
36483
|
+
* How many days the analytics OPS LOG is kept — the audit trail of what
|
|
36484
|
+
* retention actually deleted.
|
|
36485
|
+
*
|
|
36486
|
+
* It lives HERE, on the logging document, and not on the analytics addon's
|
|
36487
|
+
* settings form, on the operator's instruction: every other log-ish window in
|
|
36488
|
+
* this system is configured through this one document, and a retention audit
|
|
36489
|
+
* configured somewhere else is a second place to look when the question is
|
|
36490
|
+
* "what happened to my data".
|
|
36491
|
+
*
|
|
36492
|
+
* That placement has a cost worth stating: this document ships in the
|
|
36493
|
+
* framework closure, so this knob needs a published `@camstack/server` while
|
|
36494
|
+
* the four windows beside it (D485) reach a node on `camstack deploy`.
|
|
36495
|
+
*
|
|
36496
|
+
* `retention-model.ts` argued this one must NOT follow a device window,
|
|
36497
|
+
* because the audit trail is the history of the SWEEP and not of the camera.
|
|
36498
|
+
* That argument stands and is untouched — what changes is that 30 days stops
|
|
36499
|
+
* being a constant nobody can reach. `0` keeps it forever. The floor is 1 day
|
|
36500
|
+
* rather than 0-as-delete: an audit log truncated to nothing is precisely the
|
|
36501
|
+
* state in which the next 9.5 GiB leak cannot be explained.
|
|
36502
|
+
*/
|
|
36503
|
+
opsLogRetentionDays: z.number().int().min(0).max(3650).optional()
|
|
36461
36504
|
});
|
|
36462
36505
|
/**
|
|
36463
36506
|
* Which LAYER of the hierarchy is addressed. Absent = the cluster layer.
|
|
@@ -36530,6 +36573,14 @@ var LoggingSettingsStateSchema = z.object({
|
|
|
36530
36573
|
channels: z.array(LogChannelDescriptorSchema).readonly(),
|
|
36531
36574
|
/** The channels ARMED right now, each with its deadline. */
|
|
36532
36575
|
activeChannels: z.array(LogChannelWindowStateSchema).readonly(),
|
|
36576
|
+
/**
|
|
36577
|
+
* The ops-log window in days, as it is in force. `0` = kept forever.
|
|
36578
|
+
*
|
|
36579
|
+
* Reported rather than left to the caller's memory of what it wrote: this is
|
|
36580
|
+
* the value the analytics sweep will actually use, and an operator asking how
|
|
36581
|
+
* long their audit trail lives should not have to infer it from a default.
|
|
36582
|
+
*/
|
|
36583
|
+
opsLogRetentionDays: z.number().int().min(0),
|
|
36533
36584
|
persisted: z.boolean()
|
|
36534
36585
|
});
|
|
36535
36586
|
var systemCapability = {
|