agenticreplay 0.1.11 → 0.1.13
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/README.md +6 -0
- package/node_modules/@agenticreplay/adapters/package.json +6 -6
- package/node_modules/@agenticreplay/core/package.json +3 -3
- package/node_modules/@agenticreplay/fs-capture/dist/capture.d.ts +8 -0
- package/node_modules/@agenticreplay/fs-capture/dist/capture.d.ts.map +1 -1
- package/node_modules/@agenticreplay/fs-capture/dist/capture.js +7 -1
- package/node_modules/@agenticreplay/fs-capture/dist/capture.js.map +1 -1
- package/node_modules/@agenticreplay/fs-capture/package.json +2 -2
- package/node_modules/@agenticreplay/mcp-shim/dist/cli.js +0 -0
- package/node_modules/@agenticreplay/mcp-shim/package.json +1 -1
- package/node_modules/@agenticreplay/node-instrument/package.json +1 -1
- package/node_modules/@agenticreplay/plugin-api/dist/index.d.ts +1 -0
- package/node_modules/@agenticreplay/plugin-api/dist/index.d.ts.map +1 -1
- package/node_modules/@agenticreplay/plugin-api/dist/index.js +1 -0
- package/node_modules/@agenticreplay/plugin-api/dist/index.js.map +1 -1
- package/node_modules/@agenticreplay/plugin-api/dist/memory-review.d.ts +35 -0
- package/node_modules/@agenticreplay/plugin-api/dist/memory-review.d.ts.map +1 -0
- package/node_modules/@agenticreplay/plugin-api/dist/memory-review.js +2 -0
- package/node_modules/@agenticreplay/plugin-api/dist/memory-review.js.map +1 -0
- package/node_modules/@agenticreplay/plugin-api/package.json +1 -1
- package/node_modules/@agenticreplay/providers/package.json +3 -3
- package/node_modules/@agenticreplay/proxy/dist/request-body.d.ts +9 -0
- package/node_modules/@agenticreplay/proxy/dist/request-body.d.ts.map +1 -0
- package/node_modules/@agenticreplay/proxy/dist/request-body.js +65 -0
- package/node_modules/@agenticreplay/proxy/dist/request-body.js.map +1 -0
- package/node_modules/@agenticreplay/proxy/dist/server.d.ts +3 -0
- package/node_modules/@agenticreplay/proxy/dist/server.d.ts.map +1 -1
- package/node_modules/@agenticreplay/proxy/dist/server.js +121 -124
- package/node_modules/@agenticreplay/proxy/dist/server.js.map +1 -1
- package/node_modules/@agenticreplay/proxy/package.json +5 -5
- package/node_modules/@agenticreplay/schema/package.json +1 -1
- package/node_modules/@agenticreplay/shell-shim/package.json +3 -3
- package/node_modules/@agenticreplay/viewer/dist/index.d.ts +1 -0
- package/node_modules/@agenticreplay/viewer/dist/index.d.ts.map +1 -1
- package/node_modules/@agenticreplay/viewer/dist/index.js +1 -0
- package/node_modules/@agenticreplay/viewer/dist/index.js.map +1 -1
- package/node_modules/@agenticreplay/viewer/dist/review.d.ts +41 -0
- package/node_modules/@agenticreplay/viewer/dist/review.d.ts.map +1 -0
- package/node_modules/@agenticreplay/viewer/dist/review.js +206 -0
- package/node_modules/@agenticreplay/viewer/dist/review.js.map +1 -0
- package/node_modules/@agenticreplay/viewer/package.json +2 -2
- package/node_modules/fast-uri/.github/workflows/release.yml +35 -0
- package/node_modules/fast-uri/README.md +8 -0
- package/node_modules/fast-uri/index.js +98 -18
- package/node_modules/fast-uri/lib/utils.js +52 -0
- package/node_modules/fast-uri/package.json +1 -1
- package/node_modules/fast-uri/test/host-delimiter-security.test.js +94 -0
- package/node_modules/fast-uri/test/relative-normalization-security.test.js +156 -0
- package/node_modules/fast-uri/test/reserved-path-normalization.test.js +32 -4
- package/node_modules/fast-uri/test/scheme-validation.test.js +53 -14
- package/package.json +12 -12
- package/packages/cli/dist/args.d.ts.map +1 -1
- package/packages/cli/dist/args.js +1 -0
- package/packages/cli/dist/args.js.map +1 -1
- package/packages/cli/dist/cli.js +0 -0
- package/packages/cli/dist/commands/attach.js +1 -0
- package/packages/cli/dist/commands/attach.js.map +1 -1
- package/packages/cli/dist/commands/record.d.ts.map +1 -1
- package/packages/cli/dist/commands/record.js +44 -15
- package/packages/cli/dist/commands/record.js.map +1 -1
- package/packages/cli/dist/commands/review.d.ts +4 -0
- package/packages/cli/dist/commands/review.d.ts.map +1 -0
- package/packages/cli/dist/commands/review.js +54 -0
- package/packages/cli/dist/commands/review.js.map +1 -0
- package/packages/cli/dist/config.d.ts +3 -0
- package/packages/cli/dist/config.d.ts.map +1 -1
- package/packages/cli/dist/config.js.map +1 -1
- package/packages/cli/dist/exchange-events.d.ts +2 -0
- package/packages/cli/dist/exchange-events.d.ts.map +1 -1
- package/packages/cli/dist/exchange-events.js +36 -24
- package/packages/cli/dist/exchange-events.js.map +1 -1
- package/packages/cli/dist/flags.d.ts.map +1 -1
- package/packages/cli/dist/flags.js +2 -0
- package/packages/cli/dist/flags.js.map +1 -1
- package/packages/cli/dist/fs-events.d.ts.map +1 -1
- package/packages/cli/dist/fs-events.js +16 -0
- package/packages/cli/dist/fs-events.js.map +1 -1
- package/packages/cli/dist/main.d.ts.map +1 -1
- package/packages/cli/dist/main.js +6 -0
- package/packages/cli/dist/main.js.map +1 -1
- package/packages/cli/dist/out.d.ts +6 -0
- package/packages/cli/dist/out.d.ts.map +1 -1
- package/packages/cli/dist/out.js +50 -5
- package/packages/cli/dist/out.js.map +1 -1
- package/packages/cli/dist/review-coordinator.d.ts +16 -0
- package/packages/cli/dist/review-coordinator.d.ts.map +1 -0
- package/packages/cli/dist/review-coordinator.js +141 -0
- package/packages/cli/dist/review-coordinator.js.map +1 -0
- package/packages/cli/dist/review-store.d.ts +24 -0
- package/packages/cli/dist/review-store.d.ts.map +1 -0
- package/packages/cli/dist/review-store.js +159 -0
- package/packages/cli/dist/review-store.js.map +1 -0
- package/packages/cli/dist/snapshot.d.ts +2 -0
- package/packages/cli/dist/snapshot.d.ts.map +1 -1
- package/packages/cli/dist/snapshot.js.map +1 -1
- package/packages/cli/dist/tls-capture.d.ts.map +1 -1
- package/packages/cli/dist/tls-capture.js +4 -3
- package/packages/cli/dist/tls-capture.js.map +1 -1
- package/packages/cli/package.json +11 -11
package/README.md
CHANGED
|
@@ -60,6 +60,12 @@ contain sensitive data. Review them before sharing.
|
|
|
60
60
|
See [integrations](docs/integrations.md) for other harnesses and
|
|
61
61
|
[debugging a failing run](docs/how-to/debug-a-failing-agent-run.md) for an example.
|
|
62
62
|
|
|
63
|
+
## Post-recording review
|
|
64
|
+
|
|
65
|
+
The optional [memory review queue](docs/memory-review.md) tracks a finished CLI recording and lets
|
|
66
|
+
you reopen its review by exact run ID. Candidate preparation and saving need a compatible
|
|
67
|
+
Kiokuko host integration.
|
|
68
|
+
|
|
63
69
|
## License
|
|
64
70
|
|
|
65
71
|
Apache-2.0. Trace specification: CC BY 4.0.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agenticreplay/adapters",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.13",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -17,11 +17,11 @@
|
|
|
17
17
|
"dist"
|
|
18
18
|
],
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@agenticreplay/core": "0.1.
|
|
21
|
-
"@agenticreplay/node-instrument": "0.1.
|
|
22
|
-
"@agenticreplay/plugin-api": "0.1.
|
|
23
|
-
"@agenticreplay/proxy": "0.1.
|
|
24
|
-
"@agenticreplay/shell-shim": "0.1.
|
|
20
|
+
"@agenticreplay/core": "0.1.13",
|
|
21
|
+
"@agenticreplay/node-instrument": "0.1.13",
|
|
22
|
+
"@agenticreplay/plugin-api": "0.1.13",
|
|
23
|
+
"@agenticreplay/proxy": "0.1.13",
|
|
24
|
+
"@agenticreplay/shell-shim": "0.1.13"
|
|
25
25
|
},
|
|
26
26
|
"engines": {
|
|
27
27
|
"node": ">=24.0.0"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agenticreplay/core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.13",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -17,8 +17,8 @@
|
|
|
17
17
|
"dist"
|
|
18
18
|
],
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@agenticreplay/plugin-api": "0.1.
|
|
21
|
-
"@agenticreplay/schema": "0.1.
|
|
20
|
+
"@agenticreplay/plugin-api": "0.1.13",
|
|
21
|
+
"@agenticreplay/schema": "0.1.13",
|
|
22
22
|
"any-ascii": "0.3.3"
|
|
23
23
|
},
|
|
24
24
|
"engines": {
|
|
@@ -11,6 +11,14 @@ export interface FsCaptureOptions {
|
|
|
11
11
|
}
|
|
12
12
|
export interface TurnSnapshot {
|
|
13
13
|
changes: FileChange[];
|
|
14
|
+
/**
|
|
15
|
+
* The turn whose sample already covers this turn's window, set only when this call sampled
|
|
16
|
+
* nothing because that later turn was sampled first: the harness can hold exchanges in flight
|
|
17
|
+
* at once, so they reach the recorder in completion order, not request order. Re-sampling
|
|
18
|
+
* would describe the tree as it is *after* that later turn and reattribute its changes to this
|
|
19
|
+
* turn. Absent from every ordinary snapshot, whose diff is complete for its own window.
|
|
20
|
+
*/
|
|
21
|
+
coveredBy?: number;
|
|
14
22
|
/**
|
|
15
23
|
* Nested repositories inside a declared artifact path that this snapshot could not hold, named
|
|
16
24
|
* the first time each is seen. Absent from every ordinary snapshot; see
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capture.d.ts","sourceRoot":"","sources":["../src/capture.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGlE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB;;;;OAIG;IACH,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;CACpD;AAED;;;;;;GAMG;AACH,qBAAa,SAAS;IAKlB,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAP7B,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,QAAQ,CAAM;IAEtB,OAAO;IAOP,+FAA+F;WAClF,KAAK,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC;IAexD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;WAIjB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAItC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"capture.d.ts","sourceRoot":"","sources":["../src/capture.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGlE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;CACpD;AAED;;;;;;GAMG;AACH,qBAAa,SAAS;IAKlB,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAP7B,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,QAAQ,CAAM;IAEtB,OAAO;IAOP,+FAA+F;WAClF,KAAK,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC;IAexD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;WAIjB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAItC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IA6BvD,8FAA8F;IAC9F,IAAI,iBAAiB,IAAI,SAAS,MAAM,EAAE,CAEzC;IAED,4FAA4F;IAC5F,IAAI,kBAAkB,IAAI,SAAS,kBAAkB,EAAE,CAEtD;IAED;;;OAGG;IACG,OAAO,CAAC,GAAG,GAAE,MAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IAkBvD;;;;;;;;OAQG;YACW,cAAc;CAiB7B"}
|
|
@@ -50,7 +50,13 @@ export class FsCapture {
|
|
|
50
50
|
throw new Error(`turn must be a non-negative integer, got ${turn}`);
|
|
51
51
|
}
|
|
52
52
|
if (turn < this.lastTurn) {
|
|
53
|
-
|
|
53
|
+
// Out of order, not corruption. A gone-backwards turn means the recorder sampled a later
|
|
54
|
+
// turn first — the harness had exchanges in flight at once, so completion order is not
|
|
55
|
+
// request order, and a turn can arrive after its own window was covered. The later
|
|
56
|
+
// sample is the one that saw that tree; sampling again now would describe the tree as it
|
|
57
|
+
// is after that later turn and reattribute its changes to this turn. So no sample, and
|
|
58
|
+
// the flag tells the caller to record, not warn.
|
|
59
|
+
return { changes: [], coveredBy: this.lastTurn };
|
|
54
60
|
}
|
|
55
61
|
const tree = await this.shadow.snapshot();
|
|
56
62
|
const previous = this.previousTree;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capture.js","sourceRoot":"","sources":["../src/capture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"capture.js","sourceRoot":"","sources":["../src/capture.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agenticreplay/fs-capture",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.13",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"dist"
|
|
18
18
|
],
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@agenticreplay/schema": "0.1.
|
|
20
|
+
"@agenticreplay/schema": "0.1.13"
|
|
21
21
|
},
|
|
22
22
|
"engines": {
|
|
23
23
|
"node": ">=24.0.0"
|
|
File without changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/** A sealed recording of a single CLI process. It can span multiple conversation turns. */
|
|
2
|
+
export interface RecordingReviewSource {
|
|
3
|
+
readonly version: 1;
|
|
4
|
+
readonly kind: 'recorded_process';
|
|
5
|
+
readonly repository: string;
|
|
6
|
+
readonly runId: string;
|
|
7
|
+
readonly hostSessionId: null;
|
|
8
|
+
readonly range: {
|
|
9
|
+
readonly kind: 'whole_run';
|
|
10
|
+
readonly events: number;
|
|
11
|
+
};
|
|
12
|
+
readonly manifestDigest: string;
|
|
13
|
+
readonly eventsDigest: string;
|
|
14
|
+
readonly capture: 'complete' | 'incomplete' | 'unverified';
|
|
15
|
+
readonly captureIssues: readonly string[];
|
|
16
|
+
readonly exitCode: number;
|
|
17
|
+
}
|
|
18
|
+
export interface ReviewCandidate {
|
|
19
|
+
readonly title: string;
|
|
20
|
+
readonly body: string;
|
|
21
|
+
readonly evidence: readonly {
|
|
22
|
+
readonly sequence: number;
|
|
23
|
+
readonly kind: 'observed' | 'inferred' | 'unverified';
|
|
24
|
+
readonly description: string;
|
|
25
|
+
}[];
|
|
26
|
+
}
|
|
27
|
+
/** Read-only host integration. The preparer owns trace input validation and secret removal. */
|
|
28
|
+
export interface ReviewPreparer {
|
|
29
|
+
prepare(input: {
|
|
30
|
+
source: RecordingReviewSource;
|
|
31
|
+
traceDirectory: string;
|
|
32
|
+
signal: AbortSignal;
|
|
33
|
+
}): Promise<ReviewCandidate | null>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=memory-review.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory-review.d.ts","sourceRoot":"","sources":["../src/memory-review.ts"],"names":[],"mappings":"AAAA,2FAA2F;AAC3F,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACxE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,YAAY,GAAG,YAAY,CAAC;IAC3D,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,SAAS;QAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,GAAG,YAAY,CAAC;QACtD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KAC9B,EAAE,CAAC;CACL;AAED,+FAA+F;AAC/F,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,KAAK,EAAE;QACb,MAAM,EAAE,qBAAqB,CAAC;QAC9B,cAAc,EAAE,MAAM,CAAC;QACvB,MAAM,EAAE,WAAW,CAAC;KACrB,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;CACrC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory-review.js","sourceRoot":"","sources":["../src/memory-review.ts"],"names":[],"mappings":""}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agenticreplay/providers",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.13",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -17,8 +17,8 @@
|
|
|
17
17
|
"dist"
|
|
18
18
|
],
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@agenticreplay/plugin-api": "0.1.
|
|
21
|
-
"@agenticreplay/schema": "0.1.
|
|
20
|
+
"@agenticreplay/plugin-api": "0.1.13",
|
|
21
|
+
"@agenticreplay/schema": "0.1.13"
|
|
22
22
|
},
|
|
23
23
|
"engines": {
|
|
24
24
|
"node": ">=24.0.0"
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { IncomingMessage } from 'node:http';
|
|
2
|
+
/** A capture limit limits retention, never the request sent to the provider. */
|
|
3
|
+
export declare function readRequestBody(req: IncomingMessage, limit: number, reserve: (bytes: number) => boolean, release: (bytes: number) => void): Promise<{
|
|
4
|
+
buffer?: Buffer;
|
|
5
|
+
stream?: ReadableStream<Uint8Array>;
|
|
6
|
+
bytes: () => number;
|
|
7
|
+
dispose: () => void;
|
|
8
|
+
}>;
|
|
9
|
+
//# sourceMappingURL=request-body.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-body.d.ts","sourceRoot":"","sources":["../src/request-body.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAGjD,gFAAgF;AAChF,wBAAsB,eAAe,CACnC,GAAG,EAAE,eAAe,EACpB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,EACnC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAC/B,OAAO,CAAC;IACT,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;IACpC,KAAK,EAAE,MAAM,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC,CA4DD"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { Readable } from 'node:stream';
|
|
2
|
+
/** A capture limit limits retention, never the request sent to the provider. */
|
|
3
|
+
export async function readRequestBody(req, limit, reserve, release) {
|
|
4
|
+
const chunks = [];
|
|
5
|
+
const iterator = req[Symbol.asyncIterator]();
|
|
6
|
+
let bytes = 0;
|
|
7
|
+
let reserved = 0;
|
|
8
|
+
const dispose = () => {
|
|
9
|
+
release(reserved);
|
|
10
|
+
reserved = 0;
|
|
11
|
+
chunks.length = 0;
|
|
12
|
+
};
|
|
13
|
+
try {
|
|
14
|
+
while (true) {
|
|
15
|
+
const next = await iterator.next();
|
|
16
|
+
if (next.done)
|
|
17
|
+
return { buffer: Buffer.concat(chunks), bytes: () => bytes, dispose };
|
|
18
|
+
const chunk = next.value;
|
|
19
|
+
bytes += chunk.length;
|
|
20
|
+
if (bytes <= limit && reserve(chunk.length)) {
|
|
21
|
+
reserved += chunk.length;
|
|
22
|
+
chunks.push(chunk);
|
|
23
|
+
continue;
|
|
24
|
+
}
|
|
25
|
+
// Do not exit a for-await loop here: its implicit return() destroys IncomingMessage.
|
|
26
|
+
// Hand the same iterator to fetch and stream the remainder with its backpressure.
|
|
27
|
+
async function* forward() {
|
|
28
|
+
try {
|
|
29
|
+
while (chunks.length > 0) {
|
|
30
|
+
const prefix = chunks.shift();
|
|
31
|
+
yield prefix;
|
|
32
|
+
const held = Math.min(reserved, prefix.length);
|
|
33
|
+
reserved -= held;
|
|
34
|
+
release(held);
|
|
35
|
+
}
|
|
36
|
+
yield chunk;
|
|
37
|
+
while (true) {
|
|
38
|
+
const part = await iterator.next();
|
|
39
|
+
if (part.done)
|
|
40
|
+
return;
|
|
41
|
+
const tail = part.value;
|
|
42
|
+
bytes += tail.length;
|
|
43
|
+
yield tail;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
finally {
|
|
47
|
+
dispose();
|
|
48
|
+
await iterator.return?.();
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return {
|
|
52
|
+
stream: Readable.toWeb(Readable.from(forward(), { objectMode: false, highWaterMark: 65536 }), {
|
|
53
|
+
strategy: { highWaterMark: 65536, size: (chunk) => chunk.byteLength },
|
|
54
|
+
}),
|
|
55
|
+
bytes: () => bytes,
|
|
56
|
+
dispose,
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
dispose();
|
|
62
|
+
throw error;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=request-body.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-body.js","sourceRoot":"","sources":["../src/request-body.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,gFAAgF;AAChF,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAoB,EACpB,KAAa,EACb,OAAmC,EACnC,OAAgC;IAOhC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;IAC7C,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,OAAO,CAAC,QAAQ,CAAC,CAAC;QAClB,QAAQ,GAAG,CAAC,CAAC;QACb,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IACpB,CAAC,CAAC;IACF,IAAI,CAAC;QACH,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,IAAI;gBAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;YACrF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,CAAC;YACnC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC;YACtB,IAAI,KAAK,IAAI,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5C,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC;gBACzB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACnB,SAAS;YACX,CAAC;YACD,qFAAqF;YACrF,kFAAkF;YAClF,KAAK,SAAS,CAAC,CAAC,OAAO;gBACrB,IAAI,CAAC;oBACH,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,EAAG,CAAC;wBAC/B,MAAM,MAAM,CAAC;wBACb,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;wBAC/C,QAAQ,IAAI,IAAI,CAAC;wBACjB,OAAO,CAAC,IAAI,CAAC,CAAC;oBAChB,CAAC;oBACD,MAAM,KAAK,CAAC;oBACZ,OAAO,IAAI,EAAE,CAAC;wBACZ,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;wBACnC,IAAI,IAAI,CAAC,IAAI;4BAAE,OAAO;wBACtB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAe,CAAC;wBAClC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC;wBACrB,MAAM,IAAI,CAAC;oBACb,CAAC;gBACH,CAAC;wBAAS,CAAC;oBACT,OAAO,EAAE,CAAC;oBACV,MAAM,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC5B,CAAC;YACH,CAAC;YACD,OAAO;gBACL,MAAM,EAAE,QAAQ,CAAC,KAAK,CACpB,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,EACrE;oBACE,QAAQ,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,KAAiB,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE;iBAClF,CAC4B;gBAC/B,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK;gBAClB,OAAO;aACR,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,CAAC;QACV,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -140,6 +140,8 @@ export interface ProxyOptions {
|
|
|
140
140
|
upstream?: Record<string, string>;
|
|
141
141
|
dialects?: Dialect[];
|
|
142
142
|
onExchange?: (e: RecordedExchange) => void;
|
|
143
|
+
/** Keep completed bodies for exchanges(); default true. Disk recorders should disable this. */
|
|
144
|
+
retainExchanges?: boolean;
|
|
143
145
|
onRequestStart?: (request: NetRequest) => void | Promise<void>;
|
|
144
146
|
maxCapturedBytes?: number;
|
|
145
147
|
maxBufferedBytes?: number;
|
|
@@ -171,6 +173,7 @@ export interface ProxyHandle {
|
|
|
171
173
|
url: string;
|
|
172
174
|
port: number;
|
|
173
175
|
stats(): ProxyStats;
|
|
176
|
+
/** Empty when retainExchanges is false; onExchange still receives every completed exchange. */
|
|
174
177
|
exchanges(): RecordedExchange[];
|
|
175
178
|
/** Present only when TLS interception is on. */
|
|
176
179
|
tls?: TlsInterceptInfo;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|