@sublang/slc 0.1.0 → 0.3.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/README.md +126 -94
- package/dist/app.d.ts +13 -2
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +60 -11
- package/dist/app.js.map +1 -1
- package/dist/cligent-agent.d.ts +19 -0
- package/dist/cligent-agent.d.ts.map +1 -1
- package/dist/cligent-agent.js +125 -30
- package/dist/cligent-agent.js.map +1 -1
- package/dist/compiled-executor.d.ts +6 -0
- package/dist/compiled-executor.d.ts.map +1 -1
- package/dist/compiled-executor.js +1 -0
- package/dist/compiled-executor.js.map +1 -1
- package/dist/config-file.d.ts +9 -0
- package/dist/config-file.d.ts.map +1 -1
- package/dist/config-file.js +28 -2
- package/dist/config-file.js.map +1 -1
- package/dist/config.d.ts +8 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +12 -2
- package/dist/config.js.map +1 -1
- package/dist/emitted-imports.d.ts +6 -0
- package/dist/emitted-imports.d.ts.map +1 -0
- package/dist/emitted-imports.js +36 -0
- package/dist/emitted-imports.js.map +1 -0
- package/dist/entry-module.d.ts.map +1 -1
- package/dist/entry-module.js +3 -1
- package/dist/entry-module.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/playbook-ports.d.ts +8 -0
- package/dist/playbook-ports.d.ts.map +1 -1
- package/dist/playbook-ports.js +14 -2
- package/dist/playbook-ports.js.map +1 -1
- package/dist/progress.d.ts +71 -0
- package/dist/progress.d.ts.map +1 -0
- package/dist/progress.js +96 -0
- package/dist/progress.js.map +1 -0
- package/dist/runner.d.ts +6 -0
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +71 -1
- package/dist/runner.js.map +1 -1
- package/dist/slc.config.template.yaml +5 -1
- package/package.json +8 -5
- package/dist/file-capability.d.ts +0 -46
- package/dist/file-capability.d.ts.map +0 -1
- package/dist/file-capability.js +0 -234
- package/dist/file-capability.js.map +0 -1
- package/dist/file-grants.d.ts +0 -79
- package/dist/file-grants.d.ts.map +0 -1
- package/dist/file-grants.js +0 -133
- package/dist/file-grants.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -17,6 +17,7 @@ export * from './invocation.js';
|
|
|
17
17
|
export * from './link.js';
|
|
18
18
|
export * from './phase.js';
|
|
19
19
|
export * from './pipeline.js';
|
|
20
|
+
export * from './progress.js';
|
|
20
21
|
export * from './resolver.js';
|
|
21
22
|
export * from './runner.js';
|
|
22
23
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,0EAA0E;AAE1E;;;;;;GAMG;AAEH,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,0EAA0E;AAE1E;;;;;;GAMG;AAEH,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
|
package/dist/playbook-ports.d.ts
CHANGED
|
@@ -49,5 +49,13 @@ export declare function createPlaybookPorts(opts: {
|
|
|
49
49
|
* carry it.
|
|
50
50
|
*/
|
|
51
51
|
captainWorkspace?: string;
|
|
52
|
+
/**
|
|
53
|
+
* Live status sink (DR-019, PHEXEC-25): when set, human status and non-trace
|
|
54
|
+
* operational telemetry stream here as they occur instead of being collected
|
|
55
|
+
* for {@link PlaybookPortsAdapter.drainDiagnostics}, so a long compiled phase
|
|
56
|
+
* is observable while it runs. `playbook.trace` payloads are excluded from
|
|
57
|
+
* the streamed lines exactly as from ordinary diagnostics.
|
|
58
|
+
*/
|
|
59
|
+
onStatus?: (line: string) => void;
|
|
52
60
|
}): PlaybookPortsAdapter;
|
|
53
61
|
//# sourceMappingURL=playbook-ports.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"playbook-ports.d.ts","sourceRoot":"","sources":["../src/playbook-ports.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAGV,uBAAuB,EAKxB,MAAM,wBAAwB,CAAC;AAEhC,0EAA0E;AAC1E,MAAM,WAAW,oBAAqB,SAAQ,uBAAuB;IACnE,4EAA4E;IAC5E,gBAAgB,IAAI,MAAM,EAAE,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,WAAW,CAAC,CAAC;AAEhF,sFAAsF;AACtF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,iFAAiF;IACjF,MAAM,EAAE,eAAe,CAAC;IACxB,8DAA8D;IAC9D,KAAK,EAAE,WAAW,CAAC;IACnB,sEAAsE;IACtE,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC1C,wEAAwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kDAAkD;IAClD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"playbook-ports.d.ts","sourceRoot":"","sources":["../src/playbook-ports.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAGV,uBAAuB,EAKxB,MAAM,wBAAwB,CAAC;AAEhC,0EAA0E;AAC1E,MAAM,WAAW,oBAAqB,SAAQ,uBAAuB;IACnE,4EAA4E;IAC5E,gBAAgB,IAAI,MAAM,EAAE,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,WAAW,CAAC,CAAC;AAEhF,sFAAsF;AACtF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,iFAAiF;IACjF,MAAM,EAAE,eAAe,CAAC;IACxB,8DAA8D;IAC9D,KAAK,EAAE,WAAW,CAAC;IACnB,sEAAsE;IACtE,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC1C,wEAAwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kDAAkD;IAClD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC,GAAG,oBAAoB,CA2IvB"}
|
package/dist/playbook-ports.js
CHANGED
|
@@ -68,17 +68,29 @@ export function createPlaybookPorts(opts) {
|
|
|
68
68
|
return unsupportedNestedCall(request);
|
|
69
69
|
},
|
|
70
70
|
async emitStatus(message, data) {
|
|
71
|
-
|
|
71
|
+
report(data === undefined ? message : `${message} ${stringify(data)}`);
|
|
72
72
|
},
|
|
73
73
|
async emitTelemetry(event) {
|
|
74
74
|
if (event.topic === 'playbook.trace')
|
|
75
75
|
return;
|
|
76
|
-
|
|
76
|
+
report(`[${event.topic}] ${stringify(event.payload)}`);
|
|
77
77
|
},
|
|
78
78
|
drainDiagnostics() {
|
|
79
79
|
return diagnostics.splice(0);
|
|
80
80
|
},
|
|
81
81
|
};
|
|
82
|
+
/**
|
|
83
|
+
* Streams a non-trace line live when the host configured a sink, otherwise
|
|
84
|
+
* collects it as a drainable diagnostic — never both, so streamed lines do
|
|
85
|
+
* not repeat in the run's diagnostics (DR-019, PHEXEC-25).
|
|
86
|
+
*/
|
|
87
|
+
function report(line) {
|
|
88
|
+
if (opts.onStatus !== undefined) {
|
|
89
|
+
opts.onStatus(line);
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
diagnostics.push(line);
|
|
93
|
+
}
|
|
82
94
|
async function withSerialCaptain(signal, run) {
|
|
83
95
|
const previous = captainGate;
|
|
84
96
|
let release;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"playbook-ports.js","sourceRoot":"","sources":["../src/playbook-ports.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,0EAA0E;AA8C1E,sFAAsF;AACtF,MAAM,UAAU,mBAAmB,CAAC,
|
|
1
|
+
{"version":3,"file":"playbook-ports.js","sourceRoot":"","sources":["../src/playbook-ports.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* In-run progress reporting (DR-019).
|
|
3
|
+
*
|
|
4
|
+
* The step loop emits {@link ProgressEvent}s — phase start/finish/failure with
|
|
5
|
+
* elapsed times, plus streamed compiled-runtime status lines — through an
|
|
6
|
+
* optional {@link ProgressSink} on `SlcDeps` (CLI-32). The bin renders them as
|
|
7
|
+
* human-readable lines on stderr via {@link createProgressReporter}, which also
|
|
8
|
+
* owns the 30-second silence-bounded heartbeat (CLI-33): whenever no event has
|
|
9
|
+
* been rendered for the bound while a phase is in flight, it emits an
|
|
10
|
+
* elapsed-time heartbeat line. Timer construction is injectable so tests drive
|
|
11
|
+
* the heartbeat deterministically. The exact line format is host-owned
|
|
12
|
+
* presentation and deliberately unspecified. See specs/user/cli.md and
|
|
13
|
+
* specs/dev/cli.md.
|
|
14
|
+
*/
|
|
15
|
+
/** One in-run progress event the step loop reports (CLI-32). */
|
|
16
|
+
export type ProgressEvent = {
|
|
17
|
+
kind: 'phase-start';
|
|
18
|
+
phase: string;
|
|
19
|
+
target: string;
|
|
20
|
+
} | {
|
|
21
|
+
kind: 'phase-finish';
|
|
22
|
+
phase: string;
|
|
23
|
+
target: string;
|
|
24
|
+
elapsedMs: number;
|
|
25
|
+
} | {
|
|
26
|
+
kind: 'phase-fail';
|
|
27
|
+
phase: string;
|
|
28
|
+
target: string;
|
|
29
|
+
elapsedMs: number;
|
|
30
|
+
}
|
|
31
|
+
/** A streamed compiled-runtime status or telemetry line (PHEXEC-25). */
|
|
32
|
+
| {
|
|
33
|
+
kind: 'status';
|
|
34
|
+
text: string;
|
|
35
|
+
} | {
|
|
36
|
+
kind: 'heartbeat';
|
|
37
|
+
phase: string;
|
|
38
|
+
elapsedMs: number;
|
|
39
|
+
};
|
|
40
|
+
/** Receives progress events as they occur; injected beside the executors. */
|
|
41
|
+
export type ProgressSink = (event: ProgressEvent) => void;
|
|
42
|
+
/** The silence bound after which the reporter emits a heartbeat (CLI-33). */
|
|
43
|
+
export declare const HEARTBEAT_INTERVAL_MS = 30000;
|
|
44
|
+
/** Renders a duration as a compact human-readable elapsed time. */
|
|
45
|
+
export declare function formatElapsed(ms: number): string;
|
|
46
|
+
/** Renders one progress event as a single stderr line (host presentation). */
|
|
47
|
+
export declare function formatProgressEvent(event: ProgressEvent): string;
|
|
48
|
+
/** Timer seams for {@link createProgressReporter}; injected in tests. */
|
|
49
|
+
export interface ProgressTimers {
|
|
50
|
+
setInterval(callback: () => void, ms: number): unknown;
|
|
51
|
+
clearInterval(handle: unknown): void;
|
|
52
|
+
now(): number;
|
|
53
|
+
}
|
|
54
|
+
/** A progress reporter: the sink to inject plus a disposer for its timer. */
|
|
55
|
+
export interface ProgressReporter {
|
|
56
|
+
sink: ProgressSink;
|
|
57
|
+
/** Stops the heartbeat timer; call when the run settles. */
|
|
58
|
+
dispose(): void;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Builds the bin's progress reporter (CLI-35): renders each event as a line
|
|
62
|
+
* through `write`, and, while a phase is in flight, emits a heartbeat whenever
|
|
63
|
+
* no line has been written for `intervalMs` (CLI-33). The heartbeat's elapsed
|
|
64
|
+
* time counts from the running phase's start, so a long phase reads as one
|
|
65
|
+
* growing duration rather than a series of 30-second gaps.
|
|
66
|
+
*/
|
|
67
|
+
export declare function createProgressReporter(write: (line: string) => void, opts?: {
|
|
68
|
+
intervalMs?: number;
|
|
69
|
+
timers?: ProgressTimers;
|
|
70
|
+
}): ProgressReporter;
|
|
71
|
+
//# sourceMappingURL=progress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../src/progress.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;GAaG;AAEH,gEAAgE;AAChE,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC1E;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE;AAC1E,wEAAwE;GACtE;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5D,6EAA6E;AAC7E,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;AAE1D,6EAA6E;AAC7E,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAE5C,mEAAmE;AACnE,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAOhD;AAMD,8EAA8E;AAC9E,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAahE;AAED,yEAAyE;AACzE,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;IACvD,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IACrC,GAAG,IAAI,MAAM,CAAC;CACf;AAaD,6EAA6E;AAC7E,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,YAAY,CAAC;IACnB,4DAA4D;IAC5D,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAC7B,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,cAAc,CAAA;CAAO,GAC1D,gBAAgB,CA4ClB"}
|
package/dist/progress.js
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
// SPDX-FileCopyrightText: 2026 SubLang International <https://sublang.ai>
|
|
3
|
+
/** The silence bound after which the reporter emits a heartbeat (CLI-33). */
|
|
4
|
+
export const HEARTBEAT_INTERVAL_MS = 30_000;
|
|
5
|
+
/** Renders a duration as a compact human-readable elapsed time. */
|
|
6
|
+
export function formatElapsed(ms) {
|
|
7
|
+
const seconds = Math.max(0, Math.round(ms / 1000));
|
|
8
|
+
if (seconds < 60)
|
|
9
|
+
return `${seconds}s`;
|
|
10
|
+
const minutes = Math.floor(seconds / 60);
|
|
11
|
+
if (minutes < 60)
|
|
12
|
+
return `${minutes}m${pad(seconds % 60)}s`;
|
|
13
|
+
const hours = Math.floor(minutes / 60);
|
|
14
|
+
return `${hours}h${pad(minutes % 60)}m`;
|
|
15
|
+
}
|
|
16
|
+
function pad(value) {
|
|
17
|
+
return value.toString().padStart(2, '0');
|
|
18
|
+
}
|
|
19
|
+
/** Renders one progress event as a single stderr line (host presentation). */
|
|
20
|
+
export function formatProgressEvent(event) {
|
|
21
|
+
switch (event.kind) {
|
|
22
|
+
case 'phase-start':
|
|
23
|
+
return `→ ${event.phase} (writing ${event.target})`;
|
|
24
|
+
case 'phase-finish':
|
|
25
|
+
return `✓ ${event.phase} wrote ${event.target} (${formatElapsed(event.elapsedMs)})`;
|
|
26
|
+
case 'phase-fail':
|
|
27
|
+
return `✗ ${event.phase} failed at ${event.target} (${formatElapsed(event.elapsedMs)})`;
|
|
28
|
+
case 'status':
|
|
29
|
+
return `◇ ${event.text}`;
|
|
30
|
+
case 'heartbeat':
|
|
31
|
+
return `… ${event.phase} still running (${formatElapsed(event.elapsedMs)})`;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
const defaultTimers = {
|
|
35
|
+
setInterval: (callback, ms) => {
|
|
36
|
+
const handle = setInterval(callback, ms);
|
|
37
|
+
// Never keep the process alive just for the heartbeat.
|
|
38
|
+
handle.unref?.();
|
|
39
|
+
return handle;
|
|
40
|
+
},
|
|
41
|
+
clearInterval: (handle) => clearInterval(handle),
|
|
42
|
+
now: () => Date.now(),
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* Builds the bin's progress reporter (CLI-35): renders each event as a line
|
|
46
|
+
* through `write`, and, while a phase is in flight, emits a heartbeat whenever
|
|
47
|
+
* no line has been written for `intervalMs` (CLI-33). The heartbeat's elapsed
|
|
48
|
+
* time counts from the running phase's start, so a long phase reads as one
|
|
49
|
+
* growing duration rather than a series of 30-second gaps.
|
|
50
|
+
*/
|
|
51
|
+
export function createProgressReporter(write, opts = {}) {
|
|
52
|
+
const timers = opts.timers ?? defaultTimers;
|
|
53
|
+
const intervalMs = opts.intervalMs ?? HEARTBEAT_INTERVAL_MS;
|
|
54
|
+
let running;
|
|
55
|
+
let lastLineAt = timers.now();
|
|
56
|
+
let handle;
|
|
57
|
+
const emit = (event) => {
|
|
58
|
+
write(`${formatProgressEvent(event)}\n`);
|
|
59
|
+
lastLineAt = timers.now();
|
|
60
|
+
};
|
|
61
|
+
const sink = (event) => {
|
|
62
|
+
if (event.kind === 'phase-start') {
|
|
63
|
+
running = { phase: event.phase, startedAt: timers.now() };
|
|
64
|
+
}
|
|
65
|
+
else if (event.kind === 'phase-finish' || event.kind === 'phase-fail') {
|
|
66
|
+
running = undefined;
|
|
67
|
+
}
|
|
68
|
+
emit(event);
|
|
69
|
+
};
|
|
70
|
+
if (intervalMs > 0) {
|
|
71
|
+
// Tick finer than the bound so worst-case silence stays near the bound
|
|
72
|
+
// itself rather than approaching twice it.
|
|
73
|
+
const tickMs = Math.max(250, Math.floor(intervalMs / 6));
|
|
74
|
+
handle = timers.setInterval(() => {
|
|
75
|
+
if (running === undefined)
|
|
76
|
+
return;
|
|
77
|
+
const now = timers.now();
|
|
78
|
+
if (now - lastLineAt < intervalMs)
|
|
79
|
+
return;
|
|
80
|
+
emit({
|
|
81
|
+
kind: 'heartbeat',
|
|
82
|
+
phase: running.phase,
|
|
83
|
+
elapsedMs: now - running.startedAt,
|
|
84
|
+
});
|
|
85
|
+
}, tickMs);
|
|
86
|
+
}
|
|
87
|
+
return {
|
|
88
|
+
sink,
|
|
89
|
+
dispose: () => {
|
|
90
|
+
if (handle !== undefined)
|
|
91
|
+
timers.clearInterval(handle);
|
|
92
|
+
handle = undefined;
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=progress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress.js","sourceRoot":"","sources":["../src/progress.ts"],"names":[],"mappings":"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"}
|
package/dist/runner.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type PhaseExecutor } from './execution.js';
|
|
2
|
+
import type { ProgressSink } from './progress.js';
|
|
2
3
|
import { type PinRecord } from './pins.js';
|
|
3
4
|
import { type PipelineResolver } from './pipeline.js';
|
|
4
5
|
/** A current pinned phase and the record that selected its compiled artifact. */
|
|
@@ -25,6 +26,11 @@ export interface SlcDeps {
|
|
|
25
26
|
/** Invocation working directory anchoring artifact placement (DR-014); defaults to the process cwd. */
|
|
26
27
|
cwd?: string;
|
|
27
28
|
signal?: AbortSignal;
|
|
29
|
+
/**
|
|
30
|
+
* Receives phase start/finish/failure events with elapsed times as the run
|
|
31
|
+
* progresses (DR-019, CLI-32). Absent for hosts that want a quiet run.
|
|
32
|
+
*/
|
|
33
|
+
progress?: ProgressSink;
|
|
28
34
|
}
|
|
29
35
|
/** The outcome of an `slc` run. */
|
|
30
36
|
export interface SlcResult {
|
package/dist/runner.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAoBA,OAAO,EAEL,KAAK,aAAa,EAGnB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAuC,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAEhF,OAAO,EAEL,KAAK,gBAAgB,EAGtB,MAAM,eAAe,CAAC;AAavB,iFAAiF;AACjF,MAAM,WAAW,iBAAiB;IAChC,sEAAsE;IACtE,KAAK,EAAE,MAAM,CAAC;IACd,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,MAAM,EAAE,SAAS,CAAC;CACnB;AAED,4CAA4C;AAC5C,MAAM,WAAW,OAAO;IACtB,uEAAuE;IACvE,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,uFAAuF;IACvF,QAAQ,EAAE,aAAa,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,iBAAiB,KAAK,aAAa,CAAC;IAC3D,uGAAuG;IACvG,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;OAGG;IACH,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED,mCAAmC;AACnC,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,OAAO,CAAC;IACZ,wCAAwC;IACxC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,sEAAsE;IACtE,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAsB,MAAM,CAC1B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,SAAS,CAAC,CAoCpB;AA4VD,6EAA6E;AAC7E,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD"}
|
package/dist/runner.js
CHANGED
|
@@ -14,6 +14,7 @@ import { dirname, join } from 'node:path';
|
|
|
14
14
|
import { fileURLToPath } from 'node:url';
|
|
15
15
|
import { artifactDir, planArtifacts, parseSource } from './artifacts.js';
|
|
16
16
|
import { emitEntryModule } from './entry-module.js';
|
|
17
|
+
import { unresolvableRelativeImports } from './emitted-imports.js';
|
|
17
18
|
import { formatFailureReport, runPhase, } from './execution.js';
|
|
18
19
|
import { parseInvocation } from './invocation.js';
|
|
19
20
|
import { linkedArtifactPath, loadLinkFile } from './link.js';
|
|
@@ -231,6 +232,18 @@ async function runFullLink(invocation, deps) {
|
|
|
231
232
|
gearsPath: gearsPlan.path,
|
|
232
233
|
textPath,
|
|
233
234
|
});
|
|
235
|
+
const missing = await unresolvableRelativeImports(entryPath);
|
|
236
|
+
if (missing.length > 0) {
|
|
237
|
+
return {
|
|
238
|
+
ok: false,
|
|
239
|
+
outputs: verified.outputs,
|
|
240
|
+
diagnostics: [
|
|
241
|
+
...verified.diagnostics,
|
|
242
|
+
`entry module ${entryPath} has unresolvable relative imports: ` +
|
|
243
|
+
`${missing.join(', ')} (VERIFY-18)`,
|
|
244
|
+
],
|
|
245
|
+
};
|
|
246
|
+
}
|
|
234
247
|
return { ...verified, outputs: [...verified.outputs, entryPath] };
|
|
235
248
|
}
|
|
236
249
|
}
|
|
@@ -417,8 +430,31 @@ async function executeSteps(steps, pipeline, deps) {
|
|
|
417
430
|
const target = step.request.kind === 'compile'
|
|
418
431
|
? step.request.target
|
|
419
432
|
: step.request.linked;
|
|
420
|
-
|
|
433
|
+
// In-run progress (DR-019, CLI-32): announce the phase, then report its
|
|
434
|
+
// outcome with the elapsed time.
|
|
435
|
+
const startedAt = Date.now();
|
|
436
|
+
deps.progress?.({ kind: 'phase-start', phase: step.phase, target });
|
|
437
|
+
const fail = () => deps.progress?.({
|
|
438
|
+
kind: 'phase-fail',
|
|
439
|
+
phase: step.phase,
|
|
440
|
+
target,
|
|
441
|
+
elapsedMs: Date.now() - startedAt,
|
|
442
|
+
});
|
|
443
|
+
// Selecting a compiled executor can throw rather than return a verdict —
|
|
444
|
+
// notably an unmapped pinned Playbook provenance, which the host factory
|
|
445
|
+
// rejects (PHEXEC-30). That is the same fail-closed family as a stale pin,
|
|
446
|
+
// so it is reported through the phase-failure path; letting it unwind
|
|
447
|
+
// would strand the phase-start line with no terminal event and drop the
|
|
448
|
+
// phase and target from the report (CLI-4, CLI-32, PHEXEC-27).
|
|
449
|
+
let selection;
|
|
450
|
+
try {
|
|
451
|
+
selection = await selectExecutor(step.phase, pipeline.dir, pinFile, deps);
|
|
452
|
+
}
|
|
453
|
+
catch (error) {
|
|
454
|
+
selection = { kind: 'fail', reasons: [messageOf(error)] };
|
|
455
|
+
}
|
|
421
456
|
if (selection.kind === 'fail') {
|
|
457
|
+
fail();
|
|
422
458
|
diagnostics.push(formatFailureReport({
|
|
423
459
|
phase: step.phase,
|
|
424
460
|
target,
|
|
@@ -436,10 +472,44 @@ async function executeSteps(steps, pipeline, deps) {
|
|
|
436
472
|
signal: deps.signal,
|
|
437
473
|
});
|
|
438
474
|
if (!result.ok) {
|
|
475
|
+
fail();
|
|
439
476
|
diagnostics.push(formatFailureReport(result.report));
|
|
440
477
|
return { ok: false, outputs, diagnostics };
|
|
441
478
|
}
|
|
442
479
|
diagnostics.push(...result.diagnostics);
|
|
480
|
+
// A linked module that cannot resolve its own relative imports cannot
|
|
481
|
+
// load under `playbook run`; fail the link rather than report success
|
|
482
|
+
// for a dead artifact (VERIFY-18).
|
|
483
|
+
if (step.phase === 'link' &&
|
|
484
|
+
(step.targetExt === '.ts' || step.targetExt === '.js')) {
|
|
485
|
+
let missing;
|
|
486
|
+
try {
|
|
487
|
+
missing = await unresolvableRelativeImports(step.request.kind === 'link' ? step.request.linked : target);
|
|
488
|
+
}
|
|
489
|
+
catch (error) {
|
|
490
|
+
// A target that cannot even be read is a dead artifact too — a
|
|
491
|
+
// directory at the linked path passes the DR-003 existence and
|
|
492
|
+
// extension checks and then fails the read. Fail the link here so
|
|
493
|
+
// every started phase still reaches a terminal event (CLI-32).
|
|
494
|
+
fail();
|
|
495
|
+
diagnostics.push(`linked module ${target} could not be read: ${messageOf(error)} — ` +
|
|
496
|
+
'an emitted module that cannot load fails the link (VERIFY-18)');
|
|
497
|
+
return { ok: false, outputs, diagnostics };
|
|
498
|
+
}
|
|
499
|
+
if (missing.length > 0) {
|
|
500
|
+
fail();
|
|
501
|
+
diagnostics.push(`linked module ${target} has unresolvable relative imports: ` +
|
|
502
|
+
`${missing.join(', ')} — an emitted module that cannot load ` +
|
|
503
|
+
'fails the link (VERIFY-18)');
|
|
504
|
+
return { ok: false, outputs, diagnostics };
|
|
505
|
+
}
|
|
506
|
+
}
|
|
507
|
+
deps.progress?.({
|
|
508
|
+
kind: 'phase-finish',
|
|
509
|
+
phase: step.phase,
|
|
510
|
+
target,
|
|
511
|
+
elapsedMs: Date.now() - startedAt,
|
|
512
|
+
});
|
|
443
513
|
outputs.push(target);
|
|
444
514
|
}
|
|
445
515
|
return { ok: true, outputs, diagnostics };
|
package/dist/runner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# slc configuration, seeded on first run (DR-015). Environment variables
|
|
2
|
-
# SLC_AGENT / SLC_MODEL / SLC_EFFORT override these per
|
|
2
|
+
# SLC_AGENT / SLC_MODEL / SLC_EFFORT / SLC_STALL_TIMEOUT override these per
|
|
3
|
+
# key (DR-006).
|
|
3
4
|
agent: claude-code
|
|
4
5
|
# model: claude-opus-4-8
|
|
5
6
|
# effort: high
|
|
7
|
+
# Seconds of agent inactivity before a stalled call fails the run (DR-019);
|
|
8
|
+
# 0 disables the watchdog.
|
|
9
|
+
# stallTimeout: 600
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sublang/slc",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "SubLang Compiler (slc): runs phase pipelines.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -41,9 +41,10 @@
|
|
|
41
41
|
"node": ">=23.6"
|
|
42
42
|
},
|
|
43
43
|
"scripts": {
|
|
44
|
-
"build": "tsc && cp src/normalize.md src/slc.config.template.yaml dist/",
|
|
44
|
+
"build": "rm -rf dist && tsc && cp src/normalize.md src/slc.config.template.yaml dist/",
|
|
45
45
|
"test": "vitest run",
|
|
46
46
|
"test:package": "node scripts/test-package.mjs",
|
|
47
|
+
"test:acceptance": "node scripts/test-acceptance.mjs",
|
|
47
48
|
"lint": "eslint .",
|
|
48
49
|
"format": "prettier --write .",
|
|
49
50
|
"format:check": "prettier --check .",
|
|
@@ -51,12 +52,14 @@
|
|
|
51
52
|
"verify:release": "node scripts/verify-release-workflow.mjs",
|
|
52
53
|
"verify:artifacts": "node scripts/verify-artifacts.mjs pipelines/playbook/text2gears.slc text2gears && node scripts/verify-artifacts.mjs pipelines/playbook/gears2fsm.slc gears2fsm && node scripts/verify-artifacts.mjs pipelines/playbook/link.slc link",
|
|
53
54
|
"verify:pins": "node scripts/generate-pins.mjs && git diff --exit-code -- pipelines/playbook/slc.pins.json",
|
|
54
|
-
"verify:demo": "node demo/reference/check.mjs en",
|
|
55
|
+
"verify:demo": "node demo/reference/check.mjs en && node demo/reference/check.mjs zh",
|
|
55
56
|
"release:check": "npm run format:check && npm run lint && npm run build && npm test && npm run verify:definitions && npm run verify:release && npm run verify:artifacts && npm run verify:pins && npm run verify:demo && npm run test:package",
|
|
56
57
|
"prepublishOnly": "npm run release:check"
|
|
57
58
|
},
|
|
58
59
|
"devDependencies": {
|
|
60
|
+
"@anthropic-ai/claude-agent-sdk": "*",
|
|
59
61
|
"@eslint/js": "^10.0.1",
|
|
62
|
+
"@openai/codex-sdk": "*",
|
|
60
63
|
"@types/node": "^25.9.3",
|
|
61
64
|
"eslint": "^10.5.0",
|
|
62
65
|
"globals": "^17.6.0",
|
|
@@ -66,8 +69,8 @@
|
|
|
66
69
|
"vitest": "^4.1.9"
|
|
67
70
|
},
|
|
68
71
|
"dependencies": {
|
|
69
|
-
"@sublang/cligent": "^0.
|
|
70
|
-
"@sublang/playbook": "^
|
|
72
|
+
"@sublang/cligent": "^0.18.0",
|
|
73
|
+
"@sublang/playbook": "^4.0.0",
|
|
71
74
|
"@sublang/spex": "^0.3.0",
|
|
72
75
|
"typescript": "^6.0.3",
|
|
73
76
|
"xstate": "^5.32.4",
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { type Hash } from './hash.js';
|
|
2
|
-
/** A virtual POSIX path inside the run root (DR-008). */
|
|
3
|
-
export type SlcPath = string;
|
|
4
|
-
/** Machine-readable reason a capability operation failed (DR-008). */
|
|
5
|
-
export type FileErrorCode = 'invalid_path' | 'not_found' | 'not_file' | 'not_directory' | 'unauthorized' | 'stale' | 'io_error';
|
|
6
|
-
/** The result of a capability operation: a value, or a coded failure (DR-008). */
|
|
7
|
-
export type FileResult<T> = {
|
|
8
|
-
ok: true;
|
|
9
|
-
value: T;
|
|
10
|
-
} | {
|
|
11
|
-
ok: false;
|
|
12
|
-
code: FileErrorCode;
|
|
13
|
-
diagnostic: string;
|
|
14
|
-
};
|
|
15
|
-
/** One immediate child returned by {@link FileCapability.list} (DR-008). */
|
|
16
|
-
export interface DirectoryEntry {
|
|
17
|
-
name: string;
|
|
18
|
-
kind: 'file' | 'directory';
|
|
19
|
-
}
|
|
20
|
-
/** The artifact-facing file capability (FCAP-1; DR-008). */
|
|
21
|
-
export interface FileCapability {
|
|
22
|
-
read(path: SlcPath): Promise<FileResult<{
|
|
23
|
-
bytes: Uint8Array;
|
|
24
|
-
hash: Hash;
|
|
25
|
-
}>>;
|
|
26
|
-
list(path: SlcPath): Promise<FileResult<{
|
|
27
|
-
entries: DirectoryEntry[];
|
|
28
|
-
}>>;
|
|
29
|
-
write(path: SlcPath, bytes: Uint8Array, opts?: {
|
|
30
|
-
ifMatch?: Hash;
|
|
31
|
-
}): Promise<FileResult<{
|
|
32
|
-
hash: Hash;
|
|
33
|
-
}>>;
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Creates a {@link FileCapability} rooted at `runRoot`, confining every operation
|
|
37
|
-
* to that directory after symlink resolution (FCAP-1..6).
|
|
38
|
-
*/
|
|
39
|
-
export declare function createFileCapability(runRoot: string): FileCapability;
|
|
40
|
-
/**
|
|
41
|
-
* Canonicalizes a virtual POSIX path to its normalized `/`-prefixed form — the key
|
|
42
|
-
* the host-side grant model matches on — or `null` when the path is
|
|
43
|
-
* platform-absolute or escapes the run root (FCAP-2).
|
|
44
|
-
*/
|
|
45
|
-
export declare function canonicalize(path: SlcPath): string | null;
|
|
46
|
-
//# sourceMappingURL=file-capability.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"file-capability.d.ts","sourceRoot":"","sources":["../src/file-capability.ts"],"names":[],"mappings":"AAoCA,OAAO,EAAE,KAAK,IAAI,EAAa,MAAM,WAAW,CAAC;AAEjD,yDAAyD;AACzD,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAE7B,sEAAsE;AACtE,MAAM,MAAM,aAAa,GACrB,cAAc,GACd,WAAW,GACX,UAAU,GACV,eAAe,GACf,cAAc,GACd,OAAO,GACP,UAAU,CAAC;AAEf,kFAAkF;AAClF,MAAM,MAAM,UAAU,CAAC,CAAC,IACpB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GACtB;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,aAAa,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3D,4EAA4E;AAC5E,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;CAC5B;AAED,4DAA4D;AAC5D,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;QAAE,KAAK,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC,CAAC;IAC5E,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;QAAE,OAAO,EAAE,cAAc,EAAE,CAAA;KAAE,CAAC,CAAC,CAAC;IACxE,KAAK,CACH,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,UAAU,EACjB,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,IAAI,CAAA;KAAE,GACxB,OAAO,CAAC,UAAU,CAAC;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC,CAAC;CACxC;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,CAoHpE;AAwDD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CASzD"}
|