Context
Borrowed from IBM/mcp-context-forge which has modular workflows with concurrency control and path-based filtering.
FastStack has no CI — make check only runs locally.
What to do
- Add
.github/workflows/ci.yml:
- Trigger: push to main, PRs to main
- Concurrency: cancel stale runs on same branch
- Steps:
make install → make check (lint + typecheck + test with coverage)
- Python 3.12 matrix (expand to 3.13 later)
- Add branch protection rules requiring CI to pass before merge
Acceptance criteria
- PRs show green/red CI status
make check runs on every push and PR
Context
Borrowed from IBM/mcp-context-forge which has modular workflows with concurrency control and path-based filtering.
FastStack has no CI —
make checkonly runs locally.What to do
.github/workflows/ci.yml:make install→make check(lint + typecheck + test with coverage)Acceptance criteria
make checkruns on every push and PR