Proof-carrying research note

Causal Research Workbench

A replayable preflight for causal claims before they become public assertions.

Zain Dana Harper/ Seattle · 2026/ draft · not archive-submitted/ research index

Status

This page reports a bounded Project Telos preflight, not a causal-discovery result. The evidence label is CAUSAL_DAG_FIXTURE_MATCH: a deterministic toy-DAG fixture declares graph assumptions, identifies the exact minimal adjustment set, rejects configured negative controls, and binds the result to Crucible and Learn receipts.

Fixture

Treatment
exercise.
Outcome
health_outcome.
Required adjustment
MATCH. The fixture identifies age + baseline_health as the exact minimal adjustment set.
Rejected controls
No adjustment, age alone, baseline health alone, encouragement alone, and biomarker adjustment are all rejected.
Non-claims
No causal discovery, no LLM causal-reasoning validation, no medical recommendation, and no BuildLang/buildc-native runtime receipt yet.

Why this matters

Causal claims are a good stress test for AI-assisted research because source volume and model fluency are not enough. A serious causal packet needs a declared treatment, outcome, variables, graph assumptions, adjustment rationale, negative controls, replayable checks, and a clear boundary around what has not been proven.

The current artifact is intentionally small. Its job is to prove the packet shape before stronger claims are attempted.

Toolchain map

Gather
Captures papers, videos, datasets, benchmark cards, and source metadata as receipts.
Index
Packages graph files, code, local docs, and run state into context envelopes.
Forum
Routes claims through statistics, domain, verification, and publication lanes.
Crucible
Rejects causal claims without graph assumptions, adjustment rationale, negative controls, and a replayable check.
Learn
Turns passing and failing causal packets into exercises about confounding, colliders, descendants, and overclaim boundaries.
BuildLang/buildc
Target runtime for typed DAG, SCM, estimator, tensor, numerical, and report receipts after the JavaScript fixture stabilizes.
Telos
Binds source, graph, action, verdict, and learning receipts into one proof-carrying research packet.

Receipts

  • Source ledger: demo/research/causal-workbench-source-receipts.json.
  • Fixture CLI: demo/causal-workbench-proof-packet.mjs.
  • Fixture output: causal-workbench-proof-packet-2026-07-02.json.
  • Crucible verdict: MATCH 3 / DRIFT 0 / UNVERIFIABLE 0.
  • Crucible run hash: 1880e9f0c2c4f2589d4cde2f2c95e008631fd4eea0e0a921b39f19b961eef26e.
  • Crucible report hash: cc1d3ec1cd45d68e3600da5cc98b5c72ecc9f562f404273fa389afc021bff577.
  • Learn verdict: VERIFIED.
  • Learn witness: 6e358d9ea652f8e5efee0882ca7046705dc1f1c23421763d9607dd3274b6ad35.

Next promotion target

The next public demo should be a synthetic structural causal model with a known treatment effect, generated dataset, estimator receipts, negative controls, and a BuildLang/buildc typed-DAG target.

source receipts
-> typed DAG
-> known-ground-truth SCM
-> estimator and adjustment receipts
-> countergraph / negative controls
-> Crucible verdict
-> Learn prooflesson

Do not infer

  • Do not infer that Telos solved causal discovery.
  • Do not infer that the fixture validates LLM causal reasoning.
  • Do not infer that the toy variables are a medical or public-health recommendation.
  • Do not infer that source-ledger rows are full-paper proofs inside the repository.
  • Do not infer that BuildLang/buildc already executes this causal runtime.

Local source draft: docs/research/whitepapers/CAUSAL-RESEARCH-WORKBENCH-FOR-PROOF-CARRYING-CLAIMS-2026-07-02.md. Current page status: draft website copy. Updated 2026-07-02.