evidence · 1.5 KiB

transaction-transport.md

Committed at docs/evidence/omarchy-themes/transaction-transport.md. This is what grounds the requirements that cite it.

Open raw source

Host transaction transport checkpoint

Observed 2026-09-23. tools/theme_transaction.py is a protocol client for a future shell receiver, not an installed service. It serializes generation switches with flock, requires matching prepare and commit replies on a total-deadline Unix socket exchange, and restores the previous atomic active symlink if commit fails. It requires a rollback reply and reports if that reply fails. Lock acquisition has its own total wait limit; even an idempotent repeat re-acknowledges receiver state. A failed sync after pointer replacement also enters restoration. Prepared generations remain available independently of a source checkout’s later removal. It does not launch apps or reload app appearance.

python3 tests/test_omarchy_theme_transaction.py
  PASS: 10 host tests: commit and repeat acknowledgement, prepare rejection,
  commit failure restoration, rollback failure reporting, mismatched and
  slow-drip real-socket replies, cache-boundary rejection, relative state,
  post-replace sync failure recovery, and lock wait limit.

The shell receiver and scene-boundary acknowledgement do not exist yet, so OpenSpec tasks 2.1 and 2.2 stay open. A host reply fixture does not prove a visible frame swap, normal-session persistence, client reload, or physical rollback. The next source checkpoint must define/install the receiver, verify peer identity and late reply ordering, and connect it to the shell’s common appearance generation before enabling a public omarchy-theme-set command.