feat(api): M4.2 — REST surface + pgx Postgres store + OpenAPI 3.1
ci / shared (push) Successful in 6s
ci / test (push) Successful in 1m15s
ci / image (push) Has been skipped

Full M4.2 deliverable: 16 endpoints (tenants CRUD + lifecycle, catalog, entitlements, API keys with argon2 hashing, audit append + filter), Store interface with pgx-backed Postgres + in-memory parallel implementations exercised by the same eachStore harness, openapi.yaml at 3.1 with kin-openapi contract test. M4.3 adds auth.

Refs: M4.2
This commit was merged in pull request #7.
This commit is contained in:
2026-05-19 10:51:59 +00:00
parent d66760b246
commit ffab866c87
26 changed files with 3115 additions and 266 deletions
+7 -4
View File
@@ -77,10 +77,13 @@ jobs:
with: { version: v2.12.2 }
- name: test
# Coverage scoped to ./internal/... — cmd/server is the entrypoint
# with signal-handling + bind that isn't worth unit-testing. When
# real integration tests land in M4.1, widen this back to ./...
run: go test -race -coverprofile=cover.out ./internal/...
# Test runs the packages that HAVE test files (server, config). The
# store package is exercised end-to-end via the server's eachStore
# harness against both Memory and Postgres, so we don't need its
# own test binary — and including it triggers a covdata-tool error
# on packages with no _test.go files. -coverpkg makes the server's
# exercise of store/* count toward coverage.
run: go test -race -coverpkg=./internal/... -coverprofile=cover.out ./internal/server/... ./internal/config/...
- name: coverage gate
run: |