@ai-dossier/cli 0.92.1 → 0.93.0-next.715.1
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/README.md +21 -2
- package/dist/batch-suite-runner.d.ts +2 -0
- package/dist/batch-suite-runner.d.ts.map +1 -1
- package/dist/batch-suite-runner.js +4 -3
- package/dist/batch-suite-runner.js.map +1 -1
- package/dist/cap-envelope.d.ts +18 -1
- package/dist/cap-envelope.d.ts.map +1 -1
- package/dist/cap-envelope.js +28 -0
- package/dist/cap-envelope.js.map +1 -1
- package/dist/cap-run-tracked.d.ts +74 -0
- package/dist/cap-run-tracked.d.ts.map +1 -0
- package/dist/cap-run-tracked.js +371 -0
- package/dist/cap-run-tracked.js.map +1 -0
- package/dist/commands/sched-service.d.ts +15 -0
- package/dist/commands/sched-service.d.ts.map +1 -1
- package/dist/commands/sched-service.js +10 -4
- package/dist/commands/sched-service.js.map +1 -1
- package/dist/commands/sched.d.ts +16 -1
- package/dist/commands/sched.d.ts.map +1 -1
- package/dist/commands/sched.js +135 -63
- package/dist/commands/sched.js.map +1 -1
- package/dist/sched-service.d.ts +1 -0
- package/dist/sched-service.d.ts.map +1 -1
- package/dist/sched-service.js +25 -0
- package/dist/sched-service.js.map +1 -1
- package/dist/sched-tick-runner.d.ts +26 -0
- package/dist/sched-tick-runner.d.ts.map +1 -0
- package/dist/sched-tick-runner.js +102 -0
- package/dist/sched-tick-runner.js.map +1 -0
- package/dist/sched-tick-worker.d.ts +40 -0
- package/dist/sched-tick-worker.d.ts.map +1 -0
- package/dist/sched-tick-worker.js +89 -0
- package/dist/sched-tick-worker.js.map +1 -0
- package/package.json +4 -4
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Main-thread side of the off-thread tick (#1233): owns the tick worker
|
|
4
|
+
* (`sched-tick-worker.ts`) and turns one tick into a promise, so `runLoop`'s
|
|
5
|
+
* event loop stays free — lease heartbeat, SIGTERM/SIGINT handling and the
|
|
6
|
+
* `engine-exit` journal line all keep working during a long batch gate.
|
|
7
|
+
*
|
|
8
|
+
* A worker that dies mid-tick (an uncaught error, a `process.exit` inside the
|
|
9
|
+
* tick, which in a worker ends only the worker) rejects that tick — `runLoop`
|
|
10
|
+
* journals it as `tick-failed` — and the next tick starts a fresh worker.
|
|
11
|
+
*/
|
|
12
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
13
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
14
|
+
};
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.INLINE_TICK_ENV = void 0;
|
|
17
|
+
exports.tickWorkerFile = tickWorkerFile;
|
|
18
|
+
exports.createWorkerTickRunner = createWorkerTickRunner;
|
|
19
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
20
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
21
|
+
const node_worker_threads_1 = require("node:worker_threads");
|
|
22
|
+
const sched_1 = require("@ai-dossier/sched");
|
|
23
|
+
/** `DOSSIER_SCHED_INLINE_TICK=1` keeps the pre-#1233 inline (main-thread) tick. */
|
|
24
|
+
exports.INLINE_TICK_ENV = 'DOSSIER_SCHED_INLINE_TICK';
|
|
25
|
+
/**
|
|
26
|
+
* The compiled worker entry next to this module, or null when it cannot run
|
|
27
|
+
* here (running from TypeScript sources under a test runner, a stripped build).
|
|
28
|
+
*/
|
|
29
|
+
function tickWorkerFile(dir = __dirname) {
|
|
30
|
+
const file = node_path_1.default.join(dir, 'sched-tick-worker.js');
|
|
31
|
+
return node_fs_1.default.existsSync(file) ? file : null;
|
|
32
|
+
}
|
|
33
|
+
function revive(error) {
|
|
34
|
+
const err = new Error(error.message);
|
|
35
|
+
err.name = error.name;
|
|
36
|
+
if (error.stack)
|
|
37
|
+
err.stack = error.stack;
|
|
38
|
+
return err;
|
|
39
|
+
}
|
|
40
|
+
function createWorkerTickRunner(workerFile, data, makeWorker = (file, d) => new node_worker_threads_1.Worker(file, { workerData: d })) {
|
|
41
|
+
let worker = null;
|
|
42
|
+
let nextId = 1;
|
|
43
|
+
const ensure = () => {
|
|
44
|
+
if (worker === null)
|
|
45
|
+
worker = makeWorker(workerFile, data);
|
|
46
|
+
return worker;
|
|
47
|
+
};
|
|
48
|
+
return {
|
|
49
|
+
runTick(config) {
|
|
50
|
+
const w = ensure();
|
|
51
|
+
const id = nextId++;
|
|
52
|
+
return new Promise((resolve, reject) => {
|
|
53
|
+
const cleanup = () => {
|
|
54
|
+
w.off('message', onMessage);
|
|
55
|
+
w.off('error', onError);
|
|
56
|
+
w.off('exit', onExit);
|
|
57
|
+
};
|
|
58
|
+
const drop = () => {
|
|
59
|
+
if (worker === w)
|
|
60
|
+
worker = null;
|
|
61
|
+
// A worker that died inside `withLock` left the state lock naming this
|
|
62
|
+
// (live) pid — nothing else would ever take it over (#1233).
|
|
63
|
+
if ((0, sched_1.releaseOwnStateLock)(data.stateDir)) {
|
|
64
|
+
process.stderr.write('⚠ sched: tick worker died holding the state lock — released it\n');
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
const onMessage = (msg) => {
|
|
68
|
+
if (msg.id !== id)
|
|
69
|
+
return;
|
|
70
|
+
cleanup();
|
|
71
|
+
if (msg.ok)
|
|
72
|
+
resolve(msg.result);
|
|
73
|
+
else
|
|
74
|
+
reject(revive(msg.error));
|
|
75
|
+
};
|
|
76
|
+
const onError = (err) => {
|
|
77
|
+
cleanup();
|
|
78
|
+
drop();
|
|
79
|
+
void w.terminate();
|
|
80
|
+
reject(err);
|
|
81
|
+
};
|
|
82
|
+
const onExit = (code) => {
|
|
83
|
+
cleanup();
|
|
84
|
+
drop();
|
|
85
|
+
reject(new Error(`sched tick worker exited (code ${code}) before finishing the tick`));
|
|
86
|
+
};
|
|
87
|
+
w.on('message', onMessage);
|
|
88
|
+
w.on('error', onError);
|
|
89
|
+
w.on('exit', onExit);
|
|
90
|
+
const request = { id, config };
|
|
91
|
+
w.postMessage(request);
|
|
92
|
+
});
|
|
93
|
+
},
|
|
94
|
+
async close() {
|
|
95
|
+
const w = worker;
|
|
96
|
+
worker = null;
|
|
97
|
+
if (w !== null)
|
|
98
|
+
await w.terminate();
|
|
99
|
+
},
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=sched-tick-runner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sched-tick-runner.js","sourceRoot":"","sources":["../src/sched-tick-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Worker-thread entry for the `sched start` loop (#1233).
|
|
3
|
+
*
|
|
4
|
+
* A tick is synchronous end to end — the batch gate it may run is a 25–55 min
|
|
5
|
+
* wait. Run on the engine's main thread, that wait froze the event loop: no
|
|
6
|
+
* lease heartbeat, no SIGTERM/SIGINT handler, so a host reaper's SIGTERM →
|
|
7
|
+
* SIGKILL landed as an unobservable SIGKILL. The loop now posts each tick here;
|
|
8
|
+
* the main thread stays free to heartbeat, handle signals and journal its exit.
|
|
9
|
+
*
|
|
10
|
+
* Protocol: the parent posts `{ id, config }`; this worker runs `tick` against
|
|
11
|
+
* engine deps built exactly as the inline path builds them (`buildEngineDeps`)
|
|
12
|
+
* and posts back `{ id, ok: true, result }` or `{ id, ok: false, error }`.
|
|
13
|
+
*/
|
|
14
|
+
import { type SchedConfig, type TickResult } from '@ai-dossier/sched';
|
|
15
|
+
export interface TickWorkerData {
|
|
16
|
+
stateDir: string;
|
|
17
|
+
repoDir: string;
|
|
18
|
+
anchorRepo?: string;
|
|
19
|
+
}
|
|
20
|
+
/** An Error flattened for `postMessage` (structured clone keeps no prototype). */
|
|
21
|
+
export interface SerializedError {
|
|
22
|
+
name: string;
|
|
23
|
+
message: string;
|
|
24
|
+
stack?: string;
|
|
25
|
+
}
|
|
26
|
+
export declare function serializeError(err: unknown): SerializedError;
|
|
27
|
+
export interface TickRequest {
|
|
28
|
+
id: number;
|
|
29
|
+
config: SchedConfig;
|
|
30
|
+
}
|
|
31
|
+
export type TickResponse = {
|
|
32
|
+
id: number;
|
|
33
|
+
ok: true;
|
|
34
|
+
result: TickResult;
|
|
35
|
+
} | {
|
|
36
|
+
id: number;
|
|
37
|
+
ok: false;
|
|
38
|
+
error: SerializedError;
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=sched-tick-worker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sched-tick-worker.d.ts","sourceRoot":"","sources":["../src/sched-tick-worker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,EAAW,KAAK,WAAW,EAAc,KAAK,UAAU,EAAQ,MAAM,mBAAmB,CAAC;AAGjG,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAKD,kFAAkF;AAClF,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,eAAe,CAG5D;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,MAAM,YAAY,GACpB;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,UAAU,CAAA;CAAE,GAC5C;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,eAAe,CAAA;CAAE,CAAC"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Worker-thread entry for the `sched start` loop (#1233).
|
|
4
|
+
*
|
|
5
|
+
* A tick is synchronous end to end — the batch gate it may run is a 25–55 min
|
|
6
|
+
* wait. Run on the engine's main thread, that wait froze the event loop: no
|
|
7
|
+
* lease heartbeat, no SIGTERM/SIGINT handler, so a host reaper's SIGTERM →
|
|
8
|
+
* SIGKILL landed as an unobservable SIGKILL. The loop now posts each tick here;
|
|
9
|
+
* the main thread stays free to heartbeat, handle signals and journal its exit.
|
|
10
|
+
*
|
|
11
|
+
* Protocol: the parent posts `{ id, config }`; this worker runs `tick` against
|
|
12
|
+
* engine deps built exactly as the inline path builds them (`buildEngineDeps`)
|
|
13
|
+
* and posts back `{ id, ok: true, result }` or `{ id, ok: false, error }`.
|
|
14
|
+
*/
|
|
15
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
16
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
17
|
+
};
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.serializeError = serializeError;
|
|
20
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
21
|
+
const node_worker_threads_1 = require("node:worker_threads");
|
|
22
|
+
const sched_1 = require("@ai-dossier/sched");
|
|
23
|
+
const sched_2 = require("./commands/sched");
|
|
24
|
+
/** Bounded retry for a full non-blocking stdout/stderr. */
|
|
25
|
+
const WRITE_RETRY_BUDGET_MS = 1_000;
|
|
26
|
+
function serializeError(err) {
|
|
27
|
+
const e = err instanceof Error ? err : new Error(String(err));
|
|
28
|
+
return { name: e.name, message: e.message, ...(e.stack ? { stack: e.stack } : {}) };
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* A worker's stdout/stderr are forwarded to the parent over a message port, which
|
|
32
|
+
* only drains when this thread's event loop turns — never during a synchronous
|
|
33
|
+
* gate wait. Write straight to the process's fds instead so engine diagnostics
|
|
34
|
+
* (and the "adopting in-flight gate" notice) appear when they happen.
|
|
35
|
+
*/
|
|
36
|
+
function writeThrough(fd) {
|
|
37
|
+
return ((chunk, ...rest) => {
|
|
38
|
+
const data = typeof chunk === 'string' ? Buffer.from(chunk) : chunk;
|
|
39
|
+
let offset = 0;
|
|
40
|
+
const giveUpAt = Date.now() + WRITE_RETRY_BUDGET_MS;
|
|
41
|
+
while (offset < data.length) {
|
|
42
|
+
try {
|
|
43
|
+
offset += node_fs_1.default.writeSync(fd, data, offset);
|
|
44
|
+
}
|
|
45
|
+
catch (err) {
|
|
46
|
+
// A non-blocking pipe/journald socket can be momentarily full: retry
|
|
47
|
+
// briefly. Anything else (EBADF, EPIPE) drops the line — a closed fd
|
|
48
|
+
// must never fail a tick.
|
|
49
|
+
if (err.code !== 'EAGAIN' || Date.now() > giveUpAt)
|
|
50
|
+
break;
|
|
51
|
+
Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, 10);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
const cb = rest.find((r) => typeof r === 'function');
|
|
55
|
+
cb?.();
|
|
56
|
+
return true;
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
if (node_worker_threads_1.parentPort !== null) {
|
|
60
|
+
process.stdout.write = writeThrough(1);
|
|
61
|
+
process.stderr.write = writeThrough(2);
|
|
62
|
+
const port = node_worker_threads_1.parentPort;
|
|
63
|
+
const data = node_worker_threads_1.workerData;
|
|
64
|
+
const store = new sched_1.SchedStore(data.stateDir);
|
|
65
|
+
let tickConfig;
|
|
66
|
+
const deps = (0, sched_2.buildEngineDeps)({
|
|
67
|
+
store,
|
|
68
|
+
journal: new sched_1.Journal(store.dir),
|
|
69
|
+
anchorRepo: data.anchorRepo,
|
|
70
|
+
repoDir: data.repoDir,
|
|
71
|
+
getTickConfig: () => {
|
|
72
|
+
if (tickConfig === undefined)
|
|
73
|
+
throw new Error('tick worker: no tick config yet');
|
|
74
|
+
return tickConfig;
|
|
75
|
+
},
|
|
76
|
+
});
|
|
77
|
+
port.on('message', (msg) => {
|
|
78
|
+
tickConfig = msg.config;
|
|
79
|
+
let response;
|
|
80
|
+
try {
|
|
81
|
+
response = { id: msg.id, ok: true, result: (0, sched_1.tick)(deps, msg.config) };
|
|
82
|
+
}
|
|
83
|
+
catch (err) {
|
|
84
|
+
response = { id: msg.id, ok: false, error: serializeError(err) };
|
|
85
|
+
}
|
|
86
|
+
port.postMessage(response);
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=sched-tick-worker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sched-tick-worker.js","sourceRoot":"","sources":["../src/sched-tick-worker.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-dossier/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.93.0-next.715.1",
|
|
4
4
|
"description": "CLI for signed, versioned agent skills and model-driven orchestration: create, verify, sign, publish, and install skills for Claude Code, Codex, OpenCode, and LLM tools.",
|
|
5
5
|
"main": "dist/cli.js",
|
|
6
6
|
"bin": {
|
|
@@ -56,9 +56,9 @@
|
|
|
56
56
|
"registry": "https://registry.npmjs.org"
|
|
57
57
|
},
|
|
58
58
|
"dependencies": {
|
|
59
|
-
"@ai-dossier/core": "
|
|
60
|
-
"@ai-dossier/sched": "
|
|
61
|
-
"@ai-dossier/worktree-pool": "
|
|
59
|
+
"@ai-dossier/core": "1.17.0-next.715.1",
|
|
60
|
+
"@ai-dossier/sched": "0.70.0-next.715.1",
|
|
61
|
+
"@ai-dossier/worktree-pool": "0.7.7-next.715.1",
|
|
62
62
|
"commander": "^12.1.0",
|
|
63
63
|
"yaml": "^2.8.3"
|
|
64
64
|
},
|