omnius 1.0.874 → 1.0.876

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/dist/index.js +2 -2
  2. package/dist/library.js +37 -20
  3. package/dist/providerRegistry.d.ts +6 -0
  4. package/dist/tui/native/worker.js +137 -8
  5. package/docs/DISCOVERY.json +747 -47
  6. package/docs/DISCOVERY.md +20 -1
  7. package/docs/guides/endpoint-requirements.md +33 -0
  8. package/docs/guides/sponsored-inference-mesh.md +84 -0
  9. package/docs/work-orders/evidence/endpoint-completion-verification-20261017.json +95 -0
  10. package/docs/work-orders/evidence/endpoint-source-verification-20261017.json +175 -0
  11. package/docs/work-orders/evidence/expanded-variant-repair-20261017.json +88 -0
  12. package/docs/work-orders/evidence/mesh-optional-startup-verification-20261017.json +70 -0
  13. package/docs/work-orders/evidence/mesh-source-verification-20261017.json +46 -0
  14. package/docs/work-orders/evidence/mesh-transport-verification-20261017.json +156 -0
  15. package/docs/work-orders/evidence/opencode-endpoint-regression-20261017.json +984 -0
  16. package/docs/work-orders/evidence/packaged-startup-independent-20261017.json +106 -0
  17. package/docs/work-orders/evidence/packaged-startup-native-20261017.json +131 -0
  18. package/docs/work-orders/evidence/publish-lock-verification-20261017.json +80 -0
  19. package/docs/work-orders/evidence/published-startup-investigation-20261017.json +158 -0
  20. package/docs/work-orders/evidence/startup-recovery-delivery-20261017.json +77 -0
  21. package/docs/work-orders/evidence/sticky-catalog-candidate-release-20261017.json +314 -0
  22. package/docs/work-orders/evidence/system-devices-source-verification-20261017.json +60 -0
  23. package/docs/work-orders/evidence/system-devices-verification-20261017.json +39 -0
  24. package/npm-shrinkwrap.json +1657 -636
  25. package/package.json +15 -33
package/docs/DISCOVERY.md CHANGED
@@ -316,7 +316,7 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
316
316
  | `command.docs` | Open the documentation overview | Print the human-readable Omnius documentation and discovery entrypoints. |
317
317
  | `command.dream` | /dream | Start dream mode - creative idle exploration (writes to .omnius/dreams/) |
318
318
  | `command.emojis` | /emojis | Toggle emoji rendering in TUI messages |
319
- | `command.endpoint` | /endpoint | Show current endpoint |
319
+ | `command.endpoint` | /endpoint | Select an endpoint or provider |
320
320
  | `command.evaluate` | /evaluate | Evaluate last completed task (LLM quality scoring) |
321
321
  | `command.expose` | /expose | Expose local inference via libp2p (default) |
322
322
  | `command.fallback` | /fallback | Show remote inference fallback mode |
@@ -340,6 +340,7 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
340
340
  | `command.livechat` | /livechat | Alias for /live chat, used by the top live button |
341
341
  | `command.mcp` | /mcp | Show MCP server/tool status and controls |
342
342
  | `command.memory` | /memory | Open the interactive memory pixel map and provenance trace |
343
+ | `command.mesh` | /mesh | Inspect trusted inference mesh routing and public identity |
343
344
  | `command.metabolize` | /metabolize | Run memory maintenance: import deferred memory, prune episodes, compact graph stores |
344
345
  | `command.metrics` | /metrics | Show runtime metrics: tokens, context window, throughput, and tool usage |
345
346
  | `command.model` | /model | Select from available models |
@@ -461,12 +462,14 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
461
462
  | `guide.guides-agent-integration` | Agent And Service Integration | An integration should discover Omnius at runtime instead of encoding a partial provider or tool list. |
462
463
  | `guide.guides-bring-your-own-inference` | Bring Your Own Inference | Omnius routes local and hosted models through an explicit provider descriptor. The descriptor determines the wire protocol, URL paths, authentication headers, and supported operations. It is the source of truth used by setup, model discovery, TUI runs, REST chat, summaries, voice, Telegram, sponsors, and endpoint probes. |
463
464
  | `guide.guides-dashboard` | Web Dashboard | The Omnius daemon serves a zero-build, self-contained dashboard from the same origin as the REST API. Start it with omnius serve, then open http://127.0.0.1:11435/. The interface uses Omnius's compact NOCLIP-derived style kit and shared responsive observability-card grids; the route registry in packages/cli/src/api/web-ui.ts is the source of truth for pages |
465
+ | `guide.guides-endpoint-requirements` | Endpoint names and requirements | Checked against official provider documentation on 2026-10-17. This is a configuration matrix, not a claim of account access or successful inference. Provider models and access policies can change; use the authenticated model picker for your account. Selecting an endpoint must not silently choose a paid model. |
464
466
  | `guide.guides-long-horizon-feature-workflow` | Long-horizon feature work | Implementation, acceptance cases and delivery records are tracked in WO-01. |
465
467
  | `guide.guides-media-generation` | Media Generation | Omnius exposes media generation through TUI commands, tools, Telegram creative workflows, and sponsor media endpoints. |
466
468
  | `guide.guides-osint-research` | Categorized OSINT research | Omnius ships a local, searchable snapshot of the OSINT4ALL Start.me page. It uses the same compact discovery pattern as AIWG skills: |
467
469
  | `guide.guides-pdf-collections` | Large PDF collections | Ask Omnius to process the collection in ordinary language, specifying the result you need: search, ordering, original-page manipulation, summary, or extraction. For example: “Review every supplied PDF, extract each recorded duration with its source page, order the documents by the invoice date, and deliver the complete results.” A field's meaning, units, mis |
468
470
  | `guide.guides-realtime` | Realtime Conversations | Realtime mode is for short, natural, back-and-forth spoken conversation behind ASR and TTS. |
469
471
  | `guide.guides-sponsor-and-cohere` | Sponsor And COHERE Mesh | Sponsor and COHERE let Omnius share inference capacity across peers. Sponsor mode is explicit provider/consumer sharing. COHERE is a distributed cognitive inference mesh. |
472
+ | `guide.guides-sponsored-inference-mesh` | Sponsored inference mesh | Omnius can route generation to explicitly trusted sponsors. A sponsor enables specific models, capacity and quotas; other trusted Omnius instances can use that capacity for their main agents, delegates and helpers through the same configured inference endpoint. Tools execute at the requesting instance. The sponsor runs generation only and does not receive a |
470
473
  | `guide.guides-system-tray` | System Tray Indicator | Omnius ships a native per-login tray indicator for Linux, macOS, and Windows on x64 hosts. It is separate from the REST daemon: closing the indicator never stops the daemon, and the daemon remains usable in headless sessions. |
471
474
  | `guide.guides-telegram` | Telegram Bridge | The Telegram bridge is a scoped public ingress and egress layer. It supports admin DMs, admin group mode, public group mode, media intake, generated artifact return, scoped memory, and persona documents. |
