Flow — Govern knowledge, memory and usage¶
Generated from the architecture model
This page is rendered from model/**/*.yaml by tools/docs_model during mkdocs build. Edit the YAML, not this page; hand-written design lives on the linked service, platform and plane pages.
| Persona | Noa (WorkspaceAdmin) |
| Experience requirements | FUX-01, FUX-08, FUX-09 |
| Steps | 4 |
A workspace admin registers sources with ACLs, reviews memory promotion proposals with consent, and sets budgets and retention for the tenant.
flowchart TD
s1["1. knowledge-sources<br/>ACL and classification correct?"] --> s2
s2["2. memory<br/>promote to shared with consent?"] --> s3
s3["3. usage-cost<br/>budget and threshold?"] --> s4
s4["4. retention-residency"]
s1 -. "source sync failed: freshness Stale with the last good snapshot" .-> x1_1["adverse 1.1"]
s1 -. "classification above the tenant ceiling: refused" .-> x1_2["adverse 1.2"]
s2 -. "consent missing: promotion refused" .-> x2_1["adverse 2.1"]
s2 -. "promotion is a publication-class approval" .-> x2_2["adverse 2.2"]
s3 -. "project threshold above the tenant's: refused (may only lower)" .-> x3_1["adverse 3.1"]
s4 -. "retention longer than the platform ceiling: refused" .-> x4_1["adverse 4.1"]
Hold "Alt" / "Option" to enable pan & zoom
Steps¶
| # | Screen | Decision point | Reads | Commands | Adverse branches |
|---|---|---|---|---|---|
| 1 | knowledge-sources — Knowledge sources |
ACL and classification correct? | ListSources, GetSnapshot |
RegisterSource, SyncSource, DeleteSource, SetCollection |
source sync failed: freshness Stale with the last good snapshot; classification above the tenant ceiling: refused |
| 2 | memory — Memory and promotion |
promote to shared with consent? | ListMemory, GetMemory |
PromoteMemory, ArchiveMemory, SetMemoryConsent |
consent missing: promotion refused; promotion is a publication-class approval |
| 3 | usage-cost — Usage and cost |
budget and threshold? | GetProjectUsage, GetRunUsage, GetSubscription, ListInvoices |
SetProjectBudget |
project threshold above the tenant's: refused (may only lower) |
| 4 | retention-residency — Retention and residency |
— | ListRetentionRules, GetResidency |
SetRetentionRule, SetResidency |
retention longer than the platform ceiling: refused |
Acceptance¶
Every step is exercised keyboard-only at 1440×900 and 390×844, in light and dark, in en and he (RTL); every adverse branch renders its state from the states catalog with words, never colour alone; a command's outcome is the server's response, never a toast.