)]}'
{
  "log": [
    {
      "commit": "f729f44b362ff0fb7ddb9d2e4ef26bee560f4f83",
      "tree": "53eb5ad8ab2301e4f300729a57afd0546c5903e5",
      "parents": [
        "7f6898d30f01d4ae3a635e79b83cdac12a5631b8",
        "0df9fccc0e80960de99efc03dba12026a2961c8b"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Wed Nov 11 11:23:57 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 11 11:23:57 2026 -0800"
      },
      "message": "Merge pull request #163 from apache/clutch-vertical-headers\n\nclutch: escape (C) and (R) column labels so AsciiDoc doesn\u0027t render t…"
    },
    {
      "commit": "0df9fccc0e80960de99efc03dba12026a2961c8b",
      "tree": "306ca155414a0cbbf0b63deb90491d132ffcad93",
      "parents": [
        "c72ad1f07a65eb070e5a3da8ffc01e2e3d2c3852"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Nov 11 13:18:39 2026 -0500"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Nov 11 13:18:39 2026 -0500"
      },
      "message": "clutch: escape (C) and (R) column labels so AsciiDoc doesn\u0027t render them as © and ®\n"
    },
    {
      "commit": "7f6898d30f01d4ae3a635e79b83cdac12a5631b8",
      "tree": "e825f04548d5ec841ff9f1ee096145369a946690",
      "parents": [
        "22a2da8014a5a529aa1bd4f77b97caf2a041c682",
        "967d865840b7562923bcde54594b8ea1e5ac0a76"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Wed Nov 11 11:28:13 2026 +1100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 11 11:28:13 2026 +1100"
      },
      "message": "Merge pull request #162 from apache/dave2wave-patch-1\n\nDelete tools/ai-tutor/__pycache__ directory"
    },
    {
      "commit": "967d865840b7562923bcde54594b8ea1e5ac0a76",
      "tree": "e825f04548d5ec841ff9f1ee096145369a946690",
      "parents": [
        "22a2da8014a5a529aa1bd4f77b97caf2a041c682"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Tue Nov 10 16:13:02 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Nov 10 16:13:02 2026 -0800"
      },
      "message": "Delete tools/ai-tutor/__pycache__ directory\n\nCompiled python was inadvertently added to the repository."
    },
    {
      "commit": "22a2da8014a5a529aa1bd4f77b97caf2a041c682",
      "tree": "4eb9bc888c52525647630ab9cb8886ffe0f5489b",
      "parents": [
        "8873dec76605784fc621c15cbabbf7c698c3104b",
        "d2f19fe450a9db09e6549883cdc716f1c479f206"
      ],
      "author": {
        "name": "Jarek Potiuk",
        "email": "jarek@potiuk.com",
        "time": "Wed Nov 11 00:35:21 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 11 00:35:21 2026 +0100"
      },
      "message": "Merge pull request #159 from apache/skills-as-directories\n\nPublish every skill in tools/skills as a plugin"
    },
    {
      "commit": "8873dec76605784fc621c15cbabbf7c698c3104b",
      "tree": "ab691c270268b72d973746fb03cb63410640c8ba",
      "parents": [
        "b0a884c615477522965904f1840b8f3a5df84ac1",
        "c72ad1f07a65eb070e5a3da8ffc01e2e3d2c3852"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Tue Nov 10 09:55:16 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Nov 10 09:55:16 2026 -0800"
      },
      "message": "Merge pull request #161 from apache/clutch-vertical-headers\n\nClutch: full-name vertical column labels, top and bottom"
    },
    {
      "commit": "c72ad1f07a65eb070e5a3da8ffc01e2e3d2c3852",
      "tree": "ab691c270268b72d973746fb03cb63410640c8ba",
      "parents": [
        "b0a884c615477522965904f1840b8f3a5df84ac1"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Mon Nov 09 15:38:46 2026 -0500"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Mon Nov 09 15:38:46 2026 -0500"
      },
      "message": "Clutch: full-name vertical column labels, top and bottom\n"
    },
    {
      "commit": "b0a884c615477522965904f1840b8f3a5df84ac1",
      "tree": "c88e54b29e337a59e9c556f728a3ea397dcd7b5c",
      "parents": [
        "ff7fb059e9c744ff710ee7e7ea303875fbfc21be",
        "1cbb97a13a625ca79252c1f4e3a8bc8799f0035a"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Nov 09 20:03:54 2026 +1100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 20:03:54 2026 +1100"
      },
      "message": "Merge pull request #160 from apache/fix/seealso-lesson-topics\n\nFix undefined seealso topics for lessons 19 to 21"
    },
    {
      "commit": "1cbb97a13a625ca79252c1f4e3a8bc8799f0035a",
      "tree": "c88e54b29e337a59e9c556f728a3ea397dcd7b5c",
      "parents": [
        "ff7fb059e9c744ff710ee7e7ea303875fbfc21be"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Nov 09 20:03:00 2026 +1100"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Nov 09 20:03:00 2026 +1100"
      },
      "message": "Fix undefined seealso topics for lessons 19 to 21\n\nThe new lesson entries used topic tags missing from the topics list,\nfailing validate_resources.py. Remap them to existing topics.\n"
    },
    {
      "commit": "d2f19fe450a9db09e6549883cdc716f1c479f206",
      "tree": "b710ec9f80ab0bf985a99fee96c0f69ae380278f",
      "parents": [
        "34c9244c85d8082ee4f9982db0255c6d56a1f360"
      ],
      "author": {
        "name": "Jarek Potiuk",
        "email": "jarek@potiuk.com",
        "time": "Mon Nov 09 01:29:10 2026 -0700"
      },
      "committer": {
        "name": "Jarek Potiuk",
        "email": "jarek@potiuk.com",
        "time": "Mon Nov 09 01:29:10 2026 -0700"
      },
      "message": "Keep each skill under skills/\u003cname\u003e/ in its plugin\n\nCodex installs a plugin whose SKILL.md sits at the plugin root but never\nlists the skill: it looks only in skills/\u003cname\u003e/. Move each skill there,\nwith its scripts, templates and references, and drop the \"skills\": \"./\"\noverride. Claude Code finds the skills either way.\n\nThe releasecheck Makefile and README follow the move, and\npackage-skills.py packages the nested skill when given a plugin\ndirectory. Tested by installing all eleven plugins into clean Claude Code\nand Codex homes: each one exposes its skill in both.\n\nGenerated-by: Claude Opus 5\n"
    },
    {
      "commit": "34c9244c85d8082ee4f9982db0255c6d56a1f360",
      "tree": "7875303382dccac95000b541556d8bf38bbc464f",
      "parents": [
        "c63b4faa397489c30d9c31aa5c033b2bf3f3942a"
      ],
      "author": {
        "name": "Jarek Potiuk",
        "email": "jarek@potiuk.com",
        "time": "Mon Nov 09 01:25:28 2026 -0700"
      },
      "committer": {
        "name": "Jarek Potiuk",
        "email": "jarek@potiuk.com",
        "time": "Mon Nov 09 01:25:28 2026 -0700"
      },
      "message": "Define the topics used by tutor lessons 19-21\n\nThe ipmc-job, vendor-neutrality and edge-cases lessons use eleven\ntopics that were never defined, so validate_resources.py failed the\nTraining links check on master. Define them in alphabetical position.\n\nGenerated-by: Claude Opus 5\n"
    },
    {
      "commit": "c63b4faa397489c30d9c31aa5c033b2bf3f3942a",
      "tree": "2077b5d3d4ab15327a6a75cc6537452fa00c61d9",
      "parents": [
        "ff7fb059e9c744ff710ee7e7ea303875fbfc21be"
      ],
      "author": {
        "name": "Jarek Potiuk",
        "email": "jarek@potiuk.com",
        "time": "Mon Nov 09 01:17:32 2026 -0700"
      },
      "committer": {
        "name": "Jarek Potiuk",
        "email": "jarek@potiuk.com",
        "time": "Mon Nov 09 01:17:32 2026 -0700"
      },
      "message": "Publish every skill in tools/skills as a plugin\n\nMove each single-file skill into its own directory, as releasecheck\nalready is: \u003cskill\u003e.md becomes \u003cskill\u003e/SKILL.md, and its scripts/,\ntemplates/ and references/ move into it. The skills already refer to\nthose files relative to the skill, so no skill text changes.\n\nGive each skill a plugin manifest and list all eleven in the Claude\nCode, Codex and GitHub Copilot marketplace catalogs, so each installs\nand updates from any of them, and through Apache Magpie for any agent.\nDocument the layout, the per-agent install commands, and releasing a\nskill by tagging \u003cskill\u003e-\u003cversion\u003e.\n\nGenerated-by: Claude Opus 5\n"
    },
    {
      "commit": "ff7fb059e9c744ff710ee7e7ea303875fbfc21be",
      "tree": "f0a442dac96475ca150be5ea168b63e6ffea5f5b",
      "parents": [
        "d279eaa6cb2210658e787f6390b3ee3437ff0b1c"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Nov 09 11:05:41 2026 +1100"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Nov 09 11:07:24 2026 +1100"
      },
      "message": "latest health reports\n"
    },
    {
      "commit": "d279eaa6cb2210658e787f6390b3ee3437ff0b1c",
      "tree": "6df41da4e30e0e5f8abfb2645c165a0bb5b91341",
      "parents": [
        "79caf2cd9de64d1a91dee84a8d241744120918b6",
        "b962e6e8eec5473219025f8089dae9dfd02dfb09"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Nov 09 08:16:31 2026 +1100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 08:16:31 2026 +1100"
      },
      "message": "Merge pull request #158 from apache/skill-notes-no-podling-names\n\nDescribe tool quirks without naming podlings"
    },
    {
      "commit": "b962e6e8eec5473219025f8089dae9dfd02dfb09",
      "tree": "6df41da4e30e0e5f8abfb2645c165a0bb5b91341",
      "parents": [
        "79caf2cd9de64d1a91dee84a8d241744120918b6"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Nov 08 20:41:23 2026 +1100"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Nov 08 20:44:36 2026 +1100"
      },
      "message": "Describe tool quirks without naming podlings\n\nThe tool notes used results from single runs on named podlings as examples. They go stale, so the notes now describe each quirk on its own.\n"
    },
    {
      "commit": "79caf2cd9de64d1a91dee84a8d241744120918b6",
      "tree": "44bc45e416008e00b3ee10c8ccf70998254b4378",
      "parents": [
        "3f0d5da5b516539a316f1b3cf089bebf67bde272",
        "0114c326a7ba4b98284f0a28270bfa38461b4d62"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Nov 08 19:20:52 2026 +1100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Nov 08 19:20:52 2026 +1100"
      },
      "message": "Merge pull request #157 from apache/maturity-model-assessment-skill\n\nmaturity model assessment skill"
    },
    {
      "commit": "0114c326a7ba4b98284f0a28270bfa38461b4d62",
      "tree": "44bc45e416008e00b3ee10c8ccf70998254b4378",
      "parents": [
        "bec20b4d5170e66798eb3eb1283d93b4ddcd3e0d"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Nov 08 19:13:11 2026 +1100"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Nov 08 19:13:11 2026 +1100"
      },
      "message": "Add graduation self-assessment skill\n\nCompares the ipmc graduation readiness verdict with what the podling says in its own reports and on the mailing lists. Tested on all current podlings and four recent graduates.\n"
    },
    {
      "commit": "bec20b4d5170e66798eb3eb1283d93b4ddcd3e0d",
      "tree": "10ef492c4db39c65535e4a726d23d519f1fb38a1",
      "parents": [
        "3f0d5da5b516539a316f1b3cf089bebf67bde272"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Nov 08 11:55:37 2026 +1100"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Nov 08 11:55:37 2026 +1100"
      },
      "message": "Add the maturity-model-assessment skill\n\nBuilds an evidence pack against the 38 Apache Project Maturity Model\nitems and writes the open questions for the PPMC, never a score. Lives\nas a directory skill beside releasecheck.\n"
    },
    {
      "commit": "3f0d5da5b516539a316f1b3cf089bebf67bde272",
      "tree": "24e6c46c6a8deaebdab99e8567f689d604dfd8ae",
      "parents": [
        "71cbe5780a1a0beb973b310649646085d270cb2b",
        "e9aee8e417ad6641bb214fecb291ba01f972f96c"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Nov 08 09:39:30 2026 +1100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Nov 08 09:39:30 2026 +1100"
      },
      "message": "Merge pull request #156 from justinmclean/fix/health-github-errors\n\nfix/health github errors"
    },
    {
      "commit": "e9aee8e417ad6641bb214fecb291ba01f972f96c",
      "tree": "24e6c46c6a8deaebdab99e8567f689d604dfd8ae",
      "parents": [
        "3d518ac42f4583f30cd13b1506f4b9099773991e"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Nov 08 09:37:39 2026 +1100"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Nov 08 09:37:39 2026 +1100"
      },
      "message": "Let the health script read agendas from several folders\n\n--minutes-dir now takes one or more folders, so recent agendas in\nfoundation/board can be used alongside archived_agendas. If a meeting\nis in more than one folder, the folder named last wins.\n"
    },
    {
      "commit": "71cbe5780a1a0beb973b310649646085d270cb2b",
      "tree": "929d26d6a5f19441c4d1456575f474a4d7ee6f8d",
      "parents": [
        "cd116e1f820d1a1ee444a21ad1dca180dee0628a",
        "3d518ac42f4583f30cd13b1506f4b9099773991e"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Nov 08 09:32:41 2026 +1100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Nov 08 09:32:41 2026 +1100"
      },
      "message": "Merge pull request #155 from justinmclean/fix/health-github-errors\n\nStop the health script writing zeros when GitHub fails"
    },
    {
      "commit": "3d518ac42f4583f30cd13b1506f4b9099773991e",
      "tree": "929d26d6a5f19441c4d1456575f474a4d7ee6f8d",
      "parents": [
        "cd116e1f820d1a1ee444a21ad1dca180dee0628a"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Nov 08 09:31:17 2026 +1100"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Nov 08 09:31:17 2026 +1100"
      },
      "message": "Stop the health script writing zeros when GitHub fails\n\nWait out primary rate limits whether GitHub sends 403 or 429, back off at\nleast a minute on secondary limits, and retry network errors. If GitHub\nstill can\u0027t be read, skip that podling\u0027s report and exit non-zero.\n"
    },
    {
      "commit": "cd116e1f820d1a1ee444a21ad1dca180dee0628a",
      "tree": "d8c7dbfe28cc58d1f9e51e1d96be947412394de2",
      "parents": [
        "20f8848a7a0e9385354bf3df8d1108bdb4e01872",
        "bdbdccb7348fa43e1ec541ccb4eedced5f044f6f"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Oct 11 19:37:44 2026 +1100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Oct 11 19:37:44 2026 +1100"
      },
      "message": "Merge pull request #151 from apache/tison/clarify-release-vote-guidance\n\nClarify release votes and align training with concurrent voting"
    },
    {
      "commit": "20f8848a7a0e9385354bf3df8d1108bdb4e01872",
      "tree": "813a499c88e8c8bc90b39941144d0fc6b37cda5c",
      "parents": [
        "a78637c4957f368055bca98b994ccd9fb9964a6d",
        "0afe973268893b4c1645589d2c5857d1fa197346"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Oct 11 19:28:59 2026 +1100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Oct 11 19:28:59 2026 +1100"
      },
      "message": "Merge pull request #154 from justinmclean/training-link-check\n\nAdd a CI check for broken internal links in the training pages"
    },
    {
      "commit": "0afe973268893b4c1645589d2c5857d1fa197346",
      "tree": "813a499c88e8c8bc90b39941144d0fc6b37cda5c",
      "parents": [
        "a78637c4957f368055bca98b994ccd9fb9964a6d"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Oct 11 19:27:31 2026 +1100"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Oct 11 19:27:31 2026 +1100"
      },
      "message": "Add a CI check for broken internal links in the training pages\n"
    },
    {
      "commit": "a78637c4957f368055bca98b994ccd9fb9964a6d",
      "tree": "a2e602464b8b47212d589466155aa2c09ab87886",
      "parents": [
        "458c9ae686e9208160bdfc05fea67856ede5f439",
        "d757ad6396a258caa82a42254b723ef09f2e0a79"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Oct 11 19:15:33 2026 +1100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Oct 11 19:15:33 2026 +1100"
      },
      "message": "Merge pull request #153 from justinmclean/fix-training-see-also-links\n\nFix relative See also links in training subdirectory pages"
    },
    {
      "commit": "d757ad6396a258caa82a42254b723ef09f2e0a79",
      "tree": "a2e602464b8b47212d589466155aa2c09ab87886",
      "parents": [
        "458c9ae686e9208160bdfc05fea67856ede5f439"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Oct 11 19:14:08 2026 +1100"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Oct 11 19:14:08 2026 +1100"
      },
      "message": "Fix relative See also links in training subdirectory pages\n"
    },
    {
      "commit": "458c9ae686e9208160bdfc05fea67856ede5f439",
      "tree": "fb0a5ac6339df9ca73e1d6b2ccdd9fecdf74aad4",
      "parents": [
        "ef8040d52b32ae76111fb481cae82d1c42ba97d1",
        "6081dd8be8a17b28b2c6d2b9d84e45961c4016b1"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Oct 11 18:29:33 2026 +1100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Oct 11 18:29:33 2026 +1100"
      },
      "message": "Merge pull request #152 from justinmclean/fix-training-path-links\n\nFix training path links to point at the built HTML pages"
    },
    {
      "commit": "6081dd8be8a17b28b2c6d2b9d84e45961c4016b1",
      "tree": "fb0a5ac6339df9ca73e1d6b2ccdd9fecdf74aad4",
      "parents": [
        "ef8040d52b32ae76111fb481cae82d1c42ba97d1"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Oct 11 18:28:14 2026 +1100"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Oct 11 18:28:14 2026 +1100"
      },
      "message": "Fix training path links to point at the built HTML pages\n"
    },
    {
      "commit": "bdbdccb7348fa43e1ec541ccb4eedced5f044f6f",
      "tree": "daaaa9bdd04207bb2dbe13af1312818e692037c4",
      "parents": [
        "14afa8032d40920adcb0b121ab5d498e98decce4"
      ],
      "author": {
        "name": "tison",
        "email": "wander4096@gmail.com",
        "time": "Mon Sep 28 15:18:18 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 28 15:18:18 2026 +0800"
      },
      "message": "Follow up the last commit"
    },
    {
      "commit": "14afa8032d40920adcb0b121ab5d498e98decce4",
      "tree": "ed837a909297c8363b93deb9a881ca19f9e0d0ec",
      "parents": [
        "2416e1f23572a8aaaad0511d854984b0360307c1"
      ],
      "author": {
        "name": "tison",
        "email": "wander4096@gmail.com",
        "time": "Mon Sep 28 15:17:54 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 28 15:17:54 2026 +0800"
      },
      "message": "Avoid touching PPMC guides here"
    },
    {
      "commit": "2416e1f23572a8aaaad0511d854984b0360307c1",
      "tree": "b8690374276180bdb47d2e1b4b7536179454ea80",
      "parents": [
        "c663eb818cd57383bdec91190ac67e980f69ae64"
      ],
      "author": {
        "name": "tison",
        "email": "wander4096@gmail.com",
        "time": "Mon Sep 28 15:06:43 2026 +0800"
      },
      "committer": {
        "name": "tison",
        "email": "wander4096@gmail.com",
        "time": "Mon Sep 28 15:06:43 2026 +0800"
      },
      "message": "Clarify binding status in PPMC and IPMC release votes\n"
    },
    {
      "commit": "c663eb818cd57383bdec91190ac67e980f69ae64",
      "tree": "3c50ff8cca50957e5fceefc176793ece01b38239",
      "parents": [
        "7c04c9b2e22d7b006c2e1d2224e7fd8d860044ad"
      ],
      "author": {
        "name": "tison",
        "email": "wander4096@gmail.com",
        "time": "Mon Sep 28 07:29:09 2026 +0800"
      },
      "committer": {
        "name": "tison",
        "email": "wander4096@gmail.com",
        "time": "Mon Sep 28 07:29:09 2026 +0800"
      },
      "message": "Align release training with concurrent PPMC and IPMC votes\n"
    },
    {
      "commit": "7c04c9b2e22d7b006c2e1d2224e7fd8d860044ad",
      "tree": "987f3fe90fed8271f81fec0e9f582a8ed501d773",
      "parents": [
        "ef8040d52b32ae76111fb481cae82d1c42ba97d1"
      ],
      "author": {
        "name": "tison",
        "email": "wander4096@gmail.com",
        "time": "Mon Sep 28 07:22:25 2026 +0800"
      },
      "committer": {
        "name": "tison",
        "email": "wander4096@gmail.com",
        "time": "Mon Sep 28 07:22:25 2026 +0800"
      },
      "message": "Clarify podling release vote guidance\n"
    },
    {
      "commit": "ef8040d52b32ae76111fb481cae82d1c42ba97d1",
      "tree": "4c3584d074cf35f3bc98e1449c4b0a754b14ca48",
      "parents": [
        "876cf205869a9e12aa55ad070efae65658c8a34e",
        "89b4f50591db9e528bac8df1bda27508e3710dbd"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Sep 28 02:17:30 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 28 02:17:30 2026 +1000"
      },
      "message": "Merge pull request #147 from justinmclean/concurrent-release-votes\n\nAllow concurrent PPMC and IPMC release votes in guides"
    },
    {
      "commit": "876cf205869a9e12aa55ad070efae65658c8a34e",
      "tree": "284158965ad0c64f6a890ee0e6bbfd10b43d44c6",
      "parents": [
        "05b0641beb0e2b3b81efb4d528a677a6b27e9a36",
        "499ab0083b57332abfefc0a2a592dd230ef994ef"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Sep 17 19:37:31 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 17 19:37:31 2026 +1000"
      },
      "message": "Merge pull request #150 from justinmclean/releasecheck-skill-metadata\n\nAdd license and capability to releasecheck, bump to 0.5.1"
    },
    {
      "commit": "499ab0083b57332abfefc0a2a592dd230ef994ef",
      "tree": "284158965ad0c64f6a890ee0e6bbfd10b43d44c6",
      "parents": [
        "a12aeec2e3f88e738f899f8577af22cbd49466d5"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Sep 17 19:35:20 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Sep 17 19:35:20 2026 +1000"
      },
      "message": "Add license and capability to releasecheck, bump to 0.5.1\n\nMagpie asks skills pulled from a trusted source to declare both. The capability is review, since the skill reviews one release candidate for a person.\n"
    },
    {
      "commit": "05b0641beb0e2b3b81efb4d528a677a6b27e9a36",
      "tree": "f9b517089d16ad1813eb6cb43ca0480707f1ca12",
      "parents": [
        "6540f4f848ad070436668202b6c8b9771ca7359a",
        "a12aeec2e3f88e738f899f8577af22cbd49466d5"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Sep 17 19:34:30 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 17 19:34:30 2026 +1000"
      },
      "message": "Merge pull request #149 from justinmclean/releasecheck-skill-metadata\n\nAdd license and capability to the releasecheck skill"
    },
    {
      "commit": "a12aeec2e3f88e738f899f8577af22cbd49466d5",
      "tree": "f9b517089d16ad1813eb6cb43ca0480707f1ca12",
      "parents": [
        "6540f4f848ad070436668202b6c8b9771ca7359a"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Sep 17 19:33:55 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Sep 17 19:33:55 2026 +1000"
      },
      "message": "Add license and capability to the releasecheck skill\n\nMagpie asks skills pulled from a trusted source to declare both. The capability is review, since the skill reviews one release candidate for a person.\n"
    },
    {
      "commit": "6540f4f848ad070436668202b6c8b9771ca7359a",
      "tree": "416e6224b26d481b85c4a7378a569108149ada8d",
      "parents": [
        "374432914678f1a6349d7ba4986b10d00b18195b",
        "4b8cd9761daa3f6182612f67ff2ebe39db5f614b"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Sep 17 19:12:50 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 17 19:12:50 2026 +1000"
      },
      "message": "Merge pull request #148 from justinmclean/releasecheck-marketplace\n\nPublish releasecheck from an Incubator plugin marketplace"
    },
    {
      "commit": "4b8cd9761daa3f6182612f67ff2ebe39db5f614b",
      "tree": "416e6224b26d481b85c4a7378a569108149ada8d",
      "parents": [
        "374432914678f1a6349d7ba4986b10d00b18195b"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Sep 17 19:12:17 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Sep 17 19:12:17 2026 +1000"
      },
      "message": "Publish releasecheck from an Incubator plugin marketplace\n\nAdds Claude Code and Codex marketplace manifests listing the releasecheck skill as a plugin at version 0.5, keeps the manifest out of the .skill package, and documents the marketplace install.\n"
    },
    {
      "commit": "89b4f50591db9e528bac8df1bda27508e3710dbd",
      "tree": "7d4ad8913a6fefcd358e07755e4f0164ef98b705",
      "parents": [
        "374432914678f1a6349d7ba4986b10d00b18195b"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Sep 14 20:37:15 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Sep 14 20:37:15 2026 +1000"
      },
      "message": "Allow concurrent PPMC and IPMC release votes in guides\n\nBring the cookbook, release management and graduation guides and the\ncross-list vote scenario in line with the updated incubation policy,\nwhich lets podlings run the dev@ and general@ votes at the same time.\n"
    },
    {
      "commit": "374432914678f1a6349d7ba4986b10d00b18195b",
      "tree": "3d1cde256bbec227b772cdaf254b6e3083d71eec",
      "parents": [
        "fbdde96982e199edd84869f33eaf4005a8e6bd75",
        "56e442484462dcd16d3f3bdd75ecded0969cb719"
      ],
      "author": {
        "name": "tison",
        "email": "wander4096@gmail.com",
        "time": "Mon Sep 14 16:33:18 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 14 16:33:18 2026 +0800"
      },
      "message": "Merge pull request #145 from apache/tisonkun-patch-1\n\nClarify release voting process details and allow concurrent votes"
    },
    {
      "commit": "fbdde96982e199edd84869f33eaf4005a8e6bd75",
      "tree": "d79a03bd64d6a0cd3f5971ce077ed63769d7420a",
      "parents": [
        "c365e5f62a86e84bbcefe2d7fc5f1adb6c3282b9"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Sep 14 18:03:59 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Sep 14 18:03:59 2026 +1000"
      },
      "message": "Note the dev@ arguments for summarize_release_vote_thread\n\nIt takes list_name and domain, not podling. Also drop the note that a message with no vote counts as 0, which is no longer true.\n"
    },
    {
      "commit": "c365e5f62a86e84bbcefe2d7fc5f1adb6c3282b9",
      "tree": "ba36e679f6d34c347c5b79b31c7980c2a6909e26",
      "parents": [
        "38e068845216603b06001037439e23de97867d92"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Sep 14 17:54:14 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Sep 14 17:54:14 2026 +1000"
      },
      "message": "Keep release check findings independent of the vote thread\n\nSKILL.md now does its own checks before reading replies in the current vote, then marks what voters also raised or it missed, and judges -1s against policy. setup_mcps.py approves MCP tool calls for Codex, which never asks in exec mode.\n"
    },
    {
      "commit": "38e068845216603b06001037439e23de97867d92",
      "tree": "cd645d7cdcc6733ddf43e8a512dd87d65a564fb3",
      "parents": [
        "d2c8537091d6ba01ca408db52b702f4a744cec35"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Sep 14 17:30:25 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Sep 14 17:30:25 2026 +1000"
      },
      "message": "Add MCP server setup for the release check skill\n\nsetup_mcps.py installs the six MCP servers and registers them with Claude Code, Claude Desktop, Codex or OpenCode, asking first and backing up each config file. make install now puts the skill into each client that is present.\n"
    },
    {
      "commit": "d2c8537091d6ba01ca408db52b702f4a744cec35",
      "tree": "1c294d721bc0049530b2ab555610b9a071a66af1",
      "parents": [
        "f0d2e67a296bc8ed32d377446a263321dfd7f516"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Sep 14 16:50:34 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Sep 14 16:50:34 2026 +1000"
      },
      "message": "Fixed looking at wrong license file when mukltiple exist\n"
    },
    {
      "commit": "f0d2e67a296bc8ed32d377446a263321dfd7f516",
      "tree": "9d66dc7eb0d4cb3faed0bb08cec94396c74b0c72",
      "parents": [
        "c330fd079079acf5b2a161a5a38c15e802a1aea3"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Sep 12 13:42:40 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Sep 12 13:42:40 2026 +1000"
      },
      "message": "fixed an RC naming issue\n"
    },
    {
      "commit": "c330fd079079acf5b2a161a5a38c15e802a1aea3",
      "tree": "8c624ca18376078f6f258290457754583325e25f",
      "parents": [
        "508aff397acdb2ac1ed84f7b7ca6eb2cc92b06a2"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Sep 12 13:40:35 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Sep 12 13:40:35 2026 +1000"
      },
      "message": "fix packagng\n"
    },
    {
      "commit": "508aff397acdb2ac1ed84f7b7ca6eb2cc92b06a2",
      "tree": "c43b55a4283db3f9d2128f421a05326f2b7198df",
      "parents": [
        "42ea2cf5558d834651b1c86a1213baa3e3863912"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Sep 12 11:53:45 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Sep 12 11:53:45 2026 +1000"
      },
      "message": "Fix header formatting in README.md\n\nUpdated the header formatting in the README file."
    },
    {
      "commit": "42ea2cf5558d834651b1c86a1213baa3e3863912",
      "tree": "934fa70490fbe2e8187abba8160644bff4aa3eb8",
      "parents": [
        "d563671d68dc66bae5cd4bde92a1b58dd37fead6",
        "1b52289be6e83d85e4a25205db04b55fbc1e9ad4"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Sep 12 11:49:15 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Sep 12 11:49:15 2026 +1000"
      },
      "message": "Merge branch \u0027master\u0027 of https://github.com/apache/incubator\n"
    },
    {
      "commit": "d563671d68dc66bae5cd4bde92a1b58dd37fead6",
      "tree": "b63ecbffac8c983093d6917a81db767fbebf9300",
      "parents": [
        "e9cf9572b73550ae772b8b325b8212f0252ff598"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Sep 12 11:49:01 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Sep 12 11:49:01 2026 +1000"
      },
      "message": "Add a release checker skill\n"
    },
    {
      "commit": "1b52289be6e83d85e4a25205db04b55fbc1e9ad4",
      "tree": "ad4cd6b6560cd05598c57b23d3df864fc43f27a8",
      "parents": [
        "2d783257c974d2f3a36ca8c86b144eaa9923a847",
        "d0c34bcb4f33a1b01e97945d16403f685265bf75"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Fri Sep 11 07:14:34 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 11 07:14:34 2026 -0700"
      },
      "message": "Merge pull request #146 from apache/dave2wave-patch-1\n\nFix links and add Apache Trusted Releases info"
    },
    {
      "commit": "e9cf9572b73550ae772b8b325b8212f0252ff598",
      "tree": "335600890d6cb5c3faf0385e95580451510f535b",
      "parents": [
        "83c40fe941efc60a347e7fc6b7ca39826424750b"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Fri Sep 11 11:42:10 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Fri Sep 11 11:42:10 2026 +1000"
      },
      "message": "update health reports\n"
    },
    {
      "commit": "d0c34bcb4f33a1b01e97945d16403f685265bf75",
      "tree": "ad4cd6b6560cd05598c57b23d3df864fc43f27a8",
      "parents": [
        "c902f0df9670b85ac63c2dc273e798e0cdc72e12"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Thu Sep 10 12:50:03 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 10 12:50:03 2026 -0700"
      },
      "message": "Update release management documentation for clarity"
    },
    {
      "commit": "c902f0df9670b85ac63c2dc273e798e0cdc72e12",
      "tree": "64739c42a27d45f71ed06232783bc8715995608c",
      "parents": [
        "2d783257c974d2f3a36ca8c86b144eaa9923a847"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Wed Sep 09 09:48:32 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 09 09:48:32 2026 -0700"
      },
      "message": "Fix links and add Apache Trusted Releases info\n\nUpdated links to point to the correct Apache URLs and added information about the Apache Trusted Releases platform."
    },
    {
      "commit": "56e442484462dcd16d3f3bdd75ecded0969cb719",
      "tree": "6a810e842b6b032fa396ea86f9367c2a4190585d",
      "parents": [
        "a5ffe2e677aa4c5dfbd62e715630c7d48644a475"
      ],
      "author": {
        "name": "tison",
        "email": "wander4096@gmail.com",
        "time": "Sat Sep 05 11:29:15 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Sep 05 11:29:15 2026 +0800"
      },
      "message": "Apply suggestion from @tisonkun"
    },
    {
      "commit": "a5ffe2e677aa4c5dfbd62e715630c7d48644a475",
      "tree": "d760f06f6f8a11d9612fac6f270b733534691932",
      "parents": [
        "de739f002c55ff9a4fe2a41d6f6e5dbec2157cd1"
      ],
      "author": {
        "name": "tison",
        "email": "wander4096@gmail.com",
        "time": "Fri Sep 04 09:17:00 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 04 09:17:00 2026 +0800"
      },
      "message": "Update pages/policy/incubation.ad"
    },
    {
      "commit": "de739f002c55ff9a4fe2a41d6f6e5dbec2157cd1",
      "tree": "9cbddf82290b6372b5a1a0834e9e1667b11fb96b",
      "parents": [
        "a8292c8c4e70081ce99f3c03ca39d3498f98b92d"
      ],
      "author": {
        "name": "tison",
        "email": "wander4096@gmail.com",
        "time": "Fri Sep 04 00:15:54 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 04 00:15:54 2026 +0800"
      },
      "message": "Apply batched suggestions from code review\n\nCo-authored-by: tison \u003cwander4096@gmail.com\u003e"
    },
    {
      "commit": "a8292c8c4e70081ce99f3c03ca39d3498f98b92d",
      "tree": "ee27d552b04fe4eb7fd14e2b7b69a4f374971f22",
      "parents": [
        "2d783257c974d2f3a36ca8c86b144eaa9923a847"
      ],
      "author": {
        "name": "tison",
        "email": "wander4096@gmail.com",
        "time": "Thu Sep 03 21:04:26 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 03 21:04:26 2026 +0800"
      },
      "message": "Clarify release voting process details and explicitly allow concurrent votes"
    },
    {
      "commit": "2d783257c974d2f3a36ca8c86b144eaa9923a847",
      "tree": "0be9849506300a3c69f8179204ea3e8e9a8a5a86",
      "parents": [
        "83c40fe941efc60a347e7fc6b7ca39826424750b"
      ],
      "author": {
        "name": "tison",
        "email": "wander4096@gmail.com",
        "time": "Thu Sep 03 20:10:13 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 03 20:10:13 2026 +0800"
      },
      "message": "Fix formatting and links in incubation.ad"
    },
    {
      "commit": "83c40fe941efc60a347e7fc6b7ca39826424750b",
      "tree": "3a21866fc6eeb9a5054fa3a4c13ab535fac93330",
      "parents": [
        "49f839cdebf43d7a1a030eab27865fd8d6a9db23"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Aug 24 22:04:25 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Aug 24 22:04:25 2026 +1000"
      },
      "message": "add four new lessons\n"
    },
    {
      "commit": "49f839cdebf43d7a1a030eab27865fd8d6a9db23",
      "tree": "597e5b68972917450bc60a651c20ecc684b4e96d",
      "parents": [
        "f03c2a400556b1cd220bf4734de6af421881f8c5"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Aug 24 22:04:03 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Aug 24 22:04:03 2026 +1000"
      },
      "message": "minor fixes/updates\n"
    },
    {
      "commit": "f03c2a400556b1cd220bf4734de6af421881f8c5",
      "tree": "72bd46da8e3f613e8cebc88f8fd6eeb730c4e960",
      "parents": [
        "cef3f49de725b4c1e64992dd2a0a00647b78b926"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Aug 24 13:44:47 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Aug 24 13:44:47 2026 +1000"
      },
      "message": "update docs\n"
    },
    {
      "commit": "cef3f49de725b4c1e64992dd2a0a00647b78b926",
      "tree": "33167ea2344e53313ece7fff848cecdc96f6848e",
      "parents": [
        "483889e8a8ac16e376dc9041865ef2c2877137cf"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Aug 24 13:43:44 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Aug 24 13:43:44 2026 +1000"
      },
      "message": "add lesson 11,12 and 13\n"
    },
    {
      "commit": "483889e8a8ac16e376dc9041865ef2c2877137cf",
      "tree": "71765034803bb2d523889434982d8fb20969717b",
      "parents": [
        "c9d93c6d9ae8542f553e51ad19cefe9e79d0e62f"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Aug 24 13:40:14 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Aug 24 13:40:14 2026 +1000"
      },
      "message": "Add lessons 12, 13 and 14\n"
    },
    {
      "commit": "c9d93c6d9ae8542f553e51ad19cefe9e79d0e62f",
      "tree": "88fc23ffaa2e45679ea7916ec8621a9a70205616",
      "parents": [
        "c0db246af4b01d2d47096171f4312a252ef68799"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Aug 24 13:26:33 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Aug 24 13:26:33 2026 +1000"
      },
      "message": "add lessons on releases\n"
    },
    {
      "commit": "c0db246af4b01d2d47096171f4312a252ef68799",
      "tree": "0534ae4f5720f824c0bbe77d2b7001a3e08e25bf",
      "parents": [
        "c6b0fa0264580df2913cce54ec9735732e4cd29d"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Aug 24 13:25:24 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Aug 24 13:25:24 2026 +1000"
      },
      "message": "fix some minor issue\n"
    },
    {
      "commit": "c6b0fa0264580df2913cce54ec9735732e4cd29d",
      "tree": "a6f23b3c398188588c41ef2e91cc6f06673079c0",
      "parents": [
        "e22ff7650facae49cc02c016153b5ef0dabeb727"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Aug 22 15:06:45 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Aug 22 15:07:07 2026 +1000"
      },
      "message": "add 3 more lessons\n"
    },
    {
      "commit": "e22ff7650facae49cc02c016153b5ef0dabeb727",
      "tree": "02d1b80757f37a7868be19a92ef369a47d60a4e0",
      "parents": [
        "70d5fddeb71c99af6be88acaaaeff2022459d474"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Aug 22 11:16:06 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Aug 22 11:16:06 2026 +1000"
      },
      "message": "fix link and change headings\n"
    },
    {
      "commit": "70d5fddeb71c99af6be88acaaaeff2022459d474",
      "tree": "6d63fd76c1043e5470bd03c85a6ff722d5442523",
      "parents": [
        "7491aae29a742080ff9b27ba5d21dbf5b32e2605"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Aug 22 10:54:47 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Aug 22 10:54:47 2026 +1000"
      },
      "message": "update page and make searchable\n"
    },
    {
      "commit": "7491aae29a742080ff9b27ba5d21dbf5b32e2605",
      "tree": "944293a8fee50c2dc8f5ae40c4dd4d735237325e",
      "parents": [
        "48df7a76f7dae5591e73d57356c6b5cb60c7f70a",
        "14964227bf65464bfc79aad6b15db5af38ee4410"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Aug 22 10:44:31 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Aug 22 10:44:31 2026 +1000"
      },
      "message": "Merge pull request #144 from apache/infrastructure-ruleset-bot/default-branch-protection\n\n[INFRA] Set up default rulesets for default and release branches"
    },
    {
      "commit": "48df7a76f7dae5591e73d57356c6b5cb60c7f70a",
      "tree": "5b2a1a5a19c410eb6ad43f562ae1840f1b273dbb",
      "parents": [
        "31dea0d3cdcc472a87b66ae4b2956bbb413e2a88"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Aug 22 10:43:26 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Aug 22 10:43:26 2026 +1000"
      },
      "message": "add lessons to  incubator web site\n"
    },
    {
      "commit": "31dea0d3cdcc472a87b66ae4b2956bbb413e2a88",
      "tree": "c95b6482bc2924714bfe36b4471cf3cb56544395",
      "parents": [
        "d43a8ca10fad5658b533cab96e83840fccca52f4"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Fri Aug 21 16:45:21 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Fri Aug 21 16:45:21 2026 +1000"
      },
      "message": "add skill builder and reflow\n"
    },
    {
      "commit": "d43a8ca10fad5658b533cab96e83840fccca52f4",
      "tree": "fe55d3ce19033b5022dfb64411882ee58fb28a7a",
      "parents": [
        "556b0e2fb6a7bf07ed39455bf9a58fea2b6249df"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Fri Aug 21 16:36:11 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Fri Aug 21 16:36:11 2026 +1000"
      },
      "message": "add more lesson and update existing ones\n"
    },
    {
      "commit": "556b0e2fb6a7bf07ed39455bf9a58fea2b6249df",
      "tree": "c6c2251348e619ce84392085502aa5f4cec15b82",
      "parents": [
        "a8895e7cf001d99547c4f5843d5b4d5a4ade6825",
        "53bd8c2327fcb48c1446e099de74f01292ab87b9"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Wed Aug 19 15:17:12 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Wed Aug 19 15:17:12 2026 +1000"
      },
      "message": "Merge branch \u0027ai-tutor-lesson-02\u0027\n"
    },
    {
      "commit": "53bd8c2327fcb48c1446e099de74f01292ab87b9",
      "tree": "28538f6ddc85397044330aecb59ce6ff05a4bebd",
      "parents": [
        "b7c4714bae017ee89c319390ada3046267bfd004"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "justin@classsoftware.com",
        "time": "Wed Aug 19 05:11:07 2026 +0000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Wed Aug 19 15:17:11 2026 +1000"
      },
      "message": "Add lesson 3 and revise Track A lesson prompts\n\nAdds lesson 3, Working in public: lists, tone, culture and time zones,\ncompleting Track A. Adds the learner persona used to test lesson prompts\nwithout a human.\n\nCorrections to lessons 1 and 2 found by test-running the prompts:\n\n- 72 hours was described as a guideline rather than a required period.\n  For release votes it is ASF release policy: the vote should stay open\n  at least 72 hours, a shorter one must explain why it is expedited, and\n  the deviation is reported to the Board.\n- Podling release votes need three binding +1s at each of two stages,\n  PPMC then IPMC, so silence does not carry a release the way it carries\n  a lazy consensus proposal. Lessons 1 and 2 named only the IPMC stage.\n- Podling reporting cadence is set by policy, monthly for the first three\n  months then quarterly, not \"frequently at first and less often once\n  settled\".\n- Lesson 1 said conduct concerns reach ASF officers only in exceptional\n  cases. That restriction is not in the material and contradicts lesson 3.\n- Lesson 1 had no self-check questions, only answer keys labelled by\n  topic, so a test run skipped the self-check entirely. Questions added.\n- All three lessons now say that going faster means shortening the\n  tutor\u0027s own commentary rather than dropping exercises or the\n  self-check, define \"demonstrated\" as something the learner wrote, and\n  allow the self-check to be shortened only against named evidence.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nClaude-Session: https://claude.ai/code/session_01CHsAfp6eXGS2JvH2J2jbkw\n"
    },
    {
      "commit": "a8895e7cf001d99547c4f5843d5b4d5a4ade6825",
      "tree": "9ac971768096738d44a0eab5d08c439b2859eae3",
      "parents": [
        "28992fc64e6276b93b4ea98d2723ee14606d4998"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Wed Aug 19 15:13:08 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Wed Aug 19 15:13:55 2026 +1000"
      },
      "message": "validate the training resource index\n"
    },
    {
      "commit": "b7c4714bae017ee89c319390ada3046267bfd004",
      "tree": "522f4214dad5e4f144d0a7be571d2bf1565fbea6",
      "parents": [
        "e9b4ca0ca7a5d6abb8c5f7d52bf4c24ddcfae42f"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Wed Aug 19 15:04:34 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Wed Aug 19 15:04:34 2026 +1000"
      },
      "message": "update a couepl of documents\n"
    },
    {
      "commit": "e9b4ca0ca7a5d6abb8c5f7d52bf4c24ddcfae42f",
      "tree": "c37f8dbd62e5267cd3e9da22acc677b6ad6709f7",
      "parents": [
        "28992fc64e6276b93b4ea98d2723ee14606d4998"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Tue Aug 18 18:16:33 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Tue Aug 18 18:16:33 2026 +1000"
      },
      "message": "Add Incubator AI tutor lessons and planning docs\n\nFirst commit of tools/ai-tutor, which was untracked in its entirety.\n\n- lesson-01-what-the-incubator-is.md: what the Incubator is, and whether\n  you want it (Track A, Foundations)\n- lesson-02-the-apache-way-in-practice.md: the Apache Way, in practice\n  (Track A, Foundations), new\n- PLAN.md, README.md, ROADMAP.md, SOURCES.md: how a lesson gets built,\n  how to run one, the twenty-six lesson roadmap, and the source-to-lesson\n  map\n\nLesson 2 draws on Practicing The Apache Way, Governance in Practice and\nWhy Governance Matters, taking twelve scenarios from the first of those.\nROADMAP records why lessons 3 and 6 can now start deeper rather than\nintroduce from scratch.\n\nIncludes a fix to lesson 1 line 22, which said Track A had four lessons\nrather than three. Folded in here rather than committed separately\nbecause the file was untracked and this is its first commit anyway.\n\nCo-Authored-By: Claude Opus 5 (1M context) \u003cnoreply@anthropic.com\u003e\n"
    },
    {
      "commit": "28992fc64e6276b93b4ea98d2723ee14606d4998",
      "tree": "2d70cf412e97ae696989867740f7c019f0afb8dc",
      "parents": [
        "81c3639a515076caaafce6cc63f6e7a51ee1d65f"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Tue Aug 18 15:19:16 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Tue Aug 18 15:19:16 2026 +1000"
      },
      "message": "added draft incubator skills\n"
    },
    {
      "commit": "81c3639a515076caaafce6cc63f6e7a51ee1d65f",
      "tree": "b5c6e0caa83a3990d955c1ebfb03c267b7e13f15",
      "parents": [
        "0113f561c4187d6f86d8444f878be76eb9a35639"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Aug 02 15:33:51 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun Aug 02 15:33:51 2026 +1000"
      },
      "message": "updated health reports\n"
    },
    {
      "commit": "0113f561c4187d6f86d8444f878be76eb9a35639",
      "tree": "8c1a859661d461085c228cca298d0083b4b526c3",
      "parents": [
        "966aebad328fa5ec483b28057fa30089629af886"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Fri Jul 31 15:38:36 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Fri Jul 31 15:38:36 2026 +1000"
      },
      "message": "improve evals\n"
    },
    {
      "commit": "966aebad328fa5ec483b28057fa30089629af886",
      "tree": "65b028ac105c1ba001eb206f9c7090495285bf5a",
      "parents": [
        "f9fc6a1ab9adbb6d470a67e82689d76201783fdb"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Fri Jul 31 10:36:07 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 31 10:36:07 2026 +1000"
      },
      "message": "Change \u0027Claude\u0027 to \u0027AI\u0027 in README\n\nUpdated installation instructions for the .skill file."
    },
    {
      "commit": "f9fc6a1ab9adbb6d470a67e82689d76201783fdb",
      "tree": "06db29944c618b899576cf40015804c6dc937948",
      "parents": [
        "2f21cd06abfe0f0b1c690f84a7a3759474ef8395"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Fri Jul 31 10:35:02 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 31 10:35:02 2026 +1000"
      },
      "message": "Fix typo in README.md from \u0027A\u0027 to \u0027An\u0027"
    },
    {
      "commit": "2f21cd06abfe0f0b1c690f84a7a3759474ef8395",
      "tree": "71bd3e79c28708d2b1c09f4133ce8a0295d58edf",
      "parents": [
        "3aa26d124c7c06e2a4f945896a737cd93ef9c454"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Fri Jul 31 10:33:45 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 31 10:33:45 2026 +1000"
      },
      "message": "Update README.md\n\nAI not Claude"
    },
    {
      "commit": "3aa26d124c7c06e2a4f945896a737cd93ef9c454",
      "tree": "4894b250ff46080d814d3de56f9676561320cce8",
      "parents": [
        "2ceb24f04ab828fe223eac769e1d15ca598cb7b5"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Jul 30 17:24:27 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Jul 30 17:24:27 2026 +1000"
      },
      "message": "Experimental LLM skill that answers Incubator questions\n"
    },
    {
      "commit": "2ceb24f04ab828fe223eac769e1d15ca598cb7b5",
      "tree": "f59e082807f748488a8f154b84df85a28a966be2",
      "parents": [
        "f85430f7d71df94e41157ed6b3be774b7a11344f",
        "fc7cd4a72085c1c57b853ea5ef5aaae31d10cb1d"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Jun 29 18:02:34 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Jun 29 18:02:34 2026 +1000"
      },
      "message": "Merge branch \u0027master\u0027 of https://github.com/apache/incubator\n"
    },
    {
      "commit": "f85430f7d71df94e41157ed6b3be774b7a11344f",
      "tree": "98e43d16bb4ca0ebf3ea1af08e3a855daf83d24f",
      "parents": [
        "e00a6da58402b1997dbf339496b4c61949b0f68f"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Jun 29 18:02:25 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Mon Jun 29 18:02:25 2026 +1000"
      },
      "message": "update health reports\n"
    },
    {
      "commit": "fc7cd4a72085c1c57b853ea5ef5aaae31d10cb1d",
      "tree": "74654ff4fd55641c9911d1ea9bb7fdccd960c4cc",
      "parents": [
        "e00a6da58402b1997dbf339496b4c61949b0f68f"
      ],
      "author": {
        "name": "PJ Fanning",
        "email": "pjfanning@users.noreply.github.com",
        "time": "Thu Jun 25 16:40:43 2026 +0100"
      },
      "committer": {
        "name": "PJ Fanning",
        "email": "pjfanning@users.noreply.github.com",
        "time": "Thu Jun 25 16:40:43 2026 +0100"
      },
      "message": "Baremaps retired\n"
    },
    {
      "commit": "e00a6da58402b1997dbf339496b4c61949b0f68f",
      "tree": "6433e9f14227e3cf54ea370efcb66ca8fbcb2c1d",
      "parents": [
        "223b642811b644b2d2d105e0548379367feff2de"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun May 31 11:13:41 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun May 31 11:13:41 2026 +1000"
      },
      "message": "made multi-repo aware and some github optimisation\n"
    },
    {
      "commit": "223b642811b644b2d2d105e0548379367feff2de",
      "tree": "563443c0684edfb0999a6568aafd573cb4537c60",
      "parents": [
        "61c73b58a9827d893f67f021bf2b3a9cba4d458a"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun May 31 10:14:47 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sun May 31 10:14:47 2026 +1000"
      },
      "message": "fix pony mail report re no of releases\n"
    },
    {
      "commit": "61c73b58a9827d893f67f021bf2b3a9cba4d458a",
      "tree": "ea428fb1aaeda150e3f97d8daf8f79a5f557b9f5",
      "parents": [
        "7063e879818a8057fe39260e24c74ea755813df5"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat May 30 16:16:51 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat May 30 16:16:51 2026 +1000"
      },
      "message": "update reports\n"
    },
    {
      "commit": "14964227bf65464bfc79aad6b15db5af38ee4410",
      "tree": "e509de12c2da49d5491b9bb4e303701cbee7d8e4",
      "parents": [
        "7063e879818a8057fe39260e24c74ea755813df5"
      ],
      "author": {
        "name": "The Apache Software Foundation",
        "email": "root-asf-gitbox-commits@apache.org",
        "time": "Fri May 15 17:05:59 2026 -0500"
      },
      "committer": {
        "name": "The Apache Software Foundation",
        "email": "root-asf-gitbox-commits@apache.org",
        "time": "Fri May 15 17:05:59 2026 -0500"
      },
      "message": "Set up default protection ruleset for default and release branches"
    },
    {
      "commit": "7063e879818a8057fe39260e24c74ea755813df5",
      "tree": "c7922de1d354e5a0ce32c7361faf6e5dcd895fa0",
      "parents": [
        "0b9bb15d22ce28bc00181f87e645981db2af1c09",
        "e230557a23ee992c04e681db99ed49cb129046f6"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Apr 25 18:24:24 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Apr 25 18:24:24 2026 +1000"
      },
      "message": "Merge branch \u0027master\u0027 of https://github.com/apache/incubator\n"
    },
    {
      "commit": "0b9bb15d22ce28bc00181f87e645981db2af1c09",
      "tree": "59f7db76858ab96c176dafdc8568c57011c91c04",
      "parents": [
        "89ea57abe67a24ed31e74f75f8ff79d7c98830fc"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Apr 25 18:23:41 2026 +1000"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Sat Apr 25 18:23:41 2026 +1000"
      },
      "message": "updated reports\n"
    },
    {
      "commit": "e230557a23ee992c04e681db99ed49cb129046f6",
      "tree": "2f4819ad36236ef3a94b22f98ccd43236cdda220",
      "parents": [
        "6d6d3a07c4159e3ba8cc696e07ff730a3b190cf7"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Mar 26 15:35:09 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Mar 26 15:35:09 2026 +0000"
      },
      "message": "Use BAT not Whimsy\n"
    },
    {
      "commit": "6d6d3a07c4159e3ba8cc696e07ff730a3b190cf7",
      "tree": "4e00e3c05188d8f7d47d39ec488ff75b70b4554b",
      "parents": [
        "89ea57abe67a24ed31e74f75f8ff79d7c98830fc"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Dec 17 16:45:58 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Mar 26 15:32:36 2026 +0000"
      },
      "message": "incubator.apache.org is deprecated as a domain name for podlings\n"
    },
    {
      "commit": "89ea57abe67a24ed31e74f75f8ff79d7c98830fc",
      "tree": "4877035b8b604cd183216c11eebe16c53dbc6c05",
      "parents": [
        "51b3b82a9cfa622f8e61cc48cfbed4789cd66f07",
        "91d7df0b634f8c8deb6982e60b8a97bf9ca5b8cf"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Mar 19 12:49:39 2026 +1100"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Mar 19 12:49:39 2026 +1100"
      },
      "message": "Merge branch \u0027master\u0027 of https://github.com/apache/incubator\n"
    },
    {
      "commit": "51b3b82a9cfa622f8e61cc48cfbed4789cd66f07",
      "tree": "52a552d879e9648252e206fb24f7a6c0bbcf12fb",
      "parents": [
        "48a60948133f63d965915f44263913379a61a28d"
      ],
      "author": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Mar 19 12:49:05 2026 +1100"
      },
      "committer": {
        "name": "Justin Mclean",
        "email": "jmclean@apache.org",
        "time": "Thu Mar 19 12:49:05 2026 +1100"
      },
      "message": "update reports\n"
    }
  ],
  "next": "91d7df0b634f8c8deb6982e60b8a97bf9ca5b8cf"
}
