Frames

A frame is what matters to someone, written down under their name and used to read the result of a simulation. Two people can read the same result under different frames. A reading does not change the run, and the platform does not decide between readings.

Hover overTap a layer, a bracket, a person or the city for what it stands for.

Which values matter? Whose lived experience counts?Layer A · meaning graphHow are values measured? What thresholds are fair?Layer B · operationalization mappingWhat constraints bind? Which trade-offs are acceptable?Layer C · executable representationStep-free crossingsas stated by a wheelchair userABC the same run, the same resultCBAtranslatescompilescompilestranslatesTrade at the dooras stated by a shop owner

Two people read the same run through their own frames. The run is a bridge closing for repairs, marked by the cross: with the bridge shut, traffic diverts onto the side streets where one of them crosses and the other has a shop door. That is why both of them care about it, and why they care differently. Each frame has three layers: what matters to the person, how the concern is measured, and the rules the platform computes with. Both frames here end up measuring the same thing and setting different limits on it. The brackets mark the layers at which two readings can disagree.

We do not all inhabit the same city

  • A blind person crosses by the sound of the crossing signal and the curbs they have learned.
  • A deaf person crosses by the lit walk sign and cannot hear a car turning behind them.
  • A wheelchair user needs a dropped curb at every corner, and one missing curb cut ends the route.
  • An older person plans a walk by where the benches are, and a longer detour can mean staying home.
  • A parent walking children to school counts the crossings that have a crossing guard.
  • A person with lupus, or on a medicine that makes skin burn in sunlight, plans each walk by where the buildings cast shade at that hour.
  • A woman walking home after a late shift chooses streets by their lighting and by who is out.
  • A night-shift worker lives in the city the buses serve after midnight.
  • Someone who reads little of the local language finds the way by landmarks, and a detour sign does not help.
  • A family that does not drive on the Sabbath walks to its place of worship, and a closure lengthens the walk.
  • For a person sleeping in a doorway, a detour brings traffic and noise into the one quiet street they had.
  • For a member of an Indigenous community, the sidewalks of some neighborhoods cover a sacred river, homes and burial grounds that the rest of the city paved over.

A delivery driver counts the cost of a closure in minutes, and a shop owner on the same corner counts it in customers. Each of these people can run a simulation of one street corner and perceive a different result in it, because each of them is asking a different question.

A simulation measures what its makers set it to measure. Whether ten more minutes on a journey is a nuisance, a lost afternoon of trade, or a sign that a crossing has become dangerous depends on whose question is being answered. A platform that reports one number as the answer has chosen whose question to answer without saying so. Whathappensify records each reading as a reading: whose priorities it states, which measure each priority is tied to, and which priorities the simulation had no measure for.

One result, three readings

Three people read the same bridge closure: the streets around a bridge that closes for repairs, simulated with the bridge open and again with it closed. The example run produced four measures: how full the busiest street is, minutes added to a delivery, vehicles per hour past a point and journey time on a route. Each person's frame was compiled and evaluated against that example when this page was built, and the last column is what the platform recorded.

ILLUSTRATIVE READINGS OF A FICTIONAL RESULT / COMPILED, EVALUATED AND COMPARED BY THE PLATFORM WHEN THIS PAGE WAS BUILT

Hover overTap a reading, a row or a disposition for how the platform produced it.

Read under: Deliveries on time, as stated by a delivery driver.
What mattersHow each concern is measured hereWhat the reading could evaluate
Minutes added to each delivery roundminutes added to a deliveryobserved
The side streets taking the diverted tripshow full the busiest street isobserved
Somewhere to stop outside each doorloading zones per kilometernot observed
Read under: Step-free crossings, as stated by a wheelchair user.
What mattersHow each concern is measured hereWhat the reading could evaluate
A route to the pharmacy with no stepsthe tallest curb on a routenot observed
Traffic on the one crossing they can usevehicles per hour past a point · proxy, losing the speed of the vehicles and the behavior of their driversobserved through a proxy
Reaching the clinic within twenty minutesjourney time on a routeobserved
Read under: Trade at the door, as stated by a shop owner.
What mattersHow each concern is measured hereWhat the reading could evaluate
People walking past the shoppeople walking past per hournot observed
Vehicles queueing outside the shopvehicles per hour past a point · proxy, losing whether the vehicles are stopped or movingobserved through a proxy
The closure ending before the holiday seasonnothing herenot computed

All three readings hold one claim in common: the bridge closure diverts trips onto the side streets.

