From c1c3e66fcd7743e7e716afaeca7220d9834311a7 Mon Sep 17 00:00:00 2001 From: Bruno Campana <7632562+BrunoCampana@users.noreply.github.com> Date: Fri, 17 Apr 2026 12:12:27 -0300 Subject: [PATCH 1/3] doc: Re-add favicon in InkeepAI widget --- docs/website/src/components/inkeep-script.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/website/src/components/inkeep-script.tsx b/docs/website/src/components/inkeep-script.tsx index 080355fbaf..786da62741 100644 --- a/docs/website/src/components/inkeep-script.tsx +++ b/docs/website/src/components/inkeep-script.tsx @@ -75,7 +75,7 @@ export function InkeepScript() { }, aiChatSettings: { // optional settings - aiAssistantAvatar: "/qvac-favicon.ico", // use your own AI assistant avatar + aiAssistantAvatar: "/favicon.ico", // use your own AI assistant avatar exampleQuestions: [ "What is QVAC?", "How to get started with QVAC?", From 7427d17c6b8fcb9290ea8c5950e38ce05f5253b7 Mon Sep 17 00:00:00 2001 From: Bruno Campana <7632562+BrunoCampana@users.noreply.github.com> Date: Fri, 17 Apr 2026 12:21:21 -0300 Subject: [PATCH 2/3] doc: update release notes link --- .../content/docs/(latest)/release-notes.mdx | 97 ------------------- docs/website/src/lib/trees/latest.ts | 2 +- 2 files changed, 1 insertion(+), 98 deletions(-) delete mode 100644 docs/website/content/docs/(latest)/release-notes.mdx diff --git a/docs/website/content/docs/(latest)/release-notes.mdx b/docs/website/content/docs/(latest)/release-notes.mdx deleted file mode 100644 index 17e782c77b..0000000000 --- a/docs/website/content/docs/(latest)/release-notes.mdx +++ /dev/null @@ -1,97 +0,0 @@ ---- -title: "Release Notes — v0.8.1" -description: "What's new in QVAC SDK v0.8.1" ---- - -📦 **NPM:** https://www.npmjs.com/package/@qvac/sdk/v/0.8.1 - -This release introduces a heartbeat mechanism for proactive provider health monitoring in delegated inference and adds RPC health probes with delegated cancellation support. Several stability fixes address RPC progress throttling, registry download progress accuracy, and security alerts. - -## Breaking Changes - -### @qvac/sdk - -### Heartbeat Replaces Ping - -The `ping()` function has been replaced by `heartbeat()`, which extends health checking to support delegated (remote) providers. Local usage is a straightforward rename, while the new delegated mode lets consumers verify provider connectivity before initiating model loads or inference. - -**Before:** - -```typescript -import { ping } from "@qvac/sdk"; -const pong = await ping(); -``` - -**After:** - -```typescript -import { heartbeat } from "@qvac/sdk"; - -// Local heartbeat (replaces ping) -await heartbeat(); - -// Delegated heartbeat — verify a remote provider is reachable -await heartbeat({ - delegate: { topic: "topicHex", providerPublicKey: "peerHex", timeout: 3000 }, -}); -``` - -## Features - -### @qvac/sdk - -### RPC Health Probe for Delegation - -Delegated model loading now supports an optional `healthCheckTimeout` parameter. When set, the SDK performs an RPC-level health probe before attempting the load, and stale connections are cleaned up centrally rather than per-caller. - -```typescript -await loadModel({ - modelSrc: LLAMA_3_2_1B_INST_Q4_0, - modelType: "llm", - delegate: { - topic: topicHex, - providerPublicKey, - timeout: 30_000, - healthCheckTimeout: 2000, // optional, defaults to 1500ms - }, -}); -``` - -### Delegated Cancellation - -Cancel operations now route automatically to remote providers when the target model is delegated. Inference cancellation requires no API change — the SDK detects delegation from the model registry. Remote download cancellation accepts an optional `delegate` field. - -```typescript -// Cancel delegated inference (routes automatically via model registry) -await cancel({ operation: "inference", modelId: "delegated-model-id" }); - -// Cancel delegated remote download -await cancel({ - operation: "downloadAsset", - downloadKey: "download-key", - delegate: { topic: "topicHex", providerPublicKey: "peerHex" }, -}); -``` - -## Bug Fixes - -### @qvac/sdk - -- **IndicTrans model type unblocked** — The NMT translation plugin no longer incorrectly blocks IndicTrans models from loading, restoring multi-engine translation support. -- **Accurate download progress** — Registry downloads now report progress from the network layer instead of disk I/O polling, giving real-time progress that reflects actual bytes received. -- **RPC progress throttling** — Progress frames sent over RPC are now throttled to prevent call stack overflow when large models produce rapid progress updates. -- **VLM addon classification** — The model registry has been regenerated to correctly classify VLM (Vision-Language Model) addons, fixing misrouted model loads. -- **Security alerts resolved** — Code scanning alerts across SDK pod packages have been addressed. - -## Documentation - -### @qvac/sdk - -- All SDK READMEs now reference the `@qvac` npm namespace instead of the legacy `@tetherto` scope. - -## Testing - -### @qvac/sdk - -- New E2E tests cover parallel download scenarios and cancel isolation to prevent race conditions between concurrent operations. -- The mobile E2E test executor has been refactored to an asset-based architecture for more reliable cross-platform testing. diff --git a/docs/website/src/lib/trees/latest.ts b/docs/website/src/lib/trees/latest.ts index 8425993be3..0865cd8eb3 100644 --- a/docs/website/src/lib/trees/latest.ts +++ b/docs/website/src/lib/trees/latest.ts @@ -194,7 +194,7 @@ export const tree: Node[] = [ }, { name: 'Release notes', - url: '/release-notes', + url: 'https://github.com/tetherto/qvac/tree/main/packages/sdk/changelog', type: 'page', icon: resolveIcon('Tag'), }, From 936fa412b6307b2959fa428513dad2302327c437 Mon Sep 17 00:00:00 2001 From: Bruno Campana <7632562+BrunoCampana@users.noreply.github.com> Date: Fri, 17 Apr 2026 12:32:02 -0300 Subject: [PATCH 3/3] doc: update external resources - add X QVAC profile --- docs/website/src/app/(docs)/layout.tsx | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/docs/website/src/app/(docs)/layout.tsx b/docs/website/src/app/(docs)/layout.tsx index c6b2e2a01b..767684c52f 100644 --- a/docs/website/src/app/(docs)/layout.tsx +++ b/docs/website/src/app/(docs)/layout.tsx @@ -1,9 +1,8 @@ import { baseOptions } from '@/lib/layout.shared'; import { source } from '@/lib/source'; import type { LinkItemType } from 'fumadocs-ui/layouts/shared'; -import { FaGithub, FaDiscord } from 'react-icons/fa6'; +import { FaGithub, FaDiscord, FaXTwitter } from 'react-icons/fa6'; import { SiHuggingface } from '@icons-pack/react-simple-icons'; -import { FeaturebaseIcon } from '@/components/featurebase-icon'; import { KeetIcon } from '@/components/keet-icon'; import { VersionedLayout } from '@/components/versioned-layout'; import { getAllTrees } from '@/lib/trees'; @@ -33,6 +32,14 @@ export default function Layout({ children }: LayoutProps<'/'>) { icon: , external: true, }, + { + type: 'icon', + url: 'https://x.com/QVAC', + label: 'X (Twitter)', + text: 'X (Twitter)', + icon: , + external: true, + }, { type: 'icon', url: '/#community',