qproj eye icon qproj design docs

Quell integration

design · draft · NLP and argumentation · edited 2026-11-06

Sketch. Nothing here is built; Quell has no debate, reading or dialogue code yet.

The player’s loop

flowchart TB
  READ["read in-world texts"] --> HL["highlight + take notes"]
  HL --> BANK[("statements collected")]
  BANK --> IN{"how the player argues"}
  IN --> FT["free text (dropped)"]
  IN --> TE["thinking editor"]
  FT --> DEB["debate an NPC"]
  TE --> DEB
  DEB -->|NPC answers| IN
  DEB -->|win or move on| NEXT["next area / next run"]
  NEXT -->|keep what you know| READ
  click FT href "debate-spike.html"
  click DEB href "debate-evaluation.html"

Runtime pieces

flowchart LR
  subgraph Assets["content (RON)"]
    TXT[("texts + spans")]
    SB[("statement bank")]
    NPC[("NPC repertoires")]
  end
  subgraph Quell["Quell services"]
    RD["reading"]
    ARG["argue: editor<br/>or free-text parse (dropped)"]
    DB["debate"]
    DL["dialogue"]
  end
  CORE["q_pta (pure Rust):<br/>derive_code, lever options"]
  TXT --> RD --> ARG
  SB --> ARG --> DB
  NPC --> DB
  DB --> CORE
  DB --> DL
  click ARG href "debate-spike.html"
  click DB href "debate-evaluation.html"

Structure, not judgement

For now the game only checks structure: does the argument have a type, and does the lever fit it? Whether it’s good, and who wins, is later research.