Agent skill
integration-testing-http
Run curl-style integration checks against the docker-compose stack for HTTP APIs. Required for use-case changes.
Install this agent skill to your Project
npx add-skill https://github.com/frostaura/ai.toolkit.gaia/tree/main/.github/skills/integration-testing-http
SKILL.md
Integration Testing (HTTP via docker-compose + curl)
When to use
Use when:
- A task is flagged as use-case change (new/change/remove)
- API behavior is modified (routes, auth, payloads)
- Drift fix chooses “code wins” and affects use cases
This is required for use-case changes.
Inputs
docker-compose.ymlstack (must exist).env.example+ local.env(as needed)- Use-case file(s):
/docs/use-cases/UC-###-*.md - API base URL/port (from compose/Make)
Outputs
- Integration checks that validate use-case acceptance criteria at the HTTP boundary
- Evidence recorded as MCP proof args (paths + labels only)
- If automated integration tests are added: file paths recorded in
tests_added[] - Manual regression label recorded in
manual_regression[](label:curl)
Rules
- Always run against the compose stack (dockerized platform prerequisite).
- Prefer adding automated integration tests where the stack supports it.
- If automation is not feasible quickly, perform manual curl regression and keep it repeatable by documenting exact requests (briefly).
- Do not paste long outputs in chat.
Step 1 — Bring up the stack
Preferred:
make upConfirm:- API is reachable
- dependencies are healthy
If not reachable:
- fix compose/runtime issues first (blocking)
Step 2 — Map use-case acceptance criteria to HTTP checks
For each affected UC:
- Identify endpoints involved
- Identify inputs (headers/auth/body)
- Identify observable outputs (status code, body shape, key fields) Create a small checklist:
- “Given X, when request Y, then response Z”
Step 3 — Execute curl checks (manual regression)
Run the minimal set that proves the UC acceptance criteria:
- Happy path
- One key failure path (auth/validation) if relevant
Record:
- command snippets in your working notes (do not paste full outputs)
- final proof as MCP labels/paths only
If auth tokens/credentials are required and missing:
- call MCP
flag_needs_inputwith exact questions - continue other tasks; keep completion blocked
Step 4 — Add automated integration tests (when feasible)
If the repo supports an integration test harness:
- Add tests that hit the running service boundary (HTTP)
- Ensure they run via
make test(ormake test-integrationif repo uses a split)
Prefer:
- Existing test frameworks in repo Fallback:
- Use stack defaults (but avoid large migrations unless necessary)
Step 5 — Wire to CI
- Ensure CI can run integration tests if they are included in
make test. - If CI cannot run docker-compose due to environment constraints:
- keep integration automation local only, but still require manual regression
- document the limitation in a task note (do not mark done unless allowed by gates; in Gaia it remains gated)
Step 6 — Proof & completion (MCP)
- If you added test files: include them in
tests_added[] - Always include manual regression label:
curlinmanual_regression[]for use-case changes - Reference UC ID in notes (do not create new index files)
Suggested required_gates[]
- For use-case changes:
integration,manual-regression, plus baselinelint/build/ci
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
stack-default-dotnet-api
Opinionated baseline for .NET HTTP APIs: analyzers/formatting, unit+integration strategy, docker-compose, Makefile targets, and CI wiring.
tasking-and-proof
How the orchestrator must create/manage MCP tasks (todo/doing/done), set required_gates, handle blockers/questions, and record low-context proof for completion.
spec-consistency
Prevent and repair drift between `/docs` (source of truth), code, tests, CI, and runtime artifacts. Use before marking work done.
gaia-process
End-to-end Gaia SDLC workflow (Repo Explorer → drift/CI fixes → task graph → gated delivery → QA veto → MCP proof). Use for any work in a repo.
stack-default-web-ts
Opinionated baseline for JS/TS web repos: lint/format, tests, Playwright, docker (if HTTP API), Makefile targets, and CI wiring.
manual-regression-api
Manual backend regression via curl-like HTTP checks against the docker-compose stack. Required for API use-case changes (label: curl).
Didn't find tool you were looking for?