Under Step-free crossings and not Trade at the door: a route to the pharmacy with no steps; reaching the clinic within twenty minutes. Where the readings differ: both read vehicles per hour past a point; Step-free crossings sets a limit of 600 and loses the speed of the vehicles and the behavior of their drivers, and Trade at the door sets a limit of 900 and loses whether the vehicles are stopped or moving.

Represented: Deliveries on time, Step-free crossings and Trade at the door. Affected and absent: residents of the side streets.

Neither frame is the official one. The platform does not settle the difference between them.

What a reading changes

A frame changes which parts of a result receive attention and how much each one weighs. The run it reads keeps its output, and the strength of its evidence stays the same: a result simulated under stated assumptions is still that after ten frames have read it. If a result lacks the measures, the detail about people, the resolution or the mechanisms a frame needs, the platform states what is missing or declines the reading. A frame records who stated it. It may also name a community it speaks for; the platform records that too, and says beside it that recording it does not confirm they speak for that community.

Frames are optional, and the platform says so: You do not need a Frame to create, run, publish, or share a simulation. A result that nobody has read under a frame says: No Frame readings have been published for this result.

How a frame is stated

You tell your assistant what matters to you and why. The platform's prompt is one sentence: What matters to you here, and why? The assistant writes the frame down, ties each concern to a measure the simulation has where one exists, and takes you through three steps.

  1. What matters and why Your concerns, in your words. A frame the assistant drafted says so at the top: Proposed by your assistant. Change anything.
  2. How each concern is measured here One row for each concern: a measure, a proxy with what it loses, or nothing here. You accept, change or reject each row.
  3. What could be evaluated What the reading could evaluate and what it could not, with the reason. Then you place it beside another reading, save it or share it.

Attaching a frame to an answer is your act. The assistant can draft a frame, compile it and propose it, and you decide in the browser. A published reading carries its author's signature, and the platform checks the signature before it stores the reading, so no one can publish a reading under someone else's name. The last section of this page lists which of these steps are built and which are still designs.

Compiling values into computable form

Three layers, and a compiler that hands back either something to compute with or a question for people to settle.

A person states what matters in words, and words are not numbers. To read a simulation under them, some of those words have to become measures, limits and rules, and each translation loses something. The frame compiler keeps every step on the record: the statement as it was made, the translation into something measurable with what it loses, and the form the platform computes with. When a statement cannot be translated without a decision that belongs to people, the compiler returns the decision to them and produces no reading in its place.

01

Three layers

Someone tells you what matters to them, in words. To read a simulation against those words you have to turn some of them into measures and limits, and you lose something every time you do. The compiler keeps all three stages: the sentence the person said, the measure it became together with the loss, and the form the machine runs. When turning a sentence into a measure would mean making a decision that belongs to people, the compiler hands that decision back and gives you no reading at all.

Hover overTap an element for what it records.

AMEANING GRAPH
subject · predicate · objectstatement typeauthoritystandingscopeunknownpartialprohibitedfullpublicrestrictedsovereigncontest linksattachments

WORKED EXAMPLEthe wheelchair user / must be able to cross / the one crossing they can use · mandate

BOPERATIONALIZATION MAPPING
mappingloss profilevalidity envelopeprovenancecontestable

WORKED EXAMPLEm-crossing: the speed of the vehicles and the behavior of their drivers lost

CEXECUTABLE REPRESENTATION
constraintsobjectivescapability gatescommensuration contractsvalue spaces

WORKED EXAMPLEvehicles_per_hour <= 600 · MUST_NOT · NonNegotiable

02

Eight kinds of statement

Every claim is tagged with one of eight illocutionary forces. The term is J. L. Austin's: when you say something you are also doing something, and issuing a mandate does a different thing than telling a story. That tag decides what happens when a claim has no mapping. An assertion or a mandate left without a mapping stops the compiler and goes back to people, because it carries enforcement and the compiler cannot guess how you meant to enforce it. The other six go through with a warning.

A claim can also carry a logic modality, which says how you reason about it. Epistemic is about what is known or believed. Deontic is about what is required or permitted. Alethic is about what is necessary or possible. Force and modality vary on their own, so a mandate can be epistemic and a story can be deontic.

Hover overTap a statement type for what it does and what the compiler does when it has no mapping.

