)]}'
{
  "commit": "efec8634852c4e4d2cf4352fbb063bf425a3312e",
  "tree": "a31f620b8fe51a33a045854dfac66e75d8c3da37",
  "parents": [
    "6957ac9ceaf4b0de7ce1e350ed5f10b4bcfca2ce"
  ],
  "author": {
    "name": "Marc Kupietz",
    "email": "kupietz@ids-mannheim.de",
    "time": "Thu Sep 03 13:13:37 2026 +0200"
  },
  "committer": {
    "name": "Marc Kupietz",
    "email": "kupietz@ids-mannheim.de",
    "time": "Thu Sep 03 13:49:12 2026 +0200"
  },
  "message": "Check the Readme against the package on every test run\n\nThe Readme is the entry point for readers, and, since generated code is\ncopied from it verbatim, for LLMs too. Nothing so far noticed when it\ndrifted away from the package: the \"available since RKorAPClient\n0.9.0.9000\" claim named a version that never existed and survived for\nyears, and the code in it is never executed.\n\nFour checks, all offline and in milliseconds, so unlike the\ndocumentation tests they can run on every commit:\n\n* every R code block parses\n* every function called exists, those of this package as exports, the\n  others through the packages the Readme itself loads\n* every named argument exists in the signature of the function it is\n  passed to, which is where a renamed parameter would otherwise turn\n  the Readme into a source of broken code\n* every version mentioned has a NEWS.md section, which is what the\n  0.9.0.9000 claim failed\n\nSignatures are taken from the .local wrapper that setMethod() creates\nfor S4 methods whose arguments differ from the generic, since the\nformals of the method itself are only those of the generic.\n\nAll four were verified to fail on an injected fault of their kind. They\nskip when Readme.md is absent, as it is in the built package, being in\n.Rbuildignore.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: Ic1aefea5d964956ca46132ec3d97e2318b4fe931\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "fcea953f0dae27146203c3edbe3aa9df6a64e980",
      "new_mode": 33188,
      "new_path": "tests/testthat/test-readme-consistency.R"
    }
  ]
}
