Inspiration

Rig QA Desk helps character artists and technical artists investigate rig and animation export problems before they become vague import errors or untraceable handoffs. The goal is to combine bounded measurements, useful NVIDIA advice and explicit human review without hiding their different levels of certainty.

What it does

The independent Node.js companion inspects owned or licensed self-contained GLB files. Structural and numeric checks identify supported faults, while a separate official Khronos glTF Validator report adds conformance findings. Reports retain asset hashes and evidence locations. NVIDIA Nemotron, served through Nebius Token Factory, turns structured findings into investigation suggestions. The reviewer accepts, defers or rejects each suggestion and exports a record bound to the asset, report and advice. Accepting advice authorizes investigation, not an automatic repair.

The hosted v7 application also includes a local character/motion panel. It measures profile-based rest symmetry, signed hinge limits, sampled stretch or collapse, foot-plane penetration, clip continuity, and paired-anchor/support windows. Character-specific allowances, missing rules, unsupported features and sampling limits stay explicit. Files and profiles in this local panel remain in the browser and do not enter the AI path.

The guided hosted AI workflow uses fixed, owned procedural fixtures. It does not accept arbitrary uploaded characters or run the independent companion's official validator. No workflow edits the original asset. A clean report is not a certificate of visual quality, anatomy, physical correctness or game-engine behavior.

How it was built

The server-side adapter calls Nebius Token Factory's chat-completions API with nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B. Only server-generated structured companion findings are sent. Character bytes, asset names, extras and private character profiles are excluded. The response is checked for schema, hashes, finding references, permitted actions and model identity. There are no automatic provider retries or fallback models.

The implementation uses Node.js, JavaScript/TypeScript, React, GLB/glTF, Ajv, the Khronos glTF Validator, NVIDIA Nemotron, Nebius Token Factory, ChatGPT Sites and D1. The local companion needs Node.js 22 or newer and npm, but no GPU, Blender, private backend or model weights. Nebius AI Cloud and Tavily are not used.

The independent companion, inspector, browser workflow, schemas, Nebius/NVIDIA adapter, procedural fixtures, evidence-bound exports and tests were created during October 2026. Later v7 work added the independent local character checks and stricter authorization and accounting. Private application code, history and private character assets or profiles are excluded.

The public source was updated on October 20 to commit 09682313a197877c8dd7db0b1f1f57b7de9199f9. That publication aligns the source with the approved v7 implementation; it did not change the deployed application, database or service configuration. Its dated preparation documents remain historical snapshots, not the current publication status.

Demonstrated workflow and verification

The demonstration uses an owned procedural 24-bone fixture with two controlled export faults: joint slot 24 is referenced where the valid slots are 0 through 23, and the animation declares 22 translation samples for 23 timestamps. All 23 sample vectors remain in the binary.

Fresh local checks identify the faults. The reviewer sees the evidence, reviews labeled recorded NVIDIA advice, makes accept/defer/reject decisions, and downloads the handoff. A separately prepared corrected export then produces zero companion findings instead of two, and zero official conformance errors instead of three. This is a controlled source/export correction and reinspection example, not AI-generated repair.

The video records actual local workflow use and identifies the saved October 12 NVIDIA response as recorded playback. It does not claim a fresh paid call or demonstrate every hosted v7 feature.

The exact published source bytes passed 93 companion tests and 77 service offline tests, TypeScript checking and a production build before publication. These are offline/source verification results, not a new live inference test or a claim of GitHub CI execution.

MIT covers the independently authored source and owned procedural fixtures. Dependency notices retain their respective licenses. NVIDIA model/service licensing is separate; model weights are not distributed.

Challenges and lessons

During development, provider structured output rejected uniqueItems. Removing that keyword from the provider grammar while keeping local enforcement resolved the issue. A published supported-keyword list and a schema preflight would reduce diagnostic requests. One bounded request with explicit failure states made usage and uncertain outcomes easier to reason about.

Schema-valid, finding-linked model output is not proof of factual correctness. A saved real NVIDIA response incorrectly blamed a valid zero timestamp rather than duplicate timestamps. That became an explicit counterexample for human review. Plausible incorrect explanations and unsupported uncertainty belong in quality tests alongside malformed responses. The product therefore keeps measured findings, model suggestions and human decisions separate.

Try it and judging-access limits

Open the hosted application for free local checks and the fixed-fixture guided workflow. Files and character-specific profiles used in the local panel stay in the browser.

Optional live AI requires personal ChatGPT sign-in and an explicit request. It is limited to five attempts per account and 33 shared attempts including prior usage. Failed or uncertain requests can consume an attempt; an unresolved upstream request can pause further AI use. Remaining availability is not guaranteed.

New paid requests stop December 15, 2026, at noon Pacific. They can become unavailable earlier if the shared allowance is exhausted or a request remains unresolved. Local checks and recorded playback remain free. No unrestricted or uninterrupted AI access is claimed.

For a no-spend local demonstration, clone the public repository, install Node.js 22+, run npm ci --ignore-scripts, then npm test and npm run demo. Open http://127.0.0.1:4321 and choose Run export-workflow demo. Review the fresh findings and clearly labeled recorded NVIDIA response, make review decisions, acknowledge review, and export the handoff. Use Inspect prepared corrected export for the controlled comparison. The demo launcher supplies no provider key and refuses new inference.

Built With

Share this project:

Updates

Submission history