Skip to content

routePlanSchema

const routePlanSchema: object

The JSON Schemas those models were generated from, for runtime use.

readonly $id: "https://schemas.inderun.dev/1.0/route-plan.schema.json"

readonly $schema: "https://json-schema.org/draft/2020-12/schema"

readonly additionalProperties: true

readonly description: "Deterministic shared-core Mode-1 route planning result."

readonly properties: object

readonly candidates: object

readonly description: "Eligible candidates in deterministic order."

readonly items: object

properties.candidates.items.additionalProperties

Section titled “properties.candidates.items.additionalProperties”

readonly additionalProperties: true

readonly properties: object

properties.candidates.items.properties.order

Section titled “properties.candidates.items.properties.order”

readonly order: object

properties.candidates.items.properties.order.minimum

Section titled “properties.candidates.items.properties.order.minimum”

readonly minimum: 0

properties.candidates.items.properties.order.type

Section titled “properties.candidates.items.properties.order.type”

readonly type: "integer"

properties.candidates.items.properties.providerId

Section titled “properties.candidates.items.properties.providerId”

readonly providerId: object

properties.candidates.items.properties.providerId.minLength

Section titled “properties.candidates.items.properties.providerId.minLength”

readonly minLength: 1

properties.candidates.items.properties.providerId.type

Section titled “properties.candidates.items.properties.providerId.type”

readonly type: "string"

properties.candidates.items.properties.voice

Section titled “properties.candidates.items.properties.voice”

readonly voice: object

properties.candidates.items.properties.voice.$ref

Section titled “properties.candidates.items.properties.voice.$ref”

readonly $ref: "provider-dynamic-capabilities.schema.json#/$defs/voice"

properties.candidates.items.properties.voice.description

Section titled “properties.candidates.items.properties.voice.description”

readonly description: "The voice this candidate must use if it is attempted, chosen by the planner from the provider's dynamic voice inventory. It is the best voice that satisfies the request's locale, required voice traits and privacy — under local-required privacy always one that keeps data on the device — ranked by preferred id, then preferred gender, then exact locale region, then on-device before network. The adapter must use the voice with this id, or one with exactly these traits when the voice has no id. Absent when the request names no locale or voice, or the provider does not list its voices; the adapter then chooses itself under the same rules."

readonly required: readonly ["providerId", "order"]

readonly type: "object"

readonly type: "array"

readonly explanation: object

properties.explanation.additionalProperties

Section titled “properties.explanation.additionalProperties”

readonly additionalProperties: true

readonly description: "Human-readable selection or failure explanation suitable for telemetry/debugging."

readonly properties: object

properties.explanation.properties.selectedProviderId

Section titled “properties.explanation.properties.selectedProviderId”

readonly selectedProviderId: object

properties.explanation.properties.selectedProviderId.minLength

Section titled “properties.explanation.properties.selectedProviderId.minLength”

readonly minLength: 1

properties.explanation.properties.selectedProviderId.type

Section titled “properties.explanation.properties.selectedProviderId.type”

readonly type: "string"

readonly summary: object

properties.explanation.properties.summary.minLength

Section titled “properties.explanation.properties.summary.minLength”

readonly minLength: 1

properties.explanation.properties.summary.type

Section titled “properties.explanation.properties.summary.type”

readonly type: "string"

readonly required: readonly ["summary"]

readonly type: "object"

readonly failureCode: object

readonly description: "Normalized routing failure class when no provider is selected."

readonly enum: readonly ["capability_mismatch", "offline", "unavailable"]

readonly fallbackProviderIds: object

properties.fallbackProviderIds.description

Section titled “properties.fallbackProviderIds.description”

readonly description: "Fallback provider IDs ordered after the primary selection."

readonly items: object

properties.fallbackProviderIds.items.minLength

Section titled “properties.fallbackProviderIds.items.minLength”

readonly minLength: 1

readonly type: "string"

readonly type: "array"

readonly rejectedProviders: object

readonly description: "Providers filtered out during planning together with machine-readable reasons."

readonly items: object

properties.rejectedProviders.items.additionalProperties

