fix: global traces QA notes (#6977)

* updated at cols + search by path

* speed up scanning

* migration does not auto-set updated_at

* merge migrations
This commit is contained in:
aecsocket
2026-08-03 18:15:13 +00:00
committed by GitHub
parent c3249ee51d
commit 6715a9c679
12 changed files with 180 additions and 126 deletions
@@ -88,36 +88,42 @@ pub async fn sync_project_tech_review_state(
r#"
WITH project_ids AS (
SELECT unnest($1::bigint[]) AS project_id
),
detail_states AS (
SELECT
p.project_id,
COALESCE(
BOOL_OR(
didws.status = 'pending'
AND dri.issue_type != $3
),
FALSE
) AS has_pending_detail,
COALESCE(
BOOL_OR(
didws.status = 'unsafe'
AND dri.issue_type != $3
),
FALSE
) AS has_unsafe_detail,
COALESCE(
BOOL_OR(
didws.status = 'pending'
AND dri.issue_type = $3
),
FALSE
) AS has_dummy
FROM project_ids p
LEFT JOIN delphi_issue_details_with_statuses didws
ON didws.project_id = p.project_id
LEFT JOIN delphi_report_issues dri ON dri.id = didws.issue_id
GROUP BY p.project_id
)
SELECT
p.project_id AS "project_id!: DBProjectId",
EXISTS(
SELECT 1
FROM delphi_issue_details_with_statuses didws
INNER JOIN delphi_report_issues dri ON dri.id = didws.issue_id
WHERE
didws.project_id = p.project_id
AND didws.status = 'pending'
AND dri.issue_type != $3
) AS "has_pending_detail!",
EXISTS(
SELECT 1
FROM delphi_issue_details_with_statuses didws
INNER JOIN delphi_report_issues dri ON dri.id = didws.issue_id
WHERE
didws.project_id = p.project_id
AND didws.status = 'unsafe'
AND dri.issue_type != $3
) AS "has_unsafe_detail!",
EXISTS(
SELECT 1
FROM delphi_issue_details_with_statuses didws
INNER JOIN delphi_report_issues dri ON dri.id = didws.issue_id
WHERE
didws.project_id = p.project_id
AND didws.status = 'pending'
AND dri.issue_type = $3
) AS "has_dummy!",
p.has_pending_detail AS "has_pending_detail!",
p.has_unsafe_detail AS "has_unsafe_detail!",
p.has_dummy AS "has_dummy!",
(
SELECT t.id
FROM threads t
@@ -144,7 +150,7 @@ pub async fn sync_project_tech_review_state(
ORDER BY dr.created DESC, dr.id DESC
LIMIT 1
) AS "report_id: DelphiReportId"
FROM project_ids p
FROM detail_states p
"#,
&project_ids_raw,
&tech_review_message_types,
@@ -1288,16 +1288,20 @@ pub async fn update_issue_details(
INSERT INTO delphi_issue_detail_verdicts (
project_id,
detail_key,
verdict
verdict,
updated_at
)
SELECT
project_id,
detail_key,
verdict::delphi_report_issue_status
verdict::delphi_report_issue_status,
NOW()
FROM latest
WHERE verdict != 'pending'
ON CONFLICT (project_id, detail_key)
DO UPDATE SET verdict = EXCLUDED.verdict
DO UPDATE SET
verdict = EXCLUDED.verdict,
updated_at = EXCLUDED.updated_at
RETURNING 1
)
SELECT
@@ -1431,15 +1435,19 @@ pub async fn update_global_issue_details(
)
INSERT INTO delphi_global_detail_verdicts (
detail_key,
verdict
verdict,
updated_at
)
SELECT
detail_key,
verdict::delphi_report_issue_status
verdict::delphi_report_issue_status,
NOW()
FROM latest
WHERE verdict != 'pending'
ON CONFLICT (detail_key)
DO UPDATE SET verdict = EXCLUDED.verdict
DO UPDATE SET
verdict = EXCLUDED.verdict,
updated_at = EXCLUDED.updated_at
"#,
&detail_keys,
&verdicts,
@@ -170,6 +170,16 @@ pub async fn search_global_issue_details(
WHERE (
$1::text IS NULL
OR dgdv.detail_key ILIKE '%' || $1 || '%'
OR EXISTS (
SELECT 1
FROM delphi_issue_details_with_statuses matching_didws
INNER JOIN delphi_report_issues matching_dri
ON matching_dri.id = matching_didws.issue_id
WHERE
matching_didws.key = dgdv.detail_key
AND matching_dri.issue_type != '__dummy'
AND matching_didws.file_path ILIKE '%' || $1 || '%'
)
)
"#,
query,
@@ -194,6 +204,16 @@ pub async fn search_global_issue_details(
WHERE (
$1::text IS NULL
OR dgdv.detail_key ILIKE '%' || $1 || '%'
OR EXISTS (
SELECT 1
FROM delphi_issue_details_with_statuses matching_didws
INNER JOIN delphi_report_issues matching_dri
ON matching_dri.id = matching_didws.issue_id
WHERE
matching_didws.key = dgdv.detail_key
AND matching_dri.issue_type != '__dummy'
AND matching_didws.file_path ILIKE '%' || $1 || '%'
)
)
GROUP BY dgdv.detail_key, dgdv.verdict
ORDER BY dgdv.detail_key
@@ -249,6 +269,11 @@ pub async fn search_global_issue_details(
WHERE
didws.key = ANY($1::text[])
AND dri.issue_type != '__dummy'
AND (
$3::text IS NULL
OR didws.key ILIKE '%' || $3 || '%'
OR didws.file_path ILIKE '%' || $3 || '%'
)
)
SELECT
detail_key AS "detail_key!",
@@ -273,6 +298,7 @@ pub async fn search_global_issue_details(
"#,
&detail_keys,
LOCAL_TRACE_PREVIEW_LIMIT,
query,
)
.fetch_all(&**pool)
.await