Context
SpektorAI has a local schema, but it is currently excluded by a broad .env* ignore rule and its documented Keychain workflow no longer matches the shared Varlock model. The contract also covers only a subset of active runtime consumers. Adopt WalksWithASwagger/kk-agents#23 and make the committed contract truthful.
Acceptance Criteria
Tests/Evals
git ls-files .env.schema returns the committed schema.
- Active code references are either declared, explicitly non-secret/config-only, or documented as intentionally external.
- Existing agentic tests remain green.
Verification
python3 -m pytest tests/agentic -q
git check-ignore -v .env.schema || true
git diff --check
Also run redacted varlock load --agent --show-all, varlock scan, and a no-op varlock run --inject vars -- ....
Agent Instructions
- Work from a clean worktree based on
origin/main; do not use the current feature checkout.
- Follow WalksWithASwagger/kk-agents#23.
- Inspect committed code and names only. Never open a value file or process environment.
- Keep the schema limited to current runtime consumers.
Out of Scope
- Real credential migration.
- Cloud or production changes.
- Declaring variables found only in virtual environments, generated output, or archives.
- Adding another secret manager.
Context
SpektorAI has a local schema, but it is currently excluded by a broad
.env*ignore rule and its documented Keychain workflow no longer matches the shared Varlock model. The contract also covers only a subset of active runtime consumers. Adopt WalksWithASwagger/kk-agents#23 and make the committed contract truthful.Acceptance Criteria
.env.schemais tracked while value-bearing.env*files remain ignored.allowMissing=true.Tests/Evals
git ls-files .env.schemareturns the committed schema.Verification
Also run redacted
varlock load --agent --show-all,varlock scan, and a no-opvarlock run --inject vars -- ....Agent Instructions
origin/main; do not use the current feature checkout.Out of Scope