Skip to content

QVAC-24108 chore: enforce inference's peer dependencies in SDK - #4037

Open
arun-mani-j wants to merge 2 commits into
mainfrom
arun-mani-j/syncAddonsVersion
Open

QVAC-24108 chore: enforce inference's peer dependencies in SDK#4037
arun-mani-j wants to merge 2 commits into
mainfrom
arun-mani-j/syncAddonsVersion

Conversation

@arun-mani-j

Copy link
Copy Markdown
Contributor

🎯 What problem does this PR solve?

  • Addon version ranges are declared in three fields that must stay identical: @qvac/inference peerDependencies (optional peers), @qvac/inference devDependencies, and @qvac/sdk dependencies. Optional peers do not install transitively, so the SDK hard-depends on the same addons; inference mirrors them into devDependencies to build and test against them.
  • Nothing enforces that the three agree. A bump is a hand-edit in all three fields, and drift is silent.

📝 How does it solve it?

  • @qvac/inference peerDependencies is the single source of truth for addon ranges.
  • packages/sdk/scripts/check-addon-ranges.ts fails when any addon's range in @qvac/sdk dependencies or @qvac/inference devDependencies differs from the peer. It reports one line per addon and is silent on success. Example:
@qvac/tts-ggml: inference has it as ^0.7.4 in optional peerDependencies, but SDK has ^0.7.5.

Please ensure the SDK dependencies and inference devDependencies use the same addon versions as inference's peerDependencies.
  • The check is chained into the SDK lint gate (npm run check:addon-ranges), so pr-checks-sdk-pod runs it; the pod config's depends_on: packages/inference runs it on inference-only PRs too.
  • The check imports the two package.json files directly and has no dependencies.

🧪 How was it tested?

  • Aligned repo state passes with no output.
  • Injected drift fails: an SDK-vs-peer version mismatch, and an addon present in peerDependencies but absent from the mirrors.
  • lint (eslint + the check), typecheck, format, and the full pr-checks-sdk-pod gate pass.

@arun-mani-j
arun-mani-j requested review from a team as code owners August 25, 2026 07:54
@github-actions

github-actions Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Review Status

Current Status: ✅ APPROVED
Approvals so far: Team Lead: 1, Member: 1

@arun-mani-j
arun-mani-j force-pushed the arun-mani-j/syncAddonsVersion branch from 028297d to b779e8b Compare August 25, 2026 07:54
@github-actions

Copy link
Copy Markdown
Contributor

License compliance — clean

No new dependency license findings in this PR.

Warn-only (shadow) mode — this check does not block merges yet.

Updated automatically by the canonical license compliance workflow.

NOTICE presence (advisory)

Missing NOTICE (advisory, does not block):

  • ./.github/actions/release-merge-guard
  • ./docs/website
  • ./packages/ggml-coload-smoke
  • ./packages/fabric/test/integration
  • ./packages/inference-addon-cpp/mobile
  • ./packages/sdk/e2e
  • ./packages/llm-llamacpp/benchmarks/performance
  • ./packages/llm-llamacpp/benchmarks/server
  • ./packages/vla-ggml/sim/server
  • ./packages/embed-llamacpp/benchmarks/performance
  • ./packages/embed-llamacpp/benchmarks/server
  • ./packages/asr-ggml/benchmarks/server

Comment thread packages/sdk/scripts/check-addon-ranges.ts Outdated
@arun-mani-j
arun-mani-j force-pushed the arun-mani-j/syncAddonsVersion branch from b779e8b to 2f706d9 Compare August 25, 2026 10:58
@arun-mani-j
arun-mani-j force-pushed the arun-mani-j/syncAddonsVersion branch from 2f706d9 to a550a59 Compare August 25, 2026 12:05
opaninakuffo
opaninakuffo previously approved these changes Aug 25, 2026
Comment thread packages/sdk/scripts/check-addon-ranges.ts Outdated
Comment thread packages/sdk/scripts/check-addon-ranges.ts Outdated
@arun-mani-j
arun-mani-j force-pushed the arun-mani-j/syncAddonsVersion branch 2 times, most recently from b75ac09 to 4a49724 Compare August 26, 2026 06:29
@arun-mani-j arun-mani-j changed the title QVAC-24108 chore: check addon version ranges stay in sync across @qvac/inference and @qvac/sdk QVAC-24108 chore: enforce inference's peer dependencies in SDK Aug 26, 2026
@arun-mani-j
arun-mani-j force-pushed the arun-mani-j/syncAddonsVersion branch from 4a49724 to 76a088a Compare August 26, 2026 09:30
Signed-off-by: Arun Mani J <j.arunmani@proton.me>
Signed-off-by: Arun Mani J <j.arunmani@proton.me>
@arun-mani-j
arun-mani-j force-pushed the arun-mani-j/syncAddonsVersion branch from 76a088a to 8e611dc Compare August 26, 2026 09:50
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.

3 participants