{"path":"research/disambiguation-ux-and-voice-first-contribution.md","content":"# Disambiguation UX and Voice-First Contribution\n\n**Date**: April 1, 2026 (Session 9)\n**Type**: UX design reasoning — the minimal interaction for meaningful contribution\n**Status**: Design direction agreed. Implementation is now substantial but still incomplete: claim-level clarification is live, extraction pages surface an earlier interpretation checkpoint for contested source usages, the landing page now runs a lightweight clarification/interpretation preflight for text and URL input, and definitional claims are first-class. Still ahead: file-upload and voice-first continuity into sense selection, richer Socratic follow-up prompts, and the short-authored-input loop where questions/topics receive a conversational truth-graph response plus provisional structure before any graph write.\n\n---\n\n## The Core Insight\n\nThe \"what do I actually MEAN?\" moment — when a user realizes they're using a word that means different things to different people — is the **most valuable micro-contribution** a user can make to the civilizational graph. Every time a user disambiguates, they add a definitional claim that connects their reasoning to a specific sense. That connection ripples through the graph, enabling bridging detection, convergence testing, and cross-worldview navigation.\n\nThe UX challenge: making this moment feel like **discovery** (\"look what we found in your reasoning\") not **work** (\"please categorize your input\").\n\n---\n\n## Why Voice Is Load-Bearing\n\n### Pre-edited reasoning\n\nWhen people type, they self-censor, smooth out hedging, and over-structure. When they speak, they say: \"I think... well, it's more like... freedom matters, but not the libertarian kind, more like... people shouldn't have to worry about basic survival.\"\n\nThat hesitation pattern SIGNALS where the speaker's own reasoning is fuzzy — exactly where disambiguation will be most productive. Written input smooths these signals away.\n\n### Material volume\n\n60 seconds of speaking yields 150+ words of decomposable *parole*. 60 seconds of typing yields 30-40 words of pre-structured text. More *parole* = more surface for the pipeline to find structure in. The extraction pipeline's quality is proportional to the richness of its input.\n\n### The confirmation step IS the disambiguation\n\nVoice → extraction → confirmation. The user speaks freely → the system extracts structured claims → the user sees their own reasoning decomposed → \"wait, that's not quite what I meant\" → they correct → **the correction IS the disambiguation.** The pipeline creates the moment naturally.\n\nThis connects to P14 (the interpassivity warning): the confirmation step must provoke engagement, not rubber-stamping. Showing the user's own fuzzy reasoning in structured form inherently provokes \"wait, that's not what I meant\" — which is exactly the productive discomfort we want.\n\n---\n\n## The Minimal Flow\n\n### Step 1: Speak (30-90 seconds)\n\nNo forms, no structure, no categories. Just talk. The founding UX conviction (P3): \"free-form text in a large, friendly text box — or voice — as the ground-level input.\" If it feels like filling in a form, we've failed.\n\n### Step 2: See your reasoning decomposed (0 actions — auto-generated)\n\nThe system shows:\n- Your **conclusion** (what you're arguing for)\n- Your **premises** (why you believe it), with sorry markers where reasoning is incomplete\n- **Contested concepts flagged** (words you used that mean different things to different people in this debate)\n\nThis is the extraction pipeline's output, presented as \"here's what we heard in your reasoning.\"\n\n### Step 3: The disambiguation prompt (1 tap per contested concept)\n\nFor each contested concept found in the user's speech:\n\n> \"You said 'freedom.' In this debate, people use it to mean three different things:\n> 1. Freedom FROM government coercion (libertarian sense)\n> 2. Freedom FROM material deprivation (social-democratic sense)\n> 3. Freedom FROM attachment (Buddhist sense)\n>\n> Which did you mean? [tap one] [or: explain in your own words]\"\n\nThis is **P18 (concept tracking) turned into a 1-tap interaction.** The user doesn't fill out a form or write a definition — they select from senses the graph already knows about. If their sense is new, they speak it (back to voice — the loop closes).\n\n**Key design**: The senses presented come from the existing graph — other users' definitional claims. The more the graph has been used, the better the disambiguation options. This is the `@[simp]` flywheel applied to concept tracking: every definitional claim makes future disambiguation more precise.\n\n### Step 4: The surprise reveal (0 actions — auto-generated)\n\nAfter disambiguation, the system shows the \"aha moment\" from `semantic-disambiguation-and-concept-tracking.md`:\n\n> \"With YOUR definition of 'freedom,' 3 people who disagree with your conclusion share your definition — and 2 people who agree with your conclusion use a DIFFERENT definition.\"\n\nThis is the moment that makes disambiguation feel rewarding rather than tedious. The user discovers that their \"enemy\" shares their vocabulary and their \"ally\" doesn't. That realization IS the product — the structure making visible what language hides.\n\n### Step 5: Socratic deepening (optional, 1 tap or speak)\n\nFor value premises marked as sorry:\n\n> \"You said 'every person deserves a basic income.' Some foundations others have offered:\n> [Human dignity] [Social contract] [Economic efficiency]\n> Does one capture your reasoning? Or would you explain?\"\n\nThe user taps one → sorry marker resolves with DECOMPOSES_INTO edge → QBAF updates → the graph deepens. Or they speak → new claim enters the pipeline → recursive CQ generates new sorry markers at the next level.\n\nEach response deepens the graph. The sorry chain extends. Zero typing.\n\n---\n\n## Total Actions for a Meaningful Contribution\n\n| Action | Time | Effort | What it produces |\n|--------|------|--------|-----------------|\n| Speak | 60 sec | Natural | 5-15 atomic claims with relationships |\n| Confirm/edit | 10 sec | 1 tap | Validated extraction |\n| Disambiguate | 5 sec | 1-3 taps | Definitional claims linking reasoning to specific senses |\n| Socratic response | 3 sec | 1 tap (optional) | Sorry marker resolved, QBAF updated |\n\n**~80 seconds total, zero typing.** This is Polis-level friction (write one statement, vote on others) but with Deliberus-level structural output. The voice-to-structure pipeline absorbs the structuring burden. The sense selection makes disambiguation a tap, not an essay.\n\n---\n\n## Disambiguation IS Contribution\n\nThe disambiguation step isn't a tax on the user — it IS the most valuable thing they can do. Each \"I meant THIS sense of freedom\" adds a definitional claim that connects their arguments to a specific concept node. That connection enriches the graph for everyone:\n\n- **For bridging detection**: two people who disagree on conclusions but share a definition are a bridging candidate. Without disambiguation, the system can't tell.\n- **For convergence testing**: drilling through definitional layers requires knowing WHICH sense each person intended. Without disambiguation, the \"middle layers\" where confusion lives remain opaque.\n- **For the `@[simp]` flywheel**: each sense selection makes the concept node richer, so future users get better disambiguation options.\n\nThe UX must frame this as discovery, not work. The surprise reveal (Step 4) is the reward that makes the contribution feel worthwhile.\n\n---\n\n## Implementation Requirements / Remaining Gaps\n\n### Implemented next step: Contested concept flagging before full extraction settles\n\nThis is now partially real. The landing page runs a lightweight preflight for text and URL input before full extraction, using scout-derived ambiguity hotspots rather than waiting for the whole graph to settle. The product now asks the right early question sooner:\n\n- for authored input: what do you mean here?\n- for external material: which reading best fits what the source seems to mean here?\n\nWhat still remains is the fuller voice-first continuity envisioned here, especially for file uploads and spoken input that should flow directly into sense selection without feeling like the user has left the natural contribution loop.\n\n### Newly clarified gap: short authored input is not source extraction\n\nA short authored question or topic can be valuable without containing a complete argument structure. Treating that input as source text makes the scout pass the gatekeeper and can produce a false \"no argument structures found\" outcome. The emerging rule is \"capture immediately, publish deliberately\": answer the user conversationally from the truth graph and/or clearly labeled background knowledge, derive provisional graph structure privately, then ask for a lightweight confirmation before creating durable graph nodes or auto-connections.\n\nThis is not a retreat from disambiguation. It is the same principle applied earlier. The first question is no longer only \"which sense of this contested term is meant?\" but also \"what kind of contribution is this: question, topic, claim, evidence, argument, or fragment?\" The system should infer the default mode, avoid a visible settings panel where possible, and surface provenance correction only when it matters. For an external source, ask which reading best fits the source. For authored text, ask what the user means. For a user's own uploaded PDF or book, provide a contextual \"I wrote this\" correction. See [truth-graph-evidence-system.md](truth-graph-evidence-system.md).\n\n### Partially done: Sense selection UI\n\nA mobile-friendly disambiguation card showing 2-4 senses as tappable options, with \"explain in your own words\" as a voice-input alternative. This now exists on claim pages, in a more source-facing form on extraction pages, and in a lightweight preflight form on the landing route for text/URL input. What remains is strengthening the voice-first handoff and bringing the same low-friction continuity to uploads and richer follow-up prompts.\n\nThe practical UX lesson from first-time URLs is that sense selection cannot depend only on already-accumulated graph memory. When a term has no prior `available_senses`, the preflight needs to offer the scout's provisional detected senses as tappable scaffolding; otherwise the interaction collapses back into a blank form field.\n\n### Still needed: Socratic follow-up prompts\n\nAfter extraction, identify value premises with sorry markers and generate 2-3 suggested foundations from the existing graph (claims that DECOMPOSES_INTO relationships show as common foundations for similar value premises). Present as tappable options.\n\n### Existing infrastructure to reuse\n\n- Voice transcription: Gemini `inline_data` audio → text (already built)\n- Extraction pipeline: text → claims with sorry markers (already built)\n- Concept detection: Pass 3b contested concepts (extend to user input)\n- CQ generation: recursive scheme detection on user corrections (just built, Session 9)\n- Embedding + auto-connect: discovers the \"surprise reveal\" connections (already built)\n\n---\n\n## The Voice-First Principle\n\n**Voice is not an alternative input method — it is the PRIMARY contribution method for Deliberus.**\n\nEvery predecessor died because structured argumentation requires formal input. Voice dissolves this: speak naturally, the system structures. The confirmation step + disambiguation prompts are the only points of interaction between the user's natural reasoning and the graph's formal structure. Everything else — decomposition, classification, scheme detection, CQ generation, embedding, auto-connection — happens invisibly.\n\nThe user's experience: \"I talked for a minute, saw my reasoning mapped out, tapped which sense of 'freedom' I meant, and discovered that the people I disagree with actually share my vocabulary. Took 80 seconds.\"\n\nThat's the product. Everything else is infrastructure.\n\n---\n\n## Cross-References\n\n- [ux-principles.md](../ux-principles.md) §P3 (voice-first), §P4 (sorry model), §P14 (interpassivity warning), §P18 (concept tracking)\n- [semantic-disambiguation-and-concept-tracking.md](semantic-disambiguation-and-concept-tracking.md) — the \"aha moment,\" three layers of meaning\n- [mobile-argument-ux.md](mobile-argument-ux.md) — voice-to-argument pipeline, dual-mode strategy\n- [self-similar-decomposition-and-claim-ontology.md](self-similar-decomposition-and-claim-ontology.md) — mother claim pattern, recursive sorry\n- [lean-deliberus-analogies.md](lean-deliberus-analogies.md) §1 — sorry model as contribution barrier reduction\n- [single-player-utility.md](single-player-utility.md) — \"help me think about X\" as entry point\n- [adoption-problem.md](adoption-problem.md) §8 — the LLM hypothesis\n- [feed-algorithm-design.md](feed-algorithm-design.md) — bridging detection requires disambiguation data\n"}