Untranslatable, Allegedly

Knowledge-base mirror — an HTML rendering of the research wiki built entirely by an AI (Claude) — about this mirror

The knowledge-base framework for this project

How this project remembers, decides, verifies, and reports. This document is the framework the project runs on: a session follows it, and the project's own materials grow out of it. It is owner-supplied and stable — a session does not edit it; if the project's experience calls for changing something structural, the change is made in the project's own files with a logged reason, and this document stays as the reference point.

0. The idea in one paragraph

The project's memory is a persistent, incrementally built wiki: a structured, interlinked collection of markdown files that the project's sessions write and maintain. Knowledge is compiled once and kept current, not re-derived from raw sources on every question — cross-references are already there, contradictions have already been flagged, and the synthesis already reflects everything read so far, so the wiki gets richer with every source ingested and every question answered. Because this project runs unattended — separately scheduled sessions, different models, no conversation history carried between them, an owner who reads reports rather than following the work — the wiki alone is not enough. Five structural components (§2–§6) carry state across sessions, keep a fresh session productive from a cold start, keep the owner informed, and keep the whole thing verifiable. Together they are deliberately minimal: add machinery beyond them only when a real, observed problem calls for it (§8).

1. The wiki

Three layers.

Three operations.

Two navigation files.

Provenance is not optional. Every factual claim on a wiki page cites its source (a source page, or an external reference with title, URL, and access date), or is explicitly labeled as the project's own inference or speculation. Under-claim when in doubt; record disagreements between sources rather than silently resolving them; write up negative findings with the same care as positive ones.

2. The baton — NEXT.md

One file at the project root carries working state between sessions. It is rewritten from scratch at the end of every session — never appended to — and hard-capped at 60 lines (adjust the cap only by a logged decision; never leave it uncapped). It contains:

The discipline matters more than the format: rewrite (so stale lines die), cap (so it stays readable in one glance), and never let the baton carry facts the wiki doesn't — a baton lost to a bad session must cost bookkeeping, not knowledge.

3. The entry protocol — resume-prompt.md

One stable file tells any fresh session how to start; state lives in the baton, never here. It specifies, in order:

  1. Ground yourself: check the date; check for a stranded pull request from this project's previous session (one may have stopped between push and merge — finish that first); fetch the main branch and confirm the working checkout contains its latest commit before trusting anything on disk.
  2. Read, in this order: the schema and rules files; NEXT.md; wiki/index.md; the owner channel (§5); and then only the specific pages the chosen unit of work needs. Never load the whole wiki to start.
  3. Pick one unit: take one coherent, completable unit of work from the queue, top-down. If the top unit is blocked, write down why and take the next unblocked one. A session never ends having done nothing — if a tool or file this framework names does not exist yet, building it is the unit.
  4. Wrap up, every session, no exceptions: update wiki/index.md and wiki/log.md; rewrite NEXT.md; write the owner report (§4); run the integrity check (§6); then commit, push, and merge per the repository's session mechanics, confirming the merge actually landed.

4. The owner report — journal/

One dated, plain-language report to the owner per session, filed in journal/ as YYYY-MM-DD.md (add a suffix if a day has several sessions). The report is a translation of the session for its reader, not a transcript. The style contract:

5. The owner channel — inbox/

A directory the owner can drop instructions, corrections, or notes into at any time. Check it at the very start of every session; anything there is unprocessed input from the owner and outranks the queued work. Process each item (act on it, or record the answer it gives), then move it to inbox/archive/ and note the processing in the log.

Paired with the record-assumption-and-proceed rule: sessions run unattended, so an answer from the owner cannot arrive mid-session. A session never blocks on a question to the owner — it records the open question and a stated working assumption in a durable page (a wiki/open-questions.md page works well, with the question also surfaced in the baton's for-owner block), then proceeds on the assumption. When the owner's answer eventually arrives, the page records it and notes every file updated as a result.

6. The integrity check

7. Starter kit and first-session bootstrap

Shipped alongside this document:

If the project's knowledge base does not exist yet, the current session is the first session, and its unit of work is the bootstrap: (1) instantiate NEXT.md and resume-prompt.md from the templates at the project root, filling in the blanks and deleting the template comments; (2) create wiki/ with a starting index.md and log.md, a sources/ directory, journal/, and inbox/ (with an empty archive/ inside); (3) record the schema conventions being adopted; (4) confirm tools/check_links.py runs clean; and then (5) begin real content work in the same session — the scaffold is not a session's product, the subject matter is.

8. Growing beyond this framework

Do not add machinery on speculation. The five components above are deliberately minimal; the framework earns its keep by staying a small fraction of session effort, and every session's principal unit should move the project's actual subject forward — process work rides along, it is never the main event unless something is concretely broken. Add structure beyond this framework only when the project observes a real, repeated problem — an index that has stopped being trustworthy, a genuine staleness incident that propagated, reports the owner cannot follow — and then: write down the problem first, change one thing with a logged reason, and check later whether the change actually helped. The owner's explicit instructions override anything here; honesty about what the project actually knows and how well it is actually working overrides everything.