Skip to content
← Documentation

docs/the-demo.md


The demo

tests/render-city.ts — point it at a repository the system has never seen, and it becomes a city that states its own reasoning.

─── Enterprise XI
  115 files · 662 facts → 43 districts, 113 buildings
  refused: 38× import dependency · 2 actors unlocated · 2 unplaced
  pipeline: 6 stages executed, 0 declared-only
  probes: symmetrise=confirmed embed=confirmed distance=survived weight=survived

What a viewer can tell apart

The question this artifact exists to answer is not "does it look good". It is whether a human can separate fact, interpretation, and refusal.

Click any building. It answers all five questions, per mark:

height — 21.92 world units
  from repo/bytes = 50000 · divided by the largest value currently observed,
    square-root transformed, scaled by 26, offset by 2, floored at 0.4
  scope world · warrant evidence + convention — floored at 0.4
  actually claims: tall relative to the current population of the world
  discarded (hidden-basis): the measured magnitude itself …

footprint — 3 · decorative
  from nothing · a constant per subtype, carries no semantic claim

Claim-changing marks sort first; decorative ones last. A reader who stops after two entries has seen the marks most likely to mislead.

What it refuses, in the picture

  • 38 import dependencies — the fact vocabulary has no binary state family, so there are no facts to draw. Named, counted, and absent.
  • 2 actors, 0 located — a commit licenses author → file and nothing about place. No position was invented.
  • 2 files unplaced — never co-changed, so no metric licenses a position. Omitted rather than parked at the origin, which would read as central.

What it admits about its own arrangement

co-change      compression   removed distinctions irrelevant to the claim
weight         compression
distance       lossless
shortest-path  convention    selects a reference its input does not contain
symmetrise     convention    removes distinctions relevant to its own claim
embed          convention

Three of six stages are choices, not measurements — and they are the last three, closest to the pixel. Position is evidential right up until it becomes a picture.

And the losses are witnessed, not asserted:

symmetrise  confirmed   both produce d(a,b) = 1. Two opposite relationships are one number.
embed       confirmed   the tetrahedron's four equal distances embed as 0.745, 0.972, 0.901

survived appears twice and the page says what it means: one probe passed. Absence of contradiction is not proof of correctness.

Evidence versus interpretation

460 evidence · 202 convention

File sizes, containment, commit and author counts are measured. "A commit is a transfer of work from an author to a file" is a reading. The 90-day staleness threshold is a stipulation. Both are declared rather than absorbed.


Standing

Runs on an unprepared repository? yes
Every mark traceable to a fact? yes — asserted by the manifest tests
Refusals visible? yes — three classes, counted
Ontology expanded? no

What is still not established

  • This is not the product surface. It is a standalone artifact. The 3-D app still renders deriveStructure's fixed estate, and the inspector panel wired into WorldView remains visually unverified — the app is passkey-gated and signing in is the user's action.
  • Position carries no information about coupling — 54.5% of proximity comparisons reversed, measured earlier. The page renders it and says so; it does not fix it. A viewer reading nearness as relatedness is wrong more than half the time, and the page's own stage table is what tells them.
  • Comprehension is untested. Whether a viewer reads the caveats and understands them is condition 3, and no test here can establish it.
  • One repository, TypeScript only, 115 files.

301 tests, 26 DOM, 40 mutations, tsc clean.