chore(creds): credential schema + self-diagnosis + register C-108 (architecture deferred to #280) - #281
Merged
Merged
Conversation
…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>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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.py—python tools/check_credentials.pyreports precisely which keys are missing (stdlib; reads.env.exampleas the schema; never prints values).tests/test_credentials_presence.py(green) — guards the schema + the checker's logic./home/sonjabootstrap 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
.envis the maintainer's, never committed.ruff clean; the presence test passes 3/3; no
.envstaged. 🤖 Generated with Claude Code