Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 7 additions & 12 deletions docs/architecture/ADDON-FUZZING.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,9 @@ libFuzzer).
## Scope

Scope is **every QVAC native addon** — all packages whose `package.json`
declares `"addon": true` — **except the ONNX Runtime addons** (`onnx`,
`ocr-onnx`), which are out of scope for this effort. The in-scope addons are
C++20 Bare addons built with CMake + vcpkg on the centrally-pinned
**clang-22 / libc++** toolchain, linked against `ggml` / `llama.cpp` /
`whisper.cpp` / `stable-diffusion.cpp`.
declares `"addon": true`. The in-scope addons are C++20 Bare addons built with
CMake + vcpkg on the centrally-pinned **clang-22 / libc++** toolchain, linked
against `ggml` / `llama.cpp` / `whisper.cpp` / `stable-diffusion.cpp`.

### Addon inventory

Expand All @@ -67,9 +65,6 @@ C++20 Bare addons built with CMake + vcpkg on the centrally-pinned
| `diffusion-cpp` | stable-diffusion.cpp | image / video generation | ✅ |
| `fabric` | shared ggml + llama.cpp runtime host | infra (no direct input parsing) | ❌ |

The ONNX Runtime addons (`onnx`, `ocr-onnx`) are intentionally excluded from
this effort and are not listed above.

Fuzzing targets **pure parse/transform functions** that consume
attacker-influenceable bytes. It deliberately does **not** target full
`runJob` / end-to-end inference paths (non-deterministic, backend-stateful, and
Expand Down Expand Up @@ -357,7 +352,7 @@ rest come from vcpkg is what would put two Abseils in one link.
`ports/abseil/` in `qvac-registry-vcpkg`, at version `20260526.0`. It replaces the
previous onnxruntime-pinned port (`version-string: "onnxruntime"`, Abseil
`20240722.0`) **at HEAD only**: both old entries stay in `versions/a-/abseil.json`,
so `ocr-onnx` keeps resolving what it resolves today from its pinned baseline. The
so anything on an older baseline keeps resolving what it resolves today. The
manifest asks for `abseil[asan]` with `"version>=": "20260526.0"`, so the floor is
stated where the dependency is declared rather than left to the baseline.

Expand Down Expand Up @@ -429,9 +424,9 @@ headers carry no stability promise. A FuzzTest bump should re-check the closure
above (`rg '#include "(re2|util)/' fuzztest-src/fuzztest/`) before bumping the
port.

Nothing else resolves `re2` from this registry: `packages/onnx` and
`packages/translation-nmtcpp` both route it to the Microsoft registry through
their `vcpkg-configuration.json` allowlists.
Nothing else resolves `re2` from this registry: `packages/translation-nmtcpp`
routes it to the Microsoft registry through its `vcpkg-configuration.json`
allowlist.

### The `fuzztest` registry port

Expand Down
1 change: 0 additions & 1 deletion docs/repository-layout.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ Legend:
| langdetect-text | Language detection library providing an interface for detecting the language of given text | Addon |
| llm-llamacpp | Native C++ addon for running Large Language Models (LLMs) via `qvac-fabric-llm.cpp` | Addon |
| ocr-ggml | Optical Character Recognition (OCR) addon (EasyOCR pipeline) on the GGML backend | Addon |
| onnx | Bare addon for ONNX Runtime session management | Addon |
| rag | JavaScript library for Retrieval-Augmented Generation (RAG) with document ingestion, vector search, and LLM integration | Addon |
| transcription-parakeet | Speech-to-text (ASR) and Sortformer speaker-diarization addon using NVIDIA Parakeet models | Addon |
| transcription-whispercpp | Whisper-based audio transcription addon via `qvac-ext-lib-whisper.cpp` | Addon |
Expand Down
6 changes: 3 additions & 3 deletions packages/fabric/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ npm dependency and dynamically link against it, so the multi-hundred-megabyte
llama/ggml runtime is **built once** and **loaded once per process** instead of
being statically embedded into every addon.

It is modeled on [`@qvac/onnx`](../onnx) and follows the same
npm + `prebuilds/` + `include_bare_module(... PREBUILD)` + companion-`.bare`
pattern. See [INTEGRATION.md](./INTEGRATION.md) for the consumer guide.
It follows the npm + `prebuilds/` + `include_bare_module(... PREBUILD)` +
companion-`.bare` pattern. See [INTEGRATION.md](./INTEGRATION.md) for the
consumer guide.

## What it ships

Expand Down
16 changes: 0 additions & 16 deletions packages/ocr-ggml/.agent/knowledge/vcpkg-management.md
Original file line number Diff line number Diff line change
Expand Up @@ -279,22 +279,6 @@ Triplets that genuinely differ from the shared defaults stay in the package's ow
- **parakeet / tts-onnx**: a `x64-linux.cmake` variant that adds `-Wno-array-bounds`,
plus their macOS/iOS triplets. Local linux triplets chainload the shared
toolchain via `${CMAKE_CURRENT_LIST_DIR}/../../../../vcpkg-overlays/toolchains/linux-clang.cmake`.
- **onnx**: keeps `vcpkg-override-triplets/triplets/` (apple/unix/android), layered
ahead of the shared folder.

#### ONNX Packages — Release-Only Triplets

Location: `packages/onnx/vcpkg-override-triplets/triplets/` and the local
`vcpkg/triplets/` of `tts-onnx`, `transcription-parakeet`.

These local triplets set `VCPKG_BUILD_TYPE release` to halve build time and disk
usage, and platform-specific deployment targets (e.g., iOS 13.3):

```cmake
set(VCPKG_BUILD_TYPE release)
set(VCPKG_LIBRARY_LINKAGE static)
```

## Overlay Ports

Overlay ports let a package override a registry port with a local version. They are declared in `vcpkg-configuration.json`:
Expand Down
12 changes: 0 additions & 12 deletions packages/onnx/.gitignore

This file was deleted.

141 changes: 0 additions & 141 deletions packages/onnx/CHANGELOG.md

This file was deleted.

Loading
Loading