Resident Inventor static histories
_data/resident_inventor.json is the sole editable content source: one base model
and nine histories. Thin ordinary Jekyll pages under 0-resident-inventor/histories/
identify records through history_id, declare approved permalinks, and use the
shared resident-inventor-history layout and resident-inventor includes.
history_order preserves the former explorer’s latest-updated ordering, followed
by the original order of undated histories. This is navigation order, not event
chronology. When updating a history’s updatedAt, review its directory order.
The source 0-resident-inventor/index.html retains the public permalink
/0-about/resident-inventor.html. It is the introduction, linked history
directory, static base diagram and five explanatory articles. Every history page
contains its complete HTML sequences without JavaScript. Desktop sequences scroll
horizontally; mobile sequences flow vertically. JavaScript updates overflow hints
only. OEI’s branch is an ordinary ECH link, and its suppressed implicit returns,
custom labels, overlapping causal threads and featured caption remain intact.
To add a future history, add its structured record and one thin page. The shared directory discovers the page. This does not add it to Rabbit Hole; that requires separate editorial approval and an explicit registry entry.
Old index ?history= URLs use a generated page-to-ID map and location.replace to
reach canonical histories. Only matching, in-range loop fragments survive.
Without JavaScript, the index and all history links remain readable.
The immutable migration fixtures in tests/fixtures/resident-inventor/ capture the
original nested data, index, and renderer. Do not edit them alongside current
content to make tests pass. Deliberate future historical updates should explicitly
review/update the preservation expectation rather than silently changing history.
The only migration text adjustment is “ECH tab” → “ECH history.”
Run python tests/verify-resident-inventor.py --site _site after a real Jekyll
build. It checks exact nested parity, per-node article HTML, branch/return/caption
behavior, metadata, headings, links, model annotations, introduction and five
articles, plus every approved Rabbit Hole manifest/control. Use –baseurl for a
build made with a nonempty deployment base path.