Skip to content

chore(creds): credential schema + self-diagnosis + register C-108 (architecture deferred to #280) - #281

Merged
Polichinel merged 1 commit into
developmentfrom
chore/credential-hygiene
Jul 27, 2026
Merged

chore(creds): credential schema + self-diagnosis + register C-108 (architecture deferred to #280)#281
Polichinel merged 1 commit into
developmentfrom
chore/credential-hygiene

Conversation

@Polichinel

Copy link
Copy Markdown
Collaborator

Immediate, non-architectural hygiene from the credential audit (reports/security/appwrite_credentials_audit.md). Ships:

  • .env.example — the canonical credential schema (names only; never values). A fresh checkout now sees exactly what it needs.
  • tools/check_credentials.pypython tools/check_credentials.py reports precisely which keys are missing (stdlib; reads .env.example as the schema; never prints values).
  • tests/test_credentials_presence.py (green) — guards the schema + the checker's logic.
  • register C-108 (Tier 2) — no durable/backed-up source of truth for the platform secrets a UN service depends on; hardcoded /home/sonja bootstrap path; no independent revocation. Not a leak — nothing secret is in git (full history verified); this is a fragility/recoverability risk.

Explicitly out of scope: the real secrets-management architecture is deferred to a tracked investigation (#280) per maintainer decision — no architecture chosen here, no GPG/interim scheme adopted. The populated .env is the maintainer's, never committed.

ruff clean; the presence test passes 3/3; no .env staged. 🤖 Generated with Claude Code

…er the architecture gap (C-108)

Immediate, non-architectural hygiene from the 2026-07-27 credential audit:
- .env.example: the canonical credential schema (names only, no values) so a
  fresh checkout sees what it needs instead of reading code.
- tools/check_credentials.py: one command reporting exactly which keys are
  missing (stdlib; reads .env.example as the schema; never prints values).
- tests/test_credentials_presence.py (green): guards the schema + checker logic.
- register C-108 (Tier 2): no durable/backed-up source of truth for platform
  secrets; hardcoded /home/sonja bootstrap path; no per-person revocation.
  NOT a leak (nothing secret in git, full-history verified) — a fragility risk.

The real secrets-management architecture is deliberately DEFERRED to an
investigation (views-models#280) per maintainer decision; no architecture is
chosen here and no GPG/interim scheme is adopted. The local .env is the
maintainer's to populate and is never committed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@Polichinel
Polichinel merged commit f4947c0 into development Jul 27, 2026
@Polichinel
Polichinel deleted the chore/credential-hygiene branch July 27, 2026 03:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant