From 02cd75f12ae5444a8006940f25245b3f6f12fafd Mon Sep 17 00:00:00 2001 From: Fusion Date: Thu, 14 May 2026 07:07:47 +0200 Subject: [PATCH] docs(FN-049): add CI / Testing section to development.md and README.md Fusion-Task-Id: FN-049 Fusion-Task-Lineage: c0c0a1bd-b925-4d84-b529-c9f9d6dde07a --- README.md | 9 +++++++++ docs/development.md | 9 +++++++++ 2 files changed, 18 insertions(+) diff --git a/README.md b/README.md index ca622ad..528cc4b 100644 --- a/README.md +++ b/README.md @@ -72,6 +72,15 @@ This starts the API, web frontend, and PostgreSQL. | `make compose-up` | Start Docker Compose stack | | `make compose-down` | Stop Docker Compose stack | +## Continuous Integration + +All pull requests and pushes to `main` are validated by a GitHub Actions workflow (`.github/workflows/ci.yml`). The workflow runs the frontend and backend quality gates in parallel: + +- **Web CI** — lint, typecheck, and test the React frontend. +- **API CI** — lint with `ruff`, typecheck with `mypy`, and run `pytest` against a PostgreSQL service container. + +See [Development](docs/development.md) for details on running these checks locally. + ## Documentation - [Architecture](docs/architecture.md) — System design and MVP phases diff --git a/docs/development.md b/docs/development.md index bb4ecc8..9f7c824 100644 --- a/docs/development.md +++ b/docs/development.md @@ -117,6 +117,15 @@ make test pnpm test ``` +## CI / Testing + +A GitHub Actions workflow (`.github/workflows/ci.yml`) runs on every push and pull request to `main`. It executes two jobs in parallel: + +- **web-ci** — checks out the repo, installs Node.js ≥ 20 and pnpm, then runs `lint`, `typecheck`, and `test` for `@headquarter/web`. +- **api-ci** — checks out the repo, sets up Python 3.11, installs API dev dependencies (`pytest`, `ruff`, `mypy`, `httpx`), starts a PostgreSQL service container, then runs `ruff check`, `mypy`, and `pytest` for the API. + +The workflow reports pass/fail status directly on pull requests as required status checks. All commands must pass before a PR can be merged. + ## Linting and Type Checking ### Frontend