Current release

Dataset
v0.1
Released
27 Sep 2026
Methodology
Version 0.1

Dataset v0.1 holds 1,645 values read in 70 documents by 8 developers. They cover 87 models, plus two named only in values reported for several models at once (Llama 4 Maverick and Llama 4 Scout), and 303 evaluations in 12 metric families. Each value is recorded as the document prints it, with where it was found.

Before release, a sample of 96 values was looked up again by a check that could not see the recorded value (Methodology §4.2), and 95 matched. A further 12 values were checked because the site shows them individually; those are counted apart, because values picked for a reason are not a sample. Values corrected after a check are listed in the changelog.

Judgment calls in preparing the data, such as which names refer to one model or which values form one series, are recorded with a reason. A random sample of them was decided a second time by an independent pass that could not see the first answer: 261 of 306 agreed (85.3%), and each disagreement was settled with a recorded reason.

Download dataset (zip) safety-card-ledger-v0.1.zip · 176 KB

Or every table in one JSON file (2.5 MB), or each table as CSV.

Files and checksums

Each CSV file is a table exactly as the dataset keeps it: UTF-8, comma-separated, one header row, list fields separated by semicolons. Each checksum is computed from the file as served.

Files of datasetv0.1, with what each holds, its size and its SHA-256 checksum
FileWhat it holdsContentsSizeSHA-256
The whole dataset
safety-card-ledger-v0.1.zip

Everything, zipped

34 files · 176 KB

SHA-256

089fcf1e097a017becee2dcf46ac826768f4908de67983abd58aa70087b6049e
Everything, zippedEvery table as CSV with its schema, the source registry, a read-me, the licence and CITATION.cff.34 files176 KB089fcf1e097a017becee2dcf46ac826768f4908de67983abd58aa70087b6049e
safety-card-ledger-v0.1.json

Every table in one JSON file

16 tables · 2.5 MB

SHA-256

236c93b0d758b63bbb60f384945abacf37ba772b2c5efd8579328ea667ee9035
Every table in one JSON fileThe same tables, typed from the schemas, with the release, methodology version and licence in a header.16 tables2.5 MB236c93b0d758b63bbb60f384945abacf37ba772b2c5efd8579328ea667ee9035
One table per file (CSV)
labs.csv

Developers

8 rows · 567 bytes · Fields of labs.csv

SHA-256

b58fdab6ce5fa4afda1a2f6c8a0a99dbfdafb6be66584209cbe72c564696001e
DevelopersOne row per AI developer whose documents are in the dataset.Fields of labs.csv8 rows567 bytesb58fdab6ce5fa4afda1a2f6c8a0a99dbfdafb6be66584209cbe72c564696001e
models.csv

Models

89 rows · 16 KB · Fields of models.csv

SHA-256

6a7862f630196d52a0f9152262c63bd993dbfcf3cfcccd762ab9ae9761da3269
ModelsOne row per model. Snapshots (pre-release checkpoints, dated updates, previews) are not separate models; they are recorded on each measurement as snapshot_label.Fields of models.csv89 rows16 KB6a7862f630196d52a0f9152262c63bd993dbfcf3cfcccd762ab9ae9761da3269
documents.csv

Documents

70 rows · 21 KB · Fields of documents.csv

SHA-256

34da1e9891383442d93a319bccebf4d9e549f546fd69c98699cb2667feda9c44
DocumentsOne row per developer document (system card, model card, framework report, technical report, launch or policy post). Values are stored against the document they were read in.Fields of documents.csv70 rows21 KB34da1e9891383442d93a319bccebf4d9e549f546fd69c98699cb2667feda9c44
document_versions.csv

Document versions

126 rows · 35 KB · Fields of document_versions.csv

SHA-256

