)]}'
{
  "log": [
    {
      "commit": "e98b271433c206775ce694c370779f13eadd5b11",
      "tree": "af54a5897ffacd6ae3f0cde7c90ae73c80c93bf7",
      "parents": [
        "b2df4697c5c19a82c8e0645e27c9427512238571"
      ],
      "author": {
        "name": "XiaoFei",
        "email": "2017382524@qq.com",
        "time": "Sun Sep 20 14:27:52 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 20 14:27:52 2026 +0800"
      },
      "message": "fix(grpc): align protobuf message types with Seata protocol (#1170)\n\nCo-authored-by: ssshr-66 \u003cflypiggy@apache.org\u003e"
    },
    {
      "commit": "b2df4697c5c19a82c8e0645e27c9427512238571",
      "tree": "6b42f86da8e1c9fea2d2f145286f74d5e240eab5",
      "parents": [
        "598074146bc4142dd33f29d5d2a2049c90ba0f6f"
      ],
      "author": {
        "name": "Vanillaxi",
        "email": "2755364178@qq.com",
        "time": "Sun Sep 20 14:26:27 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 20 14:26:27 2026 +0800"
      },
      "message": "fix(sql): remove duplicate MySQL table cache registration (#1173)\n\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e\nCo-authored-by: ssshr-66 \u003cflypiggy@apache.org\u003e"
    },
    {
      "commit": "598074146bc4142dd33f29d5d2a2049c90ba0f6f",
      "tree": "0e4d0d83e7abfc33f9493da5ce08b44d7fad0d04",
      "parents": [
        "81701e3386f0f43a8cf93b8ed0f6a164d46eeb87"
      ],
      "author": {
        "name": "XiaoFei",
        "email": "2017382524@qq.com",
        "time": "Thu Sep 17 00:58:45 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 17 00:58:45 2026 +0800"
      },
      "message": "fix(grpc): use the correct message type for global commit requests (#1166)\n\n* fix(grpc): use the correct message type for global commit requests\n\n* fix: ensure commit request is sent and update dev notes\n\n---------\n\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "81701e3386f0f43a8cf93b8ed0f6a164d46eeb87",
      "tree": "786ab82a645ef26ba0fa966881c693b4ce52035d",
      "parents": [
        "3bf73586af81db1bd428982c93d82000d80cb1c8"
      ],
      "author": {
        "name": "Lkx-JY",
        "email": "shibalixinghe@qq.com",
        "time": "Thu Sep 17 00:47:11 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 17 00:47:11 2026 +0800"
      },
      "message": "docs: fix README install command and broken links (#1181)"
    },
    {
      "commit": "3bf73586af81db1bd428982c93d82000d80cb1c8",
      "tree": "08cd15396a81ee336c79592ab1c27f76fa31ab5a",
      "parents": [
        "6bd31c77a01de46421f6d4369108b8661f3960ee"
      ],
      "author": {
        "name": "xiaobaicai66695",
        "email": "575121043@qq.com",
        "time": "Wed Sep 02 16:34:05 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 02 16:34:05 2026 +0800"
      },
      "message": "fix: correct XA connection hold fallback (#1150)\n\nCo-authored-by: Ethan \u003cxingyue@apache.org\u003e"
    },
    {
      "commit": "6bd31c77a01de46421f6d4369108b8661f3960ee",
      "tree": "67fe448cd7f5b2749472c40b6f6019ee4c0f1b97",
      "parents": [
        "73c9a4081b3686dc8ecfd71ddaa649008e412175"
      ],
      "author": {
        "name": "Cocoyu",
        "email": "weiyu9484@gmail.com",
        "time": "Sat Aug 29 21:05:16 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Aug 30 12:05:16 2026 +0800"
      },
      "message": "fix: align RM undo log delete codec with Java wire format (#1135)\n\n* fix: support RM delete undo log request\n\n* fix ci\n\n* feat: realize undo_log deletion logic\n\n* add license header\n\n* feat: add DeleteBatchSize to undo log Config\n\n* fix: align RM undo log delete codec with Java wire format\n\n* fix: surface real undo log delete failures instead of swallowing\n\n* test: cover end-to-end undo log delete path and broadcast-skip branch\n\n* test: fix data race in TestDayValueYAML by not mutating time.Local\n\n* fix(undo): Fix security vulnerability during undo log deletion process\n\n* refactor(protocol): Simplify the decoding logic of UndoLogDeleteRequest\n\n* fix(remoting): Fixed the RowsAffected error handling issue when deleting undo logs\n\n* fix (rm): Fix parameter validation issue in undo log deletion handler\n\n* fix (rm): Fix parameter validation issue in undo log deletion handler\n\n* ci: rerun integration tests\n\n* fix: gate undo log delete to MySQL, cap batch rounds per request, and pin Java wire format with golden bytes\n\n---------\n\nCo-authored-by: everfid-ever \u003c166227111+everfid-ever@users.noreply.github.com\u003e\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e\nCo-authored-by: EVERFID \u003c3085640487@qq.com\u003e\nCo-authored-by: Ethan \u003cxingyue@apache.org\u003e"
    },
    {
      "commit": "73c9a4081b3686dc8ecfd71ddaa649008e412175",
      "tree": "eaae1bfe93041d7afcf540ceef826c67efcffd67",
      "parents": [
        "3bcd201fd293614314e018bbc6077046ff0c77e3"
      ],
      "author": {
        "name": "Mochimia",
        "email": "2755364178@qq.com",
        "time": "Thu Aug 27 19:51:32 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 27 19:51:32 2026 +0800"
      },
      "message": "fix(sql): ensure MySQL semantic batch correctness in AT mode (#1141)\n\n* fix(sql): ensure MySQL semantic batch AT correctness\n\n* fix: handle MySQL batch AT edge cases\n\n* test: use exec fallback in MySQL undo validation\n\n* fix: propagate protobuf undo conversion errors\n\n* test: use unique table name for MySQL undo validation\n\n* test(sql): avoid monkey patch leakage in undo insert tests\n\n* fix(sql): reject undo images without primary key values\n\n* fix(sql): skip undo log for unchanged updates"
    },
    {
      "commit": "3bcd201fd293614314e018bbc6077046ff0c77e3",
      "tree": "8ef01e2fb75f34282515ea497da45fdde72752a2",
      "parents": [
        "46fd409d6d6daf488b14d426b7162725de5f7492"
      ],
      "author": {
        "name": "tachibana22",
        "email": "1910190005@qq.com",
        "time": "Thu Aug 27 14:38:34 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 27 14:38:34 2026 +0800"
      },
      "message": "feat: support handling of composite primary keys and related tests (#1133)\n\n* feat: support handling of composite primary keys and related tests\n\n* feat(util): add nil guards and case-insensitive matching for pk list parsing\n\n* feat(exec): optimize micro-allocations and support composite pk in insert executor\n\n* feat(undo): align composite autoincrement and array merge for insert undo builder\n\n* fix(undo): enforce sentinel token leak prevention and enrich semantic error context\n\n* feat(executor): implement length-prefixed encoding for composite primary keys in rowListToMap\n\n* feat(test): add test for GetOrderedPkList with shuffled composite primary keys\n\n* fix(tests): improve formatting and ensure newline at end of file in test files"
    },
    {
      "commit": "46fd409d6d6daf488b14d426b7162725de5f7492",
      "tree": "3524e91d4fd64564a1aed387cb0ea3bf6e932be9",
      "parents": [
        "e74ab61d7efc331efcda4da911a0ab8e4e326437"
      ],
      "author": {
        "name": "Mochimia",
        "email": "2755364178@qq.com",
        "time": "Tue Aug 25 16:19:29 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Aug 25 16:19:29 2026 +0800"
      },
      "message": "fix(sql): consolidate rowsWithStmt close handling (#1151)\n\n* fix(sql): consolidate rowsWithStmt close handling\n\nSigned-off-by: Mochimia \u003c2755364178@qq.com\u003e\n\n* test(sql): cover rowsWithStmt prepare fallbacks\n\nSigned-off-by: Mochimia \u003c2755364178@qq.com\u003e\n\n---------\n\nSigned-off-by: Mochimia \u003c2755364178@qq.com\u003e\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "e74ab61d7efc331efcda4da911a0ab8e4e326437",
      "tree": "002aac4181309443d972b6962c9d2397b0e00b97",
      "parents": [
        "d75876ea38111c3d8a3c8f9e22c5a383c4788f60"
      ],
      "author": {
        "name": "CAICAII",
        "email": "3360776475@qq.com",
        "time": "Mon Aug 24 01:28:37 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Aug 24 01:28:37 2026 +0800"
      },
      "message": "[GSOC] Wire registry change snapshots into remoting address lifecycle (#1138)\n\n* feat(discovery): add registry change subscriptions\n\nSigned-off-by: CAICAIIs \u003c3360776475@qq.com\u003e\n\n* fix(discovery): address subscription review feedback\n\nSigned-off-by: CAICAIIs \u003c3360776475@qq.com\u003e\n\n* feat(discovery): adapt namingserver registry subscriptions\n\nSigned-off-by: CAICAIIs \u003c3360776475@qq.com\u003e\n\n* feat(remoting): consume registry address subscriptions\n\nSigned-off-by: CAICAIIs \u003c3360776475@qq.com\u003e\n\n* feat(remoting): consume registry changes in grpc\n\nSigned-off-by: CAICAIIs \u003c3360776475@qq.com\u003e\n\n* feat(discovery): add raft registry subscriptions\n\nSigned-off-by: CAICAIIs \u003c3360776475@qq.com\u003e\n\n* fix(remoting): validate cached grpc channels\n\nSigned-off-by: CAICAIIs \u003c3360776475@qq.com\u003e\n\n* fix(registry): harden dynamic address lifecycle\n\nSigned-off-by: CAICAIIs \u003c3360776475@qq.com\u003e\n\n* test(remoting): avoid empty critical section in close test\n\nSigned-off-by: CAICAIIs \u003c3360776475@qq.com\u003e\n\n---------\n\nSigned-off-by: CAICAIIs \u003c3360776475@qq.com\u003e\nCo-authored-by: ssshr-66 \u003cflypiggy@apache.org\u003e\nCo-authored-by: Ethan \u003cxingyue@apache.org\u003e\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "d75876ea38111c3d8a3c8f9e22c5a383c4788f60",
      "tree": "ba2a21bdd22bddf20a6dafbba45f19cb10cd9b5e",
      "parents": [
        "6a483372357dbf53d9aefdaf9191f9ba50c6560f"
      ],
      "author": {
        "name": "Mochimia",
        "email": "2755364178@qq.com",
        "time": "Sun Aug 23 00:08:14 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Aug 23 00:08:14 2026 +0800"
      },
      "message": "feat(sql):generic single-transaction batch helper (#1139)"
    },
    {
      "commit": "6a483372357dbf53d9aefdaf9191f9ba50c6560f",
      "tree": "cb35c59e3f4aed4a7799cb399bbf7772a784ef40",
      "parents": [
        "9992f1b7ae8fafb8fd6e8850e6977c0545c28c97"
      ],
      "author": {
        "name": "Mochimia",
        "email": "2755364178@qq.com",
        "time": "Sat Aug 22 23:30:36 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Aug 22 23:30:36 2026 +0800"
      },
      "message": "feat:support MySQL multi-statement DML in AT mode (#1140)"
    },
    {
      "commit": "9992f1b7ae8fafb8fd6e8850e6977c0545c28c97",
      "tree": "01ece46dac4cf896040638465d9fa3c60b539c9e",
      "parents": [
        "e7a1eb9e4face0e21c36d9aeb5b314222c1a30d0"
      ],
      "author": {
        "name": "Larry",
        "email": "139796123+YuZhangLarry@users.noreply.github.com",
        "time": "Thu Aug 06 17:42:21 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Aug 06 17:42:21 2026 +0800"
      },
      "message": "feat: XA branch enrollment for autoCommit statements\" (#1137)\n\n* feat: support XA branch reuse in autoCommit mode\n\nFix #904: busy buffer error when a SELECT ... FOR UPDATE is followed by\nan UPDATE in XA mode with autoCommit\u003dtrue.\n\nWhen autoCommit\u003dtrue, allow multiple SQL statements to reuse the same XA\nbranch instead of opening a new branch for every statement.\n\n- Add IsAutoCommitXABranch to distinguish autoCommit-originated XA branches\n- Introduce a DBResource-scoped XA branch registry for lifecycle and reuse\n- Track a rollback flag to avoid duplicate XA branch rollback\n- Skip undo log generation and AT-specific hooks for XA mode in BuildExecutor\n- Handle nil target in Tx.Rollback for non-XA modes\n- Add XA mode test cases for BuildExecutor\n\n* refactor: make each autoCommit statement a complete XA branch\n\nAddress review comments on the autoCommit XA path. The previous branch-reuse\nmachinery left the XA branch never actually started in autoCommit mode\n(XA START was skipped in BeginTx and never issued later), so no data was\nenrolled and phase-2 commit ran against an unprepared branch.\n\nInstead, drive a full per-statement XA lifecycle (START -\u003e exec -\u003e END -\u003e\nPREPARE -\u003e report) for each autoCommit statement, matching the connection\npool\u0027s ResetSession semantics where every checkout is a fresh branch.\n\n- BeginTx: always XA START and set xaActive, for both explicit and\n  autoCommit transactions.\n- createNewTxOnExecIfNeed: drop the GetXABranch/RegisterXABranch reuse and\n  cross-connection delegation; keep ErrSkip handling and the xaActive-guarded\n  defer rollback.\n- createOnceTxContext: restore GlobalLockRequire instead of the reuse flag.\n- start/Commit/Rollback: remove the autoCommit branch-reuse special cases.\n- Delete the unused xaRegistry and the DBResource.xaConnsByXID map plus its\n  Register/Get/UnregisterXABranch helpers (potential leak on abnormal exit).\n- Remove TransactionContext.IsAutoCommitXABranch.\n\n* fix: report phase-1 failure to TC when an autoCommit XA statement fails\n\nOn a real SQL error (non-ErrSkip), roll back through XATx.Rollback when a\nbranch was started, so the already-registered branch reports phase-1 failure\nto the TC, instead of only doing a local XA END(FAIL) + ROLLBACK on the raw\nconnection. Fall back to the connection rollback for non-autoCommit paths.\nApplied to both the exec error path and the defer safety net.\n\n* fix: harden XA autoCommit executor routing, ErrSkip cleanup, and drop dead undo-hook code\n\n- executor: route XA mode to a pass-through executor before the parser\n  fallback so unparseable SQL is never sent to an AT executor\n- conn_xa: on driver.ErrSkip after an XA branch is opened, roll the branch\n  back and return a real error instead of letting database/sql fall back to\n  non-XA execution (prevents branch leak and writes escaping the global tx)\n- undo_log_hook: remove the unreachable XA skip; the hook is never registered\n  (SQLTypeUnknown is dropped by RegisterHook), so the code was dead\n\n* test: stabilize mysql trigger tests via injection seams\n\nThe trigger tests patched getColumnMetas/getIndexes with gomonkey\nApplyPrivateMethod, which rewrites machine code and silently fails to\napply once the compiler inlines those methods on a default build,\nmaking the tests flaky (pass under -race / -gcflags\u003dall\u003d-l, fail\notherwise).\n\nSwitch to the getColumnMetasFn / getIndexesFn injection seams already\npresent on mysqlTrigger: the stubs now set those function fields\ndirectly instead of monkey-patching, and the gomonkey dependency is\ndropped from the test. Verified with default go test, -race and\n-shuffle\u003don.\n\n* fix: preallocate NamedValue slice with zero length in ExecWithValue\n\nThe pass-through branch built the converted args with\nmake([]driver.NamedValue, len(execCtx.Values)) and then appended,\nproducing a slice of double length whose leading half was empty\nNamedValue{} elements with zero Ordinals. Any driver consuming those\nargs saw phantom leading parameters.\n\nUse make(..., 0, len(...)) so the appended values are the only\nelements, with 0-based Ordinals. The executor test now asserts the\nexact converted []driver.NamedValue (length and every element),\ncovers the empty-values case, and the e.ex !\u003d nil delegation path.\n\n* fix: harden XA autoCommit branch lifecycle\n\nThree related fixes found while reviewing the autoCommit branch-reuse\npath, all on the XA connection\u0027s per-statement branch lifecycle:\n\n* Reuse: XAConn.Commit\u0027s phase-1 success path never cleared xaActive\n  (only the rollback/cleanup path did), and ResetSession lives on the\n  embedded *Conn so it could not reach the flag either. A second\n  autoCommit statement on the same pooled connection then tripped\n  BeginTx\u0027s \"xa branch is active\" guard and failed. Clear xaActive\n  after phase-1 (keeping prepareTime and the held xaBranchXid for\n  phase-2) and override XAConn.ResetSession as a backstop.\n\n* Deferred query commit: committing the branch (XA END + XA PREPARE)\n  inline while a query\u0027s rows are still open issues a command on top of\n  an unread result set, which go-sql-driver rejects as a busy buffer /\n  commands out of sync and database/sql surfaces as \"bad connection\"\n  (issue #904, e.g. SELECT ... FOR UPDATE). Defer the branch commit\n  until the rows are closed via RowsCommitOnClose, mirroring AT mode.\n\n* PREPARED-state rollback: IsAlreadyEnded only matched the IDLE-state\n  XAER_RMFAIL message, so when a branch was already prepared (XA END +\n  XA PREPARE ran but the phase-1 report to the TC failed) Rollback\n  bailed out before XA ROLLBACK, leaving the branch holding locks.\n  Match the PREPARED-state message too so XA ROLLBACK still runs.\n\nAdds regression tests for each: same-XAConn reuse across autoCommit\nstatements, deferred commit until rows close, and PREPARED-branch\nrollback still issuing XA ROLLBACK.\n\n* test: cover the #904 SELECT FOR UPDATE + UPDATE sequence\n\nAdd TestXAConn_AutoCommit_SelectForUpdateThenUpdate, an end-to-end\nregression for the exact #904 scenario: under an autoCommit global\ntransaction a \"SELECT ... FOR UPDATE\" is followed by an \"UPDATE\" on the\nsame pooled connection. It drives query -\u003e drain/close -\u003e commit branch\n1 -\u003e ResetSession -\u003e UPDATE as branch 2, and asserts each statement\nforms its own complete XA branch (two XA END + XA PREPARE + phase-1\nreports) with no busy-buffer error. Verified it fails without the\nxaActive reset fix and passes with it.\n\nAlso document the ErrSkip tradeoff at its source: because the XA branch\nis opened before the statement runs, a statement that needs the\nPrepare+Exec fallback (answers driver.ErrSkip) hard-errors under XA\nautoCommit instead of retrying. Note lazy branch-open as the follow-up\nthat would remove the tradeoff.\n\n* docs: changelog for XA autoCommit branch enrollment and #904 fix\n\nCorrect the feature note to describe the implemented behavior (each\nautoCommit statement is registered as its own complete XA branch; N\nstatements create N branches at the TC) and add the #904 bugfix entry\nfor the deferred branch commit that avoids the busy-buffer error. Mirror\nin dev_zh.md.\n\n* fix: run in-branch Prepare+Exec fallback for XA autoCommit ErrSkip\n\nUnder an XA autoCommit global transaction the branch is opened (XA START)\nbefore the statement runs, so a driver.ErrSkip retry could not be handed\nback to database/sql without leaking the branch and letting the write\nescape the global transaction. driver.ErrSkip is the common case: with the\ndefault go-sql-driver DSN (interpolateParams\u003dfalse) the direct\nExecer/Queryer answers ErrSkip for any statement carrying bind parameters.\n\nInstead of hard-erroring, createNewTxOnExecIfNeed now runs the Prepare+Exec\nfallback itself on the same physical connection (still holding XA START)\nvia execPreparedInBranch / queryPreparedInBranch, so the retried statement\nstays inside the branch and the normal XA END + XA PREPARE commit applies\nunchanged. The query variant wraps the driver rows in rowsWithStmt so the\nprepared statement outlives the result set (composing with\nRowsCommitOnClose). Mirrors AT mode\u0027s existing prepared-statement fallback.\n\n* test: cover query-path ErrSkip fallback and in-branch fallback error rollback\n\nAdd two XA autoCommit cases around the in-branch ErrSkip fallback:\n\n- ParameterizedSelectForUpdateErrSkipDefersBranchCommit: the real #904 shape,\n  a parameterized `SELECT ... FOR UPDATE WHERE id \u003d ?` whose direct Queryer\n  answers driver.ErrSkip, exercises queryPreparedInBranch AND the busy-buffer\n  guard together - the fallback rows are still wrapped in RowsCommitOnClose so\n  XA END + XA PREPARE are deferred until the rows close, then fire exactly once.\n- InBranchFallbackErrorRollsBackBranch: when the in-branch Prepare+Exec fallback\n  fails with a real (non-ErrSkip) error, the branch rolls back, reports phase-1\n  FAILED to the TC, and surfaces the concrete error (never raw ErrSkip).\n\nAdds test seams simulateQueryContextError and simulatePreparedExecError, and a\nquery field on fakePreparedStmt so the prepared exec can be targeted by query.\n\n* fix: guard nil xaBranchXid in XAConn keep/release to prevent sweep panic\n\nThe two-phase timeout checker force-closes committed XA connections after\nthe hold time elapses. CloseForce -\u003e cleanXABranchContext nils xaBranchXid\nonce the branch is no longer kept, then calls releaseIfNecessary, which\ndereferenced the now-nil *XABranchXid via String() and panicked (SIGSEGV).\n\nAdd nil-guards to keepIfNecessary and releaseIfNecessary so the background\nsweep of a committed connection no longer crashes. Surfaced by the #904\nGORM SELECT ... FOR UPDATE + UPDATE end-to-end run.\n\n---------\n\nCo-authored-by: Ethan \u003cxingyue@apache.org\u003e"
    },
    {
      "commit": "e7a1eb9e4face0e21c36d9aeb5b314222c1a30d0",
      "tree": "eca7acb6d89c20a0f3722d9f2c3c3baef2eb3284",
      "parents": [
        "2167ed1cbe765af7a76e3e863c1308f1f489ecfa"
      ],
      "author": {
        "name": "ssshr-66",
        "email": "flypiggy@apache.org",
        "time": "Tue Aug 04 12:15:19 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Aug 04 12:15:19 2026 +0800"
      },
      "message": "[feat]: support risc-v build (#1142)\n\nsupport risc-v build"
    },
    {
      "commit": "2167ed1cbe765af7a76e3e863c1308f1f489ecfa",
      "tree": "7b7fbdb9d913cffe9401c46bb163e9ddd48e0b0d",
      "parents": [
        "ee76dddc72c53e9c4e8eda22a2b6170c2b1b2b0f"
      ],
      "author": {
        "name": "AsperforMias",
        "email": "asperformias000@outlook.com",
        "time": "Sat Jul 18 20:07:06 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jul 18 20:07:06 2026 +0800"
      },
      "message": "fix: support MySQL multi-value inserts with composite primary keys (#1136)\n\n* fix: support composite pk multi-value inserts\n\n* test: cover multi-value insert composite primary keys\n\n* docs: register multi-value insert change\n\n* test: avoid race in DayValue YAML test\n\n* test: cover primary key type fallback\n\n* fix: handle insert values without column list\n\n* refactor: clarify insert primary key handling\n\n* fix: close auto increment step query rows"
    },
    {
      "commit": "ee76dddc72c53e9c4e8eda22a2b6170c2b1b2b0f",
      "tree": "8be1332f417ede6d38b76a50fe81847e7b94ffdf",
      "parents": [
        "0018e93ee23620431c8fc7c3f703c460872088b8"
      ],
      "author": {
        "name": "CAICAII",
        "email": "3360776475@qq.com",
        "time": "Fri Jul 10 21:23:21 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 10 21:23:21 2026 +0800"
      },
      "message": "[GSOC] Add discovery provider registry and address store (#1126)\n\n* refactor: add discovery provider registry\n\n* fix: close etcd client on registry shutdown\n\n* test: cover registry init failure state\n\n---------\n\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "0018e93ee23620431c8fc7c3f703c460872088b8",
      "tree": "1f00588cf3be02d59d4aa1cc61f067ce696fb8fa",
      "parents": [
        "c34171eabcf68fd5a34a7f8cd21e58f75f3ce6fc"
      ],
      "author": {
        "name": "XiaoFei",
        "email": "2017382524@qq.com",
        "time": "Fri Jul 10 21:17:55 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 10 21:17:55 2026 +0800"
      },
      "message": "feat:support rocketmq mode in tcc (#1125)\n\n* feat:support rocketmq mode in tcc\n\n* fix: make reportActionContext failure non-fatal in TCC Prepare\n\nCo-authored-by: Copilot Autofix powered by AI \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* fix: guard Commit/Rollback against missing metadata\n\n* fix: end_transaction_sender frame parsing hardening against OOM/panic\n\n* fix: address PR review comments\n\n* fix: fallback to msgId when offsetMsgId parsing fails\n\n* fix: fallback to msgId when offsetMsgId fails; if both missing/invalid, skip active END_TRANSACTION and fallback to check-back\n\n* fix: fix golangci-lint misspell errors\n\n* fix: fix CI problems\n\n* fix: fix CI problems\n\n---------\n\nCo-authored-by: Copilot Autofix powered by AI \u003c175728472+Copilot@users.noreply.github.com\u003e\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "c34171eabcf68fd5a34a7f8cd21e58f75f3ce6fc",
      "tree": "1d5b08797dbb466dbef24376dfd1695936acff9f",
      "parents": [
        "762f5b231092a5c5acf06314fdc29abf0073f2b8"
      ],
      "author": {
        "name": "princejha95",
        "email": "prince.jha@getweave.com",
        "time": "Sat Jul 04 16:33:31 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jul 04 19:03:31 2026 +0800"
      },
      "message": "fix: make DayValue serialization timezone stable (#1114)\n\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e\nCo-authored-by: ssshr-66 \u003cflypiggy@apache.org\u003e"
    },
    {
      "commit": "762f5b231092a5c5acf06314fdc29abf0073f2b8",
      "tree": "1ddeb1e0abe8c0156115339469e2185b735f2625",
      "parents": [
        "082999a98798ab2eafbb406d787d992f1b858d41"
      ],
      "author": {
        "name": "Zhifan C",
        "email": "50104361+knyk-dev@users.noreply.github.com",
        "time": "Sat Jul 04 16:22:50 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jul 04 16:22:50 2026 +0800"
      },
      "message": "feat: add saga e2e integration test (#1124)\n\nAdd saga e2e integration test\n\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "082999a98798ab2eafbb406d787d992f1b858d41",
      "tree": "be8e46263adea7f3cac38f5045f153daac5643a6",
      "parents": [
        "84c991ff94a2dd8e1d1dcaaf4e8a8cc85d24daca"
      ],
      "author": {
        "name": "ssshr-66",
        "email": "flypiggy@apache.org",
        "time": "Sat Jul 04 15:55:57 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jul 04 15:55:57 2026 +0800"
      },
      "message": "Feat：support grpc (#1113)\n\n* OSPP 2025 Go\u0026Java Version alignment  /support-grpc-protocol (#926)\n\n* upd-grpc\n\n* upd\n\n* upd\n\n* upd\n\n* fix ci\n\n* Update tcc_service_test.go\n\n* fix ci\n\n* fix ci \u0026 reply cr\n\n* fix ci\n\n* fix conflict\n\n* Update channel_manager.go\n\n* Update channel_manager.go\n\n* add\n\n* fix ci\n\n* fix ci\n\n* Update insert_executor.go\n\n---------\n\nCo-authored-by: flypiggy \u003c2923096216@qq.com\u003e\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "84c991ff94a2dd8e1d1dcaaf4e8a8cc85d24daca",
      "tree": "76b00604a7327fd3b1f119d665e354e60bc0ded6",
      "parents": [
        "baabdf73cf6a99fffef3a539bcc46e229b513866"
      ],
      "author": {
        "name": "ssshr-66",
        "email": "flypiggy@apache.org",
        "time": "Sat Jun 06 11:20:02 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jun 06 11:20:02 2026 +0800"
      },
      "message": "Feat：support postgres in xa mode (#1117)\n\n* upd\n\n* upd\n\n---------\n\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "baabdf73cf6a99fffef3a539bcc46e229b513866",
      "tree": "cfffde872778769bd48a5e771be1f07cdeae0334",
      "parents": [
        "c218fbebf2f02339821d1f12c8d544aad7946c59"
      ],
      "author": {
        "name": "CAICAII",
        "email": "3360776475@qq.com",
        "time": "Sat Jun 06 03:41:11 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jun 06 03:41:11 2026 +0800"
      },
      "message": "feature: add RocketMQ TCC integration (#1054)\n\n* feature: add RocketMQ TCC integration\n\n- Implement TCCRocketMQAction with Prepare/Commit/Rollback\n- Add SeataMQProducer wrapper for transaction message sending\n- Add SeataTransactionListener for broker check-back\n- Add producer factory with singleton pattern\n- Add XID/BranchId propagation via message properties\n\n* fix: address PR review comments\n\n- Add safe type assertion in CheckLocalTransaction\n- Replace sync.Once with mutex for retry support\n- Remove duplicate ParseTCCResource call\n- Add separate normalProducer for non-transactional messages\n- Document Commit/Rollback delegation model\n- Add explicit handling for intermediate global statuses\n- Remove unused ActionContextKeySendResult constant\n\n* fix: resolve MessageFuture race condition causing sync timeout\n\n* test: harden rocketmq tcc integration\n\n* fix: treat finished global status as unknown\n\n* refactor: improve rocketmq integration readability\n\n* test: strengthen rocketmq producer coverage\n\n---------\n\nCo-authored-by: 福來｜Fulai \u003c2923096216@qq.com\u003e\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e\nCo-authored-by: flypiggyNo3 \u003cflypiggyyoyoyo@gmail.com\u003e\nCo-authored-by: ssshr-66 \u003cflypiggy@apache.org\u003e"
    },
    {
      "commit": "c218fbebf2f02339821d1f12c8d544aad7946c59",
      "tree": "da329f89f865358c74025866dd1a486be0b239e5",
      "parents": [
        "b61d1dd502c5c226c05d4e964ffc5ab40a088660"
      ],
      "author": {
        "name": "tachibana22",
        "email": "1910190005@qq.com",
        "time": "Fri Jun 05 20:54:23 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 05 20:54:23 2026 +0800"
      },
      "message": "fix: intercept REPLACE INTO statement in AT mode (#1121) (#1123)\n\nCo-authored-by: ssshr-66 \u003cflypiggy@apache.org\u003e"
    },
    {
      "commit": "b61d1dd502c5c226c05d4e964ffc5ab40a088660",
      "tree": "dfb25afeeae6913d893942ceabfb2cf50ee9edcd",
      "parents": [
        "bf4f3f72101f9867ba786a00b09cfa4774282d21"
      ],
      "author": {
        "name": "ssshr-66",
        "email": "flypiggy@apache.org",
        "time": "Wed Jun 03 11:32:00 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 03 11:32:00 2026 +0800"
      },
      "message": "Feat: support raft (#1107)\n\n* OSPP 2025 Go\u0026Java Version alignment  / support-raft (#923)\n\nupd-raft\n\n* fix ci\n\n* Update seatago.yml\n\n* Update raft.go\n\n* upd\n\n* fix ci \u0026 reply cr\n\n* upd\n\n* style: fix gofmt formatting in base.go\n\n---------\n\nCo-authored-by: flypiggy \u003c2923096216@qq.com\u003e"
    },
    {
      "commit": "bf4f3f72101f9867ba786a00b09cfa4774282d21",
      "tree": "646f1b5e78b067824aff504ab91e1dfe38288cfc",
      "parents": [
        "a416e7c595aa4967caee4477226b158b2d8efbb8"
      ],
      "author": {
        "name": "ssshr-66",
        "email": "flypiggy@apache.org",
        "time": "Fri May 29 17:35:44 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 29 17:35:44 2026 +0800"
      },
      "message": "Feat：support postgres in at mode (#1118)\n\n* upd\n\n* Update conn_at_test.go\n\n---------\n\nCo-authored-by: Ethan \u003cxingyue@apache.org\u003e"
    },
    {
      "commit": "a416e7c595aa4967caee4477226b158b2d8efbb8",
      "tree": "71bc848e27918e8ae0a208501787234aff485cc7",
      "parents": [
        "ed9ab47e78dc234d4b186d3dec6149c610d966cb"
      ],
      "author": {
        "name": "ssshr-66",
        "email": "flypiggy@apache.org",
        "time": "Sun May 24 15:58:07 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun May 24 15:58:07 2026 +0800"
      },
      "message": "Feat: support namingserver (#1106)\n\n* OSPP 2025 Go\u0026Java Version alignment  /support-namingserver (#924)\n\n* upd-namingserver\n\n* upd\n\n* Update naming_server.go\n\n* Update seatago.yml\n\n* Update naming_server_test.go\n\n* Update naming_server_test.go\n\n* fix ci \u0026 reply cr\n\n---------\n\nCo-authored-by: flypiggy \u003c2923096216@qq.com\u003e\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "ed9ab47e78dc234d4b186d3dec6149c610d966cb",
      "tree": "e74a4d2ca2a2f813d1edc5639fe66dd7850890ef",
      "parents": [
        "8d8b6f4db2f8c13e15a2a57933b7a872a91c6776"
      ],
      "author": {
        "name": "ThunGuo",
        "email": "tew@apache.org",
        "time": "Sat May 23 17:45:03 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat May 23 17:45:03 2026 +0800"
      },
      "message": "fix: issue robot error (#1112)"
    },
    {
      "commit": "8d8b6f4db2f8c13e15a2a57933b7a872a91c6776",
      "tree": "a70bc87b16ba0a72823b31044ca81ba236164185",
      "parents": [
        "55e99b41024d9b907a3105fcef6f1d03b5ab4aa4"
      ],
      "author": {
        "name": "paddi",
        "email": "77009048+rookiewwj@users.noreply.github.com",
        "time": "Sat Apr 25 15:07:11 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Apr 25 15:07:11 2026 +0800"
      },
      "message": "refactor: Eliminate global state in remoting config and improve architecture clarity (#1031)\n\n* refactor: refact remote config\n\n* refactor: refact remote config\n\n* refactor: replace ClientIdentity with SeataConfig in remoting layer\n\n* push v2.1.0 changes logs (#1047)\n\n* fix intergrate test error (#1048)\n\n* fix: modified version to v2 (#1041)\n\n* fix: modified version\n\n* fix: modified version\n\n* feat: remove coverage\n\n* fix: change integrate_test.sh\n\n* chore: 空提交，重新推送分支触发CI/CD\n\n---------\n\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e\n\n---------\n\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e\nCo-authored-by: TewGuo \u003ctew@apache.org\u003e\nCo-authored-by: lxfeng1997 \u003c33981743+lxfeng1997@users.noreply.github.com\u003e\nCo-authored-by: Oxidaner \u003c80675726+Oxidaner@users.noreply.github.com\u003e"
    },
    {
      "commit": "55e99b41024d9b907a3105fcef6f1d03b5ab4aa4",
      "tree": "a722ac6895ae7255ff16a1a6b91bd881c64b8e95",
      "parents": [
        "976e7b9494b39ef3bf7cde2a5946080ccb3dbd03"
      ],
      "author": {
        "name": "Oxidaner",
        "email": "80675726+Oxidaner@users.noreply.github.com",
        "time": "Wed Apr 22 19:23:32 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 22 19:23:32 2026 +0800"
      },
      "message": "fix: before hooks error handling (#1096)\n\n* fix: propagate before hook errors in at executors\n\n* Update pkg/datasource/sql/exec/at/at_executor_test.go\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n---------\n\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e"
    },
    {
      "commit": "976e7b9494b39ef3bf7cde2a5946080ccb3dbd03",
      "tree": "c3667989178b4005e878eee3f0fa21a9b34881af",
      "parents": [
        "39063bb528b98741636a410f21cebd1661a4ac15"
      ],
      "author": {
        "name": "CAICAII",
        "email": "3360776475@qq.com",
        "time": "Wed Apr 22 19:18:44 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 22 19:18:44 2026 +0800"
      },
      "message": "fix: implement XA mode commitOnXA() and LockQuery() (#1061)\n\n* fix: implement XA mode commitOnXA() and LockQuery()\n\n- tx_xa.go: implement commitOnXA() to execute XA END + XA PREPARE and report status to TC\n- xa_resource_manager.go: LockQuery() delegates to rmRemoting for global lock checking\n- tx.go: add xaConn field to support XA transactions\n- conn_xa.go: set xaConn reference in BeginTx\n\n* fix: comprehensive XA mode improvements and fixes\n\nThis commit addresses PR #1061 feedback and Oracle architectural review findings:\n\n**Reviewer Feedback (thunguo):**\n- Extract anonymous xaConn interface into named XAConnection type for better readability\n\n**Code Quality Improvements:**\n- Add comprehensive logging to commitOnXA() following existing patterns (log.Infof/Errorf)\n- Add detailed documentation comments explaining XA two-phase commit protocol flow\n- Improve test coverage with 11 new unit tests for XATx functionality\n\n**Critical Bug Fixes:**\n1. Fix BranchReport error handling - errors are now properly checked and logged\n2. Complete XA Rollback lifecycle - now executes XA END(TMFAIL) + XA ROLLBACK + TC reporting\n3. Fix SQL error reporting - createNewTxOnExecIfNeed() now reports PhaseoneFailed to TC\n4. Fix nil pointer safety - set tx.target after real transaction is created in XAConn.BeginTx()\n5. Update prepareTime after successful XA PREPARE for correct connection hold/timeout behavior\n\n**Files Changed:**\n- pkg/datasource/sql/tx.go: Extract XAConnection interface, add xaConn field\n- pkg/datasource/sql/tx_xa.go: Implement commitOnXA() with logging and error handling, complete Rollback() lifecycle\n- pkg/datasource/sql/conn_xa.go: Fix nil pointer issue, add SQL error reporting, update prepareTime\n- pkg/datasource/sql/tx_xa_test.go: Add comprehensive unit tests (11 tests covering all scenarios)\n\n**Test Results:**\n- All existing tests pass\n- 11 new tests added and passing\n- Build successful with no errors\n\nCo-authored-by: Oracle Review \u003carchitectural-review\u003e\n\n* fix: tighten xa branch reporting lifecycle\n\n* fix: align xa branch tx lifecycle\n\n* test: tighten xa review follow-ups\n\n---------\n\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "39063bb528b98741636a410f21cebd1661a4ac15",
      "tree": "ee123fe5cd3086a7df2cd711e1de9ca9095be84d",
      "parents": [
        "4a684d6fd969a6f8b69adae9e3e2e158b56a5a6b"
      ],
      "author": {
        "name": "Cheyne Chen",
        "email": "cheyne94@outlook.com",
        "time": "Thu Apr 16 18:47:00 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 16 18:47:00 2026 +0800"
      },
      "message": "docs: add bilingual quick start guides (#1105)\n\ndocs: add quick start guide"
    },
    {
      "commit": "4a684d6fd969a6f8b69adae9e3e2e158b56a5a6b",
      "tree": "39620d03e1783cb09513715e917ea5e1332c9ec9",
      "parents": [
        "9a11740a49ea547e3282bbd4375f1efc1cfe1734"
      ],
      "author": {
        "name": "waterbucket",
        "email": "116327739+bigbigbigwaterbucket@users.noreply.github.com",
        "time": "Sat Apr 11 20:49:39 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Apr 11 20:49:39 2026 +0800"
      },
      "message": "fix: drain cached fence logs for cleanup task (#1085)\n\n* fix: drain cached fence logs for cleanup task\n\n* fix: requeue fence logs on drain failure; fix tests and cleanInterval race\n\n* fix: add logCache retry limit and drainCacheTask shutdown test\n\n---------\n\nCo-authored-by: CocaElbow \u003cshran2004@outlook.com\u003e\nCo-authored-by: flypiggyNo3 \u003cflypiggyyoyoyo@gmail.com\u003e\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "9a11740a49ea547e3282bbd4375f1efc1cfe1734",
      "tree": "455e8fea0085fab1b9b7a7128bc8c2c0454c0efd",
      "parents": [
        "b2bc7a29a72cd7670e57176a9e51dcc2175c652b"
      ],
      "author": {
        "name": "ThunGuo",
        "email": "tew@apache.org",
        "time": "Sat Apr 11 18:43:04 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Apr 11 18:43:04 2026 +0800"
      },
      "message": "refactor: abstract multi-database XA resource layer with registry pattern (#1090)\n\n* refactor: abstract multi-database XA resource layer with registry pattern\n\n* Update pkg/datasource/sql/types/types_test.go\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n---------\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e"
    },
    {
      "commit": "b2bc7a29a72cd7670e57176a9e51dcc2175c652b",
      "tree": "3518b38dac7a0f89fae9344f839b147039f6be9d",
      "parents": [
        "d70e3cb8abb23255f3e59e071e61983ef0504ec8"
      ],
      "author": {
        "name": "Zhifan C",
        "email": "50104361+knyk-dev@users.noreply.github.com",
        "time": "Tue Apr 07 21:21:09 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 07 21:21:09 2026 +0800"
      },
      "message": "fix: rollback auto-created AT tx on query and exec errors (#1083)\n\nCo-authored-by: Konnyaku \u003c50104361+AKonnyaku@users.noreply.github.com\u003e\nCo-authored-by: CocaElbow \u003cshran2004@outlook.com\u003e\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "d70e3cb8abb23255f3e59e071e61983ef0504ec8",
      "tree": "667822b445a3b62fb2d5bdb6e15f6a973ddb67e1",
      "parents": [
        "185b109b385457953d0f8ba2a7abfdcb8e0812d0"
      ],
      "author": {
        "name": "ThunGuo",
        "email": "tew@apache.org",
        "time": "Mon Apr 06 19:29:59 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Apr 06 19:29:59 2026 +0800"
      },
      "message": "fix: issue translate robot (#1102)\n\n* fix: issue translate robot\n\n* fix: issue translate robot"
    },
    {
      "commit": "185b109b385457953d0f8ba2a7abfdcb8e0812d0",
      "tree": "51eb65583dfd7561da85356b5aab3e682676c2ec",
      "parents": [
        "e085c9b1292ef4b81c08c0fea6aae7588df53e20"
      ],
      "author": {
        "name": "ThunGuo",
        "email": "tew@apache.org",
        "time": "Mon Apr 06 19:29:30 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Apr 06 19:29:30 2026 +0800"
      },
      "message": "Fix: integrate test workflow (#1101)\n\n* fix: integrate test ci workflow\n\n* fix: integrate test ci workflow"
    },
    {
      "commit": "e085c9b1292ef4b81c08c0fea6aae7588df53e20",
      "tree": "604e781fc48483eafdf57882692bfc290732fadf",
      "parents": [
        "1a031ae35ad9d68e7226f99302860716db853c69"
      ],
      "author": {
        "name": "Zhifan C",
        "email": "50104361+knyk-dev@users.noreply.github.com",
        "time": "Fri Apr 03 11:24:13 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Apr 03 11:24:13 2026 +0800"
      },
      "message": "fix: align TCC resource manager fallback behavior (#1091)\n\nCo-authored-by: Konnyaku \u003c50104361+AKonnyaku@users.noreply.github.com\u003e\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "1a031ae35ad9d68e7226f99302860716db853c69",
      "tree": "645ded967967ff55967f4ebd840cc7623904156d",
      "parents": [
        "f081d6efc9ed650cc926476353380ca797267055"
      ],
      "author": {
        "name": "Zhifan C",
        "email": "50104361+knyk-dev@users.noreply.github.com",
        "time": "Thu Apr 02 11:22:19 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 02 11:22:19 2026 +0800"
      },
      "message": "fix: synchronize consistent hash refresh (#1081)\n\n* fix: synchronize consistent hash refresh\n\n* test: add concurrent race coverage for consistent hash refresh\n\n---------\n\nCo-authored-by: Konnyaku \u003c50104361+AKonnyaku@users.noreply.github.com\u003e"
    },
    {
      "commit": "f081d6efc9ed650cc926476353380ca797267055",
      "tree": "d542d11b234a541f102d88ee0979c9db84926ac8",
      "parents": [
        "423a4dc895d05252d2cde147446081bf072f98b1"
      ],
      "author": {
        "name": "CAICAII",
        "email": "3360776475@qq.com",
        "time": "Sat Mar 28 19:51:48 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Mar 28 19:51:48 2026 +0800"
      },
      "message": "fix: preserve distinct TCC fence log identities (#1079)"
    },
    {
      "commit": "423a4dc895d05252d2cde147446081bf072f98b1",
      "tree": "cb62bfaccd101b4a8545850f205cbad5f82ab41d",
      "parents": [
        "1b526c361555fcb6d7ef50221ba296bc022ae674"
      ],
      "author": {
        "name": "Zhifan C",
        "email": "50104361+knyk-dev@users.noreply.github.com",
        "time": "Sat Mar 28 13:38:13 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Mar 28 13:38:13 2026 +0800"
      },
      "message": "fix: preserve head map keys when value is empty (#1070)\n\n* fix: preserve head map keys when value is empty\n\n* test: cover empty head map keys\n\n---------\n\nCo-authored-by: Konnyaku \u003c50104361+AKonnyaku@users.noreply.github.com\u003e\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "1b526c361555fcb6d7ef50221ba296bc022ae674",
      "tree": "1720fa3fb14498f0396d420a2a86d2ca0958220e",
      "parents": [
        "a93f0ae4bdebc1dd62adc74782a3a0db13ca4215"
      ],
      "author": {
        "name": "ThunGuo",
        "email": "tew@apache.org",
        "time": "Sun Mar 22 22:15:47 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Mar 22 22:15:47 2026 +0800"
      },
      "message": "fix: resolve undo_log duplicate PK when column names have escape characters (#1065)\n\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e"
    },
    {
      "commit": "a93f0ae4bdebc1dd62adc74782a3a0db13ca4215",
      "tree": "695c40ef8d59aa3a17e02cb22f767296d29a1906",
      "parents": [
        "2cce81bc00446d0849c12f6f0742829eaae72138"
      ],
      "author": {
        "name": "Zhifan C",
        "email": "50104361+knyk-dev@users.noreply.github.com",
        "time": "Wed Mar 18 02:36:31 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Mar 18 02:36:31 2026 +0800"
      },
      "message": "ci: add workflow to block WIP pull requests (#1064)\n\n* ci: block merging WIP pull requests\n\n* ci: improve WIP checks in labeler workflow\n\n---------\n\nCo-authored-by: Konnyaku \u003c50104361+AKonnyaku@users.noreply.github.com\u003e\nCo-authored-by: ThunGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "2cce81bc00446d0849c12f6f0742829eaae72138",
      "tree": "9a3d4fec55dad6b76fdb6984bbec675dc5c7ed46",
      "parents": [
        "987b9c4bb8cc6c3c5d31c06938d849d313e4b651"
      ],
      "author": {
        "name": "simple-xair",
        "email": "61924870+simple-xair@users.noreply.github.com",
        "time": "Sat Mar 14 19:35:38 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Mar 14 19:35:38 2026 +0800"
      },
      "message": "feat: add QueryContext for AT mode (#1039)\n\n* feat: add QueryContext for AT mode\n\n* refactor: split createNewTxOnExec\n\n* fix: add missing /v2 suffix in import paths\n\n---------\n\nCo-authored-by: lxfeng1997 \u003c33981743+lxfeng1997@users.noreply.github.com\u003e"
    },
    {
      "commit": "987b9c4bb8cc6c3c5d31c06938d849d313e4b651",
      "tree": "25f070eac5a2e4010fb56c973e1cea541c08a051",
      "parents": [
        "66e777708c1b3538a717cc380f03e7a856a8ff0a"
      ],
      "author": {
        "name": "WyRainBow",
        "email": "weiyu9484@gmail.com",
        "time": "Tue Mar 10 17:35:53 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 10 17:35:53 2026 +0800"
      },
      "message": "fix: background goroutines cannot exit gracefully (#996)\n\n* fix: Background Goroutines Cannot Exit Gracefully\n\n* trigger ci: rerun integration tests\n\n* trigger ci: rerun integration tests"
    },
    {
      "commit": "66e777708c1b3538a717cc380f03e7a856a8ff0a",
      "tree": "e07babe5b7ead7d675399cd5e608298e578cc29e",
      "parents": [
        "3ba877c7822bdd0b9cbf79a195fbbe7d3a88c2f2"
      ],
      "author": {
        "name": "Oxidaner",
        "email": "80675726+Oxidaner@users.noreply.github.com",
        "time": "Sun Feb 08 21:39:39 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Feb 08 21:39:39 2026 +0800"
      },
      "message": "fix: modified version to v2 (#1041)\n\n* fix: modified version\n\n* fix: modified version\n\n* feat: remove coverage\n\n* fix: change integrate_test.sh\n\n* chore: 空提交，重新推送分支触发CI/CD\n\n---------\n\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e"
    },
    {
      "commit": "3ba877c7822bdd0b9cbf79a195fbbe7d3a88c2f2",
      "tree": "3dc9a6f80ceccf90701992c1e46e947d1c1affc7",
      "parents": [
        "f5d4da7a7bd544cffa51a77ce9e5d93e02ec3b60"
      ],
      "author": {
        "name": "FengZhang",
        "email": "zfcode@qq.com",
        "time": "Sun Feb 08 21:26:35 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Feb 08 21:26:35 2026 +0800"
      },
      "message": "fix intergrate test error (#1048)\n\n"
    },
    {
      "commit": "f5d4da7a7bd544cffa51a77ce9e5d93e02ec3b60",
      "tree": "a7fcd593d0ee233650695cefd384552dcf9d5a22",
      "parents": [
        "b18bcb019b65fd8677f478e4197a6e228d41e56e"
      ],
      "author": {
        "name": "lxfeng1997",
        "email": "33981743+lxfeng1997@users.noreply.github.com",
        "time": "Thu Feb 05 10:56:34 2026 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Feb 05 10:56:34 2026 +0800"
      },
      "message": "push v2.1.0 changes logs (#1047)\n\n"
    },
    {
      "commit": "b18bcb019b65fd8677f478e4197a6e228d41e56e",
      "tree": "4b45d4d5b519a88886aa54936fd5ade7abb596ee",
      "parents": [
        "e2e185630224849bd38396798cbba4c8245e20be"
      ],
      "author": {
        "name": "simple-xair",
        "email": "61924870+simple-xair@users.noreply.github.com",
        "time": "Sat Dec 20 19:34:11 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 20 19:34:11 2025 +0800"
      },
      "message": "test: add unit test for pkg/rm/init (#1004)\n\nCo-authored-by: flypiggy \u003c2923096216@qq.com\u003e\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e"
    },
    {
      "commit": "e2e185630224849bd38396798cbba4c8245e20be",
      "tree": "4f763086169dad4f9eb56b0f1fcb4b1d62bcd799",
      "parents": [
        "4ea3470548929ae2dea930a22e0dafb593d58a46"
      ],
      "author": {
        "name": "simple-xair",
        "email": "61924870+simple-xair@users.noreply.github.com",
        "time": "Sat Dec 20 19:33:38 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 20 19:33:38 2025 +0800"
      },
      "message": "test: add unit test for pkg/util/flagext/register (#1005)\n\nCo-authored-by: Tew \u003cfinntew@outlook.com\u003e\nCo-authored-by: flypiggy \u003c2923096216@qq.com\u003e"
    },
    {
      "commit": "4ea3470548929ae2dea930a22e0dafb593d58a46",
      "tree": "d5a221e13f8261d792e8f05884e7077da904ebcf",
      "parents": [
        "f73b6684b761a04270cdcad8c0f7afaa50df3cc2"
      ],
      "author": {
        "name": "simple-xair",
        "email": "61924870+simple-xair@users.noreply.github.com",
        "time": "Sat Dec 20 19:32:12 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 20 19:32:12 2025 +0800"
      },
      "message": "test: add unit test for pkg/rm/config (#1006)\n\nCo-authored-by: flypiggy \u003c2923096216@qq.com\u003e"
    },
    {
      "commit": "f73b6684b761a04270cdcad8c0f7afaa50df3cc2",
      "tree": "b0ac77f05527c58ea11237d279e926ad15842779",
      "parents": [
        "efdd88af96f21ac999bf3d9ef984f2044245274d"
      ],
      "author": {
        "name": "simple-xair",
        "email": "61924870+simple-xair@users.noreply.github.com",
        "time": "Sat Dec 20 19:31:44 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 20 19:31:44 2025 +0800"
      },
      "message": "test: add unit test for pkg/rm/tcc/config (#1007)\n\nCo-authored-by: Tew \u003cfinntew@outlook.com\u003e\nCo-authored-by: flypiggy \u003c2923096216@qq.com\u003e"
    },
    {
      "commit": "efdd88af96f21ac999bf3d9ef984f2044245274d",
      "tree": "33a8410af21694a462c87edae513bb0de12822dc",
      "parents": [
        "623c02ef5aebf1d86fcc6aa26e65faecf9337e64"
      ],
      "author": {
        "name": "lokidundun",
        "email": "loki16@qq.com",
        "time": "Sat Dec 20 16:31:05 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 20 16:31:05 2025 +0800"
      },
      "message": "optimize: add contribution intention check box to issue template (#1025)\n\nadd contibution box\n\nCo-authored-by: TewGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "623c02ef5aebf1d86fcc6aa26e65faecf9337e64",
      "tree": "2d04d020467149ff0bf72311ecd22b65c828f9e8",
      "parents": [
        "b90d3ae0a444ba7aab6cf4e51cfbeb3eb3bcc077"
      ],
      "author": {
        "name": "花国栋",
        "email": "76423224+HGD-coder@users.noreply.github.com",
        "time": "Sat Dec 20 15:53:31 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 20 15:53:31 2025 +0800"
      },
      "message": "bugfix: fix connection leaks and potential nil pointer panic(#991) (#997)\n\n* bugfix: fix connection leaks and potential nil pointer panic(#991)\n\n* bugfix: fix connection leaks and potential nil pointer panic(#991)\n\n---------\n\nCo-authored-by: jimin \u003cslievrly@163.com\u003e\nCo-authored-by: Tew \u003cfinntew@outlook.com\u003e\nCo-authored-by: TewGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "b90d3ae0a444ba7aab6cf4e51cfbeb3eb3bcc077",
      "tree": "89a59bddb1e5d02703c69e8d6a9cc1f5434a94a5",
      "parents": [
        "4bdc7fff4e4c8dd5ed5d75e59f02e9f410e3df1f"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Fri Dec 19 11:33:59 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Dec 19 11:33:59 2025 +0800"
      },
      "message": "optimize: enhance RoundRobinLoadBalance performance (#995)\n\n* optimize: enhance RoundRobinLoadBalance performance\n\n* add test\n\n* fix\n\n* add configurable retry for round-robin selector\n\n---------\n\nCo-authored-by: Tew \u003cfinntew@outlook.com\u003e\nCo-authored-by: TewGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "4bdc7fff4e4c8dd5ed5d75e59f02e9f410e3df1f",
      "tree": "15ce583b5b4594db9b81cc711bce61d27e10eb15",
      "parents": [
        "c39fcc63f7eb0b19c8b2d98f5ec668066ae3a676"
      ],
      "author": {
        "name": "xuzifu666",
        "email": "xuzifu666@gmail.com",
        "time": "Fri Dec 19 11:24:03 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Dec 19 11:24:03 2025 +0800"
      },
      "message": "feat: Support snappy compression type (#1027)\n\nCo-authored-by: TewGuo \u003ctew@apache.org\u003e"
    },
    {
      "commit": "c39fcc63f7eb0b19c8b2d98f5ec668066ae3a676",
      "tree": "2e3cdb7983bcd85c8999027d2eaf63a3e39018f1",
      "parents": [
        "774046b21a81259e56b8d2825276276e94a410fa"
      ],
      "author": {
        "name": "FengZhang",
        "email": "zfcode@qq.com",
        "time": "Thu Dec 18 14:47:07 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 18 14:47:07 2025 +0800"
      },
      "message": "Feature/saga (#1030)\n\n* feature: init saga framework (#635)\n\ninit saga framework\n\n* refactor: refactor saga scaffold to break import cycles (#647)\n\n* feature: add serverice task parse in statelang (#650)\n\n* feature: add saga persistence layer (#649)\n\n* feat: add grpc invoker in saga mode (#668)\n\n* feat: add grpc invoker in saga mode\n\n* fix: fix some chores\n\n* feature: add default implementation for StateMachineConfig (#669)\n\n* feature saga ：support generate id by Snowflake (#670)\n\n* feature: sequential execution of state machine in Saga (#681)\n\n* feat: add func invoker (#744)\n\n* add func task state\n\n* [to-reply] feature: support saga multi type config (#741)\n\n* added yaml format of statelang related test data\r\n\r\n* feature: implement multi type config parser\r\n\r\n* adjust statemachine_json_parser to suit config parser\r\n\r\n* bugfix: fix the problem of failure to parse \"ServiceName\"\r\n\r\n* adjust statemachine_parser to be compatible with yaml\r\n\r\n* add apache License, add some comments, and make some logical adjustments\r\n\r\n* update state_machine_new_designer.yaml\r\n\r\n* optimize and improve the unit test of config parser\r\n\r\n* refactor config parser\r\n\r\n* add apache License\r\n\r\n* update\n\n* [Refactor] Migrate StateMachineObject to client/config and unify config parsing with koanf (#785)\n\n* optimize saga config reuse\n\n* upd-test\n\n* Modularize SagaConfig into independent configuration structure\n\n* feat: HttpServiceTaskState Support (#769)\n\n* support http invoker for sage engine\n\n* fix comment language\n\n* Feature: Database persistence for seata-go Saga state machine (#794)\n\n* implement state machine repository\n\n* temporary recording\n\n* temporary recording\n\n* temporary storage\n\n* Supplementary test\n\n* feat: Supplement the statelog_repository section in Database persistence for Saga state machine (#800)\n\n* fix: Wrong commit\n\n* feat:add state_log_repository\n\n* fix: conflicts and wrong commit\n\n* fix: delete Remove redundant singleton patterns\n\n* Feature/saga interface optimization (#778)\n\nfeature: saga Interface optimization\n\n* refactor: implement pending TODOs in machine status_decision logic (#808)\n\n* refactor: implement pending TODOs in machine status_decision logic\n\n* feat(status-decision): add detailed logs to methods for better debugging\n\n* Feat cel expression (#788)\n\n* implement cel expression\n\n* move sequence expression into a new file\n\n* mv expression factory into a new file\n\n* move expression factory manager into a new file\n\n* implement cel expression factory and add test\n\n* move expression resolver into a new file\n\n* add parse expression struct test\n\n* update\n\n* update go.mod\n\n---------\n\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e\n\n* change the StateLangStore type (#812)\n\n* Revert \"bugfix：Remove issue translation workflow as usthe/issues-translate-action@v2.7 does not allow issues in apache/incubator-seata-go\" (#822)\n\nRevert \"bugfix：Remove issue translation workflow as usthe/issues-translate-ac…\"\n\nThis reverts commit 018486951c9031caacf151c018f647e81b2f1c11.\n\n* refactor-engine/core (#838)\n\n* refactor-engine/core\n\n* Decouple the core package\n\n* Feature: finish implementation for StateMachineConfig  (#805)\n\n* finish implementation for StateMachineConfig\n\n* reuse the exiting logic from statemachine_config_parser.go\n\n* add_license\u0026change_cn_to_en\u0026fix_logic\n\n* sort imports \u0026 rename struct \u0026 change the visbility\n\n* Merge feature/saga into feature/saga-config-selection-and-loading\n\n* fix_conflict_from_expression-pr\n\n* fix_test\u0026Lock-logic_from_invoker.go\n\n* change_method_name\n\n* add-seqGenerator_init\n\n* add-event_bus\u0026event_publiser-init\n\n* add-status_desicion-init \u0026 enhence-validate_method\n\n* refactor: move error_expression-about to expr\n\n* fix: stateMachineResources-load\n\n* fix - test\n\n* Optimize the judgment of persistence-related components.\n\n* Optimize the logic of loadconfig and statemachineresource.\n\n* add-store-init\n\n* refactor-engine/core\n\n* Decouple the core package\n\n* Update default_statemachine_config_test.go\n\n---------\n\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e\n\n* Decouple the transaction from the statelog (#841)\n\n* Decouple the transaction from the statelog\n\n* Decouple the transaction from the statelog\n\n* Decouple the transaction from the statelog\n\n* Resolve Merge Conflicts, Add Persistence Initialization, and Optimize Tests (#847)\n\n* fix-conflict\u0026add-store-component-init\u0026fix-test\n\n* Update process_ctrl_statemachine_engine.go\n\n* Feature/add script manager\u0026actuator (#868)\n\n* add script manager \u0026 actuator\n\n* Otto package replaces Goja package\n\n* Resolve the issues raised by Copilot\n\n* add test for vm-pool\n\n* update GetServiceInvoker method\n\n* Implement SagaResource and SagaResourceManager (#855)\n\n* feat : impl SagaResource #843\n\n* feat : impl SagaResource #843\n\n* feat : impl SagaResourceManager #843\n\n* feat : impl SagaResourceManager BranchRollback #843\n\n* feat : impl handler_saga #843\n\n* feat : impl invalid_exception_test #843\n\n* update #843\n\n* update:elegant code #843\n\n* abstracting tm branch registration out to rm and add test #846\n\n* test #846\n\n* add licensed  #846\n\n* replace panic to return #843\n\n* update  #843\n\n* update init and handler_saga  #843\n\n---------\n\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e\n\n* Support Saga mode config initialization (#871)\n\n* remove redundant logic and methods\n\nMake the loadconfig method only responsible for loading static parameters and remove redundant memory storage\n\n* add the init method and refine other logic\n\n* remove redundant logic and methods\n\nMake the loadconfig method only responsible for loading static parameters and remove redundant memory storage\n\n* add the init method and refine other logic\n\n* update\n\n* upd\n\n---------\n\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e\n\n* Saga end-to-end verification (#897)\n\n* saga support\n\n* fix bug\n\n* merge code\n\n* format\n\n* fix vet\n\n* fix vet\n\n* fix vet and lincese checker\n\n* fix lincese chekcer\n\n---------\n\nCo-authored-by: wt_better \u003cm18091785089@163.com\u003e\nCo-authored-by: Xiangkun Yin \u003c32592585+ptyin@users.noreply.github.com\u003e\nCo-authored-by: Jingliu Xiong \u003c928124786@qq.com\u003e\nCo-authored-by: FanOne \u003ccocainecong@outlook.com\u003e\nCo-authored-by: marsevilspirit \u003cmarsevilspirit@gmail.com\u003e\nCo-authored-by: FinnTew \u003cnanomoa76@gmail.com\u003e\nCo-authored-by: flypiggy \u003c150204110+flypiggyyoyoyo@users.noreply.github.com\u003e\nCo-authored-by: lxfeng1997 \u003c33981743+lxfeng1997@users.noreply.github.com\u003e\nCo-authored-by: 1kasa \u003c134709672+1kasa@users.noreply.github.com\u003e\nCo-authored-by: 深几许 \u003c143302746+LucienShen-Liu@users.noreply.github.com\u003e\nCo-authored-by: Wiggins \u003c125641755+MinatoWu@users.noreply.github.com\u003e"
    },
    {
      "commit": "774046b21a81259e56b8d2825276276e94a410fa",
      "tree": "58531ad0156005e9e6e9eff209f89042c665046f",
      "parents": [
        "b818a65c0865a39799dfd10f64b86db8bf69a9e9"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Sat Dec 06 20:09:02 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 06 20:09:02 2025 +0800"
      },
      "message": "optimize: optimize parsePkValues to reduce nested loops (#1018)\n\n* optimize: optimize parsePkValues to reduce nested loops\n\n* optimize parsePkValues primary key extraction\n\n* fix"
    },
    {
      "commit": "b818a65c0865a39799dfd10f64b86db8bf69a9e9",
      "tree": "cf8151e2b66e8b0dbdabf4bb34525598542a0a42",
      "parents": [
        "6437e520047f0cfebdc408f62135c0a3d70b9310"
      ],
      "author": {
        "name": "xuzifu666",
        "email": "xuzifu666@gmail.com",
        "time": "Sat Dec 06 02:43:44 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 06 02:43:44 2025 +0800"
      },
      "message": "Fix: Unable to return the correct type for Zip compression (#1013)\n\n"
    },
    {
      "commit": "6437e520047f0cfebdc408f62135c0a3d70b9310",
      "tree": "c00892f2ddfe7ac3b0eb5ace170db8b0f5ab1d88",
      "parents": [
        "afb86509eb0cca555f897a94953a61a52f5da608"
      ],
      "author": {
        "name": "xuzifu666",
        "email": "xuzifu666@gmail.com",
        "time": "Tue Dec 02 19:22:56 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Dec 02 19:22:56 2025 +0800"
      },
      "message": "Connections leaks in resource manager (#1011)\n\nfix: Connections leaks in resource manager"
    },
    {
      "commit": "afb86509eb0cca555f897a94953a61a52f5da608",
      "tree": "282728012f34397dabc66dadfa51d8f7cbb67899",
      "parents": [
        "8632371dc93a507bf1597c59c0a871eee0c56e53"
      ],
      "author": {
        "name": "flypiggy",
        "email": "2923096216@qq.com",
        "time": "Tue Nov 25 20:07:25 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Nov 25 20:07:25 2025 +0800"
      },
      "message": "test: Improve test coverage for pkg/datasource/sql/exec (#999)\n\n"
    },
    {
      "commit": "8632371dc93a507bf1597c59c0a871eee0c56e53",
      "tree": "0e16aa3d0c83a8cb5d072f7ba0f9a8ee3f114389",
      "parents": [
        "174d2f8544e654b6d9d10fab42575fa664d60d3f"
      ],
      "author": {
        "name": "xuzifu666",
        "email": "xuzifu666@gmail.com",
        "time": "Mon Nov 24 16:29:43 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 24 16:29:43 2025 +0800"
      },
      "message": "fix: Data Race in ConsistentHash LoadBalance (#998)\n\nCo-authored-by: Tew \u003cfinntew@outlook.com\u003e"
    },
    {
      "commit": "174d2f8544e654b6d9d10fab42575fa664d60d3f",
      "tree": "f14399140f61069b78b9a19dd3389bbad24196a1",
      "parents": [
        "34dfa8221611f7489e0403abc6b88e4275749739"
      ],
      "author": {
        "name": "深几许",
        "email": "2271709214@qq.com",
        "time": "Wed Nov 19 17:24:49 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 19 17:24:49 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/datasource/sql/undo (#971)\n\n* test: improve test coverage for pkg/datasource/sql/undo\n\n* fix: correct spelling errors\n\n* style: format code with go fmt for undo package\n\n* Correcting spelling errors\n\n* fix: skip mysql undo manager tests requiring database connections\n\n* fix: resolve staticcheck SA4006 unused variable warnings\n\nMove manager variable creation after t.Skip() calls in MySQL undo tests\nto prevent unused variable warnings from golangci-lint staticcheck.\n\n🤖 Generated with [Claude Code](https://claude.ai/code)\n\nCo-Authored-By: Claude \u003cnoreply@anthropic.com\u003e\n\n* Conflict handling\n\n* reslove conficts\n\n* test: improve test coverage for pkg/datasource/sql/undo package\n\n* style: apply gofmt fixes\n\n* improve test coverage for pkg/datasource/sql/undo\n\n---------\n\nCo-authored-by: Claude \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "34dfa8221611f7489e0403abc6b88e4275749739",
      "tree": "e685902629303ec4a206676d04a0a84b1360ce32",
      "parents": [
        "72f847e472a22aa9cf512c20b90aac36f2997bf7"
      ],
      "author": {
        "name": "Eric Wang",
        "email": "iwongjian666@gmail.com",
        "time": "Mon Nov 17 05:00:50 2025 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 17 10:00:50 2025 +0800"
      },
      "message": "test:  Improve test coverage  (#983)\n\n"
    },
    {
      "commit": "72f847e472a22aa9cf512c20b90aac36f2997bf7",
      "tree": "5d391e85fb32cb6da24757ca95b5383558e58143",
      "parents": [
        "b15d9d368d4b5951c9d7613b0bdf01fef37a9c04"
      ],
      "author": {
        "name": "深几许",
        "email": "2271709214@qq.com",
        "time": "Sun Nov 16 13:13:02 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Nov 16 13:13:02 2025 +0800"
      },
      "message": "test: add unit tests for pkg/constant, pkg/client, and pkg/tm (#988)\n\n* test: add unit tests for pkg/constant, pkg/client, and pkg/tm\n  - Add comprehensive tests for constant values and types\n  - Add client initialization function tests\n  - Add tm config, constants, and init function tests\n\n* bugfix：remove race condition in TestInitTm_Concurrency tes\n\n* fix: ci\n\n---------\n\nCo-authored-by: jimin \u003cslievrly@163.com\u003e"
    },
    {
      "commit": "b15d9d368d4b5951c9d7613b0bdf01fef37a9c04",
      "tree": "4b98c42ddd189fd4be315954df0374ff6177f04d",
      "parents": [
        "d76ac395326cf34fe34b7b89ddb6e0759e1e2783"
      ],
      "author": {
        "name": "Eric Wang",
        "email": "iwongjian666@gmail.com",
        "time": "Tue Nov 11 05:25:33 2025 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Nov 11 10:25:33 2025 +0800"
      },
      "message": "bugfix: close *sql.Rows returned by QueryContext to prevent resource leak (#989)\n\n"
    },
    {
      "commit": "d76ac395326cf34fe34b7b89ddb6e0759e1e2783",
      "tree": "6af0d937eba3d38824f4baee0a7b4ea8bad7b1ad",
      "parents": [
        "c0a7ab09e272e190164bd051567378ca61f002cf"
      ],
      "author": {
        "name": "flypiggy",
        "email": "2923096216@qq.com",
        "time": "Mon Nov 10 00:53:53 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 10 00:53:53 2025 +0800"
      },
      "message": "test: Improve test coverage for pkg/datasource/sql/datasource/mysql  (#965)\n\n"
    },
    {
      "commit": "c0a7ab09e272e190164bd051567378ca61f002cf",
      "tree": "62324d5c668bcc58685412dd13ae25f828e1c89e",
      "parents": [
        "be1ad86e75087e8e233a3a46a6aec025b81af9b7"
      ],
      "author": {
        "name": "lxfeng1997",
        "email": "33981743+lxfeng1997@users.noreply.github.com",
        "time": "Sat Nov 08 18:15:14 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 08 18:15:14 2025 +0800"
      },
      "message": "bugfix: error image when use null value as image query condition in insert on duplicate #704 (#725) (#884)\n\n* bugfix: error image when use null value as image query condition in insert on duplicate #704 (#725)\n\n* bugfix #704\n\n* bugfix #704\n\n* bugfix704-2\n\n* bugfix-test-2\n\n* bugfix-test-2\n\n* pr725 bugfix\n\n---------\n\nCo-authored-by: JayLiu \u003c38887641+luky116@users.noreply.github.com\u003e\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e\n\n* fix: Solve the conflict problem of introducing multiple versions of knadh (#772)\n\n* fix: Solve the conflict problem of introducing multiple versions of knadh\n\n* fix: fix ci fail\n\n---------\n\nCo-authored-by: JayLiu \u003c38887641+luky116@users.noreply.github.com\u003e\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e\n\n* the ability to automatically run unit tests after creating a pull request.  (#764)\n\n* feat: add unit test workflow\n\n* feat:the ability to automatically run unit tests after creating a pull request.\n\n* feat:the ability to automatically run unit tests after creating a pull request.\n\n* feat:the ability to automatically run unit tests after creating a pull request.\n\n* feat:the ability to automatically run unit tests after creating a pull request.\n\n* feat:the ability to automatically run unit tests after creating a pull request.\n\n* feat:the ability to automatically run unit tests after creating a pull request.\n\n* Optimize/at build lock key performance  (#837)\n\n* Refer to buildlockkey2 optimization #829\n\n* Time complexity O(NM)-\u003e O(NK) about buildlockkey and buildlockkey2  Increased readability  #829\n\n* update import sort #829\n\n* update Encapsulation into util packages #829\n\n* Support Update join (#761)\n\n* duplicate image row for update join\n\n* update join condition placeholder param error\n\n* update join bugfix\n\n* Open test annotations\n\n* recover update executor\n\n* recover update test\n\n* recover update test\n\n* modified version param\n\n---------\n\nCo-authored-by: JayLiu \u003c38887641+luky116@users.noreply.github.com\u003e\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e\n\n---------\n\nCo-authored-by: jimin \u003cslievrly@163.com\u003e\nCo-authored-by: JayLiu \u003c38887641+luky116@users.noreply.github.com\u003e\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e\nCo-authored-by: Wiggins \u003c125641755+MinatoWu@users.noreply.github.com\u003e\nCo-authored-by: lxfeng1997 \u003c33981743+lxfeng1997@users.noreply.github.com\u003e\n\n* merge master\n\n* Improve the test cases\n\n* upload upload-artifact to v4\n\n* chore(ci): update Go version to 1.20.14\n\n---------\n\nCo-authored-by: Aster Zephyr \u003c2046084122@qq.com\u003e\nCo-authored-by: JayLiu \u003c38887641+luky116@users.noreply.github.com\u003e\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e\nCo-authored-by: panlei-coder \u003c62509266+panlei-coder@users.noreply.github.com\u003e\nCo-authored-by: jimin \u003cslievrly@163.com\u003e\nCo-authored-by: Wiggins \u003c125641755+MinatoWu@users.noreply.github.com\u003e"
    },
    {
      "commit": "be1ad86e75087e8e233a3a46a6aec025b81af9b7",
      "tree": "de555e1c5a614473eb4e8a97a2cbd0e499e71269",
      "parents": [
        "85417fd35ff37d55753d963c95417e12346fafa9"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Sat Nov 08 18:14:32 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 08 18:14:32 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/integration/dubbo (#968)\n\n* test: improve test coverage for pkg/integration/dubbo\n\n* refactor\n\n---------\n\nCo-authored-by: jimin \u003cslievrly@163.com\u003e"
    },
    {
      "commit": "85417fd35ff37d55753d963c95417e12346fafa9",
      "tree": "b69bcbfc6da540f34c78084ac45ccd43e5e3909e",
      "parents": [
        "4d2e765bdead0518f167b6264e074731a4c66956"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Sat Nov 08 18:12:41 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 08 18:12:41 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/remoting/mock (#980)\n\n* test: improve test coverage for pkg/remoting/mock\n\n* fix\n\n* fix\n\n---------\n\nCo-authored-by: jimin \u003cslievrly@163.com\u003e"
    },
    {
      "commit": "4d2e765bdead0518f167b6264e074731a4c66956",
      "tree": "eda3d4254775cacf8811b9360800ccd1e4c90d13",
      "parents": [
        "faa32f07441b67b82c0b10d2022bd2bdd44ba467"
      ],
      "author": {
        "name": "jimin",
        "email": "slievrly@163.com",
        "time": "Sat Nov 08 17:56:02 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 08 17:56:02 2025 +0800"
      },
      "message": "optimize: fix git status issue (#894)\n\nfix git status issue"
    },
    {
      "commit": "faa32f07441b67b82c0b10d2022bd2bdd44ba467",
      "tree": "4be9955594b5dcffcb097270250aa9db9906c1b0",
      "parents": [
        "510949286ae65df9199ae0a4e10e9e05b4609b7e"
      ],
      "author": {
        "name": "Eric Wang",
        "email": "iwongjian666@gmail.com",
        "time": "Sat Nov 08 05:33:01 2025 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 08 10:33:01 2025 +0800"
      },
      "message": "test: add some test (#979)\n\n"
    },
    {
      "commit": "510949286ae65df9199ae0a4e10e9e05b4609b7e",
      "tree": "fa1134663b0257fa6a0707d872a8d80a193118c1",
      "parents": [
        "4dd7de669b88bfb8487f24ca78a08638dd1ffdc0"
      ],
      "author": {
        "name": "Eric Wang",
        "email": "iwongjian666@gmail.com",
        "time": "Fri Nov 07 19:33:55 2025 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 08 00:33:55 2025 +0800"
      },
      "message": "test: improve test coverage for discovery/mock and integration (#985)\n\n"
    },
    {
      "commit": "4dd7de669b88bfb8487f24ca78a08638dd1ffdc0",
      "tree": "a9f54b8da945c12a150df97be61a311c281e7d39",
      "parents": [
        "eaf4b270871862d372d10e8229c008387e353b7f"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Sat Nov 08 00:16:19 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 08 00:16:19 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/datasource (#973)\n\n"
    },
    {
      "commit": "eaf4b270871862d372d10e8229c008387e353b7f",
      "tree": "5163d0dd5bca0e80e7f0a2fa88f73eed805a8dc6",
      "parents": [
        "b74a0be4bb54bbaa4b59f3119ff279d18dc75dd8"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Sat Nov 08 00:14:29 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 08 00:14:29 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/datasource/sql/util (#974)\n\n"
    },
    {
      "commit": "b74a0be4bb54bbaa4b59f3119ff279d18dc75dd8",
      "tree": "69ed70fb4a8a0e1e00bfae4609add9d1a3aa85bb",
      "parents": [
        "9ca5bd826a58dbd4ff04edd8cd279e62ce10324d"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Sat Nov 08 00:09:12 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 08 00:09:12 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/remoting/config (#981)\n\n"
    },
    {
      "commit": "9ca5bd826a58dbd4ff04edd8cd279e62ce10324d",
      "tree": "db7af3aeda44b82a8beb0a0c405fc833b76453a0",
      "parents": [
        "7f181b6ac479bd0d8d723b5bde795175084ba7c8"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Sat Nov 08 00:08:22 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 08 00:08:22 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/protocol/branch (#982)\n\n"
    },
    {
      "commit": "7f181b6ac479bd0d8d723b5bde795175084ba7c8",
      "tree": "21b8d2aadf6173183fe7a72041f645eeebd50d1a",
      "parents": [
        "0747d09d6e290c8e29aa2d37a3561f7d008e889b"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Sat Nov 08 00:02:04 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 08 00:02:04 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/discovery/mock (#984)\n\n"
    },
    {
      "commit": "0747d09d6e290c8e29aa2d37a3561f7d008e889b",
      "tree": "c5d10e885dd99d7c33148bb7f75f8367c66c0a3e",
      "parents": [
        "1de80ee838666298a5a6e93eda8b6612b804b436"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Thu Nov 06 10:33:09 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 06 10:33:09 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/util/log (#964)\n\n"
    },
    {
      "commit": "1de80ee838666298a5a6e93eda8b6612b804b436",
      "tree": "97bdc952048cbc17ba7b03dccd39d1ee5d5054c7",
      "parents": [
        "205f8d914ef095a6af61f4f3bab77de0c065e41b"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Thu Nov 06 10:29:15 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 06 10:29:15 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/util/errors  (#962)\n\n"
    },
    {
      "commit": "205f8d914ef095a6af61f4f3bab77de0c065e41b",
      "tree": "6c1e5fd270bc30a7e9be49a6326945042453217d",
      "parents": [
        "e56d368bd09d195927aec8210516f365a28488ab"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Thu Nov 06 10:28:12 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 06 10:28:12 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/util/convert (#963)\n\n"
    },
    {
      "commit": "e56d368bd09d195927aec8210516f365a28488ab",
      "tree": "40f6b866f1ab849699ad6111b3e1f8687015e64f",
      "parents": [
        "da8fbf5e915603d5e3c7f593e5ea114d5813c17c"
      ],
      "author": {
        "name": "flypiggy",
        "email": "2923096216@qq.com",
        "time": "Thu Nov 06 10:27:18 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 06 10:27:18 2025 +0800"
      },
      "message": "test: Improve test coverage for pkg/datasource/sql/exec/config (#966)\n\n"
    },
    {
      "commit": "da8fbf5e915603d5e3c7f593e5ea114d5813c17c",
      "tree": "cc9c68930b17ad502e0581020c1f49ec336307a5",
      "parents": [
        "c26ad1cfc6ac16a17203db998f387043d2c55a58"
      ],
      "author": {
        "name": "flypiggy",
        "email": "2923096216@qq.com",
        "time": "Thu Nov 06 10:25:26 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 06 10:25:26 2025 +0800"
      },
      "message": "Improve test coverage for pkg/datasource/sql/undo/base  (#967)\n\n"
    },
    {
      "commit": "c26ad1cfc6ac16a17203db998f387043d2c55a58",
      "tree": "92fc8964e6cfaf5448e8a38833f810bb56740f55",
      "parents": [
        "4420143b7fd145d42d19ec59da8d39cd9a61812e"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Thu Nov 06 10:24:33 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 06 10:24:33 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/integration/gin (#969)\n\n"
    },
    {
      "commit": "4420143b7fd145d42d19ec59da8d39cd9a61812e",
      "tree": "b3a8a05b1233ccc50e3c84411b7518414864177a",
      "parents": [
        "075cb83c20bd70d73353c8d503f22986c65003c2"
      ],
      "author": {
        "name": "flypiggy",
        "email": "2923096216@qq.com",
        "time": "Wed Nov 05 11:27:45 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 05 11:27:45 2025 +0800"
      },
      "message": "test: Improve test coverage for pkg/datasource/sql/undo/factor  (#972)\n\n"
    },
    {
      "commit": "075cb83c20bd70d73353c8d503f22986c65003c2",
      "tree": "15ec42bb84c0fdb4b6b82d82ee4e06934a2ccec5",
      "parents": [
        "ad92ad8117c97af48d3d4c6d907bd4a8db4f85b7"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Wed Nov 05 11:23:25 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 05 11:23:25 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/integration/grpc (#970)\n\n"
    },
    {
      "commit": "ad92ad8117c97af48d3d4c6d907bd4a8db4f85b7",
      "tree": "36876906998a36f080018d735e3b1a63052d5f40",
      "parents": [
        "df6a5a9bdde4fac874dd1d30bbe5bca905edf2ba"
      ],
      "author": {
        "name": "EVERFID",
        "email": "166227111+everfid-ever@users.noreply.github.com",
        "time": "Wed Nov 05 11:20:46 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 05 11:20:46 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/datasource/sql/hook (#978)\n\n"
    },
    {
      "commit": "df6a5a9bdde4fac874dd1d30bbe5bca905edf2ba",
      "tree": "5ecf4292a91925293c8dbe5b09dde656e1c53505",
      "parents": [
        "cc5edf7a1982e2da55f9e71e74ee38722325c340"
      ],
      "author": {
        "name": "深几许",
        "email": "2271709214@qq.com",
        "time": "Wed Nov 05 11:06:03 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 05 11:06:03 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/datasource/sql/types (#975)\n\n"
    },
    {
      "commit": "cc5edf7a1982e2da55f9e71e74ee38722325c340",
      "tree": "44e471a433fc1f122759cf890b8059db3ad76725",
      "parents": [
        "190b3b95b49494aa433fafcdba785d1658a4d825"
      ],
      "author": {
        "name": "深几许",
        "email": "2271709214@qq.com",
        "time": "Tue Nov 04 23:26:07 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Nov 04 23:26:07 2025 +0800"
      },
      "message": "test: improve test coverage for pkg/datasource/sql/mock (#976)\n\n"
    },
    {
      "commit": "190b3b95b49494aa433fafcdba785d1658a4d825",
      "tree": "cbbdc3146c6c12f57884547a4f18627bce1333bb",
      "parents": [
        "7d32bd30869a14bf6572726b8ef5f3ebd871da48"
      ],
      "author": {
        "name": "ian",
        "email": "141902143+yumosx@users.noreply.github.com",
        "time": "Mon Oct 27 10:44:31 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 27 10:44:31 2025 +0800"
      },
      "message": "optimize: correct time format (#902)\n\n"
    },
    {
      "commit": "7d32bd30869a14bf6572726b8ef5f3ebd871da48",
      "tree": "b49d9bad9eb0568cce5c549c62c70d7dcf8f6f84",
      "parents": [
        "19c5e30687a904242a3f990233ca5cb8b3393cbc"
      ],
      "author": {
        "name": "WyRainBow",
        "email": "weiyu9484@gmail.com",
        "time": "Thu Oct 09 10:26:43 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 09 10:26:43 2025 +0800"
      },
      "message": "optimize: add missing VERSION file and version support (#895)\n\n"
    },
    {
      "commit": "19c5e30687a904242a3f990233ca5cb8b3393cbc",
      "tree": "068cf8f91aed93e5d6c75ab2048a6cd0743e1f04",
      "parents": [
        "a1c37641f95f42572c4a300c83f6ca64d4e269c9"
      ],
      "author": {
        "name": "FengZhang",
        "email": "zfcode@qq.com",
        "time": "Sun Oct 05 17:11:10 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Oct 05 17:11:10 2025 +0800"
      },
      "message": "update go version (#880) (#931)\n\n"
    },
    {
      "commit": "a1c37641f95f42572c4a300c83f6ca64d4e269c9",
      "tree": "18d907f1411193334ca19fef245175aafe5f60cc",
      "parents": [
        "a1816a93e07761099f7ca597cced1f8bae9587d3"
      ],
      "author": {
        "name": "ian",
        "email": "141902143+yumosx@users.noreply.github.com",
        "time": "Sun Sep 28 15:09:58 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 28 15:09:58 2025 +0800"
      },
      "message": "refactor(gin): improve log message (#901)\n\n* refactor(gin): simplify xid check and improve error message\n\n* imporve log\n\n* adjust the code\n\n* update"
    },
    {
      "commit": "a1816a93e07761099f7ca597cced1f8bae9587d3",
      "tree": "b4b9bc636ce30564fba5e6f8ac0ccb19ff2268f1",
      "parents": [
        "f6da25c312ba9cf3bcd8aec4d3b15227f8bf83c0"
      ],
      "author": {
        "name": "jimin",
        "email": "slievrly@163.com",
        "time": "Sun Sep 28 09:46:22 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 28 09:46:22 2025 +0800"
      },
      "message": "optimize:  fix go vet issue (#892)\n\nfix go vet\n\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e"
    },
    {
      "commit": "f6da25c312ba9cf3bcd8aec4d3b15227f8bf83c0",
      "tree": "3f848398c70feca3df8356a02c7798f2d771ed1f",
      "parents": [
        "a4815531d483437aab2a033e34f9e567ccfaf29e"
      ],
      "author": {
        "name": "jimin",
        "email": "slievrly@163.com",
        "time": "Wed Sep 24 14:31:58 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 24 14:31:58 2025 +0800"
      },
      "message": "optimize: fix license header format (#893)\n\nfix license header format"
    },
    {
      "commit": "a4815531d483437aab2a033e34f9e567ccfaf29e",
      "tree": "b3d627eaae2f5a89ee0f6af1cf3e7775440fabda",
      "parents": [
        "d50ec63b3678814ddc178e14c2537dfd536fc39b"
      ],
      "author": {
        "name": "heliang",
        "email": "147408835+heliang666s@users.noreply.github.com",
        "time": "Sun Sep 14 11:50:59 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 14 11:50:59 2025 +0800"
      },
      "message": "fix：fix bugs detected by doubao (#883)\n\n* fix：fix bugs detected by doubao\n\n* fix: Fix CI lint errors and test interface issues"
    },
    {
      "commit": "d50ec63b3678814ddc178e14c2537dfd536fc39b",
      "tree": "45ecdbc0290e44064b3fdaafe306ba9813e7c1d9",
      "parents": [
        "f25b22c8f03aa63317ae212a97345f071a24fa39"
      ],
      "author": {
        "name": "FinnTew",
        "email": "finntew@foxmail.com",
        "time": "Sun Sep 14 09:20:05 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 14 09:20:05 2025 +0800"
      },
      "message": "fix: undefined changes node in license checker (#882)\n\n* fix: undefined changes node in license checker\n\n* fix: add logical judgment license checker\n\n* fix: update changes impl in license checker\n\n* fix"
    },
    {
      "commit": "f25b22c8f03aa63317ae212a97345f071a24fa39",
      "tree": "01913ad3d9aa7178599f58146e98c87ad4d316dc",
      "parents": [
        "05db834335f51e82f22190edf260334615409d81"
      ],
      "author": {
        "name": "Wiggins",
        "email": "125641755+MinatoWu@users.noreply.github.com",
        "time": "Tue Sep 09 10:08:46 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 09 10:08:46 2025 +0800"
      },
      "message": "Fix active xa rollback failure and added error message judgment (#875)\n\n* Add exception judgment #708\n\n* Add exception judgment #708\n\n* update const\n\n* update test\n\n* Update pkg/datasource/sql/conn_xa.go\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n* Update pkg/datasource/sql/conn_xa.go\n\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e\n\n---------\n\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e\nCo-authored-by: 吴孝宇 \u003cwuxiaoyu2@xiaohongshu.com\u003e\nCo-authored-by: Copilot \u003c175728472+Copilot@users.noreply.github.com\u003e"
    },
    {
      "commit": "05db834335f51e82f22190edf260334615409d81",
      "tree": "6fe1e5396bc4303fdbbb15f563e24fd72699fbfb",
      "parents": [
        "32ce488dacd01fb64c2be951cea7bcf551b6a2ee"
      ],
      "author": {
        "name": "FengZhang",
        "email": "zfcode@qq.com",
        "time": "Sat Aug 30 15:43:33 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Aug 30 15:43:33 2025 +0800"
      },
      "message": "Update release notes (#870)\n\nupdate changelog"
    },
    {
      "commit": "32ce488dacd01fb64c2be951cea7bcf551b6a2ee",
      "tree": "ea8cbda0420fa11afedb62a03c351fe71308c09e",
      "parents": [
        "22f5f7c27bf42933784545bb004e8e0fd24d954f"
      ],
      "author": {
        "name": "ShenzhenGopher",
        "email": "166468408+ResilientSZUer@users.noreply.github.com",
        "time": "Sat Aug 30 15:28:39 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Aug 30 15:28:39 2025 +0800"
      },
      "message": "fix: Fix GetScanSlice not handling all column types in AT mode (#874)\n\n* bugfix: Fix GetScanSlice not handling all column types in AT mode\n\n* bugfix: Fix GetScanSlice not handling all column types in AT mode"
    },
    {
      "commit": "22f5f7c27bf42933784545bb004e8e0fd24d954f",
      "tree": "61444903ea107245de2afc6f6ac6e5e2b89952b5",
      "parents": [
        "b89343b3a5b1c94c6fc18bf4e14a8517f7fcc98d"
      ],
      "author": {
        "name": "tanzegen",
        "email": "39859116+tanzegen@users.noreply.github.com",
        "time": "Sat Aug 30 15:20:42 2025 +0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Aug 30 15:20:42 2025 +0800"
      },
      "message": "fix:The WithGlobalTx method returns the exception caught by recover (#849)\n\n* fix:The WithGlobalTx method returns the exception caught by recover\n\n* fix:add case of panic non-error type;WithGlobalTx return a specific exception\n\n* fix:Combine error judgments into a single conditional statement to make the code more readable.\n\n---------\n\nCo-authored-by: FengZhang \u003czfcode@qq.com\u003e"
    }
  ],
  "next": "b89343b3a5b1c94c6fc18bf4e14a8517f7fcc98d"
}
