#46219·renovate

Investigate deprecated fields/types in the code

Author: jamietannaCreated Sep 15, 2026Updated Sep 15, 2026
Labelsbreaking

Via Claude Sonnet 5:

Broadening beyond user-facing config to internal JSDoc @deprecated markers turned up more (the epic's own description says it's meant to track all deprecations, not just user-facing ones):

Already has a tracking issue, but not yet linked to #40847:

  • LegacyAdminConfig interface (lib/config/types.ts:287-292) — JSDoc points straight at #39693 ("Migrate LegacyAdminConfig into RepoGlobalConfig"), which is open but has no parent. Same situation as #40852 was — want me to link it now?

Internal deprecated code with no issue at all — genuine candidates:

  • GlobalOnlyConfigLegacy interface (lib/config/types.ts:186-187) — @deprecated use RepoGlobalConfig instead, no tracking issue.
  • Http.headJson() (lib/util/http/http.ts:632-637) — @deprecated use head instead, still has one live internal caller: lib/modules/platform/github/index.ts:169.

Dead code — probably don't even need a tracking issue, just delete directly:

  • Http.getYamlUnchecked() (lib/util/http/http.ts:477-480) — marked deprecated, and grep shows zero call sites anywhere outside its own definition.
  • BranchConfig.committedFiles (lib/workers/types.ts:169-172) — @deprecated never set, comment literally asks "??? never set".
  • BranchUpgradeConfig.updateTypes (lib/modules/manager/types.ts:143-147) — @deprecated Never set?.
  • renovateJsonPresent field (lib/config/types.ts:448-452) — @deprecated, comment asks "What is this used for?".
  • OTel span attribute repository (lib/workers/global/index.ts:285) — @deprecated TODO remove, superseded by the ATTR_VCS_* attributes right next to it.

The dead-field/dead-method ones are worth a quick "does anything actually reference this" pass (I only checked getYamlUnchecked/headJson) before deleting — happy to verify the rest and knock out a small cleanup PR if you want, rather than filing issues for things nobody uses.