ZagTrader AMTP
Automated Multi-Agent Testing Pipeline — production-grade end-to-end test generation via private GitHub integration and stateless LLM orchestration.
What is AMTP?
AMTP is a web-based platform that allows non-technical business users — product managers, QA leads, and analysts — to connect a private GitHub repository and, in a matter of minutes, receive a production-ready end-to-end test suite delivered as a reviewed pull request. A deterministic Temporal orchestrator coordinates three stateless LLM agents — Repo Crawler, Test Case Generator, and Test Engineer — each operating in a hard-reset context window with structured JSON handoffs persisted to Postgres.
The sole output is a GitHub pull request containing Playwright or Maestro test code, created via the non-destructive Git Trees API. AMTP generates tests; it does not execute them.
Architectural future state The LLM agents and Temporal orchestrator are planned. See Architecture → System Architecture for the full implementation note.
Quick Facts
| Component | Detail |
|---|---|
| Orchestrator | Temporal (deterministic workflow engine) |
| LLM agents | Repo Crawler, Test Case Generator, Test Engineer |
| LLM context strategy |
Stateless — hard reset between agents; JSON handoffs via
Postgres artifacts table
|
| Output | GitHub PR with Playwright or Maestro test code via Git Trees API |
| Database |
PostgreSQL 15 — port 5432 (direct),
6432 (PgBouncer)
|
| Cache layer |
Valkey 8.0 — port 6379 — 512 MB LRU,
zero persistence
|
| Artifact storage |
Garage (S3-compatible) — port 3900 —
7-day retention (planned)
|
| Healthcheck |
Node.js / Express — port 8083 (host) /
8080 (container)
|
| CI/CD runner |
RHEL self-hosted GitHub Actions worker, label
amtp-dev
|
| Migration tool | Flyway 10 — 6 versioned migrations (V1–V6) |
| Repository commit | 65dc8892437869d34da5d0cc9eed3861709d1266 |
Documentation Pages
Repository Layout
-
apps/
- github-mcp/Streamable-HTTP MCP server (repo.tree, repo.read_file)
- healthcheck/Node.js/Express Valkey health probe
-
infra/
-
postgres/
- postgresql.confdev-tuned Postgres configuration
-
valkey/
- NAMESPACES.mdkey namespace & TTL contract
-
postgres/
-
migrations/
- flyway.confFlyway connection configuration
-
sql/
- V1__projects.sql
- V2__runs.sql
- V3__stages.sql
- V4__artifacts.sql
- V5__approvals.sql
- V6__indexes.sql
- V6__indexes.sql.confexecuteInTransaction=false
-
.github/workflows/
- ci-cd.ymlroot orchestrator workflow
- db-ci-cd.ymldatabase validation + migration
- healthcheck-ci-cd.ymlhealthcheck build + deploy
- github-mcp-ci-cd.ymlGitHub MCP typecheck, test, build + deploy
- docs-ci-cd.ymldocs build, index, deploy
- observability-ci-cd.ymlOTel stack + trace verify
- apps/otel-verify/synthetic LLM trace emitter
- docker-compose.yml
- docker-compose.override.ymlloopback port bindings (postgres, valkey)
- docker-compose.observability.ymlobservability stack (separate project)
- .env.example