Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 11 additions & 11 deletions data/consolidated/all_prs.json
Original file line number Diff line number Diff line change
Expand Up @@ -7248,38 +7248,38 @@
"statusCheckRollup": [
{
"__typename": "CheckRun",
"completedAt": "2025-09-09T18:48:26Z",
"completedAt": "2025-09-23T08:57:26Z",
"conclusion": "SUCCESS",
"detailsUrl": "https://github.com/jenkinsci/git-push-plugin/actions/runs/17592297993/job/49975778047",
"detailsUrl": "https://github.com/jenkinsci/git-push-plugin/actions/runs/17940776745/job/51016675462",
"name": "security-scan / scan",
"startedAt": "2025-09-09T18:35:31Z",
"startedAt": "2025-09-23T08:54:24Z",
"status": "COMPLETED",
"workflowName": "Jenkins Security Scan"
},
{
"__typename": "StatusContext",
"context": "continuous-integration/jenkins/pr-head",
"startedAt": "2025-09-09T18:36:20Z",
"startedAt": "2025-09-23T08:55:07Z",
"state": "ERROR",
"targetUrl": "https://ci.jenkins.io/job/Plugins/job/git-push-plugin/job/PR-103/5/display/redirect"
"targetUrl": "https://ci.jenkins.io/job/Plugins/job/git-push-plugin/job/PR-103/6/display/redirect"
},
{
"__typename": "CheckRun",
"completedAt": "2025-09-09T18:36:19Z",
"completedAt": "2025-09-23T08:55:07Z",
"conclusion": "FAILURE",
"detailsUrl": "https://ci.jenkins.io/job/Plugins/job/git-push-plugin/job/PR-103/5/display/redirect",
"detailsUrl": "https://ci.jenkins.io/job/Plugins/job/git-push-plugin/job/PR-103/6/display/redirect",
"name": "Jenkins",
"startedAt": "2025-09-09T18:35:44Z",
"startedAt": "2025-09-23T08:54:42Z",
"status": "COMPLETED",
"workflowName": ""
},
{
"__typename": "CheckRun",
"completedAt": "2025-09-09T18:48:12Z",
"completedAt": "2025-09-23T08:57:17Z",
"conclusion": "SUCCESS",
"detailsUrl": "https://github.com/jenkinsci/git-push-plugin/runs/49976790457",
"detailsUrl": "https://github.com/jenkinsci/git-push-plugin/runs/51016896452",
"name": "Jenkins Security Scan",
"startedAt": "2025-09-09T18:48:09Z",
"startedAt": "2025-09-23T08:57:14Z",
"status": "COMPLETED",
"workflowName": ""
}
Expand Down
22 changes: 11 additions & 11 deletions data/consolidated/open_prs.json
Original file line number Diff line number Diff line change
Expand Up @@ -4835,38 +4835,38 @@
"statusCheckRollup": [
{
"__typename": "CheckRun",
"completedAt": "2025-09-09T18:48:26Z",
"completedAt": "2025-09-23T08:57:26Z",
"conclusion": "SUCCESS",
"detailsUrl": "https://github.com/jenkinsci/git-push-plugin/actions/runs/17592297993/job/49975778047",
"detailsUrl": "https://github.com/jenkinsci/git-push-plugin/actions/runs/17940776745/job/51016675462",
"name": "security-scan / scan",
"startedAt": "2025-09-09T18:35:31Z",
"startedAt": "2025-09-23T08:54:24Z",
"status": "COMPLETED",
"workflowName": "Jenkins Security Scan"
},
{
"__typename": "StatusContext",
"context": "continuous-integration/jenkins/pr-head",
"startedAt": "2025-09-09T18:36:20Z",
"startedAt": "2025-09-23T08:55:07Z",
"state": "ERROR",
"targetUrl": "https://ci.jenkins.io/job/Plugins/job/git-push-plugin/job/PR-103/5/display/redirect"
"targetUrl": "https://ci.jenkins.io/job/Plugins/job/git-push-plugin/job/PR-103/6/display/redirect"
},
{
"__typename": "CheckRun",
"completedAt": "2025-09-09T18:36:19Z",
"completedAt": "2025-09-23T08:55:07Z",
"conclusion": "FAILURE",
"detailsUrl": "https://ci.jenkins.io/job/Plugins/job/git-push-plugin/job/PR-103/5/display/redirect",
"detailsUrl": "https://ci.jenkins.io/job/Plugins/job/git-push-plugin/job/PR-103/6/display/redirect",
"name": "Jenkins",
"startedAt": "2025-09-09T18:35:44Z",
"startedAt": "2025-09-23T08:54:42Z",
"status": "COMPLETED",
"workflowName": ""
},
{
"__typename": "CheckRun",
"completedAt": "2025-09-09T18:48:12Z",
"completedAt": "2025-09-23T08:57:17Z",
"conclusion": "SUCCESS",
"detailsUrl": "https://github.com/jenkinsci/git-push-plugin/runs/49976790457",
"detailsUrl": "https://github.com/jenkinsci/git-push-plugin/runs/51016896452",
"name": "Jenkins Security Scan",
"startedAt": "2025-09-09T18:48:09Z",
"startedAt": "2025-09-23T08:57:14Z",
"status": "COMPLETED",
"workflowName": ""
Comment on lines +4838 to 4871
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

🧩 Analysis chain

Data refresh LGTM; please run quick integrity checks (timestamps/URLs).

Fields look consistent and monotonic. Suggest verifying ISO‑8601 Z timestamps, https URLs, and chronological ordering.


🏁 Script executed:

#!/bin/bash
set -euo pipefail

FILE="data/consolidated/open_prs.json"

# 1) Validate JSON parses
jq -e . "$FILE" >/dev/null

# 2) Find statusCheckRollup entries
JQ_BASE='.. | objects | select(has("statusCheckRollup")) | .statusCheckRollup[]?'

# 3) ISO-8601 Z timestamp format checks
echo "Checking timestamp formats..."
jq -r "$JQ_BASE
| [
    (if .startedAt? and (.startedAt|test(\"^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z$\")|not)
      then (\"BAD_STARTED_AT\t\" + (.startedAt|tostring)) else empty end),
    (if .completedAt? and (.completedAt|test(\"^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z$\")|not)
      then (\"BAD_COMPLETED_AT\t\" + (.completedAt|tostring)) else empty end)
  ] | .[] // empty" "$FILE" | sed 's/^/  /' || true

# 4) Chronological ordering: startedAt <= completedAt
echo "Checking chronological ordering..."
jq -r "$JQ_BASE
| select(.startedAt? and .completedAt?)
| select((.startedAt|fromdateiso8601) > (.completedAt|fromdateiso8601))
| \"INVERTED_TIMES\t\" + ((.name // .context // \"\")|tostring) + \"\t\" + .startedAt + \" > \" + .completedAt" "$FILE" | sed 's/^/  /' || true

# 5) URLs must be https
echo "Checking URL schemes..."
jq -r "$JQ_BASE
| [
    (if .detailsUrl? and (.detailsUrl|startswith(\"https://\")|not)
      then (\"NON_HTTPS_DETAILS\t\" + .detailsUrl) else empty end),
    (if .targetUrl? and (.targetUrl|startswith(\"https://\")|not)
      then (\"NON_HTTPS_TARGET\t\" + .targetUrl) else empty end)
  ] | .[] // empty" "$FILE" | sed 's/^/  /' || true

# 6) Status/completion consistency for CheckRun
echo "Checking status/completion consistency..."
jq -r "$JQ_BASE
| select(.\"__typename\"==\"CheckRun\")
| select((.status==\"COMPLETED\") and ( (.startedAt?|not) or (.completedAt?|not) ))
| \"COMPLETED_WITH_MISSING_TIMES\t\" + ((.name // \"\")|tostring)" "$FILE" | sed 's/^/  /' || true

echo "Done."

Length of output: 21548


Fix inverted chronological order in statusCheckRollup entries

ISO‑8601 Z timestamps and https URLs are OK, but many statusCheckRollup items in data/consolidated/open_prs.json have startedAt > completedAt (e.g., "CPD 2025-07-26T10:01:48Z > 2025-07-26T10:01:38Z"). Ensure startedAt <= completedAt or correct the data source and regenerate the file.

🤖 Prompt for AI Agents
In data/consolidated/open_prs.json around lines 4838 to 4871, several
statusCheckRollup objects have inverted timestamps (startedAt > completedAt);
update the data so each entry satisfies startedAt <= completedAt by either
correcting the source generator or fixing the existing records (swap the two
timestamps where they are inverted or set startedAt to the earlier of the two),
add a validation step to the import/generation pipeline to detect and reject
inverted timestamps, and regenerate the file so all statusCheckRollup entries
have coherent ISO‑8601 Z timestamps (https URLs are fine).

}
Expand Down
Loading