@sublang/slc 0.4.0 → 0.6.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 +100 -131
- package/dist/app.d.ts +20 -20
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +37 -30
- package/dist/app.js.map +1 -1
- package/dist/artifacts.d.ts +6 -6
- package/dist/artifacts.d.ts.map +1 -1
- package/dist/artifacts.js +9 -9
- package/dist/artifacts.js.map +1 -1
- package/dist/cli.js +3 -3
- package/dist/cligent-agent.d.ts +1 -1
- package/dist/cligent-agent.js +5 -5
- package/dist/compiled-executor.d.ts +14 -6
- package/dist/compiled-executor.d.ts.map +1 -1
- package/dist/compiled-executor.js +133 -31
- package/dist/compiled-executor.js.map +1 -1
- package/dist/config-file.d.ts +10 -6
- package/dist/config-file.d.ts.map +1 -1
- package/dist/config-file.js +23 -10
- package/dist/config-file.js.map +1 -1
- package/dist/config.d.ts +22 -18
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +90 -27
- package/dist/config.js.map +1 -1
- package/dist/emitted-imports.d.ts +14 -0
- package/dist/emitted-imports.d.ts.map +1 -1
- package/dist/emitted-imports.js +63 -7
- package/dist/emitted-imports.js.map +1 -1
- package/dist/entry-module.d.ts +5 -3
- package/dist/entry-module.d.ts.map +1 -1
- package/dist/entry-module.js +41 -13
- package/dist/entry-module.js.map +1 -1
- package/dist/execution.d.ts +10 -10
- package/dist/execution.d.ts.map +1 -1
- package/dist/execution.js +13 -13
- package/dist/execution.js.map +1 -1
- package/dist/hash.js +2 -2
- package/dist/host-capabilities.d.ts +115 -0
- package/dist/host-capabilities.d.ts.map +1 -0
- package/dist/host-capabilities.js +507 -0
- package/dist/host-capabilities.js.map +1 -0
- 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/interpreter.d.ts +2 -2
- package/dist/interpreter.d.ts.map +1 -1
- package/dist/interpreter.js +7 -7
- package/dist/invocation.d.ts +6 -6
- package/dist/invocation.d.ts.map +1 -1
- package/dist/invocation.js +1 -1
- package/dist/link.d.ts +4 -4
- package/dist/link.d.ts.map +1 -1
- package/dist/link.js +11 -11
- package/dist/link.js.map +1 -1
- package/dist/phase-runner.d.ts +4 -4
- package/dist/phase-runner.js +9 -9
- package/dist/phase.d.ts +4 -4
- package/dist/phase.d.ts.map +1 -1
- package/dist/phase.js +7 -7
- package/dist/phase.js.map +1 -1
- package/dist/pin-closure.d.ts +35 -7
- package/dist/pin-closure.d.ts.map +1 -1
- package/dist/pin-closure.js +135 -21
- package/dist/pin-closure.js.map +1 -1
- package/dist/pin-currency.d.ts +9 -4
- package/dist/pin-currency.d.ts.map +1 -1
- package/dist/pin-currency.js +57 -20
- package/dist/pin-currency.js.map +1 -1
- package/dist/pin-generate.d.ts +7 -7
- package/dist/pin-generate.d.ts.map +1 -1
- package/dist/pin-generate.js +14 -8
- package/dist/pin-generate.js.map +1 -1
- package/dist/pin-inputs.d.ts +41 -0
- package/dist/pin-inputs.d.ts.map +1 -0
- package/dist/pin-inputs.js +179 -0
- package/dist/pin-inputs.js.map +1 -0
- package/dist/pin-paths.d.ts +1 -1
- package/dist/pin-paths.js +4 -4
- package/dist/pin-paths.js.map +1 -1
- package/dist/pins.d.ts +4 -4
- package/dist/pins.d.ts.map +1 -1
- package/dist/pins.js +5 -5
- package/dist/pins.js.map +1 -1
- package/dist/pipeline.d.ts +5 -5
- package/dist/pipeline.js +10 -10
- package/dist/playbook-contract.d.ts +53 -5
- package/dist/playbook-contract.d.ts.map +1 -1
- package/dist/playbook-contract.js +70 -21
- package/dist/playbook-contract.js.map +1 -1
- package/dist/playbook-ports.d.ts +9 -9
- package/dist/playbook-ports.d.ts.map +1 -1
- package/dist/playbook-ports.js +6 -4
- package/dist/playbook-ports.js.map +1 -1
- package/dist/progress.d.ts +8 -9
- package/dist/progress.d.ts.map +1 -1
- package/dist/progress.js +3 -3
- package/dist/progress.js.map +1 -1
- package/dist/resolver.d.ts +9 -9
- package/dist/resolver.d.ts.map +1 -1
- package/dist/resolver.js +12 -12
- package/dist/resolver.js.map +1 -1
- package/dist/reviewing-agent.d.ts +18 -0
- package/dist/reviewing-agent.d.ts.map +1 -0
- package/dist/reviewing-agent.js +295 -0
- package/dist/reviewing-agent.js.map +1 -0
- package/dist/runner.d.ts +1 -1
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +195 -80
- package/dist/runner.js.map +1 -1
- package/dist/slc.config.template.yaml +6 -2
- package/dist/verify-coverage.d.ts +4 -3
- package/dist/verify-coverage.d.ts.map +1 -1
- package/dist/verify-coverage.js +509 -71
- package/dist/verify-coverage.js.map +1 -1
- package/dist/verify.d.ts +111 -15
- package/dist/verify.d.ts.map +1 -1
- package/dist/verify.js +656 -59
- package/dist/verify.js.map +1 -1
- package/package.json +3 -3
package/dist/playbook-ports.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Cligent-backed `PlaybookPorts` adapter for compiled phase execution (
|
|
2
|
+
* Cligent-backed `PlaybookPorts` adapter for compiled phase execution (phase-execution-25;
|
|
3
3
|
* DR-005, DR-004).
|
|
4
4
|
*
|
|
5
5
|
* A compiled artifact reaches coding agents and judges only through Playbook's
|
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
* one whose source-owned options carry no tool restriction — additionally
|
|
14
14
|
* carries the host workspace contract appended to its composed prompt, because
|
|
15
15
|
* the linked artifact is host-agnostic and only the host owns the request's
|
|
16
|
-
* workspace paths (
|
|
16
|
+
* workspace paths (phase-execution-34). Exact `playbook.trace` payloads stay out of ordinary
|
|
17
17
|
* diagnostics (DR-010, DR-011). The adapter holds no host specifics beyond the
|
|
18
|
-
* injected transports. See specs/
|
|
18
|
+
* injected transports. See specs/packages/phase-execution.md.
|
|
19
19
|
*/
|
|
20
20
|
import type { AgentClient } from './interpreter.js';
|
|
21
21
|
import type { CompatiblePlaybookPorts } from './playbook-contract.js';
|
|
@@ -30,28 +30,28 @@ export interface PlaybookPortsAdapter extends CompatiblePlaybookPorts {
|
|
|
30
30
|
* single-flight and resumes its own session across calls).
|
|
31
31
|
*/
|
|
32
32
|
export type PlayerTransport = AgentClient | ((playerId: string) => AgentClient);
|
|
33
|
-
/** Builds a {@link PlaybookPortsAdapter} over coding-agent transports (
|
|
33
|
+
/** Builds a {@link PlaybookPortsAdapter} over coding-agent transports (phase-execution-25). */
|
|
34
34
|
export declare function createPlaybookPorts(opts: {
|
|
35
35
|
/** Transport backing `callPlayer`; a factory yields one client per player id. */
|
|
36
36
|
player: PlayerTransport;
|
|
37
37
|
/** Shared transport backing `callCaptain` and `callJudge`. */
|
|
38
38
|
judge: AgentClient;
|
|
39
|
-
/** Per-player model binding, applied as configuration (
|
|
39
|
+
/** Per-player model binding, applied as configuration (phase-execution-13). */
|
|
40
40
|
models?: Readonly<Record<string, string>>;
|
|
41
|
-
/** Model for players the `models` binding does not name (
|
|
41
|
+
/** Model for players the `models` binding does not name (phase-execution-13). */
|
|
42
42
|
defaultModel?: string;
|
|
43
43
|
/** Working directory handed to the transports. */
|
|
44
44
|
cwd?: string;
|
|
45
45
|
/**
|
|
46
46
|
* Host workspace contract appended to transformation-performing direct
|
|
47
47
|
* Captain prompts — those whose source-owned options carry no `allowedTools`
|
|
48
|
-
* restriction (
|
|
48
|
+
* restriction (phase-execution-34). Routing-only Captain and judge calls never
|
|
49
49
|
* carry it.
|
|
50
50
|
*/
|
|
51
51
|
captainWorkspace?: string;
|
|
52
52
|
/**
|
|
53
53
|
* Host update-mode context appended to every Player prompt and to
|
|
54
|
-
* transformation-performing direct Captain prompts (DR-021,
|
|
54
|
+
* transformation-performing direct Captain prompts (DR-021, incremental-compilation-16). The
|
|
55
55
|
* compiled artifact composes host-agnostic prompts and knows nothing about
|
|
56
56
|
* incremental updates, so only the host can say the target already holds
|
|
57
57
|
* the prior accepted output. Routing-only Captain and judge calls never
|
|
@@ -59,7 +59,7 @@ export declare function createPlaybookPorts(opts: {
|
|
|
59
59
|
*/
|
|
60
60
|
updateContext?: string;
|
|
61
61
|
/**
|
|
62
|
-
* Live status sink (DR-019,
|
|
62
|
+
* Live status sink (DR-019, phase-execution-25): when set, human status and non-trace
|
|
63
63
|
* operational telemetry stream here as they occur instead of being collected
|
|
64
64
|
* for {@link PlaybookPortsAdapter.drainDiagnostics}, so a long compiled phase
|
|
65
65
|
* is observable while it runs. `playbook.trace` payloads are excluded from
|
|
@@ -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
|
|
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,+FAA+F;AAC/F,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,iFAAiF;IACjF,MAAM,EAAE,eAAe,CAAC;IACxB,8DAA8D;IAC9D,KAAK,EAAE,WAAW,CAAC;IACnB,+EAA+E;IAC/E,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC1C,iFAAiF;IACjF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kDAAkD;IAClD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC,GAAG,oBAAoB,CAiJvB"}
|
package/dist/playbook-ports.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
|
2
2
|
// SPDX-FileCopyrightText: 2026 SubLang International <https://sublang.ai>
|
|
3
|
-
/** Builds a {@link PlaybookPortsAdapter} over coding-agent transports (
|
|
3
|
+
/** Builds a {@link PlaybookPortsAdapter} over coding-agent transports (phase-execution-25). */
|
|
4
4
|
export function createPlaybookPorts(opts) {
|
|
5
5
|
const diagnostics = [];
|
|
6
6
|
const players = new Map();
|
|
@@ -33,7 +33,7 @@ export function createPlaybookPorts(opts) {
|
|
|
33
33
|
// A transformation-performing Captain (absent source-owned tool
|
|
34
34
|
// restriction) gets the host workspace contract appended: the artifact
|
|
35
35
|
// composes host-agnostic prompts, and only the host knows the request's
|
|
36
|
-
// absolute source/target paths (
|
|
36
|
+
// absolute source/target paths (phase-execution-34).
|
|
37
37
|
const transported = isolation.allowedTools === undefined
|
|
38
38
|
? [prompt, opts.captainWorkspace, opts.updateContext]
|
|
39
39
|
.filter((part) => part !== undefined)
|
|
@@ -45,7 +45,9 @@ export function createPlaybookPorts(opts) {
|
|
|
45
45
|
model: opts.defaultModel,
|
|
46
46
|
cwd: opts.cwd,
|
|
47
47
|
resume: isolation.resume,
|
|
48
|
-
|
|
48
|
+
...(isolation.allowedTools === undefined
|
|
49
|
+
? {}
|
|
50
|
+
: { allowedTools: isolation.allowedTools }),
|
|
49
51
|
signal,
|
|
50
52
|
});
|
|
51
53
|
return toCaptainResult(result, signal);
|
|
@@ -85,7 +87,7 @@ export function createPlaybookPorts(opts) {
|
|
|
85
87
|
/**
|
|
86
88
|
* Streams a non-trace line live when the host configured a sink, otherwise
|
|
87
89
|
* collects it as a drainable diagnostic — never both, so streamed lines do
|
|
88
|
-
* not repeat in the run's diagnostics (DR-019,
|
|
90
|
+
* not repeat in the run's diagnostics (DR-019, phase-execution-25).
|
|
89
91
|
*/
|
|
90
92
|
function report(line) {
|
|
91
93
|
if (opts.onStatus !== undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"playbook-ports.js","sourceRoot":"","sources":["../src/playbook-ports.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,0EAA0E;AA8C1E
|
|
1
|
+
{"version":3,"file":"playbook-ports.js","sourceRoot":"","sources":["../src/playbook-ports.ts"],"names":[],"mappings":"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"}
|
package/dist/progress.d.ts
CHANGED
|
@@ -3,16 +3,15 @@
|
|
|
3
3
|
*
|
|
4
4
|
* The step loop emits {@link ProgressEvent}s — phase start/finish/failure with
|
|
5
5
|
* elapsed times, plus streamed compiled-runtime status lines — through an
|
|
6
|
-
* optional {@link ProgressSink} on `SlcDeps` (
|
|
6
|
+
* optional {@link ProgressSink} on `SlcDeps` (cli-32). The bin renders them as
|
|
7
7
|
* human-readable lines on stderr via {@link createProgressReporter}, which also
|
|
8
|
-
* owns the 30-second silence-bounded heartbeat (
|
|
8
|
+
* owns the 30-second silence-bounded heartbeat (cli-33): whenever no event has
|
|
9
9
|
* been rendered for the bound while a phase is in flight, it emits an
|
|
10
10
|
* elapsed-time heartbeat line. Timer construction is injectable so tests drive
|
|
11
11
|
* the heartbeat deterministically. The exact line format is host-owned
|
|
12
|
-
* presentation and deliberately unspecified. See specs/
|
|
13
|
-
* specs/dev/cli.md.
|
|
12
|
+
* presentation and deliberately unspecified. See specs/packages/cli.md.
|
|
14
13
|
*/
|
|
15
|
-
/** One in-run progress event the step loop reports (
|
|
14
|
+
/** One in-run progress event the step loop reports (cli-32). */
|
|
16
15
|
export type ProgressEvent = {
|
|
17
16
|
kind: 'phase-start';
|
|
18
17
|
phase: string;
|
|
@@ -28,7 +27,7 @@ export type ProgressEvent = {
|
|
|
28
27
|
target: string;
|
|
29
28
|
elapsedMs: number;
|
|
30
29
|
}
|
|
31
|
-
/** A streamed compiled-runtime status or telemetry line (
|
|
30
|
+
/** A streamed compiled-runtime status or telemetry line (phase-execution-25). */
|
|
32
31
|
| {
|
|
33
32
|
kind: 'status';
|
|
34
33
|
text: string;
|
|
@@ -39,7 +38,7 @@ export type ProgressEvent = {
|
|
|
39
38
|
};
|
|
40
39
|
/** Receives progress events as they occur; injected beside the executors. */
|
|
41
40
|
export type ProgressSink = (event: ProgressEvent) => void;
|
|
42
|
-
/** The silence bound after which the reporter emits a heartbeat (
|
|
41
|
+
/** The silence bound after which the reporter emits a heartbeat (cli-33). */
|
|
43
42
|
export declare const HEARTBEAT_INTERVAL_MS = 30000;
|
|
44
43
|
/** Renders a duration as a compact human-readable elapsed time. */
|
|
45
44
|
export declare function formatElapsed(ms: number): string;
|
|
@@ -58,9 +57,9 @@ export interface ProgressReporter {
|
|
|
58
57
|
dispose(): void;
|
|
59
58
|
}
|
|
60
59
|
/**
|
|
61
|
-
* Builds the bin's progress reporter (
|
|
60
|
+
* Builds the bin's progress reporter (cli-35): renders each event as a line
|
|
62
61
|
* through `write`, and, while a phase is in flight, emits a heartbeat whenever
|
|
63
|
-
* no line has been written for `intervalMs` (
|
|
62
|
+
* no line has been written for `intervalMs` (cli-33). The heartbeat's elapsed
|
|
64
63
|
* time counts from the running phase's start, so a long phase reads as one
|
|
65
64
|
* growing duration rather than a series of 30-second gaps.
|
|
66
65
|
*/
|
package/dist/progress.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../src/progress.ts"],"names":[],"mappings":"AAGA
|
|
1
|
+
{"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../src/progress.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;GAYG;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,iFAAiF;GAC/E;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
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
|
2
2
|
// SPDX-FileCopyrightText: 2026 SubLang International <https://sublang.ai>
|
|
3
|
-
/** The silence bound after which the reporter emits a heartbeat (
|
|
3
|
+
/** The silence bound after which the reporter emits a heartbeat (cli-33). */
|
|
4
4
|
export const HEARTBEAT_INTERVAL_MS = 30_000;
|
|
5
5
|
/** Renders a duration as a compact human-readable elapsed time. */
|
|
6
6
|
export function formatElapsed(ms) {
|
|
@@ -42,9 +42,9 @@ const defaultTimers = {
|
|
|
42
42
|
now: () => Date.now(),
|
|
43
43
|
};
|
|
44
44
|
/**
|
|
45
|
-
* Builds the bin's progress reporter (
|
|
45
|
+
* Builds the bin's progress reporter (cli-35): renders each event as a line
|
|
46
46
|
* through `write`, and, while a phase is in flight, emits a heartbeat whenever
|
|
47
|
-
* no line has been written for `intervalMs` (
|
|
47
|
+
* no line has been written for `intervalMs` (cli-33). The heartbeat's elapsed
|
|
48
48
|
* time counts from the running phase's start, so a long phase reads as one
|
|
49
49
|
* growing duration rather than a series of 30-second gaps.
|
|
50
50
|
*/
|
package/dist/progress.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress.js","sourceRoot":"","sources":["../src/progress.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,0EAA0E;
|
|
1
|
+
{"version":3,"file":"progress.js","sourceRoot":"","sources":["../src/progress.ts"],"names":[],"mappings":"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"}
|
package/dist/resolver.d.ts
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import type { PipelineResolver } from './pipeline.js';
|
|
2
|
-
/** The reserved meta-pipeline reference (DR-005,
|
|
2
|
+
/** The reserved meta-pipeline reference (DR-005, self-hosting-2). */
|
|
3
3
|
export declare const RESERVED_SLC_PIPELINE = "slc";
|
|
4
4
|
/**
|
|
5
5
|
* The `playbook` domain pipeline, which shares the reserved `slc` pipeline's
|
|
6
|
-
* Playbook-authored definitions (DR-009,
|
|
6
|
+
* Playbook-authored definitions (DR-009, self-hosting-6).
|
|
7
7
|
*/
|
|
8
8
|
export declare const RESERVED_PLAYBOOK_PIPELINE = "playbook";
|
|
9
9
|
/**
|
|
10
10
|
* Whether a reference names a pipeline whose definitions `@sublang/playbook`
|
|
11
11
|
* provides — the reserved `slc` meta-pipeline or the `playbook` domain pipeline,
|
|
12
12
|
* which share one definition set and differ only by name (DR-009). Such a link
|
|
13
|
-
* phase consumes Playbook's target-less `link.md` (
|
|
13
|
+
* phase consumes Playbook's target-less `link.md` (pipeline-11).
|
|
14
14
|
*/
|
|
15
15
|
export declare function isReservedPipeline(reference: string): boolean;
|
|
16
16
|
/**
|
|
17
|
-
* Computes the ordered pipeline search roots from a pipeline-path value (
|
|
17
|
+
* Computes the ordered pipeline search roots from a pipeline-path value (cli-6):
|
|
18
18
|
* either the `SLC_PIPELINE_PATH` OS path-list string or the config file's
|
|
19
19
|
* `pipelinePath` sequence (DR-006). Entries are resolved to absolute, normalized
|
|
20
20
|
* roots against `cwd`, defaulting to `[cwd]` when the value is unset, empty, or
|
|
@@ -23,7 +23,7 @@ export declare function isReservedPipeline(reference: string): boolean;
|
|
|
23
23
|
*/
|
|
24
24
|
export declare function pipelineSearchRoots(pipelinePath: string | string[] | undefined, cwd: string): string[];
|
|
25
25
|
/**
|
|
26
|
-
* Builds a {@link PipelineResolver} over the given search roots (
|
|
26
|
+
* Builds a {@link PipelineResolver} over the given search roots (cli-6).
|
|
27
27
|
*
|
|
28
28
|
* A `<reference>` matches `join(root, reference)` only when that path exists, is
|
|
29
29
|
* a directory, and sits directly under the root — so nested paths and `..`
|
|
@@ -39,13 +39,13 @@ export declare function createPipelineResolver(searchRoots: readonly string[]):
|
|
|
39
39
|
* `slc/` (its `text2gears`, `gears2fsm`, and `link` phases), which back both the
|
|
40
40
|
* reserved `slc` meta-pipeline and the `playbook` domain pipeline, so `slc`
|
|
41
41
|
* self-hosts on Playbook's canonical source rather than a duplicate (DR-005,
|
|
42
|
-
* DR-009,
|
|
42
|
+
* DR-009, self-hosting-2).
|
|
43
43
|
*
|
|
44
44
|
* @throws when `@sublang/playbook` does not provide the `slc/` definitions.
|
|
45
45
|
*/
|
|
46
46
|
export declare function reservedSlcPipelineDir(): string;
|
|
47
47
|
/**
|
|
48
|
-
* The default link target for the `playbook` pipeline (DR-014,
|
|
48
|
+
* The default link target for the `playbook` pipeline (DR-014, self-hosting-13):
|
|
49
49
|
* the installed `@sublang/playbook` runtime contract module's TypeScript
|
|
50
50
|
* source, the same file the pin generator records as the link target.
|
|
51
51
|
*
|
|
@@ -57,12 +57,12 @@ export declare function defaultPlaybookLinkTarget(): string;
|
|
|
57
57
|
* meta-pipeline or the `playbook` domain pipeline — resolves to the shared
|
|
58
58
|
* definition set, leaving every other reference to `inner`. Both names share one
|
|
59
59
|
* definition set and differ only by name, hence by their DR-001 artifact
|
|
60
|
-
* directory (DR-009,
|
|
60
|
+
* directory (DR-009, self-hosting-2, self-hosting-6).
|
|
61
61
|
*
|
|
62
62
|
* The shared set is the first search-root directory named `playbook` when one
|
|
63
63
|
* exists — a committed vendor of Playbook's definitions, whose `slc.pins.json`
|
|
64
64
|
* can pin both pipelines to compiled artifacts — otherwise the definitions the
|
|
65
|
-
* installed `@sublang/playbook` provides (
|
|
65
|
+
* installed `@sublang/playbook` provides (self-hosting-9).
|
|
66
66
|
*/
|
|
67
67
|
export declare function withReservedPipelines(inner: PipelineResolver): PipelineResolver;
|
|
68
68
|
//# sourceMappingURL=resolver.d.ts.map
|
package/dist/resolver.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAItD,
|
|
1
|
+
{"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAItD,qEAAqE;AACrE,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAE3C;;;GAGG;AACH,eAAO,MAAM,0BAA0B,aAAa,CAAC;AAErD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAK7D;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,EAC3C,GAAG,EAAE,MAAM,GACV,MAAM,EAAE,CAUV;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,SAAS,MAAM,EAAE,GAC7B,gBAAgB,CAalB;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAOlD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,gBAAgB,GACtB,gBAAgB,CAMlB"}
|
package/dist/resolver.js
CHANGED
|
@@ -1,39 +1,39 @@
|
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
|
2
2
|
// SPDX-FileCopyrightText: 2026 SubLang International <https://sublang.ai>
|
|
3
3
|
/**
|
|
4
|
-
* Concrete pipeline-reference resolver for the `slc` bin (
|
|
4
|
+
* Concrete pipeline-reference resolver for the `slc` bin (cli-6, DR-001).
|
|
5
5
|
*
|
|
6
6
|
* DR-001 leaves pipeline-to-directory resolution to the consumer; this is the
|
|
7
7
|
* bin's host policy: a `<reference>` resolves to the directories named
|
|
8
8
|
* `<reference>` directly under each search root from `SLC_PIPELINE_PATH` (an OS
|
|
9
9
|
* path-list), defaulting to the working directory when unset. The resolver
|
|
10
|
-
* returns every existing match so `runSlc`'s exactly-one rule (
|
|
10
|
+
* returns every existing match so `runSlc`'s exactly-one rule (pipeline-16) refuses
|
|
11
11
|
* zero or many; it does not check that a match is a well-formed pipeline, which
|
|
12
|
-
* `loadPipeline` does. See specs/
|
|
12
|
+
* `loadPipeline` does. See specs/packages/cli.md.
|
|
13
13
|
*/
|
|
14
14
|
import { stat } from 'node:fs/promises';
|
|
15
15
|
import { createRequire } from 'node:module';
|
|
16
16
|
import { delimiter, dirname, join, resolve } from 'node:path';
|
|
17
17
|
const requireFrom = createRequire(import.meta.url);
|
|
18
|
-
/** The reserved meta-pipeline reference (DR-005,
|
|
18
|
+
/** The reserved meta-pipeline reference (DR-005, self-hosting-2). */
|
|
19
19
|
export const RESERVED_SLC_PIPELINE = 'slc';
|
|
20
20
|
/**
|
|
21
21
|
* The `playbook` domain pipeline, which shares the reserved `slc` pipeline's
|
|
22
|
-
* Playbook-authored definitions (DR-009,
|
|
22
|
+
* Playbook-authored definitions (DR-009, self-hosting-6).
|
|
23
23
|
*/
|
|
24
24
|
export const RESERVED_PLAYBOOK_PIPELINE = 'playbook';
|
|
25
25
|
/**
|
|
26
26
|
* Whether a reference names a pipeline whose definitions `@sublang/playbook`
|
|
27
27
|
* provides — the reserved `slc` meta-pipeline or the `playbook` domain pipeline,
|
|
28
28
|
* which share one definition set and differ only by name (DR-009). Such a link
|
|
29
|
-
* phase consumes Playbook's target-less `link.md` (
|
|
29
|
+
* phase consumes Playbook's target-less `link.md` (pipeline-11).
|
|
30
30
|
*/
|
|
31
31
|
export function isReservedPipeline(reference) {
|
|
32
32
|
return (reference === RESERVED_SLC_PIPELINE ||
|
|
33
33
|
reference === RESERVED_PLAYBOOK_PIPELINE);
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
|
-
* Computes the ordered pipeline search roots from a pipeline-path value (
|
|
36
|
+
* Computes the ordered pipeline search roots from a pipeline-path value (cli-6):
|
|
37
37
|
* either the `SLC_PIPELINE_PATH` OS path-list string or the config file's
|
|
38
38
|
* `pipelinePath` sequence (DR-006). Entries are resolved to absolute, normalized
|
|
39
39
|
* roots against `cwd`, defaulting to `[cwd]` when the value is unset, empty, or
|
|
@@ -52,7 +52,7 @@ export function pipelineSearchRoots(pipelinePath, cwd) {
|
|
|
52
52
|
return [...new Set(normalized)];
|
|
53
53
|
}
|
|
54
54
|
/**
|
|
55
|
-
* Builds a {@link PipelineResolver} over the given search roots (
|
|
55
|
+
* Builds a {@link PipelineResolver} over the given search roots (cli-6).
|
|
56
56
|
*
|
|
57
57
|
* A `<reference>` matches `join(root, reference)` only when that path exists, is
|
|
58
58
|
* a directory, and sits directly under the root — so nested paths and `..`
|
|
@@ -83,7 +83,7 @@ export function createPipelineResolver(searchRoots) {
|
|
|
83
83
|
* `slc/` (its `text2gears`, `gears2fsm`, and `link` phases), which back both the
|
|
84
84
|
* reserved `slc` meta-pipeline and the `playbook` domain pipeline, so `slc`
|
|
85
85
|
* self-hosts on Playbook's canonical source rather than a duplicate (DR-005,
|
|
86
|
-
* DR-009,
|
|
86
|
+
* DR-009, self-hosting-2).
|
|
87
87
|
*
|
|
88
88
|
* @throws when `@sublang/playbook` does not provide the `slc/` definitions.
|
|
89
89
|
*/
|
|
@@ -91,7 +91,7 @@ export function reservedSlcPipelineDir() {
|
|
|
91
91
|
return dirname(requireFrom.resolve('@sublang/playbook/slc/link.md'));
|
|
92
92
|
}
|
|
93
93
|
/**
|
|
94
|
-
* The default link target for the `playbook` pipeline (DR-014,
|
|
94
|
+
* The default link target for the `playbook` pipeline (DR-014, self-hosting-13):
|
|
95
95
|
* the installed `@sublang/playbook` runtime contract module's TypeScript
|
|
96
96
|
* source, the same file the pin generator records as the link target.
|
|
97
97
|
*
|
|
@@ -107,12 +107,12 @@ export function defaultPlaybookLinkTarget() {
|
|
|
107
107
|
* meta-pipeline or the `playbook` domain pipeline — resolves to the shared
|
|
108
108
|
* definition set, leaving every other reference to `inner`. Both names share one
|
|
109
109
|
* definition set and differ only by name, hence by their DR-001 artifact
|
|
110
|
-
* directory (DR-009,
|
|
110
|
+
* directory (DR-009, self-hosting-2, self-hosting-6).
|
|
111
111
|
*
|
|
112
112
|
* The shared set is the first search-root directory named `playbook` when one
|
|
113
113
|
* exists — a committed vendor of Playbook's definitions, whose `slc.pins.json`
|
|
114
114
|
* can pin both pipelines to compiled artifacts — otherwise the definitions the
|
|
115
|
-
* installed `@sublang/playbook` provides (
|
|
115
|
+
* installed `@sublang/playbook` provides (self-hosting-9).
|
|
116
116
|
*/
|
|
117
117
|
export function withReservedPipelines(inner) {
|
|
118
118
|
return async (reference) => {
|
package/dist/resolver.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,0EAA0E;AAE1E;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAI9D,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEnD,
|
|
1
|
+
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { AgentClient } from './interpreter.js';
|
|
2
|
+
/** Options for {@link createReviewingAgent}. */
|
|
3
|
+
export interface ReviewingAgentOptions {
|
|
4
|
+
/** The transformation-performing client whose result remains authoritative. */
|
|
5
|
+
coder: AgentClient;
|
|
6
|
+
/** Constructs a fresh Reviewer client for each performing call. */
|
|
7
|
+
reviewer: () => AgentClient;
|
|
8
|
+
/** Optional Reviewer model; omitted to use that adapter's default. */
|
|
9
|
+
reviewerModel?: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Decorates a Coder client with the DR-022 review/fix/re-review protocol.
|
|
13
|
+
*
|
|
14
|
+
* Reviewer failures and malformed verdicts fail closed with a stable error
|
|
15
|
+
* diagnostic that retains the latest Coder text and resume token.
|
|
16
|
+
*/
|
|
17
|
+
export declare function createReviewingAgent(options: ReviewingAgentOptions): AgentClient;
|
|
18
|
+
//# sourceMappingURL=reviewing-agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reviewing-agent.d.ts","sourceRoot":"","sources":["../src/reviewing-agent.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,kBAAkB,CAAC;AAIpE,gDAAgD;AAChD,MAAM,WAAW,qBAAqB;IACpC,+EAA+E;IAC/E,KAAK,EAAE,WAAW,CAAC;IACnB,mEAAmE;IACnE,QAAQ,EAAE,MAAM,WAAW,CAAC;IAC5B,sEAAsE;IACtE,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,qBAAqB,GAC7B,WAAW,CAkHb"}
|