Skip to content

feat: add k6 per-endpoint load tests for issues #801-#804 - #831

Open
emmanueltony792-blip wants to merge 1 commit into
harystyleseze:mainfrom
emmanueltony792-blip:feat/load-tests-801-804
Open

feat: add k6 per-endpoint load tests for issues #801-#804#831
emmanueltony792-blip wants to merge 1 commit into
harystyleseze:mainfrom
emmanueltony792-blip:feat/load-tests-801-804

Conversation

@emmanueltony792-blip

Copy link
Copy Markdown
  • load/pharmacy-compare.js (k6 per-endpoint load test for GET /pharmacy/compare #801): ramping VUs against GET /pharmacy/compare with varied drug+zip params; p95/p99 latency thresholds, zero 5xx gate, custom metric for non-empty comparison results

  • load/drug-interactions.js (k6 per-endpoint load test for GET /drug/interactions #802): small + large drug list scenarios for GET /drug/interactions; verifies O(n²) cap rejections, p95 latency, records interaction-pair counts

  • load/pharmacy-order.js (k6 load test for POST /pharmacy/order (MPP charge path) #803): burst + sustained concurrent POST /pharmacy/order against mock MPP facilitator; order-count integrity check in handleSummary, 503 throttle bound threshold

  • load/agent-stream.js (k6 concurrency/soak test for GET /agent/stream SSE connections #804): soak (30 VUs × 2 min) + churn scenarios for GET /agent/stream SSE; post-run /agent/status health probe verifies event loop did not stall, documents memory/connection-leak verification steps

  • package.json: add load:pharmacy-compare, load:drug-interactions, load:pharmacy-order, load:agent-stream npm scripts

  • .gitignore: add test snapshots (snapshots/, *.snap), coverage, playwright results, k6 output files, OS artefacts, temp files

Closes #
closes #801
closes #802
closes #803
closes #804

What changed

How to test

Checklist

  • CI passes (typecheck, lint, tests)
  • No sensitive data files (data/spending.json, data/orders.json) committed
  • PR linked to an issue

…ystyleseze#804

- load/pharmacy-compare.js (harystyleseze#801): ramping VUs against GET /pharmacy/compare
  with varied drug+zip params; p95/p99 latency thresholds, zero 5xx gate,
  custom metric for non-empty comparison results

- load/drug-interactions.js (harystyleseze#802): small + large drug list scenarios for
  GET /drug/interactions; verifies O(n²) cap rejections, p95 latency,
  records interaction-pair counts

- load/pharmacy-order.js (harystyleseze#803): burst + sustained concurrent POST /pharmacy/order
  against mock MPP facilitator; order-count integrity check in handleSummary,
  503 throttle bound threshold

- load/agent-stream.js (harystyleseze#804): soak (30 VUs × 2 min) + churn scenarios for
  GET /agent/stream SSE; post-run /agent/status health probe verifies event
  loop did not stall, documents memory/connection-leak verification steps

- package.json: add load:pharmacy-compare, load:drug-interactions,
  load:pharmacy-order, load:agent-stream npm scripts

- .gitignore: add test snapshots (__snapshots__/, *.snap), coverage,
  playwright results, k6 output files, OS artefacts, temp files
@vercel

vercel Bot commented Jul 24, 2026

Copy link
Copy Markdown

@emmanueltony792-blip is attempting to deploy a commit to the Harrison Eze's projects Team on Vercel.

A member of the Team first needs to authorize it.

@drips-wave

drips-wave Bot commented Jul 24, 2026

Copy link
Copy Markdown

@emmanueltony792-blip Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant