Address spec review recommendations

Add out-of-scope section (mobile, multi-provider, marketplace, OIDC),
integration boundaries (Seshat's Library, Stalwart, Forge APIs),
VM default retention policy (destroy by default), and JMAP push preference.
This commit is contained in:
Till Wegmüller 2026-04-12 01:02:23 +02:00
parent 4ec0a366eb
commit 0186e22009
No known key found for this signature in database

View file

@ -326,7 +326,7 @@ Work Item needs heavy work
→ Agent writes to discussion thread as its Akh
→ Session is long-running, persists while work item is open
→ Admin can LoginSession to SSH in and inspect/debug (audit logged)
→ When work completes or is stopped: VM can be kept or destroyed
→ When work completes or is stopped: VM destroyed by default (configurable to keep for debugging)
```
### Capabilities
@ -506,3 +506,29 @@ anima/
- Git operations (clone, commit, push) only happen inside agent VMs (heavy work)
- Patches and documents are attachments stored in Seshat's Library for AI ingestion
- AI reads forge data via MCP when needed during agent sessions
## Out of Scope (v1)
- **Mobile**: The project brief envisions mobile as a "quick response on the go" UI. Not in v1.
- **Multi-provider agent orchestration**: v1 runs a single agent provider. Multi-provider scheduling is a future expansion.
- **Workflow marketplace**: v1 ships defaults and allows custom workflows. Marketplace comes later.
- **OIDC/SSO**: v1 uses username/password. Federation is future work.
## Integration Boundaries
### Seshat's Library
Seshat's Library is a **separate running service** with its own API. anima-server communicates with it as an external dependency (like PostgreSQL or Stalwart), not as a linked crate. It provides:
- Blob storage for files, patches, attachments
- Vector embeddings (pgvector) for AI-searchable document library
- Its own API surface that anima-server calls into
### Stalwart
anima-mail connects to Stalwart via two interfaces:
- **JMAP** for reading/sending mail (prefer JMAP EventSource push over polling where available)
- **Admin REST API** for mailbox lifecycle management
### Forge APIs
PR/issue metadata is fetched **on-demand** when viewing a work item or repository, not continuously polled. Webhooks can be added later for real-time PR status updates if needed.