@cursor/july 0.1.26 → 0.1.28
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/ab.d.ts +6 -0
- package/dist/ab.d.ts.map +1 -1
- package/dist/ab.js +1 -0
- package/dist/artifacts.d.ts +34 -0
- package/dist/artifacts.d.ts.map +1 -0
- package/dist/artifacts.js +57 -0
- package/dist/bin/agent-serve.js +43 -12
- package/dist/channels/github/github-channel.d.ts +1 -1
- package/dist/channels/github/github-channel.d.ts.map +1 -1
- package/dist/channels/github/github-channel.js +14 -1
- package/dist/channels/github/types.d.ts +6 -1
- package/dist/channels/github/types.d.ts.map +1 -1
- package/dist/channels/slack/api.d.ts +2 -1
- package/dist/channels/slack/api.d.ts.map +1 -1
- package/dist/channels/slack/api.js +1 -0
- package/dist/channels/slack/auth.d.ts +13 -13
- package/dist/channels/slack/auth.d.ts.map +1 -1
- package/dist/channels/slack/auth.js +19 -10
- package/dist/channels/slack/cursor-account.d.ts +2 -1
- package/dist/channels/slack/cursor-account.d.ts.map +1 -1
- package/dist/channels/slack/cursor-account.js +3 -1
- package/dist/channels/slack/defaults.d.ts +7 -4
- package/dist/channels/slack/defaults.d.ts.map +1 -1
- package/dist/channels/slack/defaults.js +14 -4
- package/dist/channels/slack/dispatch.d.ts +10 -1
- package/dist/channels/slack/dispatch.d.ts.map +1 -1
- package/dist/channels/slack/dispatch.js +59 -21
- package/dist/channels/slack/external-policy.d.ts +27 -0
- package/dist/channels/slack/external-policy.d.ts.map +1 -0
- package/dist/channels/slack/external-policy.js +53 -0
- package/dist/channels/slack/index.d.ts +1 -0
- package/dist/channels/slack/index.d.ts.map +1 -1
- package/dist/channels/slack/index.js +1 -0
- package/dist/channels/slack/interactive.d.ts +8 -1
- package/dist/channels/slack/interactive.d.ts.map +1 -1
- package/dist/channels/slack/interactive.js +43 -15
- package/dist/channels/slack/slack-channel.d.ts.map +1 -1
- package/dist/channels/slack/slack-channel.js +22 -8
- package/dist/channels/slack/types.d.ts +16 -1
- package/dist/channels/slack/types.d.ts.map +1 -1
- package/dist/docs/404.html +2 -2
- package/dist/docs/ab.html +3 -3
- package/dist/docs/assets/{app.DYcC9FY-.js → app.CqjrYaT2.js} +1 -1
- package/dist/docs/assets/chunks/@localSearchIndexroot.VWQoPFJ1.js +1 -0
- package/dist/docs/assets/chunks/{VPLocalSearchBox.o4N_knTV.js → VPLocalSearchBox.ag-MwUel.js} +1 -1
- package/dist/docs/assets/chunks/{theme.DQ-njyo0.js → theme.BS-DJWat.js} +2 -2
- package/dist/docs/assets/{guides_slack.md.D_xFKlnF.js → guides_slack.md.CjmJSvZS.js} +8 -4
- package/dist/docs/assets/guides_slack.md.CjmJSvZS.lean.js +1 -0
- package/dist/docs/assets/guides_webhooks.md.wSOYas3X.js +183 -0
- package/dist/docs/assets/{guides_webhooks.md.B1EswtUu.lean.js → guides_webhooks.md.wSOYas3X.lean.js} +1 -1
- package/dist/docs/assets/{index.md.Dfv5ic9t.js → index.md.CH_s5uZe.js} +1 -1
- package/dist/docs/assets/{reference_channels.md.DdmiKgqf.js → reference_channels.md.CDhTRfUz.js} +2 -2
- package/dist/docs/assets/{reference_channels.md.DdmiKgqf.lean.js → reference_channels.md.CDhTRfUz.lean.js} +1 -1
- package/dist/docs/building-with-agents.html +3 -3
- package/dist/docs/concepts.html +3 -3
- package/dist/docs/deployment.html +3 -3
- package/dist/docs/evals.html +3 -3
- package/dist/docs/example-agents/approval-buddy.html +3 -3
- package/dist/docs/example-agents/benny.html +3 -3
- package/dist/docs/example-agents/bugbot.html +3 -3
- package/dist/docs/example-agents/codebase-wiki.html +3 -3
- package/dist/docs/example-agents/codeowners-review.html +3 -3
- package/dist/docs/example-agents/concierge.html +3 -3
- package/dist/docs/example-agents/fsd.html +3 -3
- package/dist/docs/example-agents/index.html +3 -3
- package/dist/docs/example-agents/knowledge-base.html +3 -3
- package/dist/docs/example-agents/oncall.html +3 -3
- package/dist/docs/example-agents/security-reviewer.html +3 -3
- package/dist/docs/example-agents/slack-agent.html +3 -3
- package/dist/docs/example-agents/weather-agent.html +3 -3
- package/dist/docs/guides/agent-to-agent.html +3 -3
- package/dist/docs/guides/cloud-runtime.html +3 -3
- package/dist/docs/guides/github.html +3 -3
- package/dist/docs/guides/human-in-the-loop.html +3 -3
- package/dist/docs/guides/mcp-oauth.html +3 -3
- package/dist/docs/guides/slack.html +11 -7
- package/dist/docs/guides/webhooks.html +138 -5
- package/dist/docs/hashmap.json +1 -1
- package/dist/docs/hillclimbing.html +3 -3
- package/dist/docs/index.html +5 -5
- package/dist/docs/quickstart.html +3 -3
- package/dist/docs/reference/agent-config.html +3 -3
- package/dist/docs/reference/channels.html +5 -5
- package/dist/docs/reference/cli.html +3 -3
- package/dist/docs/reference/connections.html +3 -3
- package/dist/docs/reference/hooks.html +3 -3
- package/dist/docs/reference/http-api.html +3 -3
- package/dist/docs/reference/instructions.html +3 -3
- package/dist/docs/reference/playground.html +3 -3
- package/dist/docs/reference/project-layout.html +3 -3
- package/dist/docs/reference/prompt.html +3 -3
- package/dist/docs/reference/schedules.html +3 -3
- package/dist/docs/reference/sessions.html +3 -3
- package/dist/docs/reference/skills.html +3 -3
- package/dist/docs/reference/subagents.html +3 -3
- package/dist/docs/reference/tools.html +3 -3
- package/dist/docs/scaffolding-agents.html +3 -3
- package/dist/docs/storage.html +3 -3
- package/dist/docs/troubleshooting.html +3 -3
- package/dist/evals/assertions.d.ts +10 -1
- package/dist/evals/assertions.d.ts.map +1 -1
- package/dist/evals/assertions.js +12 -0
- package/dist/evals.d.ts +1 -1
- package/dist/evals.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/internal/ab-fold.d.ts.map +1 -1
- package/dist/internal/ab-fold.js +4 -0
- package/dist/internal/ab-snapshot.d.ts.map +1 -1
- package/dist/internal/ab-snapshot.js +1 -0
- package/dist/internal/artifacts-store.d.ts +45 -0
- package/dist/internal/artifacts-store.d.ts.map +1 -0
- package/dist/internal/artifacts-store.js +250 -0
- package/dist/internal/builtin-tools/artifacts.d.ts +10 -0
- package/dist/internal/builtin-tools/artifacts.d.ts.map +1 -0
- package/dist/internal/builtin-tools/artifacts.js +73 -0
- package/dist/internal/builtin-tools/index.d.ts +8 -1
- package/dist/internal/builtin-tools/index.d.ts.map +1 -1
- package/dist/internal/builtin-tools/index.js +15 -0
- package/dist/internal/cli-ax.d.ts +19 -0
- package/dist/internal/cli-ax.d.ts.map +1 -1
- package/dist/internal/cli-ax.js +196 -57
- package/dist/internal/cli-slack.d.ts.map +1 -1
- package/dist/internal/cli-slack.js +14 -6
- package/dist/internal/cursor-slack-relay.d.ts +2 -0
- package/dist/internal/cursor-slack-relay.d.ts.map +1 -1
- package/dist/internal/cursor-slack-relay.js +1 -0
- package/dist/internal/deploy-client.d.ts +2 -0
- package/dist/internal/deploy-client.d.ts.map +1 -1
- package/dist/internal/deploy-client.js +1 -0
- package/dist/internal/discovery.d.ts.map +1 -1
- package/dist/internal/discovery.js +91 -3
- package/dist/internal/distribution.d.ts.map +1 -1
- package/dist/internal/distribution.js +1 -0
- package/dist/internal/model-pricing.d.ts +49 -0
- package/dist/internal/model-pricing.d.ts.map +1 -0
- package/dist/internal/model-pricing.js +377 -0
- package/dist/internal/reminder-runner.d.ts.map +1 -1
- package/dist/internal/reminder-runner.js +1 -0
- package/dist/internal/schedule-runner.d.ts.map +1 -1
- package/dist/internal/schedule-runner.js +1 -0
- package/dist/internal/sdk-runner.d.ts.map +1 -1
- package/dist/internal/sdk-runner.js +9 -1
- package/dist/internal/server.d.ts.map +1 -1
- package/dist/internal/server.js +49 -5
- package/dist/internal/session-cost.d.ts +49 -0
- package/dist/internal/session-cost.d.ts.map +1 -0
- package/dist/internal/session-cost.js +175 -0
- package/dist/internal/session-engine.d.ts +35 -1
- package/dist/internal/session-engine.d.ts.map +1 -1
- package/dist/internal/session-engine.js +128 -7
- package/dist/internal/storage-coordinator.d.ts +15 -0
- package/dist/internal/storage-coordinator.d.ts.map +1 -1
- package/dist/internal/storage-coordinator.js +52 -0
- package/dist/internal/trajectory.d.ts +9 -1
- package/dist/internal/trajectory.d.ts.map +1 -1
- package/dist/internal/trajectory.js +32 -5
- package/dist/playground/assets/index-Bul1WfrB.css +1 -0
- package/dist/playground/assets/index-CkN74U_L.js +87 -0
- package/dist/playground/index.html +2 -2
- package/dist/storage.d.ts +4 -0
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +4 -0
- package/dist/types.d.ts +164 -1
- package/dist/types.d.ts.map +1 -1
- package/docs/README.md +1 -0
- package/docs/guides/slack.md +32 -7
- package/docs/guides/webhooks.md +183 -0
- package/docs/reference/channels.md +2 -1
- package/package.json +26 -26
- package/skills/setup-slack/SKILL.md +3 -0
- package/src/ab.ts +7 -0
- package/src/bin/agent-serve.ts +42 -5
- package/src/channels/slack/auth.ts +29 -22
- package/src/channels/slack/cursor-account.ts +2 -0
- package/src/channels/slack/defaults.ts +24 -4
- package/src/channels/slack/dispatch.ts +42 -1
- package/src/channels/slack/external-policy.ts +62 -0
- package/src/channels/slack/index.ts +1 -0
- package/src/channels/slack/interactive.ts +42 -10
- package/src/channels/slack/slack-channel.ts +20 -3
- package/src/channels/slack/types.ts +12 -0
- package/src/internal/ab-fold.ts +4 -0
- package/src/internal/ab-snapshot.ts +1 -0
- package/src/internal/cli-ax.ts +205 -34
- package/src/internal/cursor-slack-relay.ts +3 -0
- package/src/internal/deploy-client.ts +3 -0
- package/src/internal/discovery.ts +8 -1
- package/src/internal/model-pricing.ts +426 -0
- package/src/internal/sdk-runner.ts +10 -2
- package/src/internal/server.ts +9 -5
- package/src/internal/session-cost.ts +231 -0
- package/src/internal/session-engine.ts +28 -0
- package/src/internal/trajectory.ts +45 -3
- package/src/types.ts +24 -1
- package/dist/channels/github/instrument.d.ts +0 -20
- package/dist/channels/github/instrument.d.ts.map +0 -1
- package/dist/docs/assets/chunks/@localSearchIndexroot.BQTzJjR_.js +0 -1
- package/dist/docs/assets/guides_slack.md.D_xFKlnF.lean.js +0 -1
- package/dist/docs/assets/guides_webhooks.md.B1EswtUu.js +0 -50
- package/dist/internal/json-dir-store.d.ts +0 -32
- package/dist/internal/json-dir-store.d.ts.map +0 -1
- package/dist/internal/json-dir-store.js +0 -100
- package/dist/playground/assets/index-CjOQ4hN9.css +0 -1
- package/dist/playground/assets/index-DqXdAFGa.js +0 -85
- package/src/bin/agent-serve.version.test.ts +0 -64
- package/src/channels/github/api.test.ts +0 -64
- package/src/channels/github/auth.test.ts +0 -105
- package/src/channels/github/cursor-account.test.ts +0 -204
- package/src/channels/github/forward.test.ts +0 -457
- package/src/channels/github/github.test.ts +0 -985
- package/src/channels/github/replay.test.ts +0 -179
- package/src/channels/slack/api.post-message.test.ts +0 -148
- package/src/channels/slack/approvals.test.ts +0 -328
- package/src/channels/slack/block-actions.test.ts +0 -469
- package/src/channels/slack/bot-mentions.test.ts +0 -267
- package/src/channels/slack/channel-watch.test.ts +0 -363
- package/src/channels/slack/cursor-account.test.ts +0 -301
- package/src/channels/slack/defaults.final-post.test.ts +0 -182
- package/src/channels/slack/dispatch.test.ts +0 -875
- package/src/channels/slack/eval-directive.test.ts +0 -273
- package/src/channels/slack/message-body.test.ts +0 -54
- package/src/channels/slack/nudge-store.test.ts +0 -143
- package/src/channels/slack/slack.test.ts +0 -391
- package/src/channels/slack/stop.test.ts +0 -23
- package/src/channels/slack/thread-context.test.ts +0 -202
- package/src/evals/assertions.test.ts +0 -617
- package/src/evals/expect.test.ts +0 -144
- package/src/evals/judge.test.ts +0 -181
- package/src/evals/loaders.test.ts +0 -132
- package/src/evals/matchers.test.ts +0 -95
- package/src/evals/reporters.test.ts +0 -303
- package/src/evals/run-facts.test.ts +0 -259
- package/src/internal/ab-snapshot.test.ts +0 -325
- package/src/internal/approval-gate.test.ts +0 -49
- package/src/internal/approvals.integration.test.ts +0 -383
- package/src/internal/artifacts-store.test.ts +0 -283
- package/src/internal/authored-loaders.test.ts +0 -31
- package/src/internal/builtin-tools/artifacts.test.ts +0 -247
- package/src/internal/builtin-tools/reminders.test.ts +0 -201
- package/src/internal/channel-route-schema.test.ts +0 -294
- package/src/internal/chat-attach.test.ts +0 -262
- package/src/internal/cli-deploy.test.ts +0 -1991
- package/src/internal/cli-docs.test.ts +0 -161
- package/src/internal/cli-mcp.test.ts +0 -789
- package/src/internal/cli-skills.test.ts +0 -133
- package/src/internal/cli-slack.test.ts +0 -1654
- package/src/internal/cloud-merge.test.ts +0 -74
- package/src/internal/cron.test.ts +0 -22
- package/src/internal/cursor/account-mcp.test.ts +0 -807
- package/src/internal/cursor/backend-client.test.ts +0 -591
- package/src/internal/cursor/credentials.test.ts +0 -351
- package/src/internal/cursor/github-credentials.test.ts +0 -136
- package/src/internal/cursor-account-mcp-auth.test.ts +0 -310
- package/src/internal/cursor-account.integration.test.ts +0 -441
- package/src/internal/cursor-event-relay.test.ts +0 -746
- package/src/internal/cursor-github-credentials.integration.test.ts +0 -271
- package/src/internal/cursor-slack-relay.test.ts +0 -525
- package/src/internal/deploy-source.test.ts +0 -111
- package/src/internal/discovery.artifact-tool.test.ts +0 -136
- package/src/internal/discovery.artifacts.test.ts +0 -119
- package/src/internal/discovery.builtin-tools.test.ts +0 -94
- package/src/internal/discovery.concurrency.test.ts +0 -60
- package/src/internal/discovery.cursor-account.test.ts +0 -133
- package/src/internal/discovery.cwd.test.ts +0 -83
- package/src/internal/discovery.hosting.test.ts +0 -80
- package/src/internal/discovery.identity.test.ts +0 -44
- package/src/internal/docs-site.test.ts +0 -66
- package/src/internal/duration.test.ts +0 -29
- package/src/internal/eval-judge-model.test.ts +0 -187
- package/src/internal/eval-run-store.cancel.test.ts +0 -142
- package/src/internal/eval-run-store.storage.test.ts +0 -211
- package/src/internal/eval-runner.http.test.ts +0 -403
- package/src/internal/eval-runner.run.test.ts +0 -928
- package/src/internal/evals-client.test.ts +0 -307
- package/src/internal/event-mapper.test.ts +0 -243
- package/src/internal/github-fanout.test.ts +0 -213
- package/src/internal/handleAgentServeTrigger.test.ts +0 -185
- package/src/internal/host-kv.test.ts +0 -82
- package/src/internal/host-platforms.test.ts +0 -126
- package/src/internal/http-channel.test.ts +0 -402
- package/src/internal/init-project.test.ts +0 -270
- package/src/internal/install-cursor-skills.test.ts +0 -262
- package/src/internal/local-env.test.ts +0 -120
- package/src/internal/log-ring.test.ts +0 -31
- package/src/internal/logs-client.test.ts +0 -350
- package/src/internal/mcp-endpoint.test.ts +0 -436
- package/src/internal/mcp-host.test.ts +0 -298
- package/src/internal/mcp-oauth.test.ts +0 -148
- package/src/internal/net.test.ts +0 -17
- package/src/internal/peer-connections.test.ts +0 -128
- package/src/internal/peer-mcp.integration.test.ts +0 -289
- package/src/internal/playground/toolchain.test.ts +0 -53
- package/src/internal/playground-cli.test.ts +0 -187
- package/src/internal/playground-proxy.test.ts +0 -376
- package/src/internal/prompt-context.integration.test.ts +0 -232
- package/src/internal/prompt-context.test.ts +0 -127
- package/src/internal/reminder-runner.test.ts +0 -432
- package/src/internal/reminder-store.test.ts +0 -53
- package/src/internal/request-headers.test.ts +0 -27
- package/src/internal/resolve-prod-target.test.ts +0 -787
- package/src/internal/resolved-connections.test.ts +0 -295
- package/src/internal/router.test.ts +0 -57
- package/src/internal/sdk-runner.test.ts +0 -290
- package/src/internal/server.artifacts.test.ts +0 -334
- package/src/internal/session-engine.artifacts.test.ts +0 -293
- package/src/internal/session-engine.coalesce.test.ts +0 -169
- package/src/internal/session-engine.concurrency.test.ts +0 -250
- package/src/internal/session-engine.host-oauth-mcp.test.ts +0 -110
- package/src/internal/session-engine.interrupt.test.ts +0 -577
- package/src/internal/session-engine.storage.test.ts +0 -547
- package/src/internal/session-urls.test.ts +0 -28
- package/src/internal/sessions-client.test.ts +0 -518
- package/src/internal/storage-coordinator.test.ts +0 -517
- package/src/internal/tool-call.test.ts +0 -458
- package/src/internal/tool-result.test.ts +0 -52
- package/src/internal/trajectory.approvals.test.ts +0 -83
- package/src/internal/trajectory.subagents.test.ts +0 -198
- package/src/internal/turn-governor.test.ts +0 -137
- package/src/internal/update-check.test.ts +0 -485
- package/src/internal/workspace.test.ts +0 -207
- package/src/storage-backends/cursor-hosted.test.ts +0 -121
- /package/dist/docs/assets/{index.md.Dfv5ic9t.lean.js → index.md.CH_s5uZe.lean.js} +0 -0
package/dist/internal/server.js
CHANGED
|
@@ -68,6 +68,9 @@ import { CursorSdkRunner } from "./sdk-runner.js";
|
|
|
68
68
|
import { SessionAuthError, SessionBusyError, SessionEngine, ToolInputError, ToolNotDirectlyCallableError, UnknownToolError, } from "./session-engine.js";
|
|
69
69
|
import { sessionUrlsForRequest } from "./session-urls.js";
|
|
70
70
|
const MAX_BODY_BYTES = 32 * 1024 * 1024;
|
|
71
|
+
/** `GET /v1/artifacts` limit defaults / ceiling. */
|
|
72
|
+
const ARTIFACTS_LIST_DEFAULT_LIMIT = 200;
|
|
73
|
+
const ARTIFACTS_LIST_MAX_LIMIT = 1000;
|
|
71
74
|
/**
|
|
72
75
|
* Start an HTTP server hosting one or more agents. A single agent with an
|
|
73
76
|
* empty slug serves at `/v1/*` and `/playground`; multiple agents each serve
|
|
@@ -319,6 +322,7 @@ export function startServer(mounts_1) {
|
|
|
319
322
|
getContinuationLastBotMessageTs: (continuationToken) => engine.getContinuationLastBotMessageTs(channel.id, continuationToken),
|
|
320
323
|
interruptContinuation: (continuationToken) => engine.interruptContinuation(channel.id, continuationToken),
|
|
321
324
|
logger,
|
|
325
|
+
artifacts: engine.artifacts,
|
|
322
326
|
};
|
|
323
327
|
try {
|
|
324
328
|
yield definition.onStart(startArgs);
|
|
@@ -765,6 +769,39 @@ function mountAgentRoutes(router, runtime, args) {
|
|
|
765
769
|
return jsonResponse(yield engine.abSnapshot(ctx.auth, { includeAll }));
|
|
766
770
|
}),
|
|
767
771
|
});
|
|
772
|
+
// Durable artifacts (ctx.artifacts / tag_artifact), newest-updated first.
|
|
773
|
+
router.add({
|
|
774
|
+
method: "GET",
|
|
775
|
+
pattern: `${base}/v1/artifacts`,
|
|
776
|
+
auth: httpAuth,
|
|
777
|
+
handler: (request, ctx) => __awaiter(this, void 0, void 0, function* () {
|
|
778
|
+
var _a, _b;
|
|
779
|
+
const url = new URL(request.url);
|
|
780
|
+
const limitRaw = url.searchParams.get("limit");
|
|
781
|
+
let limit = ARTIFACTS_LIST_DEFAULT_LIMIT;
|
|
782
|
+
if (limitRaw !== null && limitRaw !== "") {
|
|
783
|
+
const parsed = Number.parseInt(limitRaw, 10);
|
|
784
|
+
if (!Number.isInteger(parsed) || parsed < 1) {
|
|
785
|
+
return errorResponse(400, "invalid_request", "`limit` must be a positive integer.");
|
|
786
|
+
}
|
|
787
|
+
limit = Math.min(parsed, ARTIFACTS_LIST_MAX_LIMIT);
|
|
788
|
+
}
|
|
789
|
+
const kind = (_a = url.searchParams.get("kind")) !== null && _a !== void 0 ? _a : undefined;
|
|
790
|
+
const sessionId = (_b = url.searchParams.get("sessionId")) !== null && _b !== void 0 ? _b : undefined;
|
|
791
|
+
// Same includeAll gate as /v1/sessions: never with bearer or custom
|
|
792
|
+
// channel auth (strict per-principal isolation); otherwise session
|
|
793
|
+
// ownership applies (see SessionEngine.listArtifacts).
|
|
794
|
+
const includeAll = relaxSessionReadAuth &&
|
|
795
|
+
(relaxSessionReadAuthBeyondLoopback ||
|
|
796
|
+
(typeof ctx.requestIp === "string" &&
|
|
797
|
+
isLoopbackAddress(ctx.requestIp)));
|
|
798
|
+
const artifacts = yield engine.listArtifacts(ctx.auth, {
|
|
799
|
+
includeAll,
|
|
800
|
+
filter: { kind, sessionId },
|
|
801
|
+
});
|
|
802
|
+
return jsonResponse({ artifacts: artifacts.slice(0, limit) });
|
|
803
|
+
}),
|
|
804
|
+
});
|
|
768
805
|
// The agent's MCP surface: peers and external MCP clients delegate to
|
|
769
806
|
// this agent (ask / check / call_tool) over streamable HTTP. Stateless —
|
|
770
807
|
// POST only; GET/DELETE get a spec-compliant 405 from the endpoint.
|
|
@@ -1312,11 +1349,16 @@ function startCursorSlackRelay(input) {
|
|
|
1312
1349
|
const stateDir = join(baseStateRoot, "cursor-slack");
|
|
1313
1350
|
// Optional fields may be undefined — the relay JSON-serializes the
|
|
1314
1351
|
// registration body, which drops them.
|
|
1315
|
-
const agents = targets.map((target) => {
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1352
|
+
const agents = targets.map((target) => {
|
|
1353
|
+
var _a, _b;
|
|
1354
|
+
const policy = target.accountRuntime.options.policy;
|
|
1355
|
+
return {
|
|
1356
|
+
name: target.agentName,
|
|
1357
|
+
iconUrl: (_a = target.accountRuntime.options.agentIcon) === null || _a === void 0 ? void 0 : _a.url,
|
|
1358
|
+
iconEmoji: (_b = target.accountRuntime.options.agentIcon) === null || _b === void 0 ? void 0 : _b.emoji,
|
|
1359
|
+
blockExternals: (policy === null || policy === void 0 ? void 0 : policy.blockExternals) === false ? false : undefined,
|
|
1360
|
+
};
|
|
1361
|
+
});
|
|
1320
1362
|
const targetByName = new Map(targets.map((target) => [target.agentName.toLowerCase(), target]));
|
|
1321
1363
|
const relay = new CursorSlackRelay({
|
|
1322
1364
|
baseUrl,
|
|
@@ -1339,6 +1381,7 @@ function startCursorSlackRelay(input) {
|
|
|
1339
1381
|
envelope,
|
|
1340
1382
|
send: args.send,
|
|
1341
1383
|
host: args.host,
|
|
1384
|
+
artifacts: args.artifacts,
|
|
1342
1385
|
hasContinuationSession: (continuationToken) => target.runtime.engine.hasContinuationSession(target.channelId, continuationToken),
|
|
1343
1386
|
isContinuationBusy: (continuationToken) => target.runtime.engine.isContinuationBusy(target.channelId, continuationToken),
|
|
1344
1387
|
getContinuationLastBotMessageTs: (continuationToken) => target.runtime.engine.getContinuationLastBotMessageTs(target.channelId, continuationToken),
|
|
@@ -1375,6 +1418,7 @@ function buildChannelHandlerArgs(input) {
|
|
|
1375
1418
|
requestIp: (_c = input.requestIp) !== null && _c !== void 0 ? _c : null,
|
|
1376
1419
|
auth,
|
|
1377
1420
|
host: runtime.engine.host,
|
|
1421
|
+
artifacts: runtime.engine.artifacts,
|
|
1378
1422
|
send: (message, sendOptions = {}) => runtime.engine.send(channelId, message, Object.assign(Object.assign({}, sendOptions), { auth: sendOptions.auth !== undefined ? sendOptions.auth : auth })),
|
|
1379
1423
|
getSession: (sessionId) => runtime.engine.getChannelSession(channelId, sessionId),
|
|
1380
1424
|
receive: (target, inputReceive) => runtime.engine.receive(target, inputReceive),
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-session cost metrics folded from a durable session event stream.
|
|
3
|
+
*
|
|
4
|
+
* Powers `agent-serve cost [sessionId]`: each `turn.completed` event carries
|
|
5
|
+
* the turn's token usage and the estimated dollar cost recorded by the
|
|
6
|
+
* engine (see `model-pricing.ts`), so a session's spend is a pure fold over
|
|
7
|
+
* its `events.ndjson` — no server-side aggregation required.
|
|
8
|
+
*/
|
|
9
|
+
import type { SessionEvent, TurnCost, TurnUsage } from "../types.js";
|
|
10
|
+
/** One agent loop pass (turn) with its usage and estimated cost. */
|
|
11
|
+
export interface SessionCostTurn {
|
|
12
|
+
turnId: string;
|
|
13
|
+
failed: boolean;
|
|
14
|
+
usage?: TurnUsage;
|
|
15
|
+
cost?: TurnCost;
|
|
16
|
+
}
|
|
17
|
+
export interface SessionCostTotals {
|
|
18
|
+
turns: number;
|
|
19
|
+
turnFailures: number;
|
|
20
|
+
inputTokens: number;
|
|
21
|
+
outputTokens: number;
|
|
22
|
+
cacheReadTokens: number;
|
|
23
|
+
cacheWriteTokens: number;
|
|
24
|
+
/** Sum of per-turn estimated costs (USD). */
|
|
25
|
+
costUsd: number;
|
|
26
|
+
/** Turns that reported usage but had no known model rates. */
|
|
27
|
+
unpricedTurns: number;
|
|
28
|
+
}
|
|
29
|
+
export interface SessionCostReport {
|
|
30
|
+
sessionId: string;
|
|
31
|
+
turns: SessionCostTurn[];
|
|
32
|
+
totals: SessionCostTotals;
|
|
33
|
+
}
|
|
34
|
+
export declare function emptySessionCostTotals(): SessionCostTotals;
|
|
35
|
+
export declare function addSessionCostTotals(target: SessionCostTotals, delta: SessionCostTotals): void;
|
|
36
|
+
/** Fold a session event stream into per-turn and total cost metrics. */
|
|
37
|
+
export declare function buildSessionCostReport(events: readonly SessionEvent[]): SessionCostReport;
|
|
38
|
+
/** Per-turn table for `agent-serve cost <sessionId>`. */
|
|
39
|
+
export declare function formatSessionCostText(report: SessionCostReport): string;
|
|
40
|
+
export interface SessionCostRow {
|
|
41
|
+
sessionId: string;
|
|
42
|
+
channelId: string;
|
|
43
|
+
title?: string;
|
|
44
|
+
updatedAt?: string;
|
|
45
|
+
totals: SessionCostTotals;
|
|
46
|
+
}
|
|
47
|
+
/** All-sessions table for `agent-serve cost` (no session id). */
|
|
48
|
+
export declare function formatSessionsCostText(rows: SessionCostRow[]): string;
|
|
49
|
+
//# sourceMappingURL=session-cost.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-cost.d.ts","sourceRoot":"","sources":["../../src/internal/session-cost.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGrE,oEAAoE;AACpE,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,MAAM,EAAE,iBAAiB,CAAC;CAC3B;AAED,wBAAgB,sBAAsB,IAAI,iBAAiB,CAW1D;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,iBAAiB,EACzB,KAAK,EAAE,iBAAiB,GACvB,IAAI,CASN;AAED,wEAAwE;AACxE,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,YAAY,EAAE,GAC9B,iBAAiB,CAyCnB;AAMD,yDAAyD;AACzD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CA4CvE;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,iBAAiB,CAAC;CAC3B;AAED,iEAAiE;AACjE,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,MAAM,CAsCrE"}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-session cost metrics folded from a durable session event stream.
|
|
3
|
+
*
|
|
4
|
+
* Powers `agent-serve cost [sessionId]`: each `turn.completed` event carries
|
|
5
|
+
* the turn's token usage and the estimated dollar cost recorded by the
|
|
6
|
+
* engine (see `model-pricing.ts`), so a session's spend is a pure fold over
|
|
7
|
+
* its `events.ndjson` — no server-side aggregation required.
|
|
8
|
+
*/
|
|
9
|
+
import { formatCostUsd, roundCostUsd } from "./trajectory.js";
|
|
10
|
+
export function emptySessionCostTotals() {
|
|
11
|
+
return {
|
|
12
|
+
turns: 0,
|
|
13
|
+
turnFailures: 0,
|
|
14
|
+
inputTokens: 0,
|
|
15
|
+
outputTokens: 0,
|
|
16
|
+
cacheReadTokens: 0,
|
|
17
|
+
cacheWriteTokens: 0,
|
|
18
|
+
costUsd: 0,
|
|
19
|
+
unpricedTurns: 0,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
export function addSessionCostTotals(target, delta) {
|
|
23
|
+
target.turns += delta.turns;
|
|
24
|
+
target.turnFailures += delta.turnFailures;
|
|
25
|
+
target.inputTokens += delta.inputTokens;
|
|
26
|
+
target.outputTokens += delta.outputTokens;
|
|
27
|
+
target.cacheReadTokens += delta.cacheReadTokens;
|
|
28
|
+
target.cacheWriteTokens += delta.cacheWriteTokens;
|
|
29
|
+
target.costUsd = roundCostUsd(target.costUsd + delta.costUsd);
|
|
30
|
+
target.unpricedTurns += delta.unpricedTurns;
|
|
31
|
+
}
|
|
32
|
+
/** Fold a session event stream into per-turn and total cost metrics. */
|
|
33
|
+
export function buildSessionCostReport(events) {
|
|
34
|
+
var _a;
|
|
35
|
+
let sessionId = "";
|
|
36
|
+
const turns = [];
|
|
37
|
+
const totals = emptySessionCostTotals();
|
|
38
|
+
for (const event of events) {
|
|
39
|
+
if (sessionId === "" && typeof event.sessionId === "string") {
|
|
40
|
+
sessionId = event.sessionId;
|
|
41
|
+
}
|
|
42
|
+
if (event.type !== "turn.completed" && event.type !== "turn.failed") {
|
|
43
|
+
continue;
|
|
44
|
+
}
|
|
45
|
+
const turn = {
|
|
46
|
+
turnId: (_a = event.turnId) !== null && _a !== void 0 ? _a : `turn_${turns.length + 1}`,
|
|
47
|
+
failed: event.type === "turn.failed",
|
|
48
|
+
};
|
|
49
|
+
totals.turns += 1;
|
|
50
|
+
if (event.type === "turn.failed") {
|
|
51
|
+
totals.turnFailures += 1;
|
|
52
|
+
turns.push(turn);
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
55
|
+
const usage = event.data.usage;
|
|
56
|
+
if (usage !== undefined) {
|
|
57
|
+
turn.usage = usage;
|
|
58
|
+
totals.inputTokens += usage.inputTokens;
|
|
59
|
+
totals.outputTokens += usage.outputTokens;
|
|
60
|
+
totals.cacheReadTokens += usage.cacheReadTokens;
|
|
61
|
+
totals.cacheWriteTokens += usage.cacheWriteTokens;
|
|
62
|
+
}
|
|
63
|
+
const cost = event.data.cost;
|
|
64
|
+
if (cost !== undefined) {
|
|
65
|
+
turn.cost = cost;
|
|
66
|
+
totals.costUsd = roundCostUsd(totals.costUsd + cost.totalUsd);
|
|
67
|
+
}
|
|
68
|
+
else if (usage !== undefined) {
|
|
69
|
+
totals.unpricedTurns += 1;
|
|
70
|
+
}
|
|
71
|
+
turns.push(turn);
|
|
72
|
+
}
|
|
73
|
+
return { sessionId, turns, totals };
|
|
74
|
+
}
|
|
75
|
+
function formatCount(value) {
|
|
76
|
+
return String(value);
|
|
77
|
+
}
|
|
78
|
+
/** Per-turn table for `agent-serve cost <sessionId>`. */
|
|
79
|
+
export function formatSessionCostText(report) {
|
|
80
|
+
const lines = [];
|
|
81
|
+
lines.push(`session ${report.sessionId || "(unknown)"} est. cost: ${formatCostUsd(report.totals.costUsd)}`);
|
|
82
|
+
if (report.turns.length === 0) {
|
|
83
|
+
lines.push("No turns recorded.");
|
|
84
|
+
return `${lines.join("\n")}\n`;
|
|
85
|
+
}
|
|
86
|
+
const header = [
|
|
87
|
+
"TURN",
|
|
88
|
+
"IN",
|
|
89
|
+
"OUT",
|
|
90
|
+
"CACHE R",
|
|
91
|
+
"CACHE W",
|
|
92
|
+
"EST COST",
|
|
93
|
+
"MODEL",
|
|
94
|
+
"STATUS",
|
|
95
|
+
];
|
|
96
|
+
const rows = report.turns.map((turn) => { var _a; var _b; return [
|
|
97
|
+
turn.turnId,
|
|
98
|
+
turn.usage === undefined ? "—" : formatCount(turn.usage.inputTokens),
|
|
99
|
+
turn.usage === undefined ? "—" : formatCount(turn.usage.outputTokens),
|
|
100
|
+
turn.usage === undefined ? "—" : formatCount(turn.usage.cacheReadTokens),
|
|
101
|
+
turn.usage === undefined ? "—" : formatCount(turn.usage.cacheWriteTokens),
|
|
102
|
+
turn.cost === undefined ? "—" : formatCostUsd(turn.cost.totalUsd),
|
|
103
|
+
(_b = (_a = turn.cost) === null || _a === void 0 ? void 0 : _a.model) !== null && _b !== void 0 ? _b : "—",
|
|
104
|
+
turn.failed ? "failed" : "ok",
|
|
105
|
+
]; });
|
|
106
|
+
rows.push([
|
|
107
|
+
"total",
|
|
108
|
+
formatCount(report.totals.inputTokens),
|
|
109
|
+
formatCount(report.totals.outputTokens),
|
|
110
|
+
formatCount(report.totals.cacheReadTokens),
|
|
111
|
+
formatCount(report.totals.cacheWriteTokens),
|
|
112
|
+
formatCostUsd(report.totals.costUsd),
|
|
113
|
+
"",
|
|
114
|
+
report.totals.turnFailures > 0
|
|
115
|
+
? `${report.totals.turnFailures} failed`
|
|
116
|
+
: "",
|
|
117
|
+
]);
|
|
118
|
+
lines.push(renderTable(header, rows));
|
|
119
|
+
appendUnpricedNote(lines, report.totals.unpricedTurns);
|
|
120
|
+
return `${lines.join("\n")}\n`;
|
|
121
|
+
}
|
|
122
|
+
/** All-sessions table for `agent-serve cost` (no session id). */
|
|
123
|
+
export function formatSessionsCostText(rows) {
|
|
124
|
+
if (rows.length === 0) {
|
|
125
|
+
return "No sessions.\n";
|
|
126
|
+
}
|
|
127
|
+
const header = [
|
|
128
|
+
"SESSION",
|
|
129
|
+
"CHANNEL",
|
|
130
|
+
"TURNS",
|
|
131
|
+
"IN",
|
|
132
|
+
"OUT",
|
|
133
|
+
"EST COST",
|
|
134
|
+
"UPDATED",
|
|
135
|
+
];
|
|
136
|
+
const totals = emptySessionCostTotals();
|
|
137
|
+
const body = rows.map((row) => {
|
|
138
|
+
var _a;
|
|
139
|
+
addSessionCostTotals(totals, row.totals);
|
|
140
|
+
return [
|
|
141
|
+
row.sessionId,
|
|
142
|
+
row.channelId,
|
|
143
|
+
formatCount(row.totals.turns),
|
|
144
|
+
formatCount(row.totals.inputTokens),
|
|
145
|
+
formatCount(row.totals.outputTokens),
|
|
146
|
+
formatCostUsd(row.totals.costUsd),
|
|
147
|
+
(_a = row.updatedAt) !== null && _a !== void 0 ? _a : "",
|
|
148
|
+
];
|
|
149
|
+
});
|
|
150
|
+
body.push([
|
|
151
|
+
"total",
|
|
152
|
+
"",
|
|
153
|
+
formatCount(totals.turns),
|
|
154
|
+
formatCount(totals.inputTokens),
|
|
155
|
+
formatCount(totals.outputTokens),
|
|
156
|
+
formatCostUsd(totals.costUsd),
|
|
157
|
+
"",
|
|
158
|
+
]);
|
|
159
|
+
const lines = [renderTable(header, body)];
|
|
160
|
+
appendUnpricedNote(lines, totals.unpricedTurns);
|
|
161
|
+
return `${lines.join("\n")}\n`;
|
|
162
|
+
}
|
|
163
|
+
function appendUnpricedNote(lines, unpricedTurns) {
|
|
164
|
+
if (unpricedTurns > 0) {
|
|
165
|
+
lines.push(`note: ${unpricedTurns} turn(s) reported usage for a model with no known rates; est. cost excludes them.`);
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
function renderTable(header, rows) {
|
|
169
|
+
const widths = header.map((h, i) => Math.max(h.length, ...rows.map((row) => { var _a; return ((_a = row[i]) !== null && _a !== void 0 ? _a : "").length; })));
|
|
170
|
+
const renderRow = (row) => row
|
|
171
|
+
.map((cell, i) => { var _a; return cell.padEnd((_a = widths[i]) !== null && _a !== void 0 ? _a : 0); })
|
|
172
|
+
.join(" ")
|
|
173
|
+
.trimEnd();
|
|
174
|
+
return [renderRow(header), ...rows.map(renderRow)].join("\n");
|
|
175
|
+
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* event handlers and hooks.
|
|
8
8
|
*/
|
|
9
9
|
import { SlackAskDedupeStore, SlackNudgeStore } from "../channels/slack/nudge-store.js";
|
|
10
|
-
import { type AgentProject, type ApprovalDecision, type AuthContext, type CallToolOptions, type ChannelDefinition, type ChannelSession, type HostContext, type HttpChannelDefinition, type PendingApproval, type ReceiveInput, type SendMessageOptions, type SessionEvent, type SessionInfo, type SessionListSource, type SessionRecord, type SessionSummary, type ToolCallOutcome, type TurnOutcome } from "../types.js";
|
|
10
|
+
import { type AgentProject, type ApprovalDecision, type ArtifactListFilter, type ArtifactRecord, type ArtifactsApi, type AuthContext, type CallToolOptions, type ChannelDefinition, type ChannelSession, type HostContext, type HttpChannelDefinition, type PendingApproval, type ReceiveInput, type SendMessageOptions, type SessionEvent, type SessionInfo, type SessionListSource, type SessionRecord, type SessionSummary, type ToolCallOutcome, type TurnOutcome } from "../types.js";
|
|
11
11
|
import { type ABSnapshot } from "./ab-snapshot.js";
|
|
12
12
|
import { type HostPlatforms } from "./host-platforms.js";
|
|
13
13
|
import type { AgentRunner } from "./sdk-runner.js";
|
|
@@ -133,6 +133,8 @@ export declare class SessionEngine {
|
|
|
133
133
|
private reminderApi;
|
|
134
134
|
private evalsApi;
|
|
135
135
|
private readonly kvApi;
|
|
136
|
+
/** Engine-owned artifacts service behind every `ctx.artifacts` facade. */
|
|
137
|
+
private readonly artifactsStore;
|
|
136
138
|
/** Serve-time resolved connections (see {@link setResolvedConnections}). */
|
|
137
139
|
private resolvedConnections;
|
|
138
140
|
constructor(options: SessionEngineOptions);
|
|
@@ -145,6 +147,28 @@ export declare class SessionEngine {
|
|
|
145
147
|
setResolvedConnections(connections: EngineResolvedConnection[]): void;
|
|
146
148
|
/** Shared host services (MCP / GitHub / Slack / reminders / evals / kv / Slack nudges). */
|
|
147
149
|
get host(): HostContext;
|
|
150
|
+
/** Unbound `ctx.artifacts` facade (channel handlers, scratch tool calls). */
|
|
151
|
+
get artifacts(): ArtifactsApi;
|
|
152
|
+
/**
|
|
153
|
+
* Build one `ctx.artifacts` facade over the engine-owned artifacts
|
|
154
|
+
* service. With a `binding` (tools, hooks) `tag` auto-fills the bound
|
|
155
|
+
* session (and turn when known) and rejects a conflicting explicit
|
|
156
|
+
* `sessionId`; without one (channel handlers) callers may pass
|
|
157
|
+
* `sessionId` / `turnId` explicitly.
|
|
158
|
+
*/
|
|
159
|
+
artifactsApi(binding?: {
|
|
160
|
+
sessionId: string;
|
|
161
|
+
turnId?: string;
|
|
162
|
+
}): ArtifactsApi;
|
|
163
|
+
/**
|
|
164
|
+
* Single tag funnel: upsert the row, then — for session-bound tags —
|
|
165
|
+
* append `artifact.tagged` through {@link appendEvent} so persistence
|
|
166
|
+
* flush and hook fan-out are inherited. Session-less tags skip the event.
|
|
167
|
+
* An unknown `sessionId` rejects before the row is written (appending to
|
|
168
|
+
* a session that was never materialized here would mint an orphan local
|
|
169
|
+
* event log, breaking the local-over-sink restore invariant).
|
|
170
|
+
*/
|
|
171
|
+
private tagArtifact;
|
|
148
172
|
private slackNudgeHostApi;
|
|
149
173
|
/** Attach the serve-host reminder API (called from startServer). */
|
|
150
174
|
setReminders(api: HostContext["reminders"]): void;
|
|
@@ -322,6 +346,16 @@ export declare class SessionEngine {
|
|
|
322
346
|
listSessions(caller: AuthContext | null, options?: {
|
|
323
347
|
includeAll?: boolean;
|
|
324
348
|
}): Promise<SessionSummary[]>;
|
|
349
|
+
/**
|
|
350
|
+
* Artifacts for `GET /v1/artifacts`, newest-updated first. Without
|
|
351
|
+
* `includeAll`, the sessions-list ownership rule applies: only artifacts
|
|
352
|
+
* tagged on a session whose principal matches the caller. Session-less
|
|
353
|
+
* artifacts are agent-scoped and visible only with `includeAll`.
|
|
354
|
+
*/
|
|
355
|
+
listArtifacts(caller: AuthContext | null, options?: {
|
|
356
|
+
includeAll?: boolean;
|
|
357
|
+
filter?: ArtifactListFilter;
|
|
358
|
+
}): Promise<ArtifactRecord[]>;
|
|
325
359
|
/**
|
|
326
360
|
* Same as {@link listSessions}, plus which store answered
|
|
327
361
|
* (`cursor-hosted` = durable DB via the control-plane proxy; `local` =
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-engine.d.ts","sourceRoot":"","sources":["../../src/internal/session-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAYH,OAAO,EACL,mBAAmB,EACnB,eAAe,EAChB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EAEtB,KAAK,cAAc,
|
|
1
|
+
{"version":3,"file":"session-engine.d.ts","sourceRoot":"","sources":["../../src/internal/session-engine.ts"],"names":[],"mappings":"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"}
|