crewly 1.20.72 → 1.20.73
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/dist/backend/backend/src/services/v3/team-trigger-reconciler.service.d.ts +14 -0
- package/dist/backend/backend/src/services/v3/team-trigger-reconciler.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/v3/team-trigger-reconciler.service.js +35 -4
- package/dist/backend/backend/src/services/v3/team-trigger-reconciler.service.js.map +1 -1
- package/dist/backend/backend/src/types/v2/index.d.ts +2 -2
- package/dist/backend/backend/src/types/v2/index.d.ts.map +1 -1
- package/dist/backend/backend/src/types/v2/index.js.map +1 -1
- package/dist/backend/backend/src/types/v2/trigger.types.d.ts +37 -0
- package/dist/backend/backend/src/types/v2/trigger.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/v2/trigger.types.js +19 -1
- package/dist/backend/backend/src/types/v2/trigger.types.js.map +1 -1
- package/dist/backend/build-info.json +2 -2
- package/dist/cli/backend/src/types/v2/index.d.ts +2 -2
- package/dist/cli/backend/src/types/v2/index.d.ts.map +1 -1
- package/dist/cli/backend/src/types/v2/index.js.map +1 -1
- package/dist/cli/backend/src/types/v2/trigger.types.d.ts +37 -0
- package/dist/cli/backend/src/types/v2/trigger.types.d.ts.map +1 -1
- package/dist/cli/backend/src/types/v2/trigger.types.js +19 -1
- package/dist/cli/backend/src/types/v2/trigger.types.js.map +1 -1
- package/package.json +1 -1
|
@@ -66,6 +66,20 @@ export declare class TeamTriggerReconciler {
|
|
|
66
66
|
* @returns Number of triggers removed
|
|
67
67
|
*/
|
|
68
68
|
unregisterAll(teamId: string): Promise<number>;
|
|
69
|
+
/**
|
|
70
|
+
* Whether this reconciler may manage (replace / delete) the trigger.
|
|
71
|
+
*
|
|
72
|
+
* - Explicit `managedBy: 'team-spec'` → yes.
|
|
73
|
+
* - Explicit `managedBy: 'agent'` → never.
|
|
74
|
+
* - No marker (row persisted before the field existed) → only while the
|
|
75
|
+
* spec still names it, so it converges to a marked row on the next drift
|
|
76
|
+
* or stays untouched; it can never be treated as an orphan.
|
|
77
|
+
*
|
|
78
|
+
* @param trigger - Engine trigger already filtered to this team + a name
|
|
79
|
+
* @param specsByName - The team's current spec, keyed by name
|
|
80
|
+
* @returns True if the reconciler owns the trigger's lifecycle
|
|
81
|
+
*/
|
|
82
|
+
private ownsTrigger;
|
|
69
83
|
private toCreateInput;
|
|
70
84
|
/**
|
|
71
85
|
* Shallow drift check — serialise the fields that define runtime behaviour
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"team-trigger-reconciler.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/team-trigger-reconciler.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAmB,MAAM,sBAAsB,CAAC;AAGlE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAOjE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,2DAA2D;IAC3D,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,4EAA4E;IAC5E,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,8EAA8E;IAC9E,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,qDAAqD;IACrD,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAMD;;;;;;;;;;GAUG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;gBAE7B,MAAM,EAAE,aAAa;IAOjC;;;;;;OAMG;IACG,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"team-trigger-reconciler.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/team-trigger-reconciler.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAmB,MAAM,sBAAsB,CAAC;AAGlE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAOjE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,2DAA2D;IAC3D,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,4EAA4E;IAC5E,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,8EAA8E;IAC9E,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,qDAAqD;IACrD,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAMD;;;;;;;;;;GAUG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;gBAE7B,MAAM,EAAE,aAAa;IAOjC;;;;;;OAMG;IACG,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAwFtD;;;;;;OAMG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAkBpD;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,aAAa;IAcrB;;;;OAIG;IACH,OAAO,CAAC,QAAQ;CAqBjB"}
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
*
|
|
17
17
|
* @module services/v3/team-trigger-reconciler.service
|
|
18
18
|
*/
|
|
19
|
-
import { DEFAULT_MAX_IDLE_FIRES } from '../../types/v2/trigger.types.js';
|
|
19
|
+
import { DEFAULT_MAX_IDLE_FIRES, isSpecManaged } from '../../types/v2/trigger.types.js';
|
|
20
20
|
import { LoggerService } from '../core/logger.service.js';
|
|
21
21
|
// ---------------------------------------------------------------------------
|
|
22
22
|
// Service
|
|
@@ -65,14 +65,24 @@ export class TeamTriggerReconciler {
|
|
|
65
65
|
}
|
|
66
66
|
specsByName.set(spec.name, spec);
|
|
67
67
|
}
|
|
68
|
-
// Pull
|
|
68
|
+
// Pull the engine-side triggers this reconciler OWNS for this team.
|
|
69
|
+
// `teamId` + `name` alone are not ownership: agent follow-ups
|
|
70
|
+
// (schedule-followup, watch-for-event) carry both, and deleting them at
|
|
71
|
+
// every boot / team save was Request 1b5b879b. Ownership is the explicit
|
|
72
|
+
// `managedBy: 'team-spec'` marker, plus one migration case: a legacy row
|
|
73
|
+
// without any marker is adopted when the spec currently names it, so the
|
|
74
|
+
// first reconcile after upgrade converges instead of duplicating.
|
|
69
75
|
const currentByName = new Map();
|
|
70
76
|
for (const trigger of this.engine.list()) {
|
|
71
|
-
if (trigger.teamId
|
|
77
|
+
if (trigger.teamId !== team.id || !trigger.name)
|
|
78
|
+
continue;
|
|
79
|
+
if (this.ownsTrigger(trigger, specsByName)) {
|
|
72
80
|
currentByName.set(trigger.name, trigger);
|
|
73
81
|
}
|
|
74
82
|
}
|
|
75
|
-
// 1) Delete
|
|
83
|
+
// 1) Delete OWNED triggers whose name disappeared from the spec. Only an
|
|
84
|
+
// explicitly marked trigger can be an orphan; an unmarked legacy row is
|
|
85
|
+
// never in currentByName unless the spec still names it.
|
|
76
86
|
for (const [name, trigger] of currentByName) {
|
|
77
87
|
if (!specsByName.has(name)) {
|
|
78
88
|
await this.engine.delete(trigger.id);
|
|
@@ -140,6 +150,26 @@ export class TeamTriggerReconciler {
|
|
|
140
150
|
// -------------------------------------------------------------------------
|
|
141
151
|
// Helpers
|
|
142
152
|
// -------------------------------------------------------------------------
|
|
153
|
+
/**
|
|
154
|
+
* Whether this reconciler may manage (replace / delete) the trigger.
|
|
155
|
+
*
|
|
156
|
+
* - Explicit `managedBy: 'team-spec'` → yes.
|
|
157
|
+
* - Explicit `managedBy: 'agent'` → never.
|
|
158
|
+
* - No marker (row persisted before the field existed) → only while the
|
|
159
|
+
* spec still names it, so it converges to a marked row on the next drift
|
|
160
|
+
* or stays untouched; it can never be treated as an orphan.
|
|
161
|
+
*
|
|
162
|
+
* @param trigger - Engine trigger already filtered to this team + a name
|
|
163
|
+
* @param specsByName - The team's current spec, keyed by name
|
|
164
|
+
* @returns True if the reconciler owns the trigger's lifecycle
|
|
165
|
+
*/
|
|
166
|
+
ownsTrigger(trigger, specsByName) {
|
|
167
|
+
if (isSpecManaged(trigger))
|
|
168
|
+
return true;
|
|
169
|
+
if (trigger.managedBy !== undefined)
|
|
170
|
+
return false;
|
|
171
|
+
return trigger.name !== undefined && specsByName.has(trigger.name);
|
|
172
|
+
}
|
|
143
173
|
toCreateInput(teamId, spec) {
|
|
144
174
|
return {
|
|
145
175
|
type: spec.config.type,
|
|
@@ -150,6 +180,7 @@ export class TeamTriggerReconciler {
|
|
|
150
180
|
maxIdleFires: spec.maxIdleFires,
|
|
151
181
|
teamId,
|
|
152
182
|
name: spec.name,
|
|
183
|
+
managedBy: 'team-spec',
|
|
153
184
|
};
|
|
154
185
|
}
|
|
155
186
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"team-trigger-reconciler.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/team-trigger-reconciler.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"team-trigger-reconciler.service.js","sourceRoot":"","sources":["../../../../../../backend/src/services/v3/team-trigger-reconciler.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,8 +15,8 @@ export type { Request, RequestStatus, IntentCategory, IntentLevel, CreateRequest
|
|
|
15
15
|
export { REQUEST_STATUSES, TERMINAL_REQUEST_STATUSES, INTENT_CATEGORIES, REQUEST_TRANSITIONS, isValidRequestStatus, isValidIntentCategory, isValidRequestTransition, isRequest, validateCreateRequestInput, createRequest, } from './request.types.js';
|
|
16
16
|
export type { WorkItem, WorkItemType, WorkItemOwner, WorkItemStatus, CreateWorkItemInput, UpdateWorkItemInput, } from './work-item.types.js';
|
|
17
17
|
export { WORK_ITEM_TYPES, WORK_ITEM_OWNERS, WORK_ITEM_STATUSES, TERMINAL_WORK_ITEM_STATUSES, WORK_ITEM_TRANSITIONS, DEFAULT_MAX_RETRIES, isValidWorkItemType, isValidWorkItemStatus, isValidWorkItemOwner, isValidWorkItemTransition, isWorkItem, validateCreateWorkItemInput, createWorkItem, LAST_REQUEUED_AT_METADATA_KEY, getTtlAnchorAt, } from './work-item.types.js';
|
|
18
|
-
export type { Trigger, TriggerType, TriggerStatus, TriggerConfig, TimeTriggerConfig, SignalTriggerConfig, CompoundTriggerConfig, TriggerAction, CreateTriggerInput, } from './trigger.types.js';
|
|
19
|
-
export { TRIGGER_TYPES, TRIGGER_STATUSES, DEFAULT_MAX_IDLE_FIRES, isValidTriggerType, isValidTriggerStatus, isValidTriggerConfig, isTrigger, isValidTriggerAction, validateCreateTriggerInput, createTrigger, } from './trigger.types.js';
|
|
18
|
+
export type { Trigger, TriggerType, TriggerStatus, TriggerConfig, TimeTriggerConfig, SignalTriggerConfig, CompoundTriggerConfig, TriggerAction, CreateTriggerInput, TRIGGER_MANAGED_BY, isSpecManaged, } from './trigger.types.js';
|
|
19
|
+
export { TRIGGER_TYPES, TRIGGER_STATUSES, DEFAULT_MAX_IDLE_FIRES, isValidTriggerType, isValidTriggerStatus, isValidTriggerConfig, isTrigger, isValidTriggerAction, validateCreateTriggerInput, createTrigger, TriggerManagedBy, } from './trigger.types.js';
|
|
20
20
|
export type { ReconcileResult, ReconcileType, ReconcileCorrection, ReconcilerConfig, ReconcilerStatus, WakeAction, WakeStrategy, AgentScoreBreakdown, } from './reconcile.types.js';
|
|
21
21
|
export { RECONCILE_TYPES, DEFAULT_RECONCILER_CONFIG, isValidReconcileType, isReconcileResult, isValidReconcilerConfig, createEmptyReconcileResult, createCorrection, } from './reconcile.types.js';
|
|
22
22
|
export type { TaskClaim, ClaimStatus, CreateClaimInput, } from './claim.types.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,YAAY,EACV,OAAO,EACP,aAAa,EACb,cAAc,EACd,WAAW,EACX,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,SAAS,EACT,0BAA0B,EAC1B,aAAa,GACd,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EACV,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,2BAA2B,EAC3B,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,UAAU,EACV,2BAA2B,EAC3B,cAAc,EACd,6BAA6B,EAC7B,cAAc,GACf,MAAM,sBAAsB,CAAC;AAG9B,YAAY,EACV,OAAO,EACP,WAAW,EACX,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,aAAa,EACb,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAYH,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,SAAS,EACT,0BAA0B,EAC1B,aAAa,GACd,MAAM,oBAAoB,CAAC;AAY5B,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,2BAA2B,EAC3B,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,UAAU,EACV,2BAA2B,EAC3B,cAAc,EACd,6BAA6B,EAC7B,cAAc,GACf,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAYH,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,SAAS,EACT,0BAA0B,EAC1B,aAAa,GACd,MAAM,oBAAoB,CAAC;AAY5B,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,2BAA2B,EAC3B,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,UAAU,EACV,2BAA2B,EAC3B,cAAc,EACd,6BAA6B,EAC7B,cAAc,GACf,MAAM,sBAAsB,CAAC;AAiB9B,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,SAAS,EACT,oBAAoB,EACpB,0BAA0B,EAC1B,aAAa,GAEd,MAAM,oBAAoB,CAAC;AAc5B,OAAO,EACL,eAAe,EACf,yBAAyB,EACzB,oBAAoB,EACpB,iBAAiB,EACjB,uBAAuB,EACvB,0BAA0B,EAC1B,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAS9B,OAAO,EACL,cAAc,EACd,yBAAyB,EACzB,6BAA6B,EAC7B,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,WAAW,EACX,cAAc,EACd,qBAAqB,EACrB,cAAc,EACd,wBAAwB,EACxB,eAAe,EACf,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAyB1B,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,SAAS,EACT,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACnB,qBAAqB,EACrB,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,WAAW,EACX,oBAAoB,EACpB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAmB5B,OAAO,EACL,eAAe,EACf,WAAW,EACX,sBAAsB,EACtB,uBAAuB,EACvB,mBAAmB,EACnB,eAAe,EACf,0BAA0B,EAC1B,WAAW,EACX,4BAA4B,EAC5B,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAY/B,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,0BAA0B,EAC1B,yBAAyB,EACzB,WAAW,EACX,4BAA4B,EAC5B,2BAA2B,EAC3B,eAAe,EACf,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC"}
|
|
@@ -21,6 +21,12 @@ export declare const TRIGGER_TYPES: readonly TriggerType[];
|
|
|
21
21
|
*/
|
|
22
22
|
export type TriggerStatus = 'active' | 'paused' | 'exhausted' | 'cancelled';
|
|
23
23
|
/** All valid TriggerStatus values. */
|
|
24
|
+
/**
|
|
25
|
+
* Who owns a trigger's lifecycle. See {@link Trigger.managedBy}.
|
|
26
|
+
*/
|
|
27
|
+
export type TriggerManagedBy = 'team-spec' | 'agent';
|
|
28
|
+
/** All valid TriggerManagedBy values. */
|
|
29
|
+
export declare const TRIGGER_MANAGED_BY: readonly TriggerManagedBy[];
|
|
24
30
|
export declare const TRIGGER_STATUSES: readonly TriggerStatus[];
|
|
25
31
|
/**
|
|
26
32
|
* Time trigger: fires on schedule or after delay.
|
|
@@ -121,6 +127,24 @@ export interface Trigger {
|
|
|
121
127
|
* `Team.triggers[].cronExpression` replaces instead of duplicating.
|
|
122
128
|
*/
|
|
123
129
|
name?: string;
|
|
130
|
+
/**
|
|
131
|
+
* Who owns this trigger's lifecycle — the reconciler's deletion authority.
|
|
132
|
+
*
|
|
133
|
+
* - `'team-spec'`: provisioned by the TeamTriggerReconciler from
|
|
134
|
+
* `Team.triggers[]`. The reconciler may delete it when its name leaves
|
|
135
|
+
* the spec.
|
|
136
|
+
* - `'agent'`: created by an agent skill (`schedule-followup`,
|
|
137
|
+
* `watch-for-event`, `delegate-task`), the API, or a mission. The
|
|
138
|
+
* reconciler never deletes these, even when they carry a `teamId` — it
|
|
139
|
+
* cannot prove it created them. `createTrigger` stamps this by default.
|
|
140
|
+
* - absent: a row persisted before this field existed. Treated as
|
|
141
|
+
* `'agent'` everywhere, with one exception: the reconciler adopts an
|
|
142
|
+
* unmarked row whose name the team spec *currently* lists (otherwise
|
|
143
|
+
* the first boot after upgrade would duplicate every spec trigger).
|
|
144
|
+
*
|
|
145
|
+
* `teamId` + `name` alone are NOT ownership: agent follow-ups carry both.
|
|
146
|
+
*/
|
|
147
|
+
managedBy?: TriggerManagedBy;
|
|
124
148
|
}
|
|
125
149
|
/**
|
|
126
150
|
* Input for creating a new Trigger.
|
|
@@ -134,6 +158,8 @@ export interface CreateTriggerInput {
|
|
|
134
158
|
maxIdleFires?: number;
|
|
135
159
|
/** Optional owning team (team-scoped triggers) */
|
|
136
160
|
teamId?: string;
|
|
161
|
+
/** Lifecycle owner; defaults to `'agent'`. Only the reconciler passes `'team-spec'`. */
|
|
162
|
+
managedBy?: TriggerManagedBy;
|
|
137
163
|
/** Optional stable name for reconciliation-by-identity */
|
|
138
164
|
name?: string;
|
|
139
165
|
}
|
|
@@ -198,4 +224,15 @@ export declare function validateCreateTriggerInput(input: CreateTriggerInput): s
|
|
|
198
224
|
* ```
|
|
199
225
|
*/
|
|
200
226
|
export declare function createTrigger(input: CreateTriggerInput): Trigger;
|
|
227
|
+
/**
|
|
228
|
+
* Whether the TeamTriggerReconciler owns this trigger's lifecycle.
|
|
229
|
+
*
|
|
230
|
+
* Only an explicit `'team-spec'` marker counts. A missing marker is a legacy
|
|
231
|
+
* row and a `'agent'` marker is an agent-created trigger; neither may be
|
|
232
|
+
* deleted as a spec orphan. Absence of proof is not proof of ownership.
|
|
233
|
+
*
|
|
234
|
+
* @param trigger - Any object carrying the optional `managedBy` field
|
|
235
|
+
* @returns True only when `managedBy === 'team-spec'`
|
|
236
|
+
*/
|
|
237
|
+
export declare function isSpecManaged(trigger: Pick<Trigger, 'managedBy'>): boolean;
|
|
201
238
|
//# sourceMappingURL=trigger.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trigger.types.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/trigger.types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAMrD;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEzD,oCAAoC;AACpC,eAAO,MAAM,aAAa,EAAE,SAAS,WAAW,EAA4C,CAAC;AAE7F;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,QAAQ,GACR,QAAQ,GACR,WAAW,GACX,WAAW,CAAC;AAEhB,sCAAsC;AACtC,eAAO,MAAM,gBAAgB,EAAE,SAAS,aAAa,EAK3C,CAAC;AAMX;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,QAAQ,CAAC;IACf,qEAAqE;IACrE,SAAS,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,UAAU,CAAC;IACjB,iCAAiC;IACjC,QAAQ,EAAE,KAAK,GAAG,IAAI,CAAC;IACvB,0BAA0B;IAC1B,UAAU,EAAE,CAAC,iBAAiB,GAAG,mBAAmB,CAAC,EAAE,CAAC;CACzD;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAAG,mBAAmB,GAAG,qBAAqB,CAAC;AAM5F;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,+CAA+C;IAC/C,cAAc,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,iDAAiD;IACjD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,WAAW,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAClD,yBAAyB;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAMD;;;;;GAKG;AACH,MAAM,WAAW,OAAO;IACtB,cAAc;IACd,EAAE,EAAE,MAAM,CAAC;IACX,2BAA2B;IAC3B,IAAI,EAAE,WAAW,CAAC;IAClB,qCAAqC;IACrC,MAAM,EAAE,aAAa,CAAC;IACtB,iDAAiD;IACjD,MAAM,EAAE,aAAa,CAAC;IACtB,uBAAuB;IACvB,MAAM,EAAE,aAAa,CAAC;IACtB,+BAA+B;IAC/B,SAAS,EAAE,MAAM,GAAG,cAAc,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC1D,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,YAAY,EAAE,MAAM,CAAC;IACrB,8CAA8C;IAC9C,oBAAoB,EAAE,MAAM,CAAC;IAC7B;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"trigger.types.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/trigger.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
import { v4 as uuidv4 } from 'uuid';
|
|
10
10
|
/** All valid TriggerType values. */
|
|
11
11
|
export const TRIGGER_TYPES = ['time', 'signal', 'compound'];
|
|
12
|
-
/** All valid
|
|
12
|
+
/** All valid TriggerManagedBy values. */
|
|
13
|
+
export const TRIGGER_MANAGED_BY = ['team-spec', 'agent'];
|
|
13
14
|
export const TRIGGER_STATUSES = [
|
|
14
15
|
'active',
|
|
15
16
|
'paused',
|
|
@@ -126,6 +127,9 @@ export function validateCreateTriggerInput(input) {
|
|
|
126
127
|
if (!input.createdBy) {
|
|
127
128
|
errors.push('createdBy is required');
|
|
128
129
|
}
|
|
130
|
+
if (input.managedBy !== undefined && !TRIGGER_MANAGED_BY.includes(input.managedBy)) {
|
|
131
|
+
errors.push(`managedBy must be one of: ${TRIGGER_MANAGED_BY.join(', ')}`);
|
|
132
|
+
}
|
|
129
133
|
if (input.maxFires !== undefined && (input.maxFires < 1 || !Number.isInteger(input.maxFires))) {
|
|
130
134
|
errors.push('maxFires must be a positive integer');
|
|
131
135
|
}
|
|
@@ -169,6 +173,20 @@ export function createTrigger(input) {
|
|
|
169
173
|
consecutiveIdleFires: 0,
|
|
170
174
|
teamId: input.teamId,
|
|
171
175
|
name: input.name,
|
|
176
|
+
managedBy: input.managedBy ?? 'agent',
|
|
172
177
|
};
|
|
173
178
|
}
|
|
179
|
+
/**
|
|
180
|
+
* Whether the TeamTriggerReconciler owns this trigger's lifecycle.
|
|
181
|
+
*
|
|
182
|
+
* Only an explicit `'team-spec'` marker counts. A missing marker is a legacy
|
|
183
|
+
* row and a `'agent'` marker is an agent-created trigger; neither may be
|
|
184
|
+
* deleted as a spec orphan. Absence of proof is not proof of ownership.
|
|
185
|
+
*
|
|
186
|
+
* @param trigger - Any object carrying the optional `managedBy` field
|
|
187
|
+
* @returns True only when `managedBy === 'team-spec'`
|
|
188
|
+
*/
|
|
189
|
+
export function isSpecManaged(trigger) {
|
|
190
|
+
return trigger.managedBy === 'team-spec';
|
|
191
|
+
}
|
|
174
192
|
//# sourceMappingURL=trigger.types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trigger.types.js","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/trigger.types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAepC,oCAAoC;AACpC,MAAM,CAAC,MAAM,aAAa,GAA2B,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"trigger.types.js","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/trigger.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,8 +15,8 @@ export type { Request, RequestStatus, IntentCategory, IntentLevel, CreateRequest
|
|
|
15
15
|
export { REQUEST_STATUSES, TERMINAL_REQUEST_STATUSES, INTENT_CATEGORIES, REQUEST_TRANSITIONS, isValidRequestStatus, isValidIntentCategory, isValidRequestTransition, isRequest, validateCreateRequestInput, createRequest, } from './request.types.js';
|
|
16
16
|
export type { WorkItem, WorkItemType, WorkItemOwner, WorkItemStatus, CreateWorkItemInput, UpdateWorkItemInput, } from './work-item.types.js';
|
|
17
17
|
export { WORK_ITEM_TYPES, WORK_ITEM_OWNERS, WORK_ITEM_STATUSES, TERMINAL_WORK_ITEM_STATUSES, WORK_ITEM_TRANSITIONS, DEFAULT_MAX_RETRIES, isValidWorkItemType, isValidWorkItemStatus, isValidWorkItemOwner, isValidWorkItemTransition, isWorkItem, validateCreateWorkItemInput, createWorkItem, LAST_REQUEUED_AT_METADATA_KEY, getTtlAnchorAt, } from './work-item.types.js';
|
|
18
|
-
export type { Trigger, TriggerType, TriggerStatus, TriggerConfig, TimeTriggerConfig, SignalTriggerConfig, CompoundTriggerConfig, TriggerAction, CreateTriggerInput, } from './trigger.types.js';
|
|
19
|
-
export { TRIGGER_TYPES, TRIGGER_STATUSES, DEFAULT_MAX_IDLE_FIRES, isValidTriggerType, isValidTriggerStatus, isValidTriggerConfig, isTrigger, isValidTriggerAction, validateCreateTriggerInput, createTrigger, } from './trigger.types.js';
|
|
18
|
+
export type { Trigger, TriggerType, TriggerStatus, TriggerConfig, TimeTriggerConfig, SignalTriggerConfig, CompoundTriggerConfig, TriggerAction, CreateTriggerInput, TRIGGER_MANAGED_BY, isSpecManaged, } from './trigger.types.js';
|
|
19
|
+
export { TRIGGER_TYPES, TRIGGER_STATUSES, DEFAULT_MAX_IDLE_FIRES, isValidTriggerType, isValidTriggerStatus, isValidTriggerConfig, isTrigger, isValidTriggerAction, validateCreateTriggerInput, createTrigger, TriggerManagedBy, } from './trigger.types.js';
|
|
20
20
|
export type { ReconcileResult, ReconcileType, ReconcileCorrection, ReconcilerConfig, ReconcilerStatus, WakeAction, WakeStrategy, AgentScoreBreakdown, } from './reconcile.types.js';
|
|
21
21
|
export { RECONCILE_TYPES, DEFAULT_RECONCILER_CONFIG, isValidReconcileType, isReconcileResult, isValidReconcilerConfig, createEmptyReconcileResult, createCorrection, } from './reconcile.types.js';
|
|
22
22
|
export type { TaskClaim, ClaimStatus, CreateClaimInput, } from './claim.types.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,YAAY,EACV,OAAO,EACP,aAAa,EACb,cAAc,EACd,WAAW,EACX,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,SAAS,EACT,0BAA0B,EAC1B,aAAa,GACd,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EACV,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,2BAA2B,EAC3B,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,UAAU,EACV,2BAA2B,EAC3B,cAAc,EACd,6BAA6B,EAC7B,cAAc,GACf,MAAM,sBAAsB,CAAC;AAG9B,YAAY,EACV,OAAO,EACP,WAAW,EACX,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,aAAa,EACb,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAYH,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,SAAS,EACT,0BAA0B,EAC1B,aAAa,GACd,MAAM,oBAAoB,CAAC;AAY5B,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,2BAA2B,EAC3B,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,UAAU,EACV,2BAA2B,EAC3B,cAAc,EACd,6BAA6B,EAC7B,cAAc,GACf,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAYH,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,SAAS,EACT,0BAA0B,EAC1B,aAAa,GACd,MAAM,oBAAoB,CAAC;AAY5B,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,2BAA2B,EAC3B,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,UAAU,EACV,2BAA2B,EAC3B,cAAc,EACd,6BAA6B,EAC7B,cAAc,GACf,MAAM,sBAAsB,CAAC;AAiB9B,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,SAAS,EACT,oBAAoB,EACpB,0BAA0B,EAC1B,aAAa,GAEd,MAAM,oBAAoB,CAAC;AAc5B,OAAO,EACL,eAAe,EACf,yBAAyB,EACzB,oBAAoB,EACpB,iBAAiB,EACjB,uBAAuB,EACvB,0BAA0B,EAC1B,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAS9B,OAAO,EACL,cAAc,EACd,yBAAyB,EACzB,6BAA6B,EAC7B,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,WAAW,EACX,cAAc,EACd,qBAAqB,EACrB,cAAc,EACd,wBAAwB,EACxB,eAAe,EACf,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAyB1B,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,SAAS,EACT,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACnB,qBAAqB,EACrB,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,WAAW,EACX,oBAAoB,EACpB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAmB5B,OAAO,EACL,eAAe,EACf,WAAW,EACX,sBAAsB,EACtB,uBAAuB,EACvB,mBAAmB,EACnB,eAAe,EACf,0BAA0B,EAC1B,WAAW,EACX,4BAA4B,EAC5B,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAY/B,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,0BAA0B,EAC1B,yBAAyB,EACzB,WAAW,EACX,4BAA4B,EAC5B,2BAA2B,EAC3B,eAAe,EACf,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC"}
|
|
@@ -21,6 +21,12 @@ export declare const TRIGGER_TYPES: readonly TriggerType[];
|
|
|
21
21
|
*/
|
|
22
22
|
export type TriggerStatus = 'active' | 'paused' | 'exhausted' | 'cancelled';
|
|
23
23
|
/** All valid TriggerStatus values. */
|
|
24
|
+
/**
|
|
25
|
+
* Who owns a trigger's lifecycle. See {@link Trigger.managedBy}.
|
|
26
|
+
*/
|
|
27
|
+
export type TriggerManagedBy = 'team-spec' | 'agent';
|
|
28
|
+
/** All valid TriggerManagedBy values. */
|
|
29
|
+
export declare const TRIGGER_MANAGED_BY: readonly TriggerManagedBy[];
|
|
24
30
|
export declare const TRIGGER_STATUSES: readonly TriggerStatus[];
|
|
25
31
|
/**
|
|
26
32
|
* Time trigger: fires on schedule or after delay.
|
|
@@ -121,6 +127,24 @@ export interface Trigger {
|
|
|
121
127
|
* `Team.triggers[].cronExpression` replaces instead of duplicating.
|
|
122
128
|
*/
|
|
123
129
|
name?: string;
|
|
130
|
+
/**
|
|
131
|
+
* Who owns this trigger's lifecycle — the reconciler's deletion authority.
|
|
132
|
+
*
|
|
133
|
+
* - `'team-spec'`: provisioned by the TeamTriggerReconciler from
|
|
134
|
+
* `Team.triggers[]`. The reconciler may delete it when its name leaves
|
|
135
|
+
* the spec.
|
|
136
|
+
* - `'agent'`: created by an agent skill (`schedule-followup`,
|
|
137
|
+
* `watch-for-event`, `delegate-task`), the API, or a mission. The
|
|
138
|
+
* reconciler never deletes these, even when they carry a `teamId` — it
|
|
139
|
+
* cannot prove it created them. `createTrigger` stamps this by default.
|
|
140
|
+
* - absent: a row persisted before this field existed. Treated as
|
|
141
|
+
* `'agent'` everywhere, with one exception: the reconciler adopts an
|
|
142
|
+
* unmarked row whose name the team spec *currently* lists (otherwise
|
|
143
|
+
* the first boot after upgrade would duplicate every spec trigger).
|
|
144
|
+
*
|
|
145
|
+
* `teamId` + `name` alone are NOT ownership: agent follow-ups carry both.
|
|
146
|
+
*/
|
|
147
|
+
managedBy?: TriggerManagedBy;
|
|
124
148
|
}
|
|
125
149
|
/**
|
|
126
150
|
* Input for creating a new Trigger.
|
|
@@ -134,6 +158,8 @@ export interface CreateTriggerInput {
|
|
|
134
158
|
maxIdleFires?: number;
|
|
135
159
|
/** Optional owning team (team-scoped triggers) */
|
|
136
160
|
teamId?: string;
|
|
161
|
+
/** Lifecycle owner; defaults to `'agent'`. Only the reconciler passes `'team-spec'`. */
|
|
162
|
+
managedBy?: TriggerManagedBy;
|
|
137
163
|
/** Optional stable name for reconciliation-by-identity */
|
|
138
164
|
name?: string;
|
|
139
165
|
}
|
|
@@ -198,4 +224,15 @@ export declare function validateCreateTriggerInput(input: CreateTriggerInput): s
|
|
|
198
224
|
* ```
|
|
199
225
|
*/
|
|
200
226
|
export declare function createTrigger(input: CreateTriggerInput): Trigger;
|
|
227
|
+
/**
|
|
228
|
+
* Whether the TeamTriggerReconciler owns this trigger's lifecycle.
|
|
229
|
+
*
|
|
230
|
+
* Only an explicit `'team-spec'` marker counts. A missing marker is a legacy
|
|
231
|
+
* row and a `'agent'` marker is an agent-created trigger; neither may be
|
|
232
|
+
* deleted as a spec orphan. Absence of proof is not proof of ownership.
|
|
233
|
+
*
|
|
234
|
+
* @param trigger - Any object carrying the optional `managedBy` field
|
|
235
|
+
* @returns True only when `managedBy === 'team-spec'`
|
|
236
|
+
*/
|
|
237
|
+
export declare function isSpecManaged(trigger: Pick<Trigger, 'managedBy'>): boolean;
|
|
201
238
|
//# sourceMappingURL=trigger.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trigger.types.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/trigger.types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAMrD;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEzD,oCAAoC;AACpC,eAAO,MAAM,aAAa,EAAE,SAAS,WAAW,EAA4C,CAAC;AAE7F;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,QAAQ,GACR,QAAQ,GACR,WAAW,GACX,WAAW,CAAC;AAEhB,sCAAsC;AACtC,eAAO,MAAM,gBAAgB,EAAE,SAAS,aAAa,EAK3C,CAAC;AAMX;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,QAAQ,CAAC;IACf,qEAAqE;IACrE,SAAS,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,UAAU,CAAC;IACjB,iCAAiC;IACjC,QAAQ,EAAE,KAAK,GAAG,IAAI,CAAC;IACvB,0BAA0B;IAC1B,UAAU,EAAE,CAAC,iBAAiB,GAAG,mBAAmB,CAAC,EAAE,CAAC;CACzD;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAAG,mBAAmB,GAAG,qBAAqB,CAAC;AAM5F;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,+CAA+C;IAC/C,cAAc,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,iDAAiD;IACjD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,WAAW,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAClD,yBAAyB;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAMD;;;;;GAKG;AACH,MAAM,WAAW,OAAO;IACtB,cAAc;IACd,EAAE,EAAE,MAAM,CAAC;IACX,2BAA2B;IAC3B,IAAI,EAAE,WAAW,CAAC;IAClB,qCAAqC;IACrC,MAAM,EAAE,aAAa,CAAC;IACtB,iDAAiD;IACjD,MAAM,EAAE,aAAa,CAAC;IACtB,uBAAuB;IACvB,MAAM,EAAE,aAAa,CAAC;IACtB,+BAA+B;IAC/B,SAAS,EAAE,MAAM,GAAG,cAAc,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC1D,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,YAAY,EAAE,MAAM,CAAC;IACrB,8CAA8C;IAC9C,oBAAoB,EAAE,MAAM,CAAC;IAC7B;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"trigger.types.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/trigger.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
import { v4 as uuidv4 } from 'uuid';
|
|
10
10
|
/** All valid TriggerType values. */
|
|
11
11
|
export const TRIGGER_TYPES = ['time', 'signal', 'compound'];
|
|
12
|
-
/** All valid
|
|
12
|
+
/** All valid TriggerManagedBy values. */
|
|
13
|
+
export const TRIGGER_MANAGED_BY = ['team-spec', 'agent'];
|
|
13
14
|
export const TRIGGER_STATUSES = [
|
|
14
15
|
'active',
|
|
15
16
|
'paused',
|
|
@@ -126,6 +127,9 @@ export function validateCreateTriggerInput(input) {
|
|
|
126
127
|
if (!input.createdBy) {
|
|
127
128
|
errors.push('createdBy is required');
|
|
128
129
|
}
|
|
130
|
+
if (input.managedBy !== undefined && !TRIGGER_MANAGED_BY.includes(input.managedBy)) {
|
|
131
|
+
errors.push(`managedBy must be one of: ${TRIGGER_MANAGED_BY.join(', ')}`);
|
|
132
|
+
}
|
|
129
133
|
if (input.maxFires !== undefined && (input.maxFires < 1 || !Number.isInteger(input.maxFires))) {
|
|
130
134
|
errors.push('maxFires must be a positive integer');
|
|
131
135
|
}
|
|
@@ -169,6 +173,20 @@ export function createTrigger(input) {
|
|
|
169
173
|
consecutiveIdleFires: 0,
|
|
170
174
|
teamId: input.teamId,
|
|
171
175
|
name: input.name,
|
|
176
|
+
managedBy: input.managedBy ?? 'agent',
|
|
172
177
|
};
|
|
173
178
|
}
|
|
179
|
+
/**
|
|
180
|
+
* Whether the TeamTriggerReconciler owns this trigger's lifecycle.
|
|
181
|
+
*
|
|
182
|
+
* Only an explicit `'team-spec'` marker counts. A missing marker is a legacy
|
|
183
|
+
* row and a `'agent'` marker is an agent-created trigger; neither may be
|
|
184
|
+
* deleted as a spec orphan. Absence of proof is not proof of ownership.
|
|
185
|
+
*
|
|
186
|
+
* @param trigger - Any object carrying the optional `managedBy` field
|
|
187
|
+
* @returns True only when `managedBy === 'team-spec'`
|
|
188
|
+
*/
|
|
189
|
+
export function isSpecManaged(trigger) {
|
|
190
|
+
return trigger.managedBy === 'team-spec';
|
|
191
|
+
}
|
|
174
192
|
//# sourceMappingURL=trigger.types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trigger.types.js","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/trigger.types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAepC,oCAAoC;AACpC,MAAM,CAAC,MAAM,aAAa,GAA2B,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"trigger.types.js","sourceRoot":"","sources":["../../../../../../backend/src/types/v2/trigger.types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "crewly",
|
|
3
|
-
"version": "1.20.
|
|
3
|
+
"version": "1.20.73",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Multi-agent orchestration platform for AI coding teams — coordinates Claude Code, Gemini CLI, and Codex agents with a real-time web dashboard",
|
|
6
6
|
"workspaces": [
|