cli-tests-are-black-box-integration

IN premise

All CLI tests invoke `main()` through the full argv-parsing pipeline via the `run_cli` harness rather than calling internal APIs, with one exception (`TestPropagateWithChanges` directly mutates storage to create inconsistent state).

Summary

The test suite validates the CLI by exercising the complete command-line interface end-to-end, treating it as a black box rather than reaching into internal functions. This means refactoring internals or changing the argument parser will be caught by existing tests, though the one test that bypasses this pattern to set up intentionally broken state is a potential maintenance risk if storage internals change.

Details

Sourceentries/2026/04/29/tests-test_cli.md