ac95932485001f5a98f9794f618546bb1e1f95ae9f520e8dcdc194cf00e6ffc5
Document versionsOne row per known state of a document: the copy we retrieved, earlier copies we read, and states known only from a changelog or the publication date.Fields of document_versions.csv126 rows35 KBac95932485001f5a98f9794f618546bb1e1f95ae9f520e8dcdc194cf00e6ffc5
secondary_sources.csv

Secondary sources

25 rows · 9.4 KB · Fields of secondary_sources.csv

SHA-256

1f7502710e25bae17f597fb9ead5db5ec48501c66fe179f8110107738f5525e5
Secondary sourcesIndependent write-ups and developer summary pages that some values were read from, because the card section itself could not be read in version 0.Fields of secondary_sources.csv25 rows9.4 KB1f7502710e25bae17f597fb9ead5db5ec48501c66fe179f8110107738f5525e5
evaluators.csv

Evaluators

14 rows · 492 bytes · Fields of evaluators.csv

SHA-256

8db7dcbc2e8cac129829abad258ec03d93a4ddb19fccb81a7d0bbaf4678ff1d0
EvaluatorsWho ran an evaluation: the developer itself, a third party, or a government body.Fields of evaluators.csv14 rows492 bytes8db7dcbc2e8cac129829abad258ec03d93a4ddb19fccb81a7d0bbaf4678ff1d0
evals.csv

Evaluations

303 rows · 84 KB · Fields of evals.csv

SHA-256

8449fcc93763aedbe96074ca2256c81646e1b7a7e54968990d67a59c7924f03e
EvaluationsOne row per evaluation: a named test run by one evaluator. An evaluation belongs to one metric family.Fields of evals.csv303 rows84 KB8449fcc93763aedbe96074ca2256c81646e1b7a7e54968990d67a59c7924f03e
comparability_groups.csv

Comparability groups

349 rows · 111 KB · Fields of comparability_groups.csv

SHA-256

a7695c2cfbeef247db8b78db175d9de5d0ad39868194a105c31c8d2acf343196
Comparability groupsValues in one group come from the same test definition, reported by one developer, and may be joined in a series. A new group starts when there is a sign the test changed.Fields of comparability_groups.csv349 rows111 KBa7695c2cfbeef247db8b78db175d9de5d0ad39868194a105c31c8d2acf343196
measurements.csv

Measurements

1,645 rows · 641 KB · Fields of measurements.csv

SHA-256

fbdd429f29724199caa4295a54df5269d86ea31afd0e56475ef73b02b6c72300
MeasurementsOne row per value a developer printed (or, for a few version 0 rows, stated only in a figure or in words). value_printed is the text as recorded; value_num exists only to position a point on a chart.Fields of measurements.csv1,645 rows641 KBfbdd429f29724199caa4295a54df5269d86ea31afd0e56475ef73b02b6c72300
revisions.csv

Revisions

15 rows · 5.8 KB · Fields of revisions.csv

SHA-256

0afc8e9fd9f437309dacd66b7aa276d1134c7b2fa2d6a684783460fb29a2f496
RevisionsOne row per change between two versions of a document.Fields of revisions.csv15 rows5.8 KB0afc8e9fd9f437309dacd66b7aa276d1134c7b2fa2d6a684783460fb29a2f496
verifications.csv

Verifications

112 rows · 25 KB · Fields of verifications.csv

SHA-256

89df534ab5b690ee197df2a68795caf4c9fb49d27aebe9ed2057517331d40079
VerificationsOne row per check of a measurement or a revision.Fields of verifications.csv112 rows25 KB89df534ab5b690ee197df2a68795caf4c9fb49d27aebe9ed2057517331d40079
restatement_links.csv

Restatements

138 rows · 35 KB · Fields of restatement_links.csv

SHA-256

45e1cac82065455dd919483c13f47f09d2812da8dea4ee15bf8a1e6221687524
RestatementsLinks between a model's value in its own (or first-reporting) document and the value a later document gives for the same model, evaluation and metric.Fields of restatement_links.csv138 rows35 KB45e1cac82065455dd919483c13f47f09d2812da8dea4ee15bf8a1e6221687524
determinations.csv

Risk determinations

142 rows · 33 KB · Fields of determinations.csv

SHA-256

7fbbfb8eb841311b4e469dc783ae35fd0e206fc61261150e97af3f20b0089d45
Risk determinationsFormal decisions under a developer's safety framework: a level, threshold or risk conclusion, as printed, one row per domain. Levels are never mapped between frameworks.Fields of determinations.csv142 rows33 KB7fbbfb8eb841311b4e469dc783ae35fd0e206fc61261150e97af3f20b0089d45
releases.csv

Releases

1 row · 399 bytes · Fields of releases.csv

SHA-256

9c1f57b14b18584a7465fe4614f2efd67d6648e9d8bd8552d3fc6d1f0b75bb4a
ReleasesOne row per data release.Fields of releases.csv1 row399 bytes9c1f57b14b18584a7465fe4614f2efd67d6648e9d8bd8552d3fc6d1f0b75bb4a
id_map.csv

ID map

1,645 rows · 25 KB · Fields of id_map.csv

SHA-256

f752b0fae719089d56656fa240638395af02f7a0d200f8ae805ec88976f13f18
ID mapPermanent map from version 0 rows to measurement IDs. Re-running the migration reuses it and only appends.Fields of id_map.csv1,645 rows25 KBf752b0fae719089d56656fa240638395af02f7a0d200f8ae805ec88976f13f18
sources.csv

Source registry

133 rows · 40 KB · Fields of sources.csv

SHA-256

c4be115b618171d24877bd8764f72cd00480f922e51cf68eeb98ad2cc54fb38f
Source registryEvery document in scope and the other sources we track, with links, dates, known revisions and extraction notes (Methodology §2.1). It comes with the version 0 feasibility dataset and has no schema file.Fields of sources.csv133 rows40 KBc4be115b618171d24877bd8764f72cd00480f922e51cf68eeb98ad2cc54fb38f
Checksums
SHA256SUMS

Checksums

18 checksums · 1.5 KB

SHA-256

8be3cf66dc6fc96d2a2a4b1f327809edec0d29668a2ff364347adbf03251ca63
ChecksumsThe SHA-256 checksum of every file above, in the format sha256sum reads (sha256sum -c SHA256SUMS).18 checksums1.5 KB8be3cf66dc6fc96d2a2a4b1f327809edec0d29668a2ff364347adbf03251ca63

To check what you downloaded, save SHA256SUMS in the same folder and run the first line there (Linux, or Git Bash on Windows) or the second (macOS, which also lists the files you did not download as missing):

sha256sum -c SHA256SUMS --ignore-missing
shasum -a 256 -c SHA256SUMS

Files stay at addresses that name their release, so a link to a file keeps leading to the same bytes.

Data dictionary

Every table and every field, from the schemas that check the data on every build (Frictionless Table Schema; the zip includes them). Open a table to see its fields.

Developerslabs.csv · 8 fields

One row per AI developer whose documents are in the dataset.

Each row is identified by lab_id

Download labs.csv

lab_idtext · required · unique

Permanent identifier: a short lowercase slug.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Example google-deepmind

nametext · required

Name as used on the site.

Example Google DeepMind

short_nametext

Shorter name for tight spaces such as chart legends.

websitetext

The developer's main website, when the source registry shows it.

Pattern ^https?://\S+$

docs_index_urltext

The developer page listing its system or model cards, monitored for new and revised documents.

Pattern ^https?://\S+$

frameworkslist of text, separated by “;”

Names of the safety frameworks under which the developer records formal risk determinations, as they appear in its documents.

aliaseslist of text, separated by “;”

Other names the developer appears under in sources.

Example Zhipu AI (Z.ai)

notestext

Free-text notes.

Back to the list of tables

Modelsmodels.csv · 9 fields

