One real compile, receipts included.
Everything on this page is the actual output of
bioprism context compile on the shipped reference world
(radiogenomic-integrity-demo-v1, 761 facts) — the compile envelope, the
Context Certificate, the Decision Section, and the verify result, embedded
verbatim in this page's source. Not a mockup: the certificate digest below is the same
c0da17ff… digest pinned byte-for-byte by the three-implementation parity tests.
Every number and field rendered here comes from that embedded data block. The page works without JavaScript; with it, each card also shows the raw JSON it was rendered from.
1 · The query
Compilation starts from a typed decision query, not a prose prompt. This one asks a single
question of the world — split_integrity_status — under a declared role, policy,
decision time, and a mandatory set of protected tags.
- query_id
audit-split-integrity-v1· schemafiber-query/0.1- role
research-auditor- targets
split_integrity_status- decision_time
2025-01-01T00:00:00Z— facts sourced after this cut are inaccessible- policy
research-only- distortion_tolerance
0.0- budgets
- max_facts
64· max_tokens6000 - protected_tags (10)
- identity split site scanner time specimen preprocessing policy negative_evidence protected — facts carrying these tags must survive selection; a budget smaller than their closure fails rather than truncates
Raw query JSON
(JavaScript renders the raw query here. Without it, the same JSON sits verbatim in this page's embedded data block — view source.)
2 · The selection — 761 in, 11 out
The compiler selected 11 of 761 facts (1.45%) and 6 of 756 factors (0.79%). The other 750 facts were omitted — and accounted for, in the receipt below.
What this world does and does not show. On this exact reference world, a 5-hop graph walk and a BM25 retriever at k=11 select the identical eleven facts — the headline benchmark is a deliberate tie. This page is about what ships with the selection (the receipts), not about beating baselines; the benchmarks page carries that story.
The eleven facts
fact.cohort identity
provides cohort_id = RG-DEMO-001
provenance manifest/cohort.json
fact.subject_aliases identity protected
provides subject_aliases: S001 → S001, ALT-77 · S002 → S002 ·
S003 → S003, ALT-77
provenance manifest/subjects.csv
fact.split split protected
provides split_assignment: S001 train · S002 train · S003 test · S004 test
provenance analysis/split.json
fact.site site protected
provides site_assignment: S001 A · S002 A · S003 B · S004 B
provenance manifest/site.csv
fact.label_source time label_lineage protected
provides label_source_time: S001 2024-01-01 · S002 2024-02-01 ·
S003 2025-06-01 · S004 2024-02-15
provenance labels/lineage.json
fact.decision_cut time protected
provides training_decision_time = 2025-01-01
provenance run/config.json
fact.preprocess_fit preprocessing protected
provides preprocess_fit_scope = all_subjects_before_split
provenance pipeline/preprocess.yaml
fact.specimen_dates specimen time protected
provides specimen_dates: S001 2023-12-01 · S002 2024-01-15 ·
S003 2025-05-20 · S004 2024-01-20
provenance specimens/manifest.csv
fact.scanner site scanner
provides scanner_assignment: S001 X1 · S002 X1 · S003 Y9 · S004 Y9
provenance imaging/dicom_manifest.csv
fact.policy policy protected
provides data_policy = research-only,
no-identifiable-export
provenance governance/policy.json
fact.negative_duplicates negative_evidence identity protected
provides declared_duplicate_screen = passed_by_filename_only —
negative evidence: the screen that claimed to pass
provenance qc/duplicate_screen.txt
The 6 selected factors (of 756)
factor.identity_check(deterministic_rule) →identity_leakagefactor.site_check(deterministic_rule) →site_leakagefactor.temporal_check(deterministic_rule) →temporal_leakagefactor.preprocessing_check(deterministic_rule) →preprocessing_leakagefactor.policy_check(deterministic_rule) →policy_validityfactor.claim_support(decision_rule) →split_integrity_status
(JavaScript renders the full factor records here; they are verbatim in the embedded data block.)
How the compiler got there — the pass ledger
From bioprism context explain, backend
backward_factor_slice_reference:
- protected_closure — retained 11 · “10 protected tags requested”
- backward_slice — retained 6 · “17 variables reachable from targets”
- policy — retained 11 · “1 clause(s) in force, 0 candidate(s) declared a requirement, 0 withheld”
- temporal_cut — retained 11 · “0 facts withheld at the decision cut”
- oracle — retained 4 · “status invalid”
- plan_selection — retained 11 · “backend backward_factor_slice_reference retained 0.0145 of facts; portfolio costed 3 candidate(s), argmin faq_inside_out at 2.1439e3 against a baseline of 3.7240e6 (1737.0x); no costed plan is runnable: faq_inside_out declined: factor "factor.claim_support" carries no table; a world-derived region must be given a valuation before it can be executed”
- influence_bounds — retained 0 · “0 of 0 withheld fact(s) bounded, 0 group(s) informative, worst informative bound none”
Seven passes were deferred, each with a stated reason (obstruction tests, abstract interpretation, role-and-purpose filter, information-flow export, decision quotient, rate-distortion, adaptive acquisition) — the reference schemas do not yet carry the bindings they require. The reasons are verbatim in the embedded data block:
(JavaScript renders the deferred-pass reasons here; they are verbatim in the embedded data block.)
3 · The receipt — the Context Certificate
The certificate (fiber-context-certificate/0.1) is the machine-readable
receipt: what was kept, what was omitted, why, and under which oracle verdict — hashed over
canonical bytes so anyone can recheck it.
Omission accounting
| Field | Value |
|---|---|
| omissions.total_facts | 750 |
| omissions.exploratory_facts | 750 |
| omissions.classification | no_backward_dependency_path_or_temporally_inaccessible |
| omissions.inaccessible_selected_before_cut | [] — empty: nothing selected was time-inaccessible |
The explain plan groups all 750 omissions under one manifest entry: reason “no backward
dependency path to any target under the declared factor graph”, influence
zero, bound 0.0. The envelope's sufficiency flag —
supports_sufficiency_claim: true — rests on that accounting.
Compile plan
| Field | Value |
|---|---|
| plan.backend | backward_factor_slice_reference |
| plan.compiled_fact_count / total_fact_count | 11 / 761 |
| plan.compiled_factor_count / total_factor_count | 6 / 756 |
| plan.max_selected_factor_arity | 5 |
| plan.fallback | null |
Protected closure — 11 facts, satisfied
Every fact reachable from the 10 protected tags survived selection
(protected_closure_satisfied: true). The closure is the full selected set:
fact.cohort · fact.decision_cut · fact.label_source ·
fact.negative_duplicates · fact.policy ·
fact.preprocess_fit · fact.scanner · fact.site ·
fact.specimen_dates · fact.split ·
fact.subject_aliases
Oracle verdict
status: invalid ·
oracle deterministic_split_integrity_v1 — the proposed radiogenomic split does
not support a valid external-generalization analysis. Four witnesses:
ALT-77 is shared by subjects
S001 and S003, which sit in different splits
(train, test): the same person is on both sides.
A,
test = B: split is confounded with site.
2025-01-01, but
S003's label source is dated 2025-06-01: a label from the future.
Limitations — verbatim, never hidden
The certificate carries its own limitations, quoted exactly:
“Reference slicer uses dependency reachability and protected tags; it does not yet implement sheaf cohomology, FAQ-width optimization, abstract interpretation, or formal influence bounds.”
Hashes
- world_sha256
- b3809731cf93040fcd8aef43deb2a552492064b49154e07ea58caa724c10cbb5
- query_sha256
- d06368c62dd878f483d30ebfd56f38426b1234d37e46ca77d4536db81f59c684
- decision_section_sha256
- 7439b2262c52c1c794b59be86d922b723a2ea5646362d529f57fb11b5f7e93ce
- certificate_sha256
- c0da17ffc80465258345c8a538171bfd868100cd883e9a20780a0dc5477e7ea4
Raw certificate JSON
(JavaScript renders the full certificate here. Without it, the same JSON sits verbatim in this page's embedded data block — view source.)
4 · The check
The receipt is only worth something if a third party can recheck it.
bioprism context verify recomputes the digest from canonical bytes — without
linking the engine that produced the certificate — and exits non-zero if it does not verify.
The verbatim result for this certificate:
ok: true ·
verification: digest verifies ·
schema fiber-context-certificate/0.1
Raw verify JSON · raw compile envelope
(JavaScript renders the verify result here; it is verbatim in the embedded data block.)
(JavaScript renders the compile envelope here; it is verbatim in the embedded data block.)
To reproduce from a checkout of the repository (the world and query on this page ship as fixtures):
bioprism context compile --world fixtures/fiber-v0.1/radiogenomic_world.json --query fixtures/fiber-v0.1/leakage_query.json --certificate-out cert.json --section-out section.json
bioprism context verify --certificate cert.json
Run it yourself. Every artifact above regenerates from the shipped
fixtures with the two commands just shown — install AURORA Agent
(Claude Desktop bundle, Claude Code plugin, or cargo build from source), then
compile and verify. The certificate digest you get should be
c0da17ffc80465258345c8a538171bfd868100cd883e9a20780a0dc5477e7ea4.