From a5f592938be5421165cdbc810ae390e91b63744d Mon Sep 17 00:00:00 2001 From: zhaozhaozz <6450679+zhaozhaozz@users.noreply.github.com> Date: Thu, 15 Oct 2026 11:35:32 +0000 Subject: [PATCH] Simplify the Issue page around the newest-updated open list --- docs/dashboard-pages.md | 4 +-- static/app.js | 13 ---------- static/index.html | 8 +++--- test/journey-board.spec.cjs | 49 +++++++++++++++++++++++++++++++++++-- 4 files changed, 53 insertions(+), 21 deletions(-) diff --git a/docs/dashboard-pages.md b/docs/dashboard-pages.md index 905ca905a..b803d510b 100644 --- a/docs/dashboard-pages.md +++ b/docs/dashboard-pages.md @@ -40,7 +40,7 @@ CI、PR、Issue 数据不可读取时显示“状态未知”,不会显示为 - **口径**:按 UTC 日期统计。存量按每个 Issue/PR 当前的创建、关闭时间回推,关闭后又重开的从创建起都算开放。历史尚未回填完时,说明里会提示较早日期可能偏少。 - 范围和开关只保存在当前页面,重新打开回到最近 30 天;定时刷新数据时保留。 -**开启时长**饼图与开放列表标题、切换及筛选条同一行(窄屏上下堆叠),四桶使用分类色 `--s2`、`--s4`、`--s7`、`--s3`:按创建时间把当前开放项分进 `<7d`、`7-30d`、`30-90d`、`>90d` 四桶(边界与采集器的年龄统计一致),图例同时给出数量和占比;`age_days` 缺失的项不计入,数量为 0 的桶只在图例里列出、不可点。点击扇区或图例只筛选本页下方的开放列表(表格和看板都吃同一个筛选),再点一次选中的扇区取消;筛选与搜索、标签、认领人等条件同时生效(取交集),Issue 与 PR 的选择互不影响。筛选生效时筛选条出现当前时长桶,可点 × 清除;结果为 0 时列表显示空状态,饼图保持可见。“最近更新”“最久未动”“最近合并”等旁路表不受这个筛选影响。Issue 页用这张图代替原来的“年龄分布”条形图。 +**开启时长**饼图与开放列表标题、切换及筛选条同一行(窄屏上下堆叠),四桶使用分类色 `--s2`、`--s4`、`--s7`、`--s3`:按创建时间把当前开放项分进 `<7d`、`7-30d`、`30-90d`、`>90d` 四桶(边界与采集器的年龄统计一致),图例同时给出数量和占比;`age_days` 缺失的项不计入,数量为 0 的桶只在图例里列出、不可点。点击扇区或图例只筛选本页下方的开放列表(表格和看板都吃同一个筛选),再点一次选中的扇区取消;筛选与搜索、标签、认领人等条件同时生效(取交集),Issue 与 PR 的选择互不影响。筛选生效时筛选条出现当前时长桶,可点 × 清除;结果为 0 时列表显示空状态,饼图保持可见。“最近更新”“最久未动”两张卡已从 Issue 页去掉;开放 Issue 表默认按更新时间 `updated_at` 从新到旧,缺失时间排最后,用户可点表头改排序,刷新页面恢复默认。PR 的“最近合并”仍不受开放时长筛选。Issue 页用这张图代替原来的“年龄分布”条形图。 数据由看板仓的采集在 Actions 中算好写进快照,不读 Bot 的数据库,计算方式见[增量同步与历史](incremental-history.md)。 @@ -91,7 +91,7 @@ node .e2e/node_modules/playwright/cli.js test --config test/playwright.config.cj - 总览的问题排序与数据缺失时显示“状态未知”; - Issue / PR 的表格 / 看板切换、按类型隔离、本地字段与导入导出; -- Issue / PR 开启时长饼图:桶边界与数量、扇区/图例点击与再点取消、与文本搜索取交、两页选择互不影响、看板视图同一筛选、空结果与旁路表不受影响; +- Issue / PR 开启时长饼图:桶边界与数量、扇区/图例点击与再点取消、与文本搜索取交、两页选择互不影响、看板视图同一筛选、空结果、Issue 更新时间默认降序与 PR 最近合并不受影响; - Issue / PR 每日趋势:默认 30 天、预设与自定义范围、刷新后保留范围、数据开关、悬停与方向键查看、整数刻度、按日表格,以及 390px 下不溢出; - 看板列独立滚动与刷新后保留位置; - 覆盖率目录树的展开、收起、过滤、按覆盖率排序,以及无逐文件数据时按分组展示; diff --git a/static/app.js b/static/app.js index b04e970ff..89a6759aa 100644 --- a/static/app.js +++ b/static/app.js @@ -637,24 +637,11 @@ { label: '中位年龄', value: days(d.median_age_days), sub: `最老 ${days(d.oldest_age_days)}` }, ]); html += trendSection('issues'); - const issueRow = (i) => `${link(i.url, `#${i.number} ${esc(i.title)}`)}${esc(i.author)} · ${labelChips(i.labels)}`; html += `