One row per model. Snapshots (pre-release checkpoints, dated updates, previews) are not separate models; they are recorded on each measurement as snapshot_label.

Each row is identified by model_id

Download models.csv

model_idtext · required · unique

Permanent identifier: the model name as a slug, without a developer prefix.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Example claude-opus-4-5

lab_idtext · required

The developer of the model (not necessarily the developer whose document reports a value about it).

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Refers to labs.lab_id

nametext · required

Name as the developer writes it.

Example Claude Opus 4.5

aliaseslist of text, separated by “;”

Other names the model appears under in documents, as printed.

Example GPT-5 (thinking)

familytext

The developer's product line, used to group models on the site.

Example Claude Opus

release_datetext

Release date. Defaults to the published date of the earliest document whose subject is the model (SPEC §5.3). Empty when no document in the dataset is about this model.

Pattern ^\d{4}-\d{2}(-\d{2})?$

release_date_sourcetext

Where the release date comes from.

One of document announcement other

availabilitytext

How the model was made available, as the documents describe it.

One of public limited internal open_weights

notestext

Free-text notes.

Back to the list of tables

Documentsdocuments.csv · 12 fields

One row per developer document (system card, model card, framework report, technical report, launch or policy post). Values are stored against the document they were read in.

Each row is identified by doc_id

Download documents.csv

doc_idtext · required · unique

Permanent identifier: the source_id from the source registry.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Example anthropic-claude-opus-4-5-system-card

lab_idtext · required

The developer that published the document.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Refers to labs.lab_id

titletext · required

Title as published.

doc_typetext · required

Kind of document.

One of system_card addendum model_card fsf_report safety_report tech_report launch_post policy_post lab_summary_page

subject_model_idslist of text, separated by “;”

The models the document is about (its subject), as opposed to models it only compares against. Decided in review.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Each item refers to models.model_id

published_datetext · required

Date the document was first published.

Pattern ^\d{4}-\d{2}(-\d{2})?$

date_precisiontext · required

Whether published_date is known to the day or only to the month.

One of day month

canonical_urltext

The developer's own URL for the document. Empty when no primary copy has been located.

Pattern ^https?://\S+$

alt_urlslist of text, separated by “;”

Other URLs for the same document, with a short note in brackets where the registry gives one.

has_changelogtext · required

Whether the document carries a changelog of its revisions.

One of yes partial no unknown not_applicable

extraction_coverage_notetext

Which parts of the document were read, and known gaps.

notestext

Free-text notes.

Back to the list of tables

Document versionsdocument_versions.csv · 13 fields

One row per known state of a document: the copy we retrieved, earlier copies we read, and states known only from a changelog or the publication date.

Each row is identified by version_id

Download document_versions.csv

version_idtext · required · unique

Permanent identifier: {doc_id}--{yyyy-mm-dd}, with -b appended if two versions share a date. The date is the version date when known to the day, otherwise the retrieval date.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*--\d{4}-\d{2}-\d{2}(-b)?$

Example xai-grok-4-6-model-card--2026-08-17

doc_idtext · required

The document.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Refers to documents.doc_id

version_labeltext

Short description of this state in our words.

version_datetext

Date of this state, to the day or to the month.

Pattern ^\d{4}-\d{2}(-\d{2})?$

date_sourcetext · required

How version_date is known. changelog: the document's changelog. header: the document's own header. retrieval: the date we retrieved it. report: our source registry or a third-party report.

One of changelog header retrieval report

statustext · required

What we hold for this state. retrieved: a copy we retrieved. archived: an earlier copy we read elsewhere (for example a copy the developer hosted with a partner). known_from_changelog: a state known only from the document's own changelog. known_not_retrieved: a state known from the publication date, a document header or a third-party report, of which we hold no copy.

One of retrieved archived known_from_changelog known_not_retrieved

urltext

Where this state was read, when it was read.

Pattern ^https?://\S+$

