@sovara/runner 0.1.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.
Files changed (122) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +331 -0
  3. package/dist/apiTypes.d.ts +4 -0
  4. package/dist/apiTypes.d.ts.map +1 -0
  5. package/dist/apiTypes.js +4 -0
  6. package/dist/apiTypes.js.map +1 -0
  7. package/dist/capture/requestEnvelope.d.ts +10 -0
  8. package/dist/capture/requestEnvelope.d.ts.map +1 -0
  9. package/dist/capture/requestEnvelope.js +79 -0
  10. package/dist/capture/requestEnvelope.js.map +1 -0
  11. package/dist/capture/responseEnvelope.d.ts +14 -0
  12. package/dist/capture/responseEnvelope.d.ts.map +1 -0
  13. package/dist/capture/responseEnvelope.js +43 -0
  14. package/dist/capture/responseEnvelope.js.map +1 -0
  15. package/dist/capture/sseUtils.d.ts +3 -0
  16. package/dist/capture/sseUtils.d.ts.map +1 -0
  17. package/dist/capture/sseUtils.js +69 -0
  18. package/dist/capture/sseUtils.js.map +1 -0
  19. package/dist/capture/streamCapture.d.ts +5 -0
  20. package/dist/capture/streamCapture.d.ts.map +1 -0
  21. package/dist/capture/streamCapture.js +19 -0
  22. package/dist/capture/streamCapture.js.map +1 -0
  23. package/dist/claudeAgentSdk/parseHook.d.ts +20 -0
  24. package/dist/claudeAgentSdk/parseHook.d.ts.map +1 -0
  25. package/dist/claudeAgentSdk/parseHook.js +160 -0
  26. package/dist/claudeAgentSdk/parseHook.js.map +1 -0
  27. package/dist/claudeAgentSdk/wrapper.d.ts +17 -0
  28. package/dist/claudeAgentSdk/wrapper.d.ts.map +1 -0
  29. package/dist/claudeAgentSdk/wrapper.js +219 -0
  30. package/dist/claudeAgentSdk/wrapper.js.map +1 -0
  31. package/dist/constants.d.ts +6 -0
  32. package/dist/constants.d.ts.map +1 -0
  33. package/dist/constants.js +7 -0
  34. package/dist/constants.js.map +1 -0
  35. package/dist/context.d.ts +34 -0
  36. package/dist/context.d.ts.map +1 -0
  37. package/dist/context.js +106 -0
  38. package/dist/context.js.map +1 -0
  39. package/dist/endpointPatterns.json +82 -0
  40. package/dist/endpointWhitelist.d.ts +2 -0
  41. package/dist/endpointWhitelist.d.ts.map +1 -0
  42. package/dist/endpointWhitelist.js +11 -0
  43. package/dist/endpointWhitelist.js.map +1 -0
  44. package/dist/env.d.ts +7 -0
  45. package/dist/env.d.ts.map +1 -0
  46. package/dist/env.js +10 -0
  47. package/dist/env.js.map +1 -0
  48. package/dist/index.d.ts +5 -0
  49. package/dist/index.d.ts.map +1 -0
  50. package/dist/index.js +9 -0
  51. package/dist/index.js.map +1 -0
  52. package/dist/mcpPatch.d.ts +2 -0
  53. package/dist/mcpPatch.d.ts.map +1 -0
  54. package/dist/mcpPatch.js +195 -0
  55. package/dist/mcpPatch.js.map +1 -0
  56. package/dist/payload/editIoExcludePatterns.json +292 -0
  57. package/dist/payload/filterDict.d.ts +3 -0
  58. package/dist/payload/filterDict.d.ts.map +1 -0
  59. package/dist/payload/filterDict.js +26 -0
  60. package/dist/payload/filterDict.js.map +1 -0
  61. package/dist/payload/flatten.d.ts +6 -0
  62. package/dist/payload/flatten.d.ts.map +1 -0
  63. package/dist/payload/flatten.js +79 -0
  64. package/dist/payload/flatten.js.map +1 -0
  65. package/dist/payload/wrap.d.ts +6 -0
  66. package/dist/payload/wrap.d.ts.map +1 -0
  67. package/dist/payload/wrap.js +8 -0
  68. package/dist/payload/wrap.js.map +1 -0
  69. package/dist/priors.d.ts +7 -0
  70. package/dist/priors.d.ts.map +1 -0
  71. package/dist/priors.js +87 -0
  72. package/dist/priors.js.map +1 -0
  73. package/dist/priorsBlockGuidance.json +3 -0
  74. package/dist/projectContext.d.ts +12 -0
  75. package/dist/projectContext.d.ts.map +1 -0
  76. package/dist/projectContext.js +26 -0
  77. package/dist/projectContext.js.map +1 -0
  78. package/dist/runLogCapture.d.ts +10 -0
  79. package/dist/runLogCapture.d.ts.map +1 -0
  80. package/dist/runLogCapture.js +117 -0
  81. package/dist/runLogCapture.js.map +1 -0
  82. package/dist/runtimeClient.d.ts +103 -0
  83. package/dist/runtimeClient.d.ts.map +1 -0
  84. package/dist/runtimeClient.js +202 -0
  85. package/dist/runtimeClient.js.map +1 -0
  86. package/dist/serverLifecycle.d.ts +2 -0
  87. package/dist/serverLifecycle.d.ts.map +1 -0
  88. package/dist/serverLifecycle.js +59 -0
  89. package/dist/serverLifecycle.js.map +1 -0
  90. package/dist/sseListener.d.ts +9 -0
  91. package/dist/sseListener.d.ts.map +1 -0
  92. package/dist/sseListener.js +56 -0
  93. package/dist/sseListener.js.map +1 -0
  94. package/dist/transport/awsSdkHttp2Patch.d.ts +2 -0
  95. package/dist/transport/awsSdkHttp2Patch.d.ts.map +1 -0
  96. package/dist/transport/awsSdkHttp2Patch.js +428 -0
  97. package/dist/transport/awsSdkHttp2Patch.js.map +1 -0
  98. package/dist/transport/fetchPatch.d.ts +3 -0
  99. package/dist/transport/fetchPatch.d.ts.map +1 -0
  100. package/dist/transport/fetchPatch.js +237 -0
  101. package/dist/transport/fetchPatch.js.map +1 -0
  102. package/dist/transport/nodeHttpPatch.d.ts +3 -0
  103. package/dist/transport/nodeHttpPatch.d.ts.map +1 -0
  104. package/dist/transport/nodeHttpPatch.js +522 -0
  105. package/dist/transport/nodeHttpPatch.js.map +1 -0
  106. package/dist/user.d.ts +11 -0
  107. package/dist/user.d.ts.map +1 -0
  108. package/dist/user.js +31 -0
  109. package/dist/user.js.map +1 -0
  110. package/dist/util/logger.d.ts +2 -0
  111. package/dist/util/logger.d.ts.map +1 -0
  112. package/dist/util/logger.js +9 -0
  113. package/dist/util/logger.js.map +1 -0
  114. package/dist/util/stableJson.d.ts +2 -0
  115. package/dist/util/stableJson.d.ts.map +1 -0
  116. package/dist/util/stableJson.js +22 -0
  117. package/dist/util/stableJson.js.map +1 -0
  118. package/dist/util/stackTrace.d.ts +2 -0
  119. package/dist/util/stackTrace.d.ts.map +1 -0
  120. package/dist/util/stackTrace.js +11 -0
  121. package/dist/util/stackTrace.js.map +1 -0
  122. package/package.json +74 -0
