Skip to content

QVAC-14392 chore: drop @qvac/dl-hyperdrive peer-dep chain in infer-base + decoder-audio#1761

Merged
simon-iribarren merged 5 commits into
tetherto:mainfrom
simon-iribarren:chore/qvac-14392-drop-dl-hyperdrive-peer-dep-chain
Apr 28, 2026
Merged

QVAC-14392 chore: drop @qvac/dl-hyperdrive peer-dep chain in infer-base + decoder-audio#1761
simon-iribarren merged 5 commits into
tetherto:mainfrom
simon-iribarren:chore/qvac-14392-drop-dl-hyperdrive-peer-dep-chain

Conversation

@simon-iribarren

Copy link
Copy Markdown
Contributor

Summary

Two manifest-only changes that together unblock the SDK-side removal of @qvac/dl-* packages tracked in QVAC-14392. This PR is the addon-side prerequisite for #1754 — once both packages here are republished (@qvac/infer-base@0.4.1, @qvac/decoder-audio@0.3.8), the overrides block in packages/sdk/package.json can be dropped and @qvac/dl-hyperdrive + @qvac/dl-base fall out of the SDK install entirely.

What changed

@qvac/infer-base

  • Drop the vestigial peerDependencies."@qvac/dl-hyperdrive": "^0.1.0" declaration. The runtime moved off DataLoaders in QVAC-17434 chore[bc]: migrate SDK plugins to new addon constructor shape #1688 (Loader interface lives in infer-base, ready()/close() are optional), so this peer-dep is no longer required by anything in the package — grep -rE "require\(['\"]@qvac/dl-hyperdrive returns nothing across packages/qvac-lib-infer-base/.
  • Optional/regular dependencies are unchanged.

@qvac/decoder-audio

  • Bump "@qvac/infer-base" from "^0.1.0" to "^0.4.0". This stops pulling the published infer-base@0.1.1 (which still carries the old dl-hyperdrive peer-dep on its 0.1.x line) into consumers' install trees. The deep-subpath import require('@qvac/infer-base/WeightsProvider/BaseInference') in index.js and the class FFmpegDecoder extends BaseInference shape both continue to work against 0.4.x (verified locally — see test plan).

NOTICE files

Regenerated via node .cursor/skills/notice-generate/scripts/generate-notice.js qvac-lib-infer-base / qvac-lib-decoder-audio on top of the manifest changes.

Why this is needed

