AI Generation Lanes — Diagrams¶
Mermaid companions to ../technical/ai-generation-strategy.md (council-approved v2, 2026-07-31). Mermaid inline so they render natively on GitHub, per the diagrams toolchain.
1. Lanes → provider → indemnity coverage¶
Who generates what, and whose legal cover it sits under (decision log 2026-07-31: Claude PRIMARY for cloud text as a documented exception; indemnity-first governs media lanes).
flowchart LR
subgraph Lanes
L1[Flashcard diagrams]
L2[Characters / mascots]
L3[Study songs - BLOCKED]
L4[Ambient / white noise]
L5[Narration TTS]
L6[Study Cast episodes]
L7[Project workspaces chat]
L8[Core inference / PageAgent]
L10[Resume / letters / outreach]
L11[Mock interview voice loop]
L12[Grounded research]
L13[Ingestion / embeddings]
end
subgraph Providers
P0[Procedural renderer]
PG[Google paid APIs<br/>Nano Banana 2 / Gemini TTS / Lyria 3]
PA[Claude Sonnet 5<br/>Anthropic commercial terms]
PGF[Gemini 3.6 Flash]
PC[CC0 field recordings]
end
subgraph Coverage
C0[$0 procedural - no model output]
CG[Google indemnity<br/>paid APIs only]
CA[Anthropic-terms indemnity<br/>documented exception, verify at onboarding]
CC[CC0 - public domain, per-file audited]
CU[UNVERIFIED - songs-lane blocker]
end
L1 --> P0 --> C0
L2 --> PG --> CG
L3 --> PG
PG -. Lyria indemnity-list status .-> CU
L4 --> PC --> CC
L5 --> PG
L6 --> PG
L7 --> PA --> CA
L8 --> PA
L8 --> PGF --> CG
L10 --> PGF
L10 --> PA
L11 --> PG
L12 --> PGF
L13 --> PGF
Not shown: video (lane 9, not offered v1) and grok CLI (internal docs/tutorials only — its output never ships in product). Every lane stamps provenance metadata (WING-298).
2. Cap → meter → top-up purchase flow (WING-299 / WING-300)¶
flowchart TD
A[User requests a generation] --> B{Lane cap reached?<br/>WING-299}
B -- no --> C[Generate]
C --> D{Succeeded?}
D -- yes --> E[Deliver artifact + provenance stamp<br/>WING-298; captions if audio]
E --> F[Increment visible per-lane meter]
D -- no --> G[No quota consumed - retry free]
B -- yes --> H[Show meter + offer top-up pack<br/>WING-300, ~50% margin]
H -- buys pack --> I[Pack credits added to lane] --> C
H -- declines --> J[Lane paused until next month<br/>never silent throttling]
3. Cost per user by tier (generation only, $/month)¶
The stacked view reads best as a table (figures from the per-user table in the technical doc):
| Lane | Light | Moderate | Heavy uncapped | Heavy capped |
|---|---|---|---|---|
| Project chat | 1.00 | 3.75 | 15.00 | 7.50 |
| Mock interviews | 0 | 2.00 | 10.00 | 6.00 |
| Narration | 0.34 | 1.35 | 6.75 | 4.05 |
| Study Cast | 0.35 | 1.40 | 7.00 | 3.50 |
| Resume/docs | 0.30 | 2.00 | 6.00 | 3.60 |
| PageAgent | 0.50 | 2.25 | 6.00 | 4.00 |
| Songs | 0.15 | 0.60 | 3.00 | 1.50 |
| Images | 0 | 0.34 | 1.68 | 1.68 |
| Grounded research | 0.10 | 0.50 | 2.00 | 1.00 |
| Ambient | ~0 | 0.05 | 0.25 | 0.25 |
| Total | ≈ 2.75 | ≈ 14.25 | ≈ 57.70 | ≈ 33.10 |
pie showData title Heavy-capped user (~$33.10/mo) - where the money goes
"Project chat" : 7.50
"Mock interviews" : 6.00
"Narration" : 4.05
"PageAgent" : 4.00
"Resume/docs" : 3.60
"Study Cast" : 3.50
"Songs" : 1.50
"Images" : 1.68
"Grounded research" : 1.00
"Ambient" : 0.25
Chat, interviews, and PageAgent dominate — which is why caps cover them, not just audio.