@stigmer/sdk 3.35.0 → 3.36.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.map +1 -1
- 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.map +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/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":"file-review-fold.test.js","sourceRoot":"","sources":["../../../src/execution/__tests__/file-review-fold.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"to-display-file-change.test.d.ts","sourceRoot":"","sources":["../../../src/execution/__tests__/to-display-file-change.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
// Unit tests for the CapturedFileChange -> FileChange display projection.
|
|
2
|
-
import { describe, it, expect } from "vitest";
|
|
3
|
-
import { create } from "@bufbuild/protobuf";
|
|
4
|
-
import { CapturedFileChangeSchema, } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/filereview_pb";
|
|
5
|
-
import { FileContentSchema } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/message_pb";
|
|
6
|
-
import { FileChangeCaptureLevel, FileChangeKind, FileChangeType, } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
|
|
7
|
-
import { toDisplayFileChange } from "../to-display-file-change";
|
|
8
|
-
function inline(text) {
|
|
9
|
-
return create(FileContentSchema, { body: { case: "inline", value: text } });
|
|
10
|
-
}
|
|
11
|
-
describe("toDisplayFileChange", () => {
|
|
12
|
-
it("maps a MODIFY with both sides to a WHOLE_FILE before/after change", () => {
|
|
13
|
-
const fc = toDisplayFileChange(create(CapturedFileChangeSchema, {
|
|
14
|
-
id: "fc1",
|
|
15
|
-
pathBefore: "src/a.ts",
|
|
16
|
-
pathAfter: "src/a.ts",
|
|
17
|
-
kind: FileChangeKind.MODIFY,
|
|
18
|
-
before: inline("old"),
|
|
19
|
-
after: inline("new"),
|
|
20
|
-
}));
|
|
21
|
-
expect(fc.path).toBe("src/a.ts");
|
|
22
|
-
expect(fc.changeType).toBe(FileChangeType.MODIFY);
|
|
23
|
-
expect(fc.captureLevel).toBe(FileChangeCaptureLevel.WHOLE_FILE);
|
|
24
|
-
expect(fc.before?.body.case).toBe("inline");
|
|
25
|
-
expect(fc.after?.body.case).toBe("inline");
|
|
26
|
-
expect(fc.renameFrom).toBe("");
|
|
27
|
-
});
|
|
28
|
-
it("maps ADD -> CREATE and uses pathAfter", () => {
|
|
29
|
-
const fc = toDisplayFileChange(create(CapturedFileChangeSchema, {
|
|
30
|
-
id: "fc1",
|
|
31
|
-
pathAfter: "src/new.ts",
|
|
32
|
-
kind: FileChangeKind.ADD,
|
|
33
|
-
after: inline("hello"),
|
|
34
|
-
}));
|
|
35
|
-
expect(fc.changeType).toBe(FileChangeType.CREATE);
|
|
36
|
-
expect(fc.path).toBe("src/new.ts");
|
|
37
|
-
});
|
|
38
|
-
it("maps DELETE -> DELETE and uses pathBefore when pathAfter is empty", () => {
|
|
39
|
-
const fc = toDisplayFileChange(create(CapturedFileChangeSchema, {
|
|
40
|
-
id: "fc1",
|
|
41
|
-
pathBefore: "src/gone.ts",
|
|
42
|
-
kind: FileChangeKind.DELETE,
|
|
43
|
-
before: inline("bye"),
|
|
44
|
-
}));
|
|
45
|
-
expect(fc.changeType).toBe(FileChangeType.DELETE);
|
|
46
|
-
expect(fc.path).toBe("src/gone.ts");
|
|
47
|
-
});
|
|
48
|
-
it("maps RENAME -> RENAME and carries renameFrom = pathBefore", () => {
|
|
49
|
-
const fc = toDisplayFileChange(create(CapturedFileChangeSchema, {
|
|
50
|
-
id: "fc1",
|
|
51
|
-
pathBefore: "src/old-name.ts",
|
|
52
|
-
pathAfter: "src/new-name.ts",
|
|
53
|
-
kind: FileChangeKind.RENAME,
|
|
54
|
-
}));
|
|
55
|
-
expect(fc.changeType).toBe(FileChangeType.RENAME);
|
|
56
|
-
expect(fc.path).toBe("src/new-name.ts");
|
|
57
|
-
expect(fc.renameFrom).toBe("src/old-name.ts");
|
|
58
|
-
});
|
|
59
|
-
it("carries a binary side through so the renderer can detect it", () => {
|
|
60
|
-
const fc = toDisplayFileChange(create(CapturedFileChangeSchema, {
|
|
61
|
-
id: "fc1",
|
|
62
|
-
pathAfter: "img.png",
|
|
63
|
-
kind: FileChangeKind.ADD,
|
|
64
|
-
after: create(FileContentSchema, { isBinary: true }),
|
|
65
|
-
}));
|
|
66
|
-
expect(fc.after?.isBinary).toBe(true);
|
|
67
|
-
});
|
|
68
|
-
it("carries the capture-time line counts so renderers can show +N −M without the bodies", () => {
|
|
69
|
-
const fc = toDisplayFileChange(create(CapturedFileChangeSchema, {
|
|
70
|
-
id: "fc1",
|
|
71
|
-
pathBefore: "src/a.ts",
|
|
72
|
-
pathAfter: "src/a.ts",
|
|
73
|
-
kind: FileChangeKind.MODIFY,
|
|
74
|
-
linesAdded: 37,
|
|
75
|
-
linesRemoved: 2,
|
|
76
|
-
}));
|
|
77
|
-
expect(fc.linesAdded).toBe(37);
|
|
78
|
-
expect(fc.linesRemoved).toBe(2);
|
|
79
|
-
});
|
|
80
|
-
});
|
|
81
|
-
//# sourceMappingURL=to-display-file-change.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"to-display-file-change.test.js","sourceRoot":"","sources":["../../../src/execution/__tests__/to-display-file-change.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tool-view.file-changes.test.d.ts","sourceRoot":"","sources":["../../../src/execution/__tests__/tool-view.file-changes.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
// Covers normalizeToolResult's file-edit / file-write views, reconstructed from
|
|
2
|
-
// the tool args (and the Cursor result envelope). Phase 5 Slice 4 removed the
|
|
3
|
-
// ToolCall.file_changes capture (message.proto field 22), so the args are the
|
|
4
|
-
// single source for the inline transcript diff; captured file review renders via
|
|
5
|
-
// FileReviewCard / the FileChangeSet ledger, tested separately.
|
|
6
|
-
import { describe, it, expect } from "vitest";
|
|
7
|
-
import { create } from "@bufbuild/protobuf";
|
|
8
|
-
import { ToolCallSchema } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/message_pb";
|
|
9
|
-
import { ToolCallStatus, ToolKind, } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
|
|
10
|
-
import { normalizeToolResult } from "../tool-view";
|
|
11
|
-
/** A completed FILE_EDIT tool call carrying the given args/result. */
|
|
12
|
-
function editToolCall(opts) {
|
|
13
|
-
return create(ToolCallSchema, {
|
|
14
|
-
id: "tc-1",
|
|
15
|
-
name: "edit_file",
|
|
16
|
-
toolKind: ToolKind.FILE_EDIT,
|
|
17
|
-
status: ToolCallStatus.TOOL_CALL_COMPLETED,
|
|
18
|
-
args: (opts.args ?? {}),
|
|
19
|
-
result: opts.result ?? "",
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
/** A completed FILE_WRITE tool call carrying the given args. */
|
|
23
|
-
function writeToolCall(opts) {
|
|
24
|
-
return create(ToolCallSchema, {
|
|
25
|
-
id: "tc-w",
|
|
26
|
-
name: "write_file",
|
|
27
|
-
toolKind: ToolKind.FILE_WRITE,
|
|
28
|
-
status: ToolCallStatus.TOOL_CALL_COMPLETED,
|
|
29
|
-
args: (opts.args ?? {}),
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
describe("normalizeEdit — from args", () => {
|
|
33
|
-
it("reconstructs a diff from old_string / new_string", () => {
|
|
34
|
-
const view = normalizeToolResult(editToolCall({
|
|
35
|
-
args: { path: "legacy.ts", old_string: "foo", new_string: "bar" },
|
|
36
|
-
result: "Successfully replaced 1 occurrence(s)",
|
|
37
|
-
}));
|
|
38
|
-
expect(view.type).toBe("diff");
|
|
39
|
-
if (view.type !== "diff")
|
|
40
|
-
return;
|
|
41
|
-
expect(view.oldText).toBe("foo");
|
|
42
|
-
expect(view.newText).toBe("bar");
|
|
43
|
-
expect(view.path).toBe("legacy.ts");
|
|
44
|
-
// The row carries no whole-file capture; captureLevel is left unset.
|
|
45
|
-
expect(view.captureLevel).toBeUndefined();
|
|
46
|
-
});
|
|
47
|
-
it("parses the Cursor result envelope stats when present", () => {
|
|
48
|
-
const view = normalizeToolResult(editToolCall({
|
|
49
|
-
args: { path: "x.ts" },
|
|
50
|
-
result: JSON.stringify({
|
|
51
|
-
value: { linesAdded: 3, linesRemoved: 2, diffString: "@@ patch @@" },
|
|
52
|
-
}),
|
|
53
|
-
}));
|
|
54
|
-
if (view.type !== "diff")
|
|
55
|
-
return;
|
|
56
|
-
expect(view.linesAdded).toBe(3);
|
|
57
|
-
expect(view.linesRemoved).toBe(2);
|
|
58
|
-
expect(view.unifiedDiff).toBe("@@ patch @@");
|
|
59
|
-
expect(view.captureLevel).toBeUndefined();
|
|
60
|
-
});
|
|
61
|
-
it("resolves the path from the args (path / file_path / file / filename)", () => {
|
|
62
|
-
expect((() => {
|
|
63
|
-
const v = normalizeToolResult(editToolCall({ args: { file_path: "src/app/main.ts", old_string: "a", new_string: "b" } }));
|
|
64
|
-
return v.type === "diff" ? v.path : "";
|
|
65
|
-
})()).toBe("src/app/main.ts");
|
|
66
|
-
});
|
|
67
|
-
});
|
|
68
|
-
describe("normalizeWrite — from args", () => {
|
|
69
|
-
it("renders the proposed whole-file content from the args (contents)", () => {
|
|
70
|
-
const CONTENT = "# Notes\n\n- first\n- second\n";
|
|
71
|
-
const view = normalizeToolResult(writeToolCall({ args: { path: "notes.md", contents: CONTENT } }));
|
|
72
|
-
expect(view.type).toBe("file");
|
|
73
|
-
if (view.type !== "file")
|
|
74
|
-
return;
|
|
75
|
-
expect(view.path).toBe("notes.md");
|
|
76
|
-
expect(view.content).toBe(CONTENT);
|
|
77
|
-
});
|
|
78
|
-
it("defaults to empty content when the args carry none", () => {
|
|
79
|
-
const view = normalizeToolResult(writeToolCall({ args: { path: "empty.ts" } }));
|
|
80
|
-
if (view.type !== "file")
|
|
81
|
-
return;
|
|
82
|
-
expect(view.content).toBe("");
|
|
83
|
-
expect(view.path).toBe("empty.ts");
|
|
84
|
-
});
|
|
85
|
-
});
|
|
86
|
-
//# sourceMappingURL=tool-view.file-changes.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tool-view.file-changes.test.js","sourceRoot":"","sources":["../../../src/execution/__tests__/tool-view.file-changes.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tool-view.fixtures.test.d.ts","sourceRoot":"","sources":["../../../src/execution/__tests__/tool-view.fixtures.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
// Validates the tool-view layer against the shared cross-surface contract in
|
|
2
|
-
// test/fixtures/tool-view/. The runner's middleware tests assert the same
|
|
3
|
-
// fixtures from the writer side, so producers and this reader cannot drift in
|
|
4
|
-
// classification, result interpretation, intent extraction, or secret redaction.
|
|
5
|
-
import { readFileSync } from "node:fs";
|
|
6
|
-
import { fileURLToPath } from "node:url";
|
|
7
|
-
import { dirname, resolve } from "node:path";
|
|
8
|
-
import { describe, it, expect } from "vitest";
|
|
9
|
-
import { create } from "@bufbuild/protobuf";
|
|
10
|
-
import { ToolCallSchema } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/message_pb";
|
|
11
|
-
import { ToolCallStatus } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
|
|
12
|
-
import { ToolKind, resolveToolKindByName, normalizeToolResult, extractShellIntent, SHELL_INTENT_ARG_FIELD, isSecretArgKey, redactSecretArgs, } from "../tool-view";
|
|
13
|
-
const here = dirname(fileURLToPath(import.meta.url));
|
|
14
|
-
// sdk/typescript/src/execution/__tests__ -> repo root is five levels up.
|
|
15
|
-
const fixtureDir = resolve(here, "../../../../../test/fixtures/tool-view");
|
|
16
|
-
function loadFixture(name) {
|
|
17
|
-
return JSON.parse(readFileSync(resolve(fixtureDir, name), "utf8"));
|
|
18
|
-
}
|
|
19
|
-
describe("classification fixtures", () => {
|
|
20
|
-
const { cases } = loadFixture("classification.json");
|
|
21
|
-
it("loads the fixture", () => {
|
|
22
|
-
expect(cases.length).toBeGreaterThan(0);
|
|
23
|
-
});
|
|
24
|
-
for (const c of cases) {
|
|
25
|
-
const expected = ToolKind[c.toolKind.replace(/^TOOL_KIND_/, "")];
|
|
26
|
-
it(`classifies ${c.name || "(empty)"}${c.mcpServerSlug ? ` @${c.mcpServerSlug}` : ""}`, () => {
|
|
27
|
-
expect(resolveToolKindByName(c.name, c.mcpServerSlug)).toBe(expected);
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
describe("result-view fixtures", () => {
|
|
32
|
-
const { cases } = loadFixture("result-views.json");
|
|
33
|
-
it("loads the fixture", () => {
|
|
34
|
-
expect(cases.length).toBeGreaterThan(0);
|
|
35
|
-
});
|
|
36
|
-
for (const c of cases) {
|
|
37
|
-
it(`normalizes ${c.name} -> ${c.expected.type}`, () => {
|
|
38
|
-
const status = c.status === "TOOL_CALL_FAILED"
|
|
39
|
-
? ToolCallStatus.TOOL_CALL_FAILED
|
|
40
|
-
: ToolCallStatus.TOOL_CALL_COMPLETED;
|
|
41
|
-
const toolCall = create(ToolCallSchema, {
|
|
42
|
-
id: c.name,
|
|
43
|
-
name: c.toolName,
|
|
44
|
-
mcpServerSlug: c.mcpServerSlug,
|
|
45
|
-
result: c.result,
|
|
46
|
-
error: c.error ?? "",
|
|
47
|
-
status,
|
|
48
|
-
args: c.args,
|
|
49
|
-
});
|
|
50
|
-
const view = normalizeToolResult(toolCall);
|
|
51
|
-
expect(view.type).toBe(c.expected.type);
|
|
52
|
-
// Only deterministic facts are part of the shared contract.
|
|
53
|
-
if (c.expected.path !== undefined && view.type === "diff") {
|
|
54
|
-
expect(view.path).toBe(c.expected.path);
|
|
55
|
-
}
|
|
56
|
-
if (c.expected.path !== undefined && view.type === "file") {
|
|
57
|
-
expect(view.path).toBe(c.expected.path);
|
|
58
|
-
}
|
|
59
|
-
if (c.expected.exitCode !== undefined && view.type === "terminal") {
|
|
60
|
-
expect(view.exitCode).toBe(c.expected.exitCode);
|
|
61
|
-
}
|
|
62
|
-
if (c.expected.command !== undefined && view.type === "terminal") {
|
|
63
|
-
expect(view.command).toBe(c.expected.command);
|
|
64
|
-
}
|
|
65
|
-
if (c.expected.count !== undefined && view.type === "search") {
|
|
66
|
-
expect(view.count).toBe(c.expected.count);
|
|
67
|
-
}
|
|
68
|
-
if (c.expected.count !== undefined && view.type === "list") {
|
|
69
|
-
expect(view.count).toBe(c.expected.count);
|
|
70
|
-
}
|
|
71
|
-
if (c.expected.mcpServerSlug !== undefined && view.type === "contentBlocks") {
|
|
72
|
-
expect(view.mcpServerSlug).toBe(c.expected.mcpServerSlug);
|
|
73
|
-
}
|
|
74
|
-
if (c.expected.linesAdded !== undefined && view.type === "diff") {
|
|
75
|
-
expect(view.linesAdded).toBe(c.expected.linesAdded);
|
|
76
|
-
}
|
|
77
|
-
if (c.expected.linesRemoved !== undefined && view.type === "diff") {
|
|
78
|
-
expect(view.linesRemoved).toBe(c.expected.linesRemoved);
|
|
79
|
-
}
|
|
80
|
-
if (c.expected.memoryId !== undefined && view.type === "memoryProposal") {
|
|
81
|
-
expect(view.memoryId).toBe(c.expected.memoryId);
|
|
82
|
-
}
|
|
83
|
-
if (c.expected.fact !== undefined && view.type === "memoryProposal") {
|
|
84
|
-
expect(view.fact).toBe(c.expected.fact);
|
|
85
|
-
}
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
});
|
|
89
|
-
describe("intent-title fixtures", () => {
|
|
90
|
-
const fixture = loadFixture("intent-title.json");
|
|
91
|
-
it("loads the fixture and agrees on the wire key", () => {
|
|
92
|
-
expect(fixture.cases.length).toBeGreaterThan(0);
|
|
93
|
-
expect(SHELL_INTENT_ARG_FIELD).toBe(fixture.argField);
|
|
94
|
-
});
|
|
95
|
-
for (const c of fixture.cases) {
|
|
96
|
-
it(`extracts ${c.name}${c.mcpServerSlug ? ` @${c.mcpServerSlug}` : ""} -> ${JSON.stringify(c.intent)}`, () => {
|
|
97
|
-
const toolCall = create(ToolCallSchema, {
|
|
98
|
-
id: c.name,
|
|
99
|
-
name: c.name,
|
|
100
|
-
mcpServerSlug: c.mcpServerSlug,
|
|
101
|
-
args: c.args,
|
|
102
|
-
});
|
|
103
|
-
expect(extractShellIntent(toolCall)).toBe(c.intent);
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
});
|
|
107
|
-
describe("secret-args fixtures", () => {
|
|
108
|
-
// The runner's args-preview tests assert the same file from the writer side.
|
|
109
|
-
const { keys, marker, cases } = loadFixture("secret-args.json");
|
|
110
|
-
it("recognises every secret key, in any case, and nothing that merely contains one", () => {
|
|
111
|
-
for (const key of keys) {
|
|
112
|
-
expect(isSecretArgKey(key)).toBe(true);
|
|
113
|
-
expect(isSecretArgKey(key.toUpperCase())).toBe(true);
|
|
114
|
-
}
|
|
115
|
-
expect(isSecretArgKey("token_count")).toBe(false);
|
|
116
|
-
expect(isSecretArgKey("repo")).toBe(false);
|
|
117
|
-
});
|
|
118
|
-
for (const c of cases) {
|
|
119
|
-
it(`redacts ${c.name}`, () => {
|
|
120
|
-
expect(redactSecretArgs(c.args)).toEqual(c.redacted);
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
it("writes the runner's marker and keeps the reference when nothing is secret", () => {
|
|
124
|
-
expect(redactSecretArgs({ token: "t" }).token).toBe(marker);
|
|
125
|
-
const clean = { repo: "acme/x" };
|
|
126
|
-
expect(redactSecretArgs(clean)).toBe(clean);
|
|
127
|
-
});
|
|
128
|
-
});
|
|
129
|
-
describe("resolveToolKind wire field precedence", () => {
|
|
130
|
-
it("prefers the wire tool_kind over the name fallback", () => {
|
|
131
|
-
const toolCall = create(ToolCallSchema, {
|
|
132
|
-
name: "some_unknown_name",
|
|
133
|
-
toolKind: ToolKind.SHELL,
|
|
134
|
-
});
|
|
135
|
-
// resolveToolKind is exercised indirectly via normalizeToolResult routing.
|
|
136
|
-
const view = normalizeToolResult(create(ToolCallSchema, {
|
|
137
|
-
name: "some_unknown_name",
|
|
138
|
-
toolKind: ToolKind.SHELL,
|
|
139
|
-
result: "done\n[Command succeeded]",
|
|
140
|
-
status: ToolCallStatus.TOOL_CALL_COMPLETED,
|
|
141
|
-
}));
|
|
142
|
-
expect(view.type).toBe("terminal");
|
|
143
|
-
expect(toolCall.toolKind).toBe(ToolKind.SHELL);
|
|
144
|
-
});
|
|
145
|
-
it("degrades unknown results to json or text", () => {
|
|
146
|
-
const jsonView = normalizeToolResult(create(ToolCallSchema, { name: "mystery", result: '{"a":1}', status: ToolCallStatus.TOOL_CALL_COMPLETED }));
|
|
147
|
-
expect(jsonView.type).toBe("json");
|
|
148
|
-
const textView = normalizeToolResult(create(ToolCallSchema, { name: "mystery", result: "plain", status: ToolCallStatus.TOOL_CALL_COMPLETED }));
|
|
149
|
-
expect(textView.type).toBe("text");
|
|
150
|
-
});
|
|
151
|
-
});
|
|
152
|
-
//# sourceMappingURL=tool-view.fixtures.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tool-view.fixtures.test.js","sourceRoot":"","sources":["../../../src/execution/__tests__/tool-view.fixtures.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tool-view.output-ref.test.d.ts","sourceRoot":"","sources":["../../../src/execution/__tests__/tool-view.output-ref.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
// Covers the offloaded tool-output path: when a result is spilled to artifact
|
|
2
|
-
// storage the runner replaces it with a ToolCallOutputRef. The view must surface
|
|
3
|
-
// the STABLE storageKey (+ contentHash) so consumers resolve the bytes/URL on
|
|
4
|
-
// demand — it must never depend on a persisted (ephemeral) URL.
|
|
5
|
-
import { describe, it, expect } from "vitest";
|
|
6
|
-
import { create } from "@bufbuild/protobuf";
|
|
7
|
-
import { ToolCallSchema, ToolCallOutputRefSchema, } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/message_pb";
|
|
8
|
-
import { ToolCallStatus, ToolKind, } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
|
|
9
|
-
import { normalizeToolResult } from "../tool-view";
|
|
10
|
-
function toolCallWithOutputRef(ref, result = "") {
|
|
11
|
-
return create(ToolCallSchema, {
|
|
12
|
-
id: "tc-1",
|
|
13
|
-
name: "some_tool",
|
|
14
|
-
toolKind: ToolKind.UNSPECIFIED,
|
|
15
|
-
status: ToolCallStatus.TOOL_CALL_COMPLETED,
|
|
16
|
-
args: {},
|
|
17
|
-
result,
|
|
18
|
-
outputRef: ref,
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
describe("normalizeToolResult — offloaded output ref", () => {
|
|
22
|
-
it("emits an outputRef view carrying the stable storageKey and contentHash", () => {
|
|
23
|
-
const ref = create(ToolCallOutputRefSchema, {
|
|
24
|
-
storageKey: "artifacts/exec-1/toolcalls/tc-1.txt",
|
|
25
|
-
contentHash: "sha256:abc",
|
|
26
|
-
sizeBytes: 900000n,
|
|
27
|
-
mimeType: "text/plain",
|
|
28
|
-
isImage: false,
|
|
29
|
-
truncatedPreview: "head of the output…",
|
|
30
|
-
});
|
|
31
|
-
const view = normalizeToolResult(toolCallWithOutputRef(ref, "[output truncated]"));
|
|
32
|
-
expect(view.type).toBe("outputRef");
|
|
33
|
-
if (view.type !== "outputRef")
|
|
34
|
-
return;
|
|
35
|
-
expect(view.storageKey).toBe("artifacts/exec-1/toolcalls/tc-1.txt");
|
|
36
|
-
expect(view.contentHash).toBe("sha256:abc");
|
|
37
|
-
expect(view.isImage).toBe(false);
|
|
38
|
-
expect(view.mimeType).toBe("text/plain");
|
|
39
|
-
expect(view.sizeBytes).toBe(900_000);
|
|
40
|
-
expect(view.preview).toBe("head of the output…");
|
|
41
|
-
});
|
|
42
|
-
it("gates on storageKey, not a URL — an image ref renders inline", () => {
|
|
43
|
-
const ref = create(ToolCallOutputRefSchema, {
|
|
44
|
-
storageKey: "artifacts/exec-1/toolcalls/tc-1.png",
|
|
45
|
-
contentHash: "sha256:img",
|
|
46
|
-
sizeBytes: 12345n,
|
|
47
|
-
mimeType: "image/png",
|
|
48
|
-
isImage: true,
|
|
49
|
-
});
|
|
50
|
-
const view = normalizeToolResult(toolCallWithOutputRef(ref));
|
|
51
|
-
expect(view.type).toBe("outputRef");
|
|
52
|
-
if (view.type !== "outputRef")
|
|
53
|
-
return;
|
|
54
|
-
expect(view.isImage).toBe(true);
|
|
55
|
-
expect(view.storageKey).toBe("artifacts/exec-1/toolcalls/tc-1.png");
|
|
56
|
-
});
|
|
57
|
-
it("does not produce an outputRef view when no storageKey is present", () => {
|
|
58
|
-
// A ref with no storageKey is not a usable offload pointer; fall back to text.
|
|
59
|
-
const ref = create(ToolCallOutputRefSchema, { sizeBytes: 10n });
|
|
60
|
-
const view = normalizeToolResult(toolCallWithOutputRef(ref, "plain result"));
|
|
61
|
-
expect(view.type).not.toBe("outputRef");
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
//# sourceMappingURL=tool-view.output-ref.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tool-view.output-ref.test.js","sourceRoot":"","sources":["../../../src/execution/__tests__/tool-view.output-ref.test.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,iFAAiF;AACjF,8EAA8E;AAC9E,gEAAgE;AAEhE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAmB,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EACL,cAAc,EACd,uBAAuB,GACxB,MAAM,iEAAiE,CAAC;AACzE,OAAO,EACL,cAAc,EACd,QAAQ,GACT,MAAM,8DAA8D,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEnD,SAAS,qBAAqB,CAAC,GAA0E,EAAE,MAAM,GAAG,EAAE;IACpH,OAAO,MAAM,CAAC,cAAc,EAAE;QAC5B,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,QAAQ,CAAC,WAAW;QAC9B,MAAM,EAAE,cAAc,CAAC,mBAAmB;QAC1C,IAAI,EAAE,EAAgB;QACtB,MAAM;QACN,SAAS,EAAE,GAAG;KACf,CAAC,CAAC;AACL,CAAC;AAED,QAAQ,CAAC,4CAA4C,EAAE,GAAG,EAAE;IAC1D,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;QAChF,MAAM,GAAG,GAAG,MAAM,CAAC,uBAAuB,EAAE;YAC1C,UAAU,EAAE,qCAAqC;YACjD,WAAW,EAAE,YAAY;YACzB,SAAS,EAAE,OAAQ;YACnB,QAAQ,EAAE,YAAY;YACtB,OAAO,EAAE,KAAK;YACd,gBAAgB,EAAE,qBAAqB;SACxC,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,mBAAmB,CAAC,qBAAqB,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC,CAAC;QAEnF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpC,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;YAAE,OAAO;QACtC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;QACpE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACtE,MAAM,GAAG,GAAG,MAAM,CAAC,uBAAuB,EAAE;YAC1C,UAAU,EAAE,qCAAqC;YACjD,WAAW,EAAE,YAAY;YACzB,SAAS,EAAE,MAAO;YAClB,QAAQ,EAAE,WAAW;YACrB,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,mBAAmB,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC;QAE7D,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpC,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;YAAE,OAAO;QACtC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,+EAA+E;QAC/E,MAAM,GAAG,GAAG,MAAM,CAAC,uBAAuB,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QAChE,MAAM,IAAI,GAAG,mBAAmB,CAAC,qBAAqB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC;QAC7E,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tool-view.read.test.d.ts","sourceRoot":"","sources":["../../../src/execution/__tests__/tool-view.read.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
// Covers read normalization over the native engine's read frame: deepagents
|
|
2
|
-
// (1.12+) renders a text read as one-line bracketed notices, a status header
|
|
3
|
-
// `@@ lines A-B[ of T][ | …] @@`, and then the file's lines unmodified. The view
|
|
4
|
-
// shows the file, so the frame is dropped; a truncation the header reports is
|
|
5
|
-
// kept. The cross-language fixture (result-views.json) asserts the happy path;
|
|
6
|
-
// these cover the frame's variants and the results that carry no frame (Cursor,
|
|
7
|
-
// and native rows recorded before the frame existed).
|
|
8
|
-
import { describe, it, expect } from "vitest";
|
|
9
|
-
import { create } from "@bufbuild/protobuf";
|
|
10
|
-
import { ToolCallSchema } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/message_pb";
|
|
11
|
-
import { ToolCallStatus, ToolKind, } from "@stigmer/protos/ai/stigmer/agentic/agentexecution/v1/enum_pb";
|
|
12
|
-
import { normalizeToolResult } from "../tool-view";
|
|
13
|
-
function readCall(result) {
|
|
14
|
-
return create(ToolCallSchema, {
|
|
15
|
-
id: "tc-read",
|
|
16
|
-
name: "read_file",
|
|
17
|
-
toolKind: ToolKind.FILE_READ,
|
|
18
|
-
status: ToolCallStatus.TOOL_CALL_COMPLETED,
|
|
19
|
-
args: { file_path: "/workspace/main.go" },
|
|
20
|
-
result,
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
function fileView(result) {
|
|
24
|
-
const view = normalizeToolResult(readCall(result));
|
|
25
|
-
expect(view.type).toBe("file");
|
|
26
|
-
if (view.type !== "file")
|
|
27
|
-
throw new Error("not a file view");
|
|
28
|
-
return view;
|
|
29
|
-
}
|
|
30
|
-
describe("normalizeToolResult — native read frame", () => {
|
|
31
|
-
it("drops the status header and shows the file's lines", () => {
|
|
32
|
-
const view = fileView("@@ lines 1-2 of 2 @@\npackage main\n");
|
|
33
|
-
expect(view.content).toBe("package main\n");
|
|
34
|
-
expect(view.truncated).toBe(false);
|
|
35
|
-
});
|
|
36
|
-
it("drops a paginated header and the notices above it", () => {
|
|
37
|
-
const view = fileView("[Requested offset -3 is before the start of the file; read from line 1 instead.]\n" +
|
|
38
|
-
"@@ lines 1-100 of 250 | next offset 100 @@\nline one\nline two");
|
|
39
|
-
expect(view.content).toBe("line one\nline two");
|
|
40
|
-
expect(view.truncated).toBe(false);
|
|
41
|
-
});
|
|
42
|
-
it("keeps a truncation the header reports", () => {
|
|
43
|
-
const whole = fileView("[Output was truncated due to size limits.]\n@@ lines 1-40 of 900 | next offset 40 | truncated due to size @@\nfirst");
|
|
44
|
-
expect(whole.content).toBe("first");
|
|
45
|
-
expect(whole.truncated).toBe(true);
|
|
46
|
-
const midLine = fileView("@@ lines 1-1 | truncated mid-line | 10 of 90 chars @@\n0123456789");
|
|
47
|
-
expect(midLine.content).toBe("0123456789");
|
|
48
|
-
expect(midLine.truncated).toBe(true);
|
|
49
|
-
});
|
|
50
|
-
it("leaves a result without the frame as it is", () => {
|
|
51
|
-
expect(fileView(" 1\tpackage main\n 2\t").content).toBe(" 1\tpackage main\n 2\t");
|
|
52
|
-
expect(fileView("[a bracketed first line of the file]\nsecond").content).toBe("[a bracketed first line of the file]\nsecond");
|
|
53
|
-
expect(fileView("@@ -1,2 +1,3 @@\n diff text").content).toBe("@@ -1,2 +1,3 @@\n diff text");
|
|
54
|
-
});
|
|
55
|
-
});
|
|
56
|
-
//# sourceMappingURL=tool-view.read.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tool-view.read.test.js","sourceRoot":"","sources":["../../../src/execution/__tests__/tool-view.read.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tool-view.search.test.d.ts","sourceRoot":"","sources":["../../../src/execution/__tests__/tool-view.search.test.ts"],"names":[],"mappings":""}
|