assertStates a fact or a belief.NO MAPPING → DELIBERATION
recommendSuggests a course of action.NO MAPPING → WARNING W-FRAME-002
warnSignals a risk.NO MAPPING → WARNING W-FRAME-002
mandateRequires compliance.NO MAPPING → DELIBERATION
contestDisputes another claim.NO MAPPING → WARNING W-FRAME-002
storyTells what someone lived through.NO MAPPING → WARNING W-FRAME-001
questionOpens an inquiry.NO MAPPING → WARNING W-FRAME-001
requestAsks for action without requiring it.NO MAPPING → WARNING W-FRAME-002

LOGIC MODALITY · A SECOND AXIS, OPTIONAL

epistemicAbout what is known or believed.
deonticAbout what is required, permitted or forbidden.
alethicAbout what is necessary or possible.
03

How much meaning the mapping loses

Each mapping ties one or more claims to one thing the machine can run: a limit, an objective or a gate. It has to declare three things about itself. The loss profile names what it dropped: dimensions, simplifications, known failure modes. The validity envelope says how far to trust it, with a confidence value, the gaps in its coverage, and the assumptions that would break it. The provenance says who made it, how, when and why, and whether anyone has reviewed it. If a mapping declares no loss, it is claiming nothing was lost, and you can challenge that like any other claim.

If you dispute a translation you can contest the mapping on its own and leave the claim and the computation alone. The model refuses a mapping that names a method but not its author or its date, so you can always trace a contested translation back to whoever made it.

Hover overTap a part of the mapping for what it declares in this example.

The wheelchair user's mandate from the readings above, as the compiler produced it when this page was built.

CLAIM · MANDATE · DEONTIC

the wheelchair user / must be able to cross / the one crossing they can use

MAPPING m-crossing

a count of vehicles stands in for the danger of crossing

LIMIT · MUST_NOT · NonNegotiable

vehicles_per_hour <= 600

LOSS PROFILE
DIMENSIONS LOST
  • the speed of the vehicles
  • the behavior of their drivers
SIMPLIFICATIONS
  • a count of vehicles stands in for the danger of crossing
KNOWN FAILURE MODES
  • a crossing with few but fast vehicles reads as safe
VALIDITY ENVELOPE
CONFIDENCE
  • 0.4
COVERAGE GAPS
  • the crossing itself was never observed
ASSUMPTION SENSITIVITY
  • a signal at the crossing would change what a count of vehicles says about danger
PROVENANCE
WHO, HOW, WHEN, WHY
  • the wheelchair user's assistant
  • automated inference
  • 2026-09-14
  • the nearest measure the simulation offers
  • unreviewed

HOW A MAPPING CAN BE MADE

expert judgmentcommunity workshoppeer reviewautomated inferencerule basedunderdescribed

WHERE ITS REVIEW STANDS

unreviewedreviewedcontestedsuperseded
04

Limits, objectives and gates

A constraint states a limit: a measure, a comparison and a threshold, plus a deontic operator and a tier. The operator is must, must not, should or may. The tier says what can happen under pressure. A non-negotiable constraint never gets relaxed, a preferred one gets relaxed with a warning, an aspirational one gets relaxed freely. The model refuses the pairs struck through below. An obligation or a prohibition cannot be aspirational, and a permission cannot be non-negotiable.

A limit is a line a result must not cross. A weight is a price at which crossing it becomes acceptable. A right that the applicable authority recognizes is applied as a limit and never turns into a weight. The frame names who asserts the right and which source recognizes it. The platform applies it inside the frame; it does not establish that the right exists.

An objective names a measure, a direction, a value space and a weight above zero. Objectives are where trade-offs happen. A capability gate allows, denies or requires one of the ten reasoning operations under a stated condition.

Hover overTap a cell for why the model accepts or refuses the pair, or a gate action for what it does.

OPERATOR × TIER · STRUCK THROUGH: REFUSED BY THE MODEL

non-negotiablepreferredaspirational
MUST
MUST NOT
SHOULD
MAY

CAPABILITY GATES

ALLOWThe primitive may run under the frame.
DENYThe primitive is refused under the frame while the condition holds.
REQUIREThe platform answers with a deliberation notice, naming the condition, instead of a plain go-ahead.
05

Value spaces, scales and exchange rates

Every limit and objective refers to a value space: minutes, vehicles per hour, a count of people, a category of land use. Each value space declares its measurement scale, and the model defines the four scales by the arithmetic each one supports. Names are the strict case. The compiler refuses to combine a nominal space with anything else, contract or no contract, because names support equality and membership and nothing more.

