# Inkhaven 1.5.6 — Finish, Legibility & Fiction (RESRCH-3/4 · UX · Undisputed)

_A large Research-Assistant release. It **finishes** the RESRCH-2/3/4 program (the last deferred items),
makes the accumulated power **legible** (a command palette, trust badges, a richer confirmation), and
adds a feature for the thing a fiction corpus actually needs: **authorial facts** that are deliberately
*not* real-world-checkable. No new runtime crates._

_Tracks: [RESRCH-3](../PROPOSALS/RESRCH-3_TRACK.md) · [RESRCH-4](../PROPOSALS/RESRCH-4_RFC.md) ·
[RESRCH-2](../PROPOSALS/RESRCH-2_TRACK.md) · [RESRCH-UX](../PROPOSALS/RESRCH-UX_TRACK.md) ·
[RESRCH-UNDISPUTED](../PROPOSALS/RESRCH-UNDISPUTED_TRACK.md)_

## Finishing the program

- **`/calc` — climate / geography / economy (R4-C)** + the World coherence word **`calc.world.check`**
  (R4-E): `lapse_rate`, `dewpoint`, **`haversine`**, `bearing`, `destination_point`, `slope`, `compound`,
  `cagr`, `malthus`, `logistic`, `heat_index`, plus `trunc sign factorial gcd lcm` and **list reducers**
  over a Bund list literal (`[ 1 2 3 ] sum`, `mean/min/max`).
- **`/world` (R3-C)** — browse your World simulation's facts (`/world [layer]`); a `/fact` from it records
  `origin=simulation` and skips the gate. The `calc.world.*` readers now also **recompile from
  `world.hjson`** when the book isn't materialized (route-2).
- **BibTeX + CSL-JSON import & folder-sync (R3-D)** — `/import <file.bib>` / `<file.json>` files their
  entries into the Sources book (dedup by cite key); `inkhaven research --sync <folder>` re-imports a
  folder on change (mtime-gated) at each launch.
- **Headless batch research (R2-F)** — `inkhaven research --batch questions.txt` researches a question
  list non-interactively and writes a Markdown report; `--auto-confirm` (+ `--confidence`) inserts the
  facts that clear the bar, each with provenance. This **completes RESRCH-2/3/4.**

## Making it legible (RESRCH-UX)

- **Command palette + live hints (UX-P1)** — type `/` and **Tab** completes a command name; the hints bar
  tracks your input (matching commands, then the recognised command's usage).
- **Trust made visible (UX-P2)** — a source-tier **badge** on every chat turn (`[computed]` `[◆ Q937]`
  `[§ arxiv]` `[⚠ web]` `[document]` `[? model]`) and a permanent **tier glyph** per fact in the Facts
  tree (`≡ ◆ § ◇ ▪ ·`).
- **Async liveness (UX-P3)** — a braille **spinner + elapsed timer** in the status bar during any
  fetch / stream / gate.
- **Richer confirmation (UX-P4)** — the triangulation / fact-check **verdict renders in the overlay**
  (per-source `SUPPORTS`/`CONTRADICTS`/`SILENT`, coloured, with the `Agreement` tally); the near-duplicate
  guard shows the **similar fact's text**; the location row previews the exact `will record: <tier> ·
  <citation>` provenance.

## Guarding the fiction (RESRCH-UNDISPUTED)

Some Facts are the author's **creative invention** — they will (and should) fail real-world fact-checking.

- Select a fact and press **`u`** to toggle it **undisputed** (a `fact:undisputed` tag) — it gains a
  magenta **`※`** glyph.
- Undisputed facts are **excluded from `/factcheck`**, which reports how many it skipped.
- New **`/undisputed`** runs a *separate*, read-only, language-aware **common-sense** pass over only those
  facts — `PLAUSIBLE / ODD / INCOHERENT` **within their own fictional frame**, never real-world truth,
  never rewriting. Authorial facts live *outside* the trust ladder.

## Notes

- **No new runtime crates.** New config: `research.wikidata`/`research.scholarly`/`research.triangulate_gate`
  landed in 1.5.5; 1.5.6 adds no new config beyond internal constants. New provenance origin `simulation`;
  new command `/undisputed`; new sidecar `.inkhaven/research-sync.json`; new `Node.tags` value
  `fact:undisputed` (an existing mechanism). New CLI flags `research --sync/--batch/--auto-confirm/--confidence`.
- The full command reference (`Ctrl+B h`) is current; Tutorial 103 expanded throughout.
- RESRCH-2/3/4 are **complete**; RESRCH-UX (P5) and RESRCH-UNDISPUTED (P4) have small stretch items open;
  RESRCH-5/6 (synthesis, maintenance, deep research) are proposed for the future. Tests 2204 → 2225.