sha256text

SHA-256 of the retrieved file (from dataset v0.2).

Pattern ^[0-9a-f]{64}$

retrieved_attext

Date the copy was retrieved.

Pattern ^\d{4}-\d{2}-\d{2}$

archive_urltext

An archived snapshot of this state.

Pattern ^https?://\S+$

changelog_summarytext

What changed in this state, in our words, from the developer's changelog or registry notes.

parsed_pagestext

Pages parsed from this copy (from dataset v0.2).

notestext

Free-text notes.

Back to the list of tables

Secondary sourcessecondary_sources.csv · 7 fields

Independent write-ups and developer summary pages that some values were read from, because the card section itself could not be read in version 0.

Each row is identified by secondary_id

Download secondary_sources.csv

secondary_idtext · required · unique

Identifier: the source_id from the source registry.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

titletext · required

Title or site name as in the registry.

author_or_sitetext

Author or publishing site.

urltext · required

URL read.

Pattern ^https?://\S+$

published_datetext

Publication date, when the URL or registry states it.

Pattern ^\d{4}-\d{2}(-\d{2})?$

covers_doc_idslist of text, separated by “;”

Documents whose values were read from this source.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Each item refers to documents.doc_id

notestext

Free-text notes.

Back to the list of tables

Evaluatorsevaluators.csv · 4 fields

Who ran an evaluation: the developer itself, a third party, or a government body.

Each row is identified by evaluator_id

Download evaluators.csv

evaluator_idtext · required · unique

Permanent identifier: a short slug.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Example apollo

nametext · required

Name as used on the site.

Example Apollo Research

typetext · required

Kind of evaluator.

One of developer third_party government

urltext

The evaluator's website, when the source registry shows it.

Pattern ^https?://\S+$

Back to the list of tables

Evaluationsevals.csv · 7 fields

One row per evaluation: a named test run by one evaluator. An evaluation belongs to one metric family.

Each row is identified by eval_id

Download evals.csv

eval_idtext · required · unique

Permanent identifier: {evaluator-or-lab}-{eval-slug}.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Example openai-destructive-action-avoidance

nametext · required

Name as the documents print it.

familytext · required

Metric family code (METHODOLOGY §1.1).

One of M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11 M12

evaluator_idtext · required

Who ran it.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Refers to evaluators.evaluator_id

test_typetext · required

Kind of test. Evaluation-awareness evaluations (M1) use the six kinds in Finding 1; other families use the general list.

One of developer_audit_verbalized external_apollo external_uk_aisi developer_other_setups deployment_real_or_simulated white_box_or_training static_benchmark adaptive_attacker red_team bug_bounty automated_audit scenario_eval capability_benchmark uplift_study production_traffic deployment_simulation training_monitoring internal_monitoring survey framework_determination qualitative_assessment

descriptiontext

What the evaluation measures, in our words.

notestext

Free-text notes.

Back to the list of tables

Comparability groupscomparability_groups.csv · 9 fields

Values in one group come from the same test definition, reported by one developer, and may be joined in a series. A new group starts when there is a sign the test changed.

Each row is identified by group_id

Download comparability_groups.csv

group_idtext · required · unique

Permanent identifier: {eval_id}-v{n} or a descriptive suffix.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Example openai-destructive-action-avoidance-v1

eval_idtext · required

The evaluation.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Refers to evals.eval_id

labeltext · required

Short label shown in the explorer.

definition_notestext

What defines this version of the test, and what changed from the previous group, in our words.

join_basistext · required

stated: the developer's documents say the test is unchanged, or all values come from one document. inferred: values from several documents were joined because nothing indicated a change; flagged to readers.

One of stated inferred

first_doc_idtext

Earliest document with a value in this group.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Refers to documents.doc_id

last_doc_idtext

Latest document with a value in this group.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Refers to documents.doc_id

supersedes_group_idtext

