Skip to main content

Module update

Module update 

Source
Expand description

update — bare-naked streaming handler.

Refreshes all five shipped binaries (cli, api, viewer, mcp, db) from the latest GitHub release, emitting one ResponseItem per (asset, stage) pair as the run progresses.

Ported from src/updater.rs. The legacy emitted Notification::Updater envelopes through a cli::output::Handle; this version sends ResponseItem events through an mpsc::channel whose receiver is surfaced as the leaf’s streaming return value.

Layout on disk (resolved via ctx.filesystem.bin_dir() — every binary is machine-wide, shared across states):

<bin_dir>/objectiveai{.exe}        ← cli
<bin_dir>/objectiveai-api{.exe}
<bin_dir>/objectiveai-viewer{.exe}
<bin_dir>/objectiveai-mcp{.exe}
<bin_dir>/objectiveai-db{.exe}

Release-completeness rule: if the latest release is missing any of the five expected (os, arch) assets, the run emits ResponseSkipReason::IncompleteRelease and exits without touching disk. Either all five advance together or none do.

Modules§

request_schema
response_schema

Functions§

execute