浏览代码

Merge pull request #1484 from spastorino/tidy-up-prioritization-agenda

Tidy up prioritization agenda code
Santiago Pastorino 3 年之前
父节点
当前提交
fd72bb6453
共有 1 个文件被更改,包括 428 次插入465 次删除
  1. 428 465
      src/agenda.rs

+ 428 - 465
src/agenda.rs

@@ -2,473 +2,436 @@ use crate::actions::{Action, Query, QueryKind, QueryMap, Step};
 use crate::github;
 
 pub fn prioritization<'a>() -> Box<dyn Action> {
-    let mut actions = Vec::new();
-
-    let mut queries = Vec::new();
-
-    // MCP/FCP queries
-    queries.push(QueryMap {
-        name: "mcp_new_not_seconded",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["major-change", "to-announce"],
-            exclude_labels: vec![
-                "proposed-final-comment-period",
-                "finished-final-comment-period",
-                "final-comment-period",
-                "major-change-accepted",
-                "t-libs",
-                "t-libs-api",
-            ],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "mcp_old_not_seconded",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["major-change"],
-            exclude_labels: vec![
-                "to-announce",
-                "proposed-final-comment-period",
-                "finished-final-comment-period",
-                "final-comment-period",
-                "t-libs",
-                "t-libs-api",
-            ],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "in_pre_fcp",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["proposed-final-comment-period"],
-            exclude_labels: vec!["t-libs", "t-libs-api"],
-        }),
-    });
-    queries.push(QueryMap {
-        name: "in_fcp",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["final-comment-period"],
-            exclude_labels: vec!["t-libs", "t-libs-api"],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "mcp_accepted",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "all")],
-            include_labels: vec!["major-change-accepted", "to-announce"],
-            exclude_labels: vec!["t-libs", "t-libs-api"],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "fcp_finished",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "all")],
-            include_labels: vec![
-                "finished-final-comment-period",
-                "disposition-merge",
-                "to-announce",
-            ],
-            exclude_labels: vec!["t-libs", "t-libs-api"],
-        }),
-    });
-
-    actions.push(Query {
-        repos: vec![("rust-lang", "compiler-team")],
-        queries,
-    });
-
-    let mut queries = Vec::new();
-
-    queries.push(QueryMap {
-        name: "in_pre_fcp",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["proposed-final-comment-period", "T-compiler"],
-            exclude_labels: vec!["t-libs", "t-libs-api"],
-        }),
-    });
-    queries.push(QueryMap {
-        name: "in_fcp",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["final-comment-period", "T-compiler"],
-            exclude_labels: vec!["t-libs", "t-libs-api"],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "fcp_finished",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "all")],
-            include_labels: vec![
-                "finished-final-comment-period",
-                "disposition-merge",
-                "to-announce",
-            ],
-            exclude_labels: vec!["t-libs", "t-libs-api"],
-        }),
-    });
-
-    actions.push(Query {
-        repos: vec![("rust-lang", "rust")],
-        queries,
-    });
-
-    let mut queries = Vec::new();
-
-    queries.push(QueryMap {
-        name: "in_pre_fcp",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["proposed-final-comment-period"],
-            exclude_labels: vec!["t-libs", "t-libs-api"],
-        }),
-    });
-    queries.push(QueryMap {
-        name: "in_fcp",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["final-comment-period"],
-            exclude_labels: vec!["t-libs", "t-libs-api"],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "fcp_finished",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "all")],
-            include_labels: vec![
-                "finished-final-comment-period",
-                "disposition-merge",
-                "to-announce",
-            ],
-            exclude_labels: vec!["t-libs", "t-libs-api"],
-        }),
-    });
-
-    actions.push(Query {
-        repos: vec![("rust-lang", "rust-forge")],
-        queries,
-    });
-
-    let mut queries = Vec::new();
-
-    // beta nomination queries
-    queries.push(QueryMap {
-        name: "beta_nominated_t_compiler",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![],
-            include_labels: vec!["beta-nominated", "T-compiler"],
-            exclude_labels: vec!["beta-accepted"],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "beta_nominated_t_rustdoc",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![],
-            include_labels: vec!["beta-nominated", "T-rustdoc"],
-            exclude_labels: vec!["beta-accepted"],
-        }),
-    });
-
-    // stable nomination queries
-    queries.push(QueryMap {
-        name: "stable_nominated_t_compiler",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![],
-            include_labels: vec!["stable-nominated", "T-compiler"],
-            exclude_labels: vec!["stable-accepted"],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "stable_nominated_t_rustdoc",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![],
-            include_labels: vec!["stable-nominated", "T-rustdoc"],
-            exclude_labels: vec!["stable-accepted"],
-        }),
-    });
-
-    // prs waiting on team queries
-    queries.push(QueryMap {
-        name: "prs_waiting_on_team_t_compiler",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["S-waiting-on-team", "T-compiler"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    // issues of note queries
-    queries.push(QueryMap {
-        name: "issues_of_note_p_critical",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["T-compiler", "P-critical"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_unassigned_p_critical",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open"), ("no", "assignee")],
-            include_labels: vec!["T-compiler", "P-critical"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_p_high",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["T-compiler", "P-high"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_unassigned_p_high",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open"), ("no", "assignee")],
-            include_labels: vec!["T-compiler", "P-high"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_regression_from_stable_to_beta_p_critical",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["regression-from-stable-to-beta", "P-critical"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_regression_from_stable_to_beta_p_high",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["regression-from-stable-to-beta", "P-high"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_regression_from_stable_to_beta_p_medium",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["regression-from-stable-to-beta", "P-medium"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_regression_from_stable_to_beta_p_low",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["regression-from-stable-to-beta", "P-low"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_regression_from_stable_to_nightly_p_critical",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["regression-from-stable-to-nightly", "P-critical"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_regression_from_stable_to_nightly_p_high",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["regression-from-stable-to-nightly", "P-high"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_regression_from_stable_to_nightly_p_medium",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["regression-from-stable-to-nightly", "P-medium"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_regression_from_stable_to_nightly_p_low",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["regression-from-stable-to-nightly", "P-low"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_regression_from_stable_to_stable_p_critical",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["regression-from-stable-to-stable", "P-critical"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_regression_from_stable_to_stable_p_high",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["regression-from-stable-to-stable", "P-high"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_regression_from_stable_to_stable_p_medium",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["regression-from-stable-to-stable", "P-medium"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "issues_of_note_regression_from_stable_to_stable_p_low",
-        kind: QueryKind::Count,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["regression-from-stable-to-stable", "P-low"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "p_critical_t_compiler",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["T-compiler", "P-critical"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "p_critical_t_rustdoc",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["T-rustdoc", "P-critical"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "beta_regressions_p_high",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["regression-from-stable-to-beta", "P-high"],
-            exclude_labels: vec!["T-infra", "T-libs", "T-release", "T-rustdoc", "T-core"],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "nightly_regressions_unassigned_p_high",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open"), ("no", "assignee")],
-            include_labels: vec!["regression-from-stable-to-nightly", "P-high"],
-            exclude_labels: vec!["T-infra", "T-libs", "T-release", "T-rustdoc", "T-core"],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "nominated_t_compiler",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["I-nominated", "T-compiler"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    queries.push(QueryMap {
-        name: "top_unreviewed_prs",
-        kind: QueryKind::List,
-        query: Box::new(github::graphql::LeastRecentlyReviewedPullRequests),
-    });
-
-    actions.push(Query {
-        repos: vec![("rust-lang", "rust")],
-        queries,
-    });
-
-    // retrieve some RFCs for the T-compiler agenda
-
-    let mut queries = Vec::new();
-
-    // https://github.com/rust-lang/rfcs/pulls?q=is%3Aopen+label%3AI-nominated+label%3AT-compiler
-    queries.push(QueryMap {
-        name: "nominated_rfcs_t_compiler",
-        kind: QueryKind::List,
-        query: Box::new(github::Query {
-            filters: vec![("state", "open")],
-            include_labels: vec!["T-compiler", "I-nominated"],
-            exclude_labels: vec![],
-        }),
-    });
-
-    actions.push(Query {
-        repos: vec![("rust-lang", "rfcs")],
-        queries,
-    });
-
     Box::new(Step {
         name: "prioritization_agenda",
-        actions,
+        actions: vec![
+            Query {
+                repos: vec![("rust-lang", "compiler-team")],
+                queries: vec![
+                    // MCP/FCP queries
+                    QueryMap {
+                        name: "mcp_new_not_seconded",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["major-change", "to-announce"],
+                            exclude_labels: vec![
+                                "proposed-final-comment-period",
+                                "finished-final-comment-period",
+                                "final-comment-period",
+                                "major-change-accepted",
+                                "t-libs",
+                                "t-libs-api",
+                            ],
+                        }),
+                    },
+                    QueryMap {
+                        name: "mcp_old_not_seconded",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["major-change"],
+                            exclude_labels: vec![
+                                "to-announce",
+                                "proposed-final-comment-period",
+                                "finished-final-comment-period",
+                                "final-comment-period",
+                                "t-libs",
+                                "t-libs-api",
+                            ],
+                        }),
+                    },
+                    QueryMap {
+                        name: "in_pre_fcp",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["proposed-final-comment-period"],
+                            exclude_labels: vec!["t-libs", "t-libs-api"],
+                        }),
+                    },
+                    QueryMap {
+                        name: "in_fcp",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["final-comment-period"],
+                            exclude_labels: vec!["t-libs", "t-libs-api"],
+                        }),
+                    },
+                    QueryMap {
+                        name: "mcp_accepted",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "all")],
+                            include_labels: vec!["major-change-accepted", "to-announce"],
+                            exclude_labels: vec!["t-libs", "t-libs-api"],
+                        }),
+                    },
+                    QueryMap {
+                        name: "fcp_finished",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "all")],
+                            include_labels: vec![
+                                "finished-final-comment-period",
+                                "disposition-merge",
+                                "to-announce",
+                            ],
+                            exclude_labels: vec!["t-libs", "t-libs-api"],
+                        }),
+                    },
+                ],
+            },
+            Query {
+                repos: vec![("rust-lang", "rust")],
+                queries: vec![
+                    QueryMap {
+                        name: "in_pre_fcp",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["proposed-final-comment-period", "T-compiler"],
+                            exclude_labels: vec!["t-libs", "t-libs-api"],
+                        }),
+                    },
+                    QueryMap {
+                        name: "in_fcp",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["final-comment-period", "T-compiler"],
+                            exclude_labels: vec!["t-libs", "t-libs-api"],
+                        }),
+                    },
+                    QueryMap {
+                        name: "fcp_finished",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "all")],
+                            include_labels: vec![
+                                "finished-final-comment-period",
+                                "disposition-merge",
+                                "to-announce",
+                            ],
+                            exclude_labels: vec!["t-libs", "t-libs-api"],
+                        }),
+                    },
+                ],
+            },
+            Query {
+                repos: vec![("rust-lang", "rust-forge")],
+                queries: vec![
+                    QueryMap {
+                        name: "in_pre_fcp",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["proposed-final-comment-period"],
+                            exclude_labels: vec!["t-libs", "t-libs-api"],
+                        }),
+                    },
+                    QueryMap {
+                        name: "in_fcp",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["final-comment-period"],
+                            exclude_labels: vec!["t-libs", "t-libs-api"],
+                        }),
+                    },
+                    QueryMap {
+                        name: "fcp_finished",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "all")],
+                            include_labels: vec![
+                                "finished-final-comment-period",
+                                "disposition-merge",
+                                "to-announce",
+                            ],
+                            exclude_labels: vec!["t-libs", "t-libs-api"],
+                        }),
+                    },
+                ],
+            },
+            Query {
+                repos: vec![("rust-lang", "rust")],
+                queries: vec![
+                    // beta nomination queries
+                    QueryMap {
+                        name: "beta_nominated_t_compiler",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![],
+                            include_labels: vec!["beta-nominated", "T-compiler"],
+                            exclude_labels: vec!["beta-accepted"],
+                        }),
+                    },
+                    QueryMap {
+                        name: "beta_nominated_t_rustdoc",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![],
+                            include_labels: vec!["beta-nominated", "T-rustdoc"],
+                            exclude_labels: vec!["beta-accepted"],
+                        }),
+                    },
+                    // stable nomination queries
+                    QueryMap {
+                        name: "stable_nominated_t_compiler",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![],
+                            include_labels: vec!["stable-nominated", "T-compiler"],
+                            exclude_labels: vec!["stable-accepted"],
+                        }),
+                    },
+                    QueryMap {
+                        name: "stable_nominated_t_rustdoc",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![],
+                            include_labels: vec!["stable-nominated", "T-rustdoc"],
+                            exclude_labels: vec!["stable-accepted"],
+                        }),
+                    },
+                    // prs waiting on team queries
+                    QueryMap {
+                        name: "prs_waiting_on_team_t_compiler",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["S-waiting-on-team", "T-compiler"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    // issues of note queries
+                    QueryMap {
+                        name: "issues_of_note_p_critical",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["T-compiler", "P-critical"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_unassigned_p_critical",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open"), ("no", "assignee")],
+                            include_labels: vec!["T-compiler", "P-critical"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_p_high",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["T-compiler", "P-high"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_unassigned_p_high",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open"), ("no", "assignee")],
+                            include_labels: vec!["T-compiler", "P-high"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_regression_from_stable_to_beta_p_critical",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["regression-from-stable-to-beta", "P-critical"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_regression_from_stable_to_beta_p_high",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["regression-from-stable-to-beta", "P-high"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_regression_from_stable_to_beta_p_medium",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["regression-from-stable-to-beta", "P-medium"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_regression_from_stable_to_beta_p_low",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["regression-from-stable-to-beta", "P-low"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_regression_from_stable_to_nightly_p_critical",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["regression-from-stable-to-nightly", "P-critical"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_regression_from_stable_to_nightly_p_high",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["regression-from-stable-to-nightly", "P-high"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_regression_from_stable_to_nightly_p_medium",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["regression-from-stable-to-nightly", "P-medium"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_regression_from_stable_to_nightly_p_low",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["regression-from-stable-to-nightly", "P-low"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_regression_from_stable_to_stable_p_critical",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["regression-from-stable-to-stable", "P-critical"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_regression_from_stable_to_stable_p_high",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["regression-from-stable-to-stable", "P-high"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_regression_from_stable_to_stable_p_medium",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["regression-from-stable-to-stable", "P-medium"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "issues_of_note_regression_from_stable_to_stable_p_low",
+                        kind: QueryKind::Count,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["regression-from-stable-to-stable", "P-low"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "p_critical_t_compiler",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["T-compiler", "P-critical"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "p_critical_t_rustdoc",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["T-rustdoc", "P-critical"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "beta_regressions_p_high",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["regression-from-stable-to-beta", "P-high"],
+                            exclude_labels: vec![
+                                "T-infra",
+                                "T-libs",
+                                "T-release",
+                                "T-rustdoc",
+                                "T-core",
+                            ],
+                        }),
+                    },
+                    QueryMap {
+                        name: "nightly_regressions_unassigned_p_high",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open"), ("no", "assignee")],
+                            include_labels: vec!["regression-from-stable-to-nightly", "P-high"],
+                            exclude_labels: vec![
+                                "T-infra",
+                                "T-libs",
+                                "T-release",
+                                "T-rustdoc",
+                                "T-core",
+                            ],
+                        }),
+                    },
+                    QueryMap {
+                        name: "nominated_t_compiler",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["I-nominated", "T-compiler"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                    QueryMap {
+                        name: "top_unreviewed_prs",
+                        kind: QueryKind::List,
+                        query: Box::new(github::graphql::LeastRecentlyReviewedPullRequests),
+                    },
+                ],
+            },
+            Query {
+                repos: vec![("rust-lang", "rfcs")],
+                queries: vec![
+                    // retrieve some RFCs for the T-compiler agenda
+                    // https://github.com/rust-lang/rfcs/pulls?q=is%3Aopen+label%3AI-nominated+label%3AT-compiler
+                    QueryMap {
+                        name: "nominated_rfcs_t_compiler",
+                        kind: QueryKind::List,
+                        query: Box::new(github::Query {
+                            filters: vec![("state", "open")],
+                            include_labels: vec!["T-compiler", "I-nominated"],
+                            exclude_labels: vec![],
+                        }),
+                    },
+                ],
+            },
+        ],
     })
 }