@compozy/extension-sdk 0.3.0-beta.18 → 0.3.0-beta.20
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/cjs/connectivity-provider.js +11 -24
- package/dist/cjs/connectivity-provider.js.map +1 -1
- package/dist/cjs/errors.js +6 -1
- package/dist/cjs/errors.js.map +1 -1
- package/dist/cjs/extension-context.js +2 -1
- package/dist/cjs/extension-context.js.map +1 -1
- package/dist/cjs/extension-describe.js +9 -0
- package/dist/cjs/extension-describe.js.map +1 -1
- package/dist/cjs/extension-initialize.js +5 -0
- package/dist/cjs/extension-initialize.js.map +1 -1
- package/dist/cjs/extension-session.js +3 -0
- package/dist/cjs/extension-session.js.map +1 -1
- package/dist/cjs/extension-tool-dispatch.js +35 -0
- package/dist/cjs/extension-tool-dispatch.js.map +1 -0
- package/dist/cjs/extension.js +40 -54
- package/dist/cjs/extension.js.map +1 -1
- package/dist/cjs/generated/contracts.js +2 -0
- package/dist/cjs/generated/contracts.js.map +1 -1
- package/dist/cjs/index.js +10 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/protocol-params.js +23 -0
- package/dist/cjs/protocol-params.js.map +1 -0
- package/dist/cjs/testing/harness.js +4 -3
- package/dist/cjs/testing/harness.js.map +1 -1
- package/dist/cjs/testing/mock-transport.js +42 -2
- package/dist/cjs/testing/mock-transport.js.map +1 -1
- package/dist/cjs/transport.js +81 -8
- package/dist/cjs/transport.js.map +1 -1
- package/dist/cjs/types.js.map +1 -1
- package/dist/cjs/view-provider.js +137 -0
- package/dist/cjs/view-provider.js.map +1 -0
- package/dist/cjs/view-session-registry.js +41 -0
- package/dist/cjs/view-session-registry.js.map +1 -0
- package/dist/esm/connectivity-provider.js +4 -17
- package/dist/esm/connectivity-provider.js.map +1 -1
- package/dist/esm/errors.js +6 -1
- package/dist/esm/errors.js.map +1 -1
- package/dist/esm/extension-context.js +2 -1
- package/dist/esm/extension-context.js.map +1 -1
- package/dist/esm/extension-describe.js +8 -0
- package/dist/esm/extension-describe.js.map +1 -1
- package/dist/esm/extension-initialize.js +5 -0
- package/dist/esm/extension-initialize.js.map +1 -1
- package/dist/esm/extension-session.js +3 -0
- package/dist/esm/extension-session.js.map +1 -1
- package/dist/esm/extension-tool-dispatch.js +31 -0
- package/dist/esm/extension-tool-dispatch.js.map +1 -0
- package/dist/esm/extension.js +42 -56
- package/dist/esm/extension.js.map +1 -1
- package/dist/esm/generated/contracts.js +2 -0
- package/dist/esm/generated/contracts.js.map +1 -1
- package/dist/esm/index.js +3 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/protocol-params.js +18 -0
- package/dist/esm/protocol-params.js.map +1 -0
- package/dist/esm/testing/harness.js +4 -3
- package/dist/esm/testing/harness.js.map +1 -1
- package/dist/esm/testing/mock-transport.js +42 -2
- package/dist/esm/testing/mock-transport.js.map +1 -1
- package/dist/esm/transport.js +80 -7
- package/dist/esm/transport.js.map +1 -1
- package/dist/esm/types.js.map +1 -1
- package/dist/esm/view-provider.js +133 -0
- package/dist/esm/view-provider.js.map +1 -0
- package/dist/esm/view-session-registry.js +37 -0
- package/dist/esm/view-session-registry.js.map +1 -0
- package/dist/types/connectivity-provider.d.ts.map +1 -1
- package/dist/types/errors.d.ts +1 -0
- package/dist/types/errors.d.ts.map +1 -1
- package/dist/types/extension-context.d.ts +1 -1
- package/dist/types/extension-context.d.ts.map +1 -1
- package/dist/types/extension-contract.d.ts +1 -0
- package/dist/types/extension-contract.d.ts.map +1 -1
- package/dist/types/extension-describe.d.ts +2 -1
- package/dist/types/extension-describe.d.ts.map +1 -1
- package/dist/types/extension-initialize.d.ts.map +1 -1
- package/dist/types/extension-session.d.ts.map +1 -1
- package/dist/types/extension-tool-dispatch.d.ts +5 -0
- package/dist/types/extension-tool-dispatch.d.ts.map +1 -0
- package/dist/types/extension.d.ts +2 -1
- package/dist/types/extension.d.ts.map +1 -1
- package/dist/types/generated/contracts.d.ts +381 -2
- package/dist/types/generated/contracts.d.ts.map +1 -1
- package/dist/types/index.d.ts +5 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/protocol-params.d.ts +4 -0
- package/dist/types/protocol-params.d.ts.map +1 -0
- package/dist/types/testing/harness.d.ts +1 -1
- package/dist/types/testing/harness.d.ts.map +1 -1
- package/dist/types/testing/mock-transport.d.ts +1 -1
- package/dist/types/testing/mock-transport.d.ts.map +1 -1
- package/dist/types/transport.d.ts +8 -4
- package/dist/types/transport.d.ts.map +1 -1
- package/dist/types/types.d.ts +1 -16
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/view-provider.d.ts +18 -0
- package/dist/types/view-provider.d.ts.map +1 -0
- package/dist/types/view-session-registry.d.ts +12 -0
- package/dist/types/view-session-registry.d.ts.map +1 -0
- package/package.json +1 -1
package/dist/esm/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAgCA,MAAM,OAAO,QAAyB,SAAQ,KAAK;IACxC,IAAI,CAAS;IACb,IAAI,CAAmB;IAEhC,YAAmB,IAAY,EAAE,OAAe,EAAE,IAAW;QAC3D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,SAAS;QACd,MAAM,IAAI,GAAG;YACX,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;QACF,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO;YACL,GAAG,IAAI;YACP,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,UAAW,SAAQ,QAAmC;IACjE,YAAmB,KAAa;QAC9B,KAAK,CAAC,CAAC,KAAK,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,QAAmC;IAC1E,YAAmB,MAAc;QAC/B,KAAK,CAAC,CAAC,KAAK,EAAE,iBAAiB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/C,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,QAAgC;IACvE,YAAmB,MAAc;QAC/B,KAAK,CAAC,CAAC,KAAK,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAChD,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,QAAmC;IACzE,YAAmB,KAAa,EAAE,IAAgC;QAChE,KAAK,CAAC,CAAC,KAAK,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,QAAmC;IACpE,YAAmB,KAAa;QAC9B,KAAK,CAAC,CAAC,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { format } from "node:util";
|
|
2
2
|
import { InternalError } from "./errors.js";
|
|
3
|
-
export function makeExtensionContext(request, host, session, stderr) {
|
|
3
|
+
export function makeExtensionContext(request, signal, host, session, stderr) {
|
|
4
4
|
if (!session) {
|
|
5
5
|
throw new InternalError("session is not initialized");
|
|
6
6
|
}
|
|
@@ -12,6 +12,7 @@ export function makeExtensionContext(request, host, session, stderr) {
|
|
|
12
12
|
requestId: request.id,
|
|
13
13
|
host,
|
|
14
14
|
session,
|
|
15
|
+
signal,
|
|
15
16
|
log: (...values) => {
|
|
16
17
|
stderr.write(`${format(...values)}\n`);
|
|
17
18
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-context.js","sourceRoot":"","sources":["../../src/extension-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAK5C,MAAM,UAAU,oBAAoB,CAClC,OAA+B,EAC/B,IAAa,EACb,OAAqC,EACrC,MAA6B;IAE7B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,aAAa,CAAC,4BAA4B,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,IAAI,aAAa,CAAC,wBAAwB,CAAC,CAAC;IACpD,CAAC;IACD,OAAO;QACL,OAAO;QACP,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,IAAI;QACJ,OAAO;QACP,GAAG,EAAE,CAAC,GAAG,MAAiB,EAAE,EAAE;YAC5B,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,MAA6B,EAC7B,OAAe,EACf,KAAc;IAEd,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvF,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,KAAK,MAAM,IAAI,CAAC,CAAC;AAC1C,CAAC"}
|
|
1
|
+
{"version":3,"file":"extension-context.js","sourceRoot":"","sources":["../../src/extension-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAK5C,MAAM,UAAU,oBAAoB,CAClC,OAA+B,EAC/B,MAAmB,EACnB,IAAa,EACb,OAAqC,EACrC,MAA6B;IAE7B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,aAAa,CAAC,4BAA4B,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,OAAO,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,IAAI,aAAa,CAAC,wBAAwB,CAAC,CAAC;IACpD,CAAC;IACD,OAAO;QACL,OAAO;QACP,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,IAAI;QACJ,OAAO;QACP,MAAM;QACN,GAAG,EAAE,CAAC,GAAG,MAAiB,EAAE,EAAE;YAC5B,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,MAA6B,EAC7B,OAAe,EACf,KAAc;IAEd,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvF,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,KAAK,MAAM,IAAI,CAAC,CAAC;AAC1C,CAAC"}
|
|
@@ -32,11 +32,15 @@ export function cloneExtensionToolDescriptors(tools) {
|
|
|
32
32
|
: { command: structuredClone(tool.descriptor.command) }),
|
|
33
33
|
}));
|
|
34
34
|
}
|
|
35
|
+
export function cmdPaletteViewIDs(config) {
|
|
36
|
+
return (config?.views ?? []).map(view => view.id.trim()).filter(id => id.length > 0);
|
|
37
|
+
}
|
|
35
38
|
export function buildExtensionDescribePayload(input) {
|
|
36
39
|
const command = input.definition.subprocess?.command.trim() ?? "";
|
|
37
40
|
if (!command) {
|
|
38
41
|
throw new Error("subprocess command is required");
|
|
39
42
|
}
|
|
43
|
+
const viewIDs = cmdPaletteViewIDs(input.definition.resources?.cmd_palette);
|
|
40
44
|
return {
|
|
41
45
|
name: input.definition.name.trim(),
|
|
42
46
|
version: input.definition.version.trim(),
|
|
@@ -52,6 +56,9 @@ export function buildExtensionDescribePayload(input) {
|
|
|
52
56
|
agents: normalizeStringList(input.definition.resources?.agents),
|
|
53
57
|
automation: normalizeStringList(input.definition.resources?.automation),
|
|
54
58
|
layouts: normalizeStringList(input.definition.resources?.layouts),
|
|
59
|
+
...(input.definition.resources?.cmd_palette === undefined
|
|
60
|
+
? {}
|
|
61
|
+
: { cmd_palette: structuredClone(input.definition.resources.cmd_palette) }),
|
|
55
62
|
},
|
|
56
63
|
subprocess: {
|
|
57
64
|
command,
|
|
@@ -71,6 +78,7 @@ export function buildExtensionDescribePayload(input) {
|
|
|
71
78
|
command_groups: input.commandGroups.map(group => ({ ...group })),
|
|
72
79
|
hook_events: normalizeStringList(input.definition.supported_hook_events),
|
|
73
80
|
watch_source_kinds: input.watchSourceKinds,
|
|
81
|
+
...(viewIDs.length === 0 ? {} : { cmd_palette_views: viewIDs }),
|
|
74
82
|
sdk: {
|
|
75
83
|
name: SDK_NAME,
|
|
76
84
|
version: input.sdkVersion,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-describe.js","sourceRoot":"","sources":["../../src/extension-describe.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,QAAQ,GAET,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"extension-describe.js","sourceRoot":"","sources":["../../src/extension-describe.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,QAAQ,GAET,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAkBtF,MAAM,UAAU,+BAA+B;IAC7C,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,WAAW,EAAE,IAAI,CAAC,EAAE;YAClB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC1B,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,eAAyC,EACzC,QAA+B;IAE/B,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,YAAY,EAAE,CAAC;QACzD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;IAChE,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAC/B,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,KAA+B;IAE/B,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7B,GAAG,IAAI,CAAC,UAAU;QAClB,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,KAAK,SAAS;YAC5C,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,YAAY,EAAE,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACpE,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,KAAK,SAAS;YAC7C,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,aAAa,EAAE,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QACtE,YAAY,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;QACvD,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,SAAS;YACvC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;KAC3D,CAAC,CAAC,CAAC;AACN,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,MAAoC;IACpE,OAAO,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACvF,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,KAA6B;IACzE,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;IAClE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IACD,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAE3E,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE;QAClC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE;QACxC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,EAAE;YACtC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE;YACtD,CAAC,CAAC,EAAE,CAAC;QACP,QAAQ,EAAE,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,EAAE,QAAQ,CAAC;QACtE,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC;QAC5E,YAAY,EAAE,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC;QAChE,SAAS,EAAE;YACT,MAAM,EAAE,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC;YAC/D,KAAK,EAAE,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC;YAC7D,MAAM,EAAE,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC;YAC/D,UAAU,EAAE,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC;YACvE,OAAO,EAAE,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC;YACjE,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,WAAW,KAAK,SAAS;gBACvD,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,WAAW,EAAE,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC;SAC9E;QACD,UAAU,EAAE;YACV,OAAO;YACP,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;YACpD,GAAG,EAAE,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,GAAG,EAAE;SAC7C;QACD,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,qBAAqB,KAAK,SAAS;YACtD,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE,qBAAqB,EAAE;oBACrB,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC,QAAQ;oBACzD,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;oBACtE,cAAc,EAAE,mBAAmB,CACjC,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC,cAAc,CACtD;iBACF;aACF,CAAC;QACN,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACxF,cAAc,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;QAChE,WAAW,EAAE,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC;QACxE,kBAAkB,EAAE,KAAK,CAAC,gBAAgB;QAC1C,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,OAAO,EAAE,CAAC;QAC/D,GAAG,EAAE;YACH,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,KAAK,CAAC,UAAU;YACzB,gBAAgB,EAAE,GAAG;YACrB,mBAAmB,EAAE,uBAAuB;SAC7C;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -46,6 +46,11 @@ export function parseInitializeRequest(params) {
|
|
|
46
46
|
throw new InvalidParamsError(`${field} must be greater than zero`);
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
|
+
if (request.capabilities.provides.includes("view.provider") &&
|
|
50
|
+
(!Number.isFinite(request.runtime.default_view_timeout_ms) ||
|
|
51
|
+
(request.runtime.default_view_timeout_ms ?? 0) <= 0)) {
|
|
52
|
+
throw new InvalidParamsError("default_view_timeout_ms must be greater than zero for view.provider");
|
|
53
|
+
}
|
|
49
54
|
return request;
|
|
50
55
|
}
|
|
51
56
|
export function validateProtocolVersion(request) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-initialize.js","sourceRoot":"","sources":["../../src/extension-initialize.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"extension-initialize.js","sourceRoot":"","sources":["../../src/extension-initialize.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { validateProvidedMethodCoverage } from "./capabilities.js";
|
|
2
2
|
import { SDK_NAME } from "./extension-contract.js";
|
|
3
|
+
import { cmdPaletteViewIDs } from "./extension-describe.js";
|
|
3
4
|
import { parseInitializeRequest, validateProtocolVersion } from "./extension-initialize.js";
|
|
4
5
|
import { ensureSubset, normalizeHostMethodList, normalizeStringList } from "./extension-runtime.js";
|
|
5
6
|
export function buildExtensionSession(options) {
|
|
@@ -10,6 +11,7 @@ export function buildExtensionSession(options) {
|
|
|
10
11
|
ensureSubset("provides", requestedProvides, request.capabilities.provides);
|
|
11
12
|
ensureSubset("permissions", requestedPermissions, request.capabilities.granted_permissions);
|
|
12
13
|
validateProvidedMethodCoverage(requestedProvides, options.implementedMethods);
|
|
14
|
+
const viewIDs = cmdPaletteViewIDs(options.definition.resources?.cmd_palette);
|
|
13
15
|
const response = {
|
|
14
16
|
protocol_version: "1",
|
|
15
17
|
extension_info: {
|
|
@@ -27,6 +29,7 @@ export function buildExtensionSession(options) {
|
|
|
27
29
|
...(options.watchSourceKinds.length > 0
|
|
28
30
|
? { watch_source_kinds: options.watchSourceKinds }
|
|
29
31
|
: {}),
|
|
32
|
+
...(viewIDs.length > 0 ? { cmd_palette_views: viewIDs } : {}),
|
|
30
33
|
supports: {
|
|
31
34
|
health_check: true,
|
|
32
35
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-session.js","sourceRoot":"","sources":["../../src/extension-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAyB,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAYpG,MAAM,UAAU,qBAAqB,CAAC,OAAqC;IAIzE,MAAM,OAAO,GAAG,sBAAsB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAEjC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACzF,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC/F,YAAY,CAAC,UAAU,EAAE,iBAAiB,EAAE,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC3E,YAAY,CAAC,aAAa,EAAE,oBAAoB,EAAE,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;IAC5F,8BAA8B,CAAC,iBAAiB,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"extension-session.js","sourceRoot":"","sources":["../../src/extension-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAyB,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAYpG,MAAM,UAAU,qBAAqB,CAAC,OAAqC;IAIzE,MAAM,OAAO,GAAG,sBAAsB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAEjC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACzF,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC/F,YAAY,CAAC,UAAU,EAAE,iBAAiB,EAAE,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC3E,YAAY,CAAC,aAAa,EAAE,oBAAoB,EAAE,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;IAC5F,8BAA8B,CAAC,iBAAiB,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC9E,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAE7E,MAAM,QAAQ,GAAuB;QACnC,gBAAgB,EAAE,GAAG;QACrB,cAAc,EAAE;YACd,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,IAAI;YAC7B,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO;YACnC,QAAQ,EAAE,QAAQ;YAClB,WAAW,EAAE,OAAO,CAAC,UAAU;SAChC;QACD,qBAAqB,EAAE;YACrB,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,oBAAoB;SAClC;QACD,mBAAmB,EAAE,OAAO,CAAC,kBAAkB;QAC/C,qBAAqB,EAAE,OAAO,CAAC,mBAAmB;QAClD,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC;YACrC,CAAC,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,gBAAgB,EAAE;YAClD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,QAAQ,EAAE;YACR,YAAY,EAAE,IAAI;SACnB;KACF,CAAC;IAEF,OAAO;QACL,QAAQ;QACR,OAAO,EAAE;YACP,iBAAiB,EAAE,OAAO;YAC1B,kBAAkB,EAAE,QAAQ;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,oBAAoB,EAAE,QAAQ,CAAC,qBAAqB;SACrD;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { InvalidParamsError, MethodNotFoundError, isRPCError } from "./errors.js";
|
|
2
|
+
import { normalizeToolResult, parseToolCallRequest, toolExecutionError, } from "./extension-runtime.js";
|
|
3
|
+
import { makeExtensionToolContext } from "./extension-tool-context.js";
|
|
4
|
+
export function provideRegisteredTools(tools) {
|
|
5
|
+
return { tools };
|
|
6
|
+
}
|
|
7
|
+
export async function callRegisteredTool(tools, params, context) {
|
|
8
|
+
const call = parseToolCallRequest(params);
|
|
9
|
+
const registered = tools.get(call.handler);
|
|
10
|
+
if (!registered) {
|
|
11
|
+
throw new MethodNotFoundError(call.handler);
|
|
12
|
+
}
|
|
13
|
+
if (registered.descriptor.id !== call.tool_id) {
|
|
14
|
+
throw new InvalidParamsError("tool_id does not match handler", {
|
|
15
|
+
expected_tool_id: registered.descriptor.id,
|
|
16
|
+
actual_tool_id: call.tool_id,
|
|
17
|
+
handler: call.handler,
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
try {
|
|
21
|
+
const result = await registered.handler(makeExtensionToolContext(call, context));
|
|
22
|
+
return { result: normalizeToolResult(result) };
|
|
23
|
+
}
|
|
24
|
+
catch (error) {
|
|
25
|
+
if (isRPCError(error)) {
|
|
26
|
+
throw error;
|
|
27
|
+
}
|
|
28
|
+
throw toolExecutionError(error, call, registered.sensitiveInputFields);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=extension-tool-dispatch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extension-tool-dispatch.js","sourceRoot":"","sources":["../../src/extension-tool-dispatch.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAClF,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAEvE,MAAM,UAAU,sBAAsB,CACpC,KAAuC;IAEvC,OAAO,EAAE,KAAK,EAAE,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAA0C,EAC1C,MAAe,EACf,OAAyB;IAEzB,MAAM,IAAI,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;QAC9C,MAAM,IAAI,kBAAkB,CAAC,gCAAgC,EAAE;YAC7D,gBAAgB,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE;YAC1C,cAAc,EAAE,IAAI,CAAC,OAAO;YAC5B,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,wBAAwB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QACjF,OAAO,EAAE,MAAM,EAAE,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,KAAK,CAAC;QACd,CAAC;QACD,MAAM,kBAAkB,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;IACzE,CAAC;AACH,CAAC"}
|
package/dist/esm/extension.js
CHANGED
|
@@ -2,14 +2,14 @@ import { ExtensionWatchSources, WATCH_POLL_METHOD, isWatchSourceMethod, } from "
|
|
|
2
2
|
import { HostAPI } from "./host-api.js";
|
|
3
3
|
import { StdioTransport } from "./transport.js";
|
|
4
4
|
import { PROVIDE_TOOLS_METHOD, TOOL_PROVIDER_CAPABILITY, TOOLS_CALL_METHOD, isToolProviderMethod, } from "./capabilities.js";
|
|
5
|
-
import { InvalidParamsError, MethodNotFoundError, NotInitializedError, ShutdownInProgressError,
|
|
6
|
-
import { implementedExtensionMethods, normalizeStringList,
|
|
5
|
+
import { InvalidParamsError, MethodNotFoundError, NotInitializedError, ShutdownInProgressError, } from "./errors.js";
|
|
6
|
+
import { implementedExtensionMethods, normalizeStringList, parseShutdownRequest, transportMethods, } from "./extension-runtime.js";
|
|
7
7
|
import { SDK_VERSION } from "./extension-contract.js";
|
|
8
8
|
import { makeExtensionContext, writeExtensionError } from "./extension-context.js";
|
|
9
|
-
import { makeExtensionToolContext } from "./extension-tool-context.js";
|
|
10
9
|
import { buildExtensionSession } from "./extension-session.js";
|
|
11
10
|
import { buildExtensionDescribePayload, cloneExtensionToolDescriptors, defaultExtensionDescribeProcess, runExtensionDescribeMode, } from "./extension-describe.js";
|
|
12
11
|
import { buildRegisteredTool } from "./extension-tool-registration.js";
|
|
12
|
+
import { callRegisteredTool, provideRegisteredTools } from "./extension-tool-dispatch.js";
|
|
13
13
|
import { ExtensionProvideSurfaces, registerProvideSurface, } from "./extension-provide-surface.js";
|
|
14
14
|
export class Extension {
|
|
15
15
|
definition;
|
|
@@ -27,6 +27,7 @@ export class Extension {
|
|
|
27
27
|
});
|
|
28
28
|
readyCallbacks = new Set();
|
|
29
29
|
transportBindings = new Set();
|
|
30
|
+
requestSignals = new Map();
|
|
30
31
|
provideSurfaces = new ExtensionProvideSurfaces({
|
|
31
32
|
handlers: this.handlers,
|
|
32
33
|
validateMethod: method => {
|
|
@@ -186,35 +187,42 @@ export class Extension {
|
|
|
186
187
|
}
|
|
187
188
|
bindMethod(method) {
|
|
188
189
|
if (this.transportBindings.has(method)) {
|
|
189
|
-
this.transport.handle(method, async (params, request) => await this.dispatch(method, params, request));
|
|
190
|
+
this.transport.handle(method, async (params, request, signal) => await this.dispatch(method, params, request, signal));
|
|
190
191
|
return;
|
|
191
192
|
}
|
|
192
|
-
this.transport.handle(method, async (params, request) => await this.dispatch(method, params, request));
|
|
193
|
+
this.transport.handle(method, async (params, request, signal) => await this.dispatch(method, params, request, signal));
|
|
193
194
|
this.transportBindings.add(method);
|
|
194
195
|
}
|
|
195
|
-
async dispatch(method, params, request) {
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
196
|
+
async dispatch(method, params, request, signal) {
|
|
197
|
+
const requestKey = this.requestKey(request);
|
|
198
|
+
this.requestSignals.set(requestKey, signal);
|
|
199
|
+
try {
|
|
200
|
+
if (method === "initialize") {
|
|
201
|
+
return await this.handleInitialize(params);
|
|
202
|
+
}
|
|
203
|
+
if (!this.initialized || !this.session) {
|
|
204
|
+
throw new NotInitializedError();
|
|
205
|
+
}
|
|
206
|
+
if (this.shutdownStarted && method !== "shutdown") {
|
|
207
|
+
throw new ShutdownInProgressError(this.shutdownDeadlineMS === undefined ? {} : { deadline_ms: this.shutdownDeadlineMS });
|
|
208
|
+
}
|
|
209
|
+
switch (method) {
|
|
210
|
+
case "health_check":
|
|
211
|
+
return await this.handleHealthCheck(request, params);
|
|
212
|
+
case "shutdown":
|
|
213
|
+
return await this.handleShutdown(request, params);
|
|
214
|
+
case PROVIDE_TOOLS_METHOD:
|
|
215
|
+
return provideRegisteredTools(this.getToolDescriptors());
|
|
216
|
+
case TOOLS_CALL_METHOD:
|
|
217
|
+
return await this.handleToolCall(request, params);
|
|
218
|
+
case WATCH_POLL_METHOD:
|
|
219
|
+
return await this.watchSources.handlePoll(request, params);
|
|
220
|
+
default:
|
|
221
|
+
return await this.handleUserMethod(method, request, params);
|
|
222
|
+
}
|
|
204
223
|
}
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
return await this.handleHealthCheck(request, params);
|
|
208
|
-
case "shutdown":
|
|
209
|
-
return await this.handleShutdown(request, params);
|
|
210
|
-
case PROVIDE_TOOLS_METHOD:
|
|
211
|
-
return this.handleProvideTools();
|
|
212
|
-
case TOOLS_CALL_METHOD:
|
|
213
|
-
return await this.handleToolCall(request, params);
|
|
214
|
-
case WATCH_POLL_METHOD:
|
|
215
|
-
return await this.watchSources.handlePoll(request, params);
|
|
216
|
-
default:
|
|
217
|
-
return await this.handleUserMethod(method, request, params);
|
|
224
|
+
finally {
|
|
225
|
+
this.requestSignals.delete(requestKey);
|
|
218
226
|
}
|
|
219
227
|
}
|
|
220
228
|
async handleInitialize(params) {
|
|
@@ -277,35 +285,8 @@ export class Extension {
|
|
|
277
285
|
}
|
|
278
286
|
return { acknowledged: true };
|
|
279
287
|
}
|
|
280
|
-
handleProvideTools() {
|
|
281
|
-
return {
|
|
282
|
-
tools: this.getToolDescriptors(),
|
|
283
|
-
};
|
|
284
|
-
}
|
|
285
288
|
async handleToolCall(request, params) {
|
|
286
|
-
|
|
287
|
-
const registered = this.toolHandlers.get(call.handler);
|
|
288
|
-
if (!registered) {
|
|
289
|
-
throw new MethodNotFoundError(call.handler);
|
|
290
|
-
}
|
|
291
|
-
if (registered.descriptor.id !== call.tool_id) {
|
|
292
|
-
throw new InvalidParamsError("tool_id does not match handler", {
|
|
293
|
-
expected_tool_id: registered.descriptor.id,
|
|
294
|
-
actual_tool_id: call.tool_id,
|
|
295
|
-
handler: call.handler,
|
|
296
|
-
});
|
|
297
|
-
}
|
|
298
|
-
const context = this.makeContext(request);
|
|
299
|
-
try {
|
|
300
|
-
const result = await registered.handler(makeExtensionToolContext(call, context));
|
|
301
|
-
return { result: normalizeToolResult(result) };
|
|
302
|
-
}
|
|
303
|
-
catch (error) {
|
|
304
|
-
if (isRPCError(error)) {
|
|
305
|
-
throw error;
|
|
306
|
-
}
|
|
307
|
-
throw toolExecutionError(error, call, registered.sensitiveInputFields);
|
|
308
|
-
}
|
|
289
|
+
return await callRegisteredTool(this.toolHandlers, params, this.makeContext(request));
|
|
309
290
|
}
|
|
310
291
|
async handleUserMethod(method, request, params) {
|
|
311
292
|
const handler = this.handlers.get(method);
|
|
@@ -315,7 +296,12 @@ export class Extension {
|
|
|
315
296
|
return await handler(this.makeContext(request), params);
|
|
316
297
|
}
|
|
317
298
|
makeContext(request) {
|
|
318
|
-
|
|
299
|
+
const requestKey = this.requestKey(request);
|
|
300
|
+
const signal = this.requestSignals.get(requestKey) ?? new AbortController().signal;
|
|
301
|
+
return makeExtensionContext(request, signal, this.host, this.session, this.stderr);
|
|
302
|
+
}
|
|
303
|
+
requestKey(request) {
|
|
304
|
+
return `${typeof request.id}:${String(request.id)}`;
|
|
319
305
|
}
|
|
320
306
|
logError(message, error) {
|
|
321
307
|
writeExtensionError(this.stderr, message, error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension.js","sourceRoot":"","sources":["../../src/extension.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"extension.js","sourceRoot":"","sources":["../../src/extension.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,7 @@ export const REQUIRED_METHODS_BY_PROVIDE = {
|
|
|
10
10
|
"memory.backend": ["memory/forget", "memory/recall", "memory/store"],
|
|
11
11
|
"model.source": ["models/list"],
|
|
12
12
|
"tool.provider": ["provide_tools", "tools/call"],
|
|
13
|
+
"view.provider": ["view/close", "view/event", "view/open"],
|
|
13
14
|
};
|
|
14
15
|
export const PUBLIC_PROVIDE_CONFORMANCE_FIXTURES = [
|
|
15
16
|
{
|
|
@@ -24,5 +25,6 @@ export const PUBLIC_PROVIDE_CONFORMANCE_FIXTURES = [
|
|
|
24
25
|
{ provide: "memory.backend", required_methods: REQUIRED_METHODS_BY_PROVIDE["memory.backend"] },
|
|
25
26
|
{ provide: "model.source", required_methods: REQUIRED_METHODS_BY_PROVIDE["model.source"] },
|
|
26
27
|
{ provide: "tool.provider", required_methods: REQUIRED_METHODS_BY_PROVIDE["tool.provider"] },
|
|
28
|
+
{ provide: "view.provider", required_methods: REQUIRED_METHODS_BY_PROVIDE["view.provider"] },
|
|
27
29
|
];
|
|
28
30
|
//# sourceMappingURL=contracts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../../src/generated/contracts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../../src/generated/contracts.ts"],"names":[],"mappings":"AA8uPA,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,gBAAgB,EAAE,CAAC,iBAAiB,EAAE,0BAA0B,CAAC;IACjE,uBAAuB,EAAE;QACvB,wBAAwB;QACxB,qBAAqB;QACrB,uBAAuB;KACxB;IACD,gBAAgB,EAAE,CAAC,oBAAoB,EAAE,iBAAiB,EAAE,cAAc,CAAC;IAC3E,mBAAmB,EAAE,CAAC,YAAY,CAAC;IACnC,gBAAgB,EAAE,CAAC,eAAe,EAAE,eAAe,EAAE,cAAc,CAAC;IACpE,cAAc,EAAE,CAAC,aAAa,CAAC;IAC/B,eAAe,EAAE,CAAC,eAAe,EAAE,YAAY,CAAC;IAChD,eAAe,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC;CACI,CAAC;AAOjE,MAAM,CAAC,MAAM,mCAAmC,GAAyC;IACvF;QACE,OAAO,EAAE,uBAAuB;QAChC,gBAAgB,EAAE,2BAA2B,CAAC,uBAAuB,CAAC;KACvE;IACD,EAAE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,2BAA2B,CAAC,gBAAgB,CAAC,EAAE;IAC9F;QACE,OAAO,EAAE,mBAAmB;QAC5B,gBAAgB,EAAE,2BAA2B,CAAC,mBAAmB,CAAC;KACnE;IACD,EAAE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,2BAA2B,CAAC,gBAAgB,CAAC,EAAE;IAC9F,EAAE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,2BAA2B,CAAC,cAAc,CAAC,EAAE;IAC1F,EAAE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,2BAA2B,CAAC,eAAe,CAAC,EAAE;IAC5F,EAAE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,2BAA2B,CAAC,eAAe,CAAC,EAAE;CAC7F,CAAC"}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
export { Extension } from "./extension.js";
|
|
2
2
|
export { HostAPI } from "./host-api.js";
|
|
3
|
-
export { DEFAULT_MAX_MESSAGE_BYTES, JSON_RPC_VERSION, NotReadyTransport, StdioTransport, } from "./transport.js";
|
|
3
|
+
export { DEFAULT_MAX_MESSAGE_BYTES, JSON_RPC_CANCEL_METHOD, JSON_RPC_VERSION, NotReadyTransport, StdioTransport, } from "./transport.js";
|
|
4
4
|
export { CapabilityDeniedError, InternalError, InvalidParamsError, InvalidRequestError, MethodNotFoundError, NotInitializedError, ParseError, RateLimitedError, RPCError, ShutdownInProgressError, ToolExecutionError, ensureRPCError, errorFromObject, isRPCError, } from "./errors.js";
|
|
5
5
|
export { CONNECTIVITY_ESTABLISH_METHOD, CONNECTIVITY_PROVIDER_CAPABILITY, CONNECTIVITY_STATUS_METHOD, CONNECTIVITY_TEARDOWN_METHOD, registerConnectivityProvider, } from "./connectivity-provider.js";
|
|
6
6
|
export { FORGE_CAPABILITIES_METHOD, FORGE_PR_CREATE_METHOD, FORGE_PROVIDER_CAPABILITY, FORGE_STATUS_METHOD, registerForgeProvider, } from "./forge-provider.js";
|
|
7
|
+
export { VIEW_CLOSE_METHOD, VIEW_EVENT_METHOD, VIEW_OPEN_METHOD, VIEW_PROVIDER_CAPABILITY, registerViewProvider, } from "./view-provider.js";
|
|
8
|
+
export { ViewSessionRegistry } from "./view-session-registry.js";
|
|
7
9
|
export { canonicalJSON, schemaDigest } from "./schema-digest.js";
|
|
8
10
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,yBAAyB,EACzB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,GACf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,qBAAqB,EACrB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,UAAU,EACV,gBAAgB,EAChB,QAAQ,EACR,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,UAAU,GACX,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,6BAA6B,EAC7B,gCAAgC,EAChC,0BAA0B,EAC1B,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,GACf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,qBAAqB,EACrB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,UAAU,EACV,gBAAgB,EAChB,QAAQ,EACR,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,UAAU,GACX,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,6BAA6B,EAC7B,gCAAgC,EAChC,0BAA0B,EAC1B,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,EACzB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { InvalidParamsError } from "./errors.js";
|
|
2
|
+
export function isRequestRecord(value) {
|
|
3
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
4
|
+
}
|
|
5
|
+
export function requestRecord(method, params) {
|
|
6
|
+
if (!isRequestRecord(params)) {
|
|
7
|
+
throw new InvalidParamsError(`${method} params must be an object`);
|
|
8
|
+
}
|
|
9
|
+
return params;
|
|
10
|
+
}
|
|
11
|
+
export function requiredString(method, record, field) {
|
|
12
|
+
const value = record[field];
|
|
13
|
+
if (typeof value !== "string" || value.length === 0) {
|
|
14
|
+
throw new InvalidParamsError(`${method} requires a non-empty ${field}`);
|
|
15
|
+
}
|
|
16
|
+
return value;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=protocol-params.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocol-params.js","sourceRoot":"","sources":["../../src/protocol-params.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,MAAe;IAC3D,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,kBAAkB,CAAC,GAAG,MAAM,2BAA2B,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,MAAc,EACd,MAA+B,EAC/B,KAAa;IAEb,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,kBAAkB,CAAC,GAAG,MAAM,yBAAyB,KAAK,EAAE,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -8,8 +8,9 @@ const DEFAULT_RUNTIME = {
|
|
|
8
8
|
health_check_timeout_ms: 5_000,
|
|
9
9
|
shutdown_timeout_ms: 10_000,
|
|
10
10
|
default_hook_timeout_ms: 5_000,
|
|
11
|
+
default_view_timeout_ms: 3_000,
|
|
11
12
|
};
|
|
12
|
-
const DAEMON_METHODS = new Set(["
|
|
13
|
+
const DAEMON_METHODS = new Set(["health_check", "shutdown"]);
|
|
13
14
|
export class TestHarness {
|
|
14
15
|
mockedHostHandlers = new Map();
|
|
15
16
|
stderr;
|
|
@@ -45,11 +46,11 @@ export class TestHarness {
|
|
|
45
46
|
await startPromise;
|
|
46
47
|
return extension;
|
|
47
48
|
}
|
|
48
|
-
async call(method, params) {
|
|
49
|
+
async call(method, params, signal) {
|
|
49
50
|
if (!this.hostTransport) {
|
|
50
51
|
throw new Error("extension is not loaded");
|
|
51
52
|
}
|
|
52
|
-
return await this.hostTransport.call(method, params);
|
|
53
|
+
return await this.hostTransport.call(method, params, signal);
|
|
53
54
|
}
|
|
54
55
|
getLastInitializeRequest() {
|
|
55
56
|
return this.initializeRequest;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harness.js","sourceRoot":"","sources":["../../../src/testing/harness.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAU5C,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AA8B7E,MAAM,eAAe,GAAsB;IACzC,wBAAwB,EAAE,MAAM;IAChC,uBAAuB,EAAE,KAAK;IAC9B,mBAAmB,EAAE,MAAM;IAC3B,uBAAuB,EAAE,KAAK;CAC/B,CAAC;AAEF,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"harness.js","sourceRoot":"","sources":["../../../src/testing/harness.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { MethodNotFoundError, ensureRPCError } from "../errors.js";
|
|
2
|
+
function abortReason(signal) {
|
|
3
|
+
return signal?.reason ?? new DOMException("The operation was aborted", "AbortError");
|
|
4
|
+
}
|
|
2
5
|
export class MockTransport {
|
|
3
6
|
handlers = new Map();
|
|
4
7
|
errors = new Set();
|
|
@@ -28,7 +31,7 @@ export class MockTransport {
|
|
|
28
31
|
async close() {
|
|
29
32
|
this.closed = true;
|
|
30
33
|
}
|
|
31
|
-
async call(method, params) {
|
|
34
|
+
async call(method, params, signal) {
|
|
32
35
|
if (this.closed) {
|
|
33
36
|
throw new Error("transport closed");
|
|
34
37
|
}
|
|
@@ -50,16 +53,53 @@ export class MockTransport {
|
|
|
50
53
|
method,
|
|
51
54
|
params,
|
|
52
55
|
};
|
|
56
|
+
const controller = new AbortController();
|
|
57
|
+
const onAbort = () => {
|
|
58
|
+
controller.abort(signal?.reason);
|
|
59
|
+
};
|
|
60
|
+
if (signal?.aborted) {
|
|
61
|
+
onAbort();
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
signal?.addEventListener("abort", onAbort, { once: true });
|
|
65
|
+
}
|
|
66
|
+
let resultPromise;
|
|
53
67
|
try {
|
|
54
|
-
|
|
68
|
+
if (controller.signal.aborted) {
|
|
69
|
+
throw abortReason(signal);
|
|
70
|
+
}
|
|
71
|
+
resultPromise = Promise.resolve(handler(params, envelope, controller.signal));
|
|
72
|
+
const abortPromise = new Promise((_, reject) => {
|
|
73
|
+
const rejectAborted = () => {
|
|
74
|
+
reject(abortReason(signal));
|
|
75
|
+
};
|
|
76
|
+
if (controller.signal.aborted) {
|
|
77
|
+
rejectAborted();
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
controller.signal.addEventListener("abort", rejectAborted, { once: true });
|
|
81
|
+
});
|
|
82
|
+
const result = await Promise.race([resultPromise, abortPromise]);
|
|
83
|
+
if (controller.signal.aborted) {
|
|
84
|
+
void resultPromise.catch(() => undefined);
|
|
85
|
+
throw abortReason(signal);
|
|
86
|
+
}
|
|
87
|
+
return result;
|
|
55
88
|
}
|
|
56
89
|
catch (error) {
|
|
90
|
+
void resultPromise?.catch(() => undefined);
|
|
91
|
+
if (controller.signal.aborted) {
|
|
92
|
+
throw abortReason(signal);
|
|
93
|
+
}
|
|
57
94
|
const rpcError = ensureRPCError(error);
|
|
58
95
|
for (const listener of this.errors) {
|
|
59
96
|
listener(rpcError);
|
|
60
97
|
}
|
|
61
98
|
throw rpcError;
|
|
62
99
|
}
|
|
100
|
+
finally {
|
|
101
|
+
signal?.removeEventListener("abort", onAbort);
|
|
102
|
+
}
|
|
63
103
|
}
|
|
64
104
|
}
|
|
65
105
|
export function createMockTransportPair() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock-transport.js","sourceRoot":"","sources":["../../../src/testing/mock-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAUnE,MAAM,OAAO,aAAa;IACP,QAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;IAC/C,MAAM,GAAG,IAAI,GAAG,EAA0B,CAAC;IACpD,MAAM,GAAG,CAAC,CAAC;IACX,OAAO,GAAG,KAAK,CAAC;IAChB,MAAM,GAAG,KAAK,CAAC;IACf,IAAI,CAA4B;IAExB,QAAQ,GAAsB,EAAE,CAAC;IAE1C,OAAO,CAAC,IAAmB;QAChC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,KAAK;QACV,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IAEM,MAAM,CAAC,MAAc,EAAE,OAAyB;QACrD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAEM,QAAQ,CAAC,MAAc;QAC5B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC;IAEM,gBAAgB,CAAC,QAAgC;QACtD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1B,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAEM,KAAK,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"mock-transport.js","sourceRoot":"","sources":["../../../src/testing/mock-transport.ts"],"names":[],"mappings":"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"}
|