omnius 1.0.847 → 1.0.849
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.
- package/dist/index.js +2 -2
- package/dist/library.js +2981 -1415
- package/docs/DISCOVERY.json +941 -63
- package/docs/DISCOVERY.md +25 -0
- package/docs/inference-fallback-priority.md +91 -0
- package/docs/keyless-provider-survey.md +48 -0
- package/docs/opencode-free-model-discovery.md +59 -0
- package/docs/work-orders/WO-fallback-quality-order-20261012.md +70 -0
- package/docs/work-orders/WO-fallback-reply-contracts-20261012.md +116 -0
- package/docs/work-orders/WO-keyless-fallback-coverage-20261012.md +125 -0
- package/docs/work-orders/WO-opencode-all-free-models-20261012.md +88 -0
- package/docs/work-orders/WO-telegram-progress-presentation-20261012.md +28 -0
- package/docs/work-orders/evidence/fallback-model-benchmarks-20261012.json +1823 -0
- package/docs/work-orders/evidence/fallback-quality-installed-20261012.json +626 -0
- package/docs/work-orders/evidence/fallback-reply-contracts-installed-20261012.json +577 -0
- package/docs/work-orders/evidence/installed-fallback-verification-20261012.json +311 -0
- package/docs/work-orders/evidence/keyless-compatibility-20261012.json +259 -0
- package/docs/work-orders/evidence/keyless-provider-survey-20261012.json +1327 -0
- package/docs/work-orders/evidence/kilo-production-compatibility-20261012.json +1197 -0
- package/docs/work-orders/evidence/native-conversation-prompt-audit-20261012.json +226 -0
- package/docs/work-orders/evidence/native-goal-contract-probe-20261012.json +794 -0
- package/docs/work-orders/evidence/opencode-all-free-audit-20261012.json +1489 -0
- package/docs/work-orders/evidence/opencode-all-free-installed-verification-20261012.json +437 -0
- package/docs/work-orders/evidence/opencode-production-compatibility-20261012.json +780 -0
- package/docs/work-orders/evidence/ovh-production-compatibility-20261012.json +127 -0
- package/docs/work-orders/evidence/ovh-structured-context-compatibility-20261012.json +174 -0
- package/docs/work-orders/evidence/terminal-review-contract-probe-20261012.json +335 -0
- package/docs/work-orders/evidence/terminal-review-error-probe-20261012.json +149 -0
- package/docs/work-orders/evidence/terminal-review-schema-repair-probe-20261012.json +920 -0
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
package/docs/DISCOVERY.md
CHANGED
|
@@ -455,6 +455,8 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
|
|
|
455
455
|
| `guide.guides-tui-workflows` | TUI Workflows | The TUI is the primary Omnius control surface for interactive use. |
|
|
456
456
|
| `guide.handoff-crl-encoder-decoder-fix-uppercase` | HANDOFF: CRL Encoder/Decoder Bidirectional Fix | Date: 2026-04-22 Status: Needs Implementation Failing Test: packages/memory/tests/crl-converter.test.ts - "should validate roundtrip accuracy" |
|
|
457
457
|
| `guide.index` | Omnius Documentation | Omnius is an autonomous local-first agent runtime with a TUI, REST daemon, P2P sponsor mesh, Telegram bridge, realtime conversation mode, media generation routes, and AIWG-compatible documentation skills. |
|
|
458
|
+
| `guide.inference-fallback-priority` | Inference fallback priority | Local inference remains first. After a qualifying local failure and any required manual approval, the remote cascade uses these stages: |
|
|
459
|
+
| `guide.keyless-provider-survey` | Keyless provider survey | Reviewed 2026-10-12. Discovery used public primary documentation and metadata. Live probes contained small synthetic prompts, never private conversation or repository context, and executed no tools. The complete sanitized survey is recorded with the keyless fallback work order. |
|
|
458
460
|
| `guide.longhaul-35b-workorders` | Work Orders — Long-Haul Implementation on a 35B-Class Model | Origin: Root-cause review of the myactuator ESP32/PlatformIO session (35B ornith-vision) plus a 2026-literature sweep of surprising remedies. See companion analysis in docs/context-management-medium-models-proposal.md and docs/duplicate-calls-root-cause-analysis.md. |
|
|
459
461
|
| `guide.memory-integration-analysis` | Memory Integration Analysis — Parallel Systems Gap Assessment | Date: 2026-04-23 Status: ✅ INTEGRATED — All P0 gaps closed Context: Review of literature on memory compression + integration testing of Omnius parallel memory systems |
|
|
460
462
|
| `guide.model-capability-awareness-and-multimodal-memory-root-fix` | Model Capability Awareness And Multimodal Identity Memory Root Fix | Status: planning and integration tracker |
|
|
@@ -463,6 +465,7 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
|
|
|
463
465
|
| `guide.omnius-self-edit-eval-2026-06-10` | Omnius Self-Edit Evaluation — Uncommitted Changes & Duplicate-Tool-Call Failure Mode | > Eval of the working-tree changes against docs/opencode-agentic-loop-comparison.md. > Subject: an Omnius instance editing its own orchestrator to implement the P0–P10 > learnings. Generated 2026-06-10. |
|
|
464
466
|
| `guide.ontology-long-horizon-work-graph-uppercase` | Ontology Long-Horizon Work Graph | Use an ontological graph to control large and long tasks. Make each work item, relation, claim, and evidence item addressable. Keep one canonical graph across planning, execution, verification, and completion. |
|
|
465
467
|
| `guide.opencode-agentic-loop-comparison` | OpenCode → Omnius: Agentic Loop & Sub-Agent Delegation Comparison | > Exhaustive comparison between https://github.com/anomalyco/opencode/tree/dev and > packages/orchestrator/src/agenticRunner.ts (omnius). > Generated 2026-06-10. |
|
|
468
|
+
| `guide.opencode-free-model-discovery` | OpenCode free-model discovery | The pure parser in packages/orchestrator/src/opencode-free-models.ts adapts OpenCode's catalog discovery. The shared keyless registry and production fallback backend consume it to register the anonymous route; the parser itself makes no inference requests. Onboarding uses the same discovery and request adapter. |
|
|
466
469
|
| `guide.operations-delay-analysis` | Unnecessary Causes of Delays Between Agent Actions | Analysis of packages/orchestrator/src/ (95 files) — identified delay sources ranked by impact. |
|
|
467
470
|
| `guide.operations-delay-fix-review` | Delay Fix Review — Commits Since Delay Analysis | Date: 2026-06-10 Reference: /docs/operations/delay-analysis.md (15 delay sources documented) |
|
|
468
471
|
| `guide.operations-runtime-hygiene` | Runtime Hygiene | Runtime hygiene keeps long-running Omnius instances from accumulating stale state, stuck child processes, or leaked project artifacts. |
|
|
@@ -520,6 +523,23 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
|
|
|
520
523
|
| `guide.voice-flow-architecture` | Voice TTS Flow — Architecture & Implementation Guide | This document describes the voice synthesis system in omnius: how it's built, how all the pieces connect, and how to add new voice features following the same patterns. |
|
|
521
524
|
| `guide.work-orders-active-inference-route-remote-probes-20261012` | Active Inference Route Remote Probes 20261012 | Bundled Omnius documentation artifact: docs/work-orders/active-inference-route-remote-probes-20261012.json. |
|
|
522
525
|
| `guide.work-orders-daemon-hud-ui-overhaul` | Daemon HUD UI Overhaul Work Order | Overhaul the daemon web interface using /home/roko/Desktop/hud-ui-style-kit(6)/hud-ui-style-kit as the source of truth. Preserve current daemon behavior while replacing the OpenWebUI-like rounded dashboard styling with the cold tactical HUD visual system. |
|
|
526
|
+
| `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. |
|
|
527
|
+
| `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. |
|
|
528
|
+
| `guide.work-orders-evidence-fallback-reply-contracts-installed-20261012` | Fallback Reply Contracts Installed 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/fallback-reply-contracts-installed-20261012.json. |
|
|
529
|
+
| `guide.work-orders-evidence-installed-fallback-verification-20261012` | Installed Fallback Verification 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/installed-fallback-verification-20261012.json. |
|
|
530
|
+
| `guide.work-orders-evidence-keyless-compatibility-20261012` | Keyless Compatibility 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/keyless-compatibility-20261012.json. |
|
|
531
|
+
| `guide.work-orders-evidence-keyless-provider-survey-20261012` | Keyless Provider Survey 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/keyless-provider-survey-20261012.json. |
|
|
532
|
+
| `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. |
|
|
533
|
+
| `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. |
|
|
534
|
+
| `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. |
|
|
535
|
+
| `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. |
|
|
536
|
+
| `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. |
|
|
537
|
+
| `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. |
|
|
538
|
+
| `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. |
|
|
539
|
+
| `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. |
|
|
540
|
+
| `guide.work-orders-evidence-terminal-review-contract-probe-20261012` | Terminal Review Contract Probe 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/terminal-review-contract-probe-20261012.json. |
|
|
541
|
+
| `guide.work-orders-evidence-terminal-review-error-probe-20261012` | Terminal Review Error Probe 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/terminal-review-error-probe-20261012.json. |
|
|
542
|
+
| `guide.work-orders-evidence-terminal-review-schema-repair-probe-20261012` | Terminal Review Schema Repair Probe 20261012 | Bundled Omnius documentation artifact: docs/work-orders/evidence/terminal-review-schema-repair-probe-20261012.json. |
|
|
523
543
|
| `guide.work-orders-hermes-architecture-deltas-01-public-scrutiny-provenance-control-index-uppercase` | Public Scrutiny Provenance Control Index | Bundled Omnius documentation artifact: docs/work-orders/hermes-architecture-deltas/01-public-scrutiny-provenance-control/INDEX.md. |
|
|
524
544
|
| `guide.work-orders-hermes-architecture-deltas-01-public-scrutiny-provenance-control-workorder-uppercase` | Workorder: Public Scrutiny Provenance Control | Add a public Telegram scrutiny control plane that can elevate completion provenance checks when public accuracy risk rises, without hard-coded scenario phrases or shortcut wording that teaches the model to satisfy the gate without evidence. |
|
|
525
545
|
| `guide.work-orders-hermes-architecture-deltas-02-context-engine-plugin-boundary-index-uppercase` | Context Engine Plugin Boundary Index | Bundled Omnius documentation artifact: docs/work-orders/hermes-architecture-deltas/02-context-engine-plugin-boundary/INDEX.md. |
|
|
@@ -643,11 +663,16 @@ Daemon equivalents are `GET /v1/discovery/bootstrap`, `GET /v1/discovery?q=<inte
|
|
|
643
663
|
| `guide.work-orders-telegram-reliability-consolidation-2026-09-28` | Telegram Reliability Consolidation — 2026-09-28 | Rule: check a box only after the named behavior is implemented and its listed verification passes. A parent box stays open until every child box is checked. |
|
|
644
664
|
| `guide.work-orders-wo-active-inference-route-and-telegram-review-20261012-uppercase` | Active inference route and Telegram completion review | Status: implementation complete and verified. Publication remains with the user. |
|
|
645
665
|
| `guide.work-orders-wo-am-gaps-uppercase` | Associative Memory Gap Work Orders | Generated: 2026-04-13 Source: Deep audit of multimodal associative memory systems Status: READY FOR IMPLEMENTATION |
|
|
666
|
+
| `guide.work-orders-wo-fallback-quality-order-20261012-uppercase` | Benchmark-informed fallback cascade | Status: implemented and verified. Publication and active runtime replacement remain with the user. Telegram progress presentation stays deferred. |
|
|
667
|
+
| `guide.work-orders-wo-fallback-reply-contracts-20261012-uppercase` | Fallback reply contracts and live Telegram regressions | Status: implemented and verified in source and the freshly installed package. Publishing and restarting the active bot remain user-owned. The subsequent OpenCode-first capability ordering is tracked in its work order; Telegram progress presentation remains explicitly deferred. |
|
|
646
668
|
| `guide.work-orders-wo-inference-fallback-20261012-uppercase` | Local inference outage fallback | Status: source implementation complete and verified. Installed-runtime activation is separate; the running daemon has not been upgraded or restarted. |
|
|
669
|
+
| `guide.work-orders-wo-keyless-fallback-coverage-20261012-uppercase` | Keyless automatic fallback coverage and compatibility | Status: implemented and verified. Publication and replacement of the running bot remain user-owned; the running bot has not been restarted by this work. |
|
|
647
670
|
| `guide.work-orders-wo-native-transport-fresh-install-20261012-uppercase` | Native transport failure in the fresh npm installation gate | Status: implemented and verified. Publication remains with the user. |
|
|
671
|
+
| `guide.work-orders-wo-opencode-all-free-models-20261012-uppercase` | All OpenCode free models in the fallback cascade | Status: implemented and verified. Publication and runtime replacement remain with the user. The subsequent live-reply fixes are tracked separately in fallback reply contracts. The original preferred-first/provider-fairness ordering recorded below has been superseded by benchmark-informed priority at the user's subsequent request. |
|
|
648
672
|
| `guide.work-orders-wo-primary-checkout-fallback-delivery-20261012-uppercase` | Primary checkout delivery and remote output capacity | Status: implementation complete and verified in the primary checkout. Publication remains with the user. |
|
|
649
673
|
| `guide.work-orders-wo-telegram-fallback-20261012-uppercase` | Telegram outage fallback and user-selected approval mode | Status: implementation complete; distributable verification recorded below. Publication and runtime installation are reserved for the user. |
|
|
650
674
|
| `guide.work-orders-wo-telegram-plain-answer-and-provider-catalog-20261012-uppercase` | Preserve native Telegram answers and use compatible free inference routes | Status: implemented and verified. The user owns publication and runtime replacement. |
|
|
675
|
+
| `guide.work-orders-wo-telegram-progress-presentation-20261012-uppercase` | Telegram progress presentation | Status: queued, explicitly deferred by the user until the inference endpoint patch is completed and verified. Do not implement this presentation work as part of the current inference repair. |
|
|
651
676
|
| `guide.work-orders-wo-telegram-unavailable-review-presentation-20261012-uppercase` | Telegram reply presentation when an auxiliary review is unavailable | Status: implemented and verified. Publication and runtime replacement remain with the user. |
|
|
652
677
|
| `guide.work-orders-world-class-memory-compiler-readme-uppercase` | World-Class Memory Compiler Program | Status: active implementation program Owner: Omnius orchestration and memory packages Last updated: 2026-07-13 |
|
|
653
678
|
| `guide.work-orders-world-class-memory-compiler-tracker-uppercase` | Memory Compiler Implementation Tracker | Last reconciled: 2026-07-13 Authority: This file is the granular program tracker. The work-order documents define the contract and acceptance criteria; neither test output nor a model claim may check an item without the named evidence. |
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# Inference fallback priority
|
|
2
|
+
|
|
3
|
+
Local inference remains first. After a qualifying local failure and any required
|
|
4
|
+
manual approval, the remote cascade uses these stages:
|
|
5
|
+
|
|
6
|
+
1. Every eligible OpenCode free model, in benchmark-informed order.
|
|
7
|
+
2. Every eligible Hermes model, as explicitly requested by the operator.
|
|
8
|
+
3. Remaining keyless routes merged by model quality across providers.
|
|
9
|
+
4. Explicitly configured keyed providers, in their configured order.
|
|
10
|
+
|
|
11
|
+
An explicit `keyless: false` policy retains configured-only behavior. The
|
|
12
|
+
OpenCode and Hermes stages are discovered lazily: successful OpenCode inference
|
|
13
|
+
does not fetch lower provider catalogs. All stages retain the existing deadline,
|
|
14
|
+
capability, context, cost, cooldown, ownership and cancellation checks. Models
|
|
15
|
+
cooling after HTTP 429 do not hold up ready alternatives. Ready retries retain
|
|
16
|
+
the original cascade priority rather than simply favoring an earlier expiry.
|
|
17
|
+
|
|
18
|
+
## Benchmark basis
|
|
19
|
+
|
|
20
|
+
The host-owned table in
|
|
21
|
+
`packages/orchestrator/src/inference-fallback-priority.ts` uses non-estimated
|
|
22
|
+
Artificial Analysis Intelligence Index **v4.3.2**, observed 2026-10-12. The same
|
|
23
|
+
revision includes agentic workflow, terminal, coding, knowledge and long-context
|
|
24
|
+
evaluations. Scores from older index revisions are not mixed into this order.
|
|
25
|
+
|
|
26
|
+
| OpenCode model | Published index | Evaluated setting |
|
|
27
|
+
| --- | ---: | --- |
|
|
28
|
+
| [Muse Spark 1.3](https://artificialanalysis.ai/models/muse-spark-1-3) | 48.09 | Max; Xhigh separately scores 45.07 |
|
|
29
|
+
| [Step 5 Preview](https://artificialanalysis.ai/models/step-5) | 43.73 | Reasoning |
|
|
30
|
+
| [Ling 3.1 Flash](https://artificialanalysis.ai/models/ling-3-1-flash) | 41.09 | Reasoning |
|
|
31
|
+
| [MiMo V2.6 Flash](https://artificialanalysis.ai/models/mimo-v2-6-flash) | 37.88 | Reasoning |
|
|
32
|
+
| [Nemotron 3.5 Lightning](https://artificialanalysis.ai/models/nemotron-3-5-lightning) | 12.86 | Reasoning |
|
|
33
|
+
|
|
34
|
+
These are published measurements of the named models, not benchmarks of the
|
|
35
|
+
anonymous endpoints. Gateway effort, precision and checkpoint equivalence have
|
|
36
|
+
not been established. The runtime uses each named model's highest published
|
|
37
|
+
non-estimated variant as a preference for model potential; this does not change
|
|
38
|
+
the caller's thinking policy or silently request maximum reasoning effort.
|
|
39
|
+
|
|
40
|
+
Official coding results provide separate cross-checks: Muse 1.3 Max reports
|
|
41
|
+
75.4% DeepSWE v1.1 and 88.8% Terminal-Bench 2.1; Step 5 High reports 67.7% and
|
|
42
|
+
85.0%; MiMo Flash-RL reports 67.9% and 87.6%. Different harnesses and settings
|
|
43
|
+
prevent treating those figures as an exact cross-model league table.
|
|
44
|
+
[Meta](https://dev.meta.ai/models/muse-spark),
|
|
45
|
+
[StepFun](https://www.stepfun.com/step-5-preview),
|
|
46
|
+
[Xiaomi](https://huggingface.co/XiaomiMiMo/MiMo-V2.6-Flash-RL).
|
|
47
|
+
|
|
48
|
+
## Unranked models and dynamic discovery
|
|
49
|
+
|
|
50
|
+
Space Bunny and Big Pickle are undisclosed or rolling aliases. LongCat 2.5 has
|
|
51
|
+
no exact comparable published result in the bounded search. They remain
|
|
52
|
+
eligible after models with comparable measured results; this placement expresses
|
|
53
|
+
evidence confidence, not proof that they are weaker. Small original experiments
|
|
54
|
+
on Big Pickle and Space Bunny use different subsets and are recorded separately,
|
|
55
|
+
without converting them into an invented AA score. New free models remain
|
|
56
|
+
automatically discovered within the existing catalog bounds.
|
|
57
|
+
|
|
58
|
+
For unmeasured models, declared tool/schema support and usable context/output
|
|
59
|
+
headroom provide deterministic operational tie-breaks, followed by the host
|
|
60
|
+
preferred identity and stable model ID. These fields do not measure intelligence.
|
|
61
|
+
An opaque selector remains unranked; known measured concrete models precede it.
|
|
62
|
+
For a wholly unmeasured compatible pool, its existing automatic selector remains
|
|
63
|
+
available before concrete alternatives, without borrowing their token limits.
|
|
64
|
+
|
|
65
|
+
The [research receipt](work-orders/evidence/fallback-model-benchmarks-20261012.json)
|
|
66
|
+
maps 44 advertised candidate identities across OpenCode, Hermes, Kilo, LLM7, OVH
|
|
67
|
+
and ch.at, with exact-version/mode alternatives and exclusions. Only measured
|
|
68
|
+
matching identities enter the runtime table. Estimated-only scores, older
|
|
69
|
+
LongCat/Mistral versions, and base-model scores for the quantized Hermes
|
|
70
|
+
derivative do not become fabricated endpoint measurements.
|
|
71
|
+
|
|
72
|
+
Published quality never establishes free access. In particular, current LLM7
|
|
73
|
+
concrete rows advertise positive prices and its homepage describes free-token
|
|
74
|
+
access; these facts do not confer anonymous tool/schema authority. The existing
|
|
75
|
+
pricing and authentication filters remain in force.
|
|
76
|
+
|
|
77
|
+
## Compatibility and verification
|
|
78
|
+
|
|
79
|
+
Before dispatch, exact native tools, structured output and full request token
|
|
80
|
+
budgets still determine eligibility. Ling's explicit schema-support rejection
|
|
81
|
+
excludes it from schema-bearing turns. Muse retains its Responses transport.
|
|
82
|
+
Learned native grammar restrictions are isolated by endpoint/model/API, and the
|
|
83
|
+
complete original host schema remains authoritative. Successful output ends
|
|
84
|
+
the cascade; no replay occurs after visible ordinary output or tool fragments.
|
|
85
|
+
|
|
86
|
+
Source regressions cover full 512-model OpenCode traversal before Hermes,
|
|
87
|
+
unknown-model discovery, published-score ordering, cross-provider quality merge,
|
|
88
|
+
configured-only/tail behavior, cooldown recovery, ready retry priority and
|
|
89
|
+
unchanged tool/schema/Stop contracts. The packaged backend verifier repeats the
|
|
90
|
+
ordering and schema repair through synthetic HTTP with no real inference or
|
|
91
|
+
Telegram messages.
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Keyless provider survey
|
|
2
|
+
|
|
3
|
+
Reviewed 2026-10-12. Discovery used public primary documentation and metadata. Live probes contained small synthetic prompts, never private conversation or repository context, and executed no tools. The complete sanitized survey is recorded with the keyless fallback work order.
|
|
4
|
+
|
|
5
|
+
## Kilo Gateway
|
|
6
|
+
|
|
7
|
+
[Kilo authentication documentation](https://kilo.ai/docs/gateway/authentication) explicitly permits anonymous free-model requests, limited to 200 per hour per IP. Its [API reference](https://kilo.ai/docs/gateway/api-reference) specifies the OpenAI-compatible base `https://api.kilo.ai/api/gateway`, `POST /chat/completions`, streaming, native tools and structured output. No authorization or client-identity adapter was required by the probes.
|
|
8
|
+
|
|
9
|
+
The unauthenticated [model catalog](https://api.kilo.ai/api/gateway/models) returned 391 rows, 486,989 bytes, SHA-256 `5fa77a837d02c12c0a3b68f7fd7bf18c09c4f988c30a25de0a012311fe6330fd`. Sixteen rows advertised explicit zero input and output pricing. [Kilo's free-model methodology](https://kilo.ai/landing/free-models) uses both prices, rather than requiring a free suffix. Current metadata must determine eligibility; paid rows never become keyless routes merely because the catalog itself is public.
|
|
10
|
+
|
|
11
|
+
| Model ID | Tools | Strict schema advertised | Context | Max output |
|
|
12
|
+
| --- | --- | --- | ---: | ---: |
|
|
13
|
+
| `kilo-auto/free` | Yes | No | 256000 | 32768 |
|
|
14
|
+
| `inclusionai/ling-3.1-flash` | Yes | No | 262144 | 235929 |
|
|
15
|
+
| `dots-studio/dots-3-note-preview:free` | Yes | Yes | 512000 | 460800 |
|
|
16
|
+
| `liquid/lfm-2.5-2.6b:free` | Yes | Yes | 65536 | 8192 |
|
|
17
|
+
| `nvidia/nemotron-3.5-lightning:free` | Yes | No | 1000000 | 65536 |
|
|
18
|
+
| `thinkingmachines/inkling-small:free` | Yes | No | 1048576 | 262144 |
|
|
19
|
+
| `poolside/laguna-s-2.1:free` | Yes | No | 262144 | 32768 |
|
|
20
|
+
| `poolside/laguna-xs-2.1:free` | Yes | No | 262144 | 32768 |
|
|
21
|
+
| `cohere/north-mini-code:free` | Yes | No | 256000 | 64000 |
|
|
22
|
+
| `nvidia/nemotron-3.5-content-safety:free` | No | No | 128000 | 8192 |
|
|
23
|
+
| `nvidia/nemotron-3-ultra-550b-a55b:free` | Yes | No | 1000000 | 65536 |
|
|
24
|
+
| `nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free` | Yes | No | 256000 | 65536 |
|
|
25
|
+
| `google/lyria-3-pro-preview` | No | No | 1048576 | 65536 |
|
|
26
|
+
| `google/lyria-3-clip-preview` | No | No | 1048576 | 65536 |
|
|
27
|
+
| `nvidia/nemotron-3-super-120b-a12b:free` | Yes | Yes | 262144 | 235929 |
|
|
28
|
+
| `openrouter/free` | Yes | Yes | 200000 | Unknown |
|
|
29
|
+
|
|
30
|
+
Tools and strict schema in this table reflect `supported_parameters`, including `tools` and `structured_outputs`; absence is not a live capability proof. Context and output limits come from the catalog and its `top_provider`. Content-safety classifiers and Lyria audio-generation models are unsuitable for general conversational fallback despite zero pricing. Auto/router models can change their underlying provider.
|
|
31
|
+
|
|
32
|
+
Three anonymous streamed probes completed with normal terminal receipts and `usage.cost: 0`, `is_byok: false`:
|
|
33
|
+
|
|
34
|
+
- Liquid returned exactly `OK` in 1.358 seconds.
|
|
35
|
+
- Nemotron 3 Super returned the requested custom `omnius_probe` call with correct arguments in 1.140 seconds. Nothing executed.
|
|
36
|
+
- Nemotron 3 Super returned correct JSON under a strict schema in 3.641 seconds.
|
|
37
|
+
|
|
38
|
+
Nemotron 3 Super is the preferred model established by these native-tool and schema probes. Liquid is a verified fast text alternative. These synthetic checks do not establish performance on complex tasks or every catalog model. Kilo documents [provider-specific data handling and NVIDIA trial terms](https://kilo.ai/docs/gateway/models-and-providers).
|
|
39
|
+
|
|
40
|
+
## Other reviewed families
|
|
41
|
+
|
|
42
|
+
The [public inference registry](https://robit-man.github.io/inference/) contains twelve families. LLM7 and OVH have model-specific native chat contracts; ch.at is a catalog-less text route. [OpenCode discovery and accepted compatibility shapes](opencode-free-model-discovery.md) are documented separately.
|
|
43
|
+
|
|
44
|
+
OVH's [official capabilities](https://docs.ovhcloud.com/en/guides/public-cloud/ai-machine-learning/ai-endpoints-capabilities) distinguish anonymous access at two requests per minute per IP/model from authenticated access. Advertised authenticated catalog prices do not establish a charge for a request that uses the documented pinned anonymous tier. This is a provider-specific distinction, not a general waiver of zero-price checks for other catalogs.
|
|
45
|
+
|
|
46
|
+
AI Horde accepted an anonymous asynchronous text job, which remained queued and was canceled; a second submission received HTTP 403. Its text job API needs prompt serialization, worker-context validation, bounded polling and cancellation. No completed Horde generation was verified. Public Hugging Face Gradio Spaces need per-application schemas and session handling; the official Qwen3 demo exposed its named API, but the synthetic call failed session initialization. Public dedicated Hugging Face endpoints need owner-published URLs. inference.sh embeds are publisher-funded hosted agents, not generic model endpoints. Jina Reader extracts documents; AHM7's documented image-chat endpoint requires an image. These families cannot be assumed to preserve native chat/tools/schema contracts.
|
|
47
|
+
|
|
48
|
+
The current Pollinations API, Airforce, HackClub, FreeInference and Puter's CLI-compatible flow require account credentials. llmfaucet and the KeylessAI relay had unresolved advertised API hosts during this survey. Prexzy had no verified active conversational endpoint. None supplied an additional verified anonymous route.
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# OpenCode free-model discovery
|
|
2
|
+
|
|
3
|
+
The pure parser in `packages/orchestrator/src/opencode-free-models.ts` adapts OpenCode's catalog discovery. The shared keyless registry and production fallback backend consume it to register the anonymous route; the parser itself makes no inference requests. Onboarding uses the same discovery and request adapter.
|
|
4
|
+
|
|
5
|
+
Source revision: [`anomalyco/opencode@15b24ae12ddb8b7ae3e923b286b4032761bee510`](https://github.com/anomalyco/opencode/tree/15b24ae12ddb8b7ae3e923b286b4032761bee510), reviewed 2026-10-12.
|
|
6
|
+
|
|
7
|
+
- [`packages/core/src/models-dev.ts`](https://github.com/anomalyco/opencode/blob/15b24ae12ddb8b7ae3e923b286b4032761bee510/packages/core/src/models-dev.ts) reads `https://models.opencode.ai/api.json`, normalizes provider/model transport, capabilities, costs and token limits, and uses a bundled snapshot with a five-minute refresh.
|
|
8
|
+
- [`packages/core/src/plugin/models-dev.ts`](https://github.com/anomalyco/opencode/blob/15b24ae12ddb8b7ae3e923b286b4032761bee510/packages/core/src/plugin/models-dev.ts) excludes deprecated models and models without text support.
|
|
9
|
+
- [`packages/core/src/plugin/provider/opencode.ts`](https://github.com/anomalyco/opencode/blob/15b24ae12ddb8b7ae3e923b286b4032761bee510/packages/core/src/plugin/provider/opencode.ts) enables anonymous access using the public sentinel `public` and disables models with positive input costs when no real key is configured.
|
|
10
|
+
|
|
11
|
+
Omnius requires explicit zero input and output costs, including any advertised context tiers and cache prices. It pins the provider and endpoint, accepts the OpenAI-compatible chat transport and the per-model `@ai-sdk/openai` Responses transport, excludes foreign endpoints and unsupported protocols, and preserves documented tool, schema and token-limit metadata. Missing schema support remains unknown. The returned `admission: "catalog_only"` records that metadata alone establishes no route availability. Responses models use the dedicated adapter at the same pinned `/inference/v1/responses` endpoint.
|
|
12
|
+
|
|
13
|
+
The catalog lists paid models too. The inference `/v1/models` response supplies IDs without cost or capability metadata and cannot establish free eligibility. Free suffixes are insufficient: Big Pickle has zero costs without that suffix, and old free rows can remain deprecated or unavailable.
|
|
14
|
+
|
|
15
|
+
An optional intersection with `https://opencode.ai/inference/v1/models` removes free metadata rows that the gateway no longer lists. This unauthenticated endpoint returned 83 IDs on 2026-10-12; `exo-free`, `ling-3.0-flash-fin-free` and `nemotron-3-ultra-free` were absent. These observations are not hardcoded exclusions. A valid empty list excludes all models; missing, malformed or oversized discovery preserves the canonical zero-cost metadata instead of treating a discovery outage as an authoritative empty provider. ID-only rows can never add a model or supply price, tools, schema or context metadata.
|
|
16
|
+
|
|
17
|
+
The [complete free-model follow-up](work-orders/WO-opencode-all-free-models-20261012.md)
|
|
18
|
+
removes the previous 16-model cascade cutoff: all eligible OpenCode models within
|
|
19
|
+
the shared 512-row catalog bound are queued. The subsequent
|
|
20
|
+
[benchmark-informed priority](inference-fallback-priority.md) exhausts eligible
|
|
21
|
+
OpenCode models before Hermes and other providers. The current audit found seven live free chat models plus
|
|
22
|
+
`muse-spark-1.3-contributor-free`, whose `@ai-sdk/openai` declaration selects
|
|
23
|
+
Responses. The ordinary chat adapter must never substitute for that transport.
|
|
24
|
+
|
|
25
|
+
On 2026-10-12, synthetic tool-less Nemotron requests returned HTTP 403 `FreeTierError`, including probes using the public sentinel, current upstream headers and legacy `/zen/v1/chat/completions` endpoint. Within the user's explicitly authorized partner compatibility scope, a subsequent source-derived native-shaped request succeeded at `https://opencode.ai/inference/v1/chat/completions`: HTTP 200 SSE, visible answer `OK`, normal `stop` and `[DONE]`, in 1.044 seconds. It used `opencode/latest/2.0.27/cli`, client `cli`, transparent `x-omnius-client: omnius/1.0.847`, fresh source-format session/message IDs, the current system prefix, genuine read/shell definitions, automatic tool selection and streaming. No tool executed. This demonstrates native-agent availability for that request; it does not identify which shape differences the server requires or establish all models and modes.
|
|
26
|
+
|
|
27
|
+
Two further synthetic streamed probes also returned HTTP 200 with normal terminal receipts. The same compatibility definitions with `tool_choice: "none"` and a strict JSON schema produced exactly `{"value":"ok"}` without tool calls in 4.120 seconds. A forced custom `omnius_probe` tool alongside those definitions returned that custom call with the expected arguments in 0.946 seconds. These establish those request shapes for Nemotron, without executing any tool or sending private context. They do not imply every catalog model supports them.
|
|
28
|
+
|
|
29
|
+
Current [App metadata](https://github.com/anomalyco/opencode/blob/15b24ae12ddb8b7ae3e923b286b4032761bee510/packages/core/src/app.ts) and [model request construction](https://github.com/anomalyco/opencode/blob/15b24ae12ddb8b7ae3e923b286b4032761bee510/packages/core/src/session/model-request.ts) supply the header format. The public [inference proxy](https://github.com/anomalyco/opencode/blob/15b24ae12ddb8b7ae3e923b286b4032761bee510/packages/console/app/src/lib/inference-proxy.ts) delegates free-tier admission to the inference service; its server-side guard was not found in this public source tree. No TLS fingerprint or hidden-signature requirement has been established. See the provider's [access discussion](https://github.com/anomalyco/opencode/issues/49580).
|
|
30
|
+
|
|
31
|
+
The module exports fixed header, system-prefix and core-tool metadata from that pinned source, plus an OpenAI-style catalog normalizer. Its request-header factory generates fresh source-format identifiers and uses a stable SHA-1 of the public namespace `omnius` as its project marker. It can retain a caller-owned session ID for affinity while issuing a fresh message ID per request. It reads no user credentials, private project paths or existing conversation/session data and supplies no Authorization header or execution implementation. A truthful `omnius/unknown` attribution is allowed when no application version is available.
|
|
32
|
+
|
|
33
|
+
Callers must keep host authorization, original tool schemas, history and tool-choice bindings, invert any existing tool-name aliases, and reject calls to compatibility definitions that have no host execution authority. The parser's catalog-only receipt remains separate from live route admission. Identifier generation follows upstream [Identifier](https://github.com/anomalyco/opencode/blob/15b24ae12ddb8b7ae3e923b286b4032761bee510/packages/schema/src/identifier.ts) and [SessionID](https://github.com/anomalyco/opencode/blob/15b24ae12ddb8b7ae3e923b286b4032761bee510/packages/schema/src/session-id.ts); core metadata follows the [read](https://github.com/anomalyco/opencode/blob/15b24ae12ddb8b7ae3e923b286b4032761bee510/packages/core/src/tool/plugin/read.ts) and [shell](https://github.com/anomalyco/opencode/blob/15b24ae12ddb8b7ae3e923b286b4032761bee510/packages/core/src/tool/plugin/shell.ts) definitions.
|
|
34
|
+
|
|
35
|
+
The adapted discovery is covered by OpenCode's [MIT license](https://github.com/anomalyco/opencode/blob/15b24ae12ddb8b7ae3e923b286b4032761bee510/LICENSE):
|
|
36
|
+
|
|
37
|
+
```text
|
|
38
|
+
MIT License
|
|
39
|
+
|
|
40
|
+
Copyright (c) 2025 opencode
|
|
41
|
+
|
|
42
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
43
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
44
|
+
in the Software without restriction, including without limitation the rights
|
|
45
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
46
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
47
|
+
furnished to do so, subject to the following conditions:
|
|
48
|
+
|
|
49
|
+
The above copyright notice and this permission notice shall be included in all
|
|
50
|
+
copies or substantial portions of the Software.
|
|
51
|
+
|
|
52
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
53
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
54
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
55
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
56
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
57
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
58
|
+
SOFTWARE.
|
|
59
|
+
```
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# Benchmark-informed fallback cascade
|
|
2
|
+
|
|
3
|
+
Status: implemented and verified. Publication and active runtime replacement
|
|
4
|
+
remain with the user. Telegram progress presentation stays deferred.
|
|
5
|
+
|
|
6
|
+
## User request
|
|
7
|
+
|
|
8
|
+
Try all free OpenCode models from highest capability to lowest before Hermes,
|
|
9
|
+
then descend through remaining keyless endpoints. Research published benchmarks
|
|
10
|
+
for the actual listed model versions to determine the stack. Do not derail the
|
|
11
|
+
ongoing inference compatibility repair.
|
|
12
|
+
|
|
13
|
+
## Findings and work
|
|
14
|
+
|
|
15
|
+
The prior helper tried configured providers first, preferred Nemotron over
|
|
16
|
+
stronger available models, and interleaved providers before exhausting OpenCode.
|
|
17
|
+
OpenCode's catalog provides no quality score; its upstream default follows
|
|
18
|
+
release date, which is not an intelligence ranking.
|
|
19
|
+
|
|
20
|
+
The [benchmark evidence](evidence/fallback-model-benchmarks-20261012.json) uses
|
|
21
|
+
current Artificial Analysis v4.3.2 plus original vendor coding evaluations.
|
|
22
|
+
Current comparable OpenCode order is Muse 1.3, Step 5, Ling 3.1, MiMo 2.6,
|
|
23
|
+
Nemotron 3.5. Three additional anonymous/unmeasured models remain eligible;
|
|
24
|
+
they are explicitly unranked rather than assigned fabricated scores. Free
|
|
25
|
+
gateway reasoning settings and checkpoint equivalence remain unverified.
|
|
26
|
+
|
|
27
|
+
Implement OpenCode-all → Hermes-all → remaining keyless merged by model quality
|
|
28
|
+
→ configured keyed tail. Preserve explicit configured-only policy, model-specific
|
|
29
|
+
and provider-wide quota scopes, schema adapters, tool/context/cost admission,
|
|
30
|
+
deadline bounds, manual permission and no replay after output. Do not delay
|
|
31
|
+
ready alternatives for a throttled higher route. Ready retries use original
|
|
32
|
+
cascade priority. Research scores must never confer free-access authority.
|
|
33
|
+
|
|
34
|
+
The [priority reference](../inference-fallback-priority.md) records the source
|
|
35
|
+
URLs, exact settings, unknown-model behavior and operational limitations.
|
|
36
|
+
|
|
37
|
+
## Acceptance
|
|
38
|
+
|
|
39
|
+
- A successful 512th OpenCode model produces zero lower-provider dispatches;
|
|
40
|
+
full OpenCode exhaustion reaches Hermes only after all eligible OpenCode rows.
|
|
41
|
+
- A stronger measured nonpreferred model precedes a weaker seed. Catalog or
|
|
42
|
+
registry row order does not change selection. Newly discovered unknown models
|
|
43
|
+
remain included; incompatible or nonfree rows remain excluded.
|
|
44
|
+
- Remaining providers merge by model quality, so a weak alternative does not
|
|
45
|
+
preempt a stronger model at another endpoint. Opaque selectors claim no fixed
|
|
46
|
+
benchmark identity.
|
|
47
|
+
- Cooldowns immediately allow ready alternatives; recovery returns to higher
|
|
48
|
+
routes. Stop, stale ownership, total deadlines and bounded retries still hold.
|
|
49
|
+
- Verify source suites, complete workspace build, freshly installed package and
|
|
50
|
+
actual bundled backend ordering/schema checks. Commit and push scoped work.
|
|
51
|
+
|
|
52
|
+
## Verification receipt
|
|
53
|
+
|
|
54
|
+
542 orchestrator tests passed with one existing skip; 122 CLI tests passed.
|
|
55
|
+
The complete workspace build, package bundle, README/tarball audit and fresh
|
|
56
|
+
compiler-free global npm installation passed. SQLite, CLI and library loaded.
|
|
57
|
+
|
|
58
|
+
The [freshly installed backend receipt](evidence/fallback-quality-installed-20261012.json)
|
|
59
|
+
records 64/64 mocked transport cases passing. Six reach the 512th OpenCode alias
|
|
60
|
+
with zero other-provider generations; two prove benchmark preference over the
|
|
61
|
+
Nemotron seed and larger unmeasured context limits; two exhaust ten eligible
|
|
62
|
+
keyless aliases before the configured keyed tail. Native tool, Responses,
|
|
63
|
+
structured validation and the original-schema `uniqueItems` regressions remain
|
|
64
|
+
green. These checks made no real inference requests or Telegram sends.
|
|
65
|
+
|
|
66
|
+
Prepared artifact: `publish/omnius-1.0.848.tgz`, SHA-256
|
|
67
|
+
`2f0b02299333dea363eaa93c8e1f7e10a4371aeb3388fba35e6a3a39359c8611`.
|
|
68
|
+
Its bundled backend SHA-256 is
|
|
69
|
+
`651aa2819b85678d8aac1fa84f9e9c6fd7a088d17645d9cd212b00500bcf468c`.
|
|
70
|
+
No publication or active runtime restart was performed.
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
# Fallback reply contracts and live Telegram regressions
|
|
2
|
+
|
|
3
|
+
Status: implemented and verified in source and the freshly installed package.
|
|
4
|
+
Publishing and restarting the active bot remain user-owned. The subsequent
|
|
5
|
+
OpenCode-first capability ordering is tracked in
|
|
6
|
+
[its work order](WO-fallback-quality-order-20261012.md); Telegram progress
|
|
7
|
+
presentation remains explicitly deferred.
|
|
8
|
+
|
|
9
|
+
## User steering
|
|
10
|
+
|
|
11
|
+
The running cascade selects OpenCode Nemotron, Kilo Nemotron and Hermes but
|
|
12
|
+
reports `invalid_response`; OVH reports `empty_response`, and Big Pickle rejects
|
|
13
|
+
the request with HTTP 400. Handle the actual protocol and expected reply contract
|
|
14
|
+
dynamically for every selected fallback. Do not treat a successful isolated
|
|
15
|
+
provider probe as proof that production routing uses the same adapter.
|
|
16
|
+
|
|
17
|
+
The user also reported that replying to ordinary "good dog" chatter created and
|
|
18
|
+
uploaded `reply.txt`. Review current live logs and fix evidenced problems before
|
|
19
|
+
publication; preserve the ongoing full free-model coverage work.
|
|
20
|
+
|
|
21
|
+
## Evidence
|
|
22
|
+
|
|
23
|
+
The scoped public run `telegram-c34a3d7d53728329-1791861851684-1` began at
|
|
24
|
+
2026-10-13T03:24:12Z. It produced a plain reply, which the host rejected after a
|
|
25
|
+
semantic review demanded delivery evidence. The current criterion was
|
|
26
|
+
`effect:visible_response`; the current user message requested no file. That
|
|
27
|
+
rejection led to a failed file send, file creation, another blocked result check,
|
|
28
|
+
then a successful upload and an echoed final reply at 03:25:41Z. Eventual upload
|
|
29
|
+
success does not justify the invented delivery obligation.
|
|
30
|
+
|
|
31
|
+
The [sanitized prompt audit](evidence/native-conversation-prompt-audit-20261012.json)
|
|
32
|
+
also found generic zero-execution guidance that told the model to take a tool
|
|
33
|
+
action for a conversational goal. Tool receipt authority must remain intact;
|
|
34
|
+
ordinary conversation must not be required to manufacture execution evidence.
|
|
35
|
+
|
|
36
|
+
Current debug artifacts redact actual outbound requests and do not retain
|
|
37
|
+
auxiliary provider response bodies. The generic `invalid_response` category
|
|
38
|
+
combined transport JSON, native tool and structured-schema failures; that label
|
|
39
|
+
alone did not identify the cause. Production-helper probes with invented context
|
|
40
|
+
isolated it: the simple native-goal schema passed, but the full terminal-review
|
|
41
|
+
schema produced an HTTP 200 error envelope. The upstream Nvidia grammar rejected
|
|
42
|
+
`uniqueItems`, wrapped as `server_error`. See the [exact safe diagnostic
|
|
43
|
+
receipt](evidence/terminal-review-error-probe-20261012.json). No private message,
|
|
44
|
+
credential or raw provider response body is retained in the public receipts.
|
|
45
|
+
|
|
46
|
+
## Work and acceptance
|
|
47
|
+
|
|
48
|
+
1. Trace selected-model metadata through the actual production fallback helper,
|
|
49
|
+
backend factory, request builder and response decoder. Select Chat Completions
|
|
50
|
+
or Responses per model, preserve tool/schema/context contracts, and condition
|
|
51
|
+
unsupported wire hints without weakening host validation.
|
|
52
|
+
2. Exercise the actual native-goal review policy and schema through these
|
|
53
|
+
production adapters with invented conversation/evidence. Derive provider
|
|
54
|
+
limits from their public catalogs. Use no local inference, real actions,
|
|
55
|
+
Telegram messages or private human context. Honor quota cooldowns.
|
|
56
|
+
3. Add safe, precise rejection diagnostics identifying the expected reply kind
|
|
57
|
+
and validation stage; never print raw bodies, secret values or user context.
|
|
58
|
+
Validate structured auxiliary replies before exposing their text as a
|
|
59
|
+
completed reply. Preserve Stop, ownership and no replay after visible output.
|
|
60
|
+
4. Repair evidenced conversational tool pressure and test a direct chat reply
|
|
61
|
+
without files, uploads or fabricated tool receipts. Real mutation/delivery
|
|
62
|
+
requests must retain actual effect and provider-acknowledgement requirements.
|
|
63
|
+
5. Run focused and production Telegram regressions, rebuild the package, verify
|
|
64
|
+
the freshly installed artifact and record scoped commit/push receipts.
|
|
65
|
+
|
|
66
|
+
## Additional live checks
|
|
67
|
+
|
|
68
|
+
Review later runs for duplicate contradictory completion events and tool
|
|
69
|
+
description truncation. Apply only repairs supported by current evidence;
|
|
70
|
+
record unresolved observations explicitly instead of broadening the task into
|
|
71
|
+
unrelated runtime changes.
|
|
72
|
+
|
|
73
|
+
## Implementation and verification
|
|
74
|
+
|
|
75
|
+
- Normalize in-band provider errors before decoding Chat Completions or
|
|
76
|
+
Responses, including HTTP 200 JSON and SSE envelopes. Retain only whitelisted
|
|
77
|
+
failure categories and status, never upstream text or nested causes.
|
|
78
|
+
- Learn the proven native `uniqueItems` restriction per full endpoint path,
|
|
79
|
+
model and API shape for five minutes. Retry that route once with a separately
|
|
80
|
+
lowered wire schema. Preserve the complete original host schema, completion
|
|
81
|
+
callback, tool parameters and uniqueness checks. Include original-schema
|
|
82
|
+
guidance in the admitted request budget. Do not strip arbitrary constraints.
|
|
83
|
+
- Validate expected JSON and native tool calls before releasing structured
|
|
84
|
+
replies or executable tool fragments. Accept one complete JSON fence without
|
|
85
|
+
changing values; reject prose extraction, malformed arguments, unoffered
|
|
86
|
+
calls, truncation and duplicate citations. Preserve cancellation, ownership,
|
|
87
|
+
deadlines, manual fallback permission and the no-replay boundary after output.
|
|
88
|
+
- Distinguish JSON syntax, schema mismatch, unsupported schema, tool choice,
|
|
89
|
+
tool arguments and transport envelope failures in safe route diagnostics.
|
|
90
|
+
- Remove generic pressure to manufacture tool execution for conversation.
|
|
91
|
+
Preserve file-write/edit/send purpose before long scoped paths consume the
|
|
92
|
+
model-facing description budget. Text replies need no fabricated reply file;
|
|
93
|
+
requested material effects still require actual tool and delivery receipts.
|
|
94
|
+
|
|
95
|
+
Source verification: 520 orchestrator tests passed with one existing skip;
|
|
96
|
+
122 CLI tests passed. The complete workspace build and artifact audit passed.
|
|
97
|
+
The compiler-free fresh npm installation loaded SQLite and the CLI/library;
|
|
98
|
+
60 deterministic checks exercised the actual installed backend, including
|
|
99
|
+
12 full terminal-review grammar-repair/host-rejection cases.
|
|
100
|
+
|
|
101
|
+
The [post-repair live receipt](evidence/terminal-review-schema-repair-probe-20261012.json)
|
|
102
|
+
uses the actual production fallback helper and backend with synthetic context,
|
|
103
|
+
the unchanged full terminal-review schema and public provider limits. OpenCode
|
|
104
|
+
and Kilo both rejected the initial native grammar, then returned original-schema
|
|
105
|
+
valid JSON after the same-route repair. Kilo chose `deliver`; OpenCode chose
|
|
106
|
+
`stop`. OpenCode's generated justification was not retained, so semantic
|
|
107
|
+
correctness is not claimed. Hermes reached the adapted request and returned
|
|
108
|
+
HTTP 429; the probe stopped at its two-send quota. No local inference, Telegram
|
|
109
|
+
messages or tool actions occurred. Remote quota or outage can still exhaust a
|
|
110
|
+
bounded cascade; this repair does not promise perpetual service availability.
|
|
111
|
+
|
|
112
|
+
The later 03:28 run's successful handler result and failed synthetic terminal
|
|
113
|
+
projection are distinct events. The latter retained pending visible-response
|
|
114
|
+
acknowledgement. This observation does not establish a duplicate-handler bug or
|
|
115
|
+
justify weakening the delivery gate; presentation work remains queued in
|
|
116
|
+
[its work order](WO-telegram-progress-presentation-20261012.md).
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
# Keyless automatic fallback coverage and compatibility
|
|
2
|
+
|
|
3
|
+
Status: implemented and verified. Publication and replacement of the running bot
|
|
4
|
+
remain user-owned; the running bot has not been restarted by this work.
|
|
5
|
+
|
|
6
|
+
## Requested outcome
|
|
7
|
+
|
|
8
|
+
Make the automatic inference fallback chain function in the production Telegram
|
|
9
|
+
and TUI backend. Add only anonymous, keyless providers. Check the whole public
|
|
10
|
+
catalog at https://robit-man.github.io/inference/, find additional free providers,
|
|
11
|
+
and reuse OpenCode's free-model discovery and routing, including Nemotron where
|
|
12
|
+
it is actually available without credentials.
|
|
13
|
+
|
|
14
|
+
The user requested "never fail." No implementation can guarantee an external
|
|
15
|
+
provider's availability. This work must maximize compatible route coverage,
|
|
16
|
+
preserve successful replies, and test bounded, honest failure when every remote
|
|
17
|
+
route is unavailable; it must not manufacture successful inference or hide a
|
|
18
|
+
failed request. This limitation does not reduce the coverage requirement.
|
|
19
|
+
|
|
20
|
+
## Ordered work and acceptance evidence
|
|
21
|
+
|
|
22
|
+
1. Inspect the current registry, cascade, production integration and live failure
|
|
23
|
+
evidence. Preserve unrelated worktree changes. Record all catalog families,
|
|
24
|
+
candidate URLs, protocols, anonymous authentication requirements and exclusion
|
|
25
|
+
reasons instead of counting endpoint discovery as working inference.
|
|
26
|
+
2. Trace OpenCode's actual free-provider loader, catalog and wire transport from
|
|
27
|
+
primary source. Reuse its zero-cost/keyless selection behavior, not a stale
|
|
28
|
+
handpicked model list. Exclude paid entries, signup/API-key routes, unsupported
|
|
29
|
+
protocols and services that reject anonymous Omnius clients.
|
|
30
|
+
3. Probe candidate routes with synthetic public data only. Check text, streaming,
|
|
31
|
+
native tools, tool-result continuation, structured output and advertised input
|
|
32
|
+
capacity. No action emitted by a probe is executed. Record observed support
|
|
33
|
+
and failures separately from catalog hints. Do not send local model requests.
|
|
34
|
+
4. Implement the usable adapters and compatibility conditions, shared discovery
|
|
35
|
+
where practical, fair cascade coverage, provider/model cooldowns, cancellation
|
|
36
|
+
and local recovery. Keep whole prompt and required tool/schema contracts;
|
|
37
|
+
preserve manual approval, credential isolation and no replay after visible
|
|
38
|
+
streaming output begins. New automatic routes must require no actual keys.
|
|
39
|
+
5. Test deterministic transport failures, quota/auth failures, malformed/empty
|
|
40
|
+
replies, incompatible models, catalog loss, provider retirement, tool/schema
|
|
41
|
+
constraints, all-routes failure, Stop and successful local recovery. Exercise
|
|
42
|
+
production backend plus Telegram/TUI integration rather than only a separate
|
|
43
|
+
raw HTTP harness.
|
|
44
|
+
6. Rebuild workspaces, verify packaged runtime, run synthetic live checks on
|
|
45
|
+
admitted providers and save sanitized receipts. Commit and push scoped changes
|
|
46
|
+
after tests pass. Report remaining coverage, failures and activation state
|
|
47
|
+
precisely; do not claim runtime adoption before it occurs.
|
|
48
|
+
|
|
49
|
+
## Current evidence
|
|
50
|
+
|
|
51
|
+
Baseline: commit 57e93104. The saved Telegram run at 2026-10-13T01:03:40Z
|
|
52
|
+
exhausted Hermes, OVH and LLM7 and consolidated as a timeout without any tools.
|
|
53
|
+
The previous cascade allowed six model routes and three models per provider,
|
|
54
|
+
with a 20-second request / 60-second remote budget.
|
|
55
|
+
|
|
56
|
+
The production cascade now starts with OpenCode and Kilo's anonymous routes,
|
|
57
|
+
followed by the existing Hermes, LLM7, OVH and ch.at routes. OpenCode discovery
|
|
58
|
+
requires explicit zero costs and optionally intersects the gateway's live model
|
|
59
|
+
IDs to remove retired entries. Kilo requires explicit zero prompt and completion
|
|
60
|
+
prices and excludes non-chat models, including classifiers and music generators.
|
|
61
|
+
OVH's documented anonymous tier is pinned independently of its authenticated
|
|
62
|
+
catalog prices. Public registry entries cannot grant these provider-specific
|
|
63
|
+
exceptions or request identities. No actual keys or new credentialed profiles
|
|
64
|
+
are required by the added routes.
|
|
65
|
+
|
|
66
|
+
Runtime and onboarding share OpenCode's source-derived request adapter. Original
|
|
67
|
+
host tool schemas remain authoritative; compatibility-only calls are rejected.
|
|
68
|
+
Full prompt and required tool/schema contracts are preserved. The parser accepts
|
|
69
|
+
framed SSE and complete JSON responses to streaming requests without replaying a
|
|
70
|
+
generation. Local availability failures admit fallback, cancellation and manual
|
|
71
|
+
decisions remain binding, and a later request retries local inference. Provider
|
|
72
|
+
quota cooldowns apply across models and respect bounded Retry-After values.
|
|
73
|
+
Selection allows 16 compatible models per provider, with fair dispatch across
|
|
74
|
+
admitted providers. Healthy Hermes continuation took 32 seconds; remote defaults
|
|
75
|
+
are therefore 45 seconds per request and 120 seconds overall.
|
|
76
|
+
|
|
77
|
+
## Verification and limits
|
|
78
|
+
|
|
79
|
+
Live synthetic checks used the actual production backend and executed no tools:
|
|
80
|
+
|
|
81
|
+
- [Hermes](evidence/keyless-compatibility-20261012.json) passed text, streaming,
|
|
82
|
+
native tools, tool-result continuation, strict schema and a large native-tool
|
|
83
|
+
packet. ch.at passed text, streaming and the large packet but failed tool and
|
|
84
|
+
schema contracts; it is restricted to text requests without required schemas.
|
|
85
|
+
- [OpenCode Nemotron 3.5 Lightning](evidence/opencode-production-compatibility-20261012.json)
|
|
86
|
+
passed all six contracts. Big Pickle passed five but rejected strict schema.
|
|
87
|
+
Retired catalog rows found by these probes are now removed through live-ID
|
|
88
|
+
discovery. Ling quota failures remain recorded, not counted as success.
|
|
89
|
+
- [Kilo Nemotron 3 Super, North Mini Code and Dots 3 Note](evidence/kilo-production-compatibility-20261012.json)
|
|
90
|
+
each passed all six contracts. Lyria's authentication failure exposed a
|
|
91
|
+
non-chat metadata ambiguity; music generators are now excluded and covered by
|
|
92
|
+
regression tests. Other catalog models remain unverified.
|
|
93
|
+
- [OVH](evidence/ovh-production-compatibility-20261012.json) passed text,
|
|
94
|
+
streaming and native tools before a quota response. A later
|
|
95
|
+
[structured/context check](evidence/ovh-structured-context-compatibility-20261012.json)
|
|
96
|
+
passed both contracts. LLM7 returned a one-hour quota cooldown, which was
|
|
97
|
+
honored rather than repeatedly probed.
|
|
98
|
+
|
|
99
|
+
All 460 unique source regression tests passed, with one existing skip, across
|
|
100
|
+
the orchestrator and CLI suites. An isolated snapshot of the staged code also
|
|
101
|
+
passed a full recursive build and all 460 tests (365 orchestrator, 95 CLI),
|
|
102
|
+
without depending on unrelated unstaged changes. This includes production private/public
|
|
103
|
+
Telegram greeting admission and semantic review without a false incomplete
|
|
104
|
+
suffix. The compatibility harness passed 26 tests. The
|
|
105
|
+
[freshly installed bundle receipt](evidence/installed-fallback-verification-20261012.json)
|
|
106
|
+
records 36 passing mocked transport cases, including automatic/manual fallback,
|
|
107
|
+
local recovery, quota handling, more than six failed routes, OpenCode/Kilo,
|
|
108
|
+
native tool/schema contracts and cancellation. These installed tests sent no
|
|
109
|
+
real inference requests or Telegram messages.
|
|
110
|
+
|
|
111
|
+
A full clean recursive workspace build, publish bundling, tarball audit
|
|
112
|
+
(540 files, zero warnings) and fresh compiler-free npm installation passed.
|
|
113
|
+
The required SQLite prebuild loaded. The prepared artifact is
|
|
114
|
+
`publish/omnius-1.0.847.tgz`, SHA-256
|
|
115
|
+
`5266aa7ca1845bb389f4e7470eb461837516ed99607d09673f11b9ad4fe89309`.
|
|
116
|
+
Its installed `dist/index.js` hash matches the packaged receipt. No package was
|
|
117
|
+
published and no running bot was replaced.
|
|
118
|
+
|
|
119
|
+
The durable [provider survey](evidence/keyless-provider-survey-20261012.json)
|
|
120
|
+
covers all 12 public-page families and seven additional candidates. Keyed,
|
|
121
|
+
non-chat and unverified adapters are classified explicitly; discovery alone
|
|
122
|
+
does not enroll a route. Every catalog model has not been live-tested, and
|
|
123
|
+
external providers can still exhaust quotas or fail simultaneously. See
|
|
124
|
+
[provider findings](../keyless-provider-survey.md) and
|
|
125
|
+
[OpenCode source provenance](../opencode-free-model-discovery.md).
|