@excitedjs/agent-runtime-codex 0.5.0-beta.179 → 0.5.0-beta.182
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/activity/budget.d.ts +8 -0
- package/dist/activity/budget.d.ts.map +1 -0
- package/dist/activity/budget.js +9 -0
- package/dist/activity/budget.js.map +1 -0
- package/dist/{transcript → activity}/cursor.d.ts +2 -2
- package/dist/activity/cursor.d.ts.map +1 -0
- package/dist/{transcript → activity}/cursor.js +10 -10
- package/dist/activity/cursor.js.map +1 -0
- package/dist/activity/error.d.ts +16 -0
- package/dist/activity/error.d.ts.map +1 -0
- package/dist/activity/error.js +22 -0
- package/dist/activity/error.js.map +1 -0
- package/dist/activity/opened-file.d.ts +10 -0
- package/dist/activity/opened-file.d.ts.map +1 -0
- package/dist/{transcript → activity}/opened-file.js +10 -10
- package/dist/activity/opened-file.js.map +1 -0
- package/dist/activity/path.d.ts +27 -0
- package/dist/activity/path.d.ts.map +1 -0
- package/dist/{transcript → activity}/path.js +49 -119
- package/dist/activity/path.js.map +1 -0
- package/dist/activity/projection.d.ts +34 -0
- package/dist/activity/projection.d.ts.map +1 -0
- package/dist/activity/projection.js +191 -0
- package/dist/activity/projection.js.map +1 -0
- package/dist/activity/reader.d.ts +14 -0
- package/dist/activity/reader.d.ts.map +1 -0
- package/dist/activity/reader.js +314 -0
- package/dist/activity/reader.js.map +1 -0
- package/dist/diagnostic.d.ts +2 -2
- package/dist/diagnostic.d.ts.map +1 -1
- package/dist/index.d.ts +1 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/mcp-config.d.ts +27 -3
- package/dist/mcp-config.d.ts.map +1 -1
- package/dist/mcp-config.js +55 -9
- package/dist/mcp-config.js.map +1 -1
- package/dist/provider.d.ts +28 -42
- package/dist/provider.d.ts.map +1 -1
- package/dist/provider.js +37 -56
- package/dist/provider.js.map +1 -1
- package/dist/runtime-deps.d.ts +43 -0
- package/dist/runtime-deps.d.ts.map +1 -0
- package/dist/runtime-deps.js +2 -0
- package/dist/runtime-deps.js.map +1 -0
- package/dist/runtime.d.ts +69 -47
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +188 -131
- package/dist/runtime.js.map +1 -1
- package/dist/turn-manager.d.ts +14 -19
- package/dist/turn-manager.d.ts.map +1 -1
- package/dist/turn-manager.js +16 -104
- package/dist/turn-manager.js.map +1 -1
- package/package.json +3 -3
- package/dist/transcript/budget.d.ts +0 -8
- package/dist/transcript/budget.d.ts.map +0 -1
- package/dist/transcript/budget.js +0 -9
- package/dist/transcript/budget.js.map +0 -1
- package/dist/transcript/cursor.d.ts.map +0 -1
- package/dist/transcript/cursor.js.map +0 -1
- package/dist/transcript/error.d.ts +0 -9
- package/dist/transcript/error.d.ts.map +0 -1
- package/dist/transcript/error.js +0 -9
- package/dist/transcript/error.js.map +0 -1
- package/dist/transcript/opened-file.d.ts +0 -10
- package/dist/transcript/opened-file.d.ts.map +0 -1
- package/dist/transcript/opened-file.js.map +0 -1
- package/dist/transcript/path.d.ts +0 -28
- package/dist/transcript/path.d.ts.map +0 -1
- package/dist/transcript/path.js.map +0 -1
- package/dist/transcript/projection.d.ts +0 -6
- package/dist/transcript/projection.d.ts.map +0 -1
- package/dist/transcript/projection.js +0 -170
- package/dist/transcript/projection.js.map +0 -1
- package/dist/transcript/reader.d.ts +0 -7
- package/dist/transcript/reader.d.ts.map +0 -1
- package/dist/transcript/reader.js +0 -421
- package/dist/transcript/reader.js.map +0 -1
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,OAAO,EACP,+BAA+B,EAC/B,wBAAwB,EACxB,6BAA6B,EAC7B,qBAAqB,EACrB,gCAAgC,EAChC,KAAK,gCAAgC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,OAAO,EACP,+BAA+B,EAC/B,wBAAwB,EACxB,6BAA6B,EAC7B,qBAAqB,EACrB,gCAAgC,EAChC,KAAK,gCAAgC,GACtC,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAO/C,OAAO,EACL,YAAY,EACZ,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,GAC7B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,GACzB,MAAM,UAAU,CAAC;AAElB,YAAY,EACV,kBAAkB,EAClB,aAAa,EACb,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAE5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,KAAK,eAAe,GACrB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,KAAK,qBAAqB,EAC1B,yBAAyB,EACzB,4BAA4B,EAC5B,iBAAiB,EACjB,6BAA6B,EAC7B,6BAA6B,EAC7B,uBAAuB,EACvB,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAK/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,EACL,2CAA2C,EAC3C,gCAAgC,EAChC,2BAA2B,EAC3B,8BAA8B,EAC9B,+BAA+B,EAC/B,KAAK,yBAAyB,EAC9B,KAAK,gCAAgC,EACrC,KAAK,+BAA+B,GACrC,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -6,7 +6,10 @@
|
|
|
6
6
|
*/
|
|
7
7
|
export { default, createCodexAgentRuntimeProvider, codexSystemPromptReplace, codexRuntimeArgsForMcpServers, dispatcherCodexConfig, CODEX_AGENT_RUNTIME_CAPABILITIES, } from './provider.js';
|
|
8
8
|
export { resolveCodexBinPath } from './bin.js';
|
|
9
|
-
|
|
9
|
+
// The concrete runtime class and the deps it is constructed from are both
|
|
10
|
+
// implementation details: the package's public surface is the provider factory
|
|
11
|
+
// and its options, and Core only ever holds the neutral `start`/`submit`/`stop`
|
|
12
|
+
// handle `createRuntime` returns.
|
|
10
13
|
export { CodexProcess, } from './supervisor.js';
|
|
11
14
|
export { CodexWsClient, } from './rpc.js';
|
|
12
15
|
export { performInitializeHandshake } from './handshake.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,OAAO,EACP,+BAA+B,EAC/B,wBAAwB,EACxB,6BAA6B,EAC7B,qBAAqB,EACrB,gCAAgC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,OAAO,EACP,+BAA+B,EAC/B,wBAAwB,EACxB,6BAA6B,EAC7B,qBAAqB,EACrB,gCAAgC,GAEjC,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/C,0EAA0E;AAC1E,+EAA+E;AAC/E,gFAAgF;AAChF,kCAAkC;AAElC,OAAO,EACL,YAAY,GAIb,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,aAAa,GAGd,MAAM,UAAU,CAAC;AASlB,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAE5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,cAAc,GAEf,MAAM,WAAW,CAAC;AAEnB,OAAO,EAEL,yBAAyB,EACzB,4BAA4B,EAC5B,iBAAiB,EACjB,6BAA6B,EAC7B,6BAA6B,EAC7B,uBAAuB,EACvB,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAE/D,+EAA+E;AAC/E,yEAAyE;AACzE,8EAA8E;AAC9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,EACL,2CAA2C,EAC3C,gCAAgC,EAChC,2BAA2B,EAC3B,8BAA8B,EAC9B,+BAA+B,GAIhC,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,YAAY,CAAC"}
|
package/dist/mcp-config.d.ts
CHANGED
|
@@ -1,9 +1,33 @@
|
|
|
1
1
|
import type { AgentRuntimeMcpServer } from '@excitedjs/dreamux-types';
|
|
2
2
|
/**
|
|
3
|
-
* Render neutral MCP server descriptors into Codex `-c mcp_servers
|
|
4
|
-
* config-override CLI
|
|
3
|
+
* Render neutral MCP server descriptors into a Codex `-c mcp_servers=...`
|
|
4
|
+
* config-override CLI arg.
|
|
5
|
+
*
|
|
6
|
+
* Provider-neutral about *what* it renders: it knows nothing about which
|
|
5
7
|
* channel or shim produced a descriptor — the Dreamux host decides which MCP
|
|
6
|
-
* servers a runtime gets and passes them through the create context.
|
|
8
|
+
* servers a runtime gets and passes them through the create context. What it
|
|
9
|
+
* does own is *how* a descriptor becomes Codex configuration, including the
|
|
10
|
+
* server name. A name is a logical identity chosen by the host; making it
|
|
11
|
+
* expressible in TOML is this adapter's job, not a constraint the host has to
|
|
12
|
+
* honor when it picks one.
|
|
13
|
+
*
|
|
14
|
+
* That is why the whole table is rendered as one override value rather than as
|
|
15
|
+
* one `mcp_servers.<name>.<field>=` override per field. Codex parses the value
|
|
16
|
+
* of `-c key=value` as TOML but not the key: it splits the key on `.` and takes
|
|
17
|
+
* each segment literally, so a quoted segment arrives with its quotes attached
|
|
18
|
+
* and a name containing `.` is silently split across two config levels. Inside
|
|
19
|
+
* the value a real TOML parser is reading, so a quoted key carries any string —
|
|
20
|
+
* dots, spaces, quotes, `=`, `#`, newlines, non-ASCII — back out under exactly
|
|
21
|
+
* the name it went in under.
|
|
22
|
+
*
|
|
23
|
+
* The override still merges into the operator's own `config.toml` rather than
|
|
24
|
+
* replacing it, at every level: servers Dreamux does not name are untouched,
|
|
25
|
+
* and for a name it does, fields it does not set keep their configured values.
|
|
26
|
+
*
|
|
27
|
+
* Values that cannot survive the TOML/argv boundary at all — a lone surrogate,
|
|
28
|
+
* an unescaped control character — fail loud when Codex loads the override.
|
|
29
|
+
* That envelope already applies to `command`, `args`, and `env`; a name is not
|
|
30
|
+
* given a private encoding to escape it.
|
|
7
31
|
*/
|
|
8
32
|
export declare function codexMcpServerArgs(servers: readonly AgentRuntimeMcpServer[]): string[];
|
|
9
33
|
//# sourceMappingURL=mcp-config.d.ts.map
|
package/dist/mcp-config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-config.d.ts","sourceRoot":"","sources":["../src/mcp-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEtE
|
|
1
|
+
{"version":3,"file":"mcp-config.d.ts","sourceRoot":"","sources":["../src/mcp-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,SAAS,qBAAqB,EAAE,GACxC,MAAM,EAAE,CAMV"}
|
package/dist/mcp-config.js
CHANGED
|
@@ -1,20 +1,66 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Render neutral MCP server descriptors into Codex `-c mcp_servers
|
|
3
|
-
* config-override CLI
|
|
2
|
+
* Render neutral MCP server descriptors into a Codex `-c mcp_servers=...`
|
|
3
|
+
* config-override CLI arg.
|
|
4
|
+
*
|
|
5
|
+
* Provider-neutral about *what* it renders: it knows nothing about which
|
|
4
6
|
* channel or shim produced a descriptor — the Dreamux host decides which MCP
|
|
5
|
-
* servers a runtime gets and passes them through the create context.
|
|
7
|
+
* servers a runtime gets and passes them through the create context. What it
|
|
8
|
+
* does own is *how* a descriptor becomes Codex configuration, including the
|
|
9
|
+
* server name. A name is a logical identity chosen by the host; making it
|
|
10
|
+
* expressible in TOML is this adapter's job, not a constraint the host has to
|
|
11
|
+
* honor when it picks one.
|
|
12
|
+
*
|
|
13
|
+
* That is why the whole table is rendered as one override value rather than as
|
|
14
|
+
* one `mcp_servers.<name>.<field>=` override per field. Codex parses the value
|
|
15
|
+
* of `-c key=value` as TOML but not the key: it splits the key on `.` and takes
|
|
16
|
+
* each segment literally, so a quoted segment arrives with its quotes attached
|
|
17
|
+
* and a name containing `.` is silently split across two config levels. Inside
|
|
18
|
+
* the value a real TOML parser is reading, so a quoted key carries any string —
|
|
19
|
+
* dots, spaces, quotes, `=`, `#`, newlines, non-ASCII — back out under exactly
|
|
20
|
+
* the name it went in under.
|
|
21
|
+
*
|
|
22
|
+
* The override still merges into the operator's own `config.toml` rather than
|
|
23
|
+
* replacing it, at every level: servers Dreamux does not name are untouched,
|
|
24
|
+
* and for a name it does, fields it does not set keep their configured values.
|
|
25
|
+
*
|
|
26
|
+
* Values that cannot survive the TOML/argv boundary at all — a lone surrogate,
|
|
27
|
+
* an unescaped control character — fail loud when Codex loads the override.
|
|
28
|
+
* That envelope already applies to `command`, `args`, and `env`; a name is not
|
|
29
|
+
* given a private encoding to escape it.
|
|
6
30
|
*/
|
|
7
31
|
export function codexMcpServerArgs(servers) {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
32
|
+
if (servers.length === 0)
|
|
33
|
+
return [];
|
|
34
|
+
const entries = servers.map((server) => `${tomlString(server.name)} = ${tomlServerTable(server)}`);
|
|
35
|
+
return ['-c', `mcp_servers={${entries.join(', ')}}`];
|
|
36
|
+
}
|
|
37
|
+
function tomlServerTable(server) {
|
|
38
|
+
const fields = [
|
|
39
|
+
`command = ${tomlString(server.command)}`,
|
|
40
|
+
`args = ${tomlStringArray(server.args)}`,
|
|
41
|
+
// Carried, never dropped: a descriptor's `env` holds what its server needs
|
|
42
|
+
// to start, so losing it breaks the server it was minted for. Note that
|
|
43
|
+
// this rendering puts those values into Codex's own command line, so `env`
|
|
44
|
+
// is not a secrecy boundary here — the host is told as much and does not
|
|
45
|
+
// rely on one.
|
|
46
|
+
...(server.env !== undefined ? [`env = ${tomlTable(server.env)}`] : []),
|
|
47
|
+
];
|
|
48
|
+
return `{${fields.join(', ')}}`;
|
|
49
|
+
}
|
|
50
|
+
function tomlTable(entries) {
|
|
51
|
+
const pairs = Object.entries(entries).map(([key, value]) => `${tomlString(key)} = ${tomlString(value)}`);
|
|
52
|
+
return `{${pairs.join(', ')}}`;
|
|
14
53
|
}
|
|
15
54
|
function tomlStringArray(values) {
|
|
16
55
|
return `[${values.map(tomlString).join(', ')}]`;
|
|
17
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* One TOML basic string, used for both keys and values.
|
|
59
|
+
*
|
|
60
|
+
* `JSON.stringify` is the whole implementation because TOML's basic-string
|
|
61
|
+
* escapes are a superset of JSON's: the same double quotes, the same `\"`,
|
|
62
|
+
* `\\`, `\b`, `\f`, `\n`, `\r`, `\t`, and the same `\uXXXX`.
|
|
63
|
+
*/
|
|
18
64
|
function tomlString(value) {
|
|
19
65
|
return JSON.stringify(value);
|
|
20
66
|
}
|
package/dist/mcp-config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-config.js","sourceRoot":"","sources":["../src/mcp-config.ts"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"mcp-config.js","sourceRoot":"","sources":["../src/mcp-config.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAyC;IAEzC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CACzB,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,eAAe,CAAC,MAAM,CAAC,EAAE,CACtE,CAAC;IACF,OAAO,CAAC,IAAI,EAAE,gBAAgB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,eAAe,CAAC,MAA6B;IACpD,MAAM,MAAM,GAAG;QACb,aAAa,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;QACzC,UAAU,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QACxC,2EAA2E;QAC3E,wEAAwE;QACxE,2EAA2E;QAC3E,yEAAyE;QACzE,eAAe;QACf,GAAG,CAAC,MAAM,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACxE,CAAC;IACF,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAClC,CAAC;AAED,SAAS,SAAS,CAAC,OAAyC;IAC1D,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CACvC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,UAAU,CAAC,KAAK,CAAC,EAAE,CAC9D,CAAC;IACF,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AACjC,CAAC;AAED,SAAS,eAAe,CAAC,MAAyB;IAChD,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAClD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC"}
|
package/dist/provider.d.ts
CHANGED
|
@@ -1,26 +1,19 @@
|
|
|
1
1
|
import { CodexWsClient } from './rpc.js';
|
|
2
2
|
import { CodexProcess, type CodexProcessOptions } from './supervisor.js';
|
|
3
|
-
import { type CodexRuntimeDeps } from './runtime.js';
|
|
4
3
|
import { dispatcherCodexConfig, type DispatcherCodexConfig } from './config.js';
|
|
5
|
-
import type {
|
|
4
|
+
import type { AgentRuntimeMcpServer, AgentRuntimeProvider, AgentRuntimeProviderCapabilities, AgentRuntimeProviderFactory, AgentRuntimeSessionRef, AgentRuntimeSystemPrompt } from '@excitedjs/dreamux-types';
|
|
6
5
|
/**
|
|
7
6
|
* Construction options for the built-in Codex provider. The runtime's host
|
|
8
|
-
* contracts
|
|
7
|
+
* contracts arrive on the NEUTRAL create context, not as factory hooks:
|
|
9
8
|
* volatile socket placement comes from `context.paths.runtimeSocketDirs()` (this
|
|
10
9
|
* package owns the allocation policy), and env injection comes from
|
|
11
10
|
* `context.injectEnv`. Role-gated bundled skills arrive as neutral
|
|
12
|
-
* `skillSources`.
|
|
13
|
-
*
|
|
14
|
-
*
|
|
11
|
+
* `skillSources`. Registration identity is Core's: the provider carries no
|
|
12
|
+
* descriptor. What remains here are the test/host seams (process/WS factories,
|
|
13
|
+
* the optional Codex home pre-start check, restart backoff) that let core and
|
|
14
|
+
* tests wire behavior without changing the provider.
|
|
15
15
|
*/
|
|
16
16
|
export interface CodexAgentRuntimeProviderOptions {
|
|
17
|
-
/**
|
|
18
|
-
* The registry descriptor for `builtin:codex`. Defaults to a minimal one.
|
|
19
|
-
* Accepted wide (`ProviderDescriptor`) so a host that resolved it from its
|
|
20
|
-
* registry need not pre-narrow the kind; the factory validates it is an
|
|
21
|
-
* `agentRuntime` descriptor.
|
|
22
|
-
*/
|
|
23
|
-
descriptor?: ProviderDescriptor;
|
|
24
17
|
/** Optional Codex home/auth pre-start check, invoked with the runtime id and cwd. */
|
|
25
18
|
codexHomeDoctor?: (info: {
|
|
26
19
|
runtimeId: string;
|
|
@@ -30,48 +23,41 @@ export interface CodexAgentRuntimeProviderOptions {
|
|
|
30
23
|
codexClientFactory?: (socketPath: string) => CodexWsClient;
|
|
31
24
|
restartBackoffBaseMs?: number;
|
|
32
25
|
restartBackoffMaxMs?: number;
|
|
33
|
-
/** Override native transcript path validation for deterministic tests. */
|
|
34
|
-
validateTranscriptPath?: CodexRuntimeDeps['validateTranscriptPath'];
|
|
35
26
|
}
|
|
36
|
-
|
|
27
|
+
/**
|
|
28
|
+
* Provider-static selection metadata. Recovery, session-bound structured
|
|
29
|
+
* output, and recent Activity reads are mandatory provider behavior, so none of
|
|
30
|
+
* them is advertised here.
|
|
31
|
+
*/
|
|
32
|
+
export declare const CODEX_AGENT_RUNTIME_CAPABILITIES: AgentRuntimeProviderCapabilities;
|
|
37
33
|
export declare function codexSystemPromptReplace(systemPrompt: AgentRuntimeSystemPrompt | undefined): string | undefined;
|
|
38
34
|
export declare function codexSystemPromptAppend(systemPrompt: AgentRuntimeSystemPrompt | undefined): readonly string[] | undefined;
|
|
39
35
|
/**
|
|
40
36
|
* Create the built-in Codex `AgentRuntimeProvider`. It implements the neutral
|
|
41
|
-
* `@excitedjs/dreamux-types` contract: `
|
|
42
|
-
* `
|
|
43
|
-
* `createRuntime` builds a {@link CodexRuntime} from the neutral create
|
|
44
|
-
* plus the host-supplied hooks.
|
|
37
|
+
* `@excitedjs/dreamux-types` contract: `config.read` parses Codex runtime
|
|
38
|
+
* config, `readRecentActivity` serves neutral Activity Records for any session,
|
|
39
|
+
* and `createRuntime` builds a {@link CodexRuntime} from the neutral create
|
|
40
|
+
* context plus the host-supplied hooks.
|
|
41
|
+
*
|
|
42
|
+
* Codex resumes from its thread id alone, so its session identity is the base
|
|
43
|
+
* {@link AgentRuntimeSessionRef}.
|
|
45
44
|
*/
|
|
46
|
-
export declare function createCodexAgentRuntimeProvider(options?: CodexAgentRuntimeProviderOptions): AgentRuntimeProvider<DispatcherCodexConfig>;
|
|
45
|
+
export declare function createCodexAgentRuntimeProvider(options?: CodexAgentRuntimeProviderOptions): AgentRuntimeProvider<DispatcherCodexConfig, AgentRuntimeSessionRef>;
|
|
47
46
|
/** Re-export the typed accessor for a runtime's resolved codex config. */
|
|
48
47
|
export { dispatcherCodexConfig };
|
|
49
48
|
export declare function codexRuntimeArgsForMcpServers(servers: readonly AgentRuntimeMcpServer[]): string[];
|
|
50
|
-
/**
|
|
51
|
-
* The context Dreamux core's generic provider package-loader passes to this
|
|
52
|
-
* package's factory export. A back-compat alias of the public
|
|
53
|
-
* {@link ProviderFactoryContext}, narrowed to the Agent Runtime descriptor kind
|
|
54
|
-
* so the factory assigns `descriptor` without a cast.
|
|
55
|
-
*/
|
|
56
|
-
export type CodexProviderFactoryContext = ProviderFactoryContext<AgentRuntimeProviderDescriptor>;
|
|
57
49
|
/**
|
|
58
50
|
* Default export — the factory Dreamux core's generic provider-loader selects
|
|
59
51
|
* for the `builtin:codex` ref (it imports this package and calls the default
|
|
60
|
-
* export with `{ ref
|
|
61
|
-
*
|
|
62
|
-
* skills.
|
|
52
|
+
* export with `{ ref }`). It returns a provider on package defaults: a
|
|
53
|
+
* standalone volatile-socket allocator and no host-injected bundled skills.
|
|
63
54
|
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
* explicit dreamux bin path). This default export keeps the package a
|
|
70
|
-
* first-class, loadable `AgentRuntimeProvider` for the generic loader and for
|
|
71
|
-
* external embedders;
|
|
72
|
-
* converging core's launcher onto the neutral context so it can drive the loaded
|
|
73
|
-
* provider directly is later-slice work.
|
|
55
|
+
* This is the production path. Core drives the loaded provider through the
|
|
56
|
+
* neutral facade alone — it holds no adapter for this package — and supplies
|
|
57
|
+
* every host contract (socket root, skill sources, MCP servers, state lease)
|
|
58
|
+
* through the neutral create context. The options argument of
|
|
59
|
+
* {@link createCodexAgentRuntimeProvider} exists for embedders and tests.
|
|
74
60
|
*/
|
|
75
|
-
declare const codexAgentRuntimeProviderFactory: AgentRuntimeProviderFactory<DispatcherCodexConfig>;
|
|
61
|
+
declare const codexAgentRuntimeProviderFactory: AgentRuntimeProviderFactory<DispatcherCodexConfig, AgentRuntimeSessionRef>;
|
|
76
62
|
export default codexAgentRuntimeProviderFactory;
|
|
77
63
|
//# sourceMappingURL=provider.d.ts.map
|
package/dist/provider.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EACL,YAAY,EACZ,KAAK,mBAAmB,EACzB,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EACL,YAAY,EACZ,KAAK,mBAAmB,EACzB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAEL,qBAAqB,EAErB,KAAK,qBAAqB,EAC3B,MAAM,aAAa,CAAC;AAUrB,OAAO,KAAK,EAGV,qBAAqB,EACrB,oBAAoB,EACpB,gCAAgC,EAChC,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAElC;;;;;;;;;;GAUG;AACH,MAAM,WAAW,gCAAgC;IAC/C,qFAAqF;IACrF,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;KACb,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,YAAY,CAAC;IAClE,kBAAkB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,aAAa,CAAC;IAC3D,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,EAAE,gCACjC,CAAC;AAEf,wBAAgB,wBAAwB,CACtC,YAAY,EAAE,wBAAwB,GAAG,SAAS,GACjD,MAAM,GAAG,SAAS,CAIpB;AAED,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,wBAAwB,GAAG,SAAS,GACjD,SAAS,MAAM,EAAE,GAAG,SAAS,CAO/B;AAED;;;;;;;;;GASG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,GAAE,gCAAqC,GAC7C,oBAAoB,CAAC,qBAAqB,EAAE,sBAAsB,CAAC,CAwFrE;AAED,0EAA0E;AAC1E,OAAO,EAAE,qBAAqB,EAAE,CAAC;AAEjC,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,SAAS,qBAAqB,EAAE,GACxC,MAAM,EAAE,CAEV;AAED;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,gCAAgC,EAAE,2BAA2B,CACjE,qBAAqB,EACrB,sBAAsB,CACmB,CAAC;AAE5C,eAAe,gCAAgC,CAAC"}
|
package/dist/provider.js
CHANGED
|
@@ -1,21 +1,18 @@
|
|
|
1
1
|
import { codexMcpServerArgs } from './mcp-config.js';
|
|
2
|
-
import { CodexRuntime
|
|
2
|
+
import { CodexRuntime } from './runtime.js';
|
|
3
3
|
import { DEFAULT_CODEX_BIN, dispatcherCodexConfig, readDispatcherCodexConfig, } from './config.js';
|
|
4
4
|
import { codexArgsFromConfig, codexArgsToCli } from './args.js';
|
|
5
|
-
import { BUILTIN_CODEX_PROVIDER_REF } from './provider-ref.js';
|
|
6
5
|
import { resolveCodexBinPath } from './bin.js';
|
|
7
6
|
import { codexAgentRuntimeDiagnostic } from './diagnostic.js';
|
|
8
7
|
import { allocateCodexSocketPath } from './internal/socket.js';
|
|
9
|
-
import {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
ref: { source: 'builtin', id: 'codex', raw: BUILTIN_CODEX_PROVIDER_REF },
|
|
18
|
-
};
|
|
8
|
+
import { readCodexRecentActivity } from './activity/reader.js';
|
|
9
|
+
import { compileCodexOutputSchema, } from './output-schema-codec.js';
|
|
10
|
+
/**
|
|
11
|
+
* Provider-static selection metadata. Recovery, session-bound structured
|
|
12
|
+
* output, and recent Activity reads are mandatory provider behavior, so none of
|
|
13
|
+
* them is advertised here.
|
|
14
|
+
*/
|
|
15
|
+
export const CODEX_AGENT_RUNTIME_CAPABILITIES = { tags: [] };
|
|
19
16
|
export function codexSystemPromptReplace(systemPrompt) {
|
|
20
17
|
if (systemPrompt === undefined)
|
|
21
18
|
return undefined;
|
|
@@ -33,27 +30,18 @@ export function codexSystemPromptAppend(systemPrompt) {
|
|
|
33
30
|
const append = systemPrompt.append.filter((prompt) => prompt !== '');
|
|
34
31
|
return append.length > 0 ? append : undefined;
|
|
35
32
|
}
|
|
36
|
-
/** Validate + narrow a seed descriptor to the Agent Runtime kind. */
|
|
37
|
-
function asAgentRuntimeDescriptor(descriptor) {
|
|
38
|
-
if (descriptor.kind !== 'agentRuntime') {
|
|
39
|
-
throw new Error(`@excitedjs/agent-runtime-codex: descriptor.kind must be 'agentRuntime' ` +
|
|
40
|
-
`(got ${JSON.stringify(descriptor.kind)})`);
|
|
41
|
-
}
|
|
42
|
-
return { ...descriptor, kind: descriptor.kind };
|
|
43
|
-
}
|
|
44
33
|
/**
|
|
45
34
|
* Create the built-in Codex `AgentRuntimeProvider`. It implements the neutral
|
|
46
|
-
* `@excitedjs/dreamux-types` contract: `
|
|
47
|
-
* `
|
|
48
|
-
* `createRuntime` builds a {@link CodexRuntime} from the neutral create
|
|
49
|
-
* plus the host-supplied hooks.
|
|
35
|
+
* `@excitedjs/dreamux-types` contract: `config.read` parses Codex runtime
|
|
36
|
+
* config, `readRecentActivity` serves neutral Activity Records for any session,
|
|
37
|
+
* and `createRuntime` builds a {@link CodexRuntime} from the neutral create
|
|
38
|
+
* context plus the host-supplied hooks.
|
|
39
|
+
*
|
|
40
|
+
* Codex resumes from its thread id alone, so its session identity is the base
|
|
41
|
+
* {@link AgentRuntimeSessionRef}.
|
|
50
42
|
*/
|
|
51
43
|
export function createCodexAgentRuntimeProvider(options = {}) {
|
|
52
44
|
return {
|
|
53
|
-
ref: BUILTIN_CODEX_PROVIDER_REF,
|
|
54
|
-
descriptor: options.descriptor === undefined
|
|
55
|
-
? DEFAULT_CODEX_DESCRIPTOR
|
|
56
|
-
: asAgentRuntimeDescriptor(options.descriptor),
|
|
57
45
|
getCapabilities: () => CODEX_AGENT_RUNTIME_CAPABILITIES,
|
|
58
46
|
diagnostic: codexAgentRuntimeDiagnostic,
|
|
59
47
|
onboard: {
|
|
@@ -66,17 +54,13 @@ export function createCodexAgentRuntimeProvider(options = {}) {
|
|
|
66
54
|
return { bin };
|
|
67
55
|
},
|
|
68
56
|
},
|
|
69
|
-
|
|
70
|
-
|
|
57
|
+
config: {
|
|
58
|
+
read(rawConfig, context) {
|
|
59
|
+
return readDispatcherCodexConfig(rawConfig, context.file, context.prefix);
|
|
60
|
+
},
|
|
71
61
|
},
|
|
72
|
-
|
|
73
|
-
createRuntime(context) {
|
|
74
|
-
if (context.state === undefined) {
|
|
75
|
-
throw new Error('codex runtime requires a state sink in the create context');
|
|
76
|
-
}
|
|
77
|
-
if (context.paths === undefined) {
|
|
78
|
-
throw new Error('codex runtime requires a path context in the create context');
|
|
79
|
-
}
|
|
62
|
+
readRecentActivity: (query, context) => readCodexRecentActivity(query, context),
|
|
63
|
+
async createRuntime(context) {
|
|
80
64
|
const codexConfig = context.config;
|
|
81
65
|
const codexArgs = codexArgsFromConfig(codexConfig);
|
|
82
66
|
const runtimeArgs = [
|
|
@@ -86,10 +70,16 @@ export function createCodexAgentRuntimeProvider(options = {}) {
|
|
|
86
70
|
const paths = context.paths;
|
|
87
71
|
const systemPromptReplace = codexSystemPromptReplace(context.systemPrompt);
|
|
88
72
|
const systemPromptAppend = codexSystemPromptAppend(context.systemPrompt);
|
|
73
|
+
// Bind the output schema once, here. A compile failure is a create-time
|
|
74
|
+
// error; no later submission can change or renegotiate the schema.
|
|
75
|
+
const codec = context.outputSchema === undefined
|
|
76
|
+
? null
|
|
77
|
+
: compileCodexOutputSchema(context.outputSchema);
|
|
89
78
|
const deps = {
|
|
90
79
|
cwd: context.cwd,
|
|
91
80
|
state: context.state,
|
|
92
|
-
activitySink: context.
|
|
81
|
+
activitySink: context.activity ?? (() => undefined),
|
|
82
|
+
codec,
|
|
93
83
|
paths,
|
|
94
84
|
// The package owns socket allocation: pick a fresh name in the first of
|
|
95
85
|
// the host's preference-ordered candidate dirs that fits the budget.
|
|
@@ -126,9 +116,6 @@ export function createCodexAgentRuntimeProvider(options = {}) {
|
|
|
126
116
|
...(options.restartBackoffMaxMs !== undefined
|
|
127
117
|
? { restartBackoffMaxMs: options.restartBackoffMaxMs }
|
|
128
118
|
: {}),
|
|
129
|
-
...(options.validateTranscriptPath !== undefined
|
|
130
|
-
? { validateTranscriptPath: options.validateTranscriptPath }
|
|
131
|
-
: {}),
|
|
132
119
|
};
|
|
133
120
|
return new CodexRuntime(context.identity, deps);
|
|
134
121
|
},
|
|
@@ -142,21 +129,15 @@ export function codexRuntimeArgsForMcpServers(servers) {
|
|
|
142
129
|
/**
|
|
143
130
|
* Default export — the factory Dreamux core's generic provider-loader selects
|
|
144
131
|
* for the `builtin:codex` ref (it imports this package and calls the default
|
|
145
|
-
* export with `{ ref
|
|
146
|
-
*
|
|
147
|
-
* skills.
|
|
132
|
+
* export with `{ ref }`). It returns a provider on package defaults: a
|
|
133
|
+
* standalone volatile-socket allocator and no host-injected bundled skills.
|
|
148
134
|
*
|
|
149
|
-
*
|
|
150
|
-
*
|
|
151
|
-
*
|
|
152
|
-
*
|
|
153
|
-
*
|
|
154
|
-
* explicit dreamux bin path). This default export keeps the package a
|
|
155
|
-
* first-class, loadable `AgentRuntimeProvider` for the generic loader and for
|
|
156
|
-
* external embedders;
|
|
157
|
-
* converging core's launcher onto the neutral context so it can drive the loaded
|
|
158
|
-
* provider directly is later-slice work.
|
|
135
|
+
* This is the production path. Core drives the loaded provider through the
|
|
136
|
+
* neutral facade alone — it holds no adapter for this package — and supplies
|
|
137
|
+
* every host contract (socket root, skill sources, MCP servers, state lease)
|
|
138
|
+
* through the neutral create context. The options argument of
|
|
139
|
+
* {@link createCodexAgentRuntimeProvider} exists for embedders and tests.
|
|
159
140
|
*/
|
|
160
|
-
const codexAgentRuntimeProviderFactory = (
|
|
141
|
+
const codexAgentRuntimeProviderFactory = () => createCodexAgentRuntimeProvider();
|
|
161
142
|
export default codexAgentRuntimeProviderFactory;
|
|
162
143
|
//# sourceMappingURL=provider.js.map
|
package/dist/provider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAMrD,OAAO,
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { AgentRuntimeActivitySink, AgentRuntimePathContext, AgentRuntimeSessionRef, AgentRuntimeSkillSource, AgentRuntimeStateSink, DreamuxLogger } from '@excitedjs/dreamux-types';
|
|
2
|
+
import type { CodexOutputSchemaCodec } from './output-schema-codec.js';
|
|
3
|
+
import type { CodexWsClient } from './rpc.js';
|
|
4
|
+
import type { CodexProcess, CodexProcessOptions } from './supervisor.js';
|
|
5
|
+
/**
|
|
6
|
+
* How this package constructs one resident Codex runtime.
|
|
7
|
+
*
|
|
8
|
+
* Package-internal, and only that: `createRuntime` assembles it from the
|
|
9
|
+
* neutral create context plus the provider's own options, and `CodexRuntime`
|
|
10
|
+
* consumes it. It is not part of the package's public surface and it is not
|
|
11
|
+
* the provider's options type — a host configures this provider through
|
|
12
|
+
* `CodexAgentRuntimeProviderOptions`, which names none of these fields.
|
|
13
|
+
*/
|
|
14
|
+
export interface CodexRuntimeDeps {
|
|
15
|
+
cwd: string;
|
|
16
|
+
systemPromptReplace?: string;
|
|
17
|
+
systemPromptAppend?: readonly string[];
|
|
18
|
+
state: AgentRuntimeStateSink<AgentRuntimeSessionRef>;
|
|
19
|
+
paths: AgentRuntimePathContext;
|
|
20
|
+
/**
|
|
21
|
+
* The session-bound output schema codec, compiled once at create time. It is
|
|
22
|
+
* fixed for the life of this runtime; no submission can change it.
|
|
23
|
+
*/
|
|
24
|
+
codec: CodexOutputSchemaCodec | null;
|
|
25
|
+
allocateSocketPath: (id: string) => string;
|
|
26
|
+
skillSources?: readonly AgentRuntimeSkillSource[];
|
|
27
|
+
injectEnv?: Record<string, string>;
|
|
28
|
+
codexBinPath?: string;
|
|
29
|
+
codexProcessFactory?: (opts: CodexProcessOptions) => CodexProcess;
|
|
30
|
+
codexClientFactory?: (socketPath: string) => CodexWsClient;
|
|
31
|
+
codexHomeDoctor?: (info: {
|
|
32
|
+
runtimeId: string;
|
|
33
|
+
cwd: string;
|
|
34
|
+
}) => void | Promise<void>;
|
|
35
|
+
resolveExtraArgs?: () => string[];
|
|
36
|
+
handshakeTimeoutMs?: number;
|
|
37
|
+
extraEnv?: Record<string, string>;
|
|
38
|
+
restartBackoffBaseMs?: number;
|
|
39
|
+
restartBackoffMaxMs?: number;
|
|
40
|
+
logger?: DreamuxLogger;
|
|
41
|
+
activitySink: AgentRuntimeActivitySink;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=runtime-deps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-deps.d.ts","sourceRoot":"","sources":["../src/runtime-deps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,uBAAuB,EACvB,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,EACrB,aAAa,EACd,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEzE;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,KAAK,EAAE,qBAAqB,CAAC,sBAAsB,CAAC,CAAC;IACrD,KAAK,EAAE,uBAAuB,CAAC;IAC/B;;;OAGG;IACH,KAAK,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACrC,kBAAkB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC;IAC3C,YAAY,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,YAAY,CAAC;IAClE,kBAAkB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,aAAa,CAAC;IAC3D,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;KACb,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,MAAM,EAAE,CAAC;IAClC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,YAAY,EAAE,wBAAwB,CAAC;CACxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-deps.js","sourceRoot":"","sources":["../src/runtime-deps.ts"],"names":[],"mappings":""}
|