<freeStyleBuild _class='hudson.model.FreeStyleBuild'><action _class='hudson.model.CauseAction'><cause _class='com.cloudbees.jenkins.GitHubPushCause'><shortDescription>Started by GitHub push by ti-chi-bot[bot]</shortDescription></cause><cause _class='com.cloudbees.jenkins.GitHubPushCause'><shortDescription>Started by GitHub push by ti-chi-bot[bot]</shortDescription></cause></action><action></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>16493</buildableDurationMillis><buildableTimeMillis>16493</buildableTimeMillis><buildingDurationMillis>41539</buildingDurationMillis><executingTimeMillis>41539</executingTimeMillis><executorUtilization>1.0</executorUtilization><queuingDurationMillis>22397</queuingDurationMillis><queuingTimeMillis>22397</queuingTimeMillis><subTaskCount>0</subTaskCount><totalDurationMillis>63936</totalDurationMillis><waitingDurationMillis>5904</waitingDurationMillis><waitingTimeMillis>5904</waitingTimeMillis></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><originmain _class='hudson.plugins.git.util.Build'><buildNumber>1597</buildNumber><marked><SHA1>2225489dfa9c5bbd2a0a80fc66b1b4551f237842</SHA1><branch><SHA1>2225489dfa9c5bbd2a0a80fc66b1b4551f237842</SHA1><name>origin/main</name></branch></marked><revision><SHA1>2225489dfa9c5bbd2a0a80fc66b1b4551f237842</SHA1><branch><SHA1>2225489dfa9c5bbd2a0a80fc66b1b4551f237842</SHA1><name>origin/main</name></branch></revision></originmain></buildsByBranchName><lastBuiltRevision><SHA1>2225489dfa9c5bbd2a0a80fc66b1b4551f237842</SHA1><branch><SHA1>2225489dfa9c5bbd2a0a80fc66b1b4551f237842</SHA1><name>origin/main</name></branch></lastBuiltRevision><remoteUrl>https://github.com/PingCAP-QE/ci.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'><artifactsUrl>https://do.pingcap.net/jenkins/blue/organizations/jenkins/seed/detail/seed/1597/artifacts</artifactsUrl><changesUrl>https://do.pingcap.net/jenkins/blue/organizations/jenkins/seed/detail/seed/1597/changes</changesUrl><displayUrl>https://do.pingcap.net/jenkins/blue/organizations/jenkins/seed/detail/seed/1597/</displayUrl><testsUrl>https://do.pingcap.net/jenkins/blue/organizations/jenkins/seed/detail/seed/1597/tests</testsUrl></action><building>false</building><displayName>#1597</displayName><duration>41539</duration><estimatedDuration>50732</estimatedDuration><fullDisplayName>seed #1597</fullDisplayName><id>1597</id><inProgress>false</inProgress><keepLog>false</keepLog><number>1597</number><queueId>3661113</queueId><result>SUCCESS</result><timestamp>1775708366991</timestamp><url>https://do.pingcap.net/jenkins/job/seed/1597/</url><builtOn>default-lhrjl</builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tools/reporters/ci/flaky-tests/core/GithubIssueManager.ts</affectedPath><affectedPath>tools/reporters/ci/flaky-tests/core/GithubIssueManager.test.ts</affectedPath><affectedPath>tools/reporters/ci/flaky-tests/docs/README.md</affectedPath><affectedPath>tools/reporters/ci/flaky-tests/render/HtmlRenderer.ts</affectedPath><affectedPath>tools/reporters/ci/flaky-tests/core/IssueUtils.ts</affectedPath><affectedPath>prow-jobs/pingcap-qe/ci/periodics.yaml</affectedPath><commitId>2225489dfa9c5bbd2a0a80fc66b1b4551f237842</commitId><timestamp>1775708340000</timestamp><author><absoluteUrl>https://do.pingcap.net/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>chore(tools): update flaky report job and implementation (#4486)

This pull request introduces improvements to the GitHub issue
integration for the flaky test reporter, enhancing both the matching
logic for existing issues and the discoverability of issues via search.
The main changes include a more robust search strategy that combines
exact and loose title matching, improved ranking of candidate issues,
and updates to the HTML report to reflect these enhancements.
Additionally, the schedule for certain periodic jobs has been adjusted.

**GitHub Issue Matching and Search Improvements:**