Section titled “properties.rejectedProviders.items.additionalProperties”

readonly additionalProperties: true

properties.rejectedProviders.items.properties

Section titled “properties.rejectedProviders.items.properties”

readonly properties: object

properties.rejectedProviders.items.properties.providerId

Section titled “properties.rejectedProviders.items.properties.providerId”

readonly providerId: object

properties.rejectedProviders.items.properties.providerId.minLength

Section titled “properties.rejectedProviders.items.properties.providerId.minLength”

readonly minLength: 1

properties.rejectedProviders.items.properties.providerId.type

Section titled “properties.rejectedProviders.items.properties.providerId.type”

readonly type: "string"

properties.rejectedProviders.items.properties.reasons

Section titled “properties.rejectedProviders.items.properties.reasons”

readonly reasons: object

properties.rejectedProviders.items.properties.reasons.items

Section titled “properties.rejectedProviders.items.properties.reasons.items”

readonly items: object

properties.rejectedProviders.items.properties.reasons.items.additionalProperties

Section titled “properties.rejectedProviders.items.properties.reasons.items.additionalProperties”

readonly additionalProperties: true

properties.rejectedProviders.items.properties.reasons.items.properties

Section titled “properties.rejectedProviders.items.properties.reasons.items.properties”

readonly properties: object

properties.rejectedProviders.items.properties.reasons.items.properties.code

Section titled “properties.rejectedProviders.items.properties.reasons.items.properties.code”

readonly code: object

properties.rejectedProviders.items.properties.reasons.items.properties.code.description

Section titled “properties.rejectedProviders.items.properties.reasons.items.properties.code.description”

readonly description: "Normalized rejection reason. 'streaming_not_supported' means the descriptor does not statically declare Mode-2 streaming; 'streaming_unavailable' means it declares streaming but the dynamic capability snapshot reports it cannot stream in the current host environment. 'not_in_model_profile' means the request named a model profile that does not list this provider. 'input_not_supported', 'output_delivery_not_supported', 'output_format_not_supported', 'locale_not_supported' and 'voice_not_available' mean the provider's task capability lacks an input kind, output delivery, media type, locale or voice the request requires. 'prepare_not_supported' means the task capability declares no prepare(). 'not_ready' means the provider, task or required voice exists but is not prepared yet, so prepare() can make it available."

properties.rejectedProviders.items.properties.reasons.items.properties.code.enum

Section titled “properties.rejectedProviders.items.properties.reasons.items.properties.code.enum”

readonly enum: readonly […, …, …, …, …, …, …, …, …, …, …, …, …, …, …, …]

properties.rejectedProviders.items.properties.reasons.items.properties.message

Section titled “properties.rejectedProviders.items.properties.reasons.items.properties.message”

readonly message: object

properties.rejectedProviders.items.properties.reasons.items.properties.message.minLength

Section titled “properties.rejectedProviders.items.properties.reasons.items.properties.message.minLength”

readonly minLength: 1

properties.rejectedProviders.items.properties.reasons.items.properties.message.type

Section titled “properties.rejectedProviders.items.properties.reasons.items.properties.message.type”

readonly type: "string"

properties.rejectedProviders.items.properties.reasons.items.required

Section titled “properties.rejectedProviders.items.properties.reasons.items.required”

readonly required: readonly ["code", "message"]

properties.rejectedProviders.items.properties.reasons.items.type

Section titled “properties.rejectedProviders.items.properties.reasons.items.type”

readonly type: "object"

properties.rejectedProviders.items.properties.reasons.type

Section titled “properties.rejectedProviders.items.properties.reasons.type”

readonly type: "array"

properties.rejectedProviders.items.required

Section titled “properties.rejectedProviders.items.required”

readonly required: readonly ["providerId", "reasons"]

readonly type: "object"

readonly type: "array"

readonly selectedProviderId: object

readonly description: "Chosen primary provider ID, if any."

readonly minLength: 1

readonly type: "string"

readonly required: readonly ["fallbackProviderIds", "candidates", "rejectedProviders", "explanation"]

readonly title: "RoutePlan"

readonly type: "object"