ungovr.providers.sgit.ai / The government-graph vault — open it read-only
The government-graph vault — open it read-only
It is running below, live, decrypted in your browser from the read key on this page. Nothing on this site holds a copy of it — a push to the vault changes what you see here with no rebuild and no deploy.
Prose from the government-graph vault dkeclt5r @ obj-cas-imm-b9c2cddb51e8, 9 September 2026. The vault's own pack is published raw under /briefs/. When the vault moves ahead, this page is behind — and says so rather than guessing.
Two surfaces open above. App Mode boots the vault's own index.html — five views: the seven-step join, filterable by origin and with the provenance of every node; the coverage measurement; the inferred edge; the shape of the corpus; and every retrieval with its hash. Two of its computations exist only there — the shape of the 398-law corpus, and what the 16,071 Californian bodies are. verified 9 Sep 2026 Under it, the vault browser, with the FILES / SGIT / SETTINGS rail and an explicit Read-only badge in the chrome.
It requests no permissions, makes no network call, and reads exactly one vault file. That file is deliberately not inlined into the page: sgit objects are content-addressed and immutable, so the 33 KB of measurements stay their own object and the vault client caches them — releasing a new version of the app does not re-download the numbers.
It ships
verifiedrather thanunrun, and only because somebody watched it. This page went out badged written, not yet watched working: the container that built it cannot open a browser TLS tunnel to the vault host, so the frame could never boot here. The project lead then opened it and the vault came up in App Mode — read-only chrome, five views, the join drawing. verified 9 Sep 2026 That is the only thing that moves a claim offunrun, and it is why the state existed in the first place.
How the key gets there. The frame is loaded with
?embed=1&parent=<origin>; the page waits for the frame to announce itself, then posts{sg:'vault-open', key, mode}with the target origin pinned. The key never appears in a URL and the frame keeps it in memory only. verified 9 Sep 2026
This vault is on a development host.
dev.vault.sgraph.aiis not the production browser, and publishing adev.*URL from a public site is a decision rather than a detail. It ships because the read key is the whole point of §7 and a vault nobody can open is worse than one on the wrong host — but moving to production is handback item 4, and this page changes when it moves.
The vault is the experiment; this site is the report
The division is deliberate. New data processing and visualisation happen in the vault, where a push changes what a reader sees with no rebuild and no deploy. This site reports on what the vault establishes, and carries the claim ledger that says how well each thing is known.
That is why two of the app's computations are not on this site at all. They are experiments on UnGovr's corpus rather than findings about their API, and the vault is where experiments belong.
Open it from the command line
pip3 install sgit-ai --break-system-packages sgit clone sgit_private_read_d5220d6ada858319cf31f4a4e1a3bd04fe97d647285c16c869adef651db5208d:dkeclt5r government-graph
Why publishing this key is safe, and which key it is
Two keys exist and only one of them is here.
| What it does | Publishable | |
|---|---|---|
Read key sgit_private_read_… | Decrypts and reads. Cannot commit, cannot push, cannot delete | Yes. It is how this estate shares a vault — the same way sgit.ai/llms.txt does |
Write key sgit_private_vault_… | Everything. Rewrites history | Never |
The write key for this vault was handed over out of band and is not in this repository, in any form. That is not a promise, it is a check: tools/secret-scan.sh runs over the whole tree including the built output in docs/, on every push and every pull request, and refuses the release on a match. It deliberately does not match sgit_private_read_…, and tools/check_site.py carries the same tripwire a second time against the passphrase:uuid shape an sgit key can also take.
This is the check the brief singled out as the one most likely to bite whoever built this site. It is wired first, before any content, for that reason.
What the vault holds
pack/ the specification — 7 files, published as the FIRST commit,
before any implementation existed. That ordering is the
vault's own acceptance test 13, and the only one that
passed before this session
team/ four agentic roles and the single-writer rule
data/raw/ the retrieved bytes, unmodified, so the compiled artefacts
are checkable against what they came from
data/ the compiled artefacts: the graph, both computations
provenance/ the retrieval log, including the failures
catalogue/ the catalogue submission
corrections/ ships empty, on purpose
review/ ships empty
The pack was published before the work, and the history proves it. That is the strongest demonstration the method has: a design that could be checked against the thing it specified, before the thing existed. This session's commits sit on top of it and do not disturb it.
The pack is also published raw on this site, because a site arguing for published provenance that hides its own inputs has refuted itself.
What this site copies, and what it links
Copied. The compiled artefacts — graph.json, computation-1.json, computation-2.json, the retrieval log — are copied into this repository at build time and rendered as part of the site. Every table on the coverage page and the join page is static HTML built from them. No page here fetches anything, which is a build rule, not a preference.
Linked, never embedded. The vault itself is a link. An iframe pulling another host into the page is exactly what the no-third-party rule exists to prevent, and it would break the site with JavaScript off. tools/check_site.py refuses an <iframe> anywhere in the built output.
The copy is stale the moment the vault moves ahead. The page says which vault commit it reports on rather than guessing, and that is the honest resolution rather than a fixed one.
The thirteen acceptance tests
They live in the vault, at pack/06__verification.md, and they are its property rather than this site's — this session moved their states and did not rewrite the tests.
| Passing before this session | 1 of 13 — the pack was in the vault as its first commit |
| Passing now | 9 of 13 — 1, 2, 5, 7, 8, 10, 11, 12, 13 |
| Honestly out of MVP scope | 4 — fractal zoom, byte-range document viewer, and two others |
| Cannot pass as written | 1 — test 3, rebuild the instrument byte for byte. There is no machine-readable CPRA to rebuild from. Recorded as unpassable rather than weakened verified 9 Sep 2026 |
| Regressed on purpose | 1 — test 9, the demonstration is citable by version. Two releases were cut and withdrawn: the vault settings UI rendered each one's commit as obj-cas-im, a 10-character prefix of a 24-character id. A release channel that cannot show which commit it pins does not make anything citable, so the honest state is the weak one until it is fixed verified 9 Sep 2026 |
A vault claiming thirteen of thirteen after one session has stopped measuring and started asserting.