* The reporter now searches for issues using both exact title and loose
keyword matching, increasing the likelihood of finding relevant issues
even if the titles differ slightly. The ranking logic prioritizes open
issues and better matches, and de-duplicates candidates.
(`tools/reporters/ci/flaky-tests/core/GithubIssueManager.ts`
[[1]](diffhunk://#diff-bbf5b1e359b7ef42a9547f82763bbd291bf9880f90c43763a059ab1300291b5aR51-R57)
[[2]](diffhunk://#diff-bbf5b1e359b7ef42a9547f82763bbd291bf9880f90c43763a059ab1300291b5aR422-R496)
[[3]](diffhunk://#diff-bbf5b1e359b7ef42a9547f82763bbd291bf9880f90c43763a059ab1300291b5aL309-R316)
[[4]](diffhunk://#diff-4c5a649c350b04163a243802563709599be84fff205dab420d542a3daf71986fR84-R101)
* Added utility functions for normalizing issue titles and building
search expressions to support the new matching logic.
(`tools/reporters/ci/flaky-tests/core/IssueUtils.ts`
[tools/reporters/ci/flaky-tests/core/IssueUtils.tsR84-R101](diffhunk://#diff-4c5a649c350b04163a243802563709599be84fff205dab420d542a3daf71986fR84-R101))

**Reporting and Documentation Updates:**

* The HTML report now generates search links that include both exact and
loose matching terms, making it easier for users to discover related
issues. The documentation is updated to describe the new search
behavior. (`tools/reporters/ci/flaky-tests/render/HtmlRenderer.ts`
[[1]](diffhunk://#diff-4ca7e6d2c3e328549bdd948412762e87f2dbf79d499c173ab9fc971e9db40c49L491-R503)
[[2]](diffhunk://#diff-4ca7e6d2c3e328549bdd948412762e87f2dbf79d499c173ab9fc971e9db40c49L462-R478)
[[3]](diffhunk://#diff-4ca7e6d2c3e328549bdd948412762e87f2dbf79d499c173ab9fc971e9db40c49L505-R520)
[[4]](diffhunk://#diff-4ca7e6d2c3e328549bdd948412762e87f2dbf79d499c173ab9fc971e9db40c49L542-R562);
`tools/reporters/ci/flaky-tests/docs/README.md`
[[5]](diffhunk://#diff-e162c65e3a6c93d06a8c86af46500b96320812261d3c0f17d3f47911558a2b72L181-R181)
[[6]](diffhunk://#diff-e162c65e3a6c93d06a8c86af46500b96320812261d3c0f17d3f47911558a2b72L347-R347)

**Testing:**

* New tests have been added to ensure that the matching logic correctly
prefers open issues, exact matches, and can fall back to loose matches
when needed.
(`tools/reporters/ci/flaky-tests/core/GithubIssueManager.test.ts`
[tools/reporters/ci/flaky-tests/core/GithubIssueManager.test.tsR122-R234](diffhunk://#diff-5c4c2d13e7282ba280710e36c51015ff2a025007b5ec7b5314c36f4bf9667f90R122-R234))

**Periodic Job Schedule Updates:**

* The schedules for `periodic-reporter-flaky-tests-tidb` and
`periodic-reporter-flaky-tests-tidb-v85` have been adjusted to run at
8:05 and 8:30 UTC+8, respectively, instead of their previous times.
(`prow-jobs/pingcap-qe/ci/periodics.yaml`
[[1]](diffhunk://#diff-627e88a7426360b8626ef9a0002f3558221924cb7e816f08afa52255839473d7L30-R30)
[[2]](diffhunk://#diff-627e88a7426360b8626ef9a0002f3558221924cb7e816f08afa52255839473d7L120-R120)
</comment><date>2026-04-09 04:19:00 +0000</date><id>2225489dfa9c5bbd2a0a80fc66b1b4551f237842</id><msg>chore(tools): update flaky report job and implementation (#4486)</msg><path><editType>edit</editType><file>tools/reporters/ci/flaky-tests/core/GithubIssueManager.test.ts</file></path><path><editType>edit</editType><file>tools/reporters/ci/flaky-tests/core/GithubIssueManager.ts</file></path><path><editType>edit</editType><file>tools/reporters/ci/flaky-tests/docs/README.md</file></path><path><editType>edit</editType><file>tools/reporters/ci/flaky-tests/core/IssueUtils.ts</file></path><path><editType>edit</editType><file>tools/reporters/ci/flaky-tests/render/HtmlRenderer.ts</file></path><path><editType>edit</editType><file>prow-jobs/pingcap-qe/ci/periodics.yaml</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://do.pingcap.net/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName><id>noreply</id></culprit></freeStyleBuild>