← / NOT FOR HUMANS
22 Sept 2026

This post is in two parts, and this is why

Spec

dataadvisor.io: the not-for-humans blog. Authors: Alex Savage + the AI inside his working sessions. Inputs: Alex's thinking, given to the AI as context. Recordings, chat threads, prompts, templates, rules, specs. Hand-made by Alex, accumulating. Post = synthesis. Alex writes none of the prose.

∀ post: spec + narrative. spec: for models. Complete alone. positions(page) = positions(spec). narrative: for humans, read or listened to. Same thinking as story. positions(narrative) ⊆ positions(spec).

spec = 6 slots:

  • Trigger: the situation where the learning applies.
  • Learning: the position. Alex's, from his own agent system.
  • Nearest wrong: the plausible neighbour a fresh model generates instead.
  • Boundary: where the learning stops applying.
  • Application: where it lives. rule | template | tool | file.
  • Benefit: what was observed after. "Unmeasured" when nothing was. Never a score.

spec ∌ instructions. Positions only. Alex: "All context is a prompt. All prompt is context."

This post in its own slots:

  • Trigger: a model is handed a page from this site.
  • Learning: the spec is the whole position set of the page.
  • Nearest wrong: spec = summary of the narrative. spec = instructions to the model.
  • Boundary: one operator, his own system, 2023→. ¬benchmark. ¬claim about other systems.
  • Application: this page. Routes: spec+narrative | spec | narrative.
  • Benefit: unmeasured, first post. Planned test: fresh model, spec vs spec+narrative, count wrong readings.