{"path":"ux-principles.md","content":"# Deliberus UX Principles\n\n**The North Star for all interaction design decisions.**\n\n> **STATUS: FOUNDING CONVICTIONS + RESEARCH-DERIVED PRINCIPLES.** The convictions predate the research. The research validates, deepens, and concretizes them. Nothing here prescribes a specific UI framework or visual design — these are the principles that any implementation must satisfy.\n\n> **⚠ Findability audit, 2026-08-17: most of this page's content is not where a reader would look for it.** The project `CLAUDE.md` § *UX/Product Directives* carries nine hard directives, and a first pass called them missing here. Checked properly, **seven are present in this page's own words** — the beginner-readable first-contact contract, the four-questions-in-order first layer, conservative relevance over tangential reach, and never foldaway the user's own sentence all sit in one dated refinement note **inside P7** (Apr 8); staged publication and inferred provenance sit in caveats **around P12**. They are invisible to anyone scanning the `### P` headings, which is a findability problem rather than an absence, and the reason a later doc could contradict a principle this page already held. **Both genuine absences were closed the same day on founder approval**: addressability is now **P23**, and the confession principle's display half is now **P22**. The buried first-take note is now a named heading, **P7a**. What remains unpromoted is deliberate: *buttons must name the next action* is a detail belonging inside P7, and *clarification asks for substance rather than ontology* restates founding conviction 4.\n\n---\n\n## Founding UX Convictions\n\nThese have been with the project since its genesis. They are not research findings — they are design axioms that the research subsequently validated.\n\n**1. Stellar user experience is key to adoption.** Every structured argumentation platform that died (20+ since 2007) had adequate technology and inadequate UX. The graveyard proves that logical rigor without experiential delight is a dead end. (See [research/adoption-problem.md](research/adoption-problem.md) for the full cemetery tour.)\n\n**1a. First-impression reliability is non-negotiable — every failure must leave a visible trace for both the user and the operator.** Corollary to Conviction 1, learned the expensive way in the Apr 1–15 outage: a single silent failure mode (`except Exception: return empty`) hidden behind no persistent failure trail produced an 80% first-use failure rate for 15 days without a single diagnostic signal. 7 target users — including a cognitive scientist and EA-community researchers — signed up, tried one URL, got a 404 for a bug that wasn't theirs, and left. For adoption-fragile products, first-use has to work; the system must never silently return nothing, and every failure must reach both the user (as honest feedback, not a 404) and the operator (as a persistent forensic row, not a swallowed exception). Full incident and prevention measures: [research/session13-notification-snr-and-extraction-outage-rca.md](research/session13-notification-snr-and-extraction-outage-rca.md).\n\n**2. Progressive engagement that doesn't cognitively overwhelm.** The user chooses their depth. A casual user votes, reads summaries, trusts the scaffolding. A curious user expands argument bundles, examines premise chains. An expert drills into probabilistic weights, falsification history, causal counterfactuals. The same underlying graph, rendered at different cognitive resolutions. (See [research/progressive-disclosure.md](research/progressive-disclosure.md) — Sweller's expertise reversal effect makes this mandatory, not optional.)\n\n**3. Free-form text in a large, friendly text box — or voice — as the ground-level input.** The user should never be asked to think in terms of formal argument structure. They type what they think, or they speak it. The system does the structuring. This is non-negotiable: the input experience must be as natural as writing a text message or speaking to a friend. If it feels like filling in a form, we've failed.\n\n**4. Structure is OUTPUT, never INPUT.** Every predecessor demanded formal structure as the cost of entry — decompose your reasoning, categorize your claims, draw the edges. This is exactly backwards. The user expresses themselves naturally; the system reveals the structure underneath. The argument map is something you discover about your own thinking, not something you build from parts.\n\n---\n\n## The Principles\n\n### P1: The Graph Is a Map, Not the Product\n\nThe argument graph is for orientation and analysis. It is not the primary experience. Users interact with arguments — cards, feeds, conversations — and consult the graph when they need to reorient. Like Google Maps: you walk the streets and check the map when you're lost, not the other way around.\n\n**Mobile implication**: The graph is a 10% feature for deep analysts. The 90% experience is argument-first: cards, feeds, voice. (See [research/mobile-argument-ux.md §7](research/mobile-argument-ux.md) — the dual-mode strategy.)\n\n**Desktop implication**: The graph is available and powerful, with semantic zoom (galaxy → constellation → star → planet), but it is one view among several — not the default landing page. (See [research/graph-visualization.md](research/graph-visualization.md).)\n\n**First implementation** (Session 6, Mar 28-29, 2026): Ego-centric D3 force-directed graph on `/claim/[id]` pages — the \"star\" zoom level. Center node = focused claim; satellites = 1-hop neighbors (supports, attacks, qualifies, reframes, similar). Click any satellite to refocus. LLM-generated 3-5 word `short_title` per claim for readable node labels. Realizes the decades-old sketch vision (contention diagrams with click-to-refocus navigation). See `web/src/lib/components/ClaimGraph.svelte`.\n\n### P2: Separate Quality from Stance — Always\n\nEvery evaluation must distinguish \"is this well-argued?\" from \"do I agree with the conclusion?\" This is the epistemically essential distinction that every social media platform collapses. A well-argued position you disagree with is the richest territory in deliberation — it's where minds change. Collapsing quality and stance into a single upvote/downvote destroys this signal.\n\n**Implementation decision (Mar 31, 2026 — Option B)**: Single-axis human voting (agree/disagree only). The QBAF badge IS the quality signal — computed from CQ evidence, not subjective votes. This is cleaner than LessWrong's two-axis approach because the CQ system already decomposes \"well-argued\" into specific structural questions (\"Is the expert credible?\" \"Does the analogy hold?\" \"Are there counter-examples?\"). Instead of asking users a fuzzy \"well-argued?\" question where >95% of votes match agreement (LessWrong's finding), quality comes from answering CQs — which are concrete, answerable, and produce the QBAF badge automatically via QEM gradual semantics.\n\nThe **bridging signal** emerges from the combination: claims with high disagreement (50/50 vote split) BUT high QBAF strength (green badge, CQs well-answered). This is \"reasoning that both sides find structurally sound despite disagreeing on the conclusion.\" The feed's \"bridging\" mode surfaces these. Score = disagreement_factor × QBAF_strength. (See [research/qbaf-gradual-semantics-research.md](research/qbaf-gradual-semantics-research.md), [research/unbuilt-features-research-mar31.md](research/unbuilt-features-research-mar31.md))\n\n*Correction, 2026-08-17*: that second term is the design, not the running code. The shipped feed averages the classifier's extraction-time confidence on each edge, which no critical-question answer ever updates — so the badge and the bridging score are currently different evidence wearing one name. Measured detail and what survives: [bridging.md](bridging.md) § The Bridging Signal.\n\n**Why this matters for bridging arguments**: An argument that scores \"well-reasoned\" across groups who disagree on its conclusion is a *bridging argument* — potentially Deliberus's most distinctive theoretical contribution. Two-axis voting is the prerequisite for detecting these. (See [research/bridging-arguments.md](research/bridging-arguments.md).)\n\n### P3: Voice Is a First-Class Contribution Method\n\nSpeaking is natural; typing formal argument structure is not. Voice contribution lowers the barrier to zero on mobile. The pipeline: tap microphone → speak 30-90 seconds → LLM extracts conclusion + premises → user confirms the extracted structure before posting. The confirmation step is non-optional — it is the trust layer.\n\n**Privacy**: Process on-device where possible (Whisper.cpp runs on iPhone). Store the transcript, not the audio.\n\n**Existing infrastructure**: SuperWhisper already proven in Fredrik's stack. Same pipeline is deployable on mobile. (See [research/mobile-argument-ux.md §2.5 and §3](research/mobile-argument-ux.md).)\n\n**Voice-first disambiguation** (April 2026): Voice is not an alternative input method — it is the PRIMARY contribution method. Voice captures pre-edited reasoning where hesitation patterns signal fuzzy thinking, exactly where disambiguation is most productive. The minimal flow: speak (60 sec) → confirm (1 tap) → disambiguate contested concepts (1-3 taps) → optional Socratic deepening (1 tap). ~80 seconds, zero typing, Polis-level friction with Deliberus-level structural output. The disambiguation moment IS the most valuable contribution, not a tax. (See [research/disambiguation-ux-and-voice-first-contribution.md](research/disambiguation-ux-and-voice-first-contribution.md).)\n\n**Implementation note (Apr 3, 2026):** The product has now crossed further into this principle. Claim-level clarification is live, explicit definitional claims are created, shared concept pages exist, extraction pages include an early interpretation checkpoint for contested source usages, and the top-level landing route now runs a lightweight clarification/interpretation preflight for text and URL input before full extraction. The sense-picking interaction must offer tappable candidates even before shared graph memory exists, using detected provisional senses as scaffolding, or it becomes form-filling rather than disambiguation. The principle is still not fully embodied for file uploads or the full voice-first loop, but the first entry point is no longer extraction-first in the old sense. See [research/execution-plan-clarification-first-roadmap.md](research/execution-plan-clarification-first-roadmap.md).\n\n### P4: Incomplete Arguments Are Features, Not Bugs (The `sorry` Model)\n\nBorrowed from the Lean proof assistant: `sorry` is a placeholder that lets you sketch proof structure with explicit gaps. The compiler tracks incompleteness transitively. Terence Tao's PFR project: 25 strangers formalized a 33-page proof in three weeks by each filling in a `sorry` node.\n\n**For Deliberus**: When a user types or speaks freely, the extraction pipeline produces structured claims with `sorry` markers on every premise the user didn't elaborate on. These markers are:\n\n- **Visible**: The platform shows exactly what's well-supported and what's placeholder\n- **Invitations**: Each `sorry` is a contribution opportunity for someone else\n- **Transitive**: If conclusion C depends on premise P, and P is `sorry`, then C inherits the `sorry` status — you can see which conclusions rest on unexamined foundations\n- **Progressive**: A value premise marked `sorry (currently undecomposed)` invites the Socratic function: \"You marked this as foundational — can you articulate what's underneath?\"\n\nThis is the resolution of the Structure-Adoption Paradox: the LLM absorbs the structuring burden AND the `sorry` mechanism makes incompleteness a feature rather than a barrier. The contribution barrier drops to zero.\n\n**Scheme-bounded `sorry` generation** (Mar 29, 2026): Walton's argument schemes provide templates for WHICH sorry markers to generate. Each scheme has critical questions (CQs) — and CQs ARE premises statable in language. When the system detects \"this is an argument from expert opinion,\" it auto-generates scheme-specific sorry markers: \"Is the expert credible in this domain?\" \"Do peers agree?\" Each CQ becomes a contribution invitation with a known shape. This is bounded (not infinite recursion) and structured (the scheme tells you what to ask). See [research/scheme-bounded-decomposition-and-evidence-as-subgraph.md](research/scheme-bounded-decomposition-and-evidence-as-subgraph.md).\n\n**Correction UX shipped** (Mar 31, 2026): Sorry markers are now functional contribution entry points in production. Three interaction modes: (1) **Decompose** — value premises expand to a text input; the pipeline extracts sub-claims and links them as children. (2) **Add evidence** — supports/attacks toggle pills + text input; creates evidence claims with embeddings. (3) **Answer CQ** — each critical question has an \"Answer this question\" button with yes/no polarity pills. All contributions shift QBAF badge strength via QEM gradual semantics (Potyka, KR 2018). The full loop: user answers CQ → evidence created → polarity strength rises → QEM energy shifts → badge color changes.\n\n*Measured 2026-08-17, and \"all\" is the word that does not hold.* The loop written above is the **answer-a-CQ** loop, and it works exactly as described. **Adding evidence does not move the badge**, and this survived the direction-and-polarity fix shipped the same day, for a different and deliberate reason: an edge whose own critical questions are unanswered sits at 0.5, and contributions are measured as offsets from 0.5, so it contributes **exactly zero** energy. Verified against the shipped functions — ten such edges leave a claim at 0.500. That choice is right and is documented in `qbaf.py`: an edge at 0.5 means *nobody has examined this*, and letting unexamined supporters accumulate would manufacture strength out of silence. (A second gate sits in front of it: a user-created evidence edge carries no scheme until the correction pipeline's LLM pass assigns one, and the badge only reads scheme-bearing edges.) So adding evidence is a **two-step contribution** — attach it, then answer what it raises — presented here as one. Either the copy should say so, or the interaction should carry the user to the second step; that is a UX decision, and it is in `TODO.md`. Invitation cards use the Aha Generator visual style (gradient border, italic heading, themed CTA button). See [research/qbaf-gradual-semantics-research.md](research/qbaf-gradual-semantics-research.md) for QEM selection rationale.\n\n**The inversion principle** (Jul 6, 2026, from the first dogfood run): the correction UX as shipped still has the user holding the machine's hand — the decompose box takes one freeform essay the user must *already know how to write* (which questions to ask, where to dig, what the bottom looks like). The reduction is an inversion: the system detects the decomposable structure, asks ONE plain-language question at a time (\"what exactly is being weighed against what here?\"), proposes each split, and the user taps confirm / edit / redirect. Steps become taps; the essay becomes several small answers; the terminus type arrives as a proposal. This is P7's \"help me think\" posture applied *inside* the descent — what the Argument-from-Weighing scheme, terminus classifier, and leverage-ranked frontier jointly deliver. Full hand-holding inventory: [research/dogfood-run-1-friction-log.md §I1](research/dogfood-run-1-friction-log.md).\n\n**Why the inversion is not a nicety — the mechanism behind it** (Aug 2026): curiosity research supplies the reason a visible gap can repel instead of invite. In the PACE framework (Gruber & Ranganath, *Trends in Cognitive Sciences* 2019), a prediction error does not produce curiosity on its own; it is *appraised* first, and the appraisal \"can lead to different degrees of curiosity or alternatively to **anxiety-related inhibition if one does not have sufficient capability to resolve the uncertainty**.\" A gap plus felt capability to close it produces approach. The same gap without that capability produces avoidance. So a sorry marker is not neutral disclosure — its effect depends entirely on whether the surface showing it also shows a move. This yields a testable rule for every gap-displaying surface, including the completeness oracle's `unsupported_value_premises`: **no gap displayed without a move offered.** A second result constrains the pacing: curiosity peaks at *intermediate* uncertainty and tracks the rate at which understanding is improving rather than the amount of information available, which means the deepest and most valuable parts of the graph are also where the pull is weakest and progress most needs to be made legible. Full treatment: [research/curiosity-as-growth-fuel.md](research/curiosity-as-growth-fuel.md).\n\n(See [research/lean-deliberus-analogies.md §1](research/lean-deliberus-analogies.md) for the full analysis, [conceptual-threads.md §Thread 1](conceptual-threads.md) for the paradox.)\n\n### P5: The Blueprint Interface — Color-Coded Argument Health\n\nAdapted from Patrick Massot's Lean Blueprint tool (used by 40+ formalization projects): a visual dependency graph with color-coded status showing what's been verified and what needs work.\n\n**Deliberus argument health colors**:\n- **Green**: Well-supported — evidence + community vetting, dependencies met\n- **Blue**: Claim stated, ready for evidence — all prerequisite claims are green\n- **White/green border**: Claim stated, but some supporting premises are still `sorry`\n- **Orange**: Far from resolvable — deep dependencies unmet\n\nThe blueprint IS the contribution interface. Users scan for blue nodes (\"what can I contribute to right now?\") and fill them in. Different people strengthen different parts of the argument independently, without needing to understand the whole structure.\n\n(See [research/lean-deliberus-analogies.md §1](research/lean-deliberus-analogies.md), [research/lean-social-system-research.md §3](research/lean-social-system-research.md).)\n\n### P6: Progressive Disclosure at Three Cognitive Resolutions\n\nThree levels — not more (Nielsen warns usability drops above two; the zoom metaphor mitigates this) and not fewer (expertise reversal effect means one level always fails someone):\n\n| Level | User | What they see | What they do |\n|-------|------|--------------|-------------|\n| **Casual** | Anyone | Summary, stance distribution, key conclusion, argument health color | Vote, read, browse |\n| **Curious** | Interested | Premise chains, argument bundles, evidence links, `sorry` markers | Trace reasoning, expand bundles, flag issues |\n| **Expert** | Analyst | Probabilistic weights, falsification history, causal counterfactuals, source reliability | Deep evaluation, evidence contribution, decomposition |\n\n**Progressive disclosure is already implemented in the synthesis path, and it drops things silently** (found Aug 2026). `POST /query` retrieves up to 6 / 10 / 16 claims for casual / curious / expert, and then `format_context_for_synthesis` truncates *again* to 3 / 5 / 8 supporting and 2 / 3 / 5 challenging. So at casual depth the model may compose its answer from three supporting claims out of a materially larger retrieved set — and the reader is given no signal that a budget was applied. **Correction, same day** (2026-08-13, founder-flagged): the sentence that used to sit here said the budgets were correct and this was purely a reporting problem. Half wrong. The budget on how many claims the *model reads* was tied to how long the *answer* may be, and those are separate caps — showing the model more material never lengthened the reply, it only made the reply better informed. The answer cap was the worse of the two: a flat 520 characters at every depth, which is roughly eighty words, against a prompt promising \"short structured paragraphs\" at curious and QBAF detail at expert. The depth ladder was therefore a promise the schema could not keep. Both are now set separately, and casual stays deliberately tight because that is the newcomer surface. The reporting half of the fix stands: the resolution level should be visible as a level, and what it excluded should be countable. Resist the pull to raise the limits once the truncation becomes visible. **Shipped Aug 13**, and it is where P4's rule bit first: the reader now gets one quiet sentence naming how many related ideas were in scope and not used, and that sentence always ends with a move (\"asking for more depth brings more of them in\"), because a displayed gap with no move offered is the anxiety case rather than the curiosity case. Deliberately not shown: the count as a ratio. *\"One of six used\"* is a score wearing a disclosure's clothes, and it would make the panel read as a grade on an answer the reader cannot yet evaluate. Build record: [research/synthesis-build-plan.md](research/synthesis-build-plan.md) § 7.\n\n**Transitions must be seamless** — zooming in, not navigating to a different screen. Each level is self-sufficient (value without going deeper). Deeper levels validate shallower ones (the \"inspectability premium\" — knowing you *could* check increases trust even when you don't). (See [research/progressive-disclosure.md](research/progressive-disclosure.md).)\n\n### P7: \"Help Me Think About X\" — Not \"Create an Argument Map\"\n\nThe entry point is a question, a decision, a URL, a topic — not a request to build formal structure. The argument map is output, not goal. Every successful knowledge platform (Roam, Obsidian, Notion) started as a tool useful to one person with zero community. Deliberus's single-player mode: paste a URL or speak naturally → get a structured argument analysis of your decision.\n\n**Short authored input refinement (Apr 8, 2026):** A question or topic in the landing textbox should follow a dual path, not the source-extraction path alone. Deliberus should answer conversationally from the current truth graph where possible, use clearly labeled background knowledge when the graph is thin, derive provisional structure privately, and ask for a lightweight confirmation before creating durable public graph nodes. This is the analysis-attunement dialectic at the entry point: respond to the person while preparing graph-deepening structure. See [research/truth-graph-evidence-system.md](research/truth-graph-evidence-system.md).\n\n#### P7a: The first-take contract — four questions, plain language, conservative retrieval\n\n*Promoted to a named heading 2026-08-17. It had been an unnamed bold-lead note since Apr 8 and was therefore invisible to anyone scanning the principle list, which is how a later document contradicted a rule this page already held.*\n\n**Plain-language first-take refinement (Apr 8, 2026, later):** The response screen for short authored input must be beginner-readable on first contact. Do not surface internal language like \"graph-backed,\" \"draft-only,\" \"extract anyway,\" or \"durable\" as the primary copy. The first layer should answer four visible questions in order: what Deliberus thinks first, what earlier material it found, what is still unclear, and what the best next step is. Hide only genuinely deeper structure; never put the user's own unchanged sentence behind a foldout. Retrieval should be conservative enough that tangential matches do not masquerade as helpful context. See [research/truth-graph-evidence-system.md](research/truth-graph-evidence-system.md), [research/progressive-disclosure.md](research/progressive-disclosure.md).\n\n**The template as Trojan horse**: Argument map templates for recurring decision types (career changes, investments, policy evaluations) serve as single-player entry points and shareable artifacts.\n\n(See [research/single-player-utility.md](research/single-player-utility.md) — the full adoption pattern analysis.)\n\n### P8: Session Completion Is Tangible\n\nMobile sessions have a clear beginning, middle, and end. The \"deck\" metaphor: 5-8 arguments curated on a topic, work through the deck, get a completion summary (\"You evaluated 5 arguments. Your quality rating: above average.\"). Infinite scroll does not provide this. Completable sessions create habit-forming engagement loops (Duolingo model).\n\n(See [research/mobile-argument-ux.md §8](research/mobile-argument-ux.md) — the full mobile loop wireframe.)\n\n### P9: Notifications Are Epistemic, Not Engagement-Maximizing\n\nNotify when someone challenged your reasoning, not when someone agreed with it. Never notify for raw engagement metrics.\n\n**High-value notifications**: \"Your argument has a new counter-argument\" (someone engaged with your specific reasoning). \"A premise you support has been flagged\" (logical issue in reasoning you endorsed). \"New evidence found for your bookmarked argument.\"\n\n**Never notify**: \"X people agreed with you\" (validation-seeking). \"Trending in your network\" (FOMO). \"New activity in debate\" (too broad).\n\n**Belief calibration updates** (ambitious): \"The community has downgraded a key premise you endorsed — a cited study was found to be misrepresented.\"\n\n(See [research/mobile-argument-ux.md §4](research/mobile-argument-ux.md), [research/feed-algorithm-design.md](research/feed-algorithm-design.md).)\n\n### P10: The Accumulated Knowledge Flywheel\n\nEvery well-vetted argument makes the platform smarter. Like Lean's `@[simp]` lemmas that grow the automated reasoning capability with every contribution: when someone contributes a well-supported claim, the system gets better at auto-surfacing \"this relates to established claim X\" for future contributions. The more the community deliberates, the more the system can auto-connect, auto-deduplicate, and auto-suggest.\n\nThe community curates what's \"canonical\" enough for auto-referencing — not every claim makes the cut, just as not every Lean lemma gets tagged `@[simp]`.\n\n(See [research/lean-deliberus-analogies.md §2](research/lean-deliberus-analogies.md).)\n\n### P11: Data Ownership as Trust Signal\n\nYour argument graphs belong to you. Exportable in open formats (JSON-LD, RDF, AIF). Accessible even if Deliberus ceases to exist. This is not a technical feature — it is a trust signal that attracts exactly the right early adopters: rationalists, researchers, privacy-aware professionals, open-source advocates.\n\n(See [research/single-player-utility.md §6.5](research/single-player-utility.md).)\n\n### P12: Deprecation Over Deletion — Understanding Evolves\n\nWhen a better formulation of a claim emerges, the old one isn't deleted — it's linked to the new formulation with a \"superseded by\" relationship. The history of how understanding evolved IS content. The \"aha moment\" — \"oh, we were using the same word differently — THAT'S why we disagree\" — requires seeing the definitional evolution.\n\n(See [research/lean-deliberus-analogies.md §4](research/lean-deliberus-analogies.md), [research/semantic-disambiguation-and-concept-tracking.md](research/semantic-disambiguation-and-concept-tracking.md).)\n\n---\n\n## The Ground-Level Input Flow\n\nThis is where multiple principles converge into a single user experience — the most important interaction in the platform:\n\n```\nUSER: types freely or speaks naturally\n  \"I think factory farming should be banned because of\n   animal suffering and also climate change, and honestly\n   I think there's a basic ethical issue too\"\n           │\n           ▼\nSYSTEM: LLM extraction (invisible to user)\n  Three-pass pipeline: holistic scout → focused extraction\n  → cross-structure analysis\n           │\n           ▼\nCONFIRMATION: user reviews extracted structure\n  ┌─────────────────────────────────────────────────┐\n  │  Your argument:                                 │\n  │                                                 │\n  │  CONCLUSION: \"Factory farming should be banned\"  │\n  │    ├── PREMISE (needs evidence):                │\n  │    │   \"Factory farming causes animal suffering\" │\n  │    ├── PREMISE (needs evidence):                │\n  │    │   \"Factory farming accelerates climate      │\n  │    │    change\"                                  │\n  │    └── VALUE PREMISE (explore further?):        │\n  │        \"There is a basic ethical obligation      │\n  │         regarding animal welfare\"                │\n  │                                                 │\n  │  [EDIT]  [LOOKS RIGHT]  [DISCARD]              │\n  └─────────────────────────────────────────────────┘\n           │\n           ▼\nGRAPH: argument enters with sorry markers\n  - Each unevidenced premise = sorry (blue node, ready for evidence)\n  - Each undecomposed value premise = sorry (white node, invites decomposition)\n  - Conclusion inherits sorry status transitively\n  - Other users see the blueprint and can fill in individual nodes\n```\n\n**This flow satisfies**: P3 (voice/text), P4 (sorry model), P5 (blueprint), P6 (progressive — the casual user sees the conclusion; the curious user sees the premise chain; the expert sees the sorry markers and fills them in), P7 (\"help me think\" — the user typed a thought, the system revealed its structure).\n\n**Short prompt caveat (Apr 8, 2026):** Not every authored input is already an extractable argument. For short questions/topics, the first output may be a truth-graph response and a provisional interpretation rather than a claim graph. The raw input can be captured as private/session provenance immediately, but durable graph structure should wait for confirmation. See [research/truth-graph-evidence-system.md](research/truth-graph-evidence-system.md).\n\n**Presentation caveat (Apr 8, 2026, later):** When the first output is a truth-graph response rather than a claim graph, the page should not feel like an ontology debugger. The result must stand on its own as a calm first take, with plain labels and one obvious next move. The inspectable structure is still there, but it is subordinate to legibility. See [research/truth-graph-evidence-system.md](research/truth-graph-evidence-system.md).\n\n**Lifecycle caveat (Apr 8, 2026, later):** The long-term answer is not to keep this conversational material outside the graph forever. Deliberus should likely preserve raw exchange, provisional structure, and later refinements inside one evolving graph, but with explicit maturity and provenance so rough material does not get treated as equally canonical or equally retrieval-worthy. The user experience can feel in-place; the underlying system should preserve lineage. See [research/truth-graph-evidence-system.md](research/truth-graph-evidence-system.md), [research/soft-canonical-clustering-and-reversible-merge-semantics.md](research/soft-canonical-clustering-and-reversible-merge-semantics.md).\n\n**Implementation note (Apr 8, 2026, later evening):** The first guardrail for this is now live. Default public truth-query/feed surfaces can suppress `raw` / `draft` / `superseded` material and respect explicit retrieval weight, so rough early structure can be preserved without immediately crowding newcomer-facing results. A first persistence layer now exists too: short-authored `/query` responses can save the raw turn trace, first answer, and promotion hints into non-public deliberation drafts. The first continuity slice is live as well: if the user keeps going, Deliberus can continue the same draft instead of restarting the exchange from zero. What remains is the richer part: visible multi-turn history, clearer UI visibility of lifecycle, and promotion that grows out of scrutiny rather than static manual labels. See [research/truth-graph-evidence-system.md](research/truth-graph-evidence-system.md).\n\n**Implementation note (Apr 3, 2026):** The current live system now reaches this flow in three layers rather than one. Claim pages support explicit clarification and guided decomposition, extraction pages provide an earlier interpretation checkpoint plus \"Deepen Next\" routing into focused decomposition, and the landing route now performs a lightweight clarification/interpretation preflight for text and URL input before full extraction. The guided decomposition path now seeds a non-blank structure but rejects untouched template scaffolding, which matters because Deliberus should scaffold reflective effort rather than create empty graph noise. The remaining gap is not whether clarification arrives early at all, but whether every entry path — especially uploads and voice-first continuity — preserves the same natural sequence cleanly. See [research/execution-plan-clarification-first-roadmap.md](research/execution-plan-clarification-first-roadmap.md), [research/feed-algorithm-design.md](research/feed-algorithm-design.md).\n\n### P13: Composing Is Retrieval — Writing an Argument Searches the Graph\n\nAs the user types, the system suggests existing claims: \"this claim already exists,\" \"here are its strongest arguments/counters,\" \"here's the current belief distribution.\" The act of formulating an argument is simultaneously a search of the existing knowledge base. This prevents duplication and surfaces relevant context at the moment of composition, not after.\n\nFrom Sketch 6 (2013): \"Similar existing points should be visually available and interconnected. Accessible instantly when someone begins writing similar words.\" This is the deduplication problem (see [conceptual-threads.md §Thread 4](conceptual-threads.md)) solved at the UX level — you don't need a dedup algorithm if the user never creates the duplicate in the first place.\n\n(See [sketches.md §Sketch 6](sketches.md), [research/semantic-disambiguation-and-concept-tracking.md](research/semantic-disambiguation-and-concept-tracking.md).)\n\n### P14: The Interpassivity Warning — LLMs Scaffold, Never Replace\n\nZizek's critique (see [research/zizek-schmachtenberger-connections.md](research/zizek-schmachtenberger-connections.md)): systems that do cognitive work FOR users rob them of the epistemic engagement that IS the point. If the LLM extracts your argument structure and you just click \"confirm\" without actually engaging, the platform has failed — you've outsourced the thinking that was supposed to make you wiser.\n\nStanford research confirms: unguided LLM use reduces cognitive load BUT ALSO reduces reasoning quality. The solution is **structured scaffolding** — the LLM guides you through the deliberative steps, not around them.\n\n**Practical implication**: The confirmation step after LLM extraction (P4) must be designed to provoke engagement, not rubber-stamping. \"Is this what you meant?\" is weak. Better: \"Here's what I extracted — are these REALLY your premises, or did I miss your actual reasoning?\" Show what the LLM DIDN'T capture as prominently as what it did. Make the user think about the gap.\n\n**The hormesis frame** (Apr 25, 2026): The biological concept of hormesis — productive friction as stress-response biology — offers an affirmative reframing of this warning. The current P14 language is defensive (\"warning\"); hormesis is affirmative (\"this is how the system stays alive\"). Deliberus removes friction at the level of structure-building (LLM absorbs the structuring tax) and preserves friction at the level of meaning-commitment (disambiguation, CQ answering, decomposition). That asymmetry IS hormesis applied to collective reasoning. Simon's two-step scientific method adds a complementary frame: Step A (figuring something out) has no rules, but Step B (checking you're not wrong) does — and the checking is the productive friction that makes the edifice solid. See [research/wiki-that-writes-itself-and-productive-friction.md](research/wiki-that-writes-itself-and-productive-friction.md), [research/scientific-method-two-steps-and-deliberus.md](research/scientific-method-two-steps-and-deliberus.md).\n\n(See [research/adoption-problem.md §8](research/adoption-problem.md) — the LLM hypothesis, case for and against.)\n\n### P15: Argument Bundles as Tab-Navigable Threads\n\nFrom Sketch 2 (2013): Multiple independent lines of reasoning can support the same conclusion. The \"speed argument,\" \"dream argument,\" and \"cobalt argument\" are semi-contained threads that resolve into one conclusion, navigable via tabs. This is a KEY UX innovation — it prevents the \"spaghetti graph\" problem (see [academic-foundations.md §Scheuer](academic-foundations.md)) by grouping premises into coherent argument bundles rather than showing every connection at once.\n\nEach bundle gets a \"VALID\" badge from entailment checking — the system's verification is visible at the bundle level, not buried in individual node properties. The user experience: \"here are three different ways to argue for this conclusion, each independently checked.\"\n\n(See [sketches.md §Sketch 2](sketches.md), [object-model.md §Argument Bundle](object-model.md).)\n\n### P16: Onboarding Shows Value Before Identity\n\nThe Duolingo pattern: push the first meaningful experience BEFORE account creation. For Deliberus, the five-minute onboarding hook:\n\n1. Present a contested claim the user cares about\n2. \"How confident are you?\" (0-100%) — registers their prior\n3. Show the strongest counter-argument from a well-calibrated contributor\n4. \"Has your confidence changed?\" — frames belief revision as natural\n5. Reveal the community's confidence estimate and evidence graph\n6. Ask the user to rate the counter-argument's QUALITY (not agreement) — teaches the two-axis distinction\n\nThis loop takes 2-3 minutes, demonstrates the core value proposition, and establishes the behavior pattern before the user has created an account or posted anything. The first meaningful contribution: rating argument quality (2 clicks, 30 seconds).\n\n(See [research/epistemic-gamification.md §7](research/epistemic-gamification.md).)\n\n### P17: Feed as Dashboard, Not Timeline — The Organic Redraw\n\nFrom Sketch 4 and [research/feed-algorithm-design.md](research/feed-algorithm-design.md): the feed continuously recomputes salience and redistributes arguments. Content doesn't \"fall off\" because it's old — it's superseded, resolved, or no longer the most epistemically important instantiation of its position.\n\nKey properties:\n- **60% quality threshold** — only arguments meeting minimum quality appear in primary feed\n- **Coverage guarantee** — user sees the strongest argument from each major position, even positions they disagree with (the Deliberative Polling principle: ~70% of participants update beliefs with balanced exposure)\n- **Bayesian surprise ranking** — prioritize content that maximally updates THIS user's beliefs, not content with highest raw engagement\n- **Evidence gap surfacing** — \"this argument needs evidence and you have domain expertise\" as contribution invitation\n- **Auditable rankings** — every surfaced argument shows WHY: \"shown because this counter-argument challenges a position you hold\"\n\n(See [research/feed-algorithm-design.md](research/feed-algorithm-design.md).)\n\n### P18: Concept Tracking as Crowdsourced Sense-Making\n\nFrom Sketch 7 (2013, influenced by Emanuel Kumlien): when the same word means different things to different people — \"freedom\" to a libertarian vs a socialist — the system treats each word-sense as a SEPARATE node. \"Sweet (sugar)\" and \"Sweet (nice)\" branch into distinct concepts. Merge and split operations are crowdsourced: the community decides when senses should be separated or reunified.\n\nDefinitional claims are themselves arguments — \"by freedom I mean X\" is a MOVE in the deliberation, not metadata. The moment a user sees \"oh, we were using the same word differently — THAT'S why we disagree\" is one of the most powerful the platform offers.\n\n**Implementation note (Apr 3, 2026):** This principle now has a stronger embodiment in product code: claim-level sense clarification, explicit definitional claims, graph-level concept aggregation, concept pages showing shared sense memory, and now concept lifecycle states that tell the user whether a term is still underdefined, emerging, bifurcated, fragmented, or locally stable. Full merge/split governance is still ahead, but the graph is no longer mute about whether a concept is settling or splitting. (See [sketches.md §Sketch 7](sketches.md), [research/semantic-disambiguation-and-concept-tracking.md](research/semantic-disambiguation-and-concept-tracking.md), [vision.md §Semantic Disambiguation](vision.md), [research/execution-plan-clarification-first-roadmap.md](research/execution-plan-clarification-first-roadmap.md).)\n\n### P19: De Bono Thinking Hats as Contribution Funnels\n\nFrom Summaries.txt (2012): instead of a generic \"contribute\" button, route users into contribution MODES based on what type of thinking the argument needs right now:\n\n- **Yellow hat** (optimistic): \"What's good about this argument? What supports it?\"\n- **Black hat** (critical): \"What could go wrong? What attacks this?\"\n- **Red hat** (emotional): \"How does this make you feel? What's your gut reaction?\"\n- **Blue hat** (meta): \"Is this argument structured correctly? What's missing?\"\n- **Green hat** (creative): \"What alternatives haven't been considered?\"\n\nEach hat mode produces a different TYPE of contribution — supporting evidence, counterarguments, emotional reactions, structural analysis, creative alternatives. This connects to the `sorry` model: different hats fill in different kinds of gaps. It also connects to pre-categorized microinteractions (see [research/mobile-argument-ux.md §2.3](research/mobile-argument-ux.md)) — the hat selection IS the categorization, applied before the user types rather than after.\n\nThe \"queues of needy args/claims\" concept from the same 2012 notes provides the feed: the system surfaces arguments that NEED a specific type of contribution and routes them to users in the corresponding hat mode.\n\n(See [research/simplenote-archive-analysis.md §6](research/simplenote-archive-analysis.md).)\n\n---\n\n### P20: The Structuring Gradient — Weave, Do Not Collect and Convert\n\n*Named 2026-08-14, founder-stated, and it governs the friends round. Named rather than invented: the intention is documented across seven surfaces from April 2026, and its architecture is in the founder's own words from December 2011. See [research/structuring-gradient-lineage.md](research/structuring-gradient-lineage.md).*\n\n\"Structure is output, never input\" (P-series above) has so far described a **transaction**: unstructured text goes in, structure comes out, once. The gradient this principle adds is **temporal**. A person working through what they are proposing, arguing or extracting should feel their own material becoming more structured *as they go*, in the same progression the eight-pass pipeline performs internally — loose talk, then named claims, then relations, then the contested word, then the critical question nobody answered.\n\nThe user should never experience a boundary between \"talking\" and \"having produced structure.\" Each turn weaves a little more of what they said into the graph, and the graph visibly gains from it.\n\n**Why this is load-bearing rather than nice.** The architecture rests on addressability — the unit of contest is the claim, not the document ([structure-versus-scale.md](research/structure-versus-scale.md)). A person only ever points at a claim if claims have visibly emerged from their own words. If the structure arrives as a finished artifact handed back to them, it is the system's structure and they will argue with the document. **The gradient is what makes the substrate theirs**, and the substrate is what everything else stands on.\n\n**The consequence for the friends round**, which is the near-term test: the guided path cannot be a read-only tour of an existing corpus. A guest must put their own material in and watch it acquire structure incrementally, because the one signal that would redirect the whole build is whether people point at claims — and they cannot point at claims that never grew out of anything they said.\n\n**The venue, decided 2026-08-17: two people side by side, using it live, from scratch.** The founder's phrase is *\"discuss through Deliberus\"* — laptops open, same room, both submitting and interacting while they disagree. This principle previously had no venue, and the corpus had no principle for co-present synchronous use at all (searching it for *side-by-side*, *synchronous* or *co-present* returns nothing; everything documented is either solo or asynchronous). Co-present dyadic use is the cheapest possible test of the gradient, because the attunement pole needs no facilitator when both people can see each other's faces — the software is left holding only the analytical half, which is the half being tested. It is also the second-lowest-exposure setting after arguing with yourself, which matters because exposure is now a binding constraint on legibility. Full reasoning, the blockers it promotes from someday to prerequisite, and its relation to the facilitated workshop: [research/islands-of-coherence.md](research/islands-of-coherence.md) § 5c.\n\n**This principle was violated three days after it was written, which is worth recording here rather than in a session doc.** The facilitated-workshop section drafted 2026-08-17 designed its first session on pre-crunched corpus material, and a TODO item encoded that as *\"the graph already holds two live Swedish election disagreements\"* — which was also factually false. Both were corrected on the founder's own instinct, not by anything noticing the contradiction. A principle with a dependent is supposed to break loudly when ignored; this one did not, because nothing yet depends on it in code. Until something does, P20 is still an intention with better paperwork.\n\n**What exists and what does not.** The clarification preflight, the interpretation checkpoint, the decomposition-readiness cues, the `Think with Deliberus` first take and the multi-turn deliberation draft are all pieces of this gradient, built separately. What is absent is the *continuity*: they do not yet compose into one experience where a conversation visibly thickens into structure across turns, and promotion from draft to canonical has no visible lifecycle. That gap is the open UX-governance question already named on the frontier, restated here as the design principle it answers to.\n\n**Where it comes from, and why it kept not shipping.** The temporal intention is stated across seven 2026 surfaces — P7's short-input refinement, the two lifecycle notes below, `vision.md` §One graph staged maturity, `technical-direction.md`, `mobile-argument-ux.md` §1.3, and the disambiguation flow — and stated as a gap in every one. Its architecture is older: *\"at every step in the user's process for input and editing, we'll try to integrate duplication-sensing and error-pruning through natural language processing\"* (Fredrik, December 2011), governed by *\"leverage automation as far as possible… then let crowdsourcing take over at the point where human intelligence is necessary.\"* That is this principle with the machine's share set near zero, which is why the same architecture then implied structured input and now implies the gradient. What none of the seven statements had was a dependent — something that breaks if the gradient is absent. Supplying that is the only new content above. Full lineage, including the 2012 argument in which the founder held the *opposite* position and was talked out of it: [research/structuring-gradient-lineage.md](research/structuring-gradient-lineage.md).\n\n### P21: Co-Present Use — Two People, One Graph\n\n*Founder-decided 2026-08-17, and the corpus had no principle for it: searching for `side-by-side`, `synchronous` and `co-present` across the whole UX corpus returned nothing. Everything documented was either solo use or asynchronous multi-user. Full reasoning: [research/islands-of-coherence.md](research/islands-of-coherence.md) § 5c.*\n\nTwo people in the same room, two laptops, one shared graph, **discussing through Deliberus while the disagreement is still live**. Not a demo and not a facilitated workshop — the ordinary case of two people who disagree, using the thing together, from scratch.\n\n**Why it is a principle and not a use case.** It is the venue P20 needs. A gradient that only ever runs for one person alone is untestable in the way that matters, because the signal that would redirect the whole build — whether people point at claims — is a *social* observable. And it is the only setting where that signal is uncontaminated: hand two people a pre-built graph and non-pointing is over-determined, since it could mean claim-granularity is wrong or merely that the structure is someone else's ([research/structure-versus-scale.md](research/structure-versus-scale.md) § The signal that would redirect the build).\n\n**Three design consequences.** *Latency is social.* A two-to-three minute extraction is tolerable alone and dead air with someone watching, so the gradient must show progress at conversational tempo rather than in one delivery. *Two writers, one graph.* Concurrent contribution has never been exercised — the corpus holds two `User` nodes and no session has had two people writing at once — so collision, ordering and visibility of the other person's edits are unspecified. *The attunement pole staffs itself.* §5's facilitated workshop assigns attunement to a facilitator who must be recruited; side by side, both people can see each other's faces, so the software is left holding only the analytical half, which is the half under test.\n\n**A second reason, arrived at independently.** The [cross-scale sweep](research/convictions-across-scales.md) § 2.7 tested the analysis-attunement dialectic against how coordination is achieved at other scales, and found something the UX reasoning had not: **nearly every biological mechanism that couples two channels requires co-presence.** Grooming, allogrooming, play-signalling, the primate face — the affective channel is short-range and synchronous almost without exception, because it runs on signals that do not survive transmission delay or a text encoding. If attunement is the pole no argument can pay, then a co-present setting is not merely the cheapest venue for testing the analytical half. It is the only setting in which the other half is physically available at all. Asynchronous use is not a weaker version of this; it is a different mechanism with one channel missing.\n\n**Where it sits on the exposure ladder.** [research/incentives-analysis.md](research/incentives-analysis.md) found exposure and social cost are now the binding constraints on legibility, and ranks arguing with yourself as the only condition with zero exposure cost. Co-present use with one trusted person is the **next rung**: the audience is one, and chosen. That makes it the right step between solo use and any wider room — solo, then one friend co-present, then a facilitated matched pair, then wider.\n\n### P22: Absence Is a State, Not a Score\n\n*Founder-named 2026-08-17, and grounded twice in his own words thirteen years apart. Full provenance and the arithmetic: [research/strength-layer-audit.md](research/strength-layer-audit.md) § 2b.*\n\n> *\"Why the heck was this not the case to begin with? I'm not sure I understand how the platform could default to this kind of structural sycophancy.\"* — Fredrik, 2026-08-17\n\n**A sentinel value meaning *nobody has looked* must never be routed into a comparison that assumes *a measurement*.** The same failure as a temperature reading of zero meaning \"sensor offline\" being averaged into a daily mean.\n\n**What happened, because the abstract rule is easy to nod at.** The badge vocabulary comes from Fredrik's own hand-drawing, 2009–2013: *\"all CQs addressed (green), some addressed (blue/amber), **none (orange)**, one failed (red)\"* — four states, with *none addressed* distinct and warning-coloured. The specification compressed that to three numeric bands, at which point **\"none addressed\" ceased to exist as a state**: a claim with nothing answered computes to exactly 0.5, the boundary was written `>= 0.5`, and so it landed on the positive side. **115 of the 116 claims carrying any structure displayed confidence with nothing answered, for five months.** The grey `UNEXAMINED` state is a restoration, not an invention.\n\n**Why it is a UX principle and not a bug report.** The code implemented its specification correctly; the loss happened when a four-state semantic became a one-dimensional scale, and no test, type or review could catch the absence of a state that had no representation. Any display that maps one number onto colours **cannot abstain** unless abstention is designed in. So the principle binds the surface, not the arithmetic: **every display must have vocabulary for \"I have no reading here.\"**\n\n**Two refinements that are easy to get wrong.** *Balance is a finding, not an absence* — support and attack genuinely cancelling is a real reading and must not be shown as silence; the gate tests the inputs, never the sum. And **direction is not the point**: had the comparison been strict, the same claim would have read amber and been wrong the other way. The sycophancy was not chosen, it is where a coin had to land — which is why the fix is a state rather than a threshold.\n\n**Its relation to the confession principle.** This is that principle's purest instance and its first appearance on a *display* surface: the page said the nearest thing it could, and with no vocabulary for *no reading*, the nearest thing was positive. The instrument built to detect unsupported confidence was displaying unsupported confidence, on the surface that certifies other people's claims.\n\n### P23: Every Displayed Claim Is Addressable\n\n*The substrate the architecture bet rests on, named in [research/structure-versus-scale.md](research/structure-versus-scale.md) and specified operationally in the project `CLAUDE.md` § UX Directive: Every Claim is a Link. Added here 2026-08-17 because this page had never stated it.*\n\n**If a claim is readable it is contestable, and the interface must make that true everywhere** — extraction results, related claims, concept senses, relationship cards, feed items, synthesis citations. The claim text itself is the affordance, not a surrounding card or a separate button.\n\n**Why it is the load-bearing one.** Every layer above it presupposes that the claim is the granularity people work at: typed edges, propagated strength, critical questions, decomposition, the hinge, the residue map, the correction UX. If people engage document-wide while claim-level tools sit in front of them, the machinery serves a resolution nobody uses and prose with permalinks would do as well. That is the wiki rival, stated concretely — and it is why *whether people point at claims* is the one signal that would redirect the whole build. **Addressability is what makes pointing possible**; without it the signal cannot even be measured. Read with [P21](#p21-co-present-use--two-people-one-graph) and with the modality caveat in [research/interaction-modalities-and-the-pointing-test.md](research/interaction-modalities-and-the-pointing-test.md).\n\n## Anti-Patterns (What Deliberus Must Never Do)\n\n1. **Never demand formal structure as input.** If the user has to select \"normative claim\" from a dropdown before typing, we've failed.\n2. **Never collapse quality and stance into one signal.** No single upvote/downvote. Always two axes.\n3. **Never optimize for engagement over understanding.** Time-on-site is not a success metric. Quality of belief updating is.\n4. **Never present AI-generated structure as authoritative.** The confirmation step is sacred. The user always has the last word on what they meant.\n5. **Never force depth.** Every level is self-sufficient. Deeper engagement is always discoverable and rewarding, never required.\n6. **Never delete superseded formulations.** Understanding evolves. The evolution trail is content.\n7. **Never treat mobile as degraded desktop.** Mobile users are the primary data source. Their evaluations produce the quality scores that desktop analysts rely on.\n8. **Never notify for vanity metrics.** Epistemic notifications only: challenges to your reasoning, new evidence, belief updates.\n9. **Never let the LLM do the thinking.** Scaffold, don't replace. The confirmation step must provoke engagement, not rubber-stamping. (P14)\n10. **Never use a single global reputation number.** Stack Overflow's failure mode: reputation becomes an end in itself. Use four independent signals (calibration, argument quality, intellectual honesty, evidence contribution) — never aggregated. (See [research/epistemic-gamification.md §8](research/epistemic-gamification.md))\n11. **Never use opaque rankings.** Every surfaced argument must show WHY it was surfaced. (P17)\n12. **Never optimize for engagement signals** (click-through, time-on-page, re-sharing) as primary ranking inputs. These are weak proxies, overridable by epistemic signals.\n\n---\n\n## Research Foundation\n\nEach principle draws on specific research. The detailed explorations live in dedicated docs:\n\n| Principle | Primary Research |\n|-----------|-----------------|\n| P1: Graph as map | [mobile-argument-ux.md](research/mobile-argument-ux.md), [graph-visualization.md](research/graph-visualization.md) |\n| P2: Quality ≠ stance | [epistemic-gamification.md](research/epistemic-gamification.md), [bridging-arguments.md](research/bridging-arguments.md) |\n| P3: Voice-first | [mobile-argument-ux.md §3](research/mobile-argument-ux.md) |\n| P4: sorry model | [lean-deliberus-analogies.md §1](research/lean-deliberus-analogies.md), [lean-social-system-research.md §1](research/lean-social-system-research.md) |\n| P5: Blueprint interface | [lean-deliberus-analogies.md §1](research/lean-deliberus-analogies.md), [lean-social-system-research.md §3](research/lean-social-system-research.md) |\n| P6: Three resolutions | [progressive-disclosure.md](research/progressive-disclosure.md) |\n| P7: Single-player entry | [single-player-utility.md](research/single-player-utility.md) |\n| P8: Session completion | [mobile-argument-ux.md §8](research/mobile-argument-ux.md) |\n| P9: Epistemic notifications | [mobile-argument-ux.md §4](research/mobile-argument-ux.md), [feed-algorithm-design.md](research/feed-algorithm-design.md) |\n| P10: Knowledge flywheel | [lean-deliberus-analogies.md §2](research/lean-deliberus-analogies.md) |\n| P11: Data ownership | [single-player-utility.md §6.5](research/single-player-utility.md) |\n| P12: Deprecation over deletion | [lean-deliberus-analogies.md §4](research/lean-deliberus-analogies.md), [semantic-disambiguation-and-concept-tracking.md](research/semantic-disambiguation-and-concept-tracking.md) |\n| P13: Composing = retrieval | [sketches.md §6](sketches.md), [semantic-disambiguation-and-concept-tracking.md](research/semantic-disambiguation-and-concept-tracking.md) |\n| P14: Interpassivity warning | [zizek-schmachtenberger-connections.md](research/zizek-schmachtenberger-connections.md), [adoption-problem.md §8](research/adoption-problem.md) |\n| P15: Argument bundles | [sketches.md §2](sketches.md), [object-model.md](object-model.md) |\n| P16: Onboarding hook | [epistemic-gamification.md §7](research/epistemic-gamification.md) |\n| P17: Feed as dashboard | [feed-algorithm-design.md](research/feed-algorithm-design.md), [sketches.md §4](sketches.md) |\n| P18: Concept tracking | [sketches.md §7](sketches.md), [semantic-disambiguation-and-concept-tracking.md](research/semantic-disambiguation-and-concept-tracking.md) |\n| P19: De Bono thinking hats | [simplenote-archive-analysis.md §6](research/simplenote-archive-analysis.md) |\n| P20: Structuring gradient | [structuring-gradient-lineage.md](research/structuring-gradient-lineage.md), [structure-versus-scale.md](research/structure-versus-scale.md) |\n| P21: Co-present use | [islands-of-coherence.md §5c](research/islands-of-coherence.md), [incentives-analysis.md](research/incentives-analysis.md) |\n| P22: Absence is a state | [strength-layer-audit.md §2b](research/strength-layer-audit.md), [session20-the-strength-layer-and-the-unspecified-middle.md](research/session20-the-strength-layer-and-the-unspecified-middle.md) |\n| P23: Addressability | [structure-versus-scale.md](research/structure-versus-scale.md), [interaction-modalities-and-the-pointing-test.md](research/interaction-modalities-and-the-pointing-test.md) |\n| Founding convictions | [vision.md](vision.md), [adoption-problem.md](research/adoption-problem.md) |\n| The core dialectic (analysis ↔ attunement) | [vision.md §The Core Dialectic](vision.md) |\n\n---\n\n**See also**: [Vision](vision.md) · [Conceptual Threads](conceptual-threads.md) · [Technical Direction](technical-direction.md) · [Sketches](sketches.md)\n"}