Elizabeth Felton Nemur & Friends

The accountability engine · SOURCE / POWER / PATH

The Triple Lens

Three questions asked of every object in this portfolio: where did this come from, who holds the power here, and what happens next. Nothing on this page calls a language model. The engine reads records that exist, shows you the query it ran, and refuses when there is nothing on record.

Vertical slice · deterministic serves_minors = true
SOURCE

Where did this come from?

Who made it, whether a person or a machine made it, and how complete the record is. Tiers run S1 (primary document) to S6 (unverified).

POWER

Who holds the power here?

The creator's share, who controls access, the audit right, the term length, the cost to leave, and what the other side may do with the work.

PATH

What happens next?

The one next action, how long it takes, whether it can be undone, and what doing it forecloses.

The refusal principle

“NO RECORD — refused” is an answer

A refusal is a correct result, not a failure. When the engine has no record, it says so and stops — it does not estimate, infer, or hand the question to a model that would answer confidently anyway. Every refusal on this page still shows you the query that came back empty, so you can check the question was the right one.

Free text routes on keywords, deliberately, with no classifier in the path. A keyword router that misses is inspectable. A model that misroutes is not. The routing decision is printed with every answer.

Live flags for this app

Working lens query

Ask a lens about a real object

Nine specialty lenses, each with a fixed question and a fixed answer shape. Pick one, pick one of this site's real objects, and read the deterministic answer — plus the query that produced it. Several objects will legitimately refuse.

No model in the path

Or pick a lens

Nothing asked yet

Pick a lens and an object, then run it. Try “Read my receipt” on Venue B and then on Venue A: one has bad terms that were read, the other has no terms read at all, and the engine refuses to treat those as the same thing.

The query I ran

-- nothing has been asked yet

Parameters are bound, never concatenated. User input never reaches the query string.

The single most important behaviour

Absence is not zero

An absent revenue_share_to_creator is NULL and renders “Not stated”. A real 0 renders “creator keeps 0%”. Collapsing them would claim a creator keeps nothing when in fact nobody read the contract.

NULL versus zero demonstration for two prospective venues
RecordStored valueRenderedWhat it actually meansThe right next action

[] is a statement

An empty derivative_claims: [] means the terms were read and there are none. An absent one means nobody checked. The filter below keeps them apart, so “show me things claiming no AI-training rights” never quietly includes unchecked things.

human_pledged = false

Renders as undeclared, never as false. “The creator did not take the pledge” is not “a machine made this”. Two objects here are undeclared for exactly that reason.

Severity is a max

Balance scores average over known components only, and severity is taken as a maximum — so one unread field can never dilute a five-year auto-renewing term into a decent-looking score.

Filter: derivative claims

Pick a filter to see how the three states stay separate.

The binding for this creator

Object types, the lenses they carry, and why

The why column is a human commitment, not a technical note. Two rules are enforced in the binding itself and cannot be overridden by a query.

Binding of object types to lenses with the reason for each
Object typeCarriesWhy — written as a commitment

Object register

Every seeded object, with its live badge

These are the same badges that appear on the app tiles and record rows across the site, rendered from the same records. Click any badge to open its full block.

Register of Triple Lens objects with lens badges
ObjectTypeLens badgeWhere it lives

Specialty lens library

The triads that apply to this creator

Drawn from the shared BB2G library. Each is a fixed triad with a rule attached — the rule is the part that stops the triad becoming decoration.

LENS-003 · Unsupported / Contested / Verified

Status follows evidence, not preference. Every spread on this site is contested because Giavanna Loya's grant is absent — and it stays contested however much anyone would prefer otherwise.

LENS-005 · Harm / Context / Protection

Never identify a child in analytical exports. Wild Passport therefore holds a nickname and an age band, and no location at all.

LENS-009 · Facts / Inferences / Questions

Never merge an inference into a fact. The ISBN record is a fact; “this means the rights are clear” would be an inference, and it is not one we make.

LENS-011 · Child / Parent / Professional

Age-appropriate, private and non-diagnostic. Animal Ally routes anything diagnostic to a professional instead of answering it.

LENS-012 · Creator / Audience / Market

Rights and consent override monetization. Venue B's terms are commercially workable and still refused, because they take control of the creator's materials.

LENS-008 · Urgent / Important / Watch

Urgency requires a named trigger. The only genuinely urgent item here is the contributor grant, and its trigger is named: any adaptation or narration would foreclose it.

Production truth for the Triple Lens

  • This is a faithful vanilla-JS reproduction of the engine's behaviour over seeded records. There is no database behind it; the SQL shown is the query the engine would run, with bound parameters.
  • No language model is called anywhere on this site, by this page or any other.
  • The records are honest about themselves: one object is fully verified, several are contested, two are undeclared, and one venue has no readable term at all.
  • Scores are arithmetic over the fields shown. Nothing is weighted invisibly, and every unread field is named rather than counted.