472
475
  | `guide.guides-tools-and-web-search` | Tools And Web Search | Omnius has two related tool surfaces: |
@@ -566,6 +569,9 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
566
569
  | `guide.work-orders-evidence-dashboard-browser-reconstruction-20261016` | Dashboard Browser Reconstruction 20261016 | Bundled Omnius documentation artifact: docs/work-orders/evidence/dashboard-browser-reconstruction-20261016.json. |
567
570
  | `guide.work-orders-evidence-dashboard-media-management-20261016` | Dashboard Media Management 20261016 | Bundled Omnius documentation artifact: docs/work-orders/evidence/dashboard-media-management-20261016.json. |
568
571
  | `guide.work-orders-evidence-desktop-indicator-registration-20261016` | Desktop Indicator Registration 20261016 | Bundled Omnius documentation artifact: docs/work-orders/evidence/desktop-indicator-registration-20261016.json. |
572
+ | `guide.work-orders-evidence-endpoint-completion-verification-20261017` | Endpoint Completion Verification 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/endpoint-completion-verification-20261017.json. |
573
+ | `guide.work-orders-evidence-endpoint-source-verification-20261017` | Endpoint Source Verification 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/endpoint-source-verification-20261017.json. |
574
+ | `guide.work-orders-evidence-expanded-variant-repair-20261017` | Expanded Variant Repair 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/expanded-variant-repair-20261017.json. |
569
575
  | `guide.work-orders-evidence-fallback-contract-cooldown-before-20261013` | Fallback Contract Cooldown Before 20261013 | Bundled Omnius documentation artifact: docs/work-orders/evidence/fallback-contract-cooldown-before-20261013.json. |
570
576
  | `guide.work-orders-evidence-fallback-model-benchmarks-20261012` | Fallback Model Benchmarks 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/fallback-model-benchmarks-20261012.json. |
571
577
  | `guide.work-orders-evidence-fallback-quality-installed-20261012` | Fallback Quality Installed 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/fallback-quality-installed-20261012.json. |
@@ -678,6 +684,9 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
678
684
  | `guide.work-orders-evidence-kilo-production-compatibility-20261012` | Kilo Production Compatibility 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/kilo-production-compatibility-20261012.json. |
679
685
  | `guide.work-orders-evidence-local-admission-provider-regression-20261014` | Local Admission Provider Regression 20261014 | Bundled Omnius documentation artifact: docs/work-orders/evidence/local-admission-provider-regression-20261014.json. |
680
686
  | `guide.work-orders-evidence-local-recovery-production-routes-20261014` | Local Recovery Production Routes 20261014 | Bundled Omnius documentation artifact: docs/work-orders/evidence/local-recovery-production-routes-20261014.json. |
687
+ | `guide.work-orders-evidence-mesh-optional-startup-verification-20261017` | Mesh Optional Startup Verification 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/mesh-optional-startup-verification-20261017.json. |
688
+ | `guide.work-orders-evidence-mesh-source-verification-20261017` | Mesh Source Verification 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/mesh-source-verification-20261017.json. |
689
+ | `guide.work-orders-evidence-mesh-transport-verification-20261017` | Mesh Transport Verification 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/mesh-transport-verification-20261017.json. |
681
690
  | `guide.work-orders-evidence-native-completion-presentation-verification-20261016` | Native Completion Presentation Verification 20261016 | Bundled Omnius documentation artifact: docs/work-orders/evidence/native-completion-presentation-verification-20261016.json. |
682
691
  | `guide.work-orders-evidence-native-conversation-prompt-audit-20261012` | Native Conversation Prompt Audit 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/native-conversation-prompt-audit-20261012.json. |
683
692
  | `guide.work-orders-evidence-native-goal-contract-probe-20261012` | Native Goal Contract Probe 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/native-goal-contract-probe-20261012.json. |
@@ -712,6 +721,7 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
712
721
  | `guide.work-orders-evidence-omni-analysis-phone-model-20261017` | Omni Analysis Phone Model 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/omni-analysis-phone-model-20261017.png. |
713
722
  | `guide.work-orders-evidence-opencode-all-free-audit-20261012` | Opencode All Free Audit 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/opencode-all-free-audit-20261012.json. |
714
723
  | `guide.work-orders-evidence-opencode-all-free-installed-verification-20261012` | Opencode All Free Installed Verification 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/opencode-all-free-installed-verification-20261012.json. |
724
+ | `guide.work-orders-evidence-opencode-endpoint-regression-20261017` | Opencode Endpoint Regression 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/opencode-endpoint-regression-20261017.json. |
715
725
  | `guide.work-orders-evidence-opencode-installed-production-stream-live-20261012` | Opencode Installed Production Stream Live 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/opencode-installed-production-stream-live-20261012.json. |
716
726
  | `guide.work-orders-evidence-opencode-production-cascade-live-20261012` | Opencode Production Cascade Live 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/opencode-production-cascade-live-20261012.json. |
717
727
  | `guide.work-orders-evidence-opencode-production-compatibility-20261012` | Opencode Production Compatibility 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/opencode-production-compatibility-20261012.json. |
@@ -719,6 +729,8 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
719
729
  | `guide.work-orders-evidence-opencode-step-rate-limited-diagnostic-20261012` | Opencode Step Rate Limited Diagnostic 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/opencode-step-rate-limited-diagnostic-20261012.json. |
720
730
  | `guide.work-orders-evidence-ovh-production-compatibility-20261012` | Ovh Production Compatibility 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/ovh-production-compatibility-20261012.json. |
721
731
  | `guide.work-orders-evidence-ovh-structured-context-compatibility-20261012` | Ovh Structured Context Compatibility 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/ovh-structured-context-compatibility-20261012.json. |
732
+ | `guide.work-orders-evidence-packaged-startup-independent-20261017` | Packaged Startup Independent 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/packaged-startup-independent-20261017.json. |
733
+ | `guide.work-orders-evidence-packaged-startup-native-20261017` | Packaged Startup Native 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/packaged-startup-native-20261017.json. |
722
734
  | `guide.work-orders-evidence-project-media-browser-20261016-dark-1440-image-output` | Dark 1440 Image Output | Bundled Omnius documentation artifact: docs/work-orders/evidence/project-media-browser-20261016/dark-1440-image-output.png. |
723
735
  | `guide.work-orders-evidence-project-media-browser-20261016-dark-360-image-output` | Dark 360 Image Output | Bundled Omnius documentation artifact: docs/work-orders/evidence/project-media-browser-20261016/dark-360-image-output.png. |
724
736
  | `guide.work-orders-evidence-project-media-browser-20261016-light-1440-image-output` | Light 1440 Image Output | Bundled Omnius documentation artifact: docs/work-orders/evidence/project-media-browser-20261016/light-1440-image-output.png. |
@@ -728,6 +740,8 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
728
740
  | `guide.work-orders-evidence-public-review-after-20261012` | Public Review After 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/public-review-after-20261012.json. |
