Context\nCore middleware, package gate, contract parity, and residual forwarding tests are merged (#23-#28). Remaining evidence gap: benchmark methodology does not clearly measure decision overhead and streaming behavior, and protocol-boundary abort/timeout legality is not documented as a reproducible fixture.\n\n## Scope\nInspect existing benchmark/demo scripts, , , and tests. Keep benchmark deterministic and local; no provider credentials or network dependency.\n\n## Design\nAdd a small benchmark fixture or script under plus documented methodology. Measure: (1) middleware decision overhead over repeated synthetic requests, (2) streaming first-byte/event forwarding latency over a deterministic ReadableStream, (3) abort/timeout/retry outcomes. Report sample count, median, p95, environment, and limitations. Do not claim throughput, provider availability, or production SLA.\n\n## Acceptance criteria\n- [ ] Benchmark runs from a clean checkout with one documented command.\n- [ ] No network, credentials, live provider, or generated tracked artifacts required.\n- [ ] Reports decision overhead and streaming behavior with median/p95 and sample count.\n- [ ] Includes deterministic abort, timeout, retryable-status, malformed-SSE cases.\n- [ ] Documents unsupported claims and environment limitations.\n- [ ] Existing console.warn
[Forwarder] Model gpt-4 returned 429. Retrying in 0ms (attempt 1/3)...
489 | : calculateRetryDelay(attempt, this.config.retryDelayMs);
490 |
> 491 | console.warn(
| ^
492 | `[Forwarder] Model ${model} returned ${response.status}. Retrying in ${delay}ms (attempt ${attempt + 1}/${this.config.maxRetries})...`
493 | );
494 |
at executeRequest (src/middleware/forwarder.ts:491:23)
at src/middleware/forwarder.ts:566:9
console.warn
[Forwarder] Model gpt-4 returned 503. Retrying in 10.589150736931199ms (attempt 1/3)...
489 | : calculateRetryDelay(attempt, this.config.retryDelayMs);
490 |
> 491 | console.warn(
| ^
492 | `[Forwarder] Model ${model} returned ${response.status}. Retrying in ${delay}ms (attempt ${attempt + 1}/${this.config.maxRetries})...`
493 | );
494 |
at executeRequest (src/middleware/forwarder.ts:491:23)
at src/middleware/forwarder.ts:566:9, typecheck, format, build, package verification remain green.\n- [ ] Add focused tests for any new behavior.\n\n## Verification\n
added 407 packages, and audited 408 packages in 3s
77 packages are looking for funding
run npm fund for details
1 high severity vulnerability
To address all issues, run:
npm audit fix
Run npm audit for details.
Checking formatting...
All matched files use Prettier code style!
console.warn
[Forwarder] Model gpt-4 returned 429. Retrying in 0ms (attempt 1/3)...
489 | : calculateRetryDelay(attempt, this.config.retryDelayMs);
490 |
> 491 | console.warn(
| ^
492 | `[Forwarder] Model ${model} returned ${response.status}. Retrying in ${delay}ms (attempt ${attempt + 1}/${this.config.maxRetries})...`
493 | );
494 |
at executeRequest (src/middleware/forwarder.ts:491:23)
at src/middleware/forwarder.ts:566:9
console.warn
[Forwarder] Model gpt-4 returned 503. Retrying in 10.221488153487632ms (attempt 1/3)...
489 | : calculateRetryDelay(attempt, this.config.retryDelayMs);
490 |
> 491 | console.warn(
| ^
492 | `[Forwarder] Model ${model} returned ${response.status}. Retrying in ${delay}ms (attempt ${attempt + 1}/${this.config.maxRetries})...`
493 | );
494 |
at executeRequest (src/middleware/forwarder.ts:491:23)
at src/middleware/forwarder.ts:566:9
Verified 24 shipped files, clean ESM imports, and TypeScript declarations.\n\n## Implementation notes\nPreserve fail-closed Core decision behavior when configured. Do not reintroduce heuristic routing as an authorization bypass. Link the PR to this issue and attach a sample reproducible output.
Context\nCore middleware, package gate, contract parity, and residual forwarding tests are merged (#23-#28). Remaining evidence gap: benchmark methodology does not clearly measure decision overhead and streaming behavior, and protocol-boundary abort/timeout legality is not documented as a reproducible fixture.\n\n## Scope\nInspect existing benchmark/demo scripts, , , and tests. Keep benchmark deterministic and local; no provider credentials or network dependency.\n\n## Design\nAdd a small benchmark fixture or script under plus documented methodology. Measure: (1) middleware decision overhead over repeated synthetic requests, (2) streaming first-byte/event forwarding latency over a deterministic ReadableStream, (3) abort/timeout/retry outcomes. Report sample count, median, p95, environment, and limitations. Do not claim throughput, provider availability, or production SLA.\n\n## Acceptance criteria\n- [ ] Benchmark runs from a clean checkout with one documented command.\n- [ ] No network, credentials, live provider, or generated tracked artifacts required.\n- [ ] Reports decision overhead and streaming behavior with median/p95 and sample count.\n- [ ] Includes deterministic abort, timeout, retryable-status, malformed-SSE cases.\n- [ ] Documents unsupported claims and environment limitations.\n- [ ] Existing console.warn
console.warn
[Forwarder] Model gpt-4 returned 503. Retrying in 10.589150736931199ms (attempt 1/3)...
added 407 packages, and audited 408 packages in 3s
77 packages are looking for funding
run
npm fundfor details1 high severity vulnerability
To address all issues, run:
npm audit fix
Run
npm auditfor details.Checking formatting...
All matched files use Prettier code style!
console.warn
[Forwarder] Model gpt-4 returned 429. Retrying in 0ms (attempt 1/3)...
console.warn
[Forwarder] Model gpt-4 returned 503. Retrying in 10.221488153487632ms (attempt 1/3)...
Verified 24 shipped files, clean ESM imports, and TypeScript declarations.\n\n## Implementation notes\nPreserve fail-closed Core decision behavior when configured. Do not reintroduce heuristic routing as an authorization bypass. Link the PR to this issue and attach a sample reproducible output.