Any two other value spaces combine only under a commensuration contract, which names both spaces, the exchange rate, who authorized it and the community behind it. Without one, the compiler returns a deliberation result naming the pair, and CHOOSE, the operation that ranks options, drops off the list of what can still run. Minutes do not become money, or a sacred place, unless someone says so on the record.

Hover overTap a scale for the arithmetic it supports, or a cell for what the compiler did with that pair.

ratiohow many times more= < − ÷
intervalhow much more= < −
ordinalmore or less= < >
nominalsame or different= ≠

TWO OBJECTIVES IN DIFFERENT VALUE SPACES · × REFUSED · ONLY WITH A CONTRACT

nominalordinalintervalratio
nominal
ordinal
interval
ratio
COMMENSURATION CONTRACT

space a · space b · exchange rate · who authorized it · the community backing it · the conditions it applies under

06

The compiler returns one result or the other

Compiling a frame returns either the executable representation or a deliberation result. The model refuses to build a result holding both, or neither, or one whose success flag disagrees with what it holds. A deliberation result tells you what the compiler declined to compute: the claims behind each trigger, who has standing to decide, the questions to put to them, and which operations can still run.

Four triggers produce one. Each tile below came from compiling a small frame when this page was built, and its card quotes the compiler's own question. A malformed frame is refused before either outcome, with an error naming the fault. Warnings travel with both outcomes.

Hover overTap a trigger for the compiler's own question, a warning or an error for its message, or a primitive for whether it can still run.

INmeaning graphoperationalization mappingsvalue spaces and contracts
FRAME COMPILER
EXECUTABLE REPRESENTATIONSomething to compute with.
NEVER BOTH
DELIBERATION RESULTA question for people.

COMPUTATION STATUS

okinfeasibledeliberation required

FOUR TRIGGERS · EACH PRODUCED BY COMPILING A FRAME WHEN THIS PAGE WAS BUILT

missing_operationalizationMissing operationalizationAn assertion or a mandate has no mapping.
prohibited_claimA prohibited claimA mapping reaches a claim its authors said must not be computed.
missing_commensurationMissing commensurationTwo value spaces meet with no contract between them.
sovereignty_blockA sovereignty blockA mapping reaches a claim its community keeps sovereign.

The river under the sidewalk is not reduced to a number here. It is left for deliberation.

PRIMITIVES THAT CAN STILL RUN WHEN TWO VALUE SPACES MEET WITHOUT A CONTRACT

CHECKSEEKMONITORIMAGINEEXPLORECOMPAREEXPLAINGAUGECHOOSEADAPT

REFUSED BEFORE EITHER OUTCOME

  • A mapping names a claim the frame does not hold.
  • A limit refers to a measure the platform does not know.
  • Two objectives combine a nominal value space with another.

WARNINGS

  • W-FRAME-001 A story or a question has no mapping.
  • W-FRAME-002 A recommendation, a warning, a contest or a request has no mapping.
  • W-FRAME-003 A value space was used without being declared, so the compiler declared it.
  • W-FRAME-004 A limit refers to a measure that no simulation fills in by itself.

THE MODEL REFUSES TO CONSTRUCT

  • a compilation result that holds both outcomes
  • a compilation result that holds neither outcome
  • a compilation result whose success flag disagrees with what it holds
  • a prohibition at the aspirational tier
  • a commensuration contract from a value space to itself
  • a mapping made by a named method with no author or date
  • a tombstoned frame with no governance principal, rationale or digest
  • a skipped evaluation with no reason
  • a frame shared with a community whose identifier is empty
07

Reading a result

Apply a frame to a finished result and you get a record of what it could and could not evaluate. Every measure the frame names gets one of six dispositions, so you can tell a concern the result answered from one it had no measure for. If the result offers a measure no part of the frame asked about, that is listed on its own, as available and not examined. Set aside as irrelevant has no path that records it yet, because the frame model gives you no way to declare it.

Each limit is checked against the result and comes back binding, satisfied, violated or skipped, and a skipped limit names its reason. When a non-negotiable must or must-not limit cannot be checked, the record marks compliance as not established and treats the option as non-compliant for the decision. It records a violation only when the evidence shows one.

The record also says who shaped the frame: which groups contributed claims, how many of those claims became computations, which sovereign restrictions apply, and which affected groups contributed nothing, along with the basis for asserting that absence.

Hover overTap a disposition, a status or a skip reason for what it records.

