Repository navigation
(janitor/dependencies) Remove unused @next/third-parties from apps/web - #7709
Merged
Merged
Conversation
No source, test, or configuration code references @next/third-parties (only a captured request fixture from an unrelated project mentions it). Removes the dependency and its exclusive transitive package third-party-capital from the lockfile.
Contributor
Author
Code Review SummaryStatus: No Issues Found | Recommendation: Merge Executive SummaryRemoving the unused Files Reviewed (2 files)
Reviewed by deepseek-v4.1-flash · Input: 78.9K · Output: 2K · Cached: 153.6K Review guidance: REVIEW.md from base branch |
chrarnoldus
approved these changes
Oct 16, 2026
chrarnoldus
deleted the
janitor/dependencies/remove-next-third-parties
branch
October 16, 2026 08:53
This was referenced Oct 17, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Remove a single unused dependency,
@next/third-parties, fromapps/web. This is the highest-confidence unused-dependency finding after cross-referencingknipstatic analysis with repository-wide manual verification. No other dependency is touched.Dependencies removed
@next/third-parties@16.3.3(fromapps/web/package.jsondependencies)third-party-capital@1.0.20— removed frompnpm-lock.yamlbecause it was an exclusive transitive dependency of@next/third-parties(zero remaining references after removal)Evidence each was unused
@next/third-partiesappears in zero imports,requires, dynamicimport()s, or type references anywhere in the repository (apps/,services/,packages/,dev/,scripts/). The only non-package.jsonoccurrence isapps/web/src/tests/req_sample/anthropic-claude37.log.req.json, a captured request fixture that embeds an unrelated project's (kilocode-backend)package.jsontext — not a consumer of this package.src/components/YouTubeEmbed.tsx(used byWelcomeContent.tsx); it does not use@next/third-parties'YouTubeEmbed/GoogleAnalytics/GoogleMaps/GoogleTagManager/GoogleRecaptchacomponents.knipagreement.pnpm --filter web kniplists@next/third-partiesunder "Unused dependencies" (package.json:74:6), independent of the manual grep.Dynamic, configuration, and tooling references checked
next.config.*,jest.config.ts,tsconfig*.json,.dependency-cruiser.js,knip.ts, orpnpm-workspace.yaml(nooverrides/packageExtensions/catalogentry).package.jsonscript inapps/webor the root workspace.@next/third-partiesis a plain React component library (opt-in via imports), not a Next.js/compiler plugin, preset, loader, runtime adapter, or code-generation tool..github/dependabot.ymlstill lists@next/third-partiesin itsignoreblock with a stale "Stay on Next.js v15 for now" comment. This is an ignore directive, not a consumer, and the whole block (next,@next/mdx,@next/third-parties) is already stale because the app is on Next.js 16. Left untouched to keep this change scoped to the dependency removal.Package publication and peer-dependency considerations
apps/web("name": "web","private": true) is a private workspace package, so there is no published-package contract or peer/optional dependency surface affected.@next/third-partiesis not a peer dependency of any package in this repository, and nothing depends on it. Its own peer dependencies (next,react) remain satisfied and unchanged.Validation performed
pnpm install --lockfile-only; confirmed the only lockfile changes are the removal of@next/third-parties(importer entry, package entry, peer-resolved snapshot) andthird-party-capital(package entry + snapshot). Verified withpnpm install --frozen-lockfile --lockfile-onlythat the edited lockfile is consistent withpackage.json.pnpm --filter web lint— 0 warnings, 0 errors (3910 files).pnpm --filter web typecheck— passed (exit 0), including the@kilocode/trpcbuild step.src/tests/setup/workerSetup.ts) connects to PostgreSQL to clean tables before any test runs; PostgreSQL is unavailable in this environment (resource-constrained sandbox, as noted). The failure is a pre-existing environment limitation, not related to this change.next buildwas not run (memory/time-constrained sandbox; also depends on DB-backed setup). Given zero source references to the removed package, build impact is expected to be nil.Uncertainty
.github/dependabot.ymlignore entry for@next/third-partieswas intentionally left in place (its siblingnext/@next/mdxentries are equally stale). Removing or refreshing that block is out of scope here but could be a small follow-up.knipalso reports many@kilocode/*workspace packages and shared libs (e.g.eventsource-parser,mailgun.js,@sentry/opentelemetry) as "unused" fromapps/web; manual verification shows these are consumed bypackages/web-shared(a workspace dependency), so they were not removed — they are not true duplicates fromapps/web's perspective and would require a separate, more involved workspace-boundary analysis.