729
741
  | `guide.work-orders-evidence-public-review-before-20261012` | Public Review Before 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/public-review-before-20261012.json. |
730
742
  | `guide.work-orders-evidence-public-session-live-20261017` | Public Session Live 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/public-session-live-20261017.json. |
743
+ | `guide.work-orders-evidence-publish-lock-verification-20261017` | Publish Lock Verification 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/publish-lock-verification-20261017.json. |
744
+ | `guide.work-orders-evidence-published-startup-investigation-20261017` | Published Startup Investigation 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/published-startup-investigation-20261017.json. |
731
745
  | `guide.work-orders-evidence-session-live-sidecar-profile-20261017` | Session Live Sidecar Profile 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/session-live-sidecar-profile-20261017.json. |
732
746
  | `guide.work-orders-evidence-session-live-write-profile-20261017` | Session Live Write Profile 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/session-live-write-profile-20261017.json. |
733
747
  | `guide.work-orders-evidence-session-native-restore-followup-20261016` | Session Native Restore Followup 20261016 | Bundled Omnius documentation artifact: docs/work-orders/evidence/session-native-restore-followup-20261016.json. |
@@ -741,6 +755,10 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
741
755
  | `guide.work-orders-evidence-session-transcript-light-320-session-image` | Session Transcript Light 320 Session Image | Bundled Omnius documentation artifact: docs/work-orders/evidence/session-transcript-light-320-session-image.png. |
742
756
  | `guide.work-orders-evidence-session-transcript-light-320-session-working` | Session Transcript Light 320 Session Working | Bundled Omnius documentation artifact: docs/work-orders/evidence/session-transcript-light-320-session-working.png. |
743
757
  | `guide.work-orders-evidence-source-hierarchy-installed-20261013` | Source Hierarchy Installed 20261013 | Bundled Omnius documentation artifact: docs/work-orders/evidence/source-hierarchy-installed-20261013.json. |
758
+ | `guide.work-orders-evidence-startup-recovery-delivery-20261017` | Startup Recovery Delivery 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/startup-recovery-delivery-20261017.json. |
759
+ | `guide.work-orders-evidence-sticky-catalog-candidate-release-20261017` | Sticky Catalog Candidate Release 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/sticky-catalog-candidate-release-20261017.json. |
760
+ | `guide.work-orders-evidence-system-devices-source-verification-20261017` | System Devices Source Verification 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/system-devices-source-verification-20261017.json. |
761
+ | `guide.work-orders-evidence-system-devices-verification-20261017` | System Devices Verification 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/system-devices-verification-20261017.json. |
744
762
  | `guide.work-orders-evidence-task-observability-state-verification-20261017` | Task Observability State Verification 20261017 | Bundled Omnius documentation artifact: docs/work-orders/evidence/task-observability-state-verification-20261017.json. |
745
763
  | `guide.work-orders-evidence-telegram-all-free-live-20261013` | Telegram All Free Live 20261013 | Bundled Omnius documentation artifact: docs/work-orders/evidence/telegram-all-free-live-20261013.json. |
746
764
  | `guide.work-orders-evidence-telegram-completion-review-live-20261013` | Telegram Completion Review Live 20261013 | Bundled Omnius documentation artifact: docs/work-orders/evidence/telegram-completion-review-live-20261013.json. |
@@ -1010,6 +1028,7 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
1010
1028
  | `provider.groq` | Groq | Groq hosted inference through its OpenAI-compatible API. |
1011
1029
  | `provider.hyperbolic` | Hyperbolic | Hyperbolic hosted models through an OpenAI-compatible API. |
1012
1030
  | `provider.lmstudio` | LM Studio | A local OpenAI-compatible LM Studio server, normally on port 1234. |
1031
+ | `provider.mesh` | Sponsored inference mesh | Sponsored inference mesh inference through openai-chat. |
1013
1032
  | `provider.mistral` | Mistral AI | Mistral hosted models through an OpenAI-compatible API. |
1014
1033
  | `provider.nvidia` | NVIDIA NIM | NVIDIA-hosted NIM models through an OpenAI-compatible API. |
1015
1034
  | `provider.ollama` | Ollama | Local Ollama inference using native Ollama model, chat, generate, and embeddings paths. |
