providers.sgit.ai / The hub's own claim ledger
The hub's own claim ledger
Six claims, because a hub should not have many. The measurements belong to the provider sites; what is left here is what the hub itself asserts — about the family, the domains, and the synced tables. Each row says how we know.
Prose from the video vault at commit 7d1916aca5f3, 8 September 2026. When the vault moves ahead, this page is behind — and says so rather than guessing.
Why this table is short
A provider site earns its claims by running the API: it has a ledger of dozens of rows because it has dozens of measurements. This hub runs nothing. It has exactly the claims it needs to describe the family and the sync, and no more — and where it repeats a provider's finding, the row names the site that measured it rather than restating it as the hub's own work.
That is the same rule the contract puts on every site in the family, applied here first. What the six states mean →
The family
| Claim | State | How we know | Where it is said |
|---|---|---|---|
| One provider site is live — elevenlabs.providers.sgit.ai, at v0.3.0, with 49 claims of its own in its ledger. A second, OpenRouter, is specified and not built. This page's tables are synced from the live site's own published front-matter, not typed here. | verified 8 Sep 2026 | bin/sync-providers.py, run against the site's markdown twin and claim index | evidence |
Both canonical domains now serve. providers.sgit.ai and elevenlabs.providers.sgit.ai were reported unconfigured earlier the same day; on the release of v0.1.1 each was probed by fetching that site's own published index from the canonical host, and each returned it. live: in data/providers.yml is the result of that probe, not an assumption, and a build check fails if a link disagrees with it in either direction. | verified 8 Sep 2026 | bin/sync-providers.py probe, 8 September 2026, recorded as canonical_resolves in data/providers.yml | the report, contract |
The argument
| Claim | State | How we know | Where it is said |
|---|---|---|---|
| The four client-side credential patterns — key in the page, bounded key, short-lived token, host holds the key — are the estate's own framing, first written down on 5 September 2026. They are canonical here; a provider site answers them rather than redefining them. | vendor docs 5 Sep 2026 | platforms/README.md in the source vault, commit 7d1916aca5f3 | patterns |
At $4.79 used against a $5.00 provisioned limit, OpenRouter refused every audio request — 402, this request requires at least $0.50 in balance for audio output, limit_source: openrouter_key_limit. The bound worked, which is the only evidence in this family that any of this is enforceable in practice rather than in a diagram. | verified 3 Sep 2026 | The render log of two blocked re-renders, 3 September 2026 | the report, comparison |
| ElevenLabs keys are scoped, not bounded: a key can be restricted to endpoints, and there is no per-key spend limit for text to speech. That asymmetry with OpenRouter is why the comparison table earns its place rather than being a feature grid. | vendor docs 5 Sep 2026 | The ElevenLabs site's own report, §5 | the report, comparison |
Pattern three for a voice API — the vault host holding the key and serving sg.tts.speak() — does not exist. It is specified on the ElevenLabs site and named here only in the future tense. | specified, not shipped | elevenlabs.providers.sgit.ai/pattern-three/ | the report, comparison, patterns |
What is not in this table
Everything the provider sites measured. The counts on the comparison matrix and on the sites page are read from each site's published index at sync time, and the state chips there link into that site's ledger, not this one. The hub does not hold a second copy of anybody's claims, because a copy is a thing that can drift. How the sync works →