Today, even with the SDK's overrides: { "@qvac/dl-hyperdrive": "^0.2.0" } in place, the @qvac/dl-* packages still get pulled into the SDK's dep tree because:

  1. @qvac/infer-base@0.4.0 declares peerDependencies: { "@qvac/dl-hyperdrive": "^0.1.0" } — bun materializes a dl-hyperdrive to satisfy it (the override forces 0.2.1; without the override it falls to 0.1.1 and breaks SDK typing — see QVAC-14392 chore: scope down DataLoader cleanup to packages/rag #1754 for the regression).
  2. @qvac/decoder-audio@0.3.7 directly depends on @qvac/infer-base: ^0.1.0, dragging the old 0.1.1 line (with its own dl-hyperdrive peer-dep) into the install in parallel.

This PR clears both. After this lands and both packages are republished:

Step Effect
infer-base@0.4.1 published New consumers no longer carry the dl-hyperdrive peer-dep declaration
decoder-audio@0.3.8 published transcription-whispercpp@0.6.2's ^0.3.3 constraint accepts the new version, so the bump propagates without re-releasing whispercpp
SDK drops overrides (#1754 follow-up) @qvac/dl-hyperdrive and @qvac/dl-base fall out of packages/sdk/bun.lock

Test plan

@qvac/infer-base

  • npm install clean
  • npm run lint (standard) — clean
  • npm run test:unit (brittle-bare) — 118/118 passing, 258/258 asserts
  • CI: lint + dts + unit (this PR)

@qvac/decoder-audio

  • npm install resolves @qvac/infer-base@0.4.0
  • npm run lint (standard) — clean
  • npm run test:unit (brittle-bare) — 9/9 passing, 34/34 asserts
  • CI: lint + unit + integration (this PR)

Downstream verification

…r-audio (QVAC-14392)

Two manifest-only changes that together unblock the SDK-side removal
of @qvac/dl-* packages tracked in QVAC-14392.

@qvac/infer-base
  - Drop the vestigial peerDependencies."@qvac/dl-hyperdrive": "^0.1.0"
    declaration. The runtime moved off DataLoaders in tetherto#1688 (Loader
    interface lives in infer-base, ready()/close() optional), so this
    peer-dep is no longer required by anything in the package. Lint,
    test:dts, and brittle-bare unit tests (118/118) all pass with the
    declaration removed.

@qvac/decoder-audio
  - Bump "@qvac/infer-base" from "^0.1.0" to "^0.4.0". This stops
    pulling the published infer-base@0.1.1 (which still carries the
    old dl-hyperdrive peer-dep on its 0.1.x line) into consumers'
    install trees. Local install resolves @qvac/infer-base@0.4.0,
    decoder-audio's BaseInference subclassing in index.js continues
    to work unchanged, lint and brittle-bare unit tests (9/9) pass.

Effect on the SDK: once both packages are republished (infer-base
@ 0.4.1, decoder-audio @ 0.3.8 -- or whichever versions ship), the
"overrides": { "@qvac/dl-hyperdrive": "^0.2.0" } block in
packages/sdk/package.json can be removed and @qvac/dl-hyperdrive
plus @qvac/dl-base fall out of the SDK's dep tree entirely. That
cleanup is tracked in tetherto#1754.

NOTICE files regenerated for both packages.
@simon-iribarren simon-iribarren requested a review from a team as a code owner April 27, 2026 13:57
@simon-iribarren simon-iribarren requested a review from a team as a code owner April 27, 2026 13:57
@simon-iribarren

Copy link
Copy Markdown
Contributor Author

/review

@github-actions

Copy link
Copy Markdown
Contributor

Tier-based Approval Status

**PR Tier:** TIER1

**Current Status:** ✅ APPROVED

**Requirements:**
- 1 Team Member approval ✅ (3/1)
- 1 Team Lead OR Management approval ✅ (1/1)



---
*This comment is automatically updated when reviews change.*

@simon-iribarren simon-iribarren merged commit 63c31c4 into tetherto:main Apr 28, 2026
4 of 12 checks passed
simon-iribarren added a commit that referenced this pull request Apr 28, 2026
PATCH bump.

Bumps @qvac/infer-base direct dep from ^0.1.0 to ^0.4.0. Combined with
@qvac/infer-base@0.4.1 (peer-dep drop), this severs the last path that
pulls @qvac/dl-* into consumers' install trees through this addon.

BaseInference public surface unchanged across 0.1.1 -> 0.4.x; lint
clean + 9/9 brittle-bare unit tests pass.

Refs: #1761
simon-iribarren added a commit that referenced this pull request Apr 28, 2026
PATCH bump.

Drops the vestigial peerDependencies."@qvac/dl-hyperdrive" declaration
from the published manifest. The runtime moved off DataLoaders in #1688
(Loader interface lives in @qvac/infer-base, ready()/close() optional),
so the peer-dep was no longer required by anything in the package.

Lint clean + 118/118 brittle-bare unit tests pass.

Refs: #1761
simon-iribarren added a commit to simon-iribarren/qvac that referenced this pull request Apr 28, 2026
….1 is on npm (QVAC-14392)

@qvac/infer-base@0.4.1 (released via tetherto#1777) drops the vestigial
peerDependencies."@qvac/dl-hyperdrive": "^0.1.0" declaration that was
forcing the override. With it on npm, the SDK no longer needs the
override block in package.json — `bun install` resolves cleanly and
the type-narrowing regression we saw before tetherto#1761 is gone.

Verified locally with override dropped:
- bun install: clean, 1315 packages
- bunx eslint . --max-warnings=0: clean (was 39 errors pre-tetherto#1761)
- bun run typecheck: clean
- bun run build: clean
- bun run test:unit: 10/10 pass

NOTICE regenerated. @qvac/dl-base and @qvac/dl-hyperdrive still appear
in the install tree (now at 0.1.1 instead of 0.2.1) because
@qvac/decoder-audio@0.3.7 still pins @qvac/infer-base: ^0.1.0 — once
@qvac/decoder-audio@0.3.8 (tetherto#1778) clears its integration tests and
publishes to npm, those will fall out entirely and a final NOTICE
regen will close out QVAC-14392 end-to-end.

Refs: tetherto#1761, tetherto#1777, tetherto#1778
simon-iribarren added a commit to simon-iribarren/qvac that referenced this pull request Apr 28, 2026
…o@0.3.8 is on npm (QVAC-14392)

@qvac/decoder-audio@0.3.8 (released via tetherto#1778) flips its @qvac/infer-base
direct dep from ^0.1.0 to ^0.4.0. Combined with @qvac/infer-base@0.4.1
(no peer-dep on @qvac/dl-hyperdrive), nothing in the SDK install tree
peer-deps or directly-deps @qvac/dl-* anymore — they fall out entirely.

NOTICE now shows:
- @qvac/decoder-audio@0.3.8 (was 0.3.7)
- @qvac/infer-base@0.4.1     (was 0.1.1 + 0.4.0 dual)
- @qvac/dl-base              REMOVED
- @qvac/dl-hyperdrive        REMOVED

QVAC-14392 closeable end-to-end.

Refs: tetherto#1761, tetherto#1777, tetherto#1778
simon-iribarren added a commit to simon-iribarren/qvac that referenced this pull request Apr 28, 2026
PATCH bump (backmerge of release-qvac-lib-decoder-audio-0.3.8 onto main).

Reapplies the version bump (0.3.7 -> 0.3.8) and changelog entry from
the release branch onto main's renamed package path
(packages/qvac-lib-decoder-audio/ -> packages/decoder-audio/, which
landed on main after the release branch was cut).

@qvac/decoder-audio@0.3.8 is already published to npm via the GPR PR
(tetherto#1778). This backmerge brings main's metadata in sync.

Refs: tetherto#1761, tetherto#1778
simon-iribarren added a commit to simon-iribarren/qvac that referenced this pull request Apr 28, 2026
PATCH bump (backmerge of release-qvac-lib-infer-base-0.4.1 onto main).

Reapplies the version bump (0.4.0 -> 0.4.1) and changelog entry from
the release branch. Branch is rebased onto latest main to clear BEHIND.

@qvac/infer-base@0.4.1 is already published to npm via the GPR PR
(tetherto#1777). This backmerge brings main's metadata in sync.

Refs: tetherto#1761, tetherto#1777
simon-iribarren added a commit that referenced this pull request Apr 29, 2026
PATCH bump (backmerge of release-qvac-lib-decoder-audio-0.3.8 onto main).

Reapplies the version bump (0.3.7 -> 0.3.8) and changelog entry from
the release branch onto main's renamed package path
(packages/qvac-lib-decoder-audio/ -> packages/decoder-audio/, which
landed on main after the release branch was cut).

@qvac/decoder-audio@0.3.8 is already published to npm via the GPR PR
(#1778). This backmerge brings main's metadata in sync.

Refs: #1761, #1778
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants