{
  "ok": true,
  "tool": "explain_costs",
  "tools_version": "2.0.0",
  "data_commit": "6aa01dab267df9e8bd64162e1482d3d3869d9929",
  "principle": "The five categories are never added together. Unknown amounts are null, never zero. Noncash time stays in hours unless a method is cited.",
  "categories": {
    "cash": {
      "meaning": "Money actually paid or billed, from an invoice or a provider's own figures. The only category that's added up into 'known cash spending'.",
      "entries": 6,
      "known_amount": 138.5,
      "unknown_amounts": 0
    },
    "forecast": {
      "meaning": "Expected future spending, such as a renewal. Shown separately because it hasn't happened and may change.",
      "entries": 3,
      "known_amount": 141.2,
      "unknown_amounts": 0
    },
    "reserve": {
      "meaning": "Money set aside but not spent. Reporting it as spending would double-count it when it's used.",
      "entries": 0,
      "known_amount": null,
      "unknown_amounts": 0
    },
    "donated-labor": {
      "meaning": "Unpaid contributor time. Recorded in hours; given a price only with a published valuation method, because there's no agreed hourly rate.",
      "entries": 1,
      "known_amount": null,
      "unknown_amounts": 1
    },
    "user-attention": {
      "meaning": "Time people spend because of the software (setup, waiting, fixing things). A real cost to them, but not the project's money.",
      "entries": 0,
      "known_amount": null,
      "unknown_amounts": 0
    }
  },
  "this_project": "USD 138.50 known cash spending. Forecasts, reserves and noncash time are reported separately and not added in.",
  "basis": "self-reported",
  "currency": "USD",
  "as_of_utc": "2026-10-20T15:20Z"
}

