todo: split harness-internal state from agent-visible /state
This commit is contained in:
parent
d890509be3
commit
bcb3f580ff
1 changed files with 1 additions and 0 deletions
1
TODO.md
1
TODO.md
|
|
@ -5,6 +5,7 @@
|
||||||
- Shared space for all agents to access documents/files without manager routing
|
- Shared space for all agents to access documents/files without manager routing
|
||||||
- Private git forge agents can push to and create new repos in
|
- Private git forge agents can push to and create new repos in
|
||||||
- Move bind mounts in agents to `/agents/<name>/state` so path for agent = path for manager
|
- Move bind mounts in agents to `/agents/<name>/state` so path for agent = path for manager
|
||||||
|
- **Split harness-internal state from agent-visible state**: today `/state/` (== host `/var/lib/hyperhive/agents/<n>/state/`) mixes the agent's durable notes with harness internals — `hyperhive-events.sqlite`, `hyperhive-turn-stats.sqlite`, `hyperhive-model`, future per-agent skill caches, etc. The agent can accidentally overwrite a harness file, the harness clutters what claude thinks is "my notes dir", and the host-side vacuum has to special-case filenames it owns. Move harness internals to a sibling dir, e.g. `/var/lib/hyperhive/agents/<n>/harness/`, bind-mounted RW into the container as `/harness/` (manager-readable too via `/agents/<n>/harness/`). Container's `/state/` becomes purely agent-owned. Touches: `paths.rs` (new `harness_dir()`), `events.rs`, `turn_stats.rs` (default paths flip), `events_vacuum.rs` (sweep root flips), `lifecycle.rs` (extra bind mount), and a migration that moves existing files on first boot under the new layout. Side benefit: makes the privsep TODO cheaper — the unprivileged web server only needs read access to `/state/` (operator-meaningful files), not `/harness/`.
|
||||||
- **Broadcast messaging**: allow sending messages with recipient "*" to all agents; deliver with hint "this was a broadcast and may not need any action from you"
|
- **Broadcast messaging**: allow sending messages with recipient "*" to all agents; deliver with hint "this was a broadcast and may not need any action from you"
|
||||||
- **Multi-agent restart coordination**: when rebuilding all agents, manager should start first so it can coordinate post-restart confusion (notify agents, suppress unnecessary retries, etc)
|
- **Multi-agent restart coordination**: when rebuilding all agents, manager should start first so it can coordinate post-restart confusion (notify agents, suppress unnecessary retries, etc)
|
||||||
- **Shared docs/skills repo (RO)**: a single repo on the hive forge that every agent has read-only access to — common references, prompts, runbooks, "skills" the operator wants every agent to inherit without baking into the system prompt or `/shared`. Implementation likely: seed an `org-shared/docs` repo on first hive-forge boot, grant every per-agent user a read membership in the org. Agents `git clone` it (or use the API) to read; only the manager + operator can push.
|
- **Shared docs/skills repo (RO)**: a single repo on the hive forge that every agent has read-only access to — common references, prompts, runbooks, "skills" the operator wants every agent to inherit without baking into the system prompt or `/shared`. Implementation likely: seed an `org-shared/docs` repo on first hive-forge boot, grant every per-agent user a read membership in the org. Agents `git clone` it (or use the API) to read; only the manager + operator can push.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue