5.3 KiB
Scenarios — Lumina / Salon_Assistant
Narrative scenarios that drive design and tests. Use cases SSOT: use-cases.md.
S1. First-time operator install
- Operator provisions a baselined Linux host (
docs/DEPLOYER_HOST.mdwhen written). - Clones this repo; runs bootstrap → Docker installed if missing.
- Configures external OpenAI-compatible model URL + vision aux.
installcreates NemoClaw Hermes sandbox from this package, applies policy, installs skills.- Doctor green.
- Owner still has not been involved.
Success: Stack runs; no owner terminal work yet.
S2. Introduction — name the assistant
- Owner opens WhatsApp/Telegram/Email to the bot (or first post-install operator-facilitated intro).
- Assistant asks what to call it.
- Name becomes Hermes/NemoClaw profile/sandbox identity.
- Profile intake: business, timezone, hours, priorities, hard rules.
Success: Named profile; structured profile stored; no shell instructions.
S3. Connect Square (happy path)
- Educational step: what Lumina reads; never pays.
- Owner completes Square developer/OAuth in browser.
- Operator
connect-squarescript registers remote MCP + policy overlay vianemohermes/openshell. - Health: sample bookings/catalog read.
- Capability report: scheduling = connected (Square).
Success: Board uses live Square; pay tools not registered.
S4. Connect QuickBooks (happy path)
- Educational step: read-only money picture.
- Owner OAuth via Intuit; operator script starts local QBO MCP on Compose network; sealed config.
- Health: company info + P&L or invoice search.
- Capability report: books = connected.
Success: Books snapshot works; payment tools denied.
S5. Connect Vagaro (happy path)
- API key / webhook setup in Vagaro UI.
- Operator script configures REST provider + webhook service + policy.
- Board reflects Vagaro appointments.
Success: No scrape; deterministic provider.
S6. Owner cannot connect any SaaS
- Owner skips Vagaro, Square, QBO.
- Channels may still work.
- Board/books use fixtures or “offline.”
- Every answer that would use live data labels demo/offline.
Success: Educational + draft helper still useful; no silent fake live numbers.
S7. Channel partial outage
- WhatsApp connected; Email failed; Telegram skipped.
- Owner uses WhatsApp only.
- Capability report shows per-channel status.
Success: Product usable on remaining channels.
S8. Morning board on WhatsApp
- Owner: “What’s on the book tomorrow?”
- Deterministic fetch → model summarizes in her voice.
- Flags pending confirmations and gaps.
Success: Actionable list; sources labeled if fixtures.
S9. Client prep with formula overlay
- Owner: “Prep me for Elena.”
- Client card from SoR + local formula/allergy notes.
- Privacy reminder if needed.
Success: Correct card; no cross-client leak.
S10. Draft late-running SMS
- Owner asks for a late message for Chris.
- Style pack applied;
sends=false. - Owner copies to Messages/WhatsApp herself.
Success: Draft only; never auto-sent.
S11. Vendor invoice email triage
- Invoice-like message in inbox fixtures or mail.
- Matched to open QBO bill or “not in books.”
- Owner told to review; agent will not pay.
Success: Clear next step; no payment path.
S12. Social post from before/after photo
- Owner sends photo on Telegram.
- Vision aux describes; main model drafts caption package.
- Owner posts to Instagram herself.
Success: Draft package; no publish API call; vision degraded path if aux down.
S13. Owner asks agent to refund a client
- Agent refuses (skill + SOUL + no pay MCP tools + OpenShell).
- Offers non-money help (draft apology, rebook draft).
Success: Hard refuse; helpful alternative.
S14. Owner asks “run nano and edit config”
- Agent refuses shell/editor recipes.
- Routes to supported connect/settings path or operator doctor.
Success: No terminal literacy required of owner.
S15. Automatic software update overnight
- Scheduled host job runs
upgrade.sh(on by default). - Snapshot, pull pins, recreate containers, migrate, policy re-apply, doctor.
- Owner sees no chat about upgrade; possible brief reconnect blip only.
Success: Invisible to owner; operator journal has events; connections preserved.
S16. Upgrade failure
- Doctor fails mid-upgrade.
- Rollback to previous pin when possible.
- Operator alerted via logs/journal — not owner spam.
Success: Safe failure; owner data intact.
S17. Learn style over time
- Owner: “Too salesy, shorter.”
- Agent proposes remember; owner confirms.
- Next drafts shorter.
Success: Confirm-to-learn; forget works; no silent model finetune.
S18. Multi-SoR honesty
- Floor revenue from metrics ≠ QBO P&L.
- Weekly digest surfaces both and does not reconcile silently.
Success: Transparent disagreement.
Test mapping (future)
| Scenario | Automated test type |
|---|---|
| S8–S11, S13 fixtures | Unit/contract/smoke |
| S12 vision | Smoke when vision configured |
| S15–S16 | Upgrade dry-run / migration tests |
| S3–S5 | Optional integration with real sandboxes |