agent-oven 0.1.0 → 0.2.0
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/CLAUDE.md +63 -66
- package/README.md +59 -43
- package/dist/cli/commands/add.d.ts.map +1 -1
- package/dist/cli/commands/add.js +29 -7
- package/dist/cli/commands/add.js.map +1 -1
- package/dist/cli/commands/daemon.d.ts.map +1 -1
- package/dist/cli/commands/daemon.js +16 -22
- package/dist/cli/commands/daemon.js.map +1 -1
- package/dist/cli/commands/down.d.ts +1 -1
- package/dist/cli/commands/down.d.ts.map +1 -1
- package/dist/cli/commands/down.js +12 -12
- package/dist/cli/commands/down.js.map +1 -1
- package/dist/cli/commands/status.d.ts.map +1 -1
- package/dist/cli/commands/status.js +11 -9
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/commands/up.d.ts +1 -1
- package/dist/cli/commands/up.d.ts.map +1 -1
- package/dist/cli/commands/up.js +17 -17
- package/dist/cli/commands/up.js.map +1 -1
- package/dist/cli.js +14 -1
- package/dist/cli.js.map +1 -1
- package/dist/core/auth.d.ts +4 -1
- package/dist/core/auth.d.ts.map +1 -1
- package/dist/core/auth.js +20 -2
- package/dist/core/auth.js.map +1 -1
- package/dist/core/config.d.ts +0 -4
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +0 -6
- package/dist/core/config.js.map +1 -1
- package/dist/core/docker.d.ts +1 -17
- package/dist/core/docker.d.ts.map +1 -1
- package/dist/core/docker.js +148 -119
- package/dist/core/docker.js.map +1 -1
- package/dist/core/index.d.ts +2 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +2 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/jobs.d.ts +1 -0
- package/dist/core/jobs.d.ts.map +1 -1
- package/dist/core/jobs.js +13 -1
- package/dist/core/jobs.js.map +1 -1
- package/dist/core/platform-darwin.d.ts +37 -0
- package/dist/core/platform-darwin.d.ts.map +1 -0
- package/dist/core/platform-darwin.js +236 -0
- package/dist/core/platform-darwin.js.map +1 -0
- package/dist/core/platform-linux.d.ts +37 -0
- package/dist/core/platform-linux.d.ts.map +1 -0
- package/dist/core/platform-linux.js +198 -0
- package/dist/core/platform-linux.js.map +1 -0
- package/dist/core/platform.d.ts +63 -0
- package/dist/core/platform.d.ts.map +1 -0
- package/dist/core/platform.js +31 -0
- package/dist/core/platform.js.map +1 -0
- package/dist/core/scheduler-runner.d.ts.map +1 -1
- package/dist/core/scheduler-runner.js +17 -10
- package/dist/core/scheduler-runner.js.map +1 -1
- package/dist/core/scheduler.d.ts +28 -2
- package/dist/core/scheduler.d.ts.map +1 -1
- package/dist/core/scheduler.js +126 -11
- package/dist/core/scheduler.js.map +1 -1
- package/dist/core/setup.d.ts +7 -32
- package/dist/core/setup.d.ts.map +1 -1
- package/dist/core/setup.js +14 -149
- package/dist/core/setup.js.map +1 -1
- package/dist/core/types.d.ts +17 -4
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js.map +1 -1
- package/dist/core/update-check.d.ts +22 -0
- package/dist/core/update-check.d.ts.map +1 -0
- package/dist/core/update-check.js +184 -0
- package/dist/core/update-check.js.map +1 -0
- package/dist/tui/components/Dashboard.d.ts.map +1 -1
- package/dist/tui/components/Dashboard.js +19 -2
- package/dist/tui/components/Dashboard.js.map +1 -1
- package/dist/tui/components/InitWizard.d.ts.map +1 -1
- package/dist/tui/components/InitWizard.js +68 -54
- package/dist/tui/components/InitWizard.js.map +1 -1
- package/dist/tui/components/JobDetail.d.ts.map +1 -1
- package/dist/tui/components/JobDetail.js +1 -1
- package/dist/tui/components/JobDetail.js.map +1 -1
- package/dist/tui/components/JobForm.d.ts.map +1 -1
- package/dist/tui/components/JobForm.js +40 -23
- package/dist/tui/components/JobForm.js.map +1 -1
- package/dist/tui/components/JobList.js +3 -1
- package/dist/tui/components/JobList.js.map +1 -1
- package/images/pipeline-runner/Dockerfile +5 -1
- package/images/pipeline-runner/entrypoint.sh +25 -2
- package/package.json +5 -3
- package/scheduler.sh +7 -2
|
@@ -10,9 +10,10 @@ import { execa } from 'execa';
|
|
|
10
10
|
import * as fs from 'node:fs';
|
|
11
11
|
import * as path from 'node:path';
|
|
12
12
|
import { listJobs, updateLastRun, removeJob } from './jobs.js';
|
|
13
|
-
import {
|
|
13
|
+
import { runJob } from './docker.js';
|
|
14
14
|
import { shouldRunNow } from './scheduler.js';
|
|
15
15
|
import { getLogsDir, getSchedulerLogPath } from './config.js';
|
|
16
|
+
import { platform } from './platform.js';
|
|
16
17
|
/**
|
|
17
18
|
* Timestamped log to stdout.
|
|
18
19
|
* launchd redirects stdout/stderr to scheduler.log via the plist.
|
|
@@ -141,14 +142,19 @@ async function isJobRunning(jobId) {
|
|
|
141
142
|
}
|
|
142
143
|
}
|
|
143
144
|
/**
|
|
144
|
-
*
|
|
145
|
+
* Ensure the container runtime is available.
|
|
145
146
|
*/
|
|
146
|
-
async function
|
|
147
|
-
const status = await
|
|
147
|
+
async function ensureRuntime(config) {
|
|
148
|
+
const status = await platform.getRuntimeStatus();
|
|
148
149
|
if (status.running)
|
|
149
150
|
return;
|
|
150
|
-
|
|
151
|
-
|
|
151
|
+
if (platform.needsVM) {
|
|
152
|
+
log(`Runtime not running, starting with cpu=${config.colima.cpu} memory=${config.colima.memory} disk=${config.colima.disk}...`);
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
log('Runtime not running, checking Docker...');
|
|
156
|
+
}
|
|
157
|
+
await platform.ensureRuntime(config);
|
|
152
158
|
}
|
|
153
159
|
/**
|
|
154
160
|
* Run one complete scheduler tick.
|
|
@@ -185,22 +191,23 @@ export async function runSchedulerTick(config) {
|
|
|
185
191
|
log('Scheduler run completed');
|
|
186
192
|
return 0;
|
|
187
193
|
}
|
|
188
|
-
// --- Ensure
|
|
194
|
+
// --- Ensure container runtime ---
|
|
189
195
|
try {
|
|
190
|
-
await
|
|
196
|
+
await ensureRuntime(config);
|
|
191
197
|
}
|
|
192
198
|
catch (err) {
|
|
193
199
|
const msg = err instanceof Error ? err.message : String(err);
|
|
194
|
-
log(`ERROR: Failed to start
|
|
200
|
+
log(`ERROR: Failed to start container runtime: ${msg}`);
|
|
195
201
|
return 1;
|
|
196
202
|
}
|
|
197
203
|
// --- Process each job ---
|
|
204
|
+
const tickTime = new Date();
|
|
198
205
|
for (const job of jobs) {
|
|
199
206
|
// Skip disabled jobs
|
|
200
207
|
if (job.enabled === false)
|
|
201
208
|
continue;
|
|
202
209
|
// Check schedule
|
|
203
|
-
if (!shouldRunNow(job.schedule, job.last_run))
|
|
210
|
+
if (!shouldRunNow(job.schedule, job.last_run, tickTime, job.id))
|
|
204
211
|
continue;
|
|
205
212
|
// Skip if container is already running
|
|
206
213
|
if (await isJobRunning(job.id)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduler-runner.js","sourceRoot":"","sources":["../../src/core/scheduler-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"scheduler-runner.js","sourceRoot":"","sources":["../../src/core/scheduler-runner.ts"],"names":[],"mappings":"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"}
|
package/dist/core/scheduler.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Scheduler logic - cron parsing and schedule matching
|
|
3
3
|
*/
|
|
4
|
-
import type { Schedule } from './types.js';
|
|
4
|
+
import type { Schedule, RandomWindowSchedule } from './types.js';
|
|
5
5
|
/**
|
|
6
6
|
* Check if a cron expression matches the current time
|
|
7
7
|
*/
|
|
@@ -10,10 +10,36 @@ export declare function cronMatches(cronExpr: string, date?: Date): boolean;
|
|
|
10
10
|
* Check if a one-time schedule should run
|
|
11
11
|
*/
|
|
12
12
|
export declare function onceShouldRun(datetime: string, lastRun: string | null | undefined): boolean;
|
|
13
|
+
/**
|
|
14
|
+
* djb2 hash — returns a non-negative integer for a given seed string.
|
|
15
|
+
*/
|
|
16
|
+
export declare function deterministicHash(seed: string): number;
|
|
17
|
+
/**
|
|
18
|
+
* Parse an HH:MM string to minutes-from-midnight.
|
|
19
|
+
*/
|
|
20
|
+
export declare function parseHHMM(time: string): number;
|
|
21
|
+
/**
|
|
22
|
+
* Parse stored timestamps. Legacy values without timezone are treated as UTC.
|
|
23
|
+
*/
|
|
24
|
+
export declare function parseStoredTimestamp(timestamp: string): Date;
|
|
25
|
+
/**
|
|
26
|
+
* Check if a random-window schedule should run now.
|
|
27
|
+
* Uses a deterministic hash of (jobId + date) to pick a consistent minute within the window.
|
|
28
|
+
*/
|
|
29
|
+
export declare function randomWindowShouldRun(schedule: RandomWindowSchedule, lastRun: string | null | undefined, date: Date, jobId: string): boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Describe a random-window schedule in human-readable form.
|
|
32
|
+
*/
|
|
33
|
+
export declare function describeRandomWindow(schedule: RandomWindowSchedule): string;
|
|
34
|
+
/**
|
|
35
|
+
* Validate a random-window schedule configuration.
|
|
36
|
+
* Returns an error message string, or null if valid.
|
|
37
|
+
*/
|
|
38
|
+
export declare function validateRandomWindow(schedule: RandomWindowSchedule): string | null;
|
|
13
39
|
/**
|
|
14
40
|
* Check if a schedule should run now
|
|
15
41
|
*/
|
|
16
|
-
export declare function shouldRunNow(schedule: Schedule, lastRun?: string | null): boolean;
|
|
42
|
+
export declare function shouldRunNow(schedule: Schedule, lastRun?: string | null, date?: Date, jobId?: string): boolean;
|
|
17
43
|
/**
|
|
18
44
|
* Parse a cron expression and return human-readable description
|
|
19
45
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../src/core/scheduler.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAiC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../src/core/scheduler.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAiC,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAoFhG;;GAEG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,IAAiB,GAAG,OAAO,CAuB9E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAU3F;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMtD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAG9C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAK5D;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAClC,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,MAAM,GACZ,OAAO,CAsCT;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM,CAI3E;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM,GAAG,IAAI,CAkBlF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAU9G;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAgDrD;AAqCD;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CA8BrD;AAeD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAQ3D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAyB5D;AAuED;;GAEG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,GAAG,IAAI,CAyB1D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAsBrD"}
|
package/dist/core/scheduler.js
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* Cron field names for error messages
|
|
6
6
|
*/
|
|
7
7
|
const CRON_FIELDS = ['minute', 'hour', 'day', 'month', 'weekday'];
|
|
8
|
+
const LEGACY_UTC_TIMESTAMP_RE = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}$/;
|
|
8
9
|
/**
|
|
9
10
|
* Parse a cron field value and check if it matches the current value
|
|
10
11
|
*/
|
|
@@ -43,8 +44,8 @@ function matchesCronField(field, currentValue) {
|
|
|
43
44
|
return values.some((v) => matchesCronField(v.trim(), currentValue));
|
|
44
45
|
}
|
|
45
46
|
// Exact value
|
|
46
|
-
|
|
47
|
-
|
|
47
|
+
if (/^\d+$/.test(field)) {
|
|
48
|
+
const exactValue = Number(field);
|
|
48
49
|
return currentValue === exactValue;
|
|
49
50
|
}
|
|
50
51
|
return false;
|
|
@@ -103,16 +104,115 @@ export function onceShouldRun(datetime, lastRun) {
|
|
|
103
104
|
const now = Date.now();
|
|
104
105
|
return now >= targetTime;
|
|
105
106
|
}
|
|
107
|
+
/**
|
|
108
|
+
* djb2 hash — returns a non-negative integer for a given seed string.
|
|
109
|
+
*/
|
|
110
|
+
export function deterministicHash(seed) {
|
|
111
|
+
let hash = 5381;
|
|
112
|
+
for (let i = 0; i < seed.length; i++) {
|
|
113
|
+
hash = ((hash << 5) + hash + seed.charCodeAt(i)) | 0;
|
|
114
|
+
}
|
|
115
|
+
return Math.abs(hash);
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Parse an HH:MM string to minutes-from-midnight.
|
|
119
|
+
*/
|
|
120
|
+
export function parseHHMM(time) {
|
|
121
|
+
const [h, m] = time.split(':').map(Number);
|
|
122
|
+
return h * 60 + m;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Parse stored timestamps. Legacy values without timezone are treated as UTC.
|
|
126
|
+
*/
|
|
127
|
+
export function parseStoredTimestamp(timestamp) {
|
|
128
|
+
const normalized = LEGACY_UTC_TIMESTAMP_RE.test(timestamp)
|
|
129
|
+
? `${timestamp}Z`
|
|
130
|
+
: timestamp;
|
|
131
|
+
return new Date(normalized);
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Check if a random-window schedule should run now.
|
|
135
|
+
* Uses a deterministic hash of (jobId + date) to pick a consistent minute within the window.
|
|
136
|
+
*/
|
|
137
|
+
export function randomWindowShouldRun(schedule, lastRun, date, jobId) {
|
|
138
|
+
// Check weekday
|
|
139
|
+
if (!matchesWeekdayField(schedule.days ?? '*', date.getDay())) {
|
|
140
|
+
return false;
|
|
141
|
+
}
|
|
142
|
+
// Skip if already run today
|
|
143
|
+
if (lastRun) {
|
|
144
|
+
const lastRunDate = parseStoredTimestamp(lastRun);
|
|
145
|
+
if (!isNaN(lastRunDate.getTime())) {
|
|
146
|
+
if (lastRunDate.getFullYear() === date.getFullYear() &&
|
|
147
|
+
lastRunDate.getMonth() === date.getMonth() &&
|
|
148
|
+
lastRunDate.getDate() === date.getDate()) {
|
|
149
|
+
return false;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
// Compute window size in minutes (handles midnight-spanning)
|
|
154
|
+
const startMinutes = parseHHMM(schedule.start);
|
|
155
|
+
const endMinutes = parseHHMM(schedule.end);
|
|
156
|
+
const windowSize = endMinutes > startMinutes
|
|
157
|
+
? endMinutes - startMinutes
|
|
158
|
+
: (24 * 60 - startMinutes) + endMinutes;
|
|
159
|
+
if (windowSize <= 0)
|
|
160
|
+
return false;
|
|
161
|
+
// Deterministic offset from hash
|
|
162
|
+
const dateStr = `${date.getFullYear()}-${String(date.getMonth() + 1).padStart(2, '0')}-${String(date.getDate()).padStart(2, '0')}`;
|
|
163
|
+
const offset = deterministicHash(`${jobId}:${dateStr}`) % windowSize;
|
|
164
|
+
const targetMinutes = (startMinutes + offset) % (24 * 60);
|
|
165
|
+
const targetHour = Math.floor(targetMinutes / 60);
|
|
166
|
+
const targetMinute = targetMinutes % 60;
|
|
167
|
+
return date.getHours() === targetHour && date.getMinutes() === targetMinute;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Describe a random-window schedule in human-readable form.
|
|
171
|
+
*/
|
|
172
|
+
export function describeRandomWindow(schedule) {
|
|
173
|
+
const days = schedule.days ?? '*';
|
|
174
|
+
const prefix = days === '*' ? 'Daily' : `${describeWeekday(days)}`;
|
|
175
|
+
return `${prefix} randomly between ${schedule.start} and ${schedule.end}`;
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Validate a random-window schedule configuration.
|
|
179
|
+
* Returns an error message string, or null if valid.
|
|
180
|
+
*/
|
|
181
|
+
export function validateRandomWindow(schedule) {
|
|
182
|
+
const timeRe = /^([01]\d|2[0-3]):[0-5]\d$/;
|
|
183
|
+
if (!timeRe.test(schedule.start)) {
|
|
184
|
+
return `Invalid start time "${schedule.start}" (expected HH:MM in 24-hour format)`;
|
|
185
|
+
}
|
|
186
|
+
if (!timeRe.test(schedule.end)) {
|
|
187
|
+
return `Invalid end time "${schedule.end}" (expected HH:MM in 24-hour format)`;
|
|
188
|
+
}
|
|
189
|
+
if (schedule.start === schedule.end) {
|
|
190
|
+
return 'Start and end times must be different';
|
|
191
|
+
}
|
|
192
|
+
if (schedule.days !== undefined && schedule.days !== '*') {
|
|
193
|
+
// Validate the days field using cron weekday validation (single field from a 5-field expression)
|
|
194
|
+
const testCron = `0 0 * * ${schedule.days}`;
|
|
195
|
+
const err = validateCron(testCron);
|
|
196
|
+
if (err)
|
|
197
|
+
return `days: ${err}`;
|
|
198
|
+
}
|
|
199
|
+
return null;
|
|
200
|
+
}
|
|
106
201
|
/**
|
|
107
202
|
* Check if a schedule should run now
|
|
108
203
|
*/
|
|
109
|
-
export function shouldRunNow(schedule, lastRun) {
|
|
204
|
+
export function shouldRunNow(schedule, lastRun, date, jobId) {
|
|
110
205
|
if (schedule.type === 'cron') {
|
|
111
|
-
return cronMatches(schedule.cron);
|
|
206
|
+
return cronMatches(schedule.cron, date);
|
|
112
207
|
}
|
|
113
208
|
else if (schedule.type === 'once') {
|
|
114
209
|
return onceShouldRun(schedule.datetime, lastRun);
|
|
115
210
|
}
|
|
211
|
+
else if (schedule.type === 'random-window') {
|
|
212
|
+
if (!jobId)
|
|
213
|
+
return false;
|
|
214
|
+
return randomWindowShouldRun(schedule, lastRun, date ?? new Date(), jobId);
|
|
215
|
+
}
|
|
116
216
|
return false;
|
|
117
217
|
}
|
|
118
218
|
/**
|
|
@@ -241,6 +341,9 @@ export function describeSchedule(schedule) {
|
|
|
241
341
|
if (schedule.type === 'cron') {
|
|
242
342
|
return describeCron(schedule.cron);
|
|
243
343
|
}
|
|
344
|
+
else if (schedule.type === 'random-window') {
|
|
345
|
+
return describeRandomWindow(schedule);
|
|
346
|
+
}
|
|
244
347
|
else {
|
|
245
348
|
return describeOnce(schedule.datetime);
|
|
246
349
|
}
|
|
@@ -288,9 +391,16 @@ function validateCronField(field, min, max) {
|
|
|
288
391
|
}
|
|
289
392
|
// Handle step values
|
|
290
393
|
if (field.includes('/')) {
|
|
291
|
-
const
|
|
292
|
-
|
|
293
|
-
|
|
394
|
+
const stepParts = field.split('/');
|
|
395
|
+
if (stepParts.length !== 2) {
|
|
396
|
+
return `Invalid step expression: ${field}`;
|
|
397
|
+
}
|
|
398
|
+
const [range, step] = stepParts;
|
|
399
|
+
if (!/^\d+$/.test(step)) {
|
|
400
|
+
return `Invalid step value: ${step}`;
|
|
401
|
+
}
|
|
402
|
+
const stepNum = Number(step);
|
|
403
|
+
if (stepNum < 1) {
|
|
294
404
|
return `Invalid step value: ${step}`;
|
|
295
405
|
}
|
|
296
406
|
if (range !== '*') {
|
|
@@ -300,10 +410,12 @@ function validateCronField(field, min, max) {
|
|
|
300
410
|
}
|
|
301
411
|
// Handle ranges
|
|
302
412
|
if (field.includes('-')) {
|
|
303
|
-
const
|
|
304
|
-
if (
|
|
413
|
+
const rangeMatch = field.match(/^(\d+)-(\d+)$/);
|
|
414
|
+
if (!rangeMatch) {
|
|
305
415
|
return `Invalid range: ${field}`;
|
|
306
416
|
}
|
|
417
|
+
const start = Number(rangeMatch[1]);
|
|
418
|
+
const end = Number(rangeMatch[2]);
|
|
307
419
|
if (start < min || start > max) {
|
|
308
420
|
return `Start value ${start} out of range (${min}-${max})`;
|
|
309
421
|
}
|
|
@@ -316,10 +428,10 @@ function validateCronField(field, min, max) {
|
|
|
316
428
|
return null;
|
|
317
429
|
}
|
|
318
430
|
// Handle single value
|
|
319
|
-
|
|
320
|
-
if (isNaN(value)) {
|
|
431
|
+
if (!/^\d+$/.test(field)) {
|
|
321
432
|
return `Invalid value: ${field}`;
|
|
322
433
|
}
|
|
434
|
+
const value = Number(field);
|
|
323
435
|
if (value < min || value > max) {
|
|
324
436
|
return `Value ${value} out of range (${min}-${max})`;
|
|
325
437
|
}
|
|
@@ -333,6 +445,9 @@ export function getNextRun(schedule) {
|
|
|
333
445
|
const date = new Date(schedule.datetime);
|
|
334
446
|
return isNaN(date.getTime()) ? null : date;
|
|
335
447
|
}
|
|
448
|
+
if (schedule.type === 'random-window') {
|
|
449
|
+
return null; // Can't predict without jobId context
|
|
450
|
+
}
|
|
336
451
|
// For cron, find the next matching minute
|
|
337
452
|
const now = new Date();
|
|
338
453
|
const check = new Date(now);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../src/core/scheduler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../src/core/scheduler.ts"],"names":[],"mappings":"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"}
|
package/dist/core/setup.d.ts
CHANGED
|
@@ -2,25 +2,9 @@
|
|
|
2
2
|
* Setup logic for Agent Oven init wizard
|
|
3
3
|
* All functions are idempotent — they check state before acting.
|
|
4
4
|
*/
|
|
5
|
-
import {
|
|
5
|
+
import { isDockerAvailable } from './docker.js';
|
|
6
6
|
import type { Config } from './types.js';
|
|
7
|
-
export {
|
|
8
|
-
export interface DependencyStatus {
|
|
9
|
-
installed: boolean;
|
|
10
|
-
version?: string;
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Check if Homebrew is installed
|
|
14
|
-
*/
|
|
15
|
-
export declare function checkHomebrew(): Promise<DependencyStatus>;
|
|
16
|
-
/**
|
|
17
|
-
* Check if a command-line dependency exists
|
|
18
|
-
*/
|
|
19
|
-
export declare function checkDependency(name: string): Promise<DependencyStatus>;
|
|
20
|
-
/**
|
|
21
|
-
* Install a package via Homebrew
|
|
22
|
-
*/
|
|
23
|
-
export declare function brewInstall(pkg: string, onOutput?: (line: string) => void): Promise<'installed' | 'already-installed' | 'failed'>;
|
|
7
|
+
export { isDockerAvailable };
|
|
24
8
|
/**
|
|
25
9
|
* Create required directories and files
|
|
26
10
|
*/
|
|
@@ -44,26 +28,17 @@ export declare function buildImage(projectDir: string, imageName: string, onOutp
|
|
|
44
28
|
*/
|
|
45
29
|
export declare function detectTimezone(): string;
|
|
46
30
|
/**
|
|
47
|
-
* Resolve the command array for the
|
|
31
|
+
* Resolve the command array for the daemon config (plist/systemd ExecStart).
|
|
48
32
|
*
|
|
49
33
|
* Strategy:
|
|
50
34
|
* 1. Pin to the currently-running CLI process where possible.
|
|
51
35
|
* 2. Fallback to project-local dist/cli.js (for built source checkouts).
|
|
52
36
|
* 3. Fallback to package-local dist/cli.js (for npm global installs).
|
|
53
|
-
* 4.
|
|
37
|
+
* 4. Optional final fallback: legacy scheduler.sh for unbuilt source checkouts.
|
|
54
38
|
*/
|
|
55
|
-
export declare function resolveSchedulerCommand(projectDir: string
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
*/
|
|
59
|
-
export declare function generatePlistContent(projectDir: string): Promise<string>;
|
|
60
|
-
/**
|
|
61
|
-
* Install the launchd agent
|
|
62
|
-
*/
|
|
63
|
-
export declare function installLaunchd(projectDir: string): Promise<{
|
|
64
|
-
success: boolean;
|
|
65
|
-
error?: string;
|
|
66
|
-
}>;
|
|
39
|
+
export declare function resolveSchedulerCommand(projectDir: string, options?: {
|
|
40
|
+
allowLegacyFallback?: boolean;
|
|
41
|
+
}): Promise<string[]>;
|
|
67
42
|
/**
|
|
68
43
|
* Verify Docker is available and get version
|
|
69
44
|
*/
|
package/dist/core/setup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/core/setup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/core/setup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CA2BvF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAY3D;AAED;;GAEG;AACH,wBAAsB,UAAU,CAC9B,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAChC,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA8B/C;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED;;;;;;;;GAQG;AACH,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;IAAE,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAAE,GAC1C,OAAO,CAAC,MAAM,EAAE,CAAC,CA4CnB;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAYtF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,MAAM,CAsBT"}
|