The group this one replaces, when the test changed.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Refers to comparability_groups.group_id

notestext

Free-text notes.

Back to the list of tables

Measurementsmeasurements.csv · 43 fields

One row per value a developer printed (or, for a few version 0 rows, stated only in a figure or in words). value_printed is the text as recorded; value_num exists only to position a point on a chart.

Each row is identified by measurement_id

Download measurements.csv

measurement_idtext · required · unique

Permanent identifier: m- and six digits.

Pattern ^m-\d{6}$

Example m-000812

legacy_row_idinteger

row_id in the version 0 file, for rows that came from it.

Range 0 or more

split_indexinteger

0, or 1, 2 … when one version 0 row became several measurements.

Range 0 or more

version_idtext · required

The document version the value was read in (or, for secondary rows, the version the value is about).

Pattern ^[a-z0-9]+(-[a-z0-9]+)*--\d{4}-\d{2}-\d{2}(-b)?$

Refers to document_versions.version_id

subject_kindtext · required

What the value is about: a model, a deployed system with safeguards, several models at once, or a baseline.

One of model system multi baseline

model_idtext

The model, when subject_kind is model or system.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Refers to models.model_id

subject_model_idslist of text, separated by “;”

The models covered, when subject_kind is multi.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Each item refers to models.model_id

subject_labeltext · required

The subject exactly as the version 0 row names it.

snapshot_labeltext

A snapshot of the model (pre-release checkpoint, dated update, preview), as printed.

is_subject_modeltrue or false · required

true when the model is a subject of the document; false when it appears only as a comparison.

eval_idtext · required

The evaluation.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Refers to evals.eval_id

group_idtext · required

The comparability group.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Refers to comparability_groups.group_id

metric_labeltext · required

Short name of the metric within the evaluation.

metric_definitiontext · required

