@stigmer/sdk 3.35.0 → 3.37.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/activity.d.ts.map +1 -1
- package/activity.js.map +1 -1
- package/artifact-routing.d.ts.map +1 -1
- package/artifact-routing.js.map +1 -1
- package/authorization-config.d.ts.map +1 -1
- package/authorization-config.js.map +1 -1
- package/billing.d.ts.map +1 -1
- package/billing.js.map +1 -1
- package/config.d.ts.map +1 -1
- package/config.js.map +1 -1
- package/cursor-accounts.d.ts.map +1 -1
- package/cursor-accounts.js.map +1 -1
- package/ensure-identity-account.d.ts.map +1 -1
- package/ensure-identity-account.js.map +1 -1
- package/errors.d.ts.map +1 -1
- package/errors.js.map +1 -1
- package/execution/approval-provenance.d.ts.map +1 -1
- package/execution/approval-provenance.js.map +1 -1
- package/execution/conversation-rules.d.ts.map +1 -1
- package/execution/conversation-rules.js.map +1 -1
- package/execution/execution-phases.d.ts.map +1 -1
- package/execution/execution-phases.js.map +1 -1
- package/execution/file-review-fold.d.ts.map +1 -1
- package/execution/file-review-fold.js.map +1 -1
- package/execution/to-display-file-change.d.ts.map +1 -1
- package/execution/to-display-file-change.js.map +1 -1
- package/execution/tool-view.d.ts.map +1 -1
- package/execution/tool-view.js.map +1 -1
- package/execution/transcript.d.ts.map +1 -1
- package/execution/transcript.js.map +1 -1
- package/gen/agent.d.ts.map +1 -1
- package/gen/agent.js.map +1 -1
- package/gen/agentchannel.d.ts.map +1 -1
- package/gen/agentchannel.js.map +1 -1
- package/gen/agentexecution.d.ts.map +1 -1
- package/gen/agentexecution.js.map +1 -1
- package/gen/agentinstance.d.ts.map +1 -1
- package/gen/agentinstance.js.map +1 -1
- package/gen/agentshare.d.ts.map +1 -1
- package/gen/agentshare.js.map +1 -1
- package/gen/apikey.d.ts.map +1 -1
- package/gen/apikey.js.map +1 -1
- package/gen/artifact.d.ts.map +1 -1
- package/gen/artifact.js.map +1 -1
- package/gen/authorization-config.d.ts.map +1 -1
- package/gen/authorization-config.js +2 -2
- package/gen/authorization-config.js.map +1 -1
- package/gen/bidi-stream.d.ts.map +1 -1
- package/gen/bidi-stream.js.map +1 -1
- package/gen/channelapp.d.ts.map +1 -1
- package/gen/channelapp.js.map +1 -1
- package/gen/client.d.ts.map +1 -1
- package/gen/client.js.map +1 -1
- package/gen/environment.d.ts.map +1 -1
- package/gen/environment.js.map +1 -1
- package/gen/errors.d.ts.map +1 -1
- package/gen/errors.js.map +1 -1
- package/gen/executioncontext.d.ts.map +1 -1
- package/gen/executioncontext.js.map +1 -1
- package/gen/iampolicy.d.ts.map +1 -1
- package/gen/iampolicy.js.map +1 -1
- package/gen/identityaccount.d.ts.map +1 -1
- package/gen/identityaccount.js.map +1 -1
- package/gen/identityprovider.d.ts.map +1 -1
- package/gen/identityprovider.js.map +1 -1
- package/gen/invitation.d.ts.map +1 -1
- package/gen/invitation.js.map +1 -1
- package/gen/license.d.ts.map +1 -1
- package/gen/license.js.map +1 -1
- package/gen/mcpserver.d.ts.map +1 -1
- package/gen/mcpserver.js.map +1 -1
- package/gen/memory.d.ts.map +1 -1
- package/gen/memory.js.map +1 -1
- package/gen/oauthapp.d.ts.map +1 -1
- package/gen/oauthapp.js.map +1 -1
- package/gen/organization.d.ts.map +1 -1
- package/gen/organization.js.map +1 -1
- package/gen/plan.d.ts.map +1 -1
- package/gen/plan.js.map +1 -1
- package/gen/platformclient.d.ts.map +1 -1
- package/gen/platformclient.js.map +1 -1
- package/gen/plugin.d.ts.map +1 -1
- package/gen/plugin.js.map +1 -1
- package/gen/proto-utils.d.ts.map +1 -1
- package/gen/proto-utils.js.map +1 -1
- package/gen/resource-availability.d.ts.map +1 -1
- package/gen/resource-availability.js.map +1 -1
- package/gen/schedule.d.ts.map +1 -1
- package/gen/schedule.js.map +1 -1
- package/gen/session.d.ts.map +1 -1
- package/gen/session.js.map +1 -1
- package/gen/skill.d.ts.map +1 -1
- package/gen/skill.js.map +1 -1
- package/gen/subscription.d.ts.map +1 -1
- package/gen/subscription.js.map +1 -1
- package/gen/team.d.ts.map +1 -1
- package/gen/team.js.map +1 -1
- package/gen/types.d.ts.map +1 -1
- package/gen/types.js.map +1 -1
- package/gen/workflow.d.ts.map +1 -1
- package/gen/workflow.js.map +1 -1
- package/gen/workflowexecution.d.ts.map +1 -1
- package/gen/workflowexecution.js.map +1 -1
- package/gen/workflowinstance.d.ts.map +1 -1
- package/gen/workflowinstance.js.map +1 -1
- package/github.d.ts.map +1 -1
- package/github.js.map +1 -1
- package/guest-auth.d.ts.map +1 -1
- package/guest-auth.js.map +1 -1
- package/iam-principal.d.ts +6 -0
- package/iam-principal.d.ts.map +1 -1
- package/iam-principal.js +19 -0
- package/iam-principal.js.map +1 -1
- package/iam-role.d.ts.map +1 -1
- package/iam-role.js.map +1 -1
- package/index.d.ts +1 -1
- package/index.d.ts.map +1 -1
- package/index.js +1 -1
- package/index.js.map +1 -1
- package/internal/interceptors.d.ts.map +1 -1
- package/internal/interceptors.js.map +1 -1
- package/manifest/client.d.ts.map +1 -1
- package/manifest/client.js.map +1 -1
- package/manifest/document.d.ts.map +1 -1
- package/manifest/document.js.map +1 -1
- package/manifest/index.d.ts.map +1 -1
- package/manifest/index.js.map +1 -1
- package/manifest/parse.d.ts.map +1 -1
- package/manifest/parse.js.map +1 -1
- package/manifest/redaction.d.ts.map +1 -1
- package/manifest/redaction.js.map +1 -1
- package/manifest/registry.d.ts.map +1 -1
- package/manifest/registry.js.map +1 -1
- package/manifest/serialize.d.ts.map +1 -1
- package/manifest/serialize.js.map +1 -1
- package/mcpserver-connect.d.ts.map +1 -1
- package/mcpserver-connect.js.map +1 -1
- package/node.d.ts.map +1 -1
- package/node.js.map +1 -1
- package/package.json +2 -2
- package/platform-client-auth.d.ts.map +1 -1
- package/platform-client-auth.js.map +1 -1
- package/platform.d.ts.map +1 -1
- package/platform.js.map +1 -1
- package/plugin.d.ts.map +1 -1
- package/plugin.js.map +1 -1
- package/provider-standing.d.ts.map +1 -1
- package/provider-standing.js.map +1 -1
- package/resource-availability.d.ts.map +1 -1
- package/resource-availability.js.map +1 -1
- package/runner-adapter.d.ts.map +1 -1
- package/runner-adapter.js.map +1 -1
- package/search.d.ts.map +1 -1
- package/search.js.map +1 -1
- package/session.d.ts.map +1 -1
- package/session.js.map +1 -1
- package/sharing.d.ts.map +1 -1
- package/sharing.js.map +1 -1
- package/skill.d.ts.map +1 -1
- package/skill.js.map +1 -1
- package/src/gen/authorization-config.ts +2 -2
- package/src/iam-principal.ts +24 -0
- package/src/index.ts +1 -0
- package/stigmer.d.ts.map +1 -1
- package/stigmer.js.map +1 -1
- package/transport.d.ts.map +1 -1
- package/transport.js.map +1 -1
- package/__tests__/billing.test.d.ts +0 -2
- package/__tests__/billing.test.d.ts.map +0 -1
- package/__tests__/billing.test.js +0 -120
- package/__tests__/billing.test.js.map +0 -1
- package/__tests__/config.test.d.ts +0 -2
- package/__tests__/config.test.d.ts.map +0 -1
- package/__tests__/config.test.js +0 -35
- package/__tests__/config.test.js.map +0 -1
- package/__tests__/ensure-identity-account.test.d.ts +0 -2
- package/__tests__/ensure-identity-account.test.d.ts.map +0 -1
- package/__tests__/ensure-identity-account.test.js +0 -108
- package/__tests__/ensure-identity-account.test.js.map +0 -1
- package/__tests__/errors.test.d.ts +0 -2
- package/__tests__/errors.test.d.ts.map +0 -1
- package/__tests__/errors.test.js +0 -228
- package/__tests__/errors.test.js.map +0 -1
- package/__tests__/gen/errors.test.d.ts +0 -2
- package/__tests__/gen/errors.test.d.ts.map +0 -1
- package/__tests__/gen/errors.test.js +0 -97
- package/__tests__/gen/errors.test.js.map +0 -1
- package/__tests__/gen/invitation-client.test.d.ts +0 -2
- package/__tests__/gen/invitation-client.test.d.ts.map +0 -1
- package/__tests__/gen/invitation-client.test.js +0 -106
- package/__tests__/gen/invitation-client.test.js.map +0 -1
- package/__tests__/gen/proto-utils.test.d.ts +0 -2
- package/__tests__/gen/proto-utils.test.d.ts.map +0 -1
- package/__tests__/gen/proto-utils.test.js +0 -85
- package/__tests__/gen/proto-utils.test.js.map +0 -1
- package/__tests__/gen/session-client.test.d.ts +0 -2
- package/__tests__/gen/session-client.test.d.ts.map +0 -1
- package/__tests__/gen/session-client.test.js +0 -152
- package/__tests__/gen/session-client.test.js.map +0 -1
- package/__tests__/guest-auth.test.d.ts +0 -2
- package/__tests__/guest-auth.test.d.ts.map +0 -1
- package/__tests__/guest-auth.test.js +0 -223
- package/__tests__/guest-auth.test.js.map +0 -1
- package/__tests__/iam-principal.test.d.ts +0 -2
- package/__tests__/iam-principal.test.d.ts.map +0 -1
- package/__tests__/iam-principal.test.js +0 -65
- package/__tests__/iam-principal.test.js.map +0 -1
- package/__tests__/manifest.test.d.ts +0 -2
- package/__tests__/manifest.test.d.ts.map +0 -1
- package/__tests__/manifest.test.js +0 -306
- package/__tests__/manifest.test.js.map +0 -1
- package/__tests__/mcpserver-connect.test.d.ts +0 -2
- package/__tests__/mcpserver-connect.test.d.ts.map +0 -1
- package/__tests__/mcpserver-connect.test.js +0 -146
- package/__tests__/mcpserver-connect.test.js.map +0 -1
- package/__tests__/node.test.d.ts +0 -2
- package/__tests__/node.test.d.ts.map +0 -1
- package/__tests__/node.test.js +0 -67
- package/__tests__/node.test.js.map +0 -1
- package/__tests__/platform-client-auth.test.d.ts +0 -2
- package/__tests__/platform-client-auth.test.d.ts.map +0 -1
- package/__tests__/platform-client-auth.test.js +0 -59
- package/__tests__/platform-client-auth.test.js.map +0 -1
- package/__tests__/platform.test.d.ts +0 -2
- package/__tests__/platform.test.d.ts.map +0 -1
- package/__tests__/platform.test.js +0 -52
- package/__tests__/platform.test.js.map +0 -1
- package/__tests__/plugin.test.d.ts +0 -2
- package/__tests__/plugin.test.d.ts.map +0 -1
- package/__tests__/plugin.test.js +0 -74
- package/__tests__/plugin.test.js.map +0 -1
- package/__tests__/resource-availability.test.d.ts +0 -2
- package/__tests__/resource-availability.test.d.ts.map +0 -1
- package/__tests__/resource-availability.test.js +0 -80
- package/__tests__/resource-availability.test.js.map +0 -1
- package/__tests__/runner-adapter.test.d.ts +0 -2
- package/__tests__/runner-adapter.test.d.ts.map +0 -1
- package/__tests__/runner-adapter.test.js +0 -88
- package/__tests__/runner-adapter.test.js.map +0 -1
- package/__tests__/session.test.d.ts +0 -6
- package/__tests__/session.test.d.ts.map +0 -1
- package/__tests__/session.test.js +0 -50
- package/__tests__/session.test.js.map +0 -1
- package/__tests__/sharing.test.d.ts +0 -2
- package/__tests__/sharing.test.d.ts.map +0 -1
- package/__tests__/sharing.test.js +0 -106
- package/__tests__/sharing.test.js.map +0 -1
- package/__tests__/skill.test.d.ts +0 -2
- package/__tests__/skill.test.d.ts.map +0 -1
- package/__tests__/skill.test.js +0 -117
- package/__tests__/skill.test.js.map +0 -1
- package/__tests__/stigmer.test.d.ts +0 -2
- package/__tests__/stigmer.test.d.ts.map +0 -1
- package/__tests__/stigmer.test.js +0 -127
- package/__tests__/stigmer.test.js.map +0 -1
- package/__tests__/update-input-roundtrip.test.d.ts +0 -2
- package/__tests__/update-input-roundtrip.test.d.ts.map +0 -1
- package/__tests__/update-input-roundtrip.test.js +0 -775
- package/__tests__/update-input-roundtrip.test.js.map +0 -1
- package/__tests__/update-input.test.d.ts +0 -2
- package/__tests__/update-input.test.d.ts.map +0 -1
- package/__tests__/update-input.test.js +0 -188
- package/__tests__/update-input.test.js.map +0 -1
- package/execution/__tests__/approval-provenance.test.d.ts +0 -2
- package/execution/__tests__/approval-provenance.test.d.ts.map +0 -1
- package/execution/__tests__/approval-provenance.test.js +0 -42
- package/execution/__tests__/approval-provenance.test.js.map +0 -1
- package/execution/__tests__/file-review-fold.corpus.test.d.ts +0 -2
- package/execution/__tests__/file-review-fold.corpus.test.d.ts.map +0 -1
- package/execution/__tests__/file-review-fold.corpus.test.js +0 -82
- package/execution/__tests__/file-review-fold.corpus.test.js.map +0 -1
- package/execution/__tests__/file-review-fold.test.d.ts +0 -2
- package/execution/__tests__/file-review-fold.test.d.ts.map +0 -1
- package/execution/__tests__/file-review-fold.test.js +0 -184
- package/execution/__tests__/file-review-fold.test.js.map +0 -1
- package/execution/__tests__/to-display-file-change.test.d.ts +0 -2
- package/execution/__tests__/to-display-file-change.test.d.ts.map +0 -1
- package/execution/__tests__/to-display-file-change.test.js +0 -81
- package/execution/__tests__/to-display-file-change.test.js.map +0 -1
- package/execution/__tests__/tool-view.file-changes.test.d.ts +0 -2
- package/execution/__tests__/tool-view.file-changes.test.d.ts.map +0 -1
- package/execution/__tests__/tool-view.file-changes.test.js +0 -86
- package/execution/__tests__/tool-view.file-changes.test.js.map +0 -1
- package/execution/__tests__/tool-view.fixtures.test.d.ts +0 -2
- package/execution/__tests__/tool-view.fixtures.test.d.ts.map +0 -1
- package/execution/__tests__/tool-view.fixtures.test.js +0 -152
- package/execution/__tests__/tool-view.fixtures.test.js.map +0 -1
- package/execution/__tests__/tool-view.output-ref.test.d.ts +0 -2
- package/execution/__tests__/tool-view.output-ref.test.d.ts.map +0 -1
- package/execution/__tests__/tool-view.output-ref.test.js +0 -64
- package/execution/__tests__/tool-view.output-ref.test.js.map +0 -1
- package/execution/__tests__/tool-view.read.test.d.ts +0 -2
- package/execution/__tests__/tool-view.read.test.d.ts.map +0 -1
- package/execution/__tests__/tool-view.read.test.js +0 -56
- package/execution/__tests__/tool-view.read.test.js.map +0 -1
- package/execution/__tests__/tool-view.search.test.d.ts +0 -2
- package/execution/__tests__/tool-view.search.test.d.ts.map +0 -1
- package/execution/__tests__/tool-view.search.test.js +0 -200
- package/execution/__tests__/tool-view.search.test.js.map +0 -1
- package/execution/__tests__/tool-view.shell.test.d.ts +0 -2
- package/execution/__tests__/tool-view.shell.test.d.ts.map +0 -1
- package/execution/__tests__/tool-view.shell.test.js +0 -104
- package/execution/__tests__/tool-view.shell.test.js.map +0 -1
- package/execution/__tests__/transcript.test.d.ts +0 -2
- package/execution/__tests__/transcript.test.d.ts.map +0 -1
- package/execution/__tests__/transcript.test.js +0 -591
- package/execution/__tests__/transcript.test.js.map +0 -1
- package/node.test.d.ts +0 -2
- package/node.test.d.ts.map +0 -1
- package/node.test.js +0 -35
- package/node.test.js.map +0 -1
- package/src/__tests__/billing.test.ts +0 -146
- package/src/__tests__/config.test.ts +0 -52
- package/src/__tests__/ensure-identity-account.test.ts +0 -146
- package/src/__tests__/errors.test.ts +0 -349
- package/src/__tests__/gen/errors.test.ts +0 -138
- package/src/__tests__/gen/invitation-client.test.ts +0 -132
- package/src/__tests__/gen/proto-utils.test.ts +0 -99
- package/src/__tests__/gen/session-client.test.ts +0 -208
- package/src/__tests__/guest-auth.test.ts +0 -287
- package/src/__tests__/iam-principal.test.ts +0 -82
- package/src/__tests__/manifest.test.ts +0 -362
- package/src/__tests__/mcpserver-connect.test.ts +0 -181
- package/src/__tests__/node.test.ts +0 -74
- package/src/__tests__/platform-client-auth.test.ts +0 -76
- package/src/__tests__/platform.test.ts +0 -74
- package/src/__tests__/plugin.test.ts +0 -92
- package/src/__tests__/resource-availability.test.ts +0 -118
- package/src/__tests__/runner-adapter.test.ts +0 -122
- package/src/__tests__/session.test.ts +0 -66
- package/src/__tests__/sharing.test.ts +0 -159
- package/src/__tests__/skill.test.ts +0 -150
- package/src/__tests__/stigmer.test.ts +0 -170
- package/src/__tests__/update-input-roundtrip.test.ts +0 -1007
- package/src/__tests__/update-input.test.ts +0 -250
- package/src/execution/__tests__/approval-provenance.test.ts +0 -60
- package/src/execution/__tests__/file-review-fold.corpus.test.ts +0 -127
- package/src/execution/__tests__/file-review-fold.test.ts +0 -281
- package/src/execution/__tests__/to-display-file-change.test.ts +0 -106
- package/src/execution/__tests__/tool-view.file-changes.test.ts +0 -100
- package/src/execution/__tests__/tool-view.fixtures.test.ts +0 -225
- package/src/execution/__tests__/tool-view.output-ref.test.ts +0 -76
- package/src/execution/__tests__/tool-view.read.test.ts +0 -71
- package/src/execution/__tests__/tool-view.search.test.ts +0 -264
- package/src/execution/__tests__/tool-view.shell.test.ts +0 -127
- package/src/execution/__tests__/transcript.golden.md +0 -100
- package/src/execution/__tests__/transcript.test.ts +0 -697
- package/src/node.test.ts +0 -38
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.test.js","sourceRoot":"","sources":["../../src/__tests__/manifest.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mcpserver-connect.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/mcpserver-connect.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
// Pins the shared async-connect protocol (stigmer/stigmer#425): start + poll,
|
|
2
|
-
// terminal-failure rehydration, the UNIMPLEMENTED blocking fallback, and the
|
|
3
|
-
// still-running bound. Every SDK surface (CLI, React hooks, host apps) rides
|
|
4
|
-
// this one implementation, so its contract is pinned here rather than
|
|
5
|
-
// re-tested per consumer.
|
|
6
|
-
import { describe, expect, it } from "vitest";
|
|
7
|
-
import { create } from "@bufbuild/protobuf";
|
|
8
|
-
import { Code, ConnectError } from "@connectrpc/connect";
|
|
9
|
-
import { McpServerSchema } from "@stigmer/protos/ai/stigmer/agentic/mcpserver/v1/api_pb";
|
|
10
|
-
import { ConnectInputSchema } from "@stigmer/protos/ai/stigmer/agentic/mcpserver/v1/io_pb";
|
|
11
|
-
import { ConnectPhase } from "@stigmer/protos/ai/stigmer/agentic/mcpserver/v1/status_pb";
|
|
12
|
-
import { StigmerError, wrapError } from "../gen/errors.js";
|
|
13
|
-
import { connectAndWait, ConnectStillRunningError, } from "../mcpserver-connect.js";
|
|
14
|
-
const INPUT = create(ConnectInputSchema, { mcpServerId: "mcp-1", org: "test-org" });
|
|
15
|
-
function server(overrides) {
|
|
16
|
-
return create(McpServerSchema, {
|
|
17
|
-
metadata: { id: "mcp-1", name: "Test Server" },
|
|
18
|
-
status: {
|
|
19
|
-
...(overrides?.toolName !== undefined
|
|
20
|
-
? { discoveredCapabilities: { tools: [{ name: overrides.toolName }] } }
|
|
21
|
-
: {}),
|
|
22
|
-
connectStatus: {
|
|
23
|
-
phase: overrides?.phase ?? ConnectPhase.connecting,
|
|
24
|
-
workflowId: "stigmer/mcp-server/connect/mcp-1",
|
|
25
|
-
failureCode: overrides?.failureCode ?? "",
|
|
26
|
-
failureMessage: overrides?.failureMessage ?? "",
|
|
27
|
-
warning: overrides?.warning ?? "",
|
|
28
|
-
},
|
|
29
|
-
},
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
function unimplemented() {
|
|
33
|
-
return wrapError(new ConnectError("startConnect is not implemented", Code.Unimplemented));
|
|
34
|
-
}
|
|
35
|
-
const NEVER = () => new Promise(() => { });
|
|
36
|
-
describe("connectAndWait", () => {
|
|
37
|
-
it("resolves with the settled resource once connect_status reports success", async () => {
|
|
38
|
-
const polled = [
|
|
39
|
-
server({ phase: ConnectPhase.connecting }),
|
|
40
|
-
server({ phase: ConnectPhase.succeeded, toolName: "search_code" }),
|
|
41
|
-
];
|
|
42
|
-
const lane = {
|
|
43
|
-
startConnect: async () => server(),
|
|
44
|
-
connect: NEVER,
|
|
45
|
-
get: async () => polled.shift() ?? server({ phase: ConnectPhase.succeeded }),
|
|
46
|
-
};
|
|
47
|
-
const settled = await connectAndWait(lane, INPUT, { pollIntervalMs: 1 });
|
|
48
|
-
expect(settled.status?.connectStatus?.phase).toBe(ConnectPhase.succeeded);
|
|
49
|
-
expect(settled.status?.discoveredCapabilities?.tools[0]?.name).toBe("search_code");
|
|
50
|
-
});
|
|
51
|
-
it("surfaces the CONNECTING snapshot (dead-runner warning) via onStarted", async () => {
|
|
52
|
-
const lane = {
|
|
53
|
-
startConnect: async () => server({ warning: "no runner appears to be polling the task queue" }),
|
|
54
|
-
connect: NEVER,
|
|
55
|
-
get: async () => server({ phase: ConnectPhase.succeeded }),
|
|
56
|
-
};
|
|
57
|
-
let warning = "";
|
|
58
|
-
await connectAndWait(lane, INPUT, {
|
|
59
|
-
pollIntervalMs: 1,
|
|
60
|
-
onStarted: (started) => {
|
|
61
|
-
warning = started.status?.connectStatus?.warning ?? "";
|
|
62
|
-
},
|
|
63
|
-
});
|
|
64
|
-
expect(warning).toContain("no runner");
|
|
65
|
-
});
|
|
66
|
-
it("rehydrates a failed operation into the classification the blocking RPC would have thrown", async () => {
|
|
67
|
-
const lane = {
|
|
68
|
-
startConnect: async () => server(),
|
|
69
|
-
connect: NEVER,
|
|
70
|
-
get: async () => server({
|
|
71
|
-
phase: ConnectPhase.failed,
|
|
72
|
-
failureCode: "FailedPrecondition",
|
|
73
|
-
failureMessage: "connect failed for MCP server 'Test Server': missing credentials",
|
|
74
|
-
}),
|
|
75
|
-
};
|
|
76
|
-
const err = await connectAndWait(lane, INPUT, { pollIntervalMs: 1 }).catch((e) => e);
|
|
77
|
-
expect(err).toBeInstanceOf(StigmerError);
|
|
78
|
-
const stigmerErr = err;
|
|
79
|
-
// Byte-parity with the blocking lane: same code mapping, same raw message.
|
|
80
|
-
expect(stigmerErr.code).toBe("failed-precondition");
|
|
81
|
-
expect(stigmerErr.message).toBe("connect failed for MCP server 'Test Server': missing credentials");
|
|
82
|
-
});
|
|
83
|
-
it("maps an unknown failure_code to the unknown classification instead of crashing", async () => {
|
|
84
|
-
const lane = {
|
|
85
|
-
startConnect: async () => server(),
|
|
86
|
-
connect: NEVER,
|
|
87
|
-
get: async () => server({
|
|
88
|
-
phase: ConnectPhase.failed,
|
|
89
|
-
failureCode: "SomeFutureCode",
|
|
90
|
-
failureMessage: "boom",
|
|
91
|
-
}),
|
|
92
|
-
};
|
|
93
|
-
const err = await connectAndWait(lane, INPUT, { pollIntervalMs: 1 }).catch((e) => e);
|
|
94
|
-
expect(err.code).toBe("unknown");
|
|
95
|
-
expect(err.message).toBe("boom");
|
|
96
|
-
});
|
|
97
|
-
it("falls back to the blocking connect when the backend answers UNIMPLEMENTED", async () => {
|
|
98
|
-
let blockingCalled = false;
|
|
99
|
-
const lane = {
|
|
100
|
-
startConnect: async () => {
|
|
101
|
-
throw unimplemented();
|
|
102
|
-
},
|
|
103
|
-
connect: async () => {
|
|
104
|
-
blockingCalled = true;
|
|
105
|
-
return server({ phase: ConnectPhase.succeeded, toolName: "search_code" });
|
|
106
|
-
},
|
|
107
|
-
get: NEVER,
|
|
108
|
-
};
|
|
109
|
-
const settled = await connectAndWait(lane, INPUT);
|
|
110
|
-
expect(blockingCalled).toBe(true);
|
|
111
|
-
expect(settled.status?.discoveredCapabilities?.tools[0]?.name).toBe("search_code");
|
|
112
|
-
});
|
|
113
|
-
it("propagates non-UNIMPLEMENTED start failures untouched", async () => {
|
|
114
|
-
const startFailure = wrapError(new ConnectError("no such server", Code.NotFound));
|
|
115
|
-
const lane = {
|
|
116
|
-
startConnect: async () => {
|
|
117
|
-
throw startFailure;
|
|
118
|
-
},
|
|
119
|
-
connect: NEVER,
|
|
120
|
-
get: NEVER,
|
|
121
|
-
};
|
|
122
|
-
await expect(connectAndWait(lane, INPUT)).rejects.toBe(startFailure);
|
|
123
|
-
});
|
|
124
|
-
it("throws ConnectStillRunningError when the deadline elapses while CONNECTING", async () => {
|
|
125
|
-
const lane = {
|
|
126
|
-
startConnect: async () => server(),
|
|
127
|
-
connect: NEVER,
|
|
128
|
-
get: async () => server({ phase: ConnectPhase.connecting }),
|
|
129
|
-
};
|
|
130
|
-
const err = await connectAndWait(lane, INPUT, { pollIntervalMs: 1, deadlineMs: 20 }).catch((e) => e);
|
|
131
|
-
expect(err).toBeInstanceOf(ConnectStillRunningError);
|
|
132
|
-
expect(err.mcpServerId).toBe("mcp-1");
|
|
133
|
-
});
|
|
134
|
-
it("bounds the blocking fallback with the same still-running semantics (soft, non-cancelling)", async () => {
|
|
135
|
-
const lane = {
|
|
136
|
-
startConnect: async () => {
|
|
137
|
-
throw unimplemented();
|
|
138
|
-
},
|
|
139
|
-
connect: NEVER,
|
|
140
|
-
get: NEVER,
|
|
141
|
-
};
|
|
142
|
-
const err = await connectAndWait(lane, INPUT, { deadlineMs: 20 }).catch((e) => e);
|
|
143
|
-
expect(err).toBeInstanceOf(ConnectStillRunningError);
|
|
144
|
-
});
|
|
145
|
-
});
|
|
146
|
-
//# sourceMappingURL=mcpserver-connect.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mcpserver-connect.test.js","sourceRoot":"","sources":["../../src/__tests__/mcpserver-connect.test.ts"],"names":[],"mappings":"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"}
|
package/__tests__/node.test.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"node.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/node.test.ts"],"names":[],"mappings":""}
|
package/__tests__/node.test.js
DELETED
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from "vitest";
|
|
2
|
-
import { createNodeClient, createNodeTransport } from "../node";
|
|
3
|
-
describe("createNodeTransport", () => {
|
|
4
|
-
it("creates a transport with an API key", () => {
|
|
5
|
-
const transport = createNodeTransport({
|
|
6
|
-
baseUrl: "https://api.stigmer.ai",
|
|
7
|
-
apiKey: "sk_test_123",
|
|
8
|
-
});
|
|
9
|
-
expect(transport).toBeDefined();
|
|
10
|
-
});
|
|
11
|
-
it("creates a transport with a token provider", () => {
|
|
12
|
-
const transport = createNodeTransport({
|
|
13
|
-
baseUrl: "https://api.stigmer.ai",
|
|
14
|
-
getAccessToken: () => "token_abc",
|
|
15
|
-
});
|
|
16
|
-
expect(transport).toBeDefined();
|
|
17
|
-
});
|
|
18
|
-
it("creates a transport without auth", () => {
|
|
19
|
-
const transport = createNodeTransport({
|
|
20
|
-
baseUrl: "https://api.stigmer.ai",
|
|
21
|
-
});
|
|
22
|
-
expect(transport).toBeDefined();
|
|
23
|
-
});
|
|
24
|
-
it("creates a native gRPC transport when protocol is grpc", () => {
|
|
25
|
-
const transport = createNodeTransport({
|
|
26
|
-
baseUrl: "https://api.stigmer.ai",
|
|
27
|
-
apiKey: "sk_test_123",
|
|
28
|
-
protocol: "grpc",
|
|
29
|
-
});
|
|
30
|
-
expect(transport).toBeDefined();
|
|
31
|
-
});
|
|
32
|
-
it("defaults to gRPC-web when protocol is omitted", () => {
|
|
33
|
-
const transport = createNodeTransport({
|
|
34
|
-
baseUrl: "https://api.stigmer.ai",
|
|
35
|
-
protocol: "grpc-web",
|
|
36
|
-
});
|
|
37
|
-
expect(transport).toBeDefined();
|
|
38
|
-
});
|
|
39
|
-
});
|
|
40
|
-
describe("createNodeClient", () => {
|
|
41
|
-
it("creates a Stigmer client with API key", () => {
|
|
42
|
-
const client = createNodeClient({
|
|
43
|
-
baseUrl: "https://api.stigmer.ai",
|
|
44
|
-
apiKey: "sk_test_123",
|
|
45
|
-
});
|
|
46
|
-
expect(client).toBeDefined();
|
|
47
|
-
expect(client.baseUrl).toBe("https://api.stigmer.ai");
|
|
48
|
-
});
|
|
49
|
-
it("creates a Stigmer client with token provider", () => {
|
|
50
|
-
const client = createNodeClient({
|
|
51
|
-
baseUrl: "https://api.stigmer.ai",
|
|
52
|
-
getAccessToken: () => "token_abc",
|
|
53
|
-
});
|
|
54
|
-
expect(client).toBeDefined();
|
|
55
|
-
expect(client.baseUrl).toBe("https://api.stigmer.ai");
|
|
56
|
-
});
|
|
57
|
-
it("exposes resource sub-clients", () => {
|
|
58
|
-
const client = createNodeClient({
|
|
59
|
-
baseUrl: "https://api.stigmer.ai",
|
|
60
|
-
apiKey: "sk_test_123",
|
|
61
|
-
});
|
|
62
|
-
expect(client.agent).toBeDefined();
|
|
63
|
-
expect(client.session).toBeDefined();
|
|
64
|
-
expect(client.agentExecution).toBeDefined();
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
//# sourceMappingURL=node.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"node.test.js","sourceRoot":"","sources":["../../src/__tests__/node.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"platform-client-auth.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/platform-client-auth.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect } from "vitest";
|
|
2
|
-
import { createPlatformClientAuth, PlatformClientAuth, } from "../platform-client-auth";
|
|
3
|
-
describe("createPlatformClientAuth", () => {
|
|
4
|
-
it("throws when baseUrl is missing", () => {
|
|
5
|
-
expect(() => createPlatformClientAuth({
|
|
6
|
-
baseUrl: "",
|
|
7
|
-
clientId: "stgm_cid_abc",
|
|
8
|
-
clientSecret: "stgm_cs_xyz",
|
|
9
|
-
})).toThrow("baseUrl is required");
|
|
10
|
-
});
|
|
11
|
-
it("throws when clientId is missing", () => {
|
|
12
|
-
expect(() => createPlatformClientAuth({
|
|
13
|
-
baseUrl: "https://api.stigmer.ai",
|
|
14
|
-
clientId: "",
|
|
15
|
-
clientSecret: "stgm_cs_xyz",
|
|
16
|
-
})).toThrow("clientId is required");
|
|
17
|
-
});
|
|
18
|
-
it("throws when clientSecret is missing", () => {
|
|
19
|
-
expect(() => createPlatformClientAuth({
|
|
20
|
-
baseUrl: "https://api.stigmer.ai",
|
|
21
|
-
clientId: "stgm_cid_abc",
|
|
22
|
-
clientSecret: "",
|
|
23
|
-
})).toThrow("clientSecret is required");
|
|
24
|
-
});
|
|
25
|
-
it("returns a PlatformClientAuth instance with valid config", () => {
|
|
26
|
-
const auth = createPlatformClientAuth({
|
|
27
|
-
baseUrl: "https://api.stigmer.ai",
|
|
28
|
-
clientId: "stgm_cid_abc",
|
|
29
|
-
clientSecret: "stgm_cs_xyz",
|
|
30
|
-
});
|
|
31
|
-
expect(auth).toBeInstanceOf(PlatformClientAuth);
|
|
32
|
-
});
|
|
33
|
-
});
|
|
34
|
-
describe("PlatformClientAuth.mintUserToken", () => {
|
|
35
|
-
it("throws StigmerError when userId is empty", async () => {
|
|
36
|
-
const auth = createPlatformClientAuth({
|
|
37
|
-
baseUrl: "https://api.stigmer.ai",
|
|
38
|
-
clientId: "stgm_cid_abc",
|
|
39
|
-
clientSecret: "stgm_cs_xyz",
|
|
40
|
-
});
|
|
41
|
-
await expect(auth.mintUserToken({ userId: "" })).rejects.toThrow("userId is required");
|
|
42
|
-
});
|
|
43
|
-
it("throws StigmerError with invalid-argument code when userId is empty", async () => {
|
|
44
|
-
const auth = createPlatformClientAuth({
|
|
45
|
-
baseUrl: "https://api.stigmer.ai",
|
|
46
|
-
clientId: "stgm_cid_abc",
|
|
47
|
-
clientSecret: "stgm_cs_xyz",
|
|
48
|
-
});
|
|
49
|
-
try {
|
|
50
|
-
await auth.mintUserToken({ userId: "" });
|
|
51
|
-
expect.fail("should have thrown");
|
|
52
|
-
}
|
|
53
|
-
catch (e) {
|
|
54
|
-
expect(e).toHaveProperty("code", "invalid-argument");
|
|
55
|
-
expect(e).toHaveProperty("name", "StigmerError");
|
|
56
|
-
}
|
|
57
|
-
});
|
|
58
|
-
});
|
|
59
|
-
//# sourceMappingURL=platform-client-auth.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"platform-client-auth.test.js","sourceRoot":"","sources":["../../src/__tests__/platform-client-auth.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,wBAAwB,EACxB,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAEjC,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,CAAC,GAAG,EAAE,CACV,wBAAwB,CAAC;YACvB,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,cAAc;YACxB,YAAY,EAAE,aAAa;SAC5B,CAAC,CACH,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,GAAG,EAAE,CACV,wBAAwB,CAAC;YACvB,OAAO,EAAE,wBAAwB;YACjC,QAAQ,EAAE,EAAE;YACZ,YAAY,EAAE,aAAa;SAC5B,CAAC,CACH,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,CAAC,GAAG,EAAE,CACV,wBAAwB,CAAC;YACvB,OAAO,EAAE,wBAAwB;YACjC,QAAQ,EAAE,cAAc;YACxB,YAAY,EAAE,EAAE;SACjB,CAAC,CACH,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,IAAI,GAAG,wBAAwB,CAAC;YACpC,OAAO,EAAE,wBAAwB;YACjC,QAAQ,EAAE,cAAc;YACxB,YAAY,EAAE,aAAa;SAC5B,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAChD,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,IAAI,GAAG,wBAAwB,CAAC;YACpC,OAAO,EAAE,wBAAwB;YACjC,QAAQ,EAAE,cAAc;YACxB,YAAY,EAAE,aAAa;SAC5B,CAAC,CAAC;QAEH,MAAM,MAAM,CACV,IAAI,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CACnC,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;QACnF,MAAM,IAAI,GAAG,wBAAwB,CAAC;YACpC,OAAO,EAAE,wBAAwB;YACjC,QAAQ,EAAE,cAAc;YACxB,YAAY,EAAE,aAAa;SAC5B,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;YACzC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,MAAM,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;YACrD,MAAM,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QACnD,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"platform.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/platform.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Pins PlatformClient.getServerInfo's edition-to-mode mapping: the client
|
|
3
|
-
* reports the server's edition through the one converter
|
|
4
|
-
* (`deploymentModeOf`), so a third edition on the wire reaches consumers
|
|
5
|
-
* as its own mode and never collapses into "cloud" by accident. The raw
|
|
6
|
-
* edition rides beside it for callers that want the wire value.
|
|
7
|
-
*
|
|
8
|
-
* Also pins the authentication posture across the wire: a server's `true`
|
|
9
|
-
* and `false` reach callers as they were sent, and a server that predates
|
|
10
|
-
* the field answers `undefined`, never `false` — the difference between
|
|
11
|
-
* "this server trusts every request" and "this server did not say", which
|
|
12
|
-
* a console meeting an older server must not confuse.
|
|
13
|
-
*/
|
|
14
|
-
import { describe, expect, it } from "vitest";
|
|
15
|
-
import { createRouterTransport } from "@connectrpc/connect";
|
|
16
|
-
import { create } from "@bufbuild/protobuf";
|
|
17
|
-
import { GetServerInfoOutputSchema, PlatformQueryController, ServerEdition, } from "@stigmer/protos/ai/stigmer/platform/v1/server_info_pb";
|
|
18
|
-
import { PlatformClient } from "../platform";
|
|
19
|
-
function clientAnswering(edition, authenticationRequired) {
|
|
20
|
-
return new PlatformClient(createRouterTransport(({ service }) => {
|
|
21
|
-
service(PlatformQueryController, {
|
|
22
|
-
getServerInfo: () => create(GetServerInfoOutputSchema, {
|
|
23
|
-
edition,
|
|
24
|
-
version: "1.2.3",
|
|
25
|
-
...(authenticationRequired !== undefined
|
|
26
|
-
? { authenticationRequired }
|
|
27
|
-
: {}),
|
|
28
|
-
}),
|
|
29
|
-
});
|
|
30
|
-
}));
|
|
31
|
-
}
|
|
32
|
-
describe("PlatformClient.getServerInfo", () => {
|
|
33
|
-
it.each([
|
|
34
|
-
[ServerEdition.oss, "local"],
|
|
35
|
-
[ServerEdition.enterprise, "enterprise"],
|
|
36
|
-
[ServerEdition.cloud, "cloud"],
|
|
37
|
-
])("maps edition %d to deploymentMode %s and keeps the raw edition", async (edition, mode) => {
|
|
38
|
-
const info = await clientAnswering(edition).getServerInfo();
|
|
39
|
-
expect(info.deploymentMode).toBe(mode);
|
|
40
|
-
expect(info.edition).toBe(edition);
|
|
41
|
-
expect(info.version).toBe("1.2.3");
|
|
42
|
-
});
|
|
43
|
-
it.each([
|
|
44
|
-
[true, true],
|
|
45
|
-
[false, false],
|
|
46
|
-
[undefined, undefined],
|
|
47
|
-
])("reports a server's authentication posture of %s as %s", async (sent, reported) => {
|
|
48
|
-
const info = await clientAnswering(ServerEdition.cloud, sent).getServerInfo();
|
|
49
|
-
expect(info.authenticationRequired).toBe(reported);
|
|
50
|
-
});
|
|
51
|
-
});
|
|
52
|
-
//# sourceMappingURL=platform.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"platform.test.js","sourceRoot":"","sources":["../../src/__tests__/platform.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,aAAa,GACd,MAAM,uDAAuD,CAAC;AAE/D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,SAAS,eAAe,CACtB,OAAsB,EACtB,sBAAgC;IAEhC,OAAO,IAAI,cAAc,CACvB,qBAAqB,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;QACpC,OAAO,CAAC,uBAAuB,EAAE;YAC/B,aAAa,EAAE,GAAG,EAAE,CAClB,MAAM,CAAC,yBAAyB,EAAE;gBAChC,OAAO;gBACP,OAAO,EAAE,OAAO;gBAChB,GAAG,CAAC,sBAAsB,KAAK,SAAS;oBACtC,CAAC,CAAC,EAAE,sBAAsB,EAAE;oBAC5B,CAAC,CAAC,EAAE,CAAC;aACR,CAAC;SACL,CAAC,CAAC;IACL,CAAC,CAAC,CACH,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IAC5C,EAAE,CAAC,IAAI,CAAC;QACN,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC;QAC5B,CAAC,aAAa,CAAC,UAAU,EAAE,YAAY,CAAC;QACxC,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC;KACtB,CAAC,CACT,gEAAgE,EAChE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,CAAC;QAC5D,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC,CACF,CAAC;IAEF,EAAE,CAAC,IAAI,CAAC;QACN,CAAC,IAAI,EAAE,IAAI,CAAC;QACZ,CAAC,KAAK,EAAE,KAAK,CAAC;QACd,CAAC,SAAS,EAAE,SAAS,CAAC;KACd,CAAC,CACT,uDAAuD,EACvD,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;QACvB,MAAM,IAAI,GAAG,MAAM,eAAe,CAChC,aAAa,CAAC,KAAK,EACnB,IAAI,CACL,CAAC,aAAa,EAAE,CAAC;QAClB,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC,CACF,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/plugin.test.ts"],"names":[],"mappings":""}
|
package/__tests__/plugin.test.js
DELETED
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
// Wire-shape tests for RoutedPluginClient's size-routed push: the plugin
|
|
2
|
-
// binding of the shared artifact routing. The routing mechanism itself is
|
|
3
|
-
// pinned by skill.test.ts; these arms pin that the plugin binding reads
|
|
4
|
-
// and rewrites ITS request shape (org, artifact, artifactUploadRef,
|
|
5
|
-
// visibility, message) and mints through ITS createArtifactUploadUrl.
|
|
6
|
-
import { describe, expect, it, vi } from "vitest";
|
|
7
|
-
import { createRouterTransport } from "@connectrpc/connect";
|
|
8
|
-
import { create } from "@bufbuild/protobuf";
|
|
9
|
-
import { PluginCommandController } from "@stigmer/protos/ai/stigmer/agentic/plugin/v1/command_pb";
|
|
10
|
-
import { PluginSchema } from "@stigmer/protos/ai/stigmer/agentic/plugin/v1/api_pb";
|
|
11
|
-
import { PluginArtifactUploadUrlSchema, PushPluginRequestSchema, } from "@stigmer/protos/ai/stigmer/agentic/plugin/v1/io_pb";
|
|
12
|
-
import { ApiResourceVisibility } from "@stigmer/protos/ai/stigmer/commons/apiresource/enum_pb";
|
|
13
|
-
import { RoutedPluginClient } from "../plugin.js";
|
|
14
|
-
import { MAX_INLINE_ARTIFACT_BYTES } from "../skill.js";
|
|
15
|
-
const STAGING_URL = "http://stage.example/v1/skill-artifacts/uploads/sau_p";
|
|
16
|
-
function fakeTransport(captured) {
|
|
17
|
-
return createRouterTransport(({ service }) => {
|
|
18
|
-
service(PluginCommandController, {
|
|
19
|
-
push: (req) => {
|
|
20
|
-
captured.pushes.push(req);
|
|
21
|
-
return create(PluginSchema, {});
|
|
22
|
-
},
|
|
23
|
-
createArtifactUploadUrl: (req) => {
|
|
24
|
-
captured.mints++;
|
|
25
|
-
expect(req.org).toBe("acme");
|
|
26
|
-
expect(req.sizeBytes).toBeGreaterThan(0n);
|
|
27
|
-
return create(PluginArtifactUploadUrlSchema, {
|
|
28
|
-
url: STAGING_URL,
|
|
29
|
-
artifactUploadRef: "sau_p",
|
|
30
|
-
ttlSeconds: 900,
|
|
31
|
-
});
|
|
32
|
-
},
|
|
33
|
-
});
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
describe("RoutedPluginClient.push size routing", () => {
|
|
37
|
-
it("keeps a small archive inline", async () => {
|
|
38
|
-
const captured = { pushes: [], mints: 0 };
|
|
39
|
-
const client = new RoutedPluginClient(fakeTransport(captured));
|
|
40
|
-
await client.push(create(PushPluginRequestSchema, {
|
|
41
|
-
org: "acme",
|
|
42
|
-
artifact: new Uint8Array(2048),
|
|
43
|
-
}));
|
|
44
|
-
expect(captured.mints).toBe(0);
|
|
45
|
-
expect(captured.pushes[0]?.artifact.length).toBe(2048);
|
|
46
|
-
});
|
|
47
|
-
it("stages a large archive through the plugin's own mint and pushes by reference, keeping the envelope", async () => {
|
|
48
|
-
const captured = { pushes: [], mints: 0 };
|
|
49
|
-
const record = {};
|
|
50
|
-
const fetchImpl = vi.fn(async (url, init) => {
|
|
51
|
-
record.url = String(url);
|
|
52
|
-
record.bytes =
|
|
53
|
-
init.body instanceof Uint8Array ? init.body.byteLength : -1;
|
|
54
|
-
return new Response(null, { status: 200 });
|
|
55
|
-
});
|
|
56
|
-
const client = new RoutedPluginClient(fakeTransport(captured), fetchImpl);
|
|
57
|
-
const artifact = new Uint8Array(MAX_INLINE_ARTIFACT_BYTES + 1);
|
|
58
|
-
await client.push(create(PushPluginRequestSchema, {
|
|
59
|
-
org: "acme",
|
|
60
|
-
artifact,
|
|
61
|
-
visibility: ApiResourceVisibility.visibility_org,
|
|
62
|
-
message: "big",
|
|
63
|
-
}));
|
|
64
|
-
expect(captured.mints).toBe(1);
|
|
65
|
-
expect(record.url).toBe(STAGING_URL);
|
|
66
|
-
expect(record.bytes).toBe(artifact.length);
|
|
67
|
-
const pushed = captured.pushes[0];
|
|
68
|
-
expect(pushed.artifact.length).toBe(0);
|
|
69
|
-
expect(pushed.artifactUploadRef).toBe("sau_p");
|
|
70
|
-
expect(pushed.visibility).toBe(ApiResourceVisibility.visibility_org);
|
|
71
|
-
expect(pushed.message).toBe("big");
|
|
72
|
-
});
|
|
73
|
-
});
|
|
74
|
-
//# sourceMappingURL=plugin.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.test.js","sourceRoot":"","sources":["../../src/__tests__/plugin.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resource-availability.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/resource-availability.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Pins the edition vocabulary (`resource-availability.ts`): the one
|
|
3
|
-
* edition-to-mode converter, the rank comparison behind
|
|
4
|
-
* `isResourceAvailable`, and the two properties the DDs assumed and this
|
|
5
|
-
* module has to make true —
|
|
6
|
-
*
|
|
7
|
-
* - ranks, never wire numbers: `enterprise = 3` sits ABOVE `cloud = 2`
|
|
8
|
-
* and `cloud_only = 2` on the wire, so a comparison on enum values
|
|
9
|
-
* would say an Enterprise-tier kind is not served by a Cloud server;
|
|
10
|
-
* - forward compatibility: an edition value this SDK does not know
|
|
11
|
-
* (a newer server) maps to `"cloud"` instead of throwing, so an older
|
|
12
|
-
* console never breaks against a newer server.
|
|
13
|
-
*
|
|
14
|
-
* The kinds named here are chosen one per tier; re-tiering any of them is
|
|
15
|
-
* a contract change and must touch this file (editions program, DD-001).
|
|
16
|
-
*/
|
|
17
|
-
import { describe, expect, it } from "vitest";
|
|
18
|
-
import { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
|
|
19
|
-
import { ServerEdition } from "@stigmer/protos/ai/stigmer/platform/v1/server_info_pb";
|
|
20
|
-
import { deploymentModeOf, isResourceAvailable, } from "../resource-availability";
|
|
21
|
-
const MODES = ["local", "enterprise", "cloud"];
|
|
22
|
-
describe("deploymentModeOf — the one edition-to-mode converter", () => {
|
|
23
|
-
it("maps each known edition to its mode", () => {
|
|
24
|
-
expect(deploymentModeOf(ServerEdition.oss)).toBe("local");
|
|
25
|
-
expect(deploymentModeOf(ServerEdition.enterprise)).toBe("enterprise");
|
|
26
|
-
expect(deploymentModeOf(ServerEdition.cloud)).toBe("cloud");
|
|
27
|
-
});
|
|
28
|
-
it("maps unspecified to cloud — the documented safe default (nothing hidden on a broken server)", () => {
|
|
29
|
-
expect(deploymentModeOf(ServerEdition.server_edition_unspecified)).toBe("cloud");
|
|
30
|
-
});
|
|
31
|
-
it("maps an edition this SDK does not know to cloud instead of throwing — older client, newer server", () => {
|
|
32
|
-
// A future fourth edition arrives off the wire as a number the enum
|
|
33
|
-
// type does not name. The cast is the test's point.
|
|
34
|
-
expect(deploymentModeOf(99)).toBe("cloud");
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
-
describe("isResourceAvailable — a tier is a minimum edition", () => {
|
|
38
|
-
it("open_source-tier kinds are available in every mode", () => {
|
|
39
|
-
for (const mode of MODES) {
|
|
40
|
-
expect(isResourceAvailable(ApiResourceKind.agent, mode), mode).toBe(true);
|
|
41
|
-
}
|
|
42
|
-
});
|
|
43
|
-
it("enterprise-tier kinds are available in enterprise and cloud, not local", () => {
|
|
44
|
-
// `invitation` is the example since `iam_policy` moved to open_source
|
|
45
|
-
// (20260913.01: the row half is served by every edition).
|
|
46
|
-
expect(isResourceAvailable(ApiResourceKind.invitation, "local")).toBe(false);
|
|
47
|
-
expect(isResourceAvailable(ApiResourceKind.invitation, "enterprise")).toBe(true);
|
|
48
|
-
// The inversion case: enterprise = 3 > cloud = 2 on the wire. A
|
|
49
|
-
// wire-number comparison fails exactly here.
|
|
50
|
-
expect(isResourceAvailable(ApiResourceKind.invitation, "cloud")).toBe(true);
|
|
51
|
-
});
|
|
52
|
-
it("iam_policy is open_source since the row half moved into open source — served everywhere", () => {
|
|
53
|
-
for (const mode of MODES) {
|
|
54
|
-
expect(isResourceAvailable(ApiResourceKind.iam_policy, mode), mode).toBe(true);
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
it("cloud_only-tier kinds are available in cloud only", () => {
|
|
58
|
-
expect(isResourceAvailable(ApiResourceKind.api_resource_version, "local")).toBe(false);
|
|
59
|
-
expect(isResourceAvailable(ApiResourceKind.api_resource_version, "enterprise")).toBe(false);
|
|
60
|
-
expect(isResourceAvailable(ApiResourceKind.api_resource_version, "cloud")).toBe(true);
|
|
61
|
-
});
|
|
62
|
-
it("the kinds this entry re-tiers read as their new tier", () => {
|
|
63
|
-
// oauth_app: served by the OSS server; the cloud_only tier was drift.
|
|
64
|
-
expect(isResourceAvailable(ApiResourceKind.oauth_app, "local")).toBe(true);
|
|
65
|
-
// platform: the operator seat a self-hosting Enterprise company owns.
|
|
66
|
-
expect(isResourceAvailable(ApiResourceKind.platform, "local")).toBe(false);
|
|
67
|
-
expect(isResourceAvailable(ApiResourceKind.platform, "enterprise")).toBe(true);
|
|
68
|
-
// identity_account: open_source since the open-source server serves the
|
|
69
|
-
// domain (20260911.11 slice 5); the tier moved in the same change as
|
|
70
|
-
// the serving code, never ahead of it.
|
|
71
|
-
expect(isResourceAvailable(ApiResourceKind.identity_account, "local")).toBe(true);
|
|
72
|
-
// agent_share and channel_app: served by OSS; they never moved.
|
|
73
|
-
expect(isResourceAvailable(ApiResourceKind.agent_share, "local")).toBe(true);
|
|
74
|
-
expect(isResourceAvailable(ApiResourceKind.channel_app, "local")).toBe(true);
|
|
75
|
-
});
|
|
76
|
-
it("refuses a kind with no tier — a programming error, never silently available", () => {
|
|
77
|
-
expect(() => isResourceAvailable(ApiResourceKind.api_resource_kind_unknown, "cloud")).toThrow(/no tier/);
|
|
78
|
-
});
|
|
79
|
-
});
|
|
80
|
-
//# sourceMappingURL=resource-availability.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resource-availability.test.js","sourceRoot":"","sources":["../../src/__tests__/resource-availability.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"runner-adapter.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/runner-adapter.test.ts"],"names":[],"mappings":""}
|