Skip to content

Commit 22d3ad4

Browse files
committed
[CI] Base data staleness off activity instead of creation
1 parent 04d44e5 commit 22d3ad4

File tree

3 files changed

+15
-1
lines changed

3 files changed

+15
-1
lines changed

premerge/ops-container/amend_pull_request_data.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ def mark_stale_pull_request_data_in_bigquery(
9292
pull_request_state = 'OPEN'
9393
AND TIMESTAMP_DIFF(
9494
CURRENT_TIMESTAMP(),
95-
TIMESTAMP_SECONDS(pull_request_timestamp_seconds),
95+
TIMESTAMP_SECONDS(last_updated_at_timestamp_seconds),
9696
DAY
9797
) > @cutoff_age_days
9898
"""

premerge/ops-container/operational_metrics_lib.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
number
2323
state
2424
createdAt
25+
updatedAt
2526
mergedAt
2627
label_events: timelineItems(last: 10, itemTypes: [LABELED_EVENT]) {
2728
nodes {
@@ -76,6 +77,7 @@ class LLVMPullRequestData:
7677
pull_request_title: str
7778
pull_request_state: str
7879
pull_request_timestamp_seconds: int
80+
last_updated_at_timestamp_seconds: int
7981
merged_at_timestamp_seconds: int | None
8082
associated_commit: str | None
8183
labels: list[dict[str, str]]
@@ -204,6 +206,9 @@ def parse_pull_request_data(
204206
create_unix_timestamp = int(
205207
datetime.datetime.fromisoformat(pull_request["createdAt"]).timestamp()
206208
)
209+
updated_unix_timestamp = int(
210+
datetime.datetime.fromisoformat(pull_request["updatedAt"]).timestamp()
211+
)
207212
if pull_request["mergedAt"] is not None:
208213
merge_unix_timestamp = int(
209214
datetime.datetime.fromisoformat(pull_request["mergedAt"]).timestamp()
@@ -241,6 +246,7 @@ def parse_pull_request_data(
241246
pull_request_title=pull_request["title"],
242247
pull_request_state=pull_request["state"],
243248
pull_request_timestamp_seconds=create_unix_timestamp,
249+
last_updated_at_timestamp_seconds=updated_unix_timestamp,
244250
merged_at_timestamp_seconds=merge_unix_timestamp,
245251
associated_commit=associated_commit,
246252
labels=labels,

premerge/ops-container/process_llvm_commits_test.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ def _create_pull_request_api_data(
6363
pull_request_number: int,
6464
pull_request_title: str,
6565
created_at: str | None = None,
66+
updated_at: str | None = None,
6667
merged_at: str | None = None,
6768
pull_request_author: str | None = None,
6869
reviews: list[dict[str, Any]] | None = None,
@@ -78,6 +79,7 @@ def _create_pull_request_api_data(
7879
'title': pull_request_title,
7980
'state': 'MERGED',
8081
'createdAt': created_at,
82+
'updatedAt': updated_at,
8183
'mergedAt': merged_at,
8284
'reviews': {'nodes': reviews or []},
8385
'label_events': {
@@ -286,6 +288,7 @@ def test_extract_pull_request_data(self):
286288
pull_request_number=12345,
287289
pull_request_title='[TEST] Title',
288290
created_at=created_at_iso,
291+
updated_at=merged_at_iso,
289292
merged_at=merged_at_iso,
290293
pull_request_author='pull_request_author',
291294
labels=['llvm:test-label'],
@@ -311,6 +314,10 @@ def test_extract_pull_request_data(self):
311314
pull_request_data[0].pull_request_timestamp_seconds,
312315
created_at.timestamp(),
313316
)
317+
self.assertEqual(
318+
pull_request_data[0].last_updated_at_timestamp_seconds,
319+
merged_at.timestamp(),
320+
)
314321
self.assertEqual(
315322
pull_request_data[0].merged_at_timestamp_seconds,
316323
merged_at.timestamp(),
@@ -330,6 +337,7 @@ def test_extract_pull_request_data_with_missing_author(self):
330337
pull_request_number=12345,
331338
pull_request_title='[TEST] Title',
332339
created_at=created_at_iso,
340+
updated_at=created_at_iso,
333341
)
334342
commit_api_data = {
335343
'commit_abcdef': self._create_commit_api_data(

0 commit comments

Comments
 (0)