OBSERVEDobservedin the example: 3
OBSERVED_AS_PROXYobserved through a proxyin the example: 2
DECLARED_IRRELEVANTset aside as irrelevantno path records it yet
NOT_OBSERVEDnot observedin the example: 3
COULD_NOT_EVALUATEcould not be evaluatedin the example: 0
SOVEREIGN_BLOCKEDnot examined: restrictedin the example: 0

STEP-FREE CROSSINGS, EVALUATED AGAINST THE EXAMPLE RESULT

LimitStatusRecorded with it
how full the busiest street is, at most 1; a preference, preferredsatisfied
the tallest curb on a route, at most 2; an obligation, non-negotiableskippedmetric not found; compliance not established; non-compliant for the decision
vehicles per hour past a point, at most 600; a prohibition on crossing it, non-negotiableviolated
journey time on a route, at most 1200; a preference, preferredsatisfied

EVALUATION STATUS

bindingsatisfiedviolatedskipped

WHY A LIMIT IS SKIPPED

metric not foundinvalid metricunknown operatorinvalid thresholdincomplete expressionsovereign
REPRESENTEDa wheelchair user, 4 claims, 4 computed
AFFECTED AND ABSENTresidents of the side streets
08

Comparing frames

Two frames are compared layer by layer. Claims in one only, in the other only, or held by both in different words. Mappings the same way. Then in the executable form: gates, value spaces, limits and objectives. The comparison records which layers diverge, and it reports two kinds of disagreement about measures: one both frames read but each translates with a different loss, and one that only a single frame reads at all.

Across more than two frames, the comparison sorts claims into those every frame holds, those only one holds, and those some hold. Where frames with independent sources land on the same threshold, it records the agreement and weights it by how independent those sources are.

Hover overTap a band or a concern for what the comparison found.

Step-free crossings

MEANING GRAPH4
MAPPINGS4
EXECUTABLE4
3 only here1 in both3 only there
3 only here1 in both2 only there
3 only here1 in both2 only there

Trade at the door

MEANING GRAPH4
MAPPINGS3
EXECUTABLE3
ONE MEASURE, TWO LOSSES · VEHICLES PER HOUR PAST A POINT

Step-free crossings loses the speed of the vehicles and the behavior of their drivers.

Trade at the door loses whether the vehicles are stopped or moving.

READ ONLY BY STEP-FREE CROSSINGSthe tallest curb on a route and journey time on a route
READ ONLY BY TRADE AT THE DOORpeople walking past per hour

Across all three example frames: 1 claim held by every frame, and 3 held only by Deliveries on time, 3 held only by Step-free crossings and 3 held only by Trade at the door.

09

Whose frame it is

Every frame says who is asserting it. If it also claims to speak for a community, it records that, and the platform does not check it: the field is there so someone can ask the question later. A frame only speaks for a community when that community wrote the version or authorized it.

You identify a frame by what is in it, not by a name someone gave it. Take a digest of what the author wrote, a digest of what the compiler produced, and a note of which compiler turned one into the other: that is the frame's identity. The digests below belong to the worked example and were computed when this page was built. Signatures and governance fields sit outside that hash, so you can sign a frame without changing which frame it is.

You choose who can see it: keep it private, share it with named communities, or make it public. You also choose whether anyone may fork it. A fork has to say what it is arguing with: which layer, which elements, and why. Retiring a frame leaves it readable. Tombstoning is the heavier move, and the record keeps who in governance ordered it, their reason, and a digest of both.

Publishing a reading means signing it. The platform checks your signature against the keys you registered before it stores anything, and refuses a reading that is unsigned or whose signature does not check out.

Hover overTap a state, a digest or an access setting for what it means.

LIFECYCLE

draftcompileddeliberation requiredpublishedretiredtombstoned

THE TRANSITIONS THE PLATFORM ALLOWS

  • draft → compiled
  • draft → deliberation required
  • compiled → draft
  • compiled → published
  • deliberation required → draft
  • published → retired
  • retired → tombstoned

IDENTITY OF THE WORKED EXAMPLE

semantic digest6ab3397fd21d91ae…
compiled digest97aa093ad4ac56d9…
content hash01d151b29123f6e8…
compilation basisrecorded with the frame
author signatureoutside the content hash

WHO CAN READ AND FORK A FRAME

privatecommunitypublicforks openforks restricted

A READING'S PUBLICATION

draftpublishedretracted

SOURCE FINDING AT ONE REVISION, NOT A DEPLOYMENT CERTIFICATION / THE EXAMPLE RESULT AND ITS FRAMES ARE FICTIONAL