Skip to content

Latest commit

 

History

History
76 lines (60 loc) · 3.95 KB

File metadata and controls

76 lines (60 loc) · 3.95 KB

Demo — see every product form in a couple of minutes (synthetic data)

This demo runs the L9 → L12 tail of the meta-analysis workflow on a synthetic 10-study dataset, so you can see the shapes of everything the skill produces without running a real search.

⚠️ SYNTHETIC DATA — NOT A REAL SEARCH, NOT REAL CONCLUSIONS. The 10 studies, their effect sizes, the PRISMA counts and the risk-of-bias ratings are all invented. Study names are placeholders (Demo-Study-NN). Nothing here is a real study, DOI, dataset, or finding. The point is to show the artefact forms, not to demonstrate a result.

One command

bash demo/run_demo.sh

The script anchors the repository root from its own location (the parent of demo/), so it runs unchanged after git clone — no paths to edit. If you keep the demo somewhere else, point it at a checkout that contains skills/:

bash demo/run_demo.sh --repo-root /path/to/meta-analysis-skill
bash demo/run_demo.sh --outdir /tmp/demo-out     # write outputs elsewhere

Wall-clock on a provisioned machine is ~1–2 minutes (this is compute only, on synthetic data). A real, human-supervised run takes ~10–15 hours and needs a person at 7 sign-off gates — see the cost table in the repository README.

What it produces (demo/out/)

Artefact What it shows
demo_Fig1_prisma.png/.pdf PRISMA 2020 flow diagram (official PRISMA2020 R package)
demo_Fig2_forest.png/.pdf Forest plot — RE model, weighted boxes, n_int/n_ctrl columns, prediction interval
demo_Fig3_funnel.png/.pdf Contour-enhanced funnel plot with an Egger annotation
demo_Fig4_rob.png/.pdf Risk-of-bias traffic light (RoB 2, robvis)
demo_signoff_SP5_model_heterogeneity.html Human sign-off card SP5 (model + heterogeneity)
demo_signoff_SP6_publication_bias.html Human sign-off card SP6 (publication bias)
mini-manifest.md Trimmed delivery manifest (deliverables, name↔id↔value spot-check, quality stamp)
demo_forest*.csv, demo_funnel*.csv, demo_labels.csv The Chart-Bridge data the renderers consumed (exact contract columns)

Open the two .html cards in a browser — they are self-contained (fully offline). The figures come from the skill's fixed renderers (skills/meta-analysis/scripts/plots/), not ad-hoc plotting code; each renderer runs its own QC gate and writes nothing if a check fails.

What it does under the hood

  1. L9 — pooling. lib/demo_pool.R fits a random-effects model (metafor, REML + Knapp–Hartung) and exports the Chart-Bridge CSVs.
  2. Labels. lib/make_labels.py projects study_id → display straight out of the effect-size table — labels are mechanically sourced, never hand-typed (a real run once mislabelled a forest plot 8/13 because labels were hand-authored; the mini-manifest re-checks name↔id↔value consistency).
  3. L11 — figures. The four fixed renderers draw forest / funnel / PRISMA / RoB.
  4. Sign-off cards. audit_parse.R computes the red/yellow flags from the synthetic data (the lights are R-computed, not hand-set); the S6 renderer turns them into the SP5 and SP6 review cards. The demo renders the cards; no gate is actually cleared — in a real run a human reads each card and signs.
  5. L12 — manifest. lib/make_manifest.py writes the mini delivery manifest.

Prerequisites

Everything the demo needs is what python3 doctor.py checks:

  • Required: Rscript + the metafor package; python3 + matplotlib, numpy.
  • Optional (the demo degrades honestly and continues if they are missing):
    • PRISMA figure → R packages PRISMA2020, DiagrammeRsvg, rsvg, and pandoc.
    • RoB figure → R package robvis.
    • Sign-off cards → node.

If an optional dependency is missing, that step is skipped with a clear note and the rest of the demo still runs. Run python3 doctor.py for exact install commands.