The metric as described in version 0 (the extractor's wording).

condition_efforttext

Reasoning effort or budget, as printed.

condition_modetext

Mode, such as extended thinking or non-reasoning.

condition_safeguardstext

Whether safeguards or mitigations were on.

condition_surfacetext

Deployment surface, such as API or web.

condition_othertext

Any other measurement condition (attempts, prompt set, scope).

context_notetext

Context printed with the value that is not a condition (for example a human baseline).

value_printedtext · required

The value exactly as recorded in version 0, which keeps the printed form (including trailing zeros). This is what the site displays.

value_numnumber

A number parsed from value_printed, only to position a point. Never displayed. For printed ranges it is the stored midpoint.

value_texttext

The value as words, for categorical values.

value_qualifiertext

How the printed value is bounded or approximated.

One of eq lt le gt ge approx range

range_lownumber

Lower end of a printed range.

range_highnumber

Upper end of a printed range.

unittext · required

Unit, from the controlled vocabulary.

One of percent rate pp_change relative_change_percent count score multiplier minutes usd odds_ratio correlation categorical

unit_as_printedtext · required

The unit as recorded in version 0.

denominatorinteger

Denominator for counts out of a fixed number.

Range 1 or more

scaletext

Scale of a score, as stated.

ci_lownumber

Lower bound of a printed confidence interval.

ci_highnumber

Upper bound of a printed confidence interval.

ninteger

Sample size, when printed with the value.

Range 0 or more

directiontext · required

Whether a higher value is better or worse, as the developer frames it.

One of higher_worse higher_better categorical neutral

value_statustext · required

printed: a number or statement printed in the text or a table. figure_read: read off a chart. qualitative: a statement in words rather than a value.

One of printed figure_read qualitative

locationtext · required

Section, table or page where the value appears.

source_typetext · required

Where the value was read: the developer's document, a developer summary page, or an independent secondary source.

One of primary secondary lab_summary

via_urltext

The URL actually read, when it is not the document version's own URL (secondary sources, summary pages, HTML section pages).

Pattern ^https?://\S+$

confidencetext · required

Confidence grade (METHODOLOGY §4.1).

One of high medium low

verification_statustext · required

Verification status (METHODOLOGY §4.2).

One of unverified blind_verified disputed corrected

extraction_methodtext · required

How the value was extracted.

One of v0_web_reader pdf_text_v1 manual

superseded_bytext

The measurement that replaces this one, if any. IDs are never removed.

Pattern ^m-\d{6}$

Refers to measurements.measurement_id

notestext

Free-text notes: the version 0 extraction note, then any migration note.

Back to the list of tables

Revisionsrevisions.csv · 14 fields

One row per change between two versions of a document.

Each row is identified by revision_id

Download revisions.csv

revision_idtext · required · unique

Permanent identifier: rev- and a descriptive slug.

Pattern ^rev-[a-z0-9]+(-[a-z0-9]+)*$

doc_idtext · required

The document.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Refers to documents.doc_id

from_version_idtext · required

The earlier version.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*--\d{4}-\d{2}-\d{2}(-b)?$

Refers to document_versions.version_id

to_version_idtext · required

The later version.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*--\d{4}-\d{2}-\d{2}(-b)?$

Refers to document_versions.version_id

measurement_id_oldtext

The measurement in the earlier version, when recorded.

Pattern ^m-\d{6}$

Refers to measurements.measurement_id

measurement_id_newtext

The measurement in the later version, when recorded.

Pattern ^m-\d{6}$

Refers to measurements.measurement_id

change_typetext · required

Kind of change.

One of value_changed added removed wording determination_changed unknown

whattext · required

What changed, in our words.

old_texttext

The earlier text or value, as printed.

new_texttext

The later text or value, as printed.

explainedtext · required

Whether the document's changelog explains the change.

One of yes partly no no_changelog

explanation_summarytext

The developer's explanation, in our words.

verification_statustext · required

How the revision was confirmed.

One of unverified blind_verified changelog_confirmed disputed corrected

notestext

Free-text notes.

Back to the list of tables

Verificationsverifications.csv · 11 fields

One row per check of a measurement or a revision.

Each row is identified by verification_id

Download verifications.csv

verification_idtext · required · unique

Identifier: v-, then the measurement or revision ID, the method and the date.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

measurement_idtext

The measurement checked.

Pattern ^m-\d{6}$

Refers to measurements.measurement_id

revision_idtext

The revision checked.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Refers to revisions.revision_id

methodtext · required

How it was checked.

One of blind_recheck full_text_match changelog_read manual

selectiontext · required

Why it was chosen for checking.

One of featured random new_rows targeted

checked_sourcetext · required

Which kind of source was re-read. A check against the same secondary source is weaker than a check against the card.

One of primary secondary lab_summary

found_valuetext

The value the check found, as it wrote it.

resulttext · required

Outcome.

One of match mismatch no_printed_value not_found

checked_attext · required

Date of the check.

Pattern ^\d{4}-\d{2}-\d{2}$

checked_bytext

Who or what ran the check.

notestext

The checker's note, in its words.

Back to the list of tables

Risk determinationsdeterminations.csv · 10 fields

Formal decisions under a developer's safety framework: a level, threshold or risk conclusion, as printed, one row per domain. Levels are never mapped between frameworks.

Each row is identified by determination_id

Download determinations.csv

determination_idtext · required · unique

Identifier: d-, the measurement ID and the domain (with a suffix when one value covers two thresholds in a domain).

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

measurement_idtext · required

The categorical measurement the determination comes from.

Pattern ^m-\d{6}$

Refers to measurements.measurement_id

model_idtext

The model.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*$

Refers to models.model_id

version_idtext · required

The document version.

Pattern ^[a-z0-9]+(-[a-z0-9]+)*--\d{4}-\d{2}-\d{2}(-b)?$

Refers to document_versions.version_id

frameworktext

The framework's name, as the developer writes it. Empty when the document, as recorded, names no framework for the conclusion; the notes say so.

framework_versiontext

The framework version, when stated.

domaintext · required

Risk domain.

One of overall bio_chem cyber ai_rnd_autonomy manipulation misalignment other

level_as_printedtext · required

The level or conclusion. Where version 0 stored a code rather than the printed wording, the code is kept and flagged in notes until the wording is recovered from the source.

ordinal_within_frameworkinteger

Position of the level within its own framework, for ordering only; never compared across frameworks.

notestext

Free-text notes.

Back to the list of tables

Releasesreleases.csv · 9 fields

One row per data release.

Each row is identified by release

Download releases.csv

releasetext · required · unique

Dataset version.

Pattern ^v\d+\.\d+$

datetext · required

Release date.

Pattern ^\d{4}-\d{2}-\d{2}$

methodology_versiontext · required

Methodology version the release follows.

n_measurementsinteger · required

Measurements in the release.

Range 0 or more

n_documentsinteger · required

Documents with at least one measurement.

Range 0 or more

n_modelsinteger · required

Models with at least one measurement.

Range 0 or more

blind_check_sampleinteger

Values blind-checked for this release.

Range 0 or more

blind_check_matchesinteger

Blind checks that matched.

Range 0 or more

notestext

Free-text notes, including the agreement rate of the independent re-decision of review decisions.

Back to the list of tables

ID mapid_map.csv · 3 fields

Permanent map from version 0 rows to measurement IDs. Re-running the migration reuses it and only appends.

Each row is identified by these together legacy_row_idsplit_index

Download id_map.csv

legacy_row_idinteger · required

row_id in the version 0 file.

Range 0 or more

split_indexinteger · required

0, or 1, 2 … when one row became several measurements.

Range 0 or more

measurement_idtext · required · unique

The measurement ID assigned.

Pattern ^m-\d{6}$

Back to the list of tables

Source registrysources.csv · 15 fields

The source registry supplied with the version 0 feasibility dataset (Methodology §2.1). It has no schema file; its columns are listed as they appear in its header row.

Download sources.csv

source_id
category
lab
title
doc_type
models_covered
published
url
alt_urls
revisions_known
changelog
extraction_notes
v0_rows
v0_card_label
last_checked

Back to the list of tables

Licence

The data and the text of this site are published under the Creative Commons Attribution 4.0 licence (CC BY 4.0 (opens an external site)). You may copy, share and adapt them for any purpose, including commercial use.

Attribution means naming Safety Card Ledger and the dataset version you used, linking to the licence, and saying whether you changed anything; the citations below do the first part.

The values were published by the developers named in the data, in documents the data links to. Those documents are theirs: we link to them and do not re-host them.

Cite the dataset

Please cite the version you used, so a reader can find the same data.

APA

Safety Card Ledger. (2026). Safety Card Ledger (Version 0.1) [Data set]. https://safetycardledger.example/download

BibTeX

@misc{safetycardledger_v0_1,
  author = {{Safety Card Ledger}},
  title = {Safety Card Ledger},
  year = {2026},
  month = sep,
  version = {0.1},
  howpublished = {\url{https://safetycardledger.example/download}},
  note = {Dataset v0.1, methodology 0.1. CC BY 4.0},
}

CITATION.cff gives the same citation in the Citation File Format, which reference managers and code hosts read. The zip includes a copy.

Previous releases

None yet: v0.1 is the first release. Every release keeps its files and their checksums on this page, at addresses that name its version, so a citation of an earlier version still leads to the data it used.

API

A static JSON API is planned for Phase 3. These files will be published at these addresses, alongside one file per entity; none of them exists yet.

  • /api/v0/measurements.json
  • /api/v0/models.json
  • /api/v0/documents.json
  • /api/v0/document_versions.json
  • /api/v0/evals.json
  • /api/v0/revisions.json
  • /api/v0/restatements.json
  • /api/v0/determinations.json
  • /api/v0/releases.json