secrets/test
Brian Majewski 446256caf1 feat: secrets list --json machine-readable output (EGB-699)
Add a --json flag to `secrets list` that emits a structured object for
tooling/CI instead of the human table — feeds the EGB-671 install scripts,
which need to enumerate a cloned store programmatically.

Contract: {"store", "projects":[{"name","entries":[...]}]}, each entry
self-describing via a type discriminator — {type:dotenv,path} or
{type:external,subtype:properties|file,path}. cmd_list_json mirrors the same
recursive store walk as the human list (nested <project>/<relpath>.age +
external/<slug>.age); jq assembles the JSON so paths escape correctly and
stdout stays pure JSON (the non-default-store hint is suppressed; jq is a
hard dep only in --json mode).

Tests: 7 new bats cases (dotenv, nested relpath, external properties + file
subtypes, empty store, pure-stdout-under-notice, store path). Full suite
261 pass / 0 fail.

VERSION 0.7.1.0 -> 0.7.2.0; CHANGELOG/README/CLAUDE.md updated.
2026-06-08 13:56:45 -07:00
..
manifest.bats feat: secrets which prints the manifest version (EGB-700) 2026-06-08 06:02:11 -07:00
migrate.bats feat: secrets migrate --status surfaces v2-only externals (coverage, EGB-712) 2026-06-08 10:44:34 -07:00
run-security.sh chore: security review policy + operator runner, doc updates (EGB-677 stage 1) 2026-06-07 13:12:39 -07:00
secrets.bats feat: secrets list --json machine-readable output (EGB-699) 2026-06-08 13:56:45 -07:00
test_helper.bash v0.1.0.0 feat: multi-store support (EGB-281) (#1) 2026-05-09 14:30:28 -07:00
version.bats feat: version-skew nudge — stamp store writer-version, warn when behind (EGB-713) 2026-06-08 12:07:50 -07:00