Miadi Factory — The Author's Desk prototype (v5 draft, 2026-10-10)#
Why this version exists#
Preserve the creative experience specified in v1 and the local-agent package reconnaissance of v2/v3, reconciled in v4. V5 responds to the human author's new design clarification: episodes will eventually manage published prototype links and restricted editor links; Plot Threads should explore the mismatch between Narrative Context Protocol (NCP) and Wampum Narrative Bridge as an open scholarly question, not presume lossless translation; episode attention items belong in the Agents experience; Ceremony tracing and Story tracing have DIFFERENT audiences and access expectations. This is a buildable, standalone coding-agent brief. Do not claim any proposed functionality already exists.
The human author's governing words: “I don't want the robot to write for me. What I want is the robot repeating me, which is different.” The author alone chooses and writes original creative text. Agents may quote faithfully with provenance, present alternative story hooks, ask questions, organize research, test engineering, and produce demo text in its own labeled panel, but never silently turn machine text into authored passages.
Prototype experience and implementation discipline#
Use attached image The Author's Desk — Where Research Becomes Story as inspiration. The home must offer three accessible interactive routes: BACKSTAGE (/backstage) → THE AUTHOR'S DESK (/desk) → ONSTAGE (/onstage); seamless responsive layout, keyboard paths, no decorative dead hotspots. Stack preferably Next.js App Router, React, TypeScript, Tailwind, shadcn/ui, Zod; adapt to inspected project conventions. Use typed adapters + local mocks. Distinguish LIVE (runtime test passed), AVAILABLE (identified but not wired), DEMO (sample), PROPOSED (design only), UNAVAILABLE (failed/missing); attach evidence/reason. No fabricated package exports, endpoints, persisted IDs, or integrations. Keep credentials server-side.
Backstage areas#
Screenwalks /backstage/screenwalks: browse/filter episodes, source videos, reviews, v1/v2 versions, and continuation questions; bring a reference—not synthetic prose—into the writer's desk. Include a link to earlier Episode 120 prototype if verified, and a card for the future episode-associated prototypes collection.
Episode → prototype relationship (NEW): The human reports a local agent is developing episode-linked prototype records. An episode may have one or more prototypes. Prototype fields to explore: episode ref, prototype label/purpose, PUBLIC published/view URL, PRIVILEGED editing URL, version/owner, visibility, source issue, status and last checked timestamp. Do not assert its schema, service or endpoints are implemented; consult the local agent and repository first. Create a mock read-only episode prototype panel and typed EpisodePrototypeAdapter. The PUBLIC view URL may be shown to unauthenticated visitors if the episode and prototype are public; the editor URL MUST be withheld in all public responses and page payloads and fetched only for authenticated, authorized roles via a server-side access check. Do not rely on CSS hiding, frontend role flags or obscurity; no editor URL is embedded in initial HTML, JSON, logs or error messages for unauthorized clients. Do not conflate 'a prototype deployed at a URL' with 'episode registration and edit-link access complete.' Support multiple prototypes / versions and links to the Episode 120 interface when confirmed.
Plot Threads /backstage/plot-threads: a free, clickable, exploratory canvas with threads, concerns/keepers, scenes/plot beats, episode sessions, branches, evidence, and explicit author annotations. A research panel labeled Narrative Model Crossings presents TWO PEER VIEWS and a third comparison area: (1) Story Studio / NCP lens; (2) Wampum Narrative Bridge lens, conceptually two timelines with intermediary connections; (3) crossings, contested mappings, ambiguity and what cannot be translated. The human describes NCP's theoretical article as privileging linear narrative, and the Wampum model as more non-linear. Treat this as the HUMAN'S RESEARCH FRAMING to be explored against actual library schemas, not as already proven properties of every export. Avoid reducing Wampum to decoration, pretending lossless conversions, or asserting the project embodies Indigenous teachings without appropriate scholarship and permission. Display both readings side by side even when irreconcilable. For any attempted transform provide source, target, mapping evidence, preserved / reinterpreted / ambiguous / not representable / not yet examined, rationale and space for a human thesis note. Do not 'fix' mismatch by silently filling gaps. Allow comparison notes to remain research artifacts; exports separate from fictional work. This is a potential thesis inquiry, NOT an already conducted study. No authoritative cultural generalizations.
Agents /backstage/agents: read-only agents + trunk / branch investigations, provenance and reports; add an Attention for me inbox showing EPISODE ATTENTION ITEMS that an agent raised for the human's judgment, with associated episode, reason, urgency only if present, source, status, who can decide, and link to real UI if available. This is not just notifications: they represent matters needing owner attention. The author reports existing @miadi/attention-core and @miadi/attention-ui interfaces; verify true API/permissions before wiring, otherwise label demo. An attention item is not an automatic task assignment or consent. For v5, reviewing an item can be demo; any state-changing action (acknowledge, address, assign, close) requires explicit owner action, authenticated authorization and a verified existing API, not fabricated success. Include signed annotations context via @miadi/annotate-core and @miadi/annotate-ui, but signed mark ≠ delivery or permission to dispatch.
Reviews /backstage/reviews: working seeded public review cards, detail and history; server-safe fetch of public JSON only after testing actual URL and schema. The human confirms public review JSON endpoints were designed to support downstream consumers; independently test detail .../review/<uuid>/json and ?v=N instead of guessing general listReviews endpoint. For authenticated listing/private content, read API docs and use a server-only token. Never collect tokens in a browser field or expose private review content through public demos.
Evidence & Traces /backstage/evidence: minimal provenance + timestamps + verified/reported/interpreted/proposed flags; source comparisons and Langfuse trace linkouts. User has separate local evidence/traces code; define adapter slot, don't claim it integrated.
Chronicle/Cycles /backstage/chronicle: episode/cycle relationships and existing Medicine Wheel-aligned libraries, respecting specific context and teachings. The human reports working libraries; inspect before importing or attributing cultural meaning. Connect episodes to screenwalks, reviews and potential prototypes with accurate access labels.
Desk: SIX HUMAN WRITING SURFACES#
/desk: My Take; A Question; A Spark; A Character; A Scene; A Story Hook. Each actually permits typing/editing, manual saving, local-only export/import/backup and deletion, status scratch/draft/selected, tags and source associations. Source records link to episodes/reviews/threads/agents. Preserve authorText separate from exact verbatim quote, AI suggestion, prompt seed, approved material and fiction. Echo my words quotes exact text without rewriting; alternative perspectives/hook variations only appear as clearly identified prompts separate from the writing canvas. Never turn an AI proposal into a scene without human selection/edit. Optional readback with @miadi/voice-client only after exports verified; consent required for cloud transmission. A validated Story Studio NCP preview may be available if real package exports pass import/validation; otherwise call it a neutral draft structure, not an NCP record. The desk is usable offline with local-only storage warnings.
Story tracing: separate domain, not merely another research observation#
Ceremony and Story are distinct traces with separate service configuration, permissions and purposes. CEREMONY documents real production encounters, agent investigations, reviews, issue and source evidence; generally researcher/private unless deliberately released. STORY is a proposed fiction-production and audience-experience domain: optional records for author-originated story projects/versions, scene selections, prompts and variation sets, staged publication artifacts, branching fiction choices, and—later—consented audience interactions within a story world. Do NOT assume all Story material is public: author scratchpads, unpublished drafts, prompt internals, private variants and visitor events are private by default. Distinguish draft private, editor/research access, published story/public-safe provenance, and consented audience-session telemetry. Publication creates a curated public representation; it does not automatically publish entire Langfuse traces or private raw data. Do not collect audience analytics until explicit consent, data minimization, retention/deletion policy and a real authorized backend exist. No tracking in mock mode. Use separate server-only CEREMONY_LANGFUSE_* and STORY_LANGFUSE_* adapters, do not hardcode project IDs or share keys. Source references crossing from Ceremony to Story are deliberate, public-safe citations approved by the author, not direct links to private trace internals.
Onstage: fiction and audience experience#
/onstage gathers ONLY author-selected writing into story projects, scene boards and three-act structure (Setup; Development; Climax and Resolution) with revision history and manual ordering. Audience Preview is fiction-first, with no automatic backstage exposure. Beneath a story, provide an OPTIONAL Behind the Story / Resources surface analogous to film extras: curated public-safe source videos, selected review versions, credits, related worlds/fiction prompts, and permitted research notes. The fiction does not claim its invented events occurred in reality. Future interactive scenarios and session branching are design possibilities; v5 may demo limited local navigation but must not claim Story trace capture, public sessions or agent-driven publishing is live. An audience member's exploration can eventually form a consented, scoped STORY session separate from the author's original story manuscript and private Ceremony records.
Integration leads: verify before binding#
The terminal agent named @miadi/episodic-memory-schema@0.14.1, @miadi/episode-vessel@0.4.2, @miadi/inquiry-weave@0.16.6, @miadi/reference-ui@0.1.2, @miadi/transcription@0.3.4, @miadi/hooks-interpreter@0.3.2, @miadi/annotate-core@0.2.0, @miadi/annotate-ui@0.2.0, @miadi/attention-core@0.1.1, @miadi/attention-ui@0.3.1, @miadi/ncp-story-studio@0.8.1, @miadi/wampum-narrative-engine@0.1.1, @miadi/ncp-wampum-bridge@0.1.1, @miadi/voice-client@0.2.4, and passages@0.3.11. These are REPORTED INSTALLED/PUBLISHED LEADS, not automatically verified runtime capabilities. Inspect actual versions, exports, licenses, peer constraints, author guidance and package implementation. If a narrow missing adapter/package is discovered, propose its API and test, do not publish it without explicit direction. Keep Story Studio/NCP and Wampum as distinguishable models; if they differ, document differences rather than forcing equivalence.
Known public examples: Episode 120 prototype issue https://github.com/jgwill/Miadi/issues/757 and reported deployment https://miadi-factory-interface-analysis.vercel.app/ (test before LIVE); Episode 120 research issue https://github.com/jgwill/Miadi/issues/754 ; reviews https://miadi-review-service.vercel.app/review/aa3bb198-59b2-4108-a452-36d25603d5e3 and https://miadi-review-service.vercel.app/review/e29a4fc3-302a-4309-8ad9-39085ee26283 ; Author's Desk review https://miadi-review-service.vercel.app/review/d7dcde0c-8ab2-4cd7-98d6-a2a937ff28fd ; Ceremony research trace https://cloud.langfuse.com/project/cmkgk10zy009tad077uc42ixf/traces/f06fa8abaf8e0c68cf71ffcbd320fa1d . Remember that the location of an episode-associated published page or privileged editor URL is not yet confirmed in a verified episode registry.
Deliverables: keep the demo small and the gaps visible#
- Working splash/home + Backstage, Desk, Onstage routes. All major click targets accessible.
- End-to-end human path: Screenwalk reference → exact quote or inspiration at Desk → human writes original My Take / Spark / Scene → deliberate approval to add scene to Act board → audience preview → optional 'Behind the Story' curated reference.
- Episode prototypes card with distinct public-view vs authorized-edit access, using demo adapter until an actual episode API is verified; unauthorized pages/payloads contain NO editor URL.
- Plot Threads peer-model comparison demo, with two timelines and a loss/ambiguity/contestation panel; no claim that NCP conversion is complete or that the representation is culturally authorized.
- Agents' attention inbox with source links, explicit decision gates and honest demo status.
- Ceremony/Story tracing conceptual integration map with publication/privacy boundaries; no automatic telemetry.
Implementation & Gap Report: enumerate what imported/typechecked/called at runtime, real review/episode/prototype API shapes, permission model tests, which gaps require adapters or new packages, and 3 specific human choices. Include tests for hidden edit URL at network payload level, round-trip preservation of author text, mock-vs-LIVE accuracy and option to reveal source safely. No autonomous agent dispatch, issue edits, package publication, private-data exposure or deployment without approval.
The design success measure is NOT an all-integrations dashboard. It is an author who can start writing while the system faithfully surrounds that writing with research context, and an audience who can experience the fiction without unintentionally inheriting private research.