Skip to content

Reduce Dependabot PR volume: trim catalog dep tree + automerge config #4869

Description

@drernie

Context

The repo gets ~26 Dependabot PRs / 10 months, almost all targeting /catalog. These are GitHub-triggered security updates (advisory-driven), not version bumps — .github/dependabot.yml only configures github-actions weekly. Recurring offenders: axios, follow-redirects, dompurify, lodash, serialize-javascript, node-forge, webpack plugins, vega-*, qs/express, jsonpath, jws, on-headers/compression, tmp, vite, rollup, ajv, @graphql-codegen/*, bundlewatch, etc.

What won't move the needle

  • Grouping in dependabot.yml alone — needs applies-to: security-updates and an explicit npm ecosystem entry. Modest reduction (~30%) since advisories arrive over time, not in batches.
  • Renovate ↔ Dependabot split (Renovate for versions, Dependabot for security) — best-practice but doesn't reduce security PR count, just reorganizes.

What would help

A. Make PRs invisible (highest leverage, lowest effort)

  • Enable auto-merge for patch/minor security PRs on green CI (Renovate automerge: true or GitHub native auto-merge + branch protection).
  • Schedule Renovate to batch routine bumps weekly (schedule: [\"before 6am on monday\"]).

B. Trim the catalog dep tree (eliminates root cause for ~30–40% of historical PRs)

Quick wins (~2h):

  • Drop bundlewatch — sole source of axios + follow-redirects. ~4 historical PRs.
  • Delete monocle-ts, newtype-ts — zero imports.

Medium (4–6h each):

  • Migrate aws-sdk v2 → v3 modular clients (only S3, Athena, Bedrock used). ~15 MB bundle + smaller CVE surface.
  • Replace remarkable + highlight.js with prism-react-renderer (5 import sites; both have CVE history).

Lower priority:

  • Replace narrow lodash usage with native equivalents (~16 sites).
  • Migrate immutable@3.8.2 → frozen objects / RTK (~7 sites; v3 is ancient).
  • Audit ramda usage (135+ sites — defer).

C. Load-bearing, not prunable

vega-*, webpack + plugins, @graphql-codegen/*, dompurify, jsdom. These will keep generating PRs; auto-merge is the only practical mitigation.

Suggested order

  1. Enable auto-merge for patch/minor security on green CI (1 PR, biggest immediate relief).
  2. Drop bundlewatch + unused FP packages (1 PR, kills 2 chronic offenders).
  3. AWS SDK v3 migration (separate PR, real bundle win).
  4. Markdown/highlighter swap (separate PR).

Expected outcome: ~half the historical PR volume eliminated, the remainder largely auto-merged.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions