Skip to content

Starting and stopping

Andrea de Ruvo edited this page Aug 18, 2026 · 1 revision

Starting and stopping

The ⋯ on a tile can start and stop things on that machine, and stop its Argus — but only what that machine has agreed to, and the board neither knows nor invents the list.

No command ever arrives in a request. That is the whole design, and it is what keeps the weak keys weak: each machine publishes named things in its own config, and the board may ask for one of those names and nothing else.

# argus config, on the machine
runnable:
  - name: nightly
    run: python3 nightly.py
    cwd: /srv/work

watchers:
  - name: panoptes
    token: 
    may_run: true             # otherwise the token stays read-only
    may_stop_argus: false     # the one thing this board cannot undo

An ordinary board shows nothing in that section, which is correct: pressing these has to be granted on the machine, not assumed by the page. Stopping an Argus is the power icon on the tile itself, and it appears only where that machine allows it — there is no greyed placeholder where it does not, so if you cannot see it, the line above is the one to add.

Stopping an Argus asks twice, and says what it costs: every tmux session keeps running — Argus only watches them — but nothing here can start it again. That takes a shell on that machine, or whatever supervises it there. It is the only one-way action on the board.

For a machine this board cannot reach, there is no connection to open, so the instruction waits and travels back in the reply to that machine's own next announcement. The board says queued rather than showing a tick it has not earned. On the machine:

obey_board: true              # off by default: announcing is not agreeing to take orders
board_may_stop_argus: false

Handed over once. If it does not happen, press the button again — better than a board that keeps insisting at a machine which has already refused.

Clone this wiki locally