Fosniedocsv0.7
Changelog

v0.7.0

Automatic prompt routing across local and cloud models, selectable judges, effort, budgets and safe failure recovery, plus Fosnie deployment names.

Released 10 October 2026. GitHub release.

Automatic prompt routing

Connect several local/cloud providers and choose Default, a specific model, or Auto. Rules, Classifier and Hybrid policies select a compatible model/effort from the task, declared capabilities, permissions and allowance. A local judge is optional; cloud-only installations can use a cloud judge.

Routing is an open-source Core feature, available in Enterprise too. It includes profile/policy administration, per-user policies, saved chat selection, actual model metadata, previews, Shadow/Active rollout, independent caller opt-ins and an OpenAI-compatible Auto alias.

Judge, executor, helpers and an eligible retry share usage limits. Mandatory locality applies to inference across the run; web/source permissions remain separate. Enterprise restrictions, source ACLs and auditing retain their existing authority.

Read the detailed Automatic model routing guide for setup, decision order, API/wire examples, effort precedence, supported caller scope and operational boundaries.

Provider failure recovery

Typed failures distinguish provider connection/timeouts, rate limits, confirmed quota/payment errors, rejected credentials and invalid requests. Shared ML infrastructure failures are separate. Cooldowns reduce repeated dispatch to failed configurations.

When enabled under Active Auto, eligible plain/stateless text can attempt one compatible alternate before output. It retains the original question, actor, turn and spent allowance. Output/tool/action/durable work is not automatically replayed. Partial answers/errors survive reload; preparing a retry does not send it.

Administrators can enable Web search: use snippets for Quick searches. Quick then uses bounded public search-result excerpts with source URLs/dates and partial-coverage notices, without fetching pages or requiring OCR/reranking inference. Standard/Deep retain their existing behaviour. Empty or insufficient evidence is not a licence to invent a current fact.

Fixed stages and document work

Routed jobs preserve the original actor, pinned selection, source permissions and accounting. Fixed embedding/OCR/rerank/speech assignments remain explicit. Ingestion, index publication, cancellation and replacement recovery retain their fences; model routing does not silently replace a corpus's embedding model or change an index during a turn.

Deployment names

The templates, settings and service units use Fosnie names. Existing aliases keep many upgrades compatible, while host-level names need attention:

PreviousCurrentUpgrade behaviour
PAI__*, PAI_CONFIG_FILEFOSNIE__*, FOSNIE_CONFIG_FILEOld names remain fallback aliases; new values win.
X-PAI-ML-KeyX-Fosnie-ML-KeyML accepts both. Use matched components for new routing features.
PAI_DB_URL, PAI_QDRANT_URL, PAI_STORAGE_DIRS, PAI_BACKUP_*FOSNIE_*Backup/restore scripts accept both spellings.
pai-backup-… bundlesfosnie-backup-… bundlesOld bundles still restore and participate in retention.
pai-ml.service, pai-backup.service/.timerfosnie-ml.service, fosnie-backup.service/.timerInstall the new units and disable the old units.
com.pai.ml, com.pai.backendcom.fosnie.ml, com.fosnie.backendUnload old launchd jobs before installing replacements.
/etc/pai, /var/lib/pai, /opt/pai, /run/pai, /var/backups/paiCorresponding fosnie pathsMove paths or keep explicit overrides in your units/configuration.
Service account paifosniePreserve ownership/UID when renaming, or retain explicit User/Group overrides.
Prometheus job pai-mlfosnie-mlUpdate scrape labels together with the shipped alerts.

The PostgreSQL role and database remain pai in the templates. They are not automatically renamed.

Rollout and limits

Routing does not activate itself during an upgrade. Existing selection, profiles and history remain; enable the intended caller gate and Active policy after review. Policy Off retains mandatory constraints and a checked default. Backups and isolated restore are the recovery path, rather than removing new columns or assuming any older binary can read the new schema.

This release ships the routing mechanisms and verified execution contracts. It does not claim calibrated best-model selection, factual accuracy for every model, universal multimodal/device-tool support, unlimited automatic recovery or measured financial savings. Independent quality evidence and optional learned ranking remain separately controlled.

Was this page helpful?

On this page