Skip to main content

max / makenotwork

exorcise: shared crate READMEs Batch B10. Replaced prose em-dashes with colons/commas in egui-updater and ops-exec READMEs (bolded list lead-ins -> colons). synckit-client README em-dash left (Rust // comment in a code example); themes, tagtree, theme-common, docengine READMEs already clean. Repo READMEs (B9: MNW, server) clean, no-op. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Author: Max Johnson <me@maxj.phd> · 2026-07-12 15:40 UTC
Commit: 885dea231ded1a8f9fc7bbaa31909e35acd37466
Parent: 775f15a
2 files changed, +11 insertions, -11 deletions
@@ -2,7 +2,7 @@
2 2
3 3 OTA self-update for [egui](https://github.com/emilk/egui)/eframe desktop apps.
4 4
5 - > **Status: 0.0.0 — name reserved, implementation in progress.** This release is a
5 + > **Status: 0.0.0, name reserved, implementation in progress.** This release is a
6 6 > placeholder; the API is not yet usable. Watch this space.
7 7
8 8 ## What it will do
@@ -10,15 +10,15 @@ OTA self-update for [egui](https://github.com/emilk/egui)/eframe desktop apps.
10 10 The egui ecosystem has no dedicated updater (Tauri has `tauri-plugin-updater`; egui
11 11 has nothing equivalent). This crate fills that gap:
12 12
13 - - **Check** — poll a version manifest endpoint.
14 - - **Verify** — check a [minisign](https://jedisct1.github.io/minisign/) signature
13 + - **Check**: poll a version manifest endpoint.
14 + - **Verify**: check a [minisign](https://jedisct1.github.io/minisign/) signature
15 15 against a public key you supply, before trusting any update.
16 - - **Download** — stream the artifact with progress.
17 - - **Apply** — silent self-replace on Linux/Windows; verified-download-then-open the
16 + - **Download**: stream the artifact with progress.
17 + - **Apply**: silent self-replace on Linux/Windows; verified-download-then-open the
18 18 signed installer on macOS.
19 19
20 20 Endpoint, public key, and manifest format are **caller configuration**. The crate
21 - ships no server, no embedded keys, and no vendor coupling — it works against any
21 + ships no server, no embedded keys, and no vendor coupling, so it works against any
22 22 compatible OTA backend (and is designed to be compatible with the Tauri updater's
23 23 manifest shape, so an existing Tauri update server can serve egui apps too).
24 24
@@ -2,7 +2,7 @@
2 2
3 3 The trusted executor: run a typed, capability-gated **step** on a host and
4 4 **observe** a host, across the tailnet, with the trust model built in. It is the
5 - one primitive under the internal ops suite — **Sando** (server promotion through
5 + one primitive under the internal ops suite: **Sando** (server promotion through
6 6 gated tiers), **Bento** (app build/sign/notarize/publish), and **ops-agent**
7 7 (the on-host half).
8 8
@@ -10,7 +10,7 @@ MIT licensed. Design spec: `_private/docs/ops-core/executor.md`.
10 10
11 11 ## Trust root
12 12
13 - SSH keys + Tailscale/Headscale are the **only** trust roots — no PKI, no token
13 + SSH keys + Tailscale/Headscale are the **only** trust roots: no PKI, no token
14 14 service, no secrets manager. Identity comes from the tailnet node (`ops-agent`
15 15 resolves a caller via `tailscale whois`) and from SSH keys (the `SshExec`
16 16 transport authenticates exactly as today). `ops-exec` only *maps* that identity
@@ -18,7 +18,7 @@ to capabilities.
18 18
19 19 ## Shape
20 20
21 - - `Executor` — the trait, scoped to one `(host, CapabilitySet)`; held as
21 + - `Executor`: the trait, scoped to one `(host, CapabilitySet)`; held as
22 22 `Arc<dyn Executor>`.
23 23 - `run_streaming(&Step, &mut dyn LogSink) -> RunOutput`
24 24 - `pull` / `push` (rsync, with `SyncOpts`)
@@ -26,9 +26,9 @@ to capabilities.
26 26 - `capabilities()`
27 27 - Transports: `LocalExec`, `SshExec` (this crate); `AgentRpc` (feature `rpc`)
28 28 talks to a remote `ops-agent`.
29 - - `Step` / `Action` — the typed step vocabulary the capability check gates on.
29 + - `Step` / `Action`: the typed step vocabulary the capability check gates on.
30 30 `Step::shell(action, "set -e; …")` is the shell idiom.
31 - - `CapabilitySet` — the grant, enforced **twice**: caller-side (the transport
31 + - `CapabilitySet`: the grant, enforced **twice**: caller-side (the transport
32 32 rejects an ungranted action before dispatch) and agent-side
33 33 (`CapabilitySet::intersect`, so a host's local grant is the ceiling).
34 34