Replace focus with typed detail rules; ship titles as stock lenses

A detail rule is a function from place to detail level. Each consumer
chooses its own level-of-detail rule. Dungeon uses ByDistance anchored on
important subjects, the player first. Delvehold starts from Uniform.

Rules are typed world data that the library evaluates, not consumer code.
The deficit a rule produces is an admission input, and journal replay
re-runs reduce, so a changed consumer function would break committed
history. WorldScaleIntent per-kind targets remain the ceiling a rule
distributes.

The eight titles move into the library doc as the stock lens set. The
kernel extraction is ordered as plan step 15 pass L0, ahead of every
library pass.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Meta Vens 2026-09-15 22:55:18 +02:00
commit e19c9d9bda
7 changed files with 120 additions and 117 deletions

View file

@ -277,13 +277,13 @@ chooses a Vault, describes the experience, sets title weights, sketches,
chooses a start, activates, and plays by speaking, gesturing, and travelling
while detail grows toward them. It proves one player; hosted play and
multi-player membership are not in this gate. Plan step 15 tracks library
passes L1–L4 and Dungeon passes D1–D3; D3 closes the gate.
passes L0–L4 and Dungeon passes D1–D3; D3 closes the gate.
Dungeon is a consumer of the Ghostlight library. Session Zero is Dungeon
authority; the library capabilities it needs are consumer-neutral and live in
the ontology doc's "Elaboration lenses and focus (target)". The world kernel
still sits in `crates/ghostlight-dungeon`; whether to extract it first is an
open operator decision.
the ontology doc's "Elaboration lenses and detail rules (target)". The world
kernel still sits in `crates/ghostlight-dungeon`; L0, extracting it into a
library crate, is the next cut.
Also owed on the way, found 2026-09-15 by reading source:

View file

@ -865,19 +865,21 @@ no utterance; one carrier, one command per turn).
Adopted 2026-09-15. Two owners, one ordering. Library capabilities,
consumer-neutral, are specified in `docs/architecture/ghostlight-world-ontology.md`
under "Elaboration lenses and focus (target)". Ghostlight Dungeon's Session
Zero consumes them and is specified in
under "Elaboration lenses and detail rules (target)". Ghostlight Dungeon's
Session Zero consumes them and is specified in
`docs/architecture/ghostlight-session-zero.md`. This entry only tracks state.
Open decisions first: whether the world kernel is extracted from
`crates/ghostlight-dungeon` into a library crate before the library passes
(recommended), and whether the eight titles ship as a library stock lens set
(recommended).
Operator decisions, 2026-09-15: the world kernel is extracted from
`crates/ghostlight-dungeon` into a library crate before any library pass, and
the eight titles ship as the library's stock lens set.
Library passes: (L1) lenses, weights, sampler, and concurrent sessions over
today's demand; (L2) per-world evidence binding on every elaborator session;
(L3) focus, detail profile, distance-weighted demand, and the permille, root,
and genesis-subject cuts; (L4) individuation in the nearest band. Dungeon
Library passes: (L0) extract the kernel into a library crate with a real
public boundary; (L1) the stock lens set, weights, sampler, and concurrent
sessions over today's demand; (L2) per-world evidence binding on every
elaborator session; (L3) typed detail rules (`Uniform`, `ByDistance`),
rule-driven demand under the world-target ceiling, and the permille, root,
and genesis-subject cuts; (L4) individuation where a place's level asks for
persons. Dungeon
passes: (D1) Vault registry and world creation with lens weights and detail
profile; (D2) the Session Zero Eve surface; (D3) travel affordance and
per-affordance player controls, which closes the playtest gate.