Tanmoy Sarkar 5db503295c feat(companion): Implement transactional reread
Add CompanionManager.reread_config(new_configs): diffs the running set against
a fresh, validated config list by config_hash -- a new name is added and
started, a missing name stopped and removed, a changed hash stores the config
and restarts (a manually stopped companion keeps STOPPED with the new config
ready), and an unchanged hash is left alone. Returns {ok, added, removed,
restarted, unchanged}. Validation runs first via _index_configs (duplicate-name
check), so a bad config mutates nothing and returns {ok: false, error,
kept_old_config: true}.

Wire the reread command to a config_loader hook on the manager -- the seam
between process supervision and config-file loading, set by the arbiter
(default None raises CommandError). A loader that raises returns the
kept-old-config error envelope.

Add tests for add/remove/restart-changed/manual-stop/unchanged/duplicate and
the reread no-loader, runs-loader, and bad-config paths.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 21:55:51 +05:30
..
2014-03-31 11:14:45 -07:00
2024-08-10 22:34:28 +02:00
2024-08-10 22:34:28 +02:00
2023-05-11 17:45:57 +03:00
2012-10-03 05:04:07 +05:45
2024-07-31 04:18:20 +02:00

Generate Documentation
======================

Requirements
------------

To generate documentation you need to install:

 - Python >= 3.7
 - Sphinx (https://www.sphinx-doc.org/)


Generate html
-------------
::

    $ make html

The command generates html document inside ``build/html`` dir.