carlos / platform Public

Replication misses databases a route doesn't name: extra DBs, instance-dir trees, addr routes Issue open

On branch design-carloku-durability

Found live on carloku 2026-10-23:

  • welp.bae's DBPath names welp.bae.oncarlos.com.db, which doesn't exist. The app's data is identity.db, registry.db and a 2.6 GB mb/ tree of inbox databases in its instance dir. None of it is replicated.
  • DBPath is a single value. A manifest's extra data.dbs are only printed (caps_pass.go:296-300). Tree discovery only works for BackingUnit.
  • Addr routes (hand-run services such as Woodstar) can't declare databases at all: carlos route has no --db.
  • Nothing runs carlos ops litestream automatically, and bootstrap leaves box-wide Litestream off. So UK, US and AU have none, and IE's file is hand-written (v0.3.13).
  • A box whose /etc/litestream.yml is owned by another generator (Tito's titogo) has no platform answer.

Proposal (design §5.1): DBPath becomes a list whose entries may be directories, for any backing; carlos add --db becomes repeatable and carlos route --db is added. Exec instances claim every *.db in their instance dir. The agent regenerates the config itself. Bootstrap installs a pinned 0.5.15 and enables the unit with root plus CAP_DAC_OVERRIDE CAP_DAC_READ_SEARCH CAP_FOWNER CAP_CHOWN. A database no replication claims raises an alert.