)]}'
{
  "log": [
    {
      "commit": "73b580d3c07c74904d2d72ce3dc2b3a3aee44d2a",
      "tree": "319cfc8396c3079d22fb745f628cfcbfac653741",
      "parents": [
        "fb454de3cb21d5dae7a281a7aae492d5bbb26ebc"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Apr 27 19:04:16 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Apr 27 19:04:16 2026 +0800"
      },
      "message": "chore(deps): bump com.sun.mail:jakarta.mail from 2.0.1 to 2.0.2 (#6329)\n\nBumps com.sun.mail:jakarta.mail from 2.0.1 to 2.0.2.\n\n---\nupdated-dependencies:\n- dependency-name: com.sun.mail:jakarta.mail\n  dependency-version: 2.0.2\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "fb454de3cb21d5dae7a281a7aae492d5bbb26ebc",
      "tree": "d7888f2b2e6d1890834b9024b5961d89c75c9ee9",
      "parents": [
        "e2c21ed11433e774fa341dd4a52ec369f9cdf98d"
      ],
      "author": {
        "name": "zhaoguhong",
        "email": "zhaobaymax@163.com",
        "time": "Fri Apr 24 22:57:27 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Apr 24 22:57:27 2026 +0800"
      },
      "message": "Fix websocket client spec builder reuse in plugin config (#6330)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "e2c21ed11433e774fa341dd4a52ec369f9cdf98d",
      "tree": "388f9cd032f1983f6f4c6928c9e259c640b8428b",
      "parents": [
        "4f346c577f79cf2391f14b46c7384250df9c2056"
      ],
      "author": {
        "name": "Oneday2333",
        "email": "wy471x@gmail.com",
        "time": "Fri Apr 24 14:42:07 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Apr 24 14:42:07 2026 +0800"
      },
      "message": "test(task#5161): improve test coverage for admin. (#6328)\n\n* test(admin):improve test case coverage for DashboardProperties.\n\n* test(admin):improve test case coverage for SuperAdminPasswordSafeAdvice.\n\n* test(admin):improve test case coverage for exception classes.\n\n* test(admin):improve test case coverage for exception classes.\n\n* test(admin):improve test case coverage for exception classes.\n\n* test(admin):improve test case coverage for utils classes.\n\n* test(admin):improve test case coverage under package org.apache.shenyu.admin.listener.\n\n* test(admin):improve test case coverage under package org.apache.shenyu.admin.disruptor.\n\n* test(admin):improve test case coverage for utils classes.\n\n* test(admin):improve test case coverage in package org.apache.shenyu.admin.service.\n\n* test(admin):improve test case coverage in package org.apache.shenyu.admin.service.\n\n* test(admin):improve test case coverage in package org.apache.shenyu.admin.service."
    },
    {
      "commit": "4f346c577f79cf2391f14b46c7384250df9c2056",
      "tree": "32d16272756292b6543b69d0a2c3c2efc85642f4",
      "parents": [
        "a19cb16ff67afaa58ed078390cd621be1c682229"
      ],
      "author": {
        "name": "Oneday2333",
        "email": "wy471x@gmail.com",
        "time": "Fri Apr 24 11:50:37 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Apr 24 11:50:37 2026 +0800"
      },
      "message": "test(task#5161): improve test coverage for sync. (#6333)\n\n* test(sync):improve test case coverage for ApolloDataService and PolarisSyncDataService classes.\n\n* test(sync):improve test case coverage for ApolloDataService and PolarisSyncDataService classes."
    },
    {
      "commit": "a19cb16ff67afaa58ed078390cd621be1c682229",
      "tree": "005f102bd8bbfbef34130c5f229fc4eba1e3cc24",
      "parents": [
        "31f0a4d8a7e2ae99beafcb2523e67419ac11b81a"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Fri Apr 24 09:28:06 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Apr 24 09:28:06 2026 +0800"
      },
      "message": "chore(deps): bump org.bouncycastle:bcprov-jdk18on from 1.78 to 1.84 (#6331)\n\nBumps [org.bouncycastle:bcprov-jdk18on](https://github.com/bcgit/bc-java) from 1.78 to 1.84.\n- [Changelog](https://github.com/bcgit/bc-java/blob/main/docs/releasenotes.html)\n- [Commits](https://github.com/bcgit/bc-java/commits)\n\n---\nupdated-dependencies:\n- dependency-name: org.bouncycastle:bcprov-jdk18on\n  dependency-version: \u00271.84\u0027\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "31f0a4d8a7e2ae99beafcb2523e67419ac11b81a",
      "tree": "e614c52ec9408be574ba8d4965b2537ac0d07c4f",
      "parents": [
        "e6298fab1054c4ddff79ed61c5ffed13956a924c"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Wed Apr 15 19:39:54 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 15 19:39:54 2026 +0800"
      },
      "message": "Stop exposing login AES secrets to anonymous callers (#6323)\n\n* goalx: snapshot before shenyu-analysis\n\n* Stop exposing login AES secrets to anonymous callers\n\nThe login page was fetching /platform/secretInfo anonymously and receiving\nthe long-lived AES key material used for password encryption. This\nchange sanitizes the endpoint output so no real key/IV is returned and\nadds a server-side fallback to accept plain-text passwords when the\nclient no longer encrypts before login.\n\nConstraint: Preserve compatibility with the existing bundled login page without rebuilding the frontend assets\nRejected: Remove the endpoint or require auth only | would leave the current login bundle unable to encrypt and cause login failures without a backend fallback\nConfidence: medium\nScope-risk: moderate\nReversibility: clean\nDirective: Treat any future login bootstrap material as public-only data; never return reusable symmetric secrets to the client\nTested: mvn -pl shenyu-admin -Dtest\u003dSecretServiceTest,DashboardUserServiceTest,PlatformControllerTest test\nNot-tested: End-to-end browser login flow against a running admin instance and non-TLS deployment behavior\n\n* Refine login secret exposure fix after review\n\nThis follow-up removes an unused constructor dependency, fixes the\nsecret payload encoding charset explicitly, and narrows AES decrypt\nattempts to inputs that look like ciphertext so normal plain-text login\nfallback no longer produces avoidable decrypt failures.\n\nConstraint: Maintain compatibility with the current login bundle while reducing operational noise from the fallback path\nConfidence: high\nScope-risk: moderate\nReversibility: clean\nDirective: Avoid using exception-driven control flow for common login paths when ciphertext can be identified up front\nTested: mvn -pl shenyu-admin -Dtest\u003dSecretServiceTest,DashboardUserServiceTest,PlatformControllerTest test\nNot-tested: End-to-end browser login against a running admin instance\n\n* Reduce login fallback log noise after review\n\nThis follow-up removes the exception-driven decrypt path from normal\nplain-text login fallback and switches secret bootstrap encoding to an\nexplicit UTF-8 byte conversion while keeping the sanitized response.\n\nConstraint: Preserve compatibility with the current bundled login page while avoiding production error-log spam on valid fallback flows\nConfidence: high\nScope-risk: narrow\nReversibility: clean\nDirective: Do not route expected login fallback behavior through utilities that log hard failures by default\nTested: mvn -pl shenyu-admin -Dtest\u003dSecretServiceTest,DashboardUserServiceTest,PlatformControllerTest test\nNot-tested: End-to-end browser login against a running admin instance\n\n* Replace login secret magic values with named constants\n\nThis follow-up names the AES block size and the sanitized secret\nplaceholder in production code, and replaces repeated literal key/iv\nand credential strings in the related tests with explicit constants.\n\nConstraint: Keep the cleanup local to the active login-secret fix to avoid unrelated churn across other PR branches\nConfidence: high\nScope-risk: narrow\nReversibility: clean\nDirective: Prefer named constants for repeated protocol/security values even in tests when they carry semantic meaning\nTested: mvn -pl shenyu-admin -Dtest\u003dSecretServiceTest,DashboardUserServiceTest,PlatformControllerTest test\nNot-tested: Full shenyu-admin test suite\n\n* Refine login secret fixes after latest review\n\nThis follow-up removes the fully qualified SecretProperties usage in\nSecretServiceImpl and factors the login password normalization into a\nnamed helper so the plain-text fallback path reads clearly in the main\nlogin flow.\n\nConstraint: Keep the update local to the existing login-secret fix without changing the external API shape\nConfidence: high\nScope-risk: narrow\nReversibility: clean\nDirective: Keep security-sensitive fallback logic explicit and readable; avoid hiding behavior in dense Optional chains\nTested: mvn -pl shenyu-admin -Dtest\u003dSecretServiceTest,DashboardUserServiceTest,PlatformControllerTest test\nNot-tested: End-to-end browser login against a running admin instance"
    },
    {
      "commit": "e6298fab1054c4ddff79ed61c5ffed13956a924c",
      "tree": "edea78040cda356c891eaa45f15b94cb4cf4ac5d",
      "parents": [
        "33c79d19a2613fe1b64998c593f117d3cede3cbb"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Apr 15 13:26:15 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 15 13:26:15 2026 +0800"
      },
      "message": "chore(deps): bump org.apache.kafka:kafka-clients from 3.9.1 to 3.9.2 (#6324)\n\nBumps org.apache.kafka:kafka-clients from 3.9.1 to 3.9.2.\n\n---\nupdated-dependencies:\n- dependency-name: org.apache.kafka:kafka-clients\n  dependency-version: 3.9.2\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "33c79d19a2613fe1b64998c593f117d3cede3cbb",
      "tree": "c89889a953795a18f22e9e9af119eadea310b4e9",
      "parents": [
        "f258aecad7328d7e0328f0c0d0f0a4254fcf66c6"
      ],
      "author": {
        "name": "L",
        "email": "54098507+2823602869@users.noreply.github.com",
        "time": "Wed Apr 15 09:16:13 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 15 09:16:13 2026 +0800"
      },
      "message": "Ci update cache (#6325)\n\n* ci: optimize CI workflows with cache and concurrency\n\n* add github action cache speed ​​up ci exec\n\n---------\n\nCo-authored-by: moremind \u003chefengen@apache.org\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "f258aecad7328d7e0328f0c0d0f0a4254fcf66c6",
      "tree": "e915c54b041fb586d4e00d14405fdc78a04ba162",
      "parents": [
        "0e1cc3cb28b1996594b3a0ea27ce0452209bc58c"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Tue Apr 14 23:39:30 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 14 23:39:30 2026 +0800"
      },
      "message": "Fix missing RBAC on selector, rule, and data-permission endpoints (#6319)"
    },
    {
      "commit": "0e1cc3cb28b1996594b3a0ea27ce0452209bc58c",
      "tree": "fcc7219a7caa87e4fec7811e2c6b6a691a36617f",
      "parents": [
        "aceaf5b2aa1aff229f557c387e6aefbf46666380"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Tue Apr 14 22:15:43 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 14 22:15:43 2026 +0800"
      },
      "message": "Block redirect-based SSRF bypass in Swagger imports (#6320)\n\n* goalx: snapshot before shenyu-analysis\n\n* Block redirect-based SSRF bypass in Swagger imports\n\nSwagger import requests were validating only the initial URL while the\nshared OkHttp client silently followed redirects. Disabling redirect\nfollowing at the HTTP utility layer prevents callers from reaching\nunvalidated internal targets through 3xx responses.\n\nConstraint: Keep the fix in the shared HTTP client so all callers inherit the safer default\nRejected: Add Swagger-specific redirect validation only | leaves other HttpUtils callers exposed to the same redirect class\nConfidence: high\nScope-risk: narrow\nReversibility: clean\nDirective: Do not re-enable redirect following without validating every redirect target before the request is sent\nTested: mvn -pl shenyu-admin -Dtest\u003dHttpUtilsTest,SwaggerImportServiceTest test\nNot-tested: Full shenyu-admin test suite and end-to-end Swagger import against live remote servers\n\n* Scope redirect blocking to Swagger import requests\n\nThis follow-up preserves the default redirect-following behavior of the\nshared HttpUtils client and moves no-redirect handling onto the\nSwagger import path only. The regression tests now cover both the\nexplicit no-redirect mode and the original default behavior.\n\nConstraint: Avoid changing shared HTTP client semantics for unrelated admin features\nConfidence: high\nScope-risk: narrow\nReversibility: clean\nDirective: SSRF hardening for one feature should not silently redefine shared client behavior without an explicit compatibility review\nTested: mvn -pl shenyu-admin -Dtest\u003dHttpUtilsTest,SwaggerImportServiceTest test\nNot-tested: Full shenyu-admin test suite\n\n* Replace redirect test literals with named constants\n\nThis follow-up removes repeated path, status, and body literals from the\nHttpUtils redirect tests so the cases read in terms of the HTTP behavior\nbeing verified instead of raw values.\n\nConstraint: Keep the cleanup test-only and local to the redirect SSRF fix\nConfidence: high\nScope-risk: narrow\nReversibility: clean\nDirective: Name repeated HTTP semantics in tests when they describe protocol behavior rather than incidental values\nTested: mvn -pl shenyu-admin -Dtest\u003dHttpUtilsTest,SwaggerImportServiceTest test\nNot-tested: Full shenyu-admin test suite\n\n* Fix redirect test URL construction\n\nThe no-redirect regression test was composing redirect URLs from a base\nstring that already ended with a slash, which produced invalid host/port\ncombinations in CI. This follow-up switches the test to a dedicated host\nprefix constant so the dynamically allocated port is embedded correctly.\n\nConstraint: Keep the fix limited to the test harness; production redirect handling is unchanged\nConfidence: high\nScope-risk: narrow\nReversibility: clean\nDirective: Avoid composing dynamic host:port URLs from request path fixtures that carry trailing slash semantics\nTested: mvn -pl shenyu-admin -Dtest\u003dHttpUtilsTest,SwaggerImportServiceTest test\nNot-tested: Full shenyu-admin test suite\n\n---------\n\nCo-authored-by: moremind \u003chefengen@apache.org\u003e"
    },
    {
      "commit": "aceaf5b2aa1aff229f557c387e6aefbf46666380",
      "tree": "af2a4c6376725d5d485330f048d6f30d0936dd87",
      "parents": [
        "bec32f355972e095ef57289e84a30578b71b60ee"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Tue Apr 14 20:45:19 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 14 20:45:19 2026 +0800"
      },
      "message": "Hide registry passwords from admin API responses (#6322)"
    },
    {
      "commit": "bec32f355972e095ef57289e84a30578b71b60ee",
      "tree": "dbc0a55eb6685cb29face4b15376dcce04d192af",
      "parents": [
        "2c44e7ef7e7bf1b5cb0a3adee68106547c810ee2"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Tue Apr 14 19:33:26 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 14 19:33:26 2026 +0800"
      },
      "message": "Align SSRF URL validation with OkHttp parsing (#6321)\n\n* goalx: snapshot before shenyu-analysis\n\n* Align SSRF URL validation with the OkHttp request target\n\nThe Swagger import SSRF guard was parsing URLs with java.net.URL while\nthe actual request path was interpreted by OkHttp. This mismatch let\nparser-confusion payloads pass validation but resolve to internal\nhosts during request execution. The fix validates against OkHttp\u0027s\nHttpUrl semantics and adds regression coverage for the known payload.\n\nConstraint: Keep validation semantics aligned with the HTTP client actually used for outbound requests\nRejected: Add ad-hoc blacklist checks for backslash or @ combinations | brittle and would miss future parser edge cases\nConfidence: high\nScope-risk: narrow\nReversibility: clean\nDirective: Any future SSRF validation must use the same parser and canonicalization rules as the outbound HTTP client\nTested: mvn -pl shenyu-admin -Dtest\u003dUrlSecurityUtilsTest,SwaggerImportServiceTest test\nNot-tested: Full shenyu-admin test suite and live end-to-end Swagger import against a running admin instance\n\n* Name parser-confusion SSRF payload in tests\n\nThis follow-up replaces the repeated parser-confusion exploit string with\na single named constant in the SSRF regression tests.\n\nConstraint: Limit the cleanup to the dedicated parser-confusion test surface\nConfidence: high\nScope-risk: narrow\nReversibility: clean\nDirective: Keep security regression payloads named when reused across multiple assertions\nTested: mvn -pl shenyu-admin -Dtest\u003dUrlSecurityUtilsTest,SwaggerImportServiceTest test\nNot-tested: Full shenyu-admin test suite\n\n* Name allowed URL schemes in SSRF validation\n\nThis follow-up replaces the raw http/https string checks in\nUrlSecurityUtils with named protocol constants.\n\nConstraint: Keep the cleanup local to the SSRF validation utility without changing behavior\nConfidence: high\nScope-risk: narrow\nReversibility: clean\nDirective: Protocol allowlists should use named constants when shared across security-sensitive validation logic\nTested: mvn -pl shenyu-admin -Dtest\u003dUrlSecurityUtilsTest,SwaggerImportServiceTest test\nNot-tested: Full shenyu-admin test suite"
    },
    {
      "commit": "2c44e7ef7e7bf1b5cb0a3adee68106547c810ee2",
      "tree": "fb58a7adaadabfd24addd750cb038655f5274e24",
      "parents": [
        "d45cd7012b7ef708d767ce7ada346a3fadc72b81"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Thu Apr 02 10:03:33 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 02 10:03:33 2026 +0800"
      },
      "message": "feat(mcp-server): enhance SDK compatibility with reflection caching and error handling (#6312)\n\n* feat(mcp-server): enhance SDK compatibility with reflection caching and error handling\n\n- Add reflection field caching in McpSessionHelper for better performance and reliability\n- Add SUPPORTED_SDK_VERSION constant for SDK compatibility tracking\n- Enhance error messages with SDK version information in ShenyuToolCallback\n- Add SDK compatibility notes in pom.xml documenting reflection usage\n- Update MCP_TOOL_EXAMPLES.md and MCP_TOOL_EXAMPLES_EN.md with SDK version compatibility table\n\nThis change improves compatibility with MCP SDK 0.17.0 by:\n- Caching reflection fields at class load time\n- Adding graceful degradation when reflection fails\n- Documenting known limitations and supported SDK versions\n\nCo-Authored-By: Claude Opus 4.6 \u003cnoreply@anthropic.com\u003e\n\n* fix mcp sdk compatibility error handling\n\n---------\n\nCo-authored-by: Claude Opus 4.6 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "d45cd7012b7ef708d767ce7ada346a3fadc72b81",
      "tree": "c35b17c4d52ec435e78b65be1c7686090be54b7d",
      "parents": [
        "2870eab95ed69700abd918f46a0cbc387b94dd74"
      ],
      "author": {
        "name": "shown",
        "email": "yuluo08290126@gmail.com",
        "time": "Thu Apr 02 06:36:10 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 02 06:36:10 2026 +0800"
      },
      "message": "infra(ci): add CI action condition (#6316)"
    },
    {
      "commit": "2870eab95ed69700abd918f46a0cbc387b94dd74",
      "tree": "9a1b328e0c7af408b7a45da88dff3e37635d67cc",
      "parents": [
        "0a927fdd1663291185363dc37defbd231392037d"
      ],
      "author": {
        "name": "bwang",
        "email": "38982792+bwangll@users.noreply.github.com",
        "time": "Tue Mar 31 15:31:06 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 31 15:31:06 2026 +0800"
      },
      "message": "fix(common): align PluginEnum sort values with DB schema.sql (#6310) (#6311)\n\n- Update PluginEnum.KEY_AUTH from 430 to 150 (Authentication phase)\n- Update PluginEnum.RESILIENCE4J from 150 to 310 (FaultTolerance phase)\n- Update PluginEnum.BASIC_AUTH from 35 to 150 (Authentication phase)\n- Update PluginEnum.TCP from 0 to 320 (Proxy phase)\n- Update PluginEnum.MQTT from 0 to 125 (Proxy phase)\n- Update PluginEnum.MOCK from 8 to 1 (Mock phase)\n- Fix H2 schema basicAuth sort from 500 to 150 to match other DBs\n- Add parameterized test to prevent future drift between enum and DB\n\nCo-authored-by: bwang \u003cwangbin_wang@youzan.com\u003e"
    },
    {
      "commit": "0a927fdd1663291185363dc37defbd231392037d",
      "tree": "a4975682894b2a430a1f276879f924d27f01a74a",
      "parents": [
        "87e0fe8604ec07eb0bb0ca243d92844eb4e8a51c"
      ],
      "author": {
        "name": "X.Bruce121",
        "email": "xbruce121@163.com",
        "time": "Sun Mar 29 21:41:34 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Mar 29 21:41:34 2026 +0800"
      },
      "message": "Fix: RuleServiceImpl#searchByPage() Selectors now populated from namespace only when condition selectors are null or empty. (#6305)\n\n* fix admin : only populate selectors from namespace when condition selectors are null or empty.\n\n* Update shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/RuleServiceImpl.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e"
    },
    {
      "commit": "87e0fe8604ec07eb0bb0ca243d92844eb4e8a51c",
      "tree": "831ffe17fa2a5f215092e2bb27f2e9e141bbb3ef",
      "parents": [
        "8e437489c9b90b9549c4ad2ae1a8ed6843abec53"
      ],
      "author": {
        "name": "Senrian",
        "email": "47714364+Senrian@users.noreply.github.com",
        "time": "Sat Mar 28 15:23:53 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Mar 28 15:23:53 2026 +0800"
      },
      "message": "fix: replace Collections.EMPTY_MAP with Collections.emptyMap() (#6299)\n\nReplace deprecated Collections.EMPTY_MAP with Collections.emptyMap() to avoid raw type warnings and improve type safety.\n\nCo-authored-by: Senrian \u003csen@senrian.com\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "8e437489c9b90b9549c4ad2ae1a8ed6843abec53",
      "tree": "d19fdbdc10f05b64cadcdaba6d7e06413c04bd8d",
      "parents": [
        "7248388da1796866be10af9cb68b5ebe1b70fe8b"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Fri Mar 27 22:01:17 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Mar 27 22:01:17 2026 +0800"
      },
      "message": "chore(deps): bump org.apache.zookeeper:zookeeper from 3.9.4 to 3.9.5 (#6302)\n\nBumps org.apache.zookeeper:zookeeper from 3.9.4 to 3.9.5.\n\n---\nupdated-dependencies:\n- dependency-name: org.apache.zookeeper:zookeeper\n  dependency-version: 3.9.5\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "7248388da1796866be10af9cb68b5ebe1b70fe8b",
      "tree": "b88a194aeec3b5047f2ae187f6e0f23144924600",
      "parents": [
        "295a12bb56539465ba3d979c0e8bbf13b2696fce"
      ],
      "author": {
        "name": "yangpixi",
        "email": "63222549+yangpixi@users.noreply.github.com",
        "time": "Fri Mar 27 13:07:56 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Mar 27 13:07:56 2026 +0800"
      },
      "message": "chore(deps): bump oshi from 6.7.0 to 6.10.0 (#6301)\n\n* chore(deps): bump oshi from 6.7.0 to 6.10.0\n\n* chore(deps): change oshi version in license file\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "295a12bb56539465ba3d979c0e8bbf13b2696fce",
      "tree": "8b451954cf4a03730f3d5644fc129c4c0d4735ea",
      "parents": [
        "5c2c3ed612e5bc7b6c87f45c8ceef65321f7948c"
      ],
      "author": {
        "name": "moremind",
        "email": "hefengen@apache.org",
        "time": "Fri Mar 27 09:23:34 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Mar 27 09:23:34 2026 +0800"
      },
      "message": "[type:refactor] remove shenyu trie cache (#6303)\n\n* [type:refactor] remove trie cache\n\n* [type:refactor] remove trie cache\n\n* [type:refactor] remove trie cache\n\n* [type:refactor] remove trie cache\n\n* [type:refactor] remove trie cache\n\n* [type:refactor] remove trie cache\n\n* [type:refactor] remove trie cache\n\n* [type:refactor] remove trie cache\n\n* [type:refactor] remove trie cache\n\n* [type:refactor] remove trie cache\n\n* [type:refactor] remove trie cache\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "5c2c3ed612e5bc7b6c87f45c8ceef65321f7948c",
      "tree": "3f4221c29efbd98284f37316327e3cfc1ea8e6d7",
      "parents": [
        "c39506e97ceef9490a97c736fd5098ce97d6f3a0"
      ],
      "author": {
        "name": "moremind",
        "email": "hefengen@apache.org",
        "time": "Fri Mar 27 08:27:05 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Mar 27 08:27:05 2026 +0800"
      },
      "message": "[type:fix] remove java 18 ci (#6306)"
    },
    {
      "commit": "c39506e97ceef9490a97c736fd5098ce97d6f3a0",
      "tree": "6948288aae84a775e5a7b59c97455e9c4adb3ea4",
      "parents": [
        "c2efae14e795655f3ec37a9e9e78d33bfeedf5dc"
      ],
      "author": {
        "name": "yangyx107",
        "email": "1026244247@qq.com",
        "time": "Sat Feb 28 16:34:59 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Feb 28 16:34:59 2026 +0800"
      },
      "message": "Fix: loggion console add rule bug (#6291)\n\n* fix: loggionConsole-addRule-bug\n\n* fix: loggionConsole-addRule-bug\n\n* fix: loggionConsole-addRule-bug\n\n* fix: loggionConsole-addRule-bug\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "c2efae14e795655f3ec37a9e9e78d33bfeedf5dc",
      "tree": "46ed1a69ef0db627c71a6e85869018b509544d1e",
      "parents": [
        "7ff5ba3164da052b22ebbb1ae21c8c1975a5a8a8"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Wed Feb 25 19:37:25 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 25 19:37:25 2026 +0800"
      },
      "message": "fix: improve MCP server plugin path handling and backward compatibility for argsPosition (#6293)\n\n* fix: improve MCP server plugin path handling and backward compatibility for argsPosition\n\n* fix: enhance MCP server plugin path validation and improve handling of blank paths\n\n* Update shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/handler/McpServerPluginDataHandler.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/manager/ShenyuMcpServerManager.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* fix: streamline MCP server plugin path handling by removing redundant checks\n\n* fix: remove unused imports in ShenyuMcpServerManager\n\n---------\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\nCo-authored-by: Yu Siheng \u003c2874602095@qq.com\u003e"
    },
    {
      "commit": "7ff5ba3164da052b22ebbb1ae21c8c1975a5a8a8",
      "tree": "8ccfb83ff1c9be5b4f2adf6bf34cecd5e06e751b",
      "parents": [
        "6f828183710981cd5635b4bb38bc6229df9cfa5e"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Wed Feb 25 19:07:31 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 25 19:07:31 2026 +0800"
      },
      "message": "fix: improve upstream cache management and add recovery test for empty events (#6294)\n\n* fix: improve upstream cache management and add recovery test for empty events\n\n* fix: streamline upstream removal process and add test for empty event handling\n\n---------\n\nCo-authored-by: Yu Siheng \u003c2874602095@qq.com\u003e"
    },
    {
      "commit": "6f828183710981cd5635b4bb38bc6229df9cfa5e",
      "tree": "0199aa5c673b799cbd0f3ae0d7679b6eeab9aeb0",
      "parents": [
        "205fe32a3c06b654dcd03529c39c980b105a4492"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Wed Feb 25 18:11:20 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 25 18:11:20 2026 +0800"
      },
      "message": "feat: add CORS support with configurable allowed headers in MCP server (#6295)\n\n* feat: add CORS support with configurable allowed headers in MCP server\n\n* Update shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/McpServerPlugin.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* feat: enhance CORS support by refining allowed methods and headers handling\n\n---------\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e"
    },
    {
      "commit": "205fe32a3c06b654dcd03529c39c980b105a4492",
      "tree": "d5a0e4ef809c4703a39a53553464eb7a0e3f895d",
      "parents": [
        "c224816207e5f71cc5e9f8e0041d0cc0218f4c95"
      ],
      "author": {
        "name": "Yu Siheng",
        "email": "2874602095@qq.com",
        "time": "Sun Feb 15 22:32:01 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Feb 15 22:32:01 2026 +0800"
      },
      "message": "feat: refactor aiRequest and aiResponse models to support asynchronou… (#6296)\n\n* feat: refactor aiRequest and aiResponse models to support asynchronous operations\n\n* add:logging and illegal judgment\n\n* fix"
    },
    {
      "commit": "c224816207e5f71cc5e9f8e0041d0cc0218f4c95",
      "tree": "cc33f8bb7c06aff0df1adafaa90054b455f71578",
      "parents": [
        "29f9d5ff75b42a316ce7968845fab467ab62748c"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Sat Feb 07 13:24:41 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Feb 07 13:24:41 2026 +0800"
      },
      "message": "fix mcp streamable (#6289)\n\n* fix mcp streamable\n\n* fix ci\n\n* fix ci"
    },
    {
      "commit": "29f9d5ff75b42a316ce7968845fab467ab62748c",
      "tree": "2c03f876c4067dc2281396788d155eb3c986e4b9",
      "parents": [
        "e5c1db9f826a535969a41777ee8fc111af687544"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Wed Feb 04 16:51:10 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 04 16:51:10 2026 +0800"
      },
      "message": "fix: enhance logging and improve request handling in HTTP client plugins (#6288)\n\n* fix: enhance logging and improve request handling in HTTP client plugins\n\n* Update shenyu-plugin/shenyu-plugin-httpclient/src/main/java/org/apache/shenyu/plugin/httpclient/NettyHttpClientPlugin.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/callback/ShenyuToolCallback.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/callback/ShenyuToolCallback.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-plugin/shenyu-plugin-mcp-server/src/main/java/org/apache/shenyu/plugin/mcp/server/callback/ShenyuToolCallback.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* fix: improve null check for request body in ShenyuToolCallback\n\n---------\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e"
    },
    {
      "commit": "e5c1db9f826a535969a41777ee8fc111af687544",
      "tree": "38247fe3773551fc14db089de86ccf828c2961ee",
      "parents": [
        "1a92cca9a43196ba8dc32d5a8cc4f12a1f361451"
      ],
      "author": {
        "name": "fanpipi",
        "email": "50613743+fanpipi@users.noreply.github.com",
        "time": "Wed Feb 04 13:43:25 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 04 13:43:25 2026 +0800"
      },
      "message": "fix: fix GsonUtils concurrent serialization exceptions (#6286) (#6287)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "1a92cca9a43196ba8dc32d5a8cc4f12a1f361451",
      "tree": "08ddcc6e7617a57cedd8466af249e267126ea3c2",
      "parents": [
        "b94f2a242504306bca8574c4321efa7cb51337c7"
      ],
      "author": {
        "name": "VampireAchao",
        "email": "achao@apache.org",
        "time": "Wed Feb 04 12:55:10 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 04 12:55:10 2026 +0800"
      },
      "message": "replace stream().forEach() to forEach() (#6275)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e\nCo-authored-by: zhengpeng \u003c847850277@qq.com\u003e"
    },
    {
      "commit": "b94f2a242504306bca8574c4321efa7cb51337c7",
      "tree": "af965bf77ce9dd4fbd80b307879f644e556b8da9",
      "parents": [
        "556e840f373daa7b8ca5979c76b14270b9bd0989"
      ],
      "author": {
        "name": "yangyx107",
        "email": "1026244247@qq.com",
        "time": "Wed Feb 04 11:49:42 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 04 11:49:42 2026 +0800"
      },
      "message": "feat:modify instance createOrUpdate method log level (#6285)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "556e840f373daa7b8ca5979c76b14270b9bd0989",
      "tree": "c3c814437d4aca7f9a1b0a691a0512a8e15b70dd",
      "parents": [
        "75ade3625f5483a5848ccabe287235aea49e33a1"
      ],
      "author": {
        "name": "eye-gu",
        "email": "734164350@qq.com",
        "time": "Wed Feb 04 11:22:23 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 04 11:22:23 2026 +0800"
      },
      "message": "[type:fix] set open (#6280)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "75ade3625f5483a5848ccabe287235aea49e33a1",
      "tree": "861b3ee1b4c1f00cf28879d2ada20cdb66677277",
      "parents": [
        "dff154a7dc8349ab51649c9155261113e81facfd"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Wed Feb 04 08:53:12 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 04 08:53:12 2026 +0800"
      },
      "message": "fix: handle tool not found error and update requestConfig type to JsonElement (#6284)\n\n"
    },
    {
      "commit": "dff154a7dc8349ab51649c9155261113e81facfd",
      "tree": "a61f9ef41b8d700a27e24b352af0028a90039683",
      "parents": [
        "1d8879a4a8b99ec667fe19fa3c8a8db20fd0d9a3"
      ],
      "author": {
        "name": "yangyx107",
        "email": "1026244247@qq.com",
        "time": "Tue Feb 03 17:58:56 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 03 17:58:56 2026 +0800"
      },
      "message": "feat:sync dashboard (#6283)\n\n"
    },
    {
      "commit": "1d8879a4a8b99ec667fe19fa3c8a8db20fd0d9a3",
      "tree": "a290a0e2f074b113315691a3029a432c2bb0f808",
      "parents": [
        "64ad46fa44d6295d284660afbd12fe0080d4b963"
      ],
      "author": {
        "name": "yangyx107",
        "email": "1026244247@qq.com",
        "time": "Tue Feb 03 16:29:10 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 03 16:29:10 2026 +0800"
      },
      "message": "feat: Add new role search criteria (#6282)\n\n* feat: Add new role search criteria\n\n* feat: Add new role search criteria\n\n* feat: Add new role search criteria\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "64ad46fa44d6295d284660afbd12fe0080d4b963",
      "tree": "eced78e69e434cf9baf3fc6a482c4567562939c3",
      "parents": [
        "cb3c582f4cf0457ddb8cbbc1d465083c237ed787"
      ],
      "author": {
        "name": "Rin",
        "email": "dangnhatrin90@gmail.com",
        "time": "Fri Jan 30 18:34:21 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jan 30 19:34:21 2026 +0800"
      },
      "message": "[Security] Harden Docker images to run as non-root user (#6273)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e\nCo-authored-by: zhengpeng \u003c847850277@qq.com\u003e"
    },
    {
      "commit": "cb3c582f4cf0457ddb8cbbc1d465083c237ed787",
      "tree": "2ef66b0434d62d57b6a1fc842d10611ee1eb96f6",
      "parents": [
        "a6b8de170008aab26879952a797b5d8a85ae18d6"
      ],
      "author": {
        "name": "Jesen Kwan",
        "email": "guan.zhenxing@foxmail.com",
        "time": "Thu Jan 29 11:28:53 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jan 29 11:28:53 2026 +0800"
      },
      "message": " Fix: Preserve Gateway\u0027s independent upstream health check state when receiving config updates from Admin (#6274)\n\n* Fix: Preserve unhealthy upstream state when receiving config updates from admin\n\nWhen admin publishes configuration updates with upstreams marked as status\u003dfalse,\nthe gateway should preserve their unhealthy state and continue health checking\ninstead of completely removing them. This allows the gateway\u0027s independent health\ncheck to recover upstreams when they become healthy.\n\nChanges:\n- UpstreamCacheManager: Refactored submit() method to preserve unhealthy state\n  for both status\u003dtrue and status\u003dfalse upstreams\n- Added processOfflineUpstreams() to handle status\u003dfalse upstreams with health\n  check enabled, keeping them in unhealthy map for monitoring\n- Added processValidUpstreams() to check if valid upstreams were previously\n  unhealthy and preserve that status\n- UpstreamCheckTask: Made removeFromMap() public to support state preservation\n\nCo-Authored-By: Claude \u003cnoreply@anthropic.com\u003e\n\n* Test: Add tests for upstream unhealthy state preservation\n\nAdd comprehensive tests to verify the fix for preserving unhealthy upstream\nstate when receiving config updates from admin.\n\nUpstreamCacheManagerTest:\n- testSubmitWithStatusFalsePreservesUnhealthyState: Verify that upstreams\n  with status\u003dfalse that were previously unhealthy remain in unhealthy map\n- testSubmitWithNewOfflineUpstreamAddedToUnhealthy: Verify new upstreams\n  with status\u003dfalse are added to unhealthy map for monitoring\n- testSubmitPreservesUnhealthyForValidUpstream: Verify valid upstreams\n  that were previously unhealthy remain in unhealthy map\n- testSubmitWithHealthCheckDisabledAndStatusFalse: Verify upstreams with\n  healthCheckEnabled\u003dfalse are removed, not added to unhealthy map\n\nUpstreamCheckTaskTest:\n- testPutToMap: Test adding upstreams to healthy map\n- testPutToMapUnhealthy: Test adding upstreams to unhealthy map\n- testRemoveFromMap: Test removing upstreams from healthy map\n- testRemoveFromMapUnhealthy: Test removing upstreams from unhealthy map\n- testMoveUpstreamBetweenMaps: Test moving upstreams between maps\n\nCo-Authored-By: Claude \u003cnoreply@anthropic.com\u003e\n\n* Update shenyu-loadbalancer/src/test/java/org/apache/shenyu/loadbalancer/cache/UpstreamCheckTaskTest.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Opt: Move empty list check before initialization to avoid unnecessary processing\n\nMove the empty list check to the beginning of submit() method to avoid\ncalling initializeUpstreamHealthStatus() and stream partitioning when\nthe upstream list is empty.\n\nThis is a minor performance optimization that reduces unnecessary method\ncalls and stream operations when processing empty upstream lists.\n\nChanges:\n- Move isEmpty() check before initializeUpstreamHealthStatus()\n- Add early return for empty lists\n- Remove redundant isEmpty() check after partitioning\n\nCo-Authored-By: Claude \u003cnoreply@anthropic.com\u003e\n\n---------\n\nCo-authored-by: Claude \u003cnoreply@anthropic.com\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\nCo-authored-by: zhengpeng \u003c847850277@qq.com\u003e"
    },
    {
      "commit": "a6b8de170008aab26879952a797b5d8a85ae18d6",
      "tree": "c9966e7380444a12011a25c8d32d2e36ae3d1b0c",
      "parents": [
        "74954fa2b9e5a8d0426929ad754a78048be32c9f"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Jan 28 09:35:37 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jan 28 09:35:37 2026 +0800"
      },
      "message": "chore(deps): bump org.assertj:assertj-core in /shenyu-e2e (#6278)\n\nBumps [org.assertj:assertj-core](https://github.com/assertj/assertj) from 3.22.0 to 3.27.7.\n- [Release notes](https://github.com/assertj/assertj/releases)\n- [Commits](https://github.com/assertj/assertj/compare/assertj-core-3.22.0...assertj-build-3.27.7)\n\n---\nupdated-dependencies:\n- dependency-name: org.assertj:assertj-core\n  dependency-version: 3.27.7\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "74954fa2b9e5a8d0426929ad754a78048be32c9f",
      "tree": "6cad40cb543136d2845a0968f6d941ba3de501d1",
      "parents": [
        "fbc3c4bf4975055da422b2d8ae9d0df52321925d"
      ],
      "author": {
        "name": "eye-gu",
        "email": "734164350@qq.com",
        "time": "Mon Jan 26 22:28:22 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jan 26 22:28:22 2026 +0800"
      },
      "message": "[type:fix] fix database init script (#6277)\n\n* [type:fix] fix database init script\n\n* Fix test unnecessary stubbing"
    },
    {
      "commit": "fbc3c4bf4975055da422b2d8ae9d0df52321925d",
      "tree": "7413c446775eb0b02c06311ab1a5d481af9edfed",
      "parents": [
        "71ff9d26e01e233fc571eac02e55f5ee86a65bb0"
      ],
      "author": {
        "name": "MaMengzhen",
        "email": "58206741+MaMengzhen@users.noreply.github.com",
        "time": "Mon Jan 19 18:06:13 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jan 19 18:06:13 2026 +0800"
      },
      "message": "fix mcp config shenyu context error (#6266)\n\n* fix mcp config shenyu context error\n\n* fix mcp config shenyu context error\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "71ff9d26e01e233fc571eac02e55f5ee86a65bb0",
      "tree": "630d46cd544198007954033ac47b63e86c29a2ca",
      "parents": [
        "3c29cc36c7f3948ec97b98a43fe00b094056c268"
      ],
      "author": {
        "name": "jonasHanhan",
        "email": "130035609+jonasHanhan@users.noreply.github.com",
        "time": "Fri Jan 16 11:06:56 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jan 16 11:06:56 2026 +0800"
      },
      "message": "[ISSUE #6235] Set upstream check for each upstream. (#6272)\n\n* fix common : support per-upstream health check.\n\n* fix admin : sanitize upstream url parsing.\n\n* fix common : align health check flag handling.\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "3c29cc36c7f3948ec97b98a43fe00b094056c268",
      "tree": "c21884790a7190bd16b2304c63f691ac23540f46",
      "parents": [
        "385f2b8a0f21dbd472d056f3c8f7244fedfec219"
      ],
      "author": {
        "name": "MaMengzhen",
        "email": "58206741+MaMengzhen@users.noreply.github.com",
        "time": "Fri Jan 16 09:43:29 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jan 16 09:43:29 2026 +0800"
      },
      "message": "fix add custom headers error (#6268)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "385f2b8a0f21dbd472d056f3c8f7244fedfec219",
      "tree": "bf2dde2c004fba63917bb6b818d6d5940ab373fc",
      "parents": [
        "b97c7db820e68cd052a9d9938eef33551d2a4ab6"
      ],
      "author": {
        "name": "Aira Jena",
        "email": "113255984+airajena@users.noreply.github.com",
        "time": "Thu Jan 15 16:40:06 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jan 15 19:10:06 2026 +0800"
      },
      "message": "Fix: Set isClosing flag in closeGracefully method as documented (#6263)\n\nThe FIXME comment noted that the javadoc claimed to use the isClosing\nflag but it wasn\u0027t actually being set. This commit:\n\n- Adds isClosing \u003d true at the start of closeGracefully()\n- Updates the javadoc to accurately reflect the behavior\n- Removes the outdated FIXME comment\n\nThis ensures new connections are properly rejected during graceful shutdown.\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "b97c7db820e68cd052a9d9938eef33551d2a4ab6",
      "tree": "036bd7f60d4cfe8a920809a3ea26071ece73fa3d",
      "parents": [
        "d8fbb5257efa53540e6410bec9f5fe65ba215399"
      ],
      "author": {
        "name": "Aira Jena",
        "email": "113255984+airajena@users.noreply.github.com",
        "time": "Mon Jan 05 12:13:57 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jan 05 14:43:57 2026 +0800"
      },
      "message": "[#6262] Fix OrderlyExecutor resource leak in shenyu-disruptor (#6269)\n\n"
    },
    {
      "commit": "d8fbb5257efa53540e6410bec9f5fe65ba215399",
      "tree": "d2ac32533457bdfe52c0e0220f86d5b59b98f886",
      "parents": [
        "1de8abb44639b68ac93b9d7e386df671ab1ec098"
      ],
      "author": {
        "name": "Aira Jena",
        "email": "113255984+airajena@users.noreply.github.com",
        "time": "Wed Dec 31 08:04:00 2025 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Dec 31 10:34:00 2025 +0800"
      },
      "message": "test(#5161): Improve test coverage for VersionUtils (#6264)\n\nAdded comprehensive tests for:\n- getVersion() with default fallback\n- getVersion() with null code source scenarios\n- checkDuplicate() method for normal classes\n- checkDuplicate() method for core Java classes\n- Version string non-empty validation\n\nThis addresses part of Issue #5161: Improve test case coverage\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "1de8abb44639b68ac93b9d7e386df671ab1ec098",
      "tree": "58bac5e05add84cca654e70c6c83353fec5f654d",
      "parents": [
        "d14a4238dc4710a9dc48f87804e7ac621c9bee19"
      ],
      "author": {
        "name": "Ann (Huei) Chen",
        "email": "chen.ann.h@gmail.com",
        "time": "Sun Dec 28 04:30:28 2025 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Dec 28 18:30:28 2025 +0800"
      },
      "message": "fix order dependent test (#6261)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "d14a4238dc4710a9dc48f87804e7ac621c9bee19",
      "tree": "8795dbcb074ba7d502430949416190dd62303d98",
      "parents": [
        "dcdd72788a5baa6d61ce1ae1d2351000d9d96485"
      ],
      "author": {
        "name": "MaMengzhen",
        "email": "58206741+MaMengzhen@users.noreply.github.com",
        "time": "Wed Dec 17 10:04:10 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Dec 17 10:04:10 2025 +0800"
      },
      "message": "fix \u0027addCustomHeaders\u0027 header value replace bug (#6257)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e\nCo-authored-by: loongs-zhang \u003czhangzicheng@apache.org\u003e"
    },
    {
      "commit": "dcdd72788a5baa6d61ce1ae1d2351000d9d96485",
      "tree": "335be7b088bf49ba7afde1e8ba4be76af082f9db",
      "parents": [
        "cdd56c659577a12e1fd4952cfe15b40a860ba308"
      ],
      "author": {
        "name": "MaMengzhen",
        "email": "58206741+MaMengzhen@users.noreply.github.com",
        "time": "Sun Dec 14 21:57:05 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Dec 14 21:57:05 2025 +0800"
      },
      "message": "fix NettyHttpClientPlugin doRequest response unique headers error (#6258)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e\nCo-authored-by: loongs-zhang \u003czhangzicheng@apache.org\u003e"
    },
    {
      "commit": "cdd56c659577a12e1fd4952cfe15b40a860ba308",
      "tree": "55b66bd1a453150d0ac5278ad6a58b55e5ca133c",
      "parents": [
        "8df49049061f09217723a0afc3019d4cd123ee7d"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Fri Dec 12 11:16:34 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Dec 12 11:16:34 2025 +0800"
      },
      "message": "feat: Rename ai proxy enhanced module to ai proxy and update related files (#6260)\n\n"
    },
    {
      "commit": "8df49049061f09217723a0afc3019d4cd123ee7d",
      "tree": "61c18432e57e5f920c73ade5f94d51436f03b0bb",
      "parents": [
        "0b3959ce52d8e7a6d38f8ffc6abfa238efdc447f"
      ],
      "author": {
        "name": "shown",
        "email": "yuluo08290126@gmail.com",
        "time": "Thu Dec 11 20:34:39 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 11 20:34:39 2025 +0800"
      },
      "message": "infra: refactor infra zk module (#6199)\n\n"
    },
    {
      "commit": "0b3959ce52d8e7a6d38f8ffc6abfa238efdc447f",
      "tree": "c7e2941ddd7c699d3edc5eec1f23e8e7c8bef1a3",
      "parents": [
        "47c958fa8108b75174723e50560a7b0678d1119c"
      ],
      "author": {
        "name": "MaMengzhen",
        "email": "58206741+MaMengzhen@users.noreply.github.com",
        "time": "Thu Dec 11 19:17:26 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 11 19:17:26 2025 +0800"
      },
      "message": "fix mcp tool sample error (#6259)\n\n"
    },
    {
      "commit": "47c958fa8108b75174723e50560a7b0678d1119c",
      "tree": "55874fffec49e10fa87e7572124a62ab49f13d37",
      "parents": [
        "b984ad2c6d62a269e6628da62954cc4d761beb28"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Thu Dec 11 12:01:00 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 11 12:01:00 2025 +0800"
      },
      "message": "feat: Enhance IpUtils with Docker support, improved IP filtering (#6253)\n\n* feat: Enhance IpUtils with Docker support, improved IP filtering, and logging\n\n* Update shenyu-common/src/main/java/org/apache/shenyu/common/utils/IpUtils.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-common/src/main/java/org/apache/shenyu/common/utils/IpUtils.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-common/src/main/java/org/apache/shenyu/common/utils/IpUtils.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-common/src/main/java/org/apache/shenyu/common/utils/IpUtils.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-common/src/main/java/org/apache/shenyu/common/utils/IpUtils.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Refactor IpUtils to improve null check for filterHost using Objects.nonNull\n\n---------\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e"
    },
    {
      "commit": "b984ad2c6d62a269e6628da62954cc4d761beb28",
      "tree": "6aecc1f81d228204fa7d2153a039e370a69b95cc",
      "parents": [
        "46281cda468d8c72b30ef8e5c2ed9a83e7132af2"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Mon Dec 08 18:54:04 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Dec 08 18:54:04 2025 +0800"
      },
      "message": "Refactor EtcdClient and RedisConnectionFactory for improved readability and maintainability (#6250)\n\n* Refactor EtcdClient and RedisConnectionFactory for improved readability and maintainability\n\n* Update shenyu-infra/shenyu-infra-redis/src/main/java/org/apache/shenyu/infra/redis/RedisConnectionFactory.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-infra/shenyu-infra-redis/src/main/java/org/apache/shenyu/infra/redis/RedisConnectionFactory.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* feat: integrate mvnd installation and usage in CI workflows\n\n* fix: handle InterruptedException in EtcdClient and update tests for proper exception throwing\n\n* feat: integrate mvnd installation and usage in CI workflows\n\n* feat: enhance keep-alive mechanism in EtcdClient with exponential backoff retries and add corresponding unit test\n\n* test: add unit tests for keep-alive mechanism in EtcdClient and validate RedisNode parsing\n\n* test: refactor observer registration assertion in EtcdClientTest for improved clarity and reliability\n\n* feat: integrate mvnd installation and usage in CI workflows\n\n* test: refactor RedisConnectionFactoryTest to improve invalid node assertions\n\n* test: enhance assertions in EtcdClientTest for better clarity and reliability\n\n---------\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e"
    },
    {
      "commit": "46281cda468d8c72b30ef8e5c2ed9a83e7132af2",
      "tree": "904fcd97ec82381644d487b4d8d9f7b8e121a055",
      "parents": [
        "bbdcbfebb13202273462a8fbab2502551770358c"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Mon Dec 08 16:46:55 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Dec 08 16:46:55 2025 +0800"
      },
      "message": "fix ai proxy key (#6249)\n\n* Enhance AiProxyRealKeyResolver to use a fixed thread pool for asynchronous key resolution\n\n* feat: Enhance AI Proxy API key management by adding real key resolution, `findByIds` method, and improving data synchronization.\n\n* Update shenyu-admin/src/main/java/org/apache/shenyu/admin/service/support/AiProxyRealKeyResolver.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/AiProxyApiKeyServiceImpl.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* fix: Improve null check for selectorId in real API key resolution\n\n* feat: Introduce NamespaceUtils for namespace normalization and refactor related code\n\n* feat: integrate mvnd installation and usage in CI workflows\n\n* feat: integrate mvnd installation and usage in CI workflows\n\n* refactor: remove unused extractPrompt method and related test assertions\n\n* refactor: simplify prompt extraction logic in AiProxyConfigService\n\n---------\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e"
    },
    {
      "commit": "bbdcbfebb13202273462a8fbab2502551770358c",
      "tree": "d5f4b98bb9880dcde62dbef0b85608fdc41d7423",
      "parents": [
        "0f2f7acce28824e56472607be3804407c636b357"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Mon Dec 08 11:07:20 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Dec 08 11:07:20 2025 +0800"
      },
      "message": "feat: Introduce request body size limit, enhance AI proxy plugin\u0027s ChatClient caching with config hash, and refine prompt extraction from the request body. (#6248)\n\n* feat: Introduce request body size limit, enhance AI proxy plugin\u0027s ChatClient caching with config hash, and refine prompt extraction from the request body.\n\n* Update shenyu-plugin/shenyu-plugin-ai/shenyu-plugin-ai-proxy-enhanced/src/main/java/org/apache/shenyu/plugin/ai/proxy/enhanced/cache/ChatClientCache.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-plugin/shenyu-plugin-ai/shenyu-plugin-ai-proxy-enhanced/src/main/java/org/apache/shenyu/plugin/ai/proxy/enhanced/service/AiProxyConfigService.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* feat: Implement cache eviction strategy in ChatClientCache and enforce maximum request body size in AiProxyPlugin\n\n* feat: integrate mvnd installation and usage in CI workflows\n\n---------\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e"
    },
    {
      "commit": "0f2f7acce28824e56472607be3804407c636b357",
      "tree": "00abbe48e99a0e194202c5227da47c46730fd01f",
      "parents": [
        "ddefc04a05581b567a8cb6466248b2ab358d5172"
      ],
      "author": {
        "name": "xiaoyu",
        "email": "xiaoyu@apache.org",
        "time": "Mon Dec 08 09:40:18 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Dec 08 09:40:18 2025 +0800"
      },
      "message": "modify loadbalancer (#6251)\n\n* modify loadbalancer\n\n* modify loadbalancer\n\n* modify loadbalancer\n\n* modify loadbalancer\n\n* modify loadbalancer\n\n* modify loadbalancer"
    },
    {
      "commit": "ddefc04a05581b567a8cb6466248b2ab358d5172",
      "tree": "b46b86ae8b0902a7d5b2b09103694a994a690956",
      "parents": [
        "bee956dce6af1246a6f90aec803511d7f48b0477"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Thu Dec 04 10:08:30 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 04 10:08:30 2025 +0800"
      },
      "message": "Enhance index method to build base URL from HTTP request, supporting reverse proxy scenarios (#6247)\n\n* Enhance index method to build base URL from HTTP request, supporting reverse proxy scenarios\n\n* Refactor ClusterConfiguration and ShenyuClusterService to remove LoadServiceDocEntry dependency and simplify ApplicationStartListener\n\n* feat: integrate mvnd installation and usage in CI workflows\n\n* Update shenyu-admin/src/main/java/org/apache/shenyu/admin/controller/IndexController.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* feat: enhance host validation in IndexController to prevent header injection attacks\n\n* feat: integrate mvnd installation and usage in CI workflows\n\n---------\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e"
    },
    {
      "commit": "bee956dce6af1246a6f90aec803511d7f48b0477",
      "tree": "ab590c8568f53d7786ca8dd3077e360ae9f3ab4c",
      "parents": [
        "bf30e31651e993ba04e52af153a9c669e0adae7c"
      ],
      "author": {
        "name": "Ann (Huei) Chen",
        "email": "chen.ann.h@gmail.com",
        "time": "Wed Dec 03 03:10:41 2025 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Dec 03 17:10:41 2025 +0800"
      },
      "message": "Fix non deterministic caused by Hashmap (#6246)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "bf30e31651e993ba04e52af153a9c669e0adae7c",
      "tree": "7c3352271b9ad7a2ec48dc808b5600d81e8822da",
      "parents": [
        "3c615de383334a8fc574a84089297e52873108c5"
      ],
      "author": {
        "name": "Ann (Huei) Chen",
        "email": "chen.ann.h@gmail.com",
        "time": "Wed Dec 03 02:34:24 2025 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Dec 03 16:34:24 2025 +0800"
      },
      "message": "Fix Order Dependent Test in AiPromptPluginDataHandlerTest (#6245)\n\n* fix order dependent test\n\n* fix style"
    },
    {
      "commit": "3c615de383334a8fc574a84089297e52873108c5",
      "tree": "4f0602a8e84b245c455adaecbbb74deccf536188",
      "parents": [
        "1c7332f51883b46ac0aa74530b362debd0c00afd"
      ],
      "author": {
        "name": "VampireAchao",
        "email": "achao@apache.org",
        "time": "Tue Dec 02 19:14:00 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Dec 02 19:14:00 2025 +0800"
      },
      "message": "[Fix] the selector and rule pagination non-functional (#6239) (#6243)\n\n* fix: the selector and rule pagination non-functional (#6239)\n\n* code style optimization\n\n* Update shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/SelectorServiceImpl.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/RuleServiceImpl.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/RuleServiceImpl.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/SelectorServiceImpl.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* code style optimization\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e"
    },
    {
      "commit": "1c7332f51883b46ac0aa74530b362debd0c00afd",
      "tree": "9a4c8947ff94b01296da5d8f718f9923a1b9c9e6",
      "parents": [
        "1464229396fbec10def6827e4f082f9427931c36"
      ],
      "author": {
        "name": "Ann (Huei) Chen",
        "email": "chen.ann.h@gmail.com",
        "time": "Tue Dec 02 00:43:02 2025 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Dec 02 14:43:02 2025 +0800"
      },
      "message": "add reset cache in MethodDescriptor (#6244)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "1464229396fbec10def6827e4f082f9427931c36",
      "tree": "8a41ed86c8e365dce3d93ae1d8da5c7f07e71b5d",
      "parents": [
        "1aba81b7cad4916888f3b0decf3777e8ef23436b"
      ],
      "author": {
        "name": "MaMengzhen",
        "email": "58206741+MaMengzhen@users.noreply.github.com",
        "time": "Thu Nov 27 15:02:40 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 27 15:02:40 2025 +0800"
      },
      "message": "fix get the argument position mapping error and test method (#6236)\n\n* fix Get the argument position mapping error and test method\n\n* fix testCallWithMissingExchange\n\n* fix \u0027testPostRequestWithJsonBody\u0027 json data format\n\n---------\n\nCo-authored-by: mamz10 \u003cmamz10@chinaunicom.cn\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "1aba81b7cad4916888f3b0decf3777e8ef23436b",
      "tree": "13c18641ffd476dd9ffbbd8c1c528d75ea6028ff",
      "parents": [
        "5d92e50f4f568fd034fcf56c659c7e210042b438"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Mon Nov 24 09:35:23 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 24 09:35:23 2025 +0800"
      },
      "message": "Release/merge 2.7.0.3 (#6237)\n\n* [maven-release-plugin] prepare release v2.7.0.3\n\n* [maven-release-plugin] prepare for next development iteration\n\n* bump version to 2.7.1-SNAPSHOT in pom.xml"
    },
    {
      "commit": "5d92e50f4f568fd034fcf56c659c7e210042b438",
      "tree": "2ef6eb7903db12158147cf8bd86b7ea0f7e67e2f",
      "parents": [
        "a49901f3c6a8c35ec550549bc6f7e7d31d60ff7b"
      ],
      "author": {
        "name": "L",
        "email": "54098507+2823602869@users.noreply.github.com",
        "time": "Sat Nov 22 14:52:28 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 22 14:52:28 2025 +0800"
      },
      "message": "fix field-sqlmap.xml database reserved keywords (#6233)\n\n* fix field-sqlmap.xml database reserved keywords\n\n* fix field-sqlmap.xml database reserved keywords\n\n* fix field-sqlmap.xml database reserved keywords\n\n* fix field-sqlmap.xml database reserved keywords\n\n* Delete shenyu-examples/pom.xml\n\n* fix\n\n* fix\ndeleted new dependency\n\n* fix\ndeleted new dependency\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "a49901f3c6a8c35ec550549bc6f7e7d31d60ff7b",
      "tree": "6b00acfa5fce3934e3750e74ed68a979962c84b7",
      "parents": [
        "13f175be50f8d25825b380b9d3e85f65065125f3"
      ],
      "author": {
        "name": "Yong-Han Lin",
        "email": "alberta410476@gmail.com",
        "time": "Thu Nov 20 03:23:04 2025 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 20 17:23:04 2025 +0800"
      },
      "message": "fix HttpUtilsTest nondeterminism from param order (#6230)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "13f175be50f8d25825b380b9d3e85f65065125f3",
      "tree": "6882a5c7796e3cc51230f8c00aca54ef5798c26a",
      "parents": [
        "6b42718a6ee9027b003b76170a2cb02a269cf26b"
      ],
      "author": {
        "name": "Yu Siheng",
        "email": "2874602095@qq.com",
        "time": "Thu Nov 20 10:58:11 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 20 10:58:11 2025 +0800"
      },
      "message": "Fix mcp server real url error (#6228)\n\n* fix:shenyu-examples-mcp\n\n* fix some bug\n\n* fix: fix the mcp client and mcp examples bug\n\n* fix: mcp server plugin realUrl error\n\n* fix\n\n* add null judgment\n\n* fix: shenyu mcp client url concat error\n\n* fix\n\n* fix\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "6b42718a6ee9027b003b76170a2cb02a269cf26b",
      "tree": "2a28c13e2f979ac386be77ae4b1b5659a2f8084e",
      "parents": [
        "3c6bb7be162044e379d38b6687a2870991ae7040"
      ],
      "author": {
        "name": "Ann (Huei) Chen",
        "email": "chen.ann.h@gmail.com",
        "time": "Wed Nov 19 16:40:56 2025 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 20 06:40:56 2025 +0800"
      },
      "message": "fix non deterministic test (#6229)\n\n"
    },
    {
      "commit": "3c6bb7be162044e379d38b6687a2870991ae7040",
      "tree": "4d996c76424657bae7444384737c2abf9508c9c0",
      "parents": [
        "b93a6870343b76e8e7d45027396006f596e9a22f"
      ],
      "author": {
        "name": "Yong-Han Lin",
        "email": "alberta410476@gmail.com",
        "time": "Wed Nov 19 09:22:31 2025 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 19 23:22:31 2025 +0800"
      },
      "message": "fix non determinsitic tests (#6232)\n\n"
    },
    {
      "commit": "b93a6870343b76e8e7d45027396006f596e9a22f",
      "tree": "bce9234360a0c0d9fe27288a0c1025a8499cfd5e",
      "parents": [
        "ae6ddc5abe3e88f1c0a5a9201a59bcdb74a04157"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Mon Nov 17 17:13:53 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 17 17:13:53 2025 +0800"
      },
      "message": "chore: update LICENSE with new dependencies and versions (#6234)\n\n* chore: update LICENSE with new dependencies and versions\n\n* chore: update ci.yml to exclude LICENSE and NOTICE files from processing\n\n* chore: enhance ci.yml to include debug step for matched files and refine file filters"
    },
    {
      "commit": "ae6ddc5abe3e88f1c0a5a9201a59bcdb74a04157",
      "tree": "4c5d0568a79fd7dc423f9ab2ef1e1d5019a22b26",
      "parents": [
        "80596c87ab50bad1fd86e9058ffddcacc3b31f2b"
      ],
      "author": {
        "name": "Yu Siheng",
        "email": "2874602095@qq.com",
        "time": "Sat Nov 08 19:16:08 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 08 19:16:08 2025 +0800"
      },
      "message": "Fix shenyu mcp bugs (#6227)\n\n* fix:shenyu-examples-mcp\n\n* fix some bug\n\n* fix: fix the mcp client and mcp examples bug"
    },
    {
      "commit": "80596c87ab50bad1fd86e9058ffddcacc3b31f2b",
      "tree": "e90435d40f86b2c756c30e3836239604b2f93e29",
      "parents": [
        "501bec3aef9e559b4b5ba790623017088afc9b7e"
      ],
      "author": {
        "name": "Yu Siheng",
        "email": "2874602095@qq.com",
        "time": "Sat Nov 08 07:33:23 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 08 07:33:23 2025 +0800"
      },
      "message": "fix:shenyu-examples-mcp (#6226)\n\n"
    },
    {
      "commit": "501bec3aef9e559b4b5ba790623017088afc9b7e",
      "tree": "43f67a305b5d605d8b114e746332231b95ba38b1",
      "parents": [
        "58bbbbdbd8b526894ca2b9724b02b2fdd77e7bbd"
      ],
      "author": {
        "name": "Lê Nam Khánh",
        "email": "55955273+khanhkhanhlele@users.noreply.github.com",
        "time": "Thu Nov 06 15:50:34 2025 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 06 16:50:34 2025 +0800"
      },
      "message": "Fix typos in some files (#6224)\n\n"
    },
    {
      "commit": "58bbbbdbd8b526894ca2b9724b02b2fdd77e7bbd",
      "tree": "0066a68efdec53748869aa809fc73e4f42dabf37",
      "parents": [
        "d1d98032f6ad0da388557beeb6b984fb3c49d06f"
      ],
      "author": {
        "name": "shown",
        "email": "yuluo08290126@gmail.com",
        "time": "Wed Nov 05 10:03:05 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 05 10:03:05 2025 +0800"
      },
      "message": "feat: remove shenyu-infra-x-module (#6216)\n\n* feat: impl shenyu-infra-x-module\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\n\n* feat: remove x module\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\n\n* Fix XML formatting in pom.xml\n\n---------\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "d1d98032f6ad0da388557beeb6b984fb3c49d06f",
      "tree": "41e39e98241408976e620f90784d424322708d77",
      "parents": [
        "3c3a4a50bc435830a48d0eff131fd05e19ae3374"
      ],
      "author": {
        "name": "shown",
        "email": "yuluo08290126@gmail.com",
        "time": "Tue Nov 04 13:39:15 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Nov 04 13:39:15 2025 +0800"
      },
      "message": "refactor: extract base data for plugin, selector and rule data class (#6215)\n\n* refactor: extract base data for plugin, selector and rule data class\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\n\n* fix: fix ut\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\n\n* fix: fix checksyle error\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\n\n---------\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "3c3a4a50bc435830a48d0eff131fd05e19ae3374",
      "tree": "9f18e0a1ca1fc3e0c922fbfb600c8ff0579f5110",
      "parents": [
        "cf0ec09c672a5350b87075873d66f8656a8e2726"
      ],
      "author": {
        "name": "Yu Siheng",
        "email": "2874602095@qq.com",
        "time": "Tue Nov 04 12:58:58 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Nov 04 12:58:58 2025 +0800"
      },
      "message": "feat:import mcp server config by swagger doc (#6219)\n\n"
    },
    {
      "commit": "cf0ec09c672a5350b87075873d66f8656a8e2726",
      "tree": "46b655a74a7cc92c3cbafb7ad79d19e96c6e2f47",
      "parents": [
        "b6b1416aa32af18c11071998c4ff794553e6d97f"
      ],
      "author": {
        "name": "yunlongn",
        "email": "yunlongn@outlook.com",
        "time": "Mon Nov 03 10:42:15 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 03 10:42:15 2025 +0800"
      },
      "message": "Fix the issue of multiple selectors connecting to different registry centers. (#6218)\n\nCo-authored-by: moremind \u003chefengen@apache.org\u003e"
    },
    {
      "commit": "b6b1416aa32af18c11071998c4ff794553e6d97f",
      "tree": "6cd157769c0ca8f1400c7180cc8db74c0c89e25c",
      "parents": [
        "abad1ada17901a715cbad55e7b28bf75210a26e0"
      ],
      "author": {
        "name": "Yu Siheng",
        "email": "2874602095@qq.com",
        "time": "Fri Oct 31 23:01:14 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 31 23:01:14 2025 +0800"
      },
      "message": "fix: The use of outdated dependencies due to mvnd cache (#6217)\n\n"
    },
    {
      "commit": "abad1ada17901a715cbad55e7b28bf75210a26e0",
      "tree": "1dc117185af59835b4c89e31a6d56ee867710234",
      "parents": [
        "0484d6ab2940daa01a53914a670c96b425e87baf"
      ],
      "author": {
        "name": "Yu Siheng",
        "email": "2874602095@qq.com",
        "time": "Fri Oct 24 10:12:07 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 24 10:12:07 2025 +0800"
      },
      "message": "feat:mcp server autoRegister enhance (#6213)\n\n* feat:mcp server autoRegister enhance\n\n* fix"
    },
    {
      "commit": "0484d6ab2940daa01a53914a670c96b425e87baf",
      "tree": "d2fbd54ad27d3c22bf1c899f3a208866106f6dae",
      "parents": [
        "72a89c0b05a3477f7a950f18ecf8e629ea57a12c"
      ],
      "author": {
        "name": "Yu Siheng",
        "email": "2874602095@qq.com",
        "time": "Thu Oct 23 10:07:48 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 23 10:07:48 2025 +0800"
      },
      "message": "Mcp auto register bug fix (#6212)\n\n* fix some bug\n\n* fix some bug\n\n* fix:autoRegister error config\n\n* fix\n\n* fix\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "72a89c0b05a3477f7a950f18ecf8e629ea57a12c",
      "tree": "d1a6830ba6804dd91d7d6d61ff59f27c7563edbf",
      "parents": [
        "5cbd540d02fb759a8932d7ed45ab2227b41032ff"
      ],
      "author": {
        "name": "shown",
        "email": "yuluo08290126@gmail.com",
        "time": "Wed Oct 22 08:48:54 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Oct 22 08:48:54 2025 +0800"
      },
      "message": "feat(ci): replace prow action with local issue-manager script (#6211)\n\n* feat(ci): replace prow action with local issue-manager script\n\n* infra: fix issue manager ci\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\n\n* chore: add license header and comment\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\n\n---------\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e"
    },
    {
      "commit": "5cbd540d02fb759a8932d7ed45ab2227b41032ff",
      "tree": "a9fc457b09dbe4ce706e8a32076130ea3f31b6e2",
      "parents": [
        "3a3cc0430c7c6795aa195b8a7631925786c7db42"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Tue Oct 21 21:24:10 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 21 21:24:10 2025 +0800"
      },
      "message": "fix: remove unnecessary mock return value in MotanProxyServiceTest (#6207) (#6210)\n\n"
    },
    {
      "commit": "3a3cc0430c7c6795aa195b8a7631925786c7db42",
      "tree": "d46a770be192578cb356cdc50afa9b55c7842864",
      "parents": [
        "e0c50c3bdf78bd38476059a53e7941daad1abeec"
      ],
      "author": {
        "name": "shown",
        "email": "yuluo08290126@gmail.com",
        "time": "Tue Oct 21 19:29:38 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 21 19:29:38 2025 +0800"
      },
      "message": "feat: add shenyu-registry-k8s module unit test (#6206)\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\nCo-authored-by: zhengpeng \u003c847850277@qq.com\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "e0c50c3bdf78bd38476059a53e7941daad1abeec",
      "tree": "a5e433b46d047db00d45ccd508f4c288efd4bfd0",
      "parents": [
        "c94c64c703acd2b7b74e4fc5359274b4194ecea6"
      ],
      "author": {
        "name": "shown",
        "email": "yuluo08290126@gmail.com",
        "time": "Tue Oct 21 18:54:36 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 21 18:54:36 2025 +0800"
      },
      "message": "Fix typo in active committers list (#6205)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "c94c64c703acd2b7b74e4fc5359274b4194ecea6",
      "tree": "7b482c51f75989c761ca23e93a64113258548a2e",
      "parents": [
        "24565161a50ab1250ae1a941893bbd16f71509f5"
      ],
      "author": {
        "name": "cuixiaojie",
        "email": "36450583+wusuobuzai@users.noreply.github.com",
        "time": "Tue Oct 21 18:26:21 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 21 18:26:21 2025 +0800"
      },
      "message": "fix: When there are multiple indices under the alias shenyu-access-logging, if we do not specify one of them for writing or specify multiple, an error will be reported. Therefore, here we directly save to the index of the current day. (#6203)\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "24565161a50ab1250ae1a941893bbd16f71509f5",
      "tree": "7f7d16b51e8f20bb6d55122e3b064dc2d1bef2ea",
      "parents": [
        "082e7028beb0e572d331121e09805a2bfb861ce4"
      ],
      "author": {
        "name": "MaMengzhen",
        "email": "58206741+MaMengzhen@users.noreply.github.com",
        "time": "Tue Oct 21 17:27:24 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 21 17:27:24 2025 +0800"
      },
      "message": "[fix] the path truncation of get requests set by shenyuContext in MCP Server (#6209)\n\n* fix: path truncation in mcp server\n\n* fix: path truncation in mcp server\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "082e7028beb0e572d331121e09805a2bfb861ce4",
      "tree": "c8fc89559ca1e1a7e1ca35c74adbe851d30bab0f",
      "parents": [
        "f38a9c58c8aeab6f77a7820c33c7de1673a04f0f"
      ],
      "author": {
        "name": "Evan",
        "email": "18612117463@163.com",
        "time": "Tue Oct 21 16:55:34 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 21 16:55:34 2025 +0800"
      },
      "message": "[ISSUE #6144] 修复通过 nacos 发现下游服务时，下游服务重启后，会将旧的IP覆盖新的IP。导致通过shenyu调用下游服务报错Can not find healthy upstream url, please check your configuration! (#6201)\n\n* fix : in the failure to properly handle valid and invalid nodes when listening to the UpstreamList, which results in errors with valid instances.\n\n1. 缓存实例逻辑修复\n2. 新增通过 selectorId 获取健康实例方法\n3. weight 支持 set 方法\n4. 重写 Upstream equals 方法(去除 weight 参与相等校验)\n\nissues: #6144 https://github.com/apache/shenyu/issues/6144\n\n* Update shenyu-loadbalancer/src/main/java/org/apache/shenyu/loadbalancer/cache/UpstreamCacheManager.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-loadbalancer/src/main/java/org/apache/shenyu/loadbalancer/cache/UpstreamCacheManager.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update shenyu-loadbalancer/src/main/java/org/apache/shenyu/loadbalancer/cache/UpstreamCacheManager.java\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n---------\n\nCo-authored-by: Evan \u003c\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e"
    },
    {
      "commit": "f38a9c58c8aeab6f77a7820c33c7de1673a04f0f",
      "tree": "ed4536316a89ef9629d35d0bbb546639dbbc5ee7",
      "parents": [
        "9f857fe613238d34a4828c8fb9483d4ded0ffb0e"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Thu Oct 09 16:44:05 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 09 16:44:05 2025 +0800"
      },
      "message": "[feat] mvnd (#6041)\n\n"
    },
    {
      "commit": "9f857fe613238d34a4828c8fb9483d4ded0ffb0e",
      "tree": "47a40fca61f3ef26a428d348c96063c0f7e4691f",
      "parents": [
        "a8300a4eef66d1ca5e8394c34367a9636bc17cd5"
      ],
      "author": {
        "name": "shown",
        "email": "yuluo08290126@gmail.com",
        "time": "Wed Oct 08 13:48:30 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Oct 08 13:48:30 2025 +0800"
      },
      "message": "infra: add issue label manager GHA (#6197)\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "a8300a4eef66d1ca5e8394c34367a9636bc17cd5",
      "tree": "87bdf389b4373af35aa7ec09c93a6c9bd1662e06",
      "parents": [
        "a04d9e12fb5101b97743a92ffb951631e8359e15"
      ],
      "author": {
        "name": "shown",
        "email": "yuluo08290126@gmail.com",
        "time": "Mon Oct 06 21:24:44 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 06 21:24:44 2025 +0800"
      },
      "message": "feat: add shenyu-register-client-beat module unit test (#6193)\n\n* feat: add shenyu-register-client-beat module unit test\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\n\n* fix: add new lint\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\n\n---------\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "a04d9e12fb5101b97743a92ffb951631e8359e15",
      "tree": "079266f58b2b0c6ad1ca929450d2095d03ad41a9",
      "parents": [
        "ce9a39edf19c44612ad0c3839514d3eaa540c027"
      ],
      "author": {
        "name": "shown",
        "email": "yuluo08290126@gmail.com",
        "time": "Sun Oct 05 21:51:49 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Oct 05 21:51:49 2025 +0800"
      },
      "message": "infra: add auto notify GHA when issue is created (#6198)\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "ce9a39edf19c44612ad0c3839514d3eaa540c027",
      "tree": "decd41e70d31ff802d35192b749a2568c77dbe40",
      "parents": [
        "d0994fa94d97c40e611e16d10a1f8a33651cb52b"
      ],
      "author": {
        "name": "aias00",
        "email": "liuhongyu@apache.org",
        "time": "Sun Oct 05 20:54:23 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Oct 05 20:54:23 2025 +0800"
      },
      "message": "[feat] github ci (#6031)\n\n"
    },
    {
      "commit": "d0994fa94d97c40e611e16d10a1f8a33651cb52b",
      "tree": "fedab12080fc08a50f44b12ef37a69373ecbcb8a",
      "parents": [
        "fc8c796b97e39c6cca46f0208a5bb9f3105f15b6"
      ],
      "author": {
        "name": "shown",
        "email": "yuluo08290126@gmail.com",
        "time": "Tue Sep 30 20:38:57 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 30 20:38:57 2025 +0800"
      },
      "message": "feat: add shenyu-register-client-api unit test (#6192)\n\nSigned-off-by: yuluo-yx \u003cyuluo08290126@gmail.com\u003e\nCo-authored-by: moremind \u003chefengen@apache.org\u003e"
    },
    {
      "commit": "fc8c796b97e39c6cca46f0208a5bb9f3105f15b6",
      "tree": "8f3b365303a101500a43f3a9eb4e07543c0a6ce4",
      "parents": [
        "555f9b456f1d90dec93d4c60bc6c4a3aa1f54ab7"
      ],
      "author": {
        "name": "xchoox",
        "email": "605739993@qq.com",
        "time": "Tue Sep 30 09:01:06 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 30 09:01:06 2025 +0800"
      },
      "message": "[type:feat]HTTP and WebSocket synchronous mode supports heartbeat detection (#6179)\n\n* handler\n\n* handler\n\n* commit\n\n* client finish\n\n* 1\n\n* bootstrap finish\n\n* fix\n\n* \u0027fix\u0027\n\n* 数据可视化\n\n* 图标可视化\n\n* 可视化\n\n* fix cr\n\n* fix cr\n\n* fix cr\n\n* fix cr\n\n* fix cr\n\n* fix cr\n\n* http and websocket heartbeat\n\n* fix\n\n* fix\n\n* fix\n\n* fix\n\n* fix\n\n---------\n\nCo-authored-by: xcsnx \u003c1192709687@qq.com\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "555f9b456f1d90dec93d4c60bc6c4a3aa1f54ab7",
      "tree": "38872df08e9bb896dd5503e2ba5b125faa20f3be",
      "parents": [
        "2a4a7fb6213e1740b3b7bdb66cb813e61dbe1b08"
      ],
      "author": {
        "name": "xchoox",
        "email": "605739993@qq.com",
        "time": "Mon Sep 29 15:31:05 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 29 15:31:05 2025 +0800"
      },
      "message": "[type:feat]Change bootstrap heartbeat reporting (#6187)\n\n* change\n\n* fix code style\n\n* change Conditional\n\n* fix\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e\nCo-authored-by: moremind \u003chefengen@apache.org\u003e"
    },
    {
      "commit": "2a4a7fb6213e1740b3b7bdb66cb813e61dbe1b08",
      "tree": "d18e8c9cb4479f5fafced3895cafb6491227eaeb",
      "parents": [
        "dd57fb78daad4e8dfcb7d8c19751cb4008f9e9ff"
      ],
      "author": {
        "name": "ljh",
        "email": "992282545@qq.com",
        "time": "Sun Sep 28 15:58:55 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 28 15:58:55 2025 +0800"
      },
      "message": "[type:optimize] Optimize LogCollectUtils (#6191)\n\nCo-authored-by: yuqianwei \u003cqq120405\u003e\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e"
    },
    {
      "commit": "dd57fb78daad4e8dfcb7d8c19751cb4008f9e9ff",
      "tree": "2890bb5dbc140285905072e57296b9324d2d7a1a",
      "parents": [
        "0af754d949c7e4851ab6c62f78750b50cfd981fe"
      ],
      "author": {
        "name": "Yu Siheng",
        "email": "143899446+478320@users.noreply.github.com",
        "time": "Sun Sep 28 11:32:24 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 28 11:32:24 2025 +0800"
      },
      "message": "[feat]:loggingKafka plugin config based on selector (#6074)\n\n* [feat]:loggingKafka plugin config based on selector\n\n* fix handlerSeletor null point bug\n\n* fix\n\n* add:test file\n\n* fix\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e\nCo-authored-by: zhengpeng \u003c847850277@qq.com\u003e\nCo-authored-by: loongs-zhang \u003czhangzicheng@apache.org\u003e\nCo-authored-by: Misaya295 \u003c45778734+misaya295@users.noreply.github.com\u003e"
    },
    {
      "commit": "0af754d949c7e4851ab6c62f78750b50cfd981fe",
      "tree": "0463c7b7b51c618600d4f0868a29ab57cc366dc3",
      "parents": [
        "aeba1f3cbf102b577e3ee535596331121743a825"
      ],
      "author": {
        "name": "Yu Siheng",
        "email": "143899446+478320@users.noreply.github.com",
        "time": "Sun Sep 28 09:23:05 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 28 09:23:05 2025 +0800"
      },
      "message": "[feat] sofa plugin config based on selector (#6062)\n\n* [feat] sofa plugin config based on selector\n\n* fix\n\n* add test file\n\n* fix\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e\nCo-authored-by: loongs-zhang \u003czhangzicheng@apache.org\u003e\nCo-authored-by: Misaya295 \u003c45778734+misaya295@users.noreply.github.com\u003e"
    },
    {
      "commit": "aeba1f3cbf102b577e3ee535596331121743a825",
      "tree": "6407dec518a511a6e40c8ce943c164361fc9301c",
      "parents": [
        "a09cfb270c9285b67f14ec6d878b61c2fa54a566"
      ],
      "author": {
        "name": "Yu Siheng",
        "email": "143899446+478320@users.noreply.github.com",
        "time": "Sun Sep 28 00:34:51 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 28 00:34:51 2025 +0800"
      },
      "message": "[feat] loggingRabbitMQ plugin config based on selector (#6059)\n\n* [feat] loggingRabbitMQ plugin config based on selector\n\n* fix\n\n* fix\n\n* fix\n\n* fix\n\n* fix\n\n* fix test file\n\n* add:test file\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e\nCo-authored-by: loongs-zhang \u003czhangzicheng@apache.org\u003e\nCo-authored-by: Misaya295 \u003c45778734+misaya295@users.noreply.github.com\u003e"
    },
    {
      "commit": "a09cfb270c9285b67f14ec6d878b61c2fa54a566",
      "tree": "10a9c631eea74e72ac1173d6cf7c20e193986b69",
      "parents": [
        "f8141dbe6ab4d2e3041cbe086e8bbfa96fafc5c8"
      ],
      "author": {
        "name": "xchoox",
        "email": "87258436+xchoox@users.noreply.github.com",
        "time": "Sat Sep 27 19:19:46 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Sep 27 19:19:46 2025 +0800"
      },
      "message": "[type:feat]add unit test (#6182)\n\n* add unit\n\n* fix ci\n\n* fix ci\n\n---------\n\nCo-authored-by: aias00 \u003cliuhongyu@apache.org\u003e\nCo-authored-by: xcsnx \u003c1192709687@qq.com\u003e"
    },
    {
      "commit": "f8141dbe6ab4d2e3041cbe086e8bbfa96fafc5c8",
      "tree": "32d2181b6483ead731ce0b330d7ab918e4ee90a1",
      "parents": [
        "8d0c4e9b757bf9e0c0500f0fe22b54bb2478923c"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sat Sep 27 14:56:34 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Sep 27 14:56:34 2025 +0800"
      },
      "message": "chore(deps): bump org.apache.zookeeper:zookeeper from 3.9.3 to 3.9.4 (#6183)\n\n"
    }
  ],
  "next": "8d0c4e9b757bf9e0c0500f0fe22b54bb2478923c"
}
