feat(routing): task-aware reweighting for interactive tasks #12

Merged
epistemophiliac merged 3 commits from develop into main 2026-08-26 04:20:20 +00:00

Summary

Shifts intelligence weight toward speed/reliability for chat/qa/writing so a slow Frontier model (20-108s TTFB) no longer wins interactive routes. Code and reasoning keep intelligence leading. Operator-toggleable via routing_task_aware_enabled (default ON).

Motivation

Production diagnostics showed xkiro/stealth/ox-alpha-free winning 10/25 recent routes at 20-77s latency while fast mid-tier models sat unused. Root cause: the aexora-default preset (i=0.45, s=0.15, r=0.40) is intelligence-led and task-agnostic.

Changes

  • task-routing.ts: per-task weight shifts
  • router.ts: taskAdjustedWeights wired into orderChain
  • fallback.ts: taskAwareEnabled field on GET/PUT /routing
  • diagnostics.ts: strategy/weights/taskAwareEnabled exposed in overview
  • task-routing.test.ts: unit tests

Verification

  • 34/34 tests pass
  • chat: speed 0.15 → ~0.26, intelligence 0.45 → ~0.34
  • code/reasoning: no shift
## Summary Shifts intelligence weight toward speed/reliability for chat/qa/writing so a slow Frontier model (20-108s TTFB) no longer wins interactive routes. Code and reasoning keep intelligence leading. Operator-toggleable via `routing_task_aware_enabled` (default ON). ## Motivation Production diagnostics showed `xkiro/stealth/ox-alpha-free` winning 10/25 recent routes at 20-77s latency while fast mid-tier models sat unused. Root cause: the aexora-default preset (i=0.45, s=0.15, r=0.40) is intelligence-led and task-agnostic. ## Changes - task-routing.ts: per-task weight shifts - router.ts: taskAdjustedWeights wired into orderChain - fallback.ts: taskAwareEnabled field on GET/PUT /routing - diagnostics.ts: strategy/weights/taskAwareEnabled exposed in overview - task-routing.test.ts: unit tests ## Verification - 34/34 tests pass - chat: speed 0.15 → ~0.26, intelligence 0.45 → ~0.34 - code/reasoning: no shift
Shifts intelligence weight toward speed/reliability for chat/qa/writing so a
slow Frontier model (20-108s TTFB) no longer wins interactive routes. Code and
reasoning keep intelligence leading. Operator-toggleable via
routing_task_aware_enabled (default ON), exposed in diagnostics and /routing.

Production diagnostics showed xkiro/stealth/ox-alpha-free winning 10/25 recent
routes at 20-77s latency while fast mid-tier models sat unused. Root cause:
the aexora-default preset (i=0.45, s=0.15, r=0.40) is intelligence-led and
task-agnostic, so the bandit always prefers the highest-intelligence model
regardless of task type or observed TTFB.

Fix: after the base preset + peak-hours adjustment, apply a per-task convex
rebalance that moves a fraction of intelligence weight to speed (and slightly
to reliability). The re-normalized weight vector stays in [0,1]. For chat,
speed rises from 0.15 to ~0.26 and intelligence drops from 0.45 to ~0.34 —
enough for a fast 1-3s model to outscore a 30s frontier one.
merge task-aware-routing into develop
Some checks failed
CI / Test & build (Node 20) (push) Has been cancelled
CI / Test & build (Node 22) (push) Has been cancelled
Docker / Build (linux/amd64) (push) Has been cancelled
Docker / Build (linux/arm64) (push) Has been cancelled
Docker / Merge manifest and push (push) Has been cancelled
CI / Test & build (Node 20) (pull_request) Has been cancelled
CI / Test & build (Node 22) (pull_request) Has been cancelled
Docker / Build (linux/amd64) (pull_request) Has been cancelled
Docker / Build (linux/arm64) (pull_request) Has been cancelled
Docker / Merge manifest and push (pull_request) Has been cancelled
Enterprise CI / Enterprise tests (Node 20) (pull_request) Has been cancelled
Enterprise CI / Enterprise tests (Node 22) (pull_request) Has been cancelled
Enterprise CI / Build enterprise surfaces (pull_request) Has been cancelled
Enterprise CI / Validate Coolify compose (pull_request) Has been cancelled
Enterprise CI / Merge guard (upstream alignment) (pull_request) Has been cancelled
a3dfb0492d
chore(release): bump version to v1.3
Some checks failed
CI / Test & build (Node 20) (push) Has been cancelled
CI / Test & build (Node 22) (push) Has been cancelled
Docker / Build (linux/amd64) (push) Has been cancelled
Docker / Build (linux/arm64) (push) Has been cancelled
Docker / Merge manifest and push (push) Has been cancelled
CI / Test & build (Node 20) (pull_request) Has been cancelled
CI / Test & build (Node 22) (pull_request) Has been cancelled
Docker / Build (linux/amd64) (pull_request) Has been cancelled
Docker / Build (linux/arm64) (pull_request) Has been cancelled
Enterprise CI / Enterprise tests (Node 20) (pull_request) Has been cancelled
Enterprise CI / Enterprise tests (Node 22) (pull_request) Has been cancelled
Enterprise CI / Validate Coolify compose (pull_request) Has been cancelled
Enterprise CI / Merge guard (upstream alignment) (pull_request) Has been cancelled
Docker / Merge manifest and push (pull_request) Has been cancelled
Enterprise CI / Build enterprise surfaces (pull_request) Has been cancelled
4865de84fa
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
epistemophiliac/LLMAPI!12
No description provided.