argoyle c5e81cc6b5
auth / coverage-baseline (pull_request) Has been skipped
auth / vulnerabilities (pull_request) Successful in 1m46s
auth / test (pull_request) Successful in 2m52s
pre-commit / pre-commit (pull_request) Successful in 5m25s
chore(ci): add shared-lib scaffolding and functional coverage gate
Bring the auth and logging libs up to the otelsetup/authz_client standard:
golangci-lint + .editorconfig + .testcoverage.yml + cliff.toml + renovate.json
+ CHANGELOG + CLAUDE.md + pre-commit and Release workflows. Replace the
minimal test-only CI with a cache-based coverage-regression gate (PR test job
restores main's baseline from the Actions cache; a non-gating post-merge
coverage-baseline job records it) mirroring the services (ADR-0010 carve-out).
Job names test/vulnerabilities preserved to match branch-protection contexts.
2026-06-15 19:44:14 +02:00
2026-06-15 11:43:11 +02:00
2026-06-15 11:43:11 +02:00
2026-06-15 11:43:11 +02:00
2026-06-15 11:43:11 +02:00
2026-06-15 11:43:11 +02:00

auth

Shared authentication primitives for Shiny backend services.

  • UserMiddleware(signingKey) — verifies the HMAC-signed user header the gateway propagates (ADR-0005) and injects the *User into the request context.
  • FromContext(ctx) / User.HasRole(...) — read the authenticated user.
  • MissingDeployedSecrets(env, secrets) — startup guard that fails closed when required secrets are empty in staging/production (ADR-0005/0006).

Replaces the byte-identical auth package and secrets_guard.go previously copied into every service.

S
Description
Shared authentication primitives (signed user-header middleware + deployed-secrets guard) for Shiny services
Readme 50 KiB
Languages
Go 100%