{
  "manifest_version": "0.1",
  "work_slug": "global-health-malaria-tpp-tier-concordance",
  "protocol": "protocol:secondary-analysis 0.1",
  "module": "agent/tools.py",
  "analysis_unit": "analysis.py",
  "published_results": "results.json",
  "source_dataset_doi": "10.1371/journal.pmed.1000396.t001",
  "environment": {
    "language": "python",
    "tested_version": "3.13",
    "requirements": "requirements-reproduction.txt",
    "network": "deny-except-pinned-inputs"
  },
  "execution": {
    "boundary": "docs/72-reproduction-contract.md",
    "live_invocation": "not connected; the sandboxed runner gates execution over MCP"
  },
  "surface_note": "This object has few genuine knobs, and the manifest says so rather than inventing them. Both tests are exact, over a fixed 23-criterion table, and each already reports its sensitivity variant alongside the primary. Only the multiplicity correction generalises past what the published run covers.",
  "tools": [
    {
      "name": "source_table",
      "summary": "Shape and provenance of the parsed criteria table.",
      "unit": "analysis.acquire_data and analysis.parse_table",
      "parameters": [],
      "returns": "source_md5, expected_md5, both use-case names, n_substantive_criteria",
      "supports_claims": [1, 2],
      "deterministic": true
    },
    {
      "name": "tier_composition_test",
      "summary": "Freeman-Halton exact test of priority tier against use-case (T1).",
      "unit": "analysis.run_test1 (with analysis.tier_count_table, analysis.freeman_halton_exact, analysis.cramers_v)",
      "parameters": [],
      "returns": "the contingency table, chi-square diagnostics, exact_p, Cramer's V, and the presence/absence sensitivity block",
      "supports_claims": [1],
      "deterministic": true
    },
    {
      "name": "concordance_test",
      "summary": "Exact binomial test on the proportion of criteria differing between use-cases (T2).",
      "unit": "analysis.run_test2 (with analysis.norm_text)",
      "parameters": [],
      "returns": "n_criteria, n_differ, n_identical, proportion_differ, Wilson CI, exact_p, and the normalised-text sensitivity block",
      "supports_claims": [2],
      "deterministic": true
    },
    {
      "name": "requirement_map",
      "summary": "Which use-case demands the more stringent tier, criterion by criterion.",
      "unit": "analysis.build_requirement_map (with analysis.most_stringent)",
      "parameters": [],
      "returns": "tier distribution per use-case and the counts of criteria each use-case holds to a stricter standard",
      "supports_claims": [3],
      "deterministic": true
    },
    {
      "name": "holm",
      "summary": "Holm-Bonferroni correction over a family of p-values, in input order.",
      "unit": "analysis.holm_correction",
      "parameters": [
        {
          "name": "p_values",
          "type": "array of number | null",
          "default": null,
          "range": "any non-empty list of p-values in [0, 1]; null uses the declared family of two primary tests",
          "published_values": [null],
          "notes": "The declared family has two members whose p-values are close, so the correction never separates them. An arbitrary family exercises the ranking."
        }
      ],
      "returns": "the corrected p-values, in input order",
      "supports_claims": [1, 2],
      "deterministic": true
    }
  ]
}
