The folder contract the script imports. A research program Kieran shapes and a model (the "seat") writes down. "I" in these files is the seat unless a line is quoted as his. The first write-up explained the misses instead of counting them; Kieran's objection ("this is cyclic") is in the file, and so is the retraction. Snapshot of 2026-10-15 from the private repo; local addresses and paths scrubbed, nothing else changed.
"""One place for the folder contract. Topic is always a parameter; never a constant."""
from pathlib import Path
ROOT = Path(__file__).resolve().parent.parent
def topic_dir(topic: str) -> Path: return ROOT / "topics" / topic
def sources(topic: str) -> Path: return topic_dir(topic) / "sources"
def manifest(topic: str) -> Path: return sources(topic) / "manifest.jsonl"
def derived(topic: str) -> Path:
d = topic_dir(topic) / "derived"; d.mkdir(parents=True, exist_ok=True); return d