@@ -0,0 +1,237 @@
1
+ import { performance } from "node:perf_hooks";
2
+ import { API_TYPE_HTTPX_CLIENT_SEND } from "../apiTypes.js";
3
+ import { getCurrentRunScope } from "../context.js";
4
+ import { buildRequestEnvelope } from "../capture/requestEnvelope.js";
5
+ import { buildResponseEnvelope } from "../capture/responseEnvelope.js";
6
+ import { teeReadableStream } from "../capture/streamCapture.js";
7
+ import { isWhitelistedEndpoint } from "../endpointWhitelist.js";
8
+ import { wrapForStorage } from "../payload/wrap.js";
9
+ import { stableJsonStringify } from "../util/stableJson.js";
10
+ import { sanitizeStackTrace } from "../util/stackTrace.js";
11
+ import { warnOnce } from "../util/logger.js";
12
+ const FETCH_PATCHED_SYMBOL = Symbol.for("sovara.fetchPatched");
13
+ const ORIGINAL_FETCH_SYMBOL = Symbol.for("sovara.originalFetch");
14
+ const PATCH_ORIGINAL_SYMBOL = Symbol.for("sovara.fetchPatchOriginal");
15
+ function parseUrlOrUndefined(input) {
16
+ try {
17
+ if (input instanceof Request) {
18
+ return new URL(input.url);
19
+ }
20
+ return new URL(String(input));
21
+ }
22
+ catch {
23
+ return undefined;
24
+ }
25
+ }
26
+ function getOriginalFetch() {
27
+ const globalObject = globalThis;
28
+ return globalObject[ORIGINAL_FETCH_SYMBOL] ?? fetch;
29
+ }
30
+ function bodyFromEnvelope(envelope) {
31
+ let body;
32
+ if (typeof envelope.body === "string") {
33
+ body = envelope.body;
34
+ }
35
+ else if (envelope.body !== "") {
36
+ body = JSON.stringify(envelope.body);
37
+ }
38
+ return body;
39
+ }
40
+ function rebuildFetchInitFromEnvelope(init, envelope) {
41
+ const merged = { ...(init ?? {}) };
42
+ merged.method = envelope.method;
43
+ merged.headers = envelope.headers;
44
+ if (envelope.bodySupported) {
45
+ merged.body = bodyFromEnvelope(envelope);
46
+ }
47
+ else if (init && "body" in init) {
48
+ merged.body = init.body ?? undefined;
49
+ }
50
+ return merged;
51
+ }
52
+ function isRequestEnvelopeLike(value) {
53
+ if (!value || typeof value !== "object") {
54
+ return false;
55
+ }
56
+ const candidate = value;
57
+ return (typeof candidate.url === "string" &&
58
+ typeof candidate.method === "string" &&
59
+ !!candidate.headers &&
60
+ typeof candidate.headers === "object" &&
61
+ typeof candidate.bodySupported === "boolean");
62
+ }
63
+ function isStreamingResponse(response) {
64
+ const contentType = response.headers.get("content-type") ?? "";
65
+ if (/text\/event-stream/i.test(contentType)) {
66
+ return true;
67
+ }
68
+ if (/application\/x-ndjson/i.test(contentType)) {
69
+ return true;
70
+ }
71
+ if (/application\/jsonl/i.test(contentType)) {
72
+ return true;
73
+ }
74
+ if (/text\/plain/i.test(contentType)) {
75
+ const transferEncoding = response.headers.get("transfer-encoding") ?? "";
76
+ if (/chunked/i.test(transferEncoding)) {
77
+ return true;
78
+ }
79
+ }
80
+ return false;
81
+ }
82
+ export function installFetchPatch() {
83
+ const globalObject = globalThis;
84
+ if (globalObject[FETCH_PATCHED_SYMBOL]) {
85
+ return;
86
+ }
87
+ const currentFetch = globalObject.fetch;
88
+ if (typeof currentFetch !== "function") {
89
+ return;
90
+ }
91
+ const boundOriginal = currentFetch.bind(globalThis);
92
+ globalObject[ORIGINAL_FETCH_SYMBOL] = boundOriginal;
93
+ globalObject[PATCH_ORIGINAL_SYMBOL] = boundOriginal;
94
+ globalObject.fetch = (async (input, init) => {
95
+ const scope = getCurrentRunScope();
96
+ const originalFetch = getOriginalFetch();
97
+ if (!scope) {
98
+ return originalFetch(input, init);
99
+ }
100
+ const url = parseUrlOrUndefined(input);
101
+ if (!url || !isWhitelistedEndpoint(url)) {
102
+ return originalFetch(input, init);
103
+ }
104
+ if (typeof scope.client.prepareCall !== "function" ||
105
+ typeof scope.client.recordOutput !== "function" ||
106
+ typeof scope.client.recordException !== "function") {
107
+ return originalFetch(input, init);
108
+ }
109
+ const requestEnvelope = await buildRequestEnvelope(input, init);
110
+ const inputJson = stableJsonStringify(wrapForStorage(requestEnvelope));
111
+ const stackTrace = sanitizeStackTrace(new Error().stack);
112
+ let preparedCall = null;
113
+ try {
114
+ const prepared = await scope.client.prepareCall({
115
+ runId: scope.runId,
116
+ inputJson,
117
+ apiType: API_TYPE_HTTPX_CLIENT_SEND,
118
+ stackTrace,
119
+ promptSuffixJson: "[]",
120
+ prepareRuntimePriors: true,
121
+ });
122
+ preparedCall = {
123
+ nodeUuid: prepared.nodeUuid,
124
+ nodeKind: prepared.nodeKind,
125
+ preparedInputJson: prepared.preparedInputJson ?? inputJson,
126
+ promptSuffixJson: prepared.promptSuffixJson ?? "[]",
127
+ preparedRawInput: isRequestEnvelopeLike(prepared.preparedRawInput)
128
+ ? prepared.preparedRawInput
129
+ : null,
130
+ };
131
+ }
132
+ catch {
133
+ warnOnce("fetch-patch-prepare", "[sovara] Failed to prepare fetch call.");
134
+ return originalFetch(requestEnvelope.url, rebuildFetchInitFromEnvelope(init, requestEnvelope));
135
+ }
136
+ const preparedInputJson = preparedCall.preparedInputJson;
137
+ const preparedPromptSuffixJson = preparedCall.promptSuffixJson;
138
+ const preparedRequestEnvelope = preparedCall.preparedRawInput ?? requestEnvelope;
139
+ const startedAt = performance.now();
140
+ let response;
141
+ try {
142
+ response = await originalFetch(preparedRequestEnvelope.url, rebuildFetchInitFromEnvelope(init, preparedRequestEnvelope));
143
+ }
144
+ catch (error) {
145
+ const errorPayload = {
146
+ kind: "exception",
147
+ source: API_TYPE_HTTPX_CLIENT_SEND,
148
+ message: error instanceof Error ? error.message : String(error),
149
+ type: error instanceof Error ? error.name : "Error",
150
+ details: {},
151
+ };
152
+ await scope.client
153
+ .recordException({
154
+ runId: scope.runId,
155
+ nodeUuid: preparedCall.nodeUuid,
156
+ apiType: API_TYPE_HTTPX_CLIENT_SEND,
157
+ inputJson: preparedInputJson,
158
+ errorJson: stableJsonStringify(errorPayload),
159
+ latencySeconds: Math.max(0, (performance.now() - startedAt) / 1000),
160
+ stackTrace,
161
+ nodeKind: preparedCall.nodeKind,
162
+ promptSuffixJson: preparedPromptSuffixJson,
163
+ clearOutput: true,
164
+ })
165
+ .catch(() => {
166
+ warnOnce("fetch-patch-record-exception", "[sovara] Failed to finalize exception.");
167
+ });
168
+ throw error;
169
+ }
170
+ if (!response.body || !isStreamingResponse(response)) {
171
+ const responseEnvelope = await buildResponseEnvelope(response.clone());
172
+ const outputJson = stableJsonStringify(wrapForStorage(responseEnvelope));
173
+ await scope.client
174
+ .recordOutput({
175
+ runId: scope.runId,
176
+ nodeUuid: preparedCall.nodeUuid,
177
+ apiType: API_TYPE_HTTPX_CLIENT_SEND,
178
+ inputJson: preparedInputJson,
179
+ outputJson,
180
+ latencySeconds: Math.max(0, (performance.now() - startedAt) / 1000),
181
+ stackTrace,
182
+ nodeKind: preparedCall.nodeKind,
183
+ promptSuffixJson: preparedPromptSuffixJson,
184
+ })
185
+ .catch(() => {
186
+ warnOnce("fetch-patch-record-output", "[sovara] Failed to finalize response.");
187
+ });
188
+ return response;
189
+ }
190
+ const { userStream, capturedText } = teeReadableStream(response.body);
191
+ const headers = new Headers(response.headers);
192
+ void capturedText
193
+ .then(async (text) => {
194
+ const synthetic = new Response(text, {
195
+ status: response.status,
196
+ statusText: response.statusText,
197
+ headers,
198
+ });
199
+ Object.defineProperty(synthetic, "url", { value: response.url });
200
+ const responseEnvelope = await buildResponseEnvelope(synthetic);
201
+ const outputJson = stableJsonStringify(wrapForStorage(responseEnvelope));
202
+ await scope.client.recordOutput({
203
+ runId: scope.runId,
204
+ nodeUuid: preparedCall.nodeUuid,
205
+ apiType: API_TYPE_HTTPX_CLIENT_SEND,
206
+ inputJson: preparedInputJson,
207
+ outputJson,
208
+ latencySeconds: Math.max(0, (performance.now() - startedAt) / 1000),
209
+ stackTrace,
210
+ nodeKind: preparedCall.nodeKind,
211
+ promptSuffixJson: preparedPromptSuffixJson,
212
+ });
213
+ })
214
+ .catch(() => {
215
+ warnOnce("fetch-patch-stream-finalize", "[sovara] Failed to finalize stream response.");
216
+ });
217
+ const streamedResponse = new Response(userStream, {
218
+ status: response.status,
219
+ statusText: response.statusText,
220
+ headers,
221
+ });
222
+ Object.defineProperty(streamedResponse, "url", { value: response.url });
223
+ return streamedResponse;
224
+ });
225
+ globalObject[FETCH_PATCHED_SYMBOL] = true;
226
+ }
227
+ export function uninstallFetchPatchForTesting() {
228
+ const globalObject = globalThis;
229
+ const original = globalObject[PATCH_ORIGINAL_SYMBOL];
230
+ if (original) {
231
+ globalObject.fetch = original;
232
+ delete globalObject[PATCH_ORIGINAL_SYMBOL];
233
+ }
234
+ delete globalObject[ORIGINAL_FETCH_SYMBOL];
235
+ delete globalObject[FETCH_PATCHED_SYMBOL];
236
+ }
237
+ //# sourceMappingURL=fetchPatch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchPatch.js","sourceRoot":"","sources":["../../src/transport/fetchPatch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function installNodeHttpPatch(): void;
2
+ export declare function uninstallNodeHttpPatchForTesting(): void;
3
+ //# sourceMappingURL=nodeHttpPatch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodeHttpPatch.d.ts","sourceRoot":"","sources":["../../src/transport/nodeHttpPatch.ts"],"names":[],"mappings":"AA+lBA,wBAAgB,oBAAoB,IAAI,IAAI,CAyB3C;AAED,wBAAgB,gCAAgC,IAAI,IAAI,CAoBvD"}