storebound watch: store events for every app on the machine (rejected, approved, live, halted, crash threshold, reviews) to ntfy / Telegram / webhook / OS notification, loop or --once, baseline first, events.jsonl; storebound events and MCP events_recent; docs/watch.md; tests

This commit is contained in:
CRTkafa 2026-10-22 22:38:15 +08:00
parent 4fe26326cc
commit 78c541f2b8
16 changed files with 984 additions and 4 deletions

View file

@ -5,7 +5,7 @@ Every CLI command (cli/commands.ts) and the desktop place that runs it. "covered
(serve.ts, or a host command `host:`) and the window calls it; tests/desktop-coverage.test.ts fails on a gap.
Owner-only parts are owner actions in the window or owner steps with their terminal command (More tools).
**97 commands:** 91 covered, 0 gaps, 6 not for the desktop.
**99 commands:** 91 covered, 0 gaps, 8 not for the desktop.
| command | status | where in the window | methods | owner step |
|---|---|---|---|---|
@ -13,6 +13,8 @@ Owner-only parts are owner actions in the window or owner steps with their termi
| `import` | covered | App folders / first-run guide: Import from fastlane | `host:project_import_fastlane` | |
| `install` | covered | More tools: Install for an AI tool | `agent.install` | |
| `mcp` | not-for-desktop | the stdio server for AI tools; the window itself is the GUI over the same commands | | |
| `watch` | not-for-desktop | a server loop for people and agents (PM2, cron); the window already reads the stores in the background and notifies from the tray | | |
| `events` | not-for-desktop | the log that watch writes for terminals and agents; the window shows its own what-changed feed and tray notifications | | |
| `serve` | not-for-desktop | the JSON-RPC sidecar the window runs on; nothing to click | | |
| `apps` | covered | Accounts (store apps per account, key check) and App folders (list, add, remove) | `host:store_apps_refresh`, `host:account_check`, `host:projects_list`, `host:project_add`, `host:project_remove` | |
| `desktop` | not-for-desktop | opens or installs this window from a terminal | | |