Repository navigation
stewards, github-watcher: an empty dependency graph is reported as such (BB-289) - #317
Conversation
…ch (BB-289)
`sourceDependabotAlerts` gains an additive, optional `graphEmpty: string[]`:
the repositories whose GraphQL `dependencyGraphManifests(first:1){totalCount}`
is zero, so an empty alert list means Dependabot cannot see any manifest
rather than that there is nothing open. A failed graph read is not an empty
graph: the repo stays unflagged. The contract copy is updated in all three
plugins, and the deps-alerts wake and `bb stewards check` now say "dependency
graph empty" and name the by-hand toggle (repo Settings → Advanced Security →
Dependency graph) instead of "no open alerts".
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
Independent review running in bb thread @thread:thr_2ut9ycyn5r. — from bb thread thr_4sxy8yhn44 |
Review round 1 (Claude Sonnet 4.6, at b96b9e8)Owner review required: yes — the diff touches BlockersNone. Suggestions
Checked
— from bb thread thr_2ut9ycyn5r |
|
Round 1 review addressed (head b96b9e8, unchanged).
No code changed; the approved verdict stands on b96b9e8, checks green. — from bb thread thr_4sxy8yhn44 |
|
Approved b96b9e8 from the Stewards page |
2429e36
into
bb/bb-287-stacked-prs-visible-for-their-whole-life-thr_wgcg4z2j5y
|
Merged: owner-reviewed, approved by trotterdylan on b96b9e8 (comment 2026-11-10T11:21:29Z), reviewer approved b96b9e8, checks green. merge commit 2429e36 This is a stacked merge into — from bb thread thr_4sxy8yhn44 |
…ch (BB-289) (#317) `sourceDependabotAlerts` gains an additive, optional `graphEmpty: string[]`: the repositories whose GraphQL `dependencyGraphManifests(first:1){totalCount}` is zero, so an empty alert list means Dependabot cannot see any manifest rather than that there is nothing open. A failed graph read is not an empty graph: the repo stays unflagged. The contract copy is updated in all three plugins, and the deps-alerts wake and `bb stewards check` now say "dependency graph empty" and name the by-hand toggle (repo Settings → Advanced Security → Dependency graph) instead of "no open alerts". Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
…ch (BB-289) (#317) `sourceDependabotAlerts` gains an additive, optional `graphEmpty: string[]`: the repositories whose GraphQL `dependencyGraphManifests(first:1){totalCount}` is zero, so an empty alert list means Dependabot cannot see any manifest rather than that there is nothing open. A failed graph read is not an empty graph: the repo stays unflagged. The contract copy is updated in all three plugins, and the deps-alerts wake and `bb stewards check` now say "dependency graph empty" and name the by-hand toggle (repo Settings → Advanced Security → Dependency graph) instead of "no open alerts". Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
Implements BB-289.
The deps-alerts steward could not tell "no open Dependabot alerts" from "Dependabot cannot see any manifest", because an empty alert feed and an empty dependency graph read the same.
sourceDependabotAlertsnow reports the repositories whose GraphQLdependencyGraphManifests(first:1) { totalCount }is zero, and the wake andbb stewards checksay "dependency graph empty" and name the by-hand toggle instead.Classification
owner-reviewed: this touches
plugins/stewards/server.ts, which thebigDecisionsuser plumbing entry covers, so the owner's approval is the gate and nobb-approvalis posted.What changes
source-contract.ts(all three copies, byte-identical):sourceDependabotAlerts.outputgains an additive, optionalgraphEmpty: string[](default[]), the repositories whose dependency graph parsed zero manifests.contract.test.tsstays green. A source that does not implement it (linear) degrades to no flag.plugins/github-watcher/github.ts:DEPENDENCY_GRAPH_QUERYandparseDependencyGraphCountforrepository.dependencyGraphManifests(first: 1) { totalCount }.plugins/github-watcher/server.ts(sourceDependabotAlerts): one GraphQL read per repository;totalCount0 adds the repo tographEmpty. A failed read is not an empty graph: the repo is left unflagged and no error is added.plugins/stewards/deps.ts:depsLookSchemagains optionalgraphEmpty: boolean(absent = false, so a look stored before the field parses).plugins/stewards/server.ts:lookAtDepssets it from the source'sgraphEmpty; thebb stewards checkdeps lines name each graph-empty repo and the toggle.plugins/stewards/wake.ts:formatDepsWakesays Dependency graph empty and names the toggle (repo Settings → Advanced Security → Dependency graph) instead of No open alerts when the repo is graph-empty.Testing
npm testinplugins/stewards: pass (1510 tests; not in the CI matrix),npm run typecheckclean.npm testinplugins/github-watcher: pass (101 tests), typecheck clean.npm testinplugins/linear: pass (158 tests), typecheck clean (its contract copy changed).checksay "dependency graph empty" with the toggle; a non-empty graph and a failed graph read are not flagged.bitcomplete/bb-pluginswith the real query:dependencyGraphManifests(first:1){totalCount}returns 37, and its open alert list is currently empty, so it is correctly not flagged (the empty feed is a real "no open alerts", not a hidden graph). The zero case is covered by the unit tests (dependencyGraph = 0), since no repo here has its graph disabled.🤖 Generated with Claude Code