Skip to content

Latest commit

Β 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

GSPC board β€” snapshot as of 2026-09-07T12:30:34Z

22 axes measured Β· 14 model fleets Β· 3 public leader scores Β· 8 fact runs Β· TIE is TIE Β· not a certificate.

GET https://councilof.ai/api/gspc is the authority. This is a snapshot of that GET, read at 2026-09-07T15:13:59Z, aligned to the transparency root root.json published at 2026-09-07T12:30:34Z. If the live GET and these files disagree, the live GET wins. A fetch that fails is UNCHECKABLE β€” never a fabricated 0.

Measurement, not certification. A TIE is never a win. An empty slot is a finding, not a zero. No slot is for sale.

Honest counts β€” derived from the axes array in board.json, never typed

  • slots on the board: 22
  • by status: MEASURED 22
  • model-comparison axes (a fleet answers a frozen bank, graded deterministically): 14 Β· deterministic-fact axes (public ledgers and series; no model, no leader, no accuracy): 8
  • separation, over the model-comparison axes only: SEPARATED 1 Β· TIE 2 Β· UNTESTED 11 β€” a TIE is not a separated leader; UNTESTED is not a win either
  • public leader, over the model-comparison axes: EXCLUDED_OWN_MODEL 8 Β· NO_SIGNED_CARD 3 Β· SHOWN 3 (EXCLUDED_OWN_MODEL: our own council specialist led and is not ranked against the vendors we measure; NO_SIGNED_CARD: the leading external model has no signed card in the public index, so no leader is asserted)
  • the payload's own totals block prints public_count = "22 axis Β· 22 measured" β€” agrees with the array
  • rows behind the board (totals.items, the sum of each axis's n): 969
  • transparency root: card_count 168 signed cards, merkle_root 1340de5eb7ebb45344a6c662179cc35ab08bd9008c359834108cae597fdc541b, as_of 2026-09-07T12:30:34Z
  • frozen banks: 13 of the 22 slots that name a dataset resolve an items.jsonl (818 rows in total, canary rows excluded); the others carry their bank in another file or are fact axes with pointers, not items β€” see the table
  • bank slug cross-check: all 13 mapped axes name the expected csoai/gspc-<short> slug

The 22 axes

axis family kind bench n status separation public leader frozen bank bank rows
governance gspc model-comparison GovBench 237 MEASURED UNTESTED EXCLUDED_OWN_MODEL csoai/gspc-gov 237
safety gspc model-comparison DefBench 36 MEASURED TIE gemma3:12b (base model) csoai/gspc-agi 36
provenance gspc model-comparison ProvBench 32 MEASURED UNTESTED EXCLUDED_OWN_MODEL csoai/gspc-prv 32
continuity gspc model-comparison PQCBench 33 MEASURED UNTESTED EXCLUDED_OWN_MODEL csoai/gspc-asi 33
conformance gspc model-comparison MCPBench 35 MEASURED UNTESTED EXCLUDED_OWN_MODEL csoai/gspc-mcp 35
openness gspc model-comparison OSSBench 32 MEASURED UNTESTED EXCLUDED_OWN_MODEL csoai/gspc-oss 32
machinery-conformity gspc model-comparison MachBench 33 MEASURED UNTESTED NO_SIGNED_CARD csoai/gspc-mach 33
care gspc model-comparison CareBench 199 MEASURED UNTESTED EXCLUDED_OWN_MODEL csoai/gspc-care 200
cross-reality gspc model-comparison XRAIV 32 MEASURED UNTESTED NO_SIGNED_CARD csoai/gspc-xr 32
detector-interop gspc model-comparison DetBench 33 MEASURED UNTESTED NO_SIGNED_CARD csoai/gspc-det 33
art5-safeguard gspc model-comparison Art5Bench 36 MEASURED UNTESTED EXCLUDED_OWN_MODEL csoai/gspc-art5 36
swarm gspc model-comparison SwarmBench v2b 37 MEASURED SEPARATED qwen2.5:7b (base model) csoai/gspc-swarm 37
affect gspc model-comparison AffectBench 41 MEASURED UNTESTED EXCLUDED_OWN_MODEL csoai/gspc-affect 42
jail gspc model-comparison GoldBank-Detector 71 MEASURED TIE qwen2.5:0.5b-instruct (base model) csoai/gspc-jail-goldbank NO_ITEMS_JSONL
provenance-controls financial deterministic-facts ChainFacts 6 MEASURED β€” β€” csoai/gspc-provenance-controls NO_ITEMS_JSONL
reserve-attestation financial deterministic-facts ReserveFacts 16 MEASURED β€” β€” csoai/gspc-reserve-attestation NO_ITEMS_JSONL
regulatory-framework financial deterministic-facts RegimeFacts 16 MEASURED β€” β€” csoai/gspc-regulatory-framework NO_ITEMS_JSONL
distribution-integrity financial deterministic-facts DistributionFacts 16 MEASURED β€” β€” csoai/gspc-distribution-integrity NO_ITEMS_JSONL
custody-disclosure financial deterministic-facts CustodyFacts 16 MEASURED β€” β€” csoai/gspc-custody-disclosure NO_ITEMS_JSONL
ai-adoption-components financial deterministic-facts Eurostat 2 MEASURED β€” β€” csoai/gspc-ai-economy-index NO_ITEMS_JSONL
labour-components financial deterministic-facts Eurostat 2 MEASURED β€” β€” csoai/gspc-human-labour-index NO_ITEMS_JSONL
humanoid-labour-index financial deterministic-facts Disclosure 8 MEASURED β€” β€” csoai/gspc-humanoid-labour-index NO_ITEMS_JSONL

Per-axis numbers name the board LEADER where one is shown; fleet_mean (in board.json) shows the fleet, not the leader. Fact axes have no leader and no accuracy: measured is not the same as scored. n is the graded count the board carries; bank rows is what the frozen items.jsonl holds today, canary rows excluded β€” the two need not be equal, and a difference is reported, not reconciled here.

How to verify β€” a stranger, no account, no CSOAI code beyond curl and python3

  1. The board's totals are derived, not typed. ./check-board.sh fetches the live GET, recounts the slots and the MEASURED axes from the array, and fails loudly on any disagreement.
  2. One measurement. Every measurement is an Ed25519-signed card. Paste it into https://councilof.ai/gspc-verify (free, no account) or follow https://councilof.ai/signed/HOW-TO-VERIFY.md and check by hand. From Python: pip install "csoai-gspc[verify]" then csoai-gspc verify <card_id> β€” three states only: VALID, INVALID, UNCHECKABLE.
  3. Root inclusion. root.json lists card_sha256[] for every published card and commits to them in merkle_root. ./check-board.sh recomputes that root from the list using the rule the root states for itself β€” leaf: "sha256(canonical(card minus sha256 and sig_ed25519)) \u2014 binds subject, source_urls, tags, as_of, did, surface, unmeasured and payload"; node: "parent = sha256(left || right) over RAW 32-byte digests, pairwise, bottom-up. An odd node at any level is paired WITH ITSELF (Bitcoin-style duplication), not promoted. No domain-separation prefix.". A verifier MUST reject any presentation where len(card_sha256) != card_count, and any inclusion proof with index >= card_count. A card is included when its sha256 appears in the list and the recomputed root matches.
  4. Keys. Signatures resolve through did:web:csoai.org β†’ https://councilof.ai/.well-known/did.json. The board's site_attestation.signer is did:web:csoai.org#board-attestation-1; the root's did_intended is did:web:csoai.org#board-attestation-1; cards sign under the card-attestation key in the same document. Pin against the DID document, never against the key a card ships with.
    • key ids present in did.json at read time: did:web:csoai.org#site-release-1, did:web:csoai.org#estate-chain-1, did:web:csoai.org#board-attestation-1, did:web:csoai.org#card-attestation-1, did:web:csoai.org#gspc-board-22axis-2026

Files

file what
board.json the whole live GET, byte-for-byte (sha256 86abe0b3decc8712e494cc2b06436bfe1f11fd73f8bb5cde51d8e8ee27e594f2)
root.json the transparency root, byte-for-byte (sha256 8bc1d43a5d2df18a24dbb9275e6357d4be9f6e23d06902902959c5ec9ee45b3c)
SNAPSHOT.json as_of, read_at, digests, derived counts, bank rows, and the fingerprint every surface is keyed on
gspc-axes.csv / gspc-axes.jsonl one row per slot
check-board.sh re-derive the totals and the Merkle root yourself
manifest.jsonl file, bytes, sha256

Everywhere this snapshot lives

What this is not

Not a certification, not a rating, not an endorsement, not legal advice. A card is evidence of what specific bytes scored on a frozen bank at a specific time. Measurement, not certification.

Issuer: CSOAI Ltd (GB, Companies House 16939677). Board data licence as printed by the payload: CC-BY-4.0. Generated by scripts/spray/gspc-spray.py (CSOAI-ORG/councilof-ai); fingerprint 5e4be2dc57acaeb3aad4f03ee8cbc3e10f29f023dabe3024d0ffeee4c788023d.

About

πŸͺž Mirrors GET councilof.ai/api/gspc as dated JSON/parquet snapshots β€” every count derived from the axes array, every card Ed25519-verifiable without an account. CC0 data.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages