monitoring: use fresh quality snapshots

This commit is contained in:
jenkins 2026-05-16 20:57:56 -03:00
parent 8a13b9d4e7
commit a69a21f05d
5 changed files with 117 additions and 104 deletions

View File

@ -603,6 +603,8 @@ PLATFORM_TEST_ACTIVE_SUITES_24H = (
"or on() vector(0)" "or on() vector(0)"
) )
PLATFORM_TEST_POINT_WINDOW = "1h" PLATFORM_TEST_POINT_WINDOW = "1h"
PLATFORM_TEST_FRESH_WINDOW = "30h"
PLATFORM_TEST_LATEST_WINDOW = "30d"
PLATFORM_TEST_SUCCESS_RATE_SUITE_TARGETS = [ PLATFORM_TEST_SUCCESS_RATE_SUITE_TARGETS = [
{ {
"refId": chr(ord("A") + index), "refId": chr(ord("A") + index),
@ -623,8 +625,8 @@ QUALITY_GATE_SUITE_INDEX_30D = (
f'sum by (suite) (increase(platform_quality_gate_runs_total{{suite=~"{PLATFORM_TEST_SUITE_MATCHER}",{PLATFORM_TEST_EXPORT_FILTER}}}[30d]))' f'sum by (suite) (increase(platform_quality_gate_runs_total{{suite=~"{PLATFORM_TEST_SUITE_MATCHER}",{PLATFORM_TEST_EXPORT_FILTER}}}[30d]))'
) )
QUALITY_GATE_COVERAGE_BY_SUITE = ( QUALITY_GATE_COVERAGE_BY_SUITE = (
f'(max by (suite) ({{__name__=~".*_quality_gate_coverage_percent",{PLATFORM_TEST_EXPORT_FILTER}}})) ' f'(max by (suite) (last_over_time({{__name__=~".*_quality_gate_coverage_percent",{PLATFORM_TEST_EXPORT_FILTER}}}[{PLATFORM_TEST_LATEST_WINDOW}]))) '
f'or on(suite) (max by (suite) (platform_quality_gate_workspace_line_coverage_percent{{{PLATFORM_TEST_EXPORT_FILTER}}}))' f'or on(suite) (max by (suite) (last_over_time(platform_quality_gate_workspace_line_coverage_percent{{{PLATFORM_TEST_EXPORT_FILTER}}}[{PLATFORM_TEST_LATEST_WINDOW}])))'
) )
QUALITY_GATE_COVERAGE_BY_SUITE_WITH_MISSING = ( QUALITY_GATE_COVERAGE_BY_SUITE_WITH_MISSING = (
f"({QUALITY_GATE_COVERAGE_BY_SUITE}) or on(suite) (0 * ({QUALITY_GATE_SUITE_INDEX_30D}) - 1)" f"({QUALITY_GATE_COVERAGE_BY_SUITE}) or on(suite) (0 * ({QUALITY_GATE_SUITE_INDEX_30D}) - 1)"
@ -633,7 +635,7 @@ QUALITY_GATE_COVERAGE_GAP_BY_SUITE = (
f"clamp_min(95 - ({QUALITY_GATE_COVERAGE_BY_SUITE}), 0)" f"clamp_min(95 - ({QUALITY_GATE_COVERAGE_BY_SUITE}), 0)"
) )
QUALITY_GATE_SMELL_INFRACTIONS_BY_SUITE = ( QUALITY_GATE_SMELL_INFRACTIONS_BY_SUITE = (
f"max by (suite) (platform_quality_gate_source_lines_over_500_total{{{PLATFORM_TEST_EXPORT_FILTER}}})" f"max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{{{PLATFORM_TEST_EXPORT_FILTER}}}[{PLATFORM_TEST_LATEST_WINDOW}]))"
) )
QUALITY_GATE_SMELL_INFRACTIONS_BY_SUITE_WITH_MISSING = ( QUALITY_GATE_SMELL_INFRACTIONS_BY_SUITE_WITH_MISSING = (
f"({QUALITY_GATE_SMELL_INFRACTIONS_BY_SUITE}) or on(suite) (0 * ({QUALITY_GATE_SUITE_INDEX_30D}) - 1)" f"({QUALITY_GATE_SMELL_INFRACTIONS_BY_SUITE}) or on(suite) (0 * ({QUALITY_GATE_SUITE_INDEX_30D}) - 1)"
@ -646,10 +648,10 @@ PLATFORM_TEST_CHECK_ROLLUP_MATCHERS = (
f'suite=~"{PLATFORM_TEST_SUITE_CANONICAL_MATCHER}",branch!="",check!=""' f'suite=~"{PLATFORM_TEST_SUITE_CANONICAL_MATCHER}",branch!="",check!=""'
) )
PLATFORM_TEST_CHECK_ROLLUP_SELECTOR = ( PLATFORM_TEST_CHECK_ROLLUP_SELECTOR = (
f'platform_quality:check_status:present_1h{{{PLATFORM_TEST_CHECK_ROLLUP_MATCHERS},status!=""}}' f'last_over_time(platform_quality:check_status:present_1h{{{PLATFORM_TEST_CHECK_ROLLUP_MATCHERS},status!=""}}[{PLATFORM_TEST_FRESH_WINDOW}])'
) )
PLATFORM_TEST_CHECK_ROLLUP_OK_SELECTOR = ( PLATFORM_TEST_CHECK_ROLLUP_OK_SELECTOR = (
f'platform_quality:check_status:present_1h{{{PLATFORM_TEST_CHECK_ROLLUP_MATCHERS},status=~"{PLATFORM_TEST_NON_FAILURE_STATUS}"}}' f'last_over_time(platform_quality:check_status:present_1h{{{PLATFORM_TEST_CHECK_ROLLUP_MATCHERS},status=~"{PLATFORM_TEST_NON_FAILURE_STATUS}"}}[{PLATFORM_TEST_FRESH_WINDOW}])'
) )
PLATFORM_TEST_CURRENT_GATE_HEALTH_BY_SUITE = ( PLATFORM_TEST_CURRENT_GATE_HEALTH_BY_SUITE = (
f'(100 * sum by (suite) (max by (suite, check) ' f'(100 * sum by (suite) (max by (suite, check) '
@ -1660,7 +1662,7 @@ TESTING_PANEL_DESCRIPTIONS = {
"Runs (24h)": "Selected quality-gate run count in 24h; zero means the dashboard may be stale.", "Runs (24h)": "Selected quality-gate run count in 24h; zero means the dashboard may be stale.",
"Avg Coverage (%)": "Average latest line coverage for selected suites; higher means better test protection.", "Avg Coverage (%)": "Average latest line coverage for selected suites; higher means better test protection.",
"Suites with LOC >500": "Selected suites with oversized source files; zero is good for maintainability.", "Suites with LOC >500": "Selected suites with oversized source files; zero is good for maintainability.",
"Current Gate Health by Suite": "Latest gate pass percent per suite; 100% means all required checks currently pass.", "Current Gate Health by Suite": "Latest gate pass percent per suite from the daily freshness window; 100% means required checks recently passed.",
"Run Reliability by Suite (24h)": "24h quality-gate pass rate by suite; lower rows are worse and can lag after failed/debug runs.", "Run Reliability by Suite (24h)": "24h quality-gate pass rate by suite; lower rows are worse and can lag after failed/debug runs.",
"Coverage by Suite (Latest, gate 95)": "Latest suite coverage; 95%+ is acceptable and 100% is strongest.", "Coverage by Suite (Latest, gate 95)": "Latest suite coverage; 95%+ is acceptable and 100% is strongest.",
"Files <=500 LOC by Suite (Latest)": "Percent of source files within the 500-line limit; higher is easier to maintain.", "Files <=500 LOC by Suite (Latest)": "Percent of source files within the 500-line limit; higher is easier to maintain.",
@ -3737,8 +3739,8 @@ def build_jobs_dashboard():
runs_failure_selector = f'{runs_selector},status!~"{success}"' runs_failure_selector = f'{runs_selector},status!~"{success}"'
checks_selector = f'__name__=~".*_quality_gate_checks_total",suite=~"{suite_var}",{exported}' checks_selector = f'__name__=~".*_quality_gate_checks_total",suite=~"{suite_var}",{exported}'
check_rollup_selector = ( check_rollup_selector = (
f'platform_quality:check_status:present_1h{{suite=~"{suite_var}",branch!="",' f'last_over_time(platform_quality:check_status:present_1h{{suite=~"{suite_var}",branch!="",'
f'branch=~"{branch_var}",check!="",status!=""}}' f'branch=~"{branch_var}",check!="",status!=""}}[{PLATFORM_TEST_FRESH_WINDOW}])'
) )
coverage_metric_selector = f'__name__=~".*_quality_gate_coverage_percent",suite=~"{suite_var}",{exported}' coverage_metric_selector = f'__name__=~".*_quality_gate_coverage_percent",suite=~"{suite_var}",{exported}'
workspace_coverage_selector = f'suite=~"{suite_var}",{exported}' workspace_coverage_selector = f'suite=~"{suite_var}",{exported}'
@ -3780,8 +3782,8 @@ def build_jobs_dashboard():
) )
non_failure = PLATFORM_TEST_NON_FAILURE_STATUS non_failure = PLATFORM_TEST_NON_FAILURE_STATUS
current_gate_ok_selector = ( current_gate_ok_selector = (
f'platform_quality:check_status:present_1h{{suite=~"{suite_var}",branch!="",' f'last_over_time(platform_quality:check_status:present_1h{{suite=~"{suite_var}",branch!="",'
f'branch=~"{branch_var}",check!="",status=~"{non_failure}"}}' f'branch=~"{branch_var}",check!="",status=~"{non_failure}"}}[{PLATFORM_TEST_FRESH_WINDOW}])'
) )
current_gate_ok_vector = f"(({current_gate_ok_selector}) > bool 0)" current_gate_ok_vector = f"(({current_gate_ok_selector}) > bool 0)"
current_gate_seen_vector = f'({check_rollup_selector} > bool 0)' current_gate_seen_vector = f'({check_rollup_selector} > bool 0)'
@ -3807,18 +3809,28 @@ def build_jobs_dashboard():
f'sum(increase(platform_quality_gate_runs_total{{{runs_failure_selector}}}[24h])) or on() vector(0)' f'sum(increase(platform_quality_gate_runs_total{{{runs_failure_selector}}}[24h])) or on() vector(0)'
) )
coverage_by_suite = ( coverage_by_suite = (
f'(max by (suite) ({{{coverage_metric_selector}}})) ' f'(max by (suite) (last_over_time({{{coverage_metric_selector}}}[{PLATFORM_TEST_LATEST_WINDOW}]))) '
f'or on(suite) (max by (suite) (platform_quality_gate_workspace_line_coverage_percent{{{workspace_coverage_selector}}}))' f'or on(suite) (max by (suite) (last_over_time(platform_quality_gate_workspace_line_coverage_percent{{{workspace_coverage_selector}}}[{PLATFORM_TEST_LATEST_WINDOW}])))'
) )
coverage_history_by_suite = ( coverage_history_by_suite = (
f'(max by (suite) (platform_quality_gate_workspace_line_coverage_percent{{{workspace_coverage_selector}}})) ' f'(max by (suite) (last_over_time(platform_quality_gate_workspace_line_coverage_percent{{{workspace_coverage_selector}}}[{PLATFORM_TEST_FRESH_WINDOW}]))) '
f'or on(suite) (max by (suite) ({{{coverage_metric_selector}}}))' f'or on(suite) (max by (suite) (last_over_time({{{coverage_metric_selector}}}[{PLATFORM_TEST_FRESH_WINDOW}])))'
) )
coverage_with_missing = ( coverage_with_missing = (
f"({coverage_by_suite}) or on(suite) ((0 * (sum by (suite) (increase(platform_quality_gate_runs_total{{{runs_selector}}}[30d])))) - 1)" f"({coverage_by_suite}) or on(suite) ((0 * (sum by (suite) (increase(platform_quality_gate_runs_total{{{runs_selector}}}[30d])))) - 1)"
) )
smell_by_suite = f'max by (suite) (platform_quality_gate_source_lines_over_500_total{{{smell_selector}}})' smell_by_suite = (
loc_files_by_suite = f'max by (suite) (platform_quality_gate_source_files_total{{{smell_selector}}})' f'max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{{{smell_selector}}}[{PLATFORM_TEST_LATEST_WINDOW}]))'
)
loc_files_by_suite = (
f'max by (suite) (last_over_time(platform_quality_gate_source_files_total{{{smell_selector}}}[{PLATFORM_TEST_LATEST_WINDOW}]))'
)
smell_history_by_suite = (
f'max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{{{smell_selector}}}[{PLATFORM_TEST_FRESH_WINDOW}]))'
)
loc_files_history_by_suite = (
f'max by (suite) (last_over_time(platform_quality_gate_source_files_total{{{smell_selector}}}[{PLATFORM_TEST_FRESH_WINDOW}]))'
)
smell_with_missing = ( smell_with_missing = (
f"({smell_by_suite}) or on(suite) ((0 * (sum by (suite) (increase(platform_quality_gate_runs_total{{{runs_selector}}}[30d])))) - 1)" f"({smell_by_suite}) or on(suite) ((0 * (sum by (suite) (increase(platform_quality_gate_runs_total{{{runs_selector}}}[30d])))) - 1)"
) )
@ -3832,8 +3844,9 @@ def build_jobs_dashboard():
f"or on(suite) ((0 * (sum by (suite) (increase(platform_quality_gate_runs_total{{{runs_selector}}}[30d])))) - 1)" f"or on(suite) ((0 * (sum by (suite) (increase(platform_quality_gate_runs_total{{{runs_selector}}}[30d])))) - 1)"
) )
loc_limit_compliance_history = ( loc_limit_compliance_history = (
f"({loc_limit_compliance_by_suite}) " f"(100 * clamp_min(({loc_files_history_by_suite}) - ({smell_history_by_suite}), 0) / ({loc_files_history_by_suite})) "
f"or on(suite) (100 * (1 - clamp_max(({smell_by_suite}), 1)))" f"and on(suite) (({loc_files_history_by_suite}) > 0) "
f"or on(suite) (100 * (1 - clamp_max(({smell_history_by_suite}), 1)))"
) )
average_coverage = f"(avg(({coverage_by_suite})) or on() vector(0))" average_coverage = f"(avg(({coverage_by_suite})) or on() vector(0))"
suites_loc_violating = f'(sum((({smell_by_suite}) > bool 0)) or on() vector(0))' suites_loc_violating = f'(sum((({smell_by_suite}) > bool 0)) or on() vector(0))'
@ -3849,12 +3862,12 @@ def build_jobs_dashboard():
def _check_state_percent_series(regex: str, failed: bool) -> str: def _check_state_percent_series(regex: str, failed: bool) -> str:
status_state = f'status!~"{non_failure}"' if failed else f'status=~"{non_failure}"' status_state = f'status!~"{non_failure}"' if failed else f'status=~"{non_failure}"'
family_selector = ( family_selector = (
f'platform_quality:check_status:present_1h{{suite=~"{suite_var}",branch!="",' f'last_over_time(platform_quality:check_status:present_1h{{suite=~"{suite_var}",branch!="",'
f'branch=~"{branch_var}",check=~"{regex}",status!=""}}' f'branch=~"{branch_var}",check=~"{regex}",status!=""}}[{PLATFORM_TEST_FRESH_WINDOW}])'
) )
state_selector = ( state_selector = (
f'platform_quality:check_status:present_1h{{suite=~"{suite_var}",branch!="",' f'last_over_time(platform_quality:check_status:present_1h{{suite=~"{suite_var}",branch!="",'
f'branch=~"{branch_var}",check=~"{regex}",{status_state}}}' f'branch=~"{branch_var}",check=~"{regex}",{status_state}}}[{PLATFORM_TEST_FRESH_WINDOW}])'
) )
state_vector = f"(({state_selector}) > bool 0)" state_vector = f"(({state_selector}) > bool 0)"
state_checks = ( state_checks = (
@ -4106,8 +4119,8 @@ def build_jobs_dashboard():
{"type": "value", "options": {"-1": {"text": "missing"}}} {"type": "value", "options": {"-1": {"text": "missing"}}}
] ]
panels[-1]["description"] = ( panels[-1]["description"] = (
"Current pass percentage across the required gate dimensions reported by each suite. " "Latest pass percentage across required gate dimensions in the daily freshness window. "
"100% is clean; missing means the suite has not published current gate data." "100% is clean; missing means the suite has not published recent gate data."
) )
reliability_suite_panel = bargauge_panel( reliability_suite_panel = bargauge_panel(
9, 9,
@ -4210,11 +4223,11 @@ def build_jobs_dashboard():
def _append_check_trends(start_id: int, title_prefix: str, failed: bool, y: int) -> None: def _append_check_trends(start_id: int, title_prefix: str, failed: bool, y: int) -> None:
trend_thresholds = failures_thresholds if failed else success_thresholds trend_thresholds = failures_thresholds if failed else success_thresholds
trend_description = ( trend_description = (
"Current bad-state percentage for this check family, evaluated over time. " "Latest bad-state percentage for this check family, evaluated over time. "
"Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart." "Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart."
if failed if failed
else "Current acceptable-state percentage for this check family, evaluated over time. " else "Latest acceptable-state percentage for this check family, evaluated over time. "
"Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence." "Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence."
) )
for index, (label, regex) in enumerate(check_dimensions[:4]): for index, (label, regex) in enumerate(check_dimensions[:4]):
panel = state_timeline_panel( panel = state_timeline_panel(

View File

@ -2377,7 +2377,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(avg(((max by (suite) ({__name__=~\".*_quality_gate_coverage_percent\",exported_job=\"platform-quality-ci\"})) or on(suite) (max by (suite) (platform_quality_gate_workspace_line_coverage_percent{exported_job=\"platform-quality-ci\"})))) or on() vector(0))", "expr": "(avg(((max by (suite) (last_over_time({__name__=~\".*_quality_gate_coverage_percent\",exported_job=\"platform-quality-ci\"}[30d]))) or on(suite) (max by (suite) (last_over_time(platform_quality_gate_workspace_line_coverage_percent{exported_job=\"platform-quality-ci\"}[30d]))))) or on() vector(0))",
"refId": "A", "refId": "A",
"instant": true "instant": true
} }
@ -2463,7 +2463,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(sum((max by (suite) (platform_quality_gate_source_lines_over_500_total{exported_job=\"platform-quality-ci\"})) == bool 0) or on() vector(0))", "expr": "(sum((max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{exported_job=\"platform-quality-ci\"}[30d]))) == bool 0) or on() vector(0))",
"refId": "A", "refId": "A",
"instant": true "instant": true
} }

View File

@ -306,7 +306,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(avg(((max by (suite) ({__name__=~\".*_quality_gate_coverage_percent\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) or on(suite) (max by (suite) (platform_quality_gate_workspace_line_coverage_percent{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})))) or on() vector(0))", "expr": "(avg(((max by (suite) (last_over_time({__name__=~\".*_quality_gate_coverage_percent\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))) or on(suite) (max by (suite) (last_over_time(platform_quality_gate_workspace_line_coverage_percent{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))))) or on() vector(0))",
"refId": "A", "refId": "A",
"instant": true "instant": true
} }
@ -381,7 +381,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(sum(((max by (suite) (platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) > bool 0)) or on() vector(0))", "expr": "(sum(((max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))) > bool 0)) or on() vector(0))",
"refId": "A", "refId": "A",
"instant": true "instant": true
} }
@ -455,7 +455,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "sort(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status!=\"\"} > bool 0)))), 1)) or on(suite) ((((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))) - 1))))", "expr": "sort(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status!=\"\"}[30h]) > bool 0)))), 1)) or on(suite) ((((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))) - 1))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}", "legendFormat": "{{suite}}",
"instant": true "instant": true
@ -530,7 +530,7 @@
} }
} }
], ],
"description": "Current pass percentage across the required gate dimensions reported by each suite. 100% is clean; missing means the suite has not published current gate data." "description": "Latest pass percentage across required gate dimensions in the daily freshness window. 100% is clean; missing means the suite has not published recent gate data."
}, },
{ {
"id": 9, "id": 9,
@ -641,7 +641,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "sort(((max by (suite) ({__name__=~\".*_quality_gate_coverage_percent\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) or on(suite) (max by (suite) (platform_quality_gate_workspace_line_coverage_percent{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}))) or on(suite) ((0 * (sum by (suite) (increase(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])))) - 1))", "expr": "sort(((max by (suite) (last_over_time({__name__=~\".*_quality_gate_coverage_percent\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))) or on(suite) (max by (suite) (last_over_time(platform_quality_gate_workspace_line_coverage_percent{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])))) or on(suite) ((0 * (sum by (suite) (increase(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])))) - 1))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}", "legendFormat": "{{suite}}",
"instant": true "instant": true
@ -734,7 +734,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "sort(((100 * clamp_min((max by (suite) (platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) - (max by (suite) (platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})), 0) / (max by (suite) (platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}))) and on(suite) ((max by (suite) (platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) > 0)) or on(suite) (100 * (1 - clamp_max((max by (suite) (platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})), 1))) or on(suite) ((0 * (sum by (suite) (increase(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])))) - 1))", "expr": "sort(((100 * clamp_min((max by (suite) (last_over_time(platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))) - (max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))), 0) / (max by (suite) (last_over_time(platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])))) and on(suite) ((max by (suite) (last_over_time(platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))) > 0)) or on(suite) (100 * (1 - clamp_max((max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))), 1))) or on(suite) ((0 * (sum by (suite) (increase(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])))) - 1))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}", "legendFormat": "{{suite}}",
"instant": true "instant": true
@ -1163,7 +1163,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(max by (suite) (platform_quality_gate_workspace_line_coverage_percent{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) or on(suite) (max by (suite) ({__name__=~\".*_quality_gate_coverage_percent\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}))", "expr": "(max by (suite) (last_over_time(platform_quality_gate_workspace_line_coverage_percent{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30h]))) or on(suite) (max by (suite) (last_over_time({__name__=~\".*_quality_gate_coverage_percent\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30h])))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1239,7 +1239,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "((100 * clamp_min((max by (suite) (platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) - (max by (suite) (platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})), 0) / (max by (suite) (platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}))) and on(suite) ((max by (suite) (platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) > 0)) or on(suite) (100 * (1 - clamp_max((max by (suite) (platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})), 1)))", "expr": "(100 * clamp_min((max by (suite) (last_over_time(platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30h]))) - (max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30h]))), 0) / (max by (suite) (last_over_time(platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30h])))) and on(suite) ((max by (suite) (last_over_time(platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30h]))) > 0) or on(suite) (100 * (1 - clamp_max((max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30h]))), 1)))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1317,7 +1317,7 @@
"id": 130, "id": 130,
"type": "state-timeline", "type": "state-timeline",
"title": "Tests Failure Rate", "title": "Tests Failure Rate",
"description": "Current bad-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart.", "description": "Latest bad-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1330,7 +1330,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1393,7 +1393,7 @@
"id": 131, "id": 131,
"type": "state-timeline", "type": "state-timeline",
"title": "Coverage Failure Rate", "title": "Coverage Failure Rate",
"description": "Current bad-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart.", "description": "Latest bad-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1406,7 +1406,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1469,7 +1469,7 @@
"id": 132, "id": 132,
"type": "state-timeline", "type": "state-timeline",
"title": "LOC Failure Rate", "title": "LOC Failure Rate",
"description": "Current bad-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart.", "description": "Latest bad-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1482,7 +1482,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1545,7 +1545,7 @@
"id": 133, "id": 133,
"type": "state-timeline", "type": "state-timeline",
"title": "Style Failure Rate", "title": "Style Failure Rate",
"description": "Current bad-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart.", "description": "Latest bad-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1558,7 +1558,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1621,7 +1621,7 @@
"id": 134, "id": 134,
"type": "state-timeline", "type": "state-timeline",
"title": "Gate Glue Failure Rate", "title": "Gate Glue Failure Rate",
"description": "Current bad-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart.", "description": "Latest bad-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1634,7 +1634,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1697,7 +1697,7 @@
"id": 135, "id": 135,
"type": "state-timeline", "type": "state-timeline",
"title": "SonarQube Failure Rate", "title": "SonarQube Failure Rate",
"description": "Current bad-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart.", "description": "Latest bad-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1710,7 +1710,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1773,7 +1773,7 @@
"id": 136, "id": 136,
"type": "state-timeline", "type": "state-timeline",
"title": "Supply Chain Failure Rate", "title": "Supply Chain Failure Rate",
"description": "Current bad-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart.", "description": "Latest bad-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1786,7 +1786,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1864,7 +1864,7 @@
"id": 138, "id": 138,
"type": "state-timeline", "type": "state-timeline",
"title": "Tests Healthy Rate", "title": "Tests Healthy Rate",
"description": "Current acceptable-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence.", "description": "Latest acceptable-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1877,7 +1877,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1940,7 +1940,7 @@
"id": 139, "id": 139,
"type": "state-timeline", "type": "state-timeline",
"title": "Coverage Healthy Rate", "title": "Coverage Healthy Rate",
"description": "Current acceptable-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence.", "description": "Latest acceptable-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1953,7 +1953,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2016,7 +2016,7 @@
"id": 140, "id": 140,
"type": "state-timeline", "type": "state-timeline",
"title": "LOC Healthy Rate", "title": "LOC Healthy Rate",
"description": "Current acceptable-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence.", "description": "Latest acceptable-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -2029,7 +2029,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2092,7 +2092,7 @@
"id": 141, "id": 141,
"type": "state-timeline", "type": "state-timeline",
"title": "Style Healthy Rate", "title": "Style Healthy Rate",
"description": "Current acceptable-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence.", "description": "Latest acceptable-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -2105,7 +2105,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2168,7 +2168,7 @@
"id": 142, "id": 142,
"type": "state-timeline", "type": "state-timeline",
"title": "Gate Glue Healthy Rate", "title": "Gate Glue Healthy Rate",
"description": "Current acceptable-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence.", "description": "Latest acceptable-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -2181,7 +2181,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2244,7 +2244,7 @@
"id": 143, "id": 143,
"type": "state-timeline", "type": "state-timeline",
"title": "SonarQube Healthy Rate", "title": "SonarQube Healthy Rate",
"description": "Current acceptable-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence.", "description": "Latest acceptable-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -2257,7 +2257,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2320,7 +2320,7 @@
"id": 144, "id": 144,
"type": "state-timeline", "type": "state-timeline",
"title": "Supply Chain Healthy Rate", "title": "Supply Chain Healthy Rate",
"description": "Current acceptable-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence.", "description": "Latest acceptable-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -2333,7 +2333,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }

View File

@ -2386,7 +2386,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(avg(((max by (suite) ({__name__=~\".*_quality_gate_coverage_percent\",exported_job=\"platform-quality-ci\"})) or on(suite) (max by (suite) (platform_quality_gate_workspace_line_coverage_percent{exported_job=\"platform-quality-ci\"})))) or on() vector(0))", "expr": "(avg(((max by (suite) (last_over_time({__name__=~\".*_quality_gate_coverage_percent\",exported_job=\"platform-quality-ci\"}[30d]))) or on(suite) (max by (suite) (last_over_time(platform_quality_gate_workspace_line_coverage_percent{exported_job=\"platform-quality-ci\"}[30d]))))) or on() vector(0))",
"refId": "A", "refId": "A",
"instant": true "instant": true
} }
@ -2472,7 +2472,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(sum((max by (suite) (platform_quality_gate_source_lines_over_500_total{exported_job=\"platform-quality-ci\"})) == bool 0) or on() vector(0))", "expr": "(sum((max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{exported_job=\"platform-quality-ci\"}[30d]))) == bool 0) or on() vector(0))",
"refId": "A", "refId": "A",
"instant": true "instant": true
} }

View File

@ -315,7 +315,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(avg(((max by (suite) ({__name__=~\".*_quality_gate_coverage_percent\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) or on(suite) (max by (suite) (platform_quality_gate_workspace_line_coverage_percent{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})))) or on() vector(0))", "expr": "(avg(((max by (suite) (last_over_time({__name__=~\".*_quality_gate_coverage_percent\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))) or on(suite) (max by (suite) (last_over_time(platform_quality_gate_workspace_line_coverage_percent{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))))) or on() vector(0))",
"refId": "A", "refId": "A",
"instant": true "instant": true
} }
@ -390,7 +390,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(sum(((max by (suite) (platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) > bool 0)) or on() vector(0))", "expr": "(sum(((max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))) > bool 0)) or on() vector(0))",
"refId": "A", "refId": "A",
"instant": true "instant": true
} }
@ -464,7 +464,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "sort(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status!=\"\"} > bool 0)))), 1)) or on(suite) ((((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))) - 1))))", "expr": "sort(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check!=\"\",status!=\"\"}[30h]) > bool 0)))), 1)) or on(suite) ((((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))) - 1))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}", "legendFormat": "{{suite}}",
"instant": true "instant": true
@ -539,7 +539,7 @@ data:
} }
} }
], ],
"description": "Current pass percentage across the required gate dimensions reported by each suite. 100% is clean; missing means the suite has not published current gate data." "description": "Latest pass percentage across required gate dimensions in the daily freshness window. 100% is clean; missing means the suite has not published recent gate data."
}, },
{ {
"id": 9, "id": 9,
@ -650,7 +650,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "sort(((max by (suite) ({__name__=~\".*_quality_gate_coverage_percent\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) or on(suite) (max by (suite) (platform_quality_gate_workspace_line_coverage_percent{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}))) or on(suite) ((0 * (sum by (suite) (increase(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])))) - 1))", "expr": "sort(((max by (suite) (last_over_time({__name__=~\".*_quality_gate_coverage_percent\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))) or on(suite) (max by (suite) (last_over_time(platform_quality_gate_workspace_line_coverage_percent{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])))) or on(suite) ((0 * (sum by (suite) (increase(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])))) - 1))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}", "legendFormat": "{{suite}}",
"instant": true "instant": true
@ -743,7 +743,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "sort(((100 * clamp_min((max by (suite) (platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) - (max by (suite) (platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})), 0) / (max by (suite) (platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}))) and on(suite) ((max by (suite) (platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) > 0)) or on(suite) (100 * (1 - clamp_max((max by (suite) (platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})), 1))) or on(suite) ((0 * (sum by (suite) (increase(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])))) - 1))", "expr": "sort(((100 * clamp_min((max by (suite) (last_over_time(platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))) - (max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))), 0) / (max by (suite) (last_over_time(platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])))) and on(suite) ((max by (suite) (last_over_time(platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))) > 0)) or on(suite) (100 * (1 - clamp_max((max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d]))), 1))) or on(suite) ((0 * (sum by (suite) (increase(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])))) - 1))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}", "legendFormat": "{{suite}}",
"instant": true "instant": true
@ -1172,7 +1172,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(max by (suite) (platform_quality_gate_workspace_line_coverage_percent{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) or on(suite) (max by (suite) ({__name__=~\".*_quality_gate_coverage_percent\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}))", "expr": "(max by (suite) (last_over_time(platform_quality_gate_workspace_line_coverage_percent{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30h]))) or on(suite) (max by (suite) (last_over_time({__name__=~\".*_quality_gate_coverage_percent\",suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30h])))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1248,7 +1248,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "((100 * clamp_min((max by (suite) (platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) - (max by (suite) (platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})), 0) / (max by (suite) (platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}))) and on(suite) ((max by (suite) (platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})) > 0)) or on(suite) (100 * (1 - clamp_max((max by (suite) (platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"})), 1)))", "expr": "(100 * clamp_min((max by (suite) (last_over_time(platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30h]))) - (max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30h]))), 0) / (max by (suite) (last_over_time(platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30h])))) and on(suite) ((max by (suite) (last_over_time(platform_quality_gate_source_files_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30h]))) > 0) or on(suite) (100 * (1 - clamp_max((max by (suite) (last_over_time(platform_quality_gate_source_lines_over_500_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30h]))), 1)))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1326,7 +1326,7 @@ data:
"id": 130, "id": 130,
"type": "state-timeline", "type": "state-timeline",
"title": "Tests Failure Rate", "title": "Tests Failure Rate",
"description": "Current bad-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart.", "description": "Latest bad-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1339,7 +1339,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1402,7 +1402,7 @@ data:
"id": 131, "id": 131,
"type": "state-timeline", "type": "state-timeline",
"title": "Coverage Failure Rate", "title": "Coverage Failure Rate",
"description": "Current bad-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart.", "description": "Latest bad-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1415,7 +1415,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1478,7 +1478,7 @@ data:
"id": 132, "id": 132,
"type": "state-timeline", "type": "state-timeline",
"title": "LOC Failure Rate", "title": "LOC Failure Rate",
"description": "Current bad-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart.", "description": "Latest bad-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1491,7 +1491,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1554,7 +1554,7 @@ data:
"id": 133, "id": 133,
"type": "state-timeline", "type": "state-timeline",
"title": "Style Failure Rate", "title": "Style Failure Rate",
"description": "Current bad-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart.", "description": "Latest bad-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1567,7 +1567,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1630,7 +1630,7 @@ data:
"id": 134, "id": 134,
"type": "state-timeline", "type": "state-timeline",
"title": "Gate Glue Failure Rate", "title": "Gate Glue Failure Rate",
"description": "Current bad-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart.", "description": "Latest bad-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1643,7 +1643,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1706,7 +1706,7 @@ data:
"id": 135, "id": 135,
"type": "state-timeline", "type": "state-timeline",
"title": "SonarQube Failure Rate", "title": "SonarQube Failure Rate",
"description": "Current bad-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart.", "description": "Latest bad-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1719,7 +1719,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1782,7 +1782,7 @@ data:
"id": 136, "id": 136,
"type": "state-timeline", "type": "state-timeline",
"title": "Supply Chain Failure Rate", "title": "Supply Chain Failure Rate",
"description": "Current bad-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are failing right now; this is not an event-count spike chart.", "description": "Latest bad-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are failing in the freshness window; this is not an event-count spike chart.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1795,7 +1795,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1873,7 +1873,7 @@ data:
"id": 138, "id": 138,
"type": "state-timeline", "type": "state-timeline",
"title": "Tests Healthy Rate", "title": "Tests Healthy Rate",
"description": "Current acceptable-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence.", "description": "Latest acceptable-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1886,7 +1886,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"tests|unit|build\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -1949,7 +1949,7 @@ data:
"id": 139, "id": 139,
"type": "state-timeline", "type": "state-timeline",
"title": "Coverage Healthy Rate", "title": "Coverage Healthy Rate",
"description": "Current acceptable-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence.", "description": "Latest acceptable-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -1962,7 +1962,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"coverage\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2025,7 +2025,7 @@ data:
"id": 140, "id": 140,
"type": "state-timeline", "type": "state-timeline",
"title": "LOC Healthy Rate", "title": "LOC Healthy Rate",
"description": "Current acceptable-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence.", "description": "Latest acceptable-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -2038,7 +2038,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"loc|smell\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2101,7 +2101,7 @@ data:
"id": 141, "id": 141,
"type": "state-timeline", "type": "state-timeline",
"title": "Style Healthy Rate", "title": "Style Healthy Rate",
"description": "Current acceptable-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence.", "description": "Latest acceptable-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -2114,7 +2114,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"docs|naming|hygiene|lint|docs_naming|style\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2177,7 +2177,7 @@ data:
"id": 142, "id": 142,
"type": "state-timeline", "type": "state-timeline",
"title": "Gate Glue Healthy Rate", "title": "Gate Glue Healthy Rate",
"description": "Current acceptable-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence.", "description": "Latest acceptable-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -2190,7 +2190,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"gate|glue|gate_glue\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2253,7 +2253,7 @@ data:
"id": 143, "id": 143,
"type": "state-timeline", "type": "state-timeline",
"title": "SonarQube Healthy Rate", "title": "SonarQube Healthy Rate",
"description": "Current acceptable-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence.", "description": "Latest acceptable-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -2266,7 +2266,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"sonarqube|sonar\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }
@ -2329,7 +2329,7 @@ data:
"id": 144, "id": 144,
"type": "state-timeline", "type": "state-timeline",
"title": "Supply Chain Healthy Rate", "title": "Supply Chain Healthy Rate",
"description": "Current acceptable-state percentage for this check family, evaluated over time. Higher means more of the selected suites/checks are healthy right now; gaps mean there was no check evidence.", "description": "Latest acceptable-state percentage for this check family, evaluated over time. Higher means more selected suites/checks are healthy in the freshness window; gaps mean there was no check evidence.",
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
"uid": "atlas-vm" "uid": "atlas-vm"
@ -2342,7 +2342,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "(((100 * (sum by (suite) (max by (suite, check) (((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))", "expr": "(((100 * (sum by (suite) (max by (suite, check) (((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status=~\"ok|passed|success|not_applicable|skipped|na|n/a\"}[30h])) > bool 0)))) / clamp_min((sum by (suite) (max by (suite, check) ((last_over_time(platform_quality:check_status:present_1h{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",check=~\"ironbank|supply_chain|image_compliance|artifact_security\",status!=\"\"}[30h])) > bool 0))), 1))) or on(suite) ((0 * ((count by (suite) (platform_quality_gate_build_info{suite=~\"${suite:regex}\",branch!=\"\",branch=~\"${branch:regex}\",exported_job=\"platform-quality-ci\"}) >= bool 0) or (count by (suite) (max_over_time(platform_quality_gate_runs_total{suite=~\"${suite:regex}\",exported_job=\"platform-quality-ci\"}[30d])) >= bool 0)))))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}}" "legendFormat": "{{suite}}"
} }