Problem
CPA ships 4 extensions (docker, docker-compose, postgres, vscode) vs CNA’s 51. After layered CI (#46/#47), the catalog is trustworthy but thin. Growth needs a curated extension pack with L2 coverage, not a random dump.
Proposed pack (v1)
| Extension |
Purpose |
L2 template |
sqlalchemy / alembic |
ORM + migrations for FastAPI |
fastapi-starter |
redis |
Cache/queue client |
fastapi-starter |
sentry |
Error tracking |
both starters |
auth-jwt or auth-session |
Auth skeleton |
fastapi-starter |
Optional stretch: celery as extension if celery-worker template (#37) is deferred.
Acceptance criteria
References
Problem
CPA ships 4 extensions (
docker,docker-compose,postgres,vscode) vs CNA’s 51. After layered CI (#46/#47), the catalog is trustworthy but thin. Growth needs a curated extension pack with L2 coverage, not a random dump.Proposed pack (v1)
sqlalchemy/alembicfastapi-starterredisfastapi-startersentryauth-jwtorauth-sessionfastapi-starterOptional stretch:
celeryas extension ifcelery-workertemplate (#37) is deferred.Acceptance criteria
cpa.extension.json+package/+ slot hooksextensions/index.jsonwith correctcategory(database/ci/ etc.)docs/ADDING_EXTENSIONS.mdexamples updated if patterns changemainReferences
cna-templates/extensions/*