Repository navigation
fix(runtime): reject noisy ONNX sessions and quiet default diagnostics - #213
Merged
Merged
Conversation
scbrown
marked this pull request as ready for review
October 24, 2026 08:00
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.
Creating an ONNX session with some system runtimes emits hundreds of duplicate-schema errors despite returning success. Bobbin now validates native session creation in a bounded child process and rejects that runtime with one concise error. Compatible runtimes preserve semantic results; keyword search remains available. The check never downloads libraries or activates CUDA.
Default logging now uses WARN and honors RUST_LOG, so dependency INFO logs no longer print absolute index paths. Runtime discovery notices also omit filesystem paths.
Validation: compile check and executable build passed; six real CLI controls passed, including semantic search/context with a compatible runtime, rejection of the noisy runtime, keyword independence, and explicit logging overrides. HOME guard clean. Focused process controls cover successful-but-noisy children, failed children, diagnostic overflow and timeout/reaping. Hosted CI and independent review remain required. This draft changes source only; no release or installation.
Demo (readable transcript; candidate only, not installed): the same public Flask fixture returned the expected search/context with zero stderr using the compatible runtime. With the affected system runtime, the old installed 0.29.0 emitted 629 schema errors despite exit 0; this source candidate exits 1 with the complete diagnostic below. This is a behavior comparison across installed 0.29.0 and the proposed source, not a claim that the current PR base binary was rebuilt. The private before log contains absolute paths and is not published. The final shared-harness animation waits for the reviewed source landing.
Reproduce with a prepared local index:
bobbin search --mode semantic --limit 2 "show the newest blog posts", selecting the affected or compatible runtime throughORT_DYLIB_PATH.BOBBIN_GPU=0keeps this CPU-only.