cmd-propagate-bypasses-api

OUT premise

`cmd_propagate` is the only CLI handler that bypasses `api.py`, going directly to `Storage` → `Network.recompute_all()` → `Storage.save()` — a design inconsistency in the otherwise pure-presentation CLI layer.

Summary

The propagate command in the CLI breaks the architectural pattern followed by every other command. Instead of routing through the API layer like the rest of the CLI, it directly manipulates the storage and network layers. This matters because it means changes to the API layer (validation, logging, event hooks) won't apply to propagation, creating a potential source of bugs where propagation behaves differently from other operations.

Dependents

These beliefs depend on this one:

Details

Sourceentries/2026/04/24/reasons_lib-cli.md