Repository navigation
π fix: keep standing meta issues off the Hive activity monitor - #13261
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
Open PR overlap checkBase branch: Conflicts are checked with every PR merged onto the current tip of No conflicting open PRs or same-file overlaps were found. |
There was a problem hiding this comment.
The change does what #13257 asks and is wired to the right bucket names; it leaves CI red because an existing test still encodes the old behaviour.
CI failure (test (rest 1/5), also pulling coverage and test red):
--- FAIL: TestStageTrackerListsSidelinedItems
stage_tracker_cache_test.go:45: items = 13, want 14 (8 fixture + 4 parked issues + 2 sidelined PRs)
Mechanism: that test seeds NonActionableIssues with Number: 10, Title: "Advisory", Bucket: "hive_advisory" (src/pkg/dashboard/stage_tracker_cache_test.go:31) and asserts it is listed with issue10.Bucket == "hive_advisory" (:64) β exactly the row your new continue at src/pkg/dashboard/stage_tracker.go (inside the repo.NonActionableIssues loop) now drops. The old test pins the behaviour #13257 says is wrong, so it needs updating alongside: expect 13 items, drop the issue10 assertions, or assert #10 is absent.
Verified against the tree:
- The bucket strings are the ones the enumerator writes:
src/pkg/github/client.go:1459("hive_advisory") and:1463("dependency_dashboard"); the new consts inownership.gomatch them byte-for-byte. - The skip is placed before the
prNumbers//pull/guard in the sidelined-issues loop only; the actionable/heldfrontendRepoIssuesloop above is untouched, andclient.go:1455-1465sends standing meta issues only todetails(never actionable/held), so no other path can re-admit them. Overview breakdown counters (overview_status.go:238-239) are not touched. Renovate PRs go throughaddPR, unaffected. - The new
TestStageTrackerSkipsStandingMetaIssuesis sound.
Update TestStageTrackerListsSidelinedItems and this looks correct to me.
β hive: agent=reviewer backend=copilot model=claude-fable-5.1 copilot=1.0.88
There was a problem hiding this comment.
Read the diff against v6 plus the bucket producer and the tracker loop. The behaviour change is correct and minimal; what blocks it is a pre-existing test the PR invalidates without updating.
1. TestStageTrackerListsSidelinedItems now fails deterministically (medium, blocks merge)
src/pkg/dashboard/stage_tracker_cache_test.go:31 seeds NonActionableIssues with {Number: 10, Title: "Advisory", Bucket: "hive_advisory"} and line 45 asserts len(resp.Items) == 14. With the new continue at src/pkg/dashboard/stage_tracker.go:812 that issue is intentionally dropped, so the count is 13. CI confirms on test (rest 1/5), test (dashboard shuffle 1/2) and coverage:
stage_tracker_cache_test.go:45: items = 13, want 14 (8 fixture + 4 parked issues + 2 sidelined PRs)
--- FAIL: TestStageTrackerListsSidelinedItems
This is the right behaviour per #13257 β the old test encoded the bug β so the fix is to update that fixture's expectation (13 items, and assert issue 10 is absent) rather than to change the code. Also worth refreshing the doc comment at stage_tracker.go:100-101, which still lists hive_advisory among the buckets a tracker item can carry.
Verified correct
- The two bucket strings match what the producer emits:
src/pkg/github/client.go:1459("hive_advisory") and:1463("dependency_dashboard"). The frontend uses the same keys (index.html:17851, 17854). - The skip sits before
addIssue, so these issues never reach the items slice and therefore drop out of counts, badge, chips and the repo facet list without further changes β matching the body. NonActionablePrsis untouched, so renovate/dependabot PRs still list, as the new test asserts (stage_tracker_test.go:522).- Overview breakdown path (
overview_status.go:238-239) is a separate consumer and unaffected.
β hive: agent=reviewer-2 backend=copilot model=claude-fable-5.1 copilot=1.0.88
There was a problem hiding this comment.
Looks correct to me.
- The two new constants in
src/pkg/dashboard/ownership.go:149-150match the strings the producer actually emits:src/pkg/github/client.go:1459("hive_advisory") and:1463("dependency_dashboard"), and the same stringsoverview_status.go:238-239already keys the breakdown on β so the overview count is unchanged while the monitor drops them. - The skip sits in the
repo.NonActionableIssuesloop (stage_tracker.go:812), which is whereworkIssueroutes these buckets; theActionableIssuespath is untouched, so a plain issue still lists. TestStageTrackerSkipsStandingMetaIssuescovers both buckets plus a renovate PR staying listed, and the existing fixture test was adjusted (14 β 13) rather than loosened.
No findings. I have not approved anything.
β hive: agent=reviewer backend=copilot model=claude-fable-5.1 copilot=1.0.88
There was a problem hiding this comment.
Looks correct to me (not an approval β a human still signs).
Read the producer and the only consumer path at head c89b05d:
pkg/github/client.go:1456-1465βstandingMetaIssueKindForclassifies these issues andcontinues before the hold/actionable split, so they can only ever reach the tracker as work details inrepo.NonActionableIssueswith bucket"hive_advisory"/"dependency_dashboard". ThefrontendRepoIssuespath atstage_tracker.go:796-801cannot see them, so the single skip atstage_tracker.go:812is sufficient β no second filter needed on the actionable loop.- The new constants in
ownership.go:149-150match the producer's literals exactly (client.go:1459,1463) and the Overview breakdown keys (overview_status.go:238-239), so the Overview counts are untouched, as #13257 asks. TestStageTrackerSkipsStandingMetaIssuescovers the one thing worth guarding: arenovate[bot]PR (#30) still appears while the Dependency Dashboard issue (#20) does not.
Implements the first of the two approaches #13257 proposed; the alternative (re-running the predicate on every issue path) would be redundant given the producer already excludes them upstream.
β hive: agent=reviewer-2 backend=copilot model=claude-fable-5.1 copilot=1.0.88
|
Hive filed review findings that do not block this PR as backlog items:
Cap: 10 backlog item(s) per PR per day. |
β¦stage tracker Address review findings on #13261: document the hive_advisory / dependency_dashboard exclusion in dashboard.md and api-reference.md, drop hive_advisory from the StageTrackerItem.Bucket comment, and use the repoWorkBucket* constants in overview_status.go instead of bare literals. Hive-Fix-Attempt: 1/6 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Read the path at f21ac28. Looks correct to me.
src/pkg/github/client.go:1466-1474: standing meta issues are classified before the actionability buckets and emitted viaworkIssue(..., "hive_advisory", β¦)/"dependency_dashboard", which setsRepoWorkIssue.Bucketverbatim (client.go:4041). They can only reach the tracker throughNonActionableIssues, so the singlecontinueinbuildStageTracker(stage_tracker.go:812) is the one place that needs it.- Replacing the two string literals in
overview_status.gowith the newownership.goconstants keeps the Overview breakdown byte-identical ("hive_advisory"/"dependency_dashboard"), so the overview counts are unchanged as the body states.
One docs nit (not blocking): src/docs/dashboard.md still says "The list is complete: every open issue and PR of the watched repos is an entry β β¦" immediately before the new sentence that excludes standing meta issues. Worth softening the first sentence so the paragraph doesn't contradict itself.
β hive: agent=reviewer-2 backend=copilot model=claude-fable-5.1 copilot=1.0.88
Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com> Co-authored-by: Danathar <6772335+Danathar@users.noreply.github.com>
Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com>
β¦onstants Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com>
dashboard-sections.md and labels-and-control-signals.md still said the Hive activity monitor lists every open issue and PR; align them with dashboard.md and api-reference.md, which already carve out Dependency Dashboards and the Hive Advisory Report (still counted in Overview). Hive-Fix-Attempt: 3/6 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com>
|
hive/awaiting-ci: rebased onto v6 (one doc-line conflict in src/docs/dashboard-sections.md merged β v6's needs-triage note kept alongside this PR's standing-meta exclusion). CI pending β sweep will merge when green. π Hive Agent: β hive: agent=scanner backend=copilot model=claude-fable-5.1 copilot=1.0.88 |
cb1bf47 to
c0502e8
Compare
There was a problem hiding this comment.
Read the tree around the change: this looks correct to me.
- The only emitter of the
hive_advisory/dependency_dashboardbuckets issrc/pkg/github/client.go:1466-1475, whichcontinues before hold/exempt handling, so those issues only ever reach the dashboard viarepo.NonActionableIssues. The new skip atsrc/pkg/dashboard/stage_tracker.go:817-819sits on exactly that loop, beforeaddIssue, so there is no second path that could still list them. buildStageTrackerbuilds items only from the status snapshot (no stage-store-only rows), so a stalestage/*record on one of these issues cannot resurrect it.- The new constants in
ownership.go:154-155match the literal strings inclient.go, andoverview_status.gokeeps counting them in the Overview breakdown as the docs now say (dashboard.md:808,dashboard-sections.md:615).
Test adjustments (14 β 13 items, new TestStageTrackerSkipsStandingMetaIssues) match the behaviour. No findings.
β hive: agent=reviewer backend=copilot model=claude-fable-5.1 copilot=1.0.88
There was a problem hiding this comment.
Read the v6 tree around the change. The fix is correct and narrowly scoped:
src/pkg/github/client.go:1466-1475is the only producer of thehive_advisory/dependency_dashboardbuckets: standing meta issues are counted in the breakdown and appended to the work details with those literal bucket names, thencontinueβ so they never reach the actionable set and only enter the tracker throughrepo.NonActionableIssues.src/pkg/dashboard/stage_tracker.go:814-822is the only path that turnsNonActionableIssuesinto tracker rows;buildStageTrackerhas no other issue source (thefrontendRepoIssuesloop is the actionable set). The newcontinuetherefore removes exactly these two buckets and nothing else; renovate/dependabot PRs go throughNonActionablePrs/frontendRepoPRsand are untouched, as the body says.- The new constants in
ownership.go:152-155equal the literals inpkg/github/client.go:1469,1473, andoverview_status.go:238-239,557-558are pure literalβconstant swaps, so the Overview breakdown is unchanged. - The test update (14β13 items, advisory absent) matches the behaviour.
One small, non-blocking observation: the bucket names are now constants in pkg/dashboard but still string literals in pkg/github/client.go:1469,1473 (and in the RepoWorkBreakdown json tags at client.go:4073-4074). A future rename on either side would silently stop the skip from matching. Not a defect today β just worth keeping in mind if these ever move.
Body matches the diff. Looks correct to me.
β hive: agent=reviewer-2 backend=copilot model=claude-fable-5.1 copilot=1.0.88
|
Thank you for your contribution! Your PR has been merged. We'd love to hear how your experience was: share feedback |
β¦off the activity monitor again (#16786) * π fix(dashboard): keep dependency dashboards and the advisory report off the activity monitor again #13261 skipped the hive_advisory and dependency_dashboard buckets in the stage tracker; the v5 β v6 top-up #13452 lost that skip while merging #13434's single open-items set, so a bot Dependency Dashboard (projectbluefin/bluefin-report#52) is an "Open" row again. Keep them in the payload, so open_issues still equals the Overview tile, and leave them out of the monitor's rows, label chips and attention counts. The header's sum names them, as it does folded review notes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BQYnPGFJx81c8JXR3o1sg1 Signed-off-by: Danathar <Danathar@users.noreply.github.com> * π test(dashboard): label_facets.test.js loads stageTrackerIsStandingMeta The node helper tests copy functions out of index.html by name; stageTrackerLabelFacets now calls stageTrackerIsStandingMeta, so the harness loads it too, and a case pins that a standing meta issue offers no chips and no needs-human count. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BQYnPGFJx81c8JXR3o1sg1 Signed-off-by: Danathar <Danathar@users.noreply.github.com> --------- Signed-off-by: Danathar <Danathar@users.noreply.github.com> Co-authored-by: Danathar <Danathar@users.noreply.github.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
The stage tracker (activity monitor) now skips sidelined issues in the hive_advisory and dependency_dashboard buckets, so Dependency Dashboards and the Hive Advisory Report no longer appear as pipeline work or inflate counts, badge, chips and repo list. The Overview breakdown is unchanged, and renovate/dependabot PRs stay. Adds a test.
Closes #13257
β hive: agent=scanner backend=copilot model=claude-fable-5.1 copilot=1.0.88 requested_by=@Danathar
Closes #13299