@@ -0,0 +1,33 @@
1
+ # Endpoint names and requirements
2
+
3
+ Checked against official provider documentation on 2026-10-17. This is a configuration matrix, not a claim of account access or successful inference. Provider models and access policies can change; use the authenticated model picker for your account. Selecting an endpoint must not silently choose a paid model.
4
+
5
+ Type `/endpoint` to inspect choices or `/endpoint <name>` for a registered provider. Names and aliases are case-insensitive. An existing configured endpoint for the same provider retains its custom URL/port and exact-scope credentials. Switching providers clears the old credential/key pool; required missing keys use the existing secret input. Explicit URLs and custom protocol configuration remain available.
6
+
7
+ For example, use `/endpoint ollama`, `/endpoint openai`, `/endpoint claude` or `/endpoint gemini`. Type a prefix such as `/endpoint cl` and choose a suggestion with Tab or the pointer; completion fills the input without connecting. Enter applies the command. Add `--local` to save an endpoint only for the current project. Required keys are entered through the secret prompt, rather than placed in the command history.
8
+
9
+ | Name / aliases | Default base URL | Protocol and credential requirement | Official source |
10
+ | --- | --- | --- | --- |
11
+ | `ollama` | `http://127.0.0.1:11434` | Native Ollama. Local API has no default authentication; an authenticated proxy may require its own token. Server and selected model must exist. Cloud models have separate Ollama sign-in/key requirements. | [Authentication](https://docs.ollama.com/api/authentication) |
12
+ | `lmstudio`, `lm-studio` | `http://127.0.0.1:1234/v1` | OpenAI-compatible local server; start its server and select a model. Send a bearer token when server authentication is enabled. | [Compatibility](https://lmstudio.ai/docs/developer/openai-compat), [authentication](https://lmstudio.ai/docs/developer/core/authentication) |
13
+ | `vllm`, `v-llm` | `http://127.0.0.1:8000/v1` | OpenAI-compatible serving endpoint. Use the server's bearer key if configured; exact model, chat template and tool parser depend on that deployment. Setup does not start a CUDA service. | [Server](https://docs.vllm.ai/en/latest/serving/online_serving/openai_compatible_server/), [server flags](https://docs.vllm.ai/en/latest/cli/serve/) |
14
+ | `openai` | `https://api.openai.com/v1` | OpenAI Chat Completions; your API bearer credential and authorized model. Organization/project selection can require additional account-scoping headers. | [API authentication](https://developers.openai.com/api/reference/overview), [chat API](https://developers.openai.com/api/reference/resources/chat/subresources/completions/methods/create) |
15
+ | `anthropic`, `claude` | `https://api.anthropic.com/v1` | Anthropic Messages; `x-api-key` plus `anthropic-version: 2023-06-01`. This preset uses workspace-bound API keys; multi-workspace keys require an additional workspace header and are not implied by entering a key alone. | [API overview](https://platform.claude.com/docs/en/api/overview) |
16
+ | `gemini`, `google`, `google-ai` | `https://generativelanguage.googleapis.com/v1beta/openai` | Gemini's OpenAI-compatible API, with your Gemini API key as bearer credential; not its distinct native request schema. | [OpenAI compatibility](https://ai.google.dev/gemini-api/docs/openai) |
17
+ | `openrouter` | `https://openrouter.ai/api/v1` | OpenAI-compatible bearer API key. Referral/title headers are optional. Account credit/limits and selected model pricing remain authoritative. | [Authentication](https://openrouter.ai/docs/api_reference/authentication) |
18
+ | `groq` | `https://api.groq.com/openai/v1` | OpenAI-compatible API with your Groq API key. Provider compatibility and model capabilities still apply. | [Compatibility](https://console.groq.com/docs/openai) |
19
+ | `deepinfra` | `https://api.deepinfra.com/v1/openai` | OpenAI-compatible API with your DeepInfra token and an exact catalog model. | [Chat API](https://docs.deepinfra.com/chat/overview) |
20
+ | `fireworks`, `fireworks-ai` | `https://api.fireworks.ai/inference/v1` | OpenAI-compatible API with bearer API key and accessible model/deployment. | [Chat endpoint](https://docs.fireworks.ai/api-reference/post-chatcompletions), [authentication](https://docs.fireworks.ai/api-reference/introduction) |
21
+ | `together`, `together-ai` | `https://api.together.ai/v1` | OpenAI-compatible API with your Together API key. Recognize previously saved `api.together.xyz` URLs without silently replacing an explicit configured endpoint. | [Compatibility](https://docs.together.ai/docs/inference/openai-compatibility) |
22
+ | `chutes`, `chutes-ai` | `https://llm.chutes.ai/v1` | OpenAI-compatible API with bearer Chutes key. Use concrete catalog model IDs; saved routing aliases need account-side configuration. | [Agent connection requirements](https://chutes.ai/agents/connect) |
23
+ | `mistral`, `mistral-ai` | `https://api.mistral.ai/v1` | OpenAI-compatible chat API and your Mistral bearer API key; account mode, model access and rate limits apply. | [API key setup](https://docs.mistral.ai/getting-started/quickstarts/studio/activate-and-generate-api-key) |
24
+ | `cerebras` | `https://api.cerebras.ai/v1` | OpenAI-compatible API with your Cerebras key. Shared inference uses exact model IDs; dedicated inference can use an endpoint ID. | [Compatibility](https://inference-docs.cerebras.ai/resources/openai) |
25
+ | `sambanova`, `samba-nova` | `https://api.sambanova.ai/v1` | SambaCloud OpenAI-compatible bearer API key. Dedicated endpoints may use a different base URL; legacy SambaStudio APIs have different requirements and are not this preset. | [Official integration](https://docs.sambanova.ai/docs/en/integrations/vscode) |
26
+ | `nvidia`, `nvidia-nim`, `nim` | `https://integrate.api.nvidia.com/v1` | NVIDIA hosted OpenAI-compatible chat API and bearer NVIDIA API key with model access/credit. Self-hosted NIM endpoints are explicitly configured URLs. | [Hosted chat reference](https://docs.api.nvidia.com/nim/reference/stepfun-ai-step-5-preview-infer) |
27
+ | `builtin-free` | `https://opencode.ai/inference/openai/v1` | Published public access remains subject to provider permission. Discovery is separately pinned to `/inference/v1/models`. Current independent Omnius and genuine OpenCode controls returned403; catalog membership does not establish usable generation. | [Inference API](https://opencode.ai/v2/docs/console/api/inference/) |
28
+ | `mesh` | Configured loopback gateway; default `http://127.0.0.1:11436/v1` | Omnius OpenAI-compatible sponsored inference. On explicit selection, read the enabled owner-private default mesh configuration and its gateway token. Existing explicitly configured mesh URLs retain their own credential scope. The gateway must already be running; endpoint selection starts no service. | [Setup and trust boundaries](sponsored-inference-mesh.md) |
29
+ | `hyperbolic` | Retired serverless preset | Official documentation says the old inference API and playground are retired, and old requests fail even with valid keys. Do not offer this as a working shortcut. Operator-hosted replacement servers use an explicit custom URL/protocol. | [Retirement notice](https://www.hyperbolic.ai/docs/faq/inference-models) |
30
+
31
+ Custom endpoints require a URL and an explicit supported protocol when detection is ambiguous: `ollama`, `openai-chat`, or `anthropic-messages`. A local server's optional bearer authentication is not a reason to discard a supplied credential. No API key is inferred from a different provider, and endpoint discovery does not perform generation, model downloads or hardware deployment.
32
+
33
+ The standard presets cover the auth forms above. They do not claim every provider's OAuth, federation, multi-workspace, tenant or administrative API is implemented. Configure a supported scoped API credential or an explicitly authorized compatible gateway for those deployments.
@@ -0,0 +1,84 @@
1
+ # Sponsored inference mesh
2
+
3
+ Omnius can route generation to explicitly trusted sponsors. A sponsor enables specific models, capacity and quotas; other trusted Omnius instances can use that capacity for their main agents, delegates and helpers through the same configured inference endpoint. Tools execute at the requesting instance. The sponsor runs generation only and does not receive a new conversation in its transcript.
4
+
5
+ This transport does not repair OpenCode service access. Provider authentication, access restrictions and quotas remain authoritative. Requests are never repeated on another sponsor after a dispatch, a partial response or a provider denial.
6
+
7
+ ## Trust and privacy
8
+
9
+ Each instance keeps a persistent private identity and shares its public peer ID. Operators exchange peer IDs and reachable multiaddresses through a trusted channel. Both ends explicitly allow the other identity. There is no public peer autodial or open inference proxy.
10
+
11
+ Noise authenticates and encrypts the application stream, including through configured libp2p circuit relays. A relay can observe addressing, timing and sizes. The selected sponsor and inference provider receive plaintext. Local administrators can access their own running process and keys. See the primary [Noise specification](https://github.com/libp2p/specs/blob/master/noise/README.md) and [circuit relay protocol](https://libp2p.io/docs/circuit-relay/).
12
+
13
+ The Tracker repository informed the routing, framing, lifetime and capacity patterns. The first runtime supports direct TCP, secure WebSockets and explicitly configured circuit relays. Other Tracker carriers are inventoried in `.aiwg/planning/sponsored-inference-mesh-20261017/` but are not implemented here. No GitHub Pages deployment or browser engine is required.
14
+
15
+ ## Configure an instance
16
+
17
+ Run `omnius mesh init`. This creates disabled configuration and a private identity in the Omnius config directory under `mesh/`. It prints the configuration path and public peer ID, never the private key or gateway token. Alternatively use a private dedicated directory:
18
+
19
+ ```sh
20
+ omnius mesh init --config /private/omnius-mesh/config.json
21
+ omnius mesh identity --config /private/omnius-mesh/config.json
22
+ ```
23
+
24
+ The directory must be owner-only (`0700`); configuration, identity and ledger are private files (`0600`). Initialization refuses to overwrite existing configuration. Preserve the identity across restarts. Replacing it requires peers to deliberately trust the replacement.
25
+
26
+ Edit the private configuration before enabling it. The following is a schema example; replace the peer IDs, addresses and model with actual operator-approved values. Keep the random `gatewayToken` generated by initialization.
27
+
28
+ ```json
29
+ {
30
+ "version": 1,
31
+ "enabled": true,
32
+ "gatewayPort": 11436,
33
+ "gatewayToken": "KEEP_THE_PRIVATE_RANDOM_TOKEN_CREATED_BY_INIT",
34
+ "listenAddresses": ["/ip4/0.0.0.0/tcp/4010"],
35
+ "relayAddresses": [],
36
+ "peers": [
37
+ { "peerId": "TRUSTED_SPONSOR_PEER_ID", "addresses": ["/dns4/sponsor.example/tcp/4010/p2p/TRUSTED_SPONSOR_PEER_ID"] }
38
+ ],
39
+ "allowedRequesters": ["TRUSTED_ORIGIN_PEER_ID"],
40
+ "offers": [
41
+ {
42
+ "id": "local-approved-model",
43
+ "model": "EXACT_APPROVED_MODEL_TAG",
44
+ "endpoint": "http://127.0.0.1:11434",
45
+ "protocol": "ollama",
46
+ "admission": "managed-ollama",
47
+ "contextTokens": 32768,
48
+ "maxOutputTokens": 4096,
49
+ "capacity": 1,
50
+ "maxRequestsPerMinute": 10,
51
+ "maxTokensPerDay": 100000
52
+ }
53
+ ]
54
+ }
55
+ ```
56
+
57
+ An origin-only instance leaves `offers` empty. A sponsor-only instance may leave `peers` empty, but must list permitted origin IDs in `allowedRequesters`. Discovery advertises only opaque offer IDs, model identifiers, expiry and declared capacity. Provider endpoints and keys stay local.
58
+
59
+ Local sponsorship requires the discovered managed Ollama broker endpoint. Before enabling actual accelerator-backed work, follow the repository's GPU reservation and exact model-placement preflight. Starting the mesh does not load/download a model. Declaring capacity is not proof of GPU placement.
60
+
61
+ For an authorized remote provider use `admission: "remote-authorized"`, an HTTPS endpoint and an explicit protocol (`ollama`, `openai-chat`, or `anthropic-messages`). Set `apiKeyEnv` to a host environment variable containing your own provider key when required. The configuration stores the variable name, and discovery never transmits the key. Endpoints with credentials in the URL, query strings or fragments are rejected.
62
+
63
+ ## Run and use it
64
+
65
+ ```sh
66
+ omnius mesh start --config /private/omnius-mesh/config.json
67
+ omnius mesh status --config /private/omnius-mesh/config.json
68
+ ```
69
+
70
+ Run the first command in an owned foreground process or your normal supervisor. It prints actual listen addresses and the loopback gateway URL. The gateway binds only `127.0.0.1` and requires the private generated bearer token. It rejects browser Origin requests; browser chat continues through its existing authenticated daemon.
71
+
72
+ Use `/endpoint mesh` to select the enabled default private mesh configuration. This resolves its exact loopback port and gateway token only after selection; typing suggestions never reads credentials. Then choose an advertised model with `/model`. An already configured custom mesh URL keeps its own credentials; the default token is never copied to another host. For a dedicated `--config` instance, explicitly configure its printed gateway URL, protocol `openai-chat` and its own private `gatewayToken`. Configure the browser daemon with the same endpoint. Main and child generation then use the same mesh route policy; the gateway never calls daemon `/v1/chat`.
73
+
74
+ For peers behind NAT, configure an operator-controlled reachable circuit relay and exchange the resulting full circuit multiaddress. Relay trust does not grant inference permission. No public relay is selected automatically.
75
+
76
+ `mesh status` shows bounded discovery, selection, admission and terminal metadata. It excludes prompts, completions, tool arguments and provider secrets. `/v1/models` is passive discovery and does not generate tokens. A missing model/capacity or a provider error is explicit.
77
+
78
+ Stop the owned mesh process with SIGINT/SIGTERM. It stops admission, cancels owned calls and closes its transport. Configuration changes, including trusted peers and offers, take effect after a controlled restart. Do not remove or edit a live ledger/ownership file. Abrupt process death can leave an ownership lock; verify the recorded owner has exited before explicit offline recovery. Never delete the ledger to recover a lock: its metadata prevents interrupted requests from executing again after restart.
79
+
80
+ The ledger reserves prompt-plus-maximum-output token estimates conservatively before dispatch and retains bounded request metadata. Failed/cancelled requests can still consume reservation; this favors respecting operator budgets. Once replay-history capacity is full, sponsorship fails closed until the operator performs a deliberate retention/reset procedure while stopped. Completed content is not stored in this ledger.
81
+
82
+ ## Verification limits
83
+
84
+ Source acceptance uses genuine loopback peer transports and fixture providers, not CUDA or paid inference. These tests establish transport, framing and lifecycle behavior; they do not establish that any external provider will accept a request, that a GPU is correctly placed, or that all Tracker relay carriers have been ported.
@@ -0,0 +1,95 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "date": "2026-10-17",
4
+ "scope": "Source-only native endpoint provider argument completion",
5
+ "baseCommit": "3459b16e",
6
+ "sourceHashes": {
7
+ "packages/cli/src/tui/endpoint-completion.ts": "31ec68120175e75ee712afc142605edf8245bbeef58f810bdd9eac44c21d89ef",
8
+ "packages/cli/src/tui/interactive.ts": "4f71a143644ce62ae826e0f870f653a6b5babd5766fa534745058dc8a7608487",
9
+ "packages/cli/src/tui/status-bar.ts": "41da64db8ddc8276d5e646b4f0f9bc55667d709ce9166b4c16a4273848622e19",
10
+ "packages/cli/src/tui/command-registry.ts": "ca526f7abfa54e5eb31b015924346b3106ff609481f1229b9b7dc4117f80500e"
11
+ },
12
+ "verificationSourceHashes": {
13
+ "packages/cli/tests/endpoint-completion.test.ts": "bb845faf92dc376c9412f4629dd7549a31800f880a9fbb44eae923a198aa7c36",
14
+ "packages/cli/tests/native-endpoint-completion.test.ts": "3d2f053e03d15446cde83f2353679ec479a75b180f618ab537400acf66c3d956",
15
+ "packages/cli/tests/native-endpoint-completion.bun.ts": "782b9bef5be6c54d32895574bba24e6a2430d5ce8d560004104d611a611136eb"
16
+ },
17
+ "dependencyOwnership": {
18
+ "endpointPresetModule": "owned by terminal_inventory; copied for verification and excluded from patch",
19
+ "providerRegistry": "owned by terminal_inventory; copied for verification and excluded from patch"
20
+ },
21
+ "behavior": {
22
+ "choices": "all active canonical provider IDs and aliases, including claude; registry retirement filter omits Hyperbolic",
23
+ "credentialOrSavedUrlReads": false,
24
+ "nativeViewportRows": 4,
25
+ "choicesTruncatedToFive": false,
26
+ "selection": "Tab or pointer fills existing editor; only Enter submits; bare /endpoint Enter remains picker",
27
+ "cas": "existing NativeInput expectedText/expectedCursor authority preserved",
28
+ "noPresentationDocumentRebuild": true,
29
+ "ordinaryDraftsDoNotEnumerateProviders": true
30
+ },
31
+ "before": {
32
+ "source": "actual prior StatusBar._updateSuggestions body",
33
+ "bare": [
34
+ "endpoint"
35
+ ],
36
+ "partial": []
37
+ },
38
+ "beforeBaselineSha256": "05cfe74c492540c14d015d6e1f64a82e886102188577998f3324e22e7c9b01d8",
39
+ "tests": {
40
+ "passed": 39,
41
+ "failed": 0,
42
+ "files": 5,
43
+ "sourceAliased": true,
44
+ "log": "/tmp/omnius-endpoint-completion-final-tests.json",
45
+ "logSha256": "dc6e2bc919fe1247daf2f655f45c58d376f9194688b3820ce7a4c2ff504883ac",
46
+ "nativeActualCoreChecks": 5,
47
+ "nativeSizes": [
48
+ [
49
+ 60,
50
+ 20
51
+ ],
52
+ [
53
+ 80,
54
+ 24
55
+ ],
56
+ [
57
+ 100,
58
+ 30
59
+ ],
60
+ [
61
+ 120,
62
+ 36
63
+ ],
64
+ [
65
+ 160,
66
+ 48
67
+ ]
68
+ ],
69
+ "coverage": [
70
+ "all registry names and aliases",
71
+ "retired provider exclusion",
72
+ "prefix and command alias matching",
73
+ "inert hostile URL/key/flag/line metadata",
74
+ "retained transcript identity",
75
+ "NativeInput CAS completion",
76
+ "actual native bare Enter/Tab/pointer/keyboard scrolling",
77
+ "continuous sidebar divider through voice/status/suggestion/scroll rows at five sizes"
78
+ ]
79
+ },
80
+ "typecheck": {
81
+ "log": "/tmp/omnius-endpoint-completion-noemit.log",
82
+ "exitCode": 0,
83
+ "scope": "CLI + execution source with current source aliases, noEmit",
84
+ "diagnostics": 0
85
+ },
86
+ "safety": {
87
+ "providerRequests": 0,
88
+ "inferenceRequests": 0,
89
+ "modelLoads": 0,
90
+ "cudaActions": 0,
91
+ "serviceChanges": 0,
92
+ "sharedBuilds": 0,
93
+ "rootWrites": 0
94
+ }
95
+ }
@@ -0,0 +1,175 @@
1
+ {
2
+ "schema": "omnius.endpoint-source-verification.v1",
3
+ "date": "2026-10-17",
4
+ "base": "8270d3b0",
5
+ "verifiedStagedTree": "e4d51863c35d795ae3ce86e9b08a55d4421bdc7e",
6
+ "sourceHashes": {
7
+ "packages/backend-vllm/src/normalizeUrl.ts": "129a9d6c327345648bf4f798c966887f6b8fb905adf6cc2991c6016e60ceba8c",
8
+ "packages/backend-vllm/src/providerRegistry.ts": "e2e7718c32626621f09f831ce8d9046229bb3de1bfd55c4bfb0ff0120fb7840d",
9
+ "packages/backend-vllm/tests/normalizeUrl.test.ts": "19a5a19b5d375782930201ed98ba4c0ff7665f9db49ed31790cd46cd8241ad4a",
10
+ "packages/backend-vllm/tests/providerRegistry.test.ts": "41647303c2d4f537bb0b1948aac52af9ca16f559425f68da15b49a92f7a7c818",
11
+ "packages/cli/src/onboarding/provider-setup.ts": "bd4696656f312c5165f36602fab113667c8f8cd394b17fc23948eba204d4116e",
12
+ "packages/cli/src/tui/command-registry.ts": "cc7d915787217b3dc97b2e6662f4755639dac34025e7ae9c8230a40be97b5320",
13
+ "packages/cli/src/tui/commands.ts": "1a918115ad9b3cc81d93fc9ad12a93817a38a175bcb21fac2d3de480d95c38e6",
14
+ "packages/cli/src/tui/endpoint-completion.ts": "31ec68120175e75ee712afc142605edf8245bbeef58f810bdd9eac44c21d89ef",
15
+ "packages/cli/src/tui/endpoint-preset.ts": "6392856ea9bc7d42c9a91a195dade5a8a377ed6b290abc8404786218cb086807",
16
+ "packages/cli/src/tui/interactive.ts": "3cfc351793ce41ec16315752ae2f48c9a1e5fc80b8f99a35b0017d2b42fec670",
17
+ "packages/cli/src/tui/mesh-endpoint.ts": "404464ba64fc057f3927bdbe441aa0a571556445dea4dfb2cec1f270f4738007",
18
+ "packages/cli/src/tui/model-picker.ts": "9cb71e7639e4c77cc5929cdfc1e717af35ebd535e72562a848959f83b8ee7974",
19
+ "packages/cli/src/tui/setup.ts": "1206e2ca35abb21d1e9054cf9b97d12333ccd53cb243d97f083f0b8b771d121a",
20
+ "packages/cli/src/tui/status-bar.ts": "41da64db8ddc8276d5e646b4f0f9bc55667d709ce9166b4c16a4273848622e19",
21
+ "packages/cli/src/tui/telegram-inference.ts": "e164349ccee453ecf89f99887ae94dbd1846389be3598500c4798d3a3ae23a23",
22
+ "packages/cli/tests/command-native-presentation.test.ts": "268edcfaeb63c17b57dcdefc6dac630b1511c5046f32e1a8c9d4ed86b2982998",
23
+ "packages/cli/tests/endpoint-catalog-transport.test.ts": "1e0475d61f8e364d9263b6a470e8c1836f8b8b121bbd21083b1501c548711945",
24
+ "packages/cli/tests/endpoint-completion.test.ts": "bb845faf92dc376c9412f4629dd7549a31800f880a9fbb44eae923a198aa7c36",
25
+ "packages/cli/tests/endpoint-mesh.test.ts": "2ff3bc017acfad780d7b1f38ea012b1f908104872f08d02a33f244cc3f1abb1d",
26
+ "packages/cli/tests/endpoint-preset-command.test.ts": "c0982bdc467b04d6b494eaf18f92dad2b8bf3ed5083b68edec0fbf54ff83d590",
27
+ "packages/cli/tests/endpoint-preset.test.ts": "6366f7bc3e3c747a78ad1f106a7a9d2e7cc44f0d21f2891624b24e31f83f83c9",
28
+ "packages/cli/tests/native-endpoint-completion.bun.ts": "782b9bef5be6c54d32895574bba24e6a2430d5ce8d560004104d611a611136eb",
29
+ "packages/cli/tests/native-endpoint-completion.test.ts": "3d2f053e03d15446cde83f2353679ec479a75b180f618ab537400acf66c3d956",
30
+ "packages/cli/tests/onboarding-provider-setup.test.ts": "179d7a61797b583ce88a2e1a70a57b4ee77b122a79177a6c047b3ae1982697cf"
31
+ },
32
+ "uniquePassingTests": 314,
33
+ "failedTests": 0,
34
+ "gates": [
35
+ {
36
+ "name": "cli",
37
+ "passed": 243,
38
+ "failed": 0,
39
+ "selectedOut": 0,
40
+ "reportSha256": "219d79979dda915bbc054b144e261ad4116965e86f65351bc62f98ced20d4a2d",
41
+ "files": [
42
+ {
43
+ "file": "builtin-free-models.test.ts",
44
+ "passed": 15
45
+ },
46
+ {
47
+ "file": "endpoint-catalog-transport.test.ts",
48
+ "passed": 43
49
+ },
50
+ {
51
+ "file": "endpoint-completion.test.ts",
52
+ "passed": 5
53
+ },
54
+ {
55
+ "file": "endpoint-history-redaction.test.ts",
56
+ "passed": 1
57
+ },
58
+ {
59
+ "file": "endpoint-mesh.test.ts",
60
+ "passed": 9
61
+ },
62
+ {
63
+ "file": "endpoint-model-policy.test.ts",
64
+ "passed": 2
65
+ },
66
+ {
67
+ "file": "endpoint-preset-command.test.ts",
68
+ "passed": 22
69
+ },
70
+ {
71
+ "file": "endpoint-preset.test.ts",
72
+ "passed": 8
73
+ },
74
+ {
75
+ "file": "endpoint-provider-picker.test.ts",
76
+ "passed": 6
77
+ },
78
+ {
79
+ "file": "mesh-backend.test.ts",
80
+ "passed": 42
81
+ },
82
+ {
83
+ "file": "mesh-gateway.test.ts",
84
+ "passed": 15
85
+ },
86
+ {
87
+ "file": "model-availability.test.ts",
88
+ "passed": 6
89
+ },
90
+ {
91
+ "file": "model-picker-context-telemetry.test.ts",
92
+ "passed": 10
93
+ },
94
+ {
95
+ "file": "native-endpoint-completion.test.ts",
96
+ "passed": 1
97
+ },
98
+ {
99
+ "file": "onboarding-provider-setup.test.ts",
100
+ "passed": 14
101
+ },
102
+ {
103
+ "file": "web-chat-transport-lifecycle.test.ts",
104
+ "passed": 31
105
+ },
106
+ {
107
+ "file": "web-ui-client-runtime.test.ts",
108
+ "passed": 4
109
+ },
110
+ {
111
+ "file": "web-ui-script.test.ts",
112
+ "passed": 9
113
+ }
114
+ ]
115
+ },
116
+ {
117
+ "name": "backend",
118
+ "passed": 62,
119
+ "failed": 0,
120
+ "selectedOut": 0,
121
+ "reportSha256": "ab2cdfc40881165dfea762bfcfe6b49906601b5cc2de5101bd644cc484506d81",
122
+ "files": [
123
+ {
124
+ "file": "normalizeUrl.test.ts",
125
+ "passed": 44
126
+ },
127
+ {
128
+ "file": "providerRegistry.test.ts",
129
+ "passed": 18
130
+ }
131
+ ]
132
+ },
133
+ {
134
+ "name": "native",
135
+ "passed": 9,
136
+ "failed": 0,
137
+ "selectedOut": 6,
138
+ "reportSha256": "1ce76c1aafde49f4f8816be2cfb357f7df4acead2228041bab2a88166fddbbc1",
139
+ "files": [
140
+ {
141
+ "file": "command-native-presentation.test.ts",
142
+ "passed": 9
143
+ }
144
+ ]
145
+ }
146
+ ],
147
+ "nativeSubscenarios": 5,
148
+ "nativeSizes": [
149
+ "60x20",
150
+ "80x24",
151
+ "100x30",
152
+ "120x36",
153
+ "160x48"
154
+ ],
155
+ "noEmit": {
156
+ "passed": true,
157
+ "scope": "All CLI and execution source, importing backend-vllm/orchestrator source with explicit aliases; no build/emit"
158
+ },
159
+ "independentReview": [
160
+ "Captured catalog protocol/path/auth and subsequent /model use",
161
+ "Exact credential/pool scopes and cancelled secret/protocol input",
162
+ "Custom Ollama prefix retained for metadata",
163
+ "Remote runtime ports cannot silently select catalog-first models",
164
+ "Authenticated catalog capabilities retained in endpoint and model status updates"
165
+ ],
166
+ "limits": [
167
+ "Catalog/parser/provider tests use HTTP fixtures; no provider access claim",
168
+ "Actual OpenTUI fixtures exercise keyboard, pointer, viewport scrolling and divider continuity without inference",
169
+ "Six unrelated native presentation cases outside the selected subset, including independently confirmed pre-existing recovered-session header assertion mismatch, were not selected",
170
+ "Mesh core has separate previously committed verification; this gate additionally reruns42 origin backend and15 gateway cases",
171
+ "Source only: zero live inference, model loads, new network/provider probes, service changes, shared builds or publication",
172
+ "Current genuine OpenCode access controls still return403; endpoint shortcuts do not alter provider access controls"
173
+ ],
174
+ "reproducibility": "Staged source was archived before checks; this receipt and later planning delivery metadata do not change the checked source hashes."
175
+ }
@@ -0,0 +1,88 @@
1
+ {
2
+ "schema": "omnius.expanded-variant-repair-verification.v1",
3
+ "date": "2026-10-17",
4
+ "scope": "Source-only repair endpoint binding, honest diagnostic outcomes and independent loopback endpoint cooldown. Startup transcript/daemon diagnostic presentation is a separate integration owned by the parent/native frontend agent.",
5
+ "baseline": {
6
+ "gitHead": "56fceb0070166eb92e751d490d82295757de3fba",
7
+ "sourceSha256": "c592ec81fd9f012604d928e6f2eedb8264cda0f2ada5f9a3dabc2e538cf7a632",
8
+ "beforeEvidence": [
9
+ "createExpandedVariantNamedAsync accepted no backendUrl, invoked a shell command and inherited OLLAMA_HOST/default despite reading metadata from a selected endpoint.",
10
+ "Failed child creation was caught as null; stale-context, missing-tools and canonical-alias repair branches could count it as unchanged.",
11
+ "readExpandedVariantState returned null for HTTP, invalid JSON and transport failures; sweep collapsed these with policy/base/create failures into one inaccurate startup warning."
12
+ ]
13
+ },
14
+ "ownedPaths": [
15
+ "packages/cli/src/tui/setup.ts",
16
+ "packages/cli/src/tui/expanded-variant-sweep.ts",
17
+ "packages/cli/tests/ollama-broker-model-identity.test.ts",
18
+ "packages/cli/tests/expanded-variant-repair.test.ts",
19
+ "packages/cli/tests/expanded-variant-sweep.test.ts",
20
+ "docs/work-orders/evidence/expanded-variant-repair-20261017.json"
21
+ ],
22
+ "sourceHashes": {
23
+ "packages/cli/src/tui/setup.ts": "e64691d02455c3ff1b691f3d4be4467e39bfbee3718fac85be248f8e3a3649d4",
24
+ "packages/cli/src/tui/expanded-variant-sweep.ts": "65cdb17f9aaedf7aba27481a7818eb6251bb2192d0766dd2c4337813f30e13cb",
25
+ "packages/cli/tests/ollama-broker-model-identity.test.ts": "927b0b76d9e588c19b7afa68ab488c9b428611d6d272b86e8f175d14dd058566",
26
+ "packages/cli/tests/expanded-variant-repair.test.ts": "dfb2f96beed5eac75759a022b88c3733ef469bb6386f2aa33979122a3c721cc1",
27
+ "packages/cli/tests/expanded-variant-sweep.test.ts": "a2bd245f0d10560950b66b56e5270f110210002d4f44a89e34ccf1dce20bee1e"
28
+ },
29
+ "verification": {
30
+ "result": "PASS",
31
+ "testFiles": 3,
32
+ "tests": 58,
33
+ "newCases": 36,
34
+ "caseCounts": {
35
+ "packages/cli/tests/ollama-broker-model-identity.test.ts": 22,
36
+ "packages/cli/tests/expanded-variant-repair.test.ts": 17,
37
+ "packages/cli/tests/expanded-variant-sweep.test.ts": 19
38
+ },
39
+ "counting": "One complete focused batch; 22 existing broker identity cases plus 17 new repair cases and 19 new endpoint/cadence cases. Do not add earlier overlapping test batches.",
40
+ "testLog": "/tmp/omnius-expanded-repair-final-tests.log",
41
+ "testLogSha256": "880733870231877e568a95226633f65911384466228b12f2975d281b9c43bc0d",
42
+ "testCommand": "pnpm exec vitest run tests/expanded-variant-repair.test.ts tests/expanded-variant-sweep.test.ts tests/ollama-broker-model-identity.test.ts --maxWorkers=2 --minWorkers=1 --reporter=verbose",
43
+ "typecheck": {
44
+ "result": "PASS",
45
+ "diagnostics": 0,
46
+ "log": "/tmp/omnius-expanded-repair-final-typecheck.log",
47
+ "command": "pnpm exec tsc -p tsconfig.json --noEmit --incremental false --composite false"
48
+ },
49
+ "sourcePatch": "/tmp/omnius-expanded-repair-source.patch",
50
+ "sourcePatchSha256": "cfd49415516843e855e51f3a2eab1b102a53ee27b66c7cf59d30d370fab41194",
51
+ "rootApplyCheck": "PASS before integration",
52
+ "scopedDiffCheck": "PASS"
53
+ },
54
+ "contract": {
55
+ "creation": "Every async wrapper-create caller explicitly passes the requested endpoint. execFile invokes ollama with an argument vector; the normalized HTTP(S) endpoint overrides OLLAMA_HOST only in a copied child environment. Global environment is unchanged. Credentials/query/fragment URLs are refused.",
56
+ "failureReasons": [
57
+ "metadata_http",
58
+ "metadata_invalid",
59
+ "metadata_unavailable",
60
+ "missing_base",
61
+ "broker_policy",
62
+ "create_failed"
63
+ ],
64
+ "failureDetails": "Fixed host-owned diagnostic text and optional numeric HTTP status; no raw model response, thrown exception text, subprocess stdout/stderr or inherited credentials. A missing friendly base must be installed in the selected catalog before a repair is attempted.",
65
+ "success": "Only a completed creation enters repaired. Required failed creates enter failed, not unchanged. Broker-managed aliases remain untouched.",
66
+ "metadata": "The initial validated wrapper state also supplies the tools-capability decision, avoiding a redundant unchecked wrapper-state probe. A later authoritative read failure remains a typed failure.",
67
+ "scheduler": "createExpandedVariantSweepScheduler(scan,{ttlMs?,now?}).run(backendType,url) returns one result Promise for a real scan or null for invalid/non-Ollama/nonloopback, in-flight or cooldown-suppressed repeats. Per-normalized-endpoint state is independent. Default cooldown is five minutes after success or rejection completes.",
68
+ "loopback": "Exact localhost, 127.0.0.1 and IPv6 ::1 only, parsed as URL host; username/password, query, fragment, wildcard bind address and remote substring tricks are excluded.",
69
+ "retention": "At most 32 completed endpoint entries; active scans retain their guards until settlement. Cadence is per scheduler instance, not a cross-process persistent lock."
70
+ },
71
+ "coveredBehaviors": [
72
+ "Selected custom-port/basepath overrides unrelated inherited OLLAMA_HOST for stale-context, missing-tools and canonical-alias repairs.",
73
+ "Public async new-wrapper creation uses the same endpoint binding.",
74
+ "Failed creation in all three repair branches does not masquerade as unchanged.",
75
+ "HTTP failure, invalid JSON, wrong/empty metadata structure and unavailable metadata remain distinct from missing base and broker refusal.",
76
+ "Lost/missing friendly bases never trigger implicit registry lookup or create.",
77
+ "Unchanged valid wrapper yields unchanged without any create call.",
78
+ "Uppercase/trailing-slash/default-port normalization, IPv6 loopback and rejection of deceptive remote URLs.",
79
+ "Duplicate in-flight suppression, independent new endpoints, cooldown after completion, failed-scan retry after cooldown and synchronous callback throw recovery."
80
+ ],
81
+ "verificationLimits": [
82
+ "All fetch calls and exec/execFile/spawn entry points used by the new fixtures are mocked or rejected. Synthetic memory/device metadata does not claim actual GPU placement.",
83
+ "No actual model creation, repair, model loading, inference, network request, CUDA workload, service change, shared build or publication was performed.",
84
+ "The existing omnius-expanded-models.test.ts interactive source-string expectations are owned by the native frontend integration agent and are excluded from this patch; the first exploratory batch exposed their stale pre-existing interactive naming assertion.",
85
+ "This change retains existing per-request metadata deadlines and sequential variant traversal. It does not introduce an overall sweep deadline or cross-process scheduling.",
86
+ "Read-only local filesystem discovery found 20 wrapper manifests with valid JSON/present referenced blobs and 13 non-reversible base names, but did not execute the sweep or establish the specific seven runtime failures."
87
+ ]
88
+ }