{
  "package": "nonprofit-simulation-lab",
  "version": "1.0.0",
  "experiment": "unique-charities-v2",
  "dataset": "unique-cohort-seed42-5-replications",
  "generated_from_run_completed_utc": "2026-10-17T11:03:37.861089+00:00",
  "source_inventory_sha256": "4186faf172f6f5760197dcd0919620a3a650034ed66a5a785b3fad312e7f237f",
  "source_archive_sha256": "f4bb86c913e1e6110c9749726a13c30130f10df9522dc4dcb014b738aaa71e36",
  "source_files_used": {
    "PIPELINE_RUN.json": "edb391f2eaf91ce31d9ac505a6c04d80db398953db054c73d5566ecee03b89e6",
    "outputs/budget-sensitivity-v1/budget-10pct/metrics.csv": "9d7ca33dde25a97eeb19bfb7fa0ea50361d63e8331a4f45fd498715bf4c63c69",
    "outputs/budget-sensitivity-v1/budget-25pct/metrics.csv": "3f3891e80d3052d592888a84c832a3c4a74fd57ac1c37c54884bf4f23f2e81f1",
    "outputs/budget-sensitivity-v1/budget-50pct/metrics.csv": "785fb634e5bdcff43c74e02abf1451f58b96c46bc5f2d866fa1b0f52afb068ed",
    "outputs/budget-sensitivity-v1/budget-comparison.csv": "43eb920d50241aab47b3ad2b901ca7bf62e62934581ae132a7b38a334bc7d935",
    "outputs/budget-sensitivity-v1/report.json": "6cc64cee28118b7ca54f03320bd4f2d99c0dcd68b1c2265f1fd8f388ec0f5102",
    "outputs/funding-crisis-robustness-v1/analysis-42/first-seed-subgroups.csv": "7ce155d635fdd8a0ff3762f6fac7233b212869e5f2c90651942c116a925d8e3a",
    "outputs/funding-crisis-robustness-v1/analysis-43/first-seed-subgroups.csv": "5e60386150f709abbf278769870de797aba2e4db9ae117d3278780b823f95e33",
    "outputs/funding-crisis-robustness-v1/analysis-44/first-seed-subgroups.csv": "ea501626e30de225bd04212517229a3c49c6fe91dfd5a55b116055ab19ba556b",
    "outputs/funding-crisis-robustness-v1/analysis-45/first-seed-subgroups.csv": "f88553f7764c3fbef73a5cee38edafd5f40aec35722f57c8a6f025922b421e84",
    "outputs/funding-crisis-robustness-v1/analysis-46/first-seed-subgroups.csv": "7402a7ad06d647ed7467bdc9b66ba90b8db841f5b46dbb93629618bbb689b717",
    "outputs/funding-crisis-robustness-v1/subgroups-all-seeds.csv": "ec504174c82be6d8c5df64e5a63455a04023317e6034648aab5eddb17e270caa",
    "outputs/funding-crisis-v1/ledger-first-seed.csv.gz": "8e349b68dc5415c930337cb30e89b6d88e80f1a66c2e297e6dffc90c7df4dc77",
    "outputs/funding-crisis-v1/metrics.csv": "0b6f12453d77517653acfe933b713a9ff49cdaaac32e788e56e4670946969b89",
    "outputs/funding-crisis-v1/report.json": "e4c7f4f3699688c0c40f1d3ddedef9fc6bc0ddb7614b0b05cf8bcb67b08d034a",
    "outputs/funding-event-backtest-v3/report.json": "d54d0027f7a6136a9209797f1f5e375325f3035e75b89687ceb3b48508bed654",
    "plain-english-v4/PLAIN_ENGLISH_REPORT.html": "e21c1529bf8c5191ab89de6cbfce5acdca54c9e4c74c618f08015b6401f36ffa",
    "plain-english-v4/deficit-gap-analysis.json": "5f09b5dc62783cb8715370a6baa2f06fecbb248bc264f16f3d6be3cea75348f3",
    "plain-english-v4/shock-extension/per-seed-shocks.csv": "b1163ad55301d0bfaf0aa053bed27b1274fde1c0042a82ed9c7a6eff3970e7c4",
    "plain-english-v4/shock-extension/report.json": "80514552a69d90893d8f4561295838959027c85ac0a5bf3e601ad0d3a74baf8b",
    "plain-english-v4/support-size-analysis.json": "065d6dbf03edcd6d7c6d624df8832cb532fb11a037ed9eee2f67f3aabdc285f8"
  },
  "source_files_verified_count": 21,
  "source_inventory_files_listed": 176,
  "result_origin": {
    "completed_run": "Cuts 0%, 10%, 15%, 25%; support grids; subgroup analyses (the completed Spark pipeline outputs).",
    "additional_analysis": "50% cut: accounting overlay applied to the saved unique-cohort no-cut financial paths. Reproduces the completed-run 0%, 15% and 25% counts exactly. Not part of the original Spark run. Revenue-band support breakdown and new-deficit gaps are likewise additional analyses of the saved outputs."
  },
  "cohort_definition": {
    "source_years": "2018-2024",
    "eligible_profiles": 41077,
    "unique_charities": 10000,
    "selection": "Uniform sample without replacement from sorted eligible 2024 profiles (cohort seed 42); fixed across assumptions and replications",
    "replications": 5,
    "replication_seeds": [
      42,
      43,
      44,
      45,
      46
    ],
    "projected_years": 3,
    "anchor_year": 2024
  },
  "replication_definition": "Five stochastic financial replications (seeds 42 to 46) of the same 10,000 charities. Ranges are the smallest and largest of the five replication results, labelled \"variation across five simulations\". They are not confidence intervals.",
  "metric_definitions": {
    "annual_deficit": "Simulated expenses exceed simulated income in that projected year (surplus below zero). Not cash exhaustion, closure or loss of services.",
    "deficit_rate": "Share of the 10,000 charities in annual deficit in that year, percent. Mean of five replications.",
    "no_cut": "The experimental reduction is never imposed. It does not mean funding was cut and later restored.",
    "with_cut": "Government revenue is reduced by the chosen percentage in every projected year, applied to each year's unshocked government revenue (not compounded).",
    "additional_annual_deficits": "Charities in annual deficit with the cut minus charities in annual deficit without the cut, same replication and financial path.",
    "additional_points": "Additional annual deficits divided by 10,000, as percentage points.",
    "support_budget": "Fraction (10%, 25%, 50%) of the starting-year loss from a 15% government-revenue cut. Not a funding-cut percentage.",
    "annual_deficits_avoided": "Annual deficits with the cut and no support minus annual deficits with the cut and the support rule, in the projected year.",
    "cut_induced_deficits_avoided": "The part of the deficits avoided that exist only because of the cut (not in deficit without the cut).",
    "deficit_dollars_reduced": "Reduction in the combined annual deficit dollars across charities in deficit, accounting basis.",
    "support_above_deficit": "Support received beyond what is needed to cover the same-year deficit. Not labelled waste; its value is not modelled.",
    "units": "Rates in percent. Money in Australian dollars, annual."
  },
  "unavailable": [
    {
      "what": "Subgroup results at a 50% funding cut",
      "why": "The additional 50% analysis holds aggregate deficit counts only."
    },
    {
      "what": "Support comparison at funding cuts other than 15%",
      "why": "Only the 15% cut was tested with support."
    },
    {
      "what": "Dot view at a 50% funding cut and for support scenarios",
      "why": "Per-charity states exist only for the completed run (0%, 10%, 15%, 25%)."
    },
    {
      "what": "Grant timing and recovery controls",
      "why": "Not modelled."
    },
    {
      "what": "Cause or geography filters",
      "why": "No joined and validated data in this experiment."
    }
  ],
  "not_modelled": [
    "Leadership decisions",
    "Cash and reserves",
    "Payment timing",
    "Charity closure",
    "Service delivery and beneficiaries",
    "Interaction between charities and funders"
  ],
  "privacy": "No ABNs, names or financial ledgers are published. The dot view stores one deficit bit per simulated charity per scenario in a fixed shuffled order.",
  "output_files": {
    "results.json": {
      "bytes": 351729,
      "sha256": "a22a7f2b59a44f35c2fad00ecb942b0daabe7068115ab25c37d528443dfd6b24"
    },
    "states.json": {
      "bytes": 40739,
      "sha256": "56709d0ad0c0bbd3390a82547ac716239190d8a5aa6c0f811f927641787f6474"
    },
    "preview.json": {
      "bytes": 606,
      "sha256": "eabe4621ef27c221e1c8e8049f40a1ad7e4484e4fe9f6e7d48de8da47b8b200d"
    },
    "plain-english-report.html": {
      "bytes": 72462,
      "sha256": "e21c1529bf8c5191ab89de6cbfce5acdca54c9e4c74c618f08015b6401f36ffa"
    }
  },
  "report_page_sha256": "a4f34d1ad76b74d6da08068950770b0c209c31f779f909bf9003bdef2ca85a70"
}
