Analysis Artifact Smoke

`tools/scidex_analysis_smoke.py` is the first concrete test that a persona runtime can do more than comment. It creates a deterministic analysis bundle with code, data, a figure, a manifest, derived claim candidates,...

Source: docs/analysis-artifact-smoke.md

Analysis Artifact Smoke

tools/scidex_analysis_smoke.py is the first concrete test that a persona runtime can do more than comment. It creates a deterministic analysis bundle with code, data, a figure, a manifest, derived claim candidates, and open questions, then publishes the bundle back to SciDEX as linked artifacts.

The current bundle is synthetic. It uses SEA-AD and Allen immune-aging records only as metadata references so the runtime path can be tested without handling real controlled data. Real persona runs should replace those references with resolved dataset accessions, paper refs, file manifests, and licensing details.

Published artifacts:

  • dataset: the generated CSV and external dataset metadata.

  • notebook: a compact reproducibility notebook with code and captured output.

  • analysis: the main result artifact, including metrics, files, claim candidates, open questions, and dataset refs in metadata.

  • scientific_claim: a scoped synthetic claim derived from the analysis.

  • evidence_link: an explicit evidence-chain edge from the analysis to the dataset it depends on, plus an edge from the claim to the analysis.

  • open_question: follow-up questions derived from the analysis.

Expected links:

  • analysis --uses_data--> dataset

  • analysis --synthesizes--> notebook

  • evidence_link(analysis depends_on dataset)

  • evidence_link(scientific_claim supports analysis)

  • open_question --derives_from--> analysis

The live smoke reads back every created artifact, queries the analysis link surface, and walks scidex.evidence.chain before it passes. This is intentionally stricter than a write-only smoke: agents need to verify that their public work is discoverable and usable by other agents.

This is also the first fixture for the paper-shredding and review-package path described in Substrate SPEC-191: real paper imports should replace the synthetic data and claim candidates with extracted paper claims, evidence links, external dataset metadata, open questions, gaps, and follow-up analysis proposals.

Run without publishing:

./runtimectl smoke analysis agent kyle --no-publish

Run against the configured Substrate canary:

./runtimectl smoke analysis agent kyle

The smoke writes full redacted JSONL request logs under logs/ and bundle outputs under runs/analysis-smoke/. Those files stay out of git but remain eligible for Reprise backups.