Skip to main content

enqueue

Function enqueue 

Source
pub fn enqueue(paths: &MissionPaths, cmd: &ControlCommand) -> Result<PathBuf>
Expand description

Enqueue one command into the mission’s control inbox.

Creates the mission tree and control directory if needed — no-follow (P1 mission-path-no-follow): a symlinked .kranz/missions/mission dir or control/ entry is refused, never followed, since an enqueue through a symlink would route control commands into another repository’s mission. The JSON goes to a sibling tmp file, then atomically renames to <zero-padded-nanos>-<8-hex>.json — readers never see partial files. Returns the final file path.

The written object is the command plus a sig field ([authenticate]); minting the repository authority key on first use is part of enqueuing, so an operator never has to run a key-setup step before kranz pause works.