<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>17126</buildableDurationMillis><buildableTimeMillis>17126</buildableTimeMillis><buildingDurationMillis>41366</buildingDurationMillis><executingTimeMillis>41366</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>6381</waitingDurationMillis><waitingTimeMillis>6381</waitingTimeMillis></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><originmain _class='hudson.plugins.git.util.Build'><buildNumber>1646</buildNumber><marked><SHA1>fe7117f7f23eb90fee672c63ef17e8299c4bf3e9</SHA1><branch><SHA1>fe7117f7f23eb90fee672c63ef17e8299c4bf3e9</SHA1><name>origin/main</name></branch></marked><revision><SHA1>fe7117f7f23eb90fee672c63ef17e8299c4bf3e9</SHA1><branch><SHA1>fe7117f7f23eb90fee672c63ef17e8299c4bf3e9</SHA1><name>origin/main</name></branch></revision></originmain></buildsByBranchName><lastBuiltRevision><SHA1>fe7117f7f23eb90fee672c63ef17e8299c4bf3e9</SHA1><branch><SHA1>fe7117f7f23eb90fee672c63ef17e8299c4bf3e9</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'></action><building>false</building><displayName>#1646</displayName><duration>41366</duration><estimatedDuration>43847</estimatedDuration><fullDisplayName>seed #1646</fullDisplayName><id>1646</id><inProgress>false</inProgress><keepLog>false</keepLog><number>1646</number><queueId>3673258</queueId><result>SUCCESS</result><timestamp>1776853717308</timestamp><url>https://do.pingcap.net/jenkins/job/seed/1646/</url><builtOn>default-mtb5n</builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.ci/security-policy-allowlist.txt</affectedPath><affectedPath>prow-jobs/pingcap-qe/ci/presubmits.yaml</affectedPath><affectedPath>.ci/verify-jenkins-credential-policy.sh</affectedPath><affectedPath>.ci/test-verify-jenkins-credential-policy.sh</affectedPath><affectedPath>docs/guides/CI.md</affectedPath><commitId>fe7117f7f23eb90fee672c63ef17e8299c4bf3e9</commitId><timestamp>1776853689000</timestamp><author><absoluteUrl>https://do.pingcap.net/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>ci(security): add regression presubmit for credential policy checks (#4546)

## Summary
Continue phased delivery after PR #4541 (remaining scope):
- add regression test script
`.ci/test-verify-jenkins-credential-policy.sh`
- add new presubmit `pull-test-security-policy-scripts` to run these
tests automatically
- document the new regression gate in `docs/guides/CI.md`

## Why
The earlier phase introduced credential policy checks. This PR adds
positive/negative regression coverage so policy rules are stable and
safe to evolve.

## Test
- `bash -n .ci/test-verify-jenkins-credential-policy.sh`
- `bash .ci/test-verify-jenkins-credential-policy.sh`
</comment><date>2026-04-22 10:28:09 +0000</date><id>fe7117f7f23eb90fee672c63ef17e8299c4bf3e9</id><msg>ci(security): add regression presubmit for credential policy checks</msg><path><editType>edit</editType><file>prow-jobs/pingcap-qe/ci/presubmits.yaml</file></path><path><editType>add</editType><file>.ci/test-verify-jenkins-credential-policy.sh</file></path><path><editType>edit</editType><file>.ci/verify-jenkins-credential-policy.sh</file></path><path><editType>add</editType><file>.ci/security-policy-allowlist.txt</file></path><path><editType>edit</editType><file>docs/guides/CI.md</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://do.pingcap.net/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit></freeStyleBuild>