QVAC-23995: migrate vla-ggml to shared @qvac/fabric runtime - #3998
Open
jpgaribotti wants to merge 2 commits into
Open
QVAC-23995: migrate vla-ggml to shared @qvac/fabric runtime#3998jpgaribotti wants to merge 2 commits into
jpgaribotti wants to merge 2 commits into
Conversation
Move ggml off the static qvac-fabric vcpkg port onto @qvac/fabric (^0.6.0): use qvac-addon fabric helpers, preload fabric in binding.js, resolve backends from node_modules on desktop, and stage fabric for C++ unit tests. Remove qvac-fabric[hip-backend] from vcpkg (ROCm/HIP now comes from fabric prebuilds). Register vla-ggml in fabric-consumers npm_runtime and wire on-pr-vla fabric-stack overlay through cpp-tests, prebuilds, and integration jobs. Bump @qvac/vla-ggml to 0.23.0.
Contributor
Review StatusCurrent Status: ❌ PENDING Pending reviews: Needs 1 Management or Team Lead, and 1 more from Management, Team Lead, or Member. |
Contributor
License compliance — findings detected (warn-only)Critical: 0 · High: 4 · Medium: 0
How to resolve a blocking finding:
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):
|
Contributor
Workflow security (shadow mode)zizmor found 1098 finding(s) in Findings are annotated inline on the changed files and listed in the job summary. Reproduce locally: pipx run zizmor==1.27.0 --offline .github/ |
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.
🎯 What problem does this PR solve?
@qvac/vla-ggmlstill compiled and bundled the staticqvac-fabricvcpkg port, duplicating the ggml runtime and compute backends that@qvac/fabricalready ships once per process..github/fabric-consumers.jsonnpm_runtime, so fabric-stack PRs could not validate VLA against PR-built@qvac/fabricprebuilds.on-pr-vlastill ranverify-qvac-fabric-lockstepand built ROCm/HIP viaqvac-fabric[hip-backend]in vcpkg/prebuilds — patterns superseded by the shared npm runtime model used by@qvac/classification-ggml.📝 How does it solve it?
packages/vla-ggml,0.22.0→0.23.0):@qvac/fabric(^0.6.0); removeqvac-fabric(andhip-backend) fromvcpkg.json.CMakeLists.txttoqvac-addonfabric helpers (qvac_addon_use_fabric, dynamicDT_NEEDED: qvac__fabric@0.bare); drop the static ggml backend install loop.@qvac/fabricinbinding.js; resolve ggml backends fromnode_modules/@qvac/fabric/prebuilds/on desktop viaresolveBackendsDir()(mobile fallback to localprebuilds/).@qvac/fabricfor C++ unit tests (qvac_addon_stage_fabric_for_test, relaxed ASAN options).vla-ggmlin.github/fabric-consumers.jsonnpm_runtime.verify-fabric-lockstepwithdetect-fabric-stack/resolve-fabric-prebuildsonon-pr-vla.yml(mirrors classification-ggml).fabric-overlay-artifactthroughcpp-tests-vla,prebuilds-vla, andintegration-test-vla; remove vla-side ROCm prebuild/lint wiring (HIP comes from fabric prebuilds).🧪 How was it tested?
Local (linux-x64):
npm install→@qvac/fabricprebuilds present undernode_modules/.bare-make generate && bare-make build && bare-make install→prebuilds/linux-x64/qvac__vla-ggml.bareonly (no bundled ggml backend.sofiles);readelfshowsNEEDED: qvac__fabric@0.bare.npm run test:unit— 6/6 JS tests passed.npm run test:cpp— 63 passed, 30 skipped (GR00T/Pi05 oracle fixtures not staged locally); fabric backends staged next toaddon-test.bare -e "require('@qvac/fabric'); require('./binding')"— binding loads successfully.CI:
verify+cpplabels onon-pr-vla(sanity, cpp-lint, cpp-tests matrix).prebuildslabel — fresh native prebuilds without bundled ggml backends.desktoplabel — integration tests with@qvac/fabricavailable.packages/fabric+prebuildslabel to confirm overlay path viaresolve-fabric-prebuilds.