# Inkhaven 1.6.0 — The Living World

_The World Simulation cycle. This release finishes the world builder, gives a
world a **past**, a **people**, and a **presence at your desk**, then hands the
author's control over every layer — with the world checking each declaration for
plausibility. Plus multi-writer safety, research dead-source detection, an editor
style CLI, EPUB/RTF import fixes, and a complete companion **book**. No new
runtime crates._

## The World Simulation — from a place to a living world

Before 1.6.0 the World Simulation built a *place*: a present-day physical and
demographic snapshot. This cycle turned it into a living world.

- **WORLD-7 — finished the sim.** A bare `realworld compile` now compiles and
  materialises the *whole* world in one command (astronomy → geology → climate →
  hydrology → demographics + setting); every layer is surfaced in the `Ctrl+B W`
  overview; `realworld calendar` derives a story-Timeline calendar from the
  astronomy; `realworld validate` compiles every layer; and `realworld gazetteer`
  writes a consolidated Markdown world reference. The blanket `dead_code` allow on
  `src/world/` is retired.
- **WORLD-8 — a past.** `realworld history` infers a founding chronology + epochs
  from the settlements, with realm rise/fall and migration events, dated on the
  world's own calendar; `--materialize` writes a History chapter and it emits
  adoptable `inkhaven event add` lines for the Timeline.
- **WORLD-9 — a people.** `realworld polities` clusters settlements into named
  nations with populations and relations; `realworld culture` gives each a biome-
  drawn ethos, a belief, and a **conlang language profile** to realise in the
  ConLang suite; `realworld ecology` fills each biome with flora, fauna, and a
  keystone.
- **WORLD-10 — a presence at the desk.** `realworld weather` (season + insolation
  at a date/latitude), `realworld travel` (is a journey plausible at the mode's
  pace? — consulting the magic ledger), and `realworld scene` (a scene brief),
  plus an **in-editor scene chip** and a "This scene" header in the `Ctrl+B W`
  overview that surface the current scene's place, season, and people as you write.
- **WORLD-11 — Declare & Verify.** The layers that were purely generated —
  history, nations, river courses, culture, ecology — become **declare-or-
  generate**: pin your own in `world.hjson` (`history`, `nations`,
  `hydrology.rivers[].from/to`, `cultures`, `ecology`), the sim fills the rest,
  and `realworld` **checks your declarations for plausibility** — a river that
  runs uphill, a polar beast in the tropics, a seafaring people in a landlocked
  desert — informing you, never overruling you.

## Beyond the world

- **Multi-writer safety.** Store-mutating CLI commands now consult the same
  advisory lock the TUI uses, warning (never blocking) when a project is open
  elsewhere — closing a silent lost-update hole.
- **Research — `/deadsources`.** A dead-source sweep checks each fact's `web`
  URL (HTTP) and `document` file (disk) and reports the ones that no longer
  resolve — link-rot detection for a research corpus.
- **Inner Theologian idle nudge.** The one Inner-* companion missing its ambient
  trigger now poses its cost-of-harm question on a paragraph pause, like its
  siblings (deterministic, zero-cost).
- **Insert-time contradiction.** The Research Assistant's near-duplicate guard
  now distinguishes a *contradiction* (a negation flip, or a changed number)
  from a duplicate, and says so.
- **`inkhaven style`.** A new CLI that runs the four editor style detectors
  (filter-words, repeated-phrase, show-don't-tell, anachronism) over the whole
  manuscript — CLI/CI parity for the `Ctrl+V w` overlay; `--json` for pipelines.

## Import & robustness fixes

- **EPUB images imported.** EPUB import now brings each chapter's images in as
  `NodeKind::Image` nodes (they were dropped to a sidecar before); it also
  surfaces the `dc:creator`.
- **RTF importer never panics.** A property test caught the third-party RTF lexer
  panicking on adversarial bytes; the importer now catches it and falls back to
  plain text.

## Books & docs

- **New book — _Building the World with Inkhaven_.** A ~156-page beginner's guide
  to worldbuilding as a process, assuming no prior knowledge, in
  [`Book/BUILDING_THE_WORLD/`](../../Book/BUILDING_THE_WORLD/) — including how to
  produce a DEM (by hand, with terrain tools, from real Earth, from a text-to-
  image generator, or with **plakat**) and the full plakat↔Inkhaven map round-trip.
- **Research book Help-RAG mirror.** `Book/RESEARCH/markdown/` — a faithful
  Markdown mirror of the Research book, so `inkhaven import-help` can serve it
  from F1 help.
- **Hygiene.** Stale "Draft/In progress" headers on shipped RFCs corrected.

## Dependencies & compatibility

**No new runtime crates.** New CLI subcommands under `realworld`: `history`,
`weather`, `ecology`, `polities`, `culture`, `travel`, `scene`, `gazetteer`,
`calendar`; new top-level `inkhaven style`; new research `/deadsources`. New
optional `world.hjson` blocks: `history`, `nations`, `cultures`, `ecology`, and
`hydrology.rivers[].from/to`. All new blocks are `serde` defaults — existing
`world.hjson` files are unaffected.

Every prior release lives under
[`Documentation/RELEASE_NOTES/`](.).
