Skip to content

fix(deps): follow-up fixes from PR #135 review + quality-gate cycle - #136

Merged
wgordon17 merged 2 commits into
gordon-code:mainfrom
wgordon17:fix/dependency-tab-pr-review-fixes
Aug 19, 2026
Merged

fix(deps): follow-up fixes from PR #135 review + quality-gate cycle#136
wgordon17 merged 2 commits into
gordon-code:mainfrom
wgordon17:fix/dependency-tab-pr-review-fixes

Conversation

@wgordon17

Copy link
Copy Markdown
Member

Summary

Fixes findings from /pr-review on PR gordon-code#135:
- Reorders genericMatch (from/to semver-diff) before crateMatch/dockerMatch
  so a title combining a crate/docker-tag keyword with from...to phrasing
  classifies via the correct semver-diff path instead of having the lazy
  capture group absorb the from-clause into the package name.
- Narrows the generic single-target fallback's capture group from .+? to
  a single non-whitespace token so a human-authored, multi-word title
  (reachable via the label-only dependency admission path) isn't
  misclassified as a dependency bump.
- Adds digest/pin/maintenance to needsBodyFallback's label check so it
  mirrors depCategory's label list, avoiding a redundant GraphQL
  body-fetch for a PR already classified via label.
- Adds regression tests for all of the above, plus boundary tests for
  scoped npm packages and slash-containing Go module paths.
Fixes remaining findings from /pr-review + this session's own /quality-gate
on PR gordon-code#135:
- Extracts fetchNodeBodiesBatched<TNode,K,V>() as a shared helper for
  fetchDashboardIssueBodies/fetchDepPRBodies, removing ~20 lines of
  duplicated batching/timeout/error-reporting boilerplate. Both now
  return { bodies, failedIds } instead of a bare Map.
- Adds a 5-minute failure-cooldown Map in DashboardPage.tsx so a
  persistently-failing dependency PR isn't re-fetched (burning a full
  20s timeout + an unbounded Sentry event) every poll cycle — mirrors
  the existing _repoLastTargeted/TARGETED_COOLDOWN_MS pattern in
  poll.ts. The cooldown-prune step runs on every effect evaluation
  (not only when something needs fetching), so a PR that fails,
  leaves the dependency set, and reopens isn't stuck on a stale entry.
- Restores always-on console.debug logging in both files (reverting an
  earlier DEV-gating pass) to match this codebase's dominant
  console.debug/info convention (most existing calls — auth.ts,
  notifications.ts, OAuth callbacks — already ship unconditionally to
  production) and to preserve the original implementation plan's
  production-diagnostic strategy for a still-open reactivity-bug
  investigation.
- Rewords a debug log message that leaked internal authoring
  commentary, and rewrites a test comment that referenced an external
  planning-document section number.
- Adds a banner comment matching api.ts's established section-header
  convention.
- Adds tests: full 7-category sort-order regression, a Digest filter
  functional test, an integration test proving the hung-request guard
  releases and a later poll retries, and three cooldown-specific
  integration tests (same-PR exclusion within the cooldown window,
  cooldown-entry pruning when a PR leaves the dependency set, and
  pruning when no other PR triggers a fetch in between).
@wgordon17
wgordon17 marked this pull request as ready for review August 19, 2026 11:56
@wgordon17
wgordon17 requested a review from a team August 19, 2026 11:56
@wgordon17
wgordon17 merged commit 42d002f into gordon-code:main Aug 19, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant