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.