@uug-ai/models 1.6.6 → 1.6.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/types.d.ts +82 -7
  2. package/package.json +1 -1
package/dist/types.d.ts CHANGED
@@ -31085,6 +31085,19 @@ export interface components {
31085
31085
  * @example 507f1f77bcf86cd799439011
31086
31086
  */
31087
31087
  id?: string;
31088
+ /**
31089
+ * @description MediaKeys optionally pins this marker to specific recordings by their stable
31090
+ * key (media.videoFile). When set, the marker writer links the marker to
31091
+ * exactly these recordings — scoped to the marker's device and organisation —
31092
+ * instead of inferring the link from timestamp overlap. This is authoritative:
31093
+ * the producer (e.g. a stage worker) knows precisely which recording a
31094
+ * detection came from, so it is immune to timing/fps drift. Leave empty to keep
31095
+ * the default timestamp-overlap association.
31096
+ * @example [
31097
+ * "1752482068_...device_1920_1080_10000.mp4"
31098
+ * ]
31099
+ */
31100
+ mediaKeys?: string[];
31088
31101
  /** @description Additional metadata */
31089
31102
  metadata?: components["schemas"]["models.MarkerMetadata"];
31090
31103
  /**
@@ -32731,7 +32744,21 @@ export interface components {
32731
32744
  name?: string;
32732
32745
  nodes?: components["schemas"]["models.WorkflowNode"][];
32733
32746
  organisation_id?: string;
32747
+ /**
32748
+ * @description Trigger is the legacy single-trigger field kept only so workflows persisted
32749
+ * before Triggers existed still decode (and are not silently dropped on
32750
+ * re-save). New code should read and write Triggers; call NormalizeTriggers to
32751
+ * fold any legacy value into Triggers.
32752
+ *
32753
+ * Deprecated: use Triggers.
32754
+ */
32734
32755
  trigger?: components["schemas"]["models.WorkflowTrigger"];
32756
+ /**
32757
+ * @description Triggers is the set of activation modes for this workflow. A workflow may
32758
+ * carry both an automatic and a manual trigger so it runs on its own for
32759
+ * matching recordings and can also be launched on demand from a surface.
32760
+ */
32761
+ triggers?: components["schemas"]["models.WorkflowTrigger"][];
32735
32762
  updated_at?: number;
32736
32763
  user_id?: string;
32737
32764
  username?: string;
@@ -32829,6 +32856,16 @@ export interface components {
32829
32856
  * disambiguate a dispatch from a result.
32830
32857
  */
32831
32858
  operation?: string;
32859
+ /**
32860
+ * @description Origin records how this run was opened — the run-side counterpart of the
32861
+ * Workflow's trigger Type. An automatic run was teed off the pipeline by
32862
+ * analysis for a matching recording; a manual run was launched on demand by a
32863
+ * user from a surface. The engine reads it to skip automatic selection/time
32864
+ * gating for on-demand runs; it is persisted so "all runs for a media key" can
32865
+ * be filtered by how they started. Empty is treated as automatic for runs
32866
+ * opened before origins existed.
32867
+ */
32868
+ origin?: components["schemas"]["models.WorkflowRunOrigin"];
32832
32869
  /**
32833
32870
  * @description Payload is the self-describing block envelope a delegated-ingest worker
32834
32871
  * hands back for the platform to persist: one or more typed blocks (e.g. a
@@ -32885,6 +32922,12 @@ export interface components {
32885
32922
  * is empty on the analysis hand-off — the run is keyed by Key until the
32886
32923
  * engine opens it — and set on every engine→worker dispatch. The persisted
32887
32924
  * identity is Id, so RunId itself is wire-only.
32925
+ *
32926
+ * It is never set by hand: MarshalJSON derives it from Id whenever a run that
32927
+ * has been opened (its _id is set) is serialized, so a producer only has to
32928
+ * stamp Id and the two representations can never drift. A run without an Id
32929
+ * yet (the analysis hand-off) keeps whatever RunId it was given (normally
32930
+ * empty, so runId is omitted).
32888
32931
  */
32889
32932
  runId?: string;
32890
32933
  /**
@@ -32899,6 +32942,14 @@ export interface components {
32899
32942
  * run's persisted state; a stage dispatched after a reload fetches via Storage.
32900
32943
  */
32901
32944
  signedUrl?: string;
32945
+ /**
32946
+ * @description SourceRef ties a manual run back to the thing it was launched from — e.g.
32947
+ * the case id when launched from a case surface — so sibling runs fanned out
32948
+ * from one user action (one seed per selected media key) can be grouped above
32949
+ * the run. Empty for automatic runs. It generalises to any run-grouping handle
32950
+ * (a case id today; a temporal device-series id is a forward-looking twin).
32951
+ */
32952
+ sourceRef?: string;
32902
32953
  /**
32903
32954
  * @description Storage carries the credentials a dispatched stage worker needs to fetch
32904
32955
  * the media (global Kerberos Storage plus any resolved per-recording vault
@@ -32934,6 +32985,8 @@ export interface components {
32934
32985
  */
32935
32986
  workflowName?: string;
32936
32987
  };
32988
+ /** @enum {string} */
32989
+ "models.WorkflowRunOrigin": "automatic" | "manual";
32937
32990
  "models.WorkflowStage": {
32938
32991
  /** @description Description explains what the stage does, for the catalog UI. */
32939
32992
  description?: string;
@@ -33036,14 +33089,36 @@ export interface components {
33036
33089
  vaultOverrideUri?: string;
33037
33090
  };
33038
33091
  "models.WorkflowTrigger": {
33039
- endAt?: string;
33040
- /** @description Selection is the set of devices/streams the workflow applies to. */
33041
- selection?: string;
33042
- /** @description StartAt and EndAt bound a daily time window (e.g. "08:00"/"18:00"). */
33043
- startAt?: string;
33044
- /** @description Weekdays restricts the workflow to the listed days of week. */
33045
- weekdays?: number[];
33092
+ /**
33093
+ * @description Devices restricts the automatic trigger to recordings from the listed
33094
+ * devices, matched by DeviceKey.Key. An empty list means every device is
33095
+ * eligible. Mirrors the alert device selection (see CustomAlert.DevicesList).
33096
+ */
33097
+ devices?: components["schemas"]["models.DeviceKey"][];
33098
+ /**
33099
+ * @description Surfaces lists the UI surfaces a manual trigger can be launched from
33100
+ * (manual). Ignored for automatic triggers.
33101
+ */
33102
+ surfaces?: components["schemas"]["models.WorkflowTriggerSurface"][];
33103
+ /**
33104
+ * @description Type is the activation mode. An empty Type is treated as
33105
+ * WorkflowTriggerAutomatic for backwards compatibility with triggers authored
33106
+ * before manual triggers existed.
33107
+ */
33108
+ type?: components["schemas"]["models.WorkflowTriggerType"];
33109
+ /**
33110
+ * @description WeeklySchedule bounds the automatic trigger to recurring weekly windows,
33111
+ * each with its own day, time segments and IANA Timezone. An empty schedule
33112
+ * means any time is eligible. Reuses the alert weekly-schedule shape so the
33113
+ * same editor and evaluation semantics apply. The Timezone on each entry is
33114
+ * the user's timezone captured when the schedule was authored.
33115
+ */
33116
+ weeklySchedule?: components["schemas"]["models.WeeklySchedule"][];
33046
33117
  };
33118
+ /** @enum {string} */
33119
+ "models.WorkflowTriggerSurface": "case" | "media";
33120
+ /** @enum {string} */
33121
+ "models.WorkflowTriggerType": "automatic" | "manual";
33047
33122
  "models.WorkflowUser": {
33048
33123
  organisationId?: string;
33049
33124
  storage?: components["schemas"]["models.Storage"];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uug-ai/models",
3
- "version": "1.6.6",
3
+ "version": "1.6.8",
4
4
  "description": "TypeScript type definitions for Go models",
5
5
  "main": "dist/types.js",
6
6
  "types": "dist/types.d.ts",