)]}'
{
  "log": [
    {
      "commit": "9b8f7099a9a1f723d175742b7e6a64d947e18bbb",
      "tree": "0d3a5e54b71c6c9c3fa6a24824c1792b2d8f570e",
      "parents": [
        "4d1df161dd8c92888284fd0267b421dad74c75f3"
      ],
      "author": {
        "name": "Efe",
        "email": "gokdemirefe1903@gmail.com",
        "time": "Mon Nov 09 06:40:45 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 11:40:45 2026 +0800"
      },
      "message": "fix: preserve fractional seconds in upstream timeouts (#2894)\n\n* Fix fractional upstream timeout translation\n\nFixes APISIX Ingress Controller issue #2879.\n\nSigned-off-by: Efe Gökdemir \u003cefe@rexcode.co.uk\u003e\n\n* test: compare ingress timeouts as floats\n\nSigned-off-by: Efe Gökdemir \u003cgokdemirefe1903@gmail.com\u003e\n\n* fix: reject negative ApisixRoute timeouts\n\n* test: cover valid and negative upstream timeouts\n\n* fix: allow fractional backend policy timeouts\n\n---------\n\nSigned-off-by: Efe Gökdemir \u003cefe@rexcode.co.uk\u003e\nSigned-off-by: Efe Gökdemir \u003cgokdemirefe1903@gmail.com\u003e"
    },
    {
      "commit": "4d1df161dd8c92888284fd0267b421dad74c75f3",
      "tree": "3fa9e8399b8e02a0155de6c1286b42119b44524a",
      "parents": [
        "23b18dd76ab092ed92a6c3e4c02719883b8c186f"
      ],
      "author": {
        "name": "Traky Deng",
        "email": "trakydeng@gmail.com",
        "time": "Wed Nov 04 09:47:12 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 04 09:47:12 2026 +0800"
      },
      "message": "docs: fix generated CRD reference self-links (#2904)"
    },
    {
      "commit": "23b18dd76ab092ed92a6c3e4c02719883b8c186f",
      "tree": "35693119b4d5c35a542a71534e1947accfcf82d9",
      "parents": [
        "5dec343689ec643d2c1d22a4f519a4da65ec236e"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Thu Oct 29 17:14:19 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 29 17:14:19 2026 +0800"
      },
      "message": "fix: scope APISIX synchronization to controller-managed resources (#2906)"
    },
    {
      "commit": "5dec343689ec643d2c1d22a4f519a4da65ec236e",
      "tree": "f01f23c50cd2dc6e8495f935a6285c51b6fd0322",
      "parents": [
        "d779fa2c14dc75c852ec479e42926055cad1acea"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Wed Oct 28 17:26:33 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Oct 28 17:26:33 2026 +0800"
      },
      "message": "ci: load only the node platform into kind with the containerd image store (#2907)"
    },
    {
      "commit": "d779fa2c14dc75c852ec479e42926055cad1acea",
      "tree": "959d7ffd2b5fb116df790bb72aa564842ad44c36",
      "parents": [
        "5a25a3bf34939f815b7b076258997a6cce659398"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Tue Oct 27 08:51:37 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 27 08:51:37 2026 +0800"
      },
      "message": "fix: preserve shared GatewayProxy resources when deleting Gateways (#2905)"
    },
    {
      "commit": "5a25a3bf34939f815b7b076258997a6cce659398",
      "tree": "fb1239590ef5d0e2d3bbeb0880ffd17ff3b728b8",
      "parents": [
        "6b95e2aa9d598ec09814cb982d18880c94c98e3b"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Tue Oct 13 15:46:41 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 13 15:46:41 2026 +0800"
      },
      "message": "feat: serve TLSRoute in Passthrough mode (#2882)"
    },
    {
      "commit": "6b95e2aa9d598ec09814cb982d18880c94c98e3b",
      "tree": "aa3b96e8ab577334b6511195514de420acca64b7",
      "parents": [
        "7884034159b671480788c2f9e08ff6a7132aceb1"
      ],
      "author": {
        "name": "玉升",
        "email": "wyshdiy@163.com",
        "time": "Mon Oct 12 15:32:09 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 12 15:32:09 2026 +0800"
      },
      "message": "fix: surface Gateway API route translation failures in status (#2840) (#2898)\n\nSigned-off-by: yusheng.wang \u003cyusheng.wang@chaitin.com\u003e"
    },
    {
      "commit": "7884034159b671480788c2f9e08ff6a7132aceb1",
      "tree": "3a217ba404406e4abd21a0e62d78a1792d0424a4",
      "parents": [
        "e58f6e853dfc4fe41dc22168a8c9dd6d25c82b38"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Fri Oct 09 18:01:33 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 09 18:01:33 2026 +0800"
      },
      "message": "fix: resolve ApisixPluginConfig secretRef in its own namespace (#2901)"
    },
    {
      "commit": "e58f6e853dfc4fe41dc22168a8c9dd6d25c82b38",
      "tree": "0e601df76821b305dc15bc97b617d97f3356c070",
      "parents": [
        "e4888b80631bc7e868082d0bd64e3ddb6ec65cf6"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Fri Oct 09 14:40:32 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 09 12:25:32 2026 +0545"
      },
      "message": "fix: reject invalid GatewayProxy plugin configuration (#2878)"
    },
    {
      "commit": "e4888b80631bc7e868082d0bd64e3ddb6ec65cf6",
      "tree": "efbfc8c5222a666178eaab736cbb1fdb05449aa2",
      "parents": [
        "68cda31198143027c7ffed10a59af873465426f6"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Fri Oct 09 14:18:30 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 09 14:18:30 2026 +0800"
      },
      "message": "fix: reject an ApisixRoute servicePort that cannot resolve (#2860)"
    },
    {
      "commit": "68cda31198143027c7ffed10a59af873465426f6",
      "tree": "635d6c69eb48ddb63f318e3244ccbc69ae8d763c",
      "parents": [
        "3dd92d87b30ec8175e4035713c6ea47585a62c68"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Tue Sep 29 18:01:45 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 29 15:46:45 2026 +0545"
      },
      "message": "fix: reject invalid L4RoutePolicy plugin config (#2876)"
    },
    {
      "commit": "3dd92d87b30ec8175e4035713c6ea47585a62c68",
      "tree": "c63c469db74097c2f55afa5162a2163f4e02625e",
      "parents": [
        "429812b5d4a1459fd43bec281a1c7a46184dd086"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Mon Sep 28 17:42:37 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 28 15:27:37 2026 +0545"
      },
      "message": "fix: stop logging plugin config and whole HTTPRoute/Gateway objects (#2892)"
    },
    {
      "commit": "429812b5d4a1459fd43bec281a1c7a46184dd086",
      "tree": "52eabf8704fb4bd0d4979463ec1b11facda04c4c",
      "parents": [
        "300728ef8aa2061eb87156edccdd8bb5bdeee01b"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Wed Sep 23 17:03:23 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 23 17:03:23 2026 +0800"
      },
      "message": "feat: support namespace_selector to limit synced namespaces (#2891)"
    },
    {
      "commit": "300728ef8aa2061eb87156edccdd8bb5bdeee01b",
      "tree": "2c4e8b89745b87e8f10f0dff461de504d5ce921a",
      "parents": [
        "9c4146cc3df13458ccde742f9a945d10da678c9b"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Mon Sep 21 17:25:08 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 21 17:25:08 2026 +0800"
      },
      "message": "chore(deps): bump OpenTelemetry Go modules to v1.45.0 (#2889)"
    },
    {
      "commit": "9c4146cc3df13458ccde742f9a945d10da678c9b",
      "tree": "7357b20374f415456ba7e0020bac4755b8107b04",
      "parents": [
        "dac9e1ab1df9ce4c6cf5640cac149b2b281df37e"
      ],
      "author": {
        "name": "Zeping Bai",
        "email": "bzp2010@apache.org",
        "time": "Mon Sep 21 15:16:32 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 21 15:16:32 2026 +0800"
      },
      "message": "feat(apisix): attribute a GatewayProxy\u0027s global rules and plugin metadata to itself (#2885)"
    },
    {
      "commit": "dac9e1ab1df9ce4c6cf5640cac149b2b281df37e",
      "tree": "4bd9c00b55134b75e2015bbc72c623d4adda3f93",
      "parents": [
        "3f7475e4bdb9a8a777fa5d4d7b95d029250b9468"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Mon Sep 21 12:13:04 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 21 09:58:04 2026 +0545"
      },
      "message": "fix(gateway-api): honor TLSRoute listener ports (#2881)"
    },
    {
      "commit": "3f7475e4bdb9a8a777fa5d4d7b95d029250b9468",
      "tree": "370369dafa743d34c15f624b274ad6c9b5aa3155",
      "parents": [
        "62db2a1ecd653d31f59f3df919474d437ddddfe8"
      ],
      "author": {
        "name": "Zeping Bai",
        "email": "bzp2010@apache.org",
        "time": "Fri Sep 18 18:27:00 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 18 18:27:00 2026 +0800"
      },
      "message": "feat(cache): rewrite global_rules and plugin_metadata as owned rows (#2884)"
    },
    {
      "commit": "62db2a1ecd653d31f59f3df919474d437ddddfe8",
      "tree": "e442ab4a165176a25e5447ce8264cde4175dc5d2",
      "parents": [
        "ef19792fc957478f127da9fa3e9ce2bc91d53606"
      ],
      "author": {
        "name": "Zeping Bai",
        "email": "bzp2010@apache.org",
        "time": "Fri Sep 18 15:01:20 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 18 15:01:20 2026 +0800"
      },
      "message": "feat(cache): track which Kubernetes resource owns each service, ssl and consumer (#2883)"
    },
    {
      "commit": "ef19792fc957478f127da9fa3e9ce2bc91d53606",
      "tree": "2fad048dff8eeb8537227f7d2a1576088b5f2407",
      "parents": [
        "d197ea5563daba45db6f55a49d0e25fb0b266d66"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Fri Sep 18 14:09:50 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 18 14:09:50 2026 +0800"
      },
      "message": "chore(deps): bump google.golang.org/grpc from 1.82.1 to 1.83.2 (#2853)"
    },
    {
      "commit": "d197ea5563daba45db6f55a49d0e25fb0b266d66",
      "tree": "5e932d157d0ba4bdf1a4efb9c1583dbc62c8f4b8",
      "parents": [
        "43637b8f4aaed9479840af97ff5bef17899aec02"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Fri Sep 18 10:29:38 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 18 08:14:38 2026 +0545"
      },
      "message": "fix: remove consumer config after ingress class handoff (#2874)"
    },
    {
      "commit": "43637b8f4aaed9479840af97ff5bef17899aec02",
      "tree": "34d8eaa756e45cf98c2800adc3656e115d04b220",
      "parents": [
        "8157735abd3fbfeb7488c0110c43af0b83859f93"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Fri Sep 18 10:29:19 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 18 08:14:19 2026 +0545"
      },
      "message": "fix: return an error response for unresolved ExtensionRef (#2875)"
    },
    {
      "commit": "8157735abd3fbfeb7488c0110c43af0b83859f93",
      "tree": "3c96a1400ee664a584453a4d0d71278d8a9bd8c9",
      "parents": [
        "f14782d39f1a922241d698319ad67420cd4b2393"
      ],
      "author": {
        "name": "Zeping Bai",
        "email": "bzp2010@apache.org",
        "time": "Thu Sep 17 13:45:26 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 17 13:45:26 2026 +0800"
      },
      "message": "feat: prepare isolate bad resource (#2880)"
    },
    {
      "commit": "f14782d39f1a922241d698319ad67420cd4b2393",
      "tree": "b9282aa53ef9db6050342928d3912e7a9fca4850",
      "parents": [
        "c69d50cf6e69ec7bf138f446277110ba4e8fbea7"
      ],
      "author": {
        "name": "Zeping Bai",
        "email": "bzp2010@apache.org",
        "time": "Mon Sep 14 14:03:48 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 14 14:03:48 2026 +0800"
      },
      "message": "feat: report dp instance unavailable to gateway proxy (#2856)"
    },
    {
      "commit": "c69d50cf6e69ec7bf138f446277110ba4e8fbea7",
      "tree": "0d4df5ba33f66907d696fa3a80bb2b59e6464df7",
      "parents": [
        "cff8979d2b602f95af3e623c0d40bdd08dd1402f"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Fri Sep 11 14:18:09 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 11 14:18:09 2026 +0800"
      },
      "message": "fix: retract route configuration when no parent accepts the route any more (#2858)"
    },
    {
      "commit": "cff8979d2b602f95af3e623c0d40bdd08dd1402f",
      "tree": "49defabe7aac197fce9754de82f148d839696955",
      "parents": [
        "80112024e0df674d900a1cb1da831f405179729a"
      ],
      "author": {
        "name": "Zeping Bai",
        "email": "bzp2010@apache.org",
        "time": "Fri Sep 11 13:42:42 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Sep 11 13:42:42 2026 +0800"
      },
      "message": "refactor: clearly boundaries between provider and ADC client (#2869)"
    },
    {
      "commit": "80112024e0df674d900a1cb1da831f405179729a",
      "tree": "ea3dca8db3012ba526948ded58d706b624ba244c",
      "parents": [
        "b25bae86d5b380a149c658c50a9e0a114849a440"
      ],
      "author": {
        "name": "Zeping Bai",
        "email": "bzp2010@apache.org",
        "time": "Thu Sep 10 14:37:39 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 10 14:37:39 2026 +0800"
      },
      "message": "refactor: let adc client independent of external state (#2865)"
    },
    {
      "commit": "b25bae86d5b380a149c658c50a9e0a114849a440",
      "tree": "72b08e10b19101cec9eeb52b7d54e3fe46d99b10",
      "parents": [
        "0bd613caee91fc52001cc32005a2e08d12975ee7"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Thu Sep 10 14:29:53 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 10 14:29:53 2026 +0800"
      },
      "message": "fix: retract configuration when a referenced ApisixPluginConfig is gone (#2859)"
    },
    {
      "commit": "0bd613caee91fc52001cc32005a2e08d12975ee7",
      "tree": "c56a114de96f6451701cb6ff88a468445f71bb44",
      "parents": [
        "8610842f6f122ccdbd711338596a8d79bcc029fc"
      ],
      "author": {
        "name": "Zeping Bai",
        "email": "bzp2010@apache.org",
        "time": "Thu Sep 10 11:12:53 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 10 11:12:53 2026 +0800"
      },
      "message": "ci: remove e2e for adc-node port (#2868)"
    },
    {
      "commit": "8610842f6f122ccdbd711338596a8d79bcc029fc",
      "tree": "f04eae433faacef44f206fbb4ccddaf185ae488d",
      "parents": [
        "52557e1fe99d7ca5e758f46b0f2bb7ad7c535254"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Wed Sep 09 19:44:29 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 09 19:44:29 2026 +0800"
      },
      "message": "feat: support secretRef in v1alpha1 plugin configuration (#2855)"
    },
    {
      "commit": "52557e1fe99d7ca5e758f46b0f2bb7ad7c535254",
      "tree": "ac08c8e930be0bb6fc2223f6dd513f8c383ad8db",
      "parents": [
        "bdeb96f571af161d9ede0924044f7247ac64b671"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Wed Sep 09 19:43:40 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 09 19:43:40 2026 +0800"
      },
      "message": "fix: pin a route to the scheme its listeners accept (#2864)"
    },
    {
      "commit": "bdeb96f571af161d9ede0924044f7247ac64b671",
      "tree": "776f9662b117382369578b9a499ed0b246ffb1b6",
      "parents": [
        "e8ffcdae3d75d6f8aac9265d2c7d5c7ad62b42b8"
      ],
      "author": {
        "name": "Johannes Engler",
        "email": "johannes.engler@maibornwolff.de",
        "time": "Wed Sep 09 09:37:30 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 09 15:37:30 2026 +0800"
      },
      "message": "fix: delete data plane config when a route leaves a managed Gateway (#2834)"
    },
    {
      "commit": "e8ffcdae3d75d6f8aac9265d2c7d5c7ad62b42b8",
      "tree": "561000c31f6e1c63066ff7f5661905176c611a0c",
      "parents": [
        "c17a585742345953a397ca3568a1df7981b7ca0c"
      ],
      "author": {
        "name": "Zeping Bai",
        "email": "bzp2010@apache.org",
        "time": "Thu Sep 03 17:02:08 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 03 17:02:08 2026 +0800"
      },
      "message": "test: add adc rust variant for e2e (#2852)"
    },
    {
      "commit": "c17a585742345953a397ca3568a1df7981b7ca0c",
      "tree": "b53e56a6b4b28d260ede8de8956aed9d42dbdaf2",
      "parents": [
        "84684e3fbc08e2194202b26fb89d27d6f7311ea3"
      ],
      "author": {
        "name": "Johannes Engler",
        "email": "johannes.engler@maibornwolff.de",
        "time": "Thu Sep 03 06:07:03 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 03 12:07:03 2026 +0800"
      },
      "message": "fix(test): keep one recordingProvider stub so internal/controller builds (#2854)"
    },
    {
      "commit": "84684e3fbc08e2194202b26fb89d27d6f7311ea3",
      "tree": "7023e2cc7f863437292a346d7d0f84a44af99c0f",
      "parents": [
        "2925aa0f717e48f9f6caa8a0690d92d11cf954ff"
      ],
      "author": {
        "name": "Ali Asghar",
        "email": "98263017+alliasgher@users.noreply.github.com",
        "time": "Tue Sep 01 00:48:06 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 01 15:48:06 2026 +0800"
      },
      "message": "fix: stop requeueing ApisixConsumer forever after a successful delete (#2850)"
    },
    {
      "commit": "2925aa0f717e48f9f6caa8a0690d92d11cf954ff",
      "tree": "a28689043c20440a42db3567e6e3c0d075354afe",
      "parents": [
        "f1ad295e4efc312e5fea36b85f90d50f9401c60a"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Mon Aug 31 14:48:00 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Aug 31 12:33:00 2026 +0545"
      },
      "message": "feat: support a CA bundle for the control plane connection (#2826)"
    },
    {
      "commit": "f1ad295e4efc312e5fea36b85f90d50f9401c60a",
      "tree": "b48e4dd3fcadebff4921770af88d8faae5d60377",
      "parents": [
        "d510f6656c5d2289dbb9b4c02c3c3473ff8abb2f"
      ],
      "author": {
        "name": "Mohammad Izzraff Janius",
        "email": "157467092+janiussyafiq@users.noreply.github.com",
        "time": "Wed Aug 26 16:39:13 2026 +0900"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Aug 26 15:39:13 2026 +0800"
      },
      "message": "fix: fall back to publishService for Gateway status addresses (#2846)"
    },
    {
      "commit": "d510f6656c5d2289dbb9b4c02c3c3473ff8abb2f",
      "tree": "57a6ef964baaf9211e8c63882298ef524df1a78a",
      "parents": [
        "c915316549b782fb02e4b7947790c17d5315c750"
      ],
      "author": {
        "name": "Yilia Lin",
        "email": "Yilialin@apache.org",
        "time": "Tue Aug 18 10:17:05 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Aug 18 10:17:05 2026 +0800"
      },
      "message": "docs: clarify Ingress route configuration and deployment architecture (#2848)"
    },
    {
      "commit": "c915316549b782fb02e4b7947790c17d5315c750",
      "tree": "0a77b64b843f810ef81e4c4f7547c64a38659f47",
      "parents": [
        "4d0015c00cdd6f2d0ec315f44f5acc6dffe283e5"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Thu Aug 13 08:28:02 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 13 08:28:02 2026 +0800"
      },
      "message": "chore: v2.2.0 release (#2838)"
    },
    {
      "commit": "4d0015c00cdd6f2d0ec315f44f5acc6dffe283e5",
      "tree": "126117d9207e6ff3e0adc7f57839155f48b80b07",
      "parents": [
        "70e216be8fd9f8d3f809d968575c934b6ac307ae"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Thu Aug 13 07:27:23 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 13 07:27:23 2026 +0800"
      },
      "message": "fix: set the Gateway status reasons Gateway API 1.6 requires and make the conformance report honest (#2843)"
    },
    {
      "commit": "70e216be8fd9f8d3f809d968575c934b6ac307ae",
      "tree": "881f9fcd3be9e6055a7b1aaaa75911a864f6e26c",
      "parents": [
        "6bbf00dd2d89b0f114707b8eb4c9235ffbbde8b9"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Wed Aug 12 18:12:59 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Aug 12 15:57:59 2026 +0545"
      },
      "message": "fix: reject invalid plugin config instead of applying an empty one (#2814)"
    },
    {
      "commit": "6bbf00dd2d89b0f114707b8eb4c9235ffbbde8b9",
      "tree": "3c0c763e9a843d939d7a6e5302b309c91391ff26",
      "parents": [
        "e1ea081c46b2785b29452fadce958777c34d7502"
      ],
      "author": {
        "name": "Nic",
        "email": "qianyong@api7.ai",
        "time": "Wed Aug 12 17:19:22 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Aug 12 17:19:22 2026 +0800"
      },
      "message": "chore(deps): upgrade dependencies flagged by security advisories (#2844)"
    },
    {
      "commit": "e1ea081c46b2785b29452fadce958777c34d7502",
      "tree": "2af9adbd7ada619d58774f8d5ae80f6290e8e6ad",
      "parents": [
        "061b4931dfb63cc1039d6f64a05cffcaa88aa6fc"
      ],
      "author": {
        "name": "Nic",
        "email": "qianyong@api7.ai",
        "time": "Wed Aug 12 17:19:06 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Aug 12 17:19:06 2026 +0800"
      },
      "message": "fix: stop the status e2e tests demanding their old node ports back (#2845)"
    },
    {
      "commit": "061b4931dfb63cc1039d6f64a05cffcaa88aa6fc",
      "tree": "1a3023936192abb498a32aea53d36ef12ab752b3",
      "parents": [
        "85d3551ab6295270168cef2f40f4a4cdfee50cab"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Tue Aug 11 17:08:08 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Aug 11 17:08:08 2026 +0800"
      },
      "message": "fix: make the kustomize manifests deployable and consistent (#2835)"
    },
    {
      "commit": "85d3551ab6295270168cef2f40f4a4cdfee50cab",
      "tree": "fc3f3eac72b205a53b492244dbb48c19a74be420",
      "parents": [
        "93458e991f0c31cdf9594f4df5fcf90d823bfdeb"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Tue Aug 11 10:06:36 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Aug 11 10:06:36 2026 +0800"
      },
      "message": "fix: read L4 routes and ReferenceGrant as v1 instead of the older versions (#2839)"
    },
    {
      "commit": "93458e991f0c31cdf9594f4df5fcf90d823bfdeb",
      "tree": "676fbc2b51fc4ea6afa006548bd78903219896dd",
      "parents": [
        "39325e8f4598c1d45d821fea445e9dff2828c216"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Fri Aug 07 11:56:11 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Aug 07 11:56:11 2026 +0800"
      },
      "message": "fix: normalize hosts and SNIs so uppercase hostnames stay routable (#2837)"
    },
    {
      "commit": "39325e8f4598c1d45d821fea445e9dff2828c216",
      "tree": "99061490f3253aec0ba7a958d3a864ad355cd47d",
      "parents": [
        "be4aaef56d3cf49d621b57cf1aba5afb1d283926"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Thu Aug 06 14:29:40 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 06 14:29:40 2026 +0800"
      },
      "message": "test: fix the broken TCPRoute e2e listener port and de-flake two stream/ingress specs (#2836)"
    },
    {
      "commit": "be4aaef56d3cf49d621b57cf1aba5afb1d283926",
      "tree": "02e0c8ed8476e1805f7a2ba569add139c74ea638",
      "parents": [
        "dc8db3d714d098fde6cd5eec986287b3c9fd1fad"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Mon Aug 03 16:30:36 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Aug 03 16:30:36 2026 +0800"
      },
      "message": "fix: honor TCPRoute/UDPRoute sectionName and listener port for StreamRoute matching (#2818)"
    },
    {
      "commit": "dc8db3d714d098fde6cd5eec986287b3c9fd1fad",
      "tree": "4341ebb92a9d308dfdb105dc1e3b759f8b2c85bd",
      "parents": [
        "a22afa2edd5504e9970f26d5898a825a09108a57"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Mon Aug 03 10:38:11 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Aug 03 08:23:11 2026 +0545"
      },
      "message": "fix: fail loud when enable-csrf is set but csrf-key annotation is missing (#2813)"
    },
    {
      "commit": "a22afa2edd5504e9970f26d5898a825a09108a57",
      "tree": "84f441adf9e622130976cbb9613a07c4ea160c5c",
      "parents": [
        "dad45c50c15152fdc71e875155cad1f039060cdb"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Mon Aug 03 08:45:42 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Aug 03 08:45:42 2026 +0800"
      },
      "message": "feat: allow L4 upstream schemes (tcp/tls/udp) for stream backends (#2830)"
    },
    {
      "commit": "dad45c50c15152fdc71e875155cad1f039060cdb",
      "tree": "9e4a0dd4257ab8df0d833441cf03237de79c1fe3",
      "parents": [
        "058cb0d291ec23dcf6fbd1a79f7fa3fc7ac3021e"
      ],
      "author": {
        "name": "xiaocanglan1",
        "email": "73163371+xiaocanglan1@users.noreply.github.com",
        "time": "Thu Jul 30 11:00:44 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 30 11:00:44 2026 +0800"
      },
      "message": "fix: preserve ApisixUpstream health check type (#2828)"
    },
    {
      "commit": "058cb0d291ec23dcf6fbd1a79f7fa3fc7ac3021e",
      "tree": "f6f5503a8101341c1d6951217ac267b2d9b25e32",
      "parents": [
        "549f7f2918ec15edf66ee665ccba8864e94ecbce"
      ],
      "author": {
        "name": "Arunesh Dwivedi",
        "email": "arunesh.devops@gmail.com",
        "time": "Thu Jul 30 08:29:36 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 30 10:59:36 2026 +0800"
      },
      "message": "fix(httproute): read appProtocol for ExternalName services (#2798)"
    },
    {
      "commit": "549f7f2918ec15edf66ee665ccba8864e94ecbce",
      "tree": "de29737562001faac5be88515f5f65d827161198",
      "parents": [
        "be19f90a90c82073f29afbd52bfcb9e86c728a78"
      ],
      "author": {
        "name": "Episkey",
        "email": "70593980+Episkey-G@users.noreply.github.com",
        "time": "Wed Jul 29 14:12:30 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 29 14:12:30 2026 +0800"
      },
      "message": "docs: fix incorrect unit test command in developer guide (#2797)"
    },
    {
      "commit": "be19f90a90c82073f29afbd52bfcb9e86c728a78",
      "tree": "01ff0bd82bc070213b47631f0ebe815d3b28c365",
      "parents": [
        "a1c2ec172b75a10d5754b05c9b4700cd5360ca87"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Wed Jul 29 11:49:18 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 29 09:34:18 2026 +0545"
      },
      "message": "fix: suppress cross-namespace Secret existence oracle in Consumer webhook (#2806)"
    },
    {
      "commit": "a1c2ec172b75a10d5754b05c9b4700cd5360ca87",
      "tree": "6e1006598bf9941b5cc34a44ec31921fa16c00ac",
      "parents": [
        "2a8d507e436fa365420aafca8847597c612ec3ec"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Tue Jul 28 14:48:30 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 28 14:48:30 2026 +0800"
      },
      "message": "fix: never treat an unreachable API server as a missing API resource (#2817)"
    },
    {
      "commit": "2a8d507e436fa365420aafca8847597c612ec3ec",
      "tree": "0ce89656ba89bd9f32e2c65bd51a9a8110ca467d",
      "parents": [
        "0207b159383f83ac0b386680b604efe7ec7c1e96"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Tue Jul 28 14:40:41 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 28 14:40:41 2026 +0800"
      },
      "message": "feat: support Gateway API 1.6.0 (#2804)"
    },
    {
      "commit": "0207b159383f83ac0b386680b604efe7ec7c1e96",
      "tree": "46cb0f5301553bc45c8c0f6312904b72a9af8d5c",
      "parents": [
        "ac4e61951d36200634a7d49ee3d04685476a63d6"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Mon Jul 27 12:15:19 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 27 10:00:19 2026 +0545"
      },
      "message": "fix: accept whitespace-separated hmac-auth signed_headers and document the format (#2824)"
    },
    {
      "commit": "ac4e61951d36200634a7d49ee3d04685476a63d6",
      "tree": "f4f4e6e72e89b9065b4d0b19cc3fc42814920dcb",
      "parents": [
        "51ddfef530d0471d13b6d3ac55b898d9b3e0ccbd"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Fri Jul 24 16:40:35 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 24 14:25:35 2026 +0545"
      },
      "message": "fix: allow webhook NetworkPolicy traffic on pod port 9443 (#2812)"
    },
    {
      "commit": "51ddfef530d0471d13b6d3ac55b898d9b3e0ccbd",
      "tree": "38bc87542d60ae6dd1b8024ae8365e2e1e11fa0b",
      "parents": [
        "843879ca735f5ac4144518aae82c47d4bd0128ce"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Fri Jul 24 16:38:43 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 24 14:23:43 2026 +0545"
      },
      "message": "fix: parse hmac-auth signed_headers from Secret as a header list (#2809)"
    },
    {
      "commit": "843879ca735f5ac4144518aae82c47d4bd0128ce",
      "tree": "6684d5660138b3f233323a07d5e258ca6e794806",
      "parents": [
        "1582e3de091b7738ed121673501330315a8da1a6"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Fri Jul 24 00:47:29 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 23 22:32:29 2026 +0545"
      },
      "message": "fix: enforce ReferenceGrant on cross-namespace Consumer SecretRef (#2805)"
    },
    {
      "commit": "1582e3de091b7738ed121673501330315a8da1a6",
      "tree": "7ec1adec1bf9a554a739a9b9c7bea9bac126ca44",
      "parents": [
        "ce10a384d5bcff328d78ebc16010015378292104"
      ],
      "author": {
        "name": "Shreemaan Abhishek",
        "email": "shreemaan.abhishek@gmail.com",
        "time": "Fri Jul 24 00:46:45 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 23 22:31:45 2026 +0545"
      },
      "message": "fix: redact credentials and AdminKey from controller logs (#2808)\n\n\\"
    },
    {
      "commit": "ce10a384d5bcff328d78ebc16010015378292104",
      "tree": "baf6f2cf14f9aedb3597f1a65a77955ce9ab6c98",
      "parents": [
        "08f8508c0638e315874bfaa6c77be16691bd0d84"
      ],
      "author": {
        "name": "Yilia Lin",
        "email": "114121331+Yilialinn@users.noreply.github.com",
        "time": "Thu Jul 23 16:23:24 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 23 16:23:24 2026 +0800"
      },
      "message": "docs: improve Kubernetes Gateway API page SEO (#2823)"
    },
    {
      "commit": "08f8508c0638e315874bfaa6c77be16691bd0d84",
      "tree": "3a38573e872616f53bc1981e74751b780de46d4c",
      "parents": [
        "38d2ceffb41a546ea8f3937bb61b14f7698c0d70"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Thu Jul 23 11:57:51 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 23 11:57:51 2026 +0800"
      },
      "message": "fix: cap condition message to Kubernetes 32768-byte limit (#2816)"
    },
    {
      "commit": "38d2ceffb41a546ea8f3937bb61b14f7698c0d70",
      "tree": "d10f59f78d6c1837f6be7b15c9673870317c4823",
      "parents": [
        "6fc49d340cf399cdb3e2b300647b68c7da2bfaa4"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Thu Jul 23 10:45:55 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 23 10:45:55 2026 +0800"
      },
      "message": "fix: trim whitespace in comma-separated annotation values (#2815)"
    },
    {
      "commit": "6fc49d340cf399cdb3e2b300647b68c7da2bfaa4",
      "tree": "06fc297b4d250904b705e03b79899f37a822295c",
      "parents": [
        "611487cd2db0996acc59f80c41817f50e2ea8364"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Sat Jul 18 00:30:00 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jul 18 00:30:00 2026 +0800"
      },
      "message": "fix: rebuild the ADC baseline on leader acquisition (#2785)"
    },
    {
      "commit": "611487cd2db0996acc59f80c41817f50e2ea8364",
      "tree": "64e3ddd72c6d6215a166728c8200bbad73b6a0ea",
      "parents": [
        "d029b96779ec0cbd7f51a633cf02a624ed76999a"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Wed Jul 08 14:20:52 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 08 14:20:52 2026 +0800"
      },
      "message": "test(e2e): prewarm environment pool to hide per-spec deploy latency (#2790)"
    },
    {
      "commit": "d029b96779ec0cbd7f51a633cf02a624ed76999a",
      "tree": "86522c4621c534d35f6f096baf64584cec4e4731",
      "parents": [
        "db30aa709f5b3a29b1a1aeb2fec1364158c3a134"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Tue Jun 23 09:01:05 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 23 09:01:05 2026 +0800"
      },
      "message": "fix: honor BackendTrafficPolicy targetRefs.sectionName for Service ports (#2796)"
    },
    {
      "commit": "db30aa709f5b3a29b1a1aeb2fec1364158c3a134",
      "tree": "3e4d2f7077a27216454c254c739a5263ff76535e",
      "parents": [
        "0fe60da5c06659c70eb85c4607da577f8f822975"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Thu Jun 18 08:52:30 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 18 08:52:30 2026 +0800"
      },
      "message": "feat: support downstream mTLS via Gateway API frontendValidation (#2792)"
    },
    {
      "commit": "0fe60da5c06659c70eb85c4607da577f8f822975",
      "tree": "1923b8bc6c742869066ba626ab6ac766cf26017f",
      "parents": [
        "11635a1e1fc76366984713177a92980d605e53f8"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Wed Jun 17 06:40:13 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 17 06:40:13 2026 +0800"
      },
      "message": "test(e2e): remove fixed-sleep flakiness across e2e specs (#2788)"
    },
    {
      "commit": "11635a1e1fc76366984713177a92980d605e53f8",
      "tree": "10446382c7dc95693659e31f9d80090c84571b5d",
      "parents": [
        "44565558a2f53da02bf5b75d013ae6abbd50d79f"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Tue Jun 16 10:44:02 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 16 10:44:02 2026 +0800"
      },
      "message": "feat: add L4RoutePolicy for attaching stream plugins to L4 routes (#2791)"
    },
    {
      "commit": "44565558a2f53da02bf5b75d013ae6abbd50d79f",
      "tree": "6bd31eef2f7f1d26f3c93cf00c2931824d075fb3",
      "parents": [
        "aaa89c22e828c02bedf94c7cc096252376c6b644"
      ],
      "author": {
        "name": "Rushen Wang",
        "email": "45029442+dovics@users.noreply.github.com",
        "time": "Mon Jun 15 15:05:45 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 15 15:05:45 2026 +0800"
      },
      "message": "fix: Ingress with ImplementationSpecific path panics when annotations are empty (#2780)\n\nSigned-off-by: wangrushen \u003cwangrushen369@gmail.com\u003e"
    },
    {
      "commit": "aaa89c22e828c02bedf94c7cc096252376c6b644",
      "tree": "cbef3bc30ff829768a7e80e15ad8a9c880783b15",
      "parents": [
        "eff19eb280c323250550b0633c11a3583ec6e9e6"
      ],
      "author": {
        "name": "Traky Deng",
        "email": "trakydeng@gmail.com",
        "time": "Thu Jun 11 15:23:43 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 11 15:23:43 2026 +0800"
      },
      "message": "docs: update listener port info per 2.1.0 updates (#2786)"
    },
    {
      "commit": "eff19eb280c323250550b0633c11a3583ec6e9e6",
      "tree": "a7c5f3a38f1f85e94d658bf2063934d23a05fded",
      "parents": [
        "028c1a95c09805341bc549d94933528c42d9865b"
      ],
      "author": {
        "name": "Traky Deng",
        "email": "trakydeng@gmail.com",
        "time": "Tue Jun 02 14:58:32 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 02 14:58:32 2026 +0800"
      },
      "message": "docs: update docs for 2.1.0 ingress controller release (#2776)"
    },
    {
      "commit": "028c1a95c09805341bc549d94933528c42d9865b",
      "tree": "f4352eb39a292fae5dd6e523bb5b8536f7e05e47",
      "parents": [
        "e6f33193ed77755868d36edb51bdffb939bebea7"
      ],
      "author": {
        "name": "Jarek Potiuk",
        "email": "jarek@potiuk.com",
        "time": "Sun May 31 05:49:03 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun May 31 11:49:03 2026 +0800"
      },
      "message": "Add AGENTS.md + SECURITY.md pointing at project security threat model (#2775)"
    },
    {
      "commit": "e6f33193ed77755868d36edb51bdffb939bebea7",
      "tree": "6ab0d8488eb8f2a152feb54286d2302cd231d062",
      "parents": [
        "f4a8dd1223573a5b72e1c7b65b37c13b49d98042"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Fri May 29 15:20:08 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 29 15:20:08 2026 +0800"
      },
      "message": "ci: fix workflow failures by upgrading actions to comply with Apache allowlist (#2772)"
    },
    {
      "commit": "f4a8dd1223573a5b72e1c7b65b37c13b49d98042",
      "tree": "50995183da1c575ae61c443e2553cb102742b82a",
      "parents": [
        "33d376f16453e33b8d269f232265c1199833a02d"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Wed May 27 13:12:02 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 27 13:12:02 2026 +0800"
      },
      "message": "chore: v2.1.0 release (#2771)"
    },
    {
      "commit": "33d376f16453e33b8d269f232265c1199833a02d",
      "tree": "e280d9424a9a3297566f20be3bdfdfe8c1970730",
      "parents": [
        "e4c6e2f18cc013b953149c474f0dae622f0e4f0a"
      ],
      "author": {
        "name": "Johannes Engler",
        "email": "johannes.engler@maibornwolff.de",
        "time": "Wed May 27 02:25:29 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 27 08:25:29 2026 +0800"
      },
      "message": "feat: support port-based routing for Gateway API routes (#2703)"
    },
    {
      "commit": "e4c6e2f18cc013b953149c474f0dae622f0e4f0a",
      "tree": "7047a062d4582010569a6a2285963acbcc9a1479",
      "parents": [
        "7d8aa4ea754e70a568c14f837cbd444a115579ed"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Tue May 26 17:27:54 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 26 17:27:54 2026 +0800"
      },
      "message": "fix: set uris to [\"/*\"] when HTTPRoute path type is RegularExpression (#2770)"
    },
    {
      "commit": "7d8aa4ea754e70a568c14f837cbd444a115579ed",
      "tree": "52938cafb00ae80cac8b17403877e88e765f110b",
      "parents": [
        "e461eb2e330c44d831b96c59d2c4093653a2b5b8"
      ],
      "author": {
        "name": "hyarkoni-DN",
        "email": "hyarkoni@drivenets.com",
        "time": "Tue May 26 08:42:03 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 26 13:42:03 2026 +0800"
      },
      "message": "fix: update observedGeneration on Gateway-API route status conditions (#2768)\n\nSigned-off-by: hyarkoni-DN \u003chyarkoni@drivenets.com\u003e"
    },
    {
      "commit": "e461eb2e330c44d831b96c59d2c4093653a2b5b8",
      "tree": "588a89922192932427efd76986c83f66cbe45eb6",
      "parents": [
        "c99b26d9e0eb36dba5cdeea2354033e0aa13b0db"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Mon May 18 09:01:24 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon May 18 09:01:24 2026 +0800"
      },
      "message": "feat: support upstream health checks in BackendTrafficPolicy (#2763)"
    },
    {
      "commit": "c99b26d9e0eb36dba5cdeea2354033e0aa13b0db",
      "tree": "9eca9af7a4fc16e5126b85a2d6e25672177a4fb8",
      "parents": [
        "336f427059cae1f9eaf62895da204a89a22562f3"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Wed May 13 14:17:48 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 13 14:17:48 2026 +0800"
      },
      "message": "feat: add Body scope to ApisixRoute match expressions for request body matching (#2762)"
    },
    {
      "commit": "336f427059cae1f9eaf62895da204a89a22562f3",
      "tree": "03a57fdadc00f409a56bc7f04b02fba1fbb4d8fc",
      "parents": [
        "b0fa3e5459e26b98a2c409a34d70af438ab79353"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Wed May 13 14:16:23 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 13 14:16:23 2026 +0800"
      },
      "message": "feat: support plugins field in ApisixConsumer (#2761)"
    },
    {
      "commit": "b0fa3e5459e26b98a2c409a34d70af438ab79353",
      "tree": "c522c1c8d5b391074aa83109e0fa2ff1dddf07ed",
      "parents": [
        "5c236d07a9c99741f72ce33e944f84f3a0577dda"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Tue May 12 11:48:59 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 12 11:48:59 2026 +0800"
      },
      "message": "feat: support consumer labels from metadata labels (#2760)"
    },
    {
      "commit": "5c236d07a9c99741f72ce33e944f84f3a0577dda",
      "tree": "fad2eb96018a909dcf99ca9841f50f893b612530",
      "parents": [
        "e89f0f24ec4f6086b4539feb12a786eca6e079f3"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Mon May 11 08:45:42 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon May 11 08:45:42 2026 +0800"
      },
      "message": "feat: add ADC-backed admission validation for APISIX CRDs (#2758)"
    },
    {
      "commit": "e89f0f24ec4f6086b4539feb12a786eca6e079f3",
      "tree": "038b154c4604e909c0a78554ebfbee6fe7b81dab",
      "parents": [
        "ff8cd42953b6e3af2b05fd2241c58a09740970b3"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Sat May 09 12:45:32 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat May 09 12:45:32 2026 +0800"
      },
      "message": "fix: relax jwtAuth private_key requirement and add CEL validation (#2759)"
    },
    {
      "commit": "ff8cd42953b6e3af2b05fd2241c58a09740970b3",
      "tree": "fab7f38d43e7d45469cad5f49620349809b10237",
      "parents": [
        "19e40c9426ee42e8f5c179b6f42cb49baf1e45de"
      ],
      "author": {
        "name": "yangkaa",
        "email": "30614084+yangkaa@users.noreply.github.com",
        "time": "Fri May 08 09:40:45 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 08 09:40:45 2026 +0800"
      },
      "message": "fix: exclude status-only API v2 resources from readiness gating (#2745)"
    },
    {
      "commit": "19e40c9426ee42e8f5c179b6f42cb49baf1e45de",
      "tree": "efe862bf67d2948c9d23a138217e890eeda3591e",
      "parents": [
        "878e5015bda978cb2f4231511c835420d8769a2f"
      ],
      "author": {
        "name": "AlinsRan",
        "email": "alinsran@apache.org",
        "time": "Thu Apr 30 17:36:48 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 30 17:36:48 2026 +0800"
      },
      "message": "fix: use https_verify_certificate for standalone health checks (#2755)\n\nCo-authored-by: Copilot \u003c223556219+Copilot@users.noreply.github.com\u003e"
    },
    {
      "commit": "878e5015bda978cb2f4231511c835420d8769a2f",
      "tree": "2633644579baf2ffa4f27d15aeaf7e9d26b537b6",
      "parents": [
        "0d225ad490e80658a379e31ac88b08e70fcf141c"
      ],
      "author": {
        "name": "Hemanth Chebrolu",
        "email": "40513287+hemanthjk-c@users.noreply.github.com",
        "time": "Mon Apr 13 15:49:14 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Apr 13 18:19:14 2026 +0800"
      },
      "message": "fix: update publishService/statusAdress logic in gateway and ingress controller files (#2730) (#2732)"
    },
    {
      "commit": "0d225ad490e80658a379e31ac88b08e70fcf141c",
      "tree": "422c1cc4ddfab5952baf7cf0292cd30a1a7c6650",
      "parents": [
        "f34a259fec42e9aa07edfe7dabf82a3ae45a01a6"
      ],
      "author": {
        "name": "Nic",
        "email": "qianyong@api7.ai",
        "time": "Mon Apr 13 16:32:22 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Apr 13 16:32:22 2026 +0800"
      },
      "message": "fix: remove redundant route.Hosts to prevent false diffs in ADC sync (#2743)"
    },
    {
      "commit": "f34a259fec42e9aa07edfe7dabf82a3ae45a01a6",
      "tree": "1dcd88009c4305a32b76f86739625c15ebc106f3",
      "parents": [
        "c48e9b3fb8d269b04b440c6fc5ed6880c05456f3"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Thu Mar 12 15:29:12 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Mar 12 15:29:12 2026 +0800"
      },
      "message": "chore(deps): bump go.opentelemetry.io/otel/sdk from 1.34.0 to 1.40.0 (#2728)"
    },
    {
      "commit": "c48e9b3fb8d269b04b440c6fc5ed6880c05456f3",
      "tree": "46dac2d63fc719d32d2f1d1c7e23ea86ae0945c8",
      "parents": [
        "2b7b24780c51932e5fec4c630e9200b2a8cbf955"
      ],
      "author": {
        "name": "Timmy",
        "email": "zhu327@gmail.com",
        "time": "Thu Jan 22 09:38:48 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jan 22 09:38:48 2026 +0800"
      },
      "message": "fix: ensure upstream scheme is set only if not already defined in HTTP route translation (#2691)\n\n"
    },
    {
      "commit": "2b7b24780c51932e5fec4c630e9200b2a8cbf955",
      "tree": "ce41d62eae934a220198ce74fd529dd709546111",
      "parents": [
        "3bceaed64e7d7f01cd840bc6ab0273d5ebdb86ae"
      ],
      "author": {
        "name": "Traky Deng",
        "email": "trakydeng@gmail.com",
        "time": "Fri Jan 16 15:31:42 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jan 16 15:31:42 2026 +0800"
      },
      "message": "docs: add `apisix.apache.org/parameters-namespace` to annotation doc (#2702)\n\n"
    },
    {
      "commit": "3bceaed64e7d7f01cd840bc6ab0273d5ebdb86ae",
      "tree": "5ae1784653f61f366182010576c6e6b0d6aea613",
      "parents": [
        "b52c26c8519389600c968c497533c6a6cf9d485d"
      ],
      "author": {
        "name": "Ashing Zheng",
        "email": "axingfly@gmail.com",
        "time": "Mon Jan 12 16:19:57 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jan 12 16:19:57 2026 +0800"
      },
      "message": "chore: v2.0.1 release (#2700)\n\nSigned-off-by: Ashing Zheng \u003caxingfly@gmail.com\u003e"
    },
    {
      "commit": "b52c26c8519389600c968c497533c6a6cf9d485d",
      "tree": "993145a33a6eb4964e485bc6bd4d7ecf992d9955",
      "parents": [
        "d23f7bf93b5a1ff50afa83478894d202a57f7f60"
      ],
      "author": {
        "name": "Ashing Zheng",
        "email": "axingfly@gmail.com",
        "time": "Mon Jan 12 14:26:13 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jan 12 14:26:13 2026 +0800"
      },
      "message": "feat: support custom gatewayproxy namespace for ingressclass (#2701)\n\nSigned-off-by: Ashing Zheng \u003caxingfly@gmail.com\u003e"
    },
    {
      "commit": "d23f7bf93b5a1ff50afa83478894d202a57f7f60",
      "tree": "a6bf034a3e66ba803fe25e5e9f306d2891e4dfd6",
      "parents": [
        "80585882b8460619bd123f85efa61d0465b1b218"
      ],
      "author": {
        "name": "Ashing Zheng",
        "email": "axingfly@gmail.com",
        "time": "Fri Jan 09 22:44:45 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jan 09 22:44:45 2026 +0800"
      },
      "message": "chore: update deps (#2698)\n\nSigned-off-by: Ashing Zheng \u003caxingfly@gmail.com\u003e"
    },
    {
      "commit": "80585882b8460619bd123f85efa61d0465b1b218",
      "tree": "c99ee1eeccc352c93fe88d0ef3ea4d226c65915a",
      "parents": [
        "a979e253ce16c53539dc4d6d6386db8ea87a78b2"
      ],
      "author": {
        "name": "Ashing Zheng",
        "email": "axingfly@gmail.com",
        "time": "Thu Jan 08 18:21:29 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jan 08 18:21:29 2026 +0800"
      },
      "message": "fix: modify upstream name generation method (#2694)\n\nSigned-off-by: Ashing Zheng \u003caxingfly@gmail.com\u003e"
    },
    {
      "commit": "a979e253ce16c53539dc4d6d6386db8ea87a78b2",
      "tree": "4c0a216b009591b58717c7af91d6590cfbf10521",
      "parents": [
        "b274316e75e2e9bfb21ebde30a9ef61746fb9639"
      ],
      "author": {
        "name": "Ashing Zheng",
        "email": "axingfly@gmail.com",
        "time": "Thu Jan 08 11:04:28 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jan 08 11:04:28 2026 +0800"
      },
      "message": "fix: adjust apisix standalone mode adc sync result (#2697)\n\nSigned-off-by: Ashing Zheng \u003caxingfly@gmail.com\u003e"
    },
    {
      "commit": "b274316e75e2e9bfb21ebde30a9ef61746fb9639",
      "tree": "038cb18f76719a76004b60dbc46fba7e92a97d18",
      "parents": [
        "01fa72f9f45ec702579803ea499dd63e07300e30"
      ],
      "author": {
        "name": "Ashing Zheng",
        "email": "axingfly@gmail.com",
        "time": "Wed Jan 07 11:34:34 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jan 07 11:34:34 2026 +0800"
      },
      "message": "chore: log when kubernetes cluster version does not meet minimum requirement (#2693)\n\nSigned-off-by: Ashing Zheng \u003caxingfly@gmail.com\u003e"
    },
    {
      "commit": "01fa72f9f45ec702579803ea499dd63e07300e30",
      "tree": "7f091d773cd8d6f34f1eebe24813b8800e154dc6",
      "parents": [
        "68c072ea3825b6177abc5ecf506e2844a6acf4cc"
      ],
      "author": {
        "name": "Traky Deng",
        "email": "trakydeng@gmail.com",
        "time": "Tue Dec 23 18:05:00 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Dec 23 18:05:00 2025 +0800"
      },
      "message": "docs: update k8s cluster version in README (#2688)\n\n"
    },
    {
      "commit": "68c072ea3825b6177abc5ecf506e2844a6acf4cc",
      "tree": "8c77096634b44fecf2baae63a0dc80d4254e4e51",
      "parents": [
        "dcf3b593333e2b326a5ab76272a0dee2ac2e6b48"
      ],
      "author": {
        "name": "Traky Deng",
        "email": "trakydeng@gmail.com",
        "time": "Tue Dec 23 15:48:00 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Dec 23 15:48:00 2025 +0800"
      },
      "message": "docs: update plugin metadata APISIX CRD example (#2687)\n\n"
    },
    {
      "commit": "dcf3b593333e2b326a5ab76272a0dee2ac2e6b48",
      "tree": "0c57662071662a1612923abf70c9e250195792f1",
      "parents": [
        "2d07436d357293b7b2fd4e08ca2a466c0e8509b7"
      ],
      "author": {
        "name": "Zeping Bai",
        "email": "bzp2010@apache.org",
        "time": "Fri Dec 19 11:48:54 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Dec 19 11:48:54 2025 +0800"
      },
      "message": "docs: mismatched namespace example of gatewayproxy (#2682)\n\n"
    }
  ],
  "next": "2d07436d357293b7b2fd4e08ca2a466c0e8509b7"
}
