feat: add six specialized Claude agent definitions under .claude/agents for audit, devii, docs, dry, fanout, and frontend maintenance

This commit is contained in:
2026-06-13 18:34:47 +00:00
parent ede7a863b7
commit de745f7a75
107 changed files with 2611 additions and 517 deletions
+3 -3
View File
@@ -5,7 +5,7 @@ How DevPlace verifies itself: an end-to-end browser suite, in-process unit tests
## Three tiers, a directory tree that mirrors the path
The `tests/` directory holds the correctness suite: 932 tests organised into three category directories by *what each test exercises*. Within each tier the **directory structure mirrors the path** - one segment per directory, the last segment is the file:
The `tests/` directory holds the correctness suite: 932 tests in three category directories by *what each test exercises*. Within each tier the **directory structure mirrors the path** - one segment per directory, the last segment is the file:
- **`tests/api/` - HTTP integration tests.** `requests`/`httpx` drive a real Uvicorn server (`app_server`) and assert on status, JSON, and headers without a browser. **Organised by endpoint path.**
- **`tests/e2e/` - end-to-end (Playwright).** A real Chromium browser drives the same Uvicorn server, covering anything a user sees or clicks. **Organised by endpoint path.**
@@ -21,7 +21,7 @@ Every directory is a Python package (`__init__.py`). Files are not `test_`-prefi
## The load layer
`locustfile.py` is a separate concern: it does not assert correctness, it measures throughput and latency under concurrent traffic. It spins up its own server on its own port against a throwaway database, then floods it with simulated users. Run it from `make locust` (interactive web UI) or `make locust-headless` (CI-style, writes an HTML report). See [Load testing with Locust](/docs/testing-locust.html).
`locustfile.py` does not assert correctness; it measures throughput and latency under concurrent traffic. It spins up its own server on its own port against a throwaway database, then floods it with simulated users. Run it from `make locust` (interactive web UI) or `make locust-headless` (CI-style, writes an HTML report). See [Load testing with Locust](/docs/testing-locust.html).
## Coverage and continuous delivery
@@ -29,5 +29,5 @@ Every run is measured for coverage (`coverage.py` over the `devplacepy` package,
## The cardinal rule
**Every user-facing feature requires an end-to-end Playwright test.** A JSON endpoint or data helper may be covered by an in-process test alone, but anything rendered in the browser must be exercised through the browser. A feature is not complete until its E2E test passes. The framework conventions that make these tests reliable are documented in [Test framework and rules](/docs/testing-framework.html).
**Every user-facing feature requires an end-to-end Playwright test.** A JSON endpoint or data helper may be covered by an in-process test alone, but anything rendered in the browser must be exercised through the browser. A feature is not complete until its E2E test passes. The framework conventions behind reliable tests are documented in [Test framework and rules](/docs/testing-framework.html).
</div>