@crewx/cron 0.1.10-rc.145 → 0.1.10-rc.147
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/cli.d.ts +1 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +10 -42
- package/dist/cli.js.map +1 -1
- package/dist/src/engine.d.ts +17 -5
- package/dist/src/engine.d.ts.map +1 -1
- package/dist/src/engine.js +740 -199
- package/dist/src/engine.js.map +1 -1
- package/dist/src/runtime.d.ts +128 -0
- package/dist/src/runtime.d.ts.map +1 -0
- package/dist/src/runtime.js +612 -0
- package/dist/src/runtime.js.map +1 -0
- package/dist/src/types.d.ts +63 -0
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/types.js +11 -0
- package/dist/src/types.js.map +1 -1
- package/package.json +3 -3
package/dist/src/types.d.ts
CHANGED
|
@@ -17,8 +17,69 @@ export interface Schedule {
|
|
|
17
17
|
updated_at: string;
|
|
18
18
|
run_count: number;
|
|
19
19
|
last_run?: string;
|
|
20
|
+
last_started_at?: string;
|
|
21
|
+
last_occurrence_key?: string;
|
|
22
|
+
last_outcome?: string;
|
|
20
23
|
next_run?: string | null;
|
|
21
24
|
}
|
|
25
|
+
export type CronStoreErrorCode = 'CRON_STORE_CORRUPT' | 'CRON_STORE_LOCK_TIMEOUT' | 'CRON_SCHEDULE_NOT_FOUND' | 'CRON_SCHEDULE_EXISTS';
|
|
26
|
+
export declare class CronStoreError extends Error {
|
|
27
|
+
readonly code: CronStoreErrorCode;
|
|
28
|
+
readonly filePath?: string;
|
|
29
|
+
constructor(code: CronStoreErrorCode, message: string, filePath?: string);
|
|
30
|
+
}
|
|
31
|
+
export interface ScheduleStoreLock {
|
|
32
|
+
workspacePath: string;
|
|
33
|
+
lockPath: string;
|
|
34
|
+
token: string;
|
|
35
|
+
}
|
|
36
|
+
export interface ScheduleStoreUpdate {
|
|
37
|
+
cron?: string;
|
|
38
|
+
command?: string;
|
|
39
|
+
mode?: ExecutionMode;
|
|
40
|
+
enabled?: boolean;
|
|
41
|
+
name?: string | null;
|
|
42
|
+
working_directory?: string | null;
|
|
43
|
+
timezone?: string | null;
|
|
44
|
+
timeout_ms?: number;
|
|
45
|
+
allow_concurrent?: boolean;
|
|
46
|
+
env?: Record<string, string> | null;
|
|
47
|
+
model?: string | null;
|
|
48
|
+
provider?: string | null;
|
|
49
|
+
}
|
|
50
|
+
export interface RecordStartedOptions {
|
|
51
|
+
startedAt?: string;
|
|
52
|
+
occurrenceKey?: string;
|
|
53
|
+
}
|
|
54
|
+
export interface ClaimOccurrenceOptions {
|
|
55
|
+
occurrenceKey: string;
|
|
56
|
+
startedAt?: string;
|
|
57
|
+
}
|
|
58
|
+
export interface ClaimOccurrenceResult {
|
|
59
|
+
claimed: boolean;
|
|
60
|
+
schedule: Schedule;
|
|
61
|
+
}
|
|
62
|
+
export interface RecordFinishedOptions {
|
|
63
|
+
finishedAt?: string;
|
|
64
|
+
nextRun?: string | null;
|
|
65
|
+
outcome?: string;
|
|
66
|
+
success?: boolean;
|
|
67
|
+
}
|
|
68
|
+
export interface ScheduleStore {
|
|
69
|
+
readonly workspacePath: string;
|
|
70
|
+
readonly dataDir: string;
|
|
71
|
+
readonly schedulesFile: string;
|
|
72
|
+
readonly lockFile: string;
|
|
73
|
+
list(): Schedule[];
|
|
74
|
+
get(id: string): Schedule | undefined;
|
|
75
|
+
create(schedule: Schedule): Schedule;
|
|
76
|
+
update(id: string, changes: ScheduleStoreUpdate): Schedule;
|
|
77
|
+
remove(id: string): Schedule;
|
|
78
|
+
toggle(id: string, enabled?: boolean): Schedule;
|
|
79
|
+
claimOccurrence(id: string | Schedule, options: ClaimOccurrenceOptions): ClaimOccurrenceResult;
|
|
80
|
+
recordStarted(id: string | Schedule, options?: RecordStartedOptions | string): Schedule;
|
|
81
|
+
recordFinished(id: string | Schedule, options?: RecordFinishedOptions): Schedule;
|
|
82
|
+
}
|
|
22
83
|
export interface DaemonStatus {
|
|
23
84
|
running: boolean;
|
|
24
85
|
pid: number | null;
|
|
@@ -35,6 +96,7 @@ export interface ExecuteResult {
|
|
|
35
96
|
export interface ExecuteScheduleOptions {
|
|
36
97
|
dir?: string;
|
|
37
98
|
trigger?: string;
|
|
99
|
+
occurrenceKey?: string;
|
|
38
100
|
overrides?: {
|
|
39
101
|
model?: string;
|
|
40
102
|
provider?: string;
|
|
@@ -48,6 +110,7 @@ export interface ExecuteScheduleRunning {
|
|
|
48
110
|
export interface ExecuteScheduleConflict {
|
|
49
111
|
status: 'conflict';
|
|
50
112
|
runningTaskId: string;
|
|
113
|
+
reason?: 'execution_lease' | 'occurrence_claim';
|
|
51
114
|
}
|
|
52
115
|
export interface ExecuteScheduleBlocked {
|
|
53
116
|
status: 'blocked';
|
package/dist/src/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;AAE5D,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE7B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE;QACT,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAMD,MAAM,WAAW,sBAAsB;IAErC,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,OAAO,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/src/types.js
CHANGED
|
@@ -1,3 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CronStoreError = void 0;
|
|
4
|
+
class CronStoreError extends Error {
|
|
5
|
+
constructor(code, message, filePath) {
|
|
6
|
+
super(message);
|
|
7
|
+
this.name = 'CronStoreError';
|
|
8
|
+
this.code = code;
|
|
9
|
+
this.filePath = filePath;
|
|
10
|
+
Object.setPrototypeOf(this, new.target.prototype);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.CronStoreError = CronStoreError;
|
|
3
14
|
//# sourceMappingURL=types.js.map
|
package/dist/src/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AA0CA,MAAa,cAAe,SAAQ,KAAK;IAIvC,YAAY,IAAwB,EAAE,OAAe,EAAE,QAAiB;QACtE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;CACF;AAXD,wCAWC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crewx/cron",
|
|
3
|
-
"version": "0.1.10-rc.
|
|
3
|
+
"version": "0.1.10-rc.147",
|
|
4
4
|
"description": "Cron Scheduler for CrewX - Schedule and execute crewx commands automatically",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"main": "dist/src/engine.js",
|
|
@@ -33,8 +33,8 @@
|
|
|
33
33
|
],
|
|
34
34
|
"license": "MIT",
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@crewx/sdk": "0.9.0-rc.
|
|
37
|
-
"@crewx/shared": "0.0.6-rc.
|
|
36
|
+
"@crewx/sdk": "0.9.0-rc.112",
|
|
37
|
+
"@crewx/shared": "0.0.6-rc.27"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
40
|
"@types/node": "^20.0.0",
|