Roles, snapshots and the record

Who may touch it, what it looked like, and who changed what

Four roles on a twin, the twin frozen at every approval and on demand, a diff between any two moments, and every change anybody made with their name on it. This is the page an auditor opens, and it is one screen in the application.

Build a twinSecurity

numbermarch boardnowmovedHeadcount4648Revenue under contract55%61%Cash on hand1.85M1.52MMonthly churn0.9%1.4%Price elasticity-1.3-1.3Supplier lead time4 wk4 wkTop customer share18%18%4 of 7 numbers moved between the two moments; the decision stood on the first

Roles

Four roles, and what each may do

A seat is a person on the account. The role on the seat decides what that person may do on every twin the account holds. The check is in one place on the server, so a viewer's read only seat is read only on every route, not on the routes somebody remembered.

RoleReadsUploads and editsRuns and proposesApprovesSeats, keys and hooks
OwnerYesYesYesYesYes
ReviewerYesYesYesYesNo
AnalystYesYesYesNoNo
ViewerYesNoNoNoNo

Somebody with an account on the site is active the moment their seat is added. Anybody else is invited and becomes active when they sign up with that address. On a private deployment, sign in is whatever that server already uses, including single sign on where it has one.

Snapshots

The twin, frozen

01

What a snapshot keeps

Every row of the ledger with its value, band and origin; the shape of the map, every named thing on it with its weight; the list of files; the count of agents and edges; the readiness score; and the version of the software. Enough to answer any question about what the model believed that day, and nothing heavier.

  • Taken by hand with a name and a note
  • Taken by the software the moment a decision is approved
  • Kept until somebody deletes it, which the record shows
02

The diff

Any snapshot against any other, or against the twin as it stands now. What moved, sorted by how far; what was added and removed; which numbers came off an industry default onto something the record said, and which fell back; what the map gained and lost; which files arrived. Then the same thing in three plain sentences.

numbermarch boardnowmovedCash on hand1.85M1.52MCustomers2423Headcount4648Marketing spend42k55kMonthly churn0.9%1.4%Revenue under contract55%61%Price elasticity-1.3-1.36 of 7 numbers moved between the two moments; the decision stood on the first
03

Why it matters

A decision approved in March stood on the twin as it was in March. By June the ledger disagrees with it in eleven places. The snapshot is how the June board sees the March evidence exactly, and the diff is how it sees what changed in between.

The record

Every change, with a name on it

Files added, numbers edited by hand, scenarios run, networks trained, questions analysed, decisions proposed and signed, snapshots taken, stress tests run, actuals recorded, forecasts pinned, ledger rows moved to what the actuals implied, keys minted and revoked, hooks added and removed. Most recent first, with who did it and the detail the software kept.

It has been written since the first version. This is the version that reads it back, on one screen, next to the people and the snapshots, because those three things are what an audit is.

  • Eighty most recent changes on the screen, all of them in the database
  • A hand edit shows what the number was before
  • A recalibration shows the metric that drove it
Reference effectdefaultOnboarding timedefaultQuota rampdefaultCapacity per personderivedMonths of runwayderivedRevenue per customerderivedMonthly churndocumentCustomer countdocument