Skip to content
TAONIC

03 / 14VERIFIEDDescribes what runs today

Intelligence routing

Routing is three decisions per question: what kind of work it is, which steps that work needs, and which route runs each step. Each decision is made on the server, from rules in the code, before anything leaves TAONIC.

1. Capability

The wording decides the capability, unless the reader picked one. It is a deterministic rule, not a model call: “draw” or “generate an image” is Image, “is it true that” is Check a claim, “price” or “forecast” is Market, “this week” or “latest” is Search, and anything else is Answer. The homepage mesh lights the same rule as you type.

2. Plan

Each capability has a fixed plan of steps. A required step that cannot run stops the request before any provider is called; an optional step that cannot run is skipped and recorded as skipped.

Each capability's plan
CapabilitySteps, in orderRoutes that can serve it
AnswerReasoningChutes · SN64, engy · SN53, OpenRouter to Chutes · SN64
SearchResearch → Reasoning (optional)Desearch · SN22
MarketMarket data (optional) → Forecasts (optional) → Reasoning (optional)Synth · SN50, Numinous · SN6
Check a claimResearch (optional) → ReasoningDesearch · SN22, Chutes · SN64, engy · SN53, OpenRouter to Chutes · SN64
ImageImageChutes · SN64
SpeechSpeechChutes · SN64
Find a matchSemantic matchChutes · SN64

3. Route selection and fallback

For each step, the usable routes are ranked, then tried in order until one answers.

rank(route) = ( preferred ? 0 : 1 , failing ? 1 : 0 , priority )

usable
the route’s credential is set on the server, or it needs none
preferred
the request named this route (the optional provider field)
failing
this server saw its recent requests fail
priority
the registry’s order: cost, latency and provenance, never marketing
  • A route that fails, times out or returns something that does not validate is recorded with its reason, and the next usable route for the same step is tried.
  • Only routes marked fallback-eligible are tried second, and never past the whole-request budget of 100 s.
  • A route with no credential is never called. It is reported as waiting for its credential, by name, never by value.
  • OpenRouter to Chutes must report Chutes as the serving provider. An answer from anyone else is skipped with its reason, never returned as subnet 64’s work.

The spending guard

Before the first paid provider call, the gateway books that call’s worst-case cost against a daily ceiling in the database. If the booking would pass the ceiling, or the database cannot be reached, the request is refused as route unavailable and nothing is sent. After the answer, the booking is replaced with the real cost.

allow ⇔ booked_today + worst_case(route) ≤ ceiling

worst_case
(4,000 chars ÷ 3 × input rate + 1,400 tokens × output rate) × 2 attempts
booked_today
the larger of recorded and estimated spend for that provider, this UTC day
ceiling
set by the operator; not published, so the guard cannot be probed

Route states

A route’s state comes from two sources only: whether its credential is set on the server now, and whether a real request has completed through it (in the durable records, on the answering server, or as a dated production record).

Route states
StateMeaning
CONNECTEDUsable now, and a real request has completed through it.
UNVERIFIEDConfigured, and no real request has completed through it yet.
FAILEDUsable, and its recent requests are failing.
CONFIGURATION REQUIREDIts credential is not set, so nothing is sent to it.
PAUSEDRefused by the spending guard until 00:00 UTC, or paused by the operator.
UNAVAILABLEThe adapter exists but the route cannot be used now, for a reason other than its credential.

An adapter is not a connection

Code that follows a provider’s documentation is an adapter. It becomes a connection only after a real request completes through it. The live state of every route is on Routes.

Every state on this page matches Status. Where they ever differ, Status is right and this page is a defect.