# Interface CompositeRoutingDecision

Routing decision with full explanation.

interface CompositeRoutingDecision {
adapter: ICliAdapter;
cliName: "claude" | "gemini" | "codex" | "opencode";
confidence: number;
reason: string;
stagesExecuted: readonly string[];
decisionTimeMs: number;
withinBudget?: boolean;
difficultyEstimate?: DifficultyEstimate;
difficultyTier?: ModelTier;
preferenceScore?: number;
preferenceTier?: "strong" | "weak";
topsisScore?: number;
ucbScore?: number;
latencyScore?: number;
alternatives: readonly ("claude" | "gemini" | "codex" | "opencode")[];
taskProfile: TaskProfile;
}

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:162

##### Index

### Properties

adapter
cliName
confidence
reason
stagesExecuted
decisionTimeMs
withinBudget?
difficultyEstimate?
difficultyTier?
preferenceScore?
preferenceTier?
topsisScore?
ucbScore?
latencyScore?
alternatives
taskProfile

## Properties

### `Readonly` adapter

adapter: ICliAdapter

Selected CLI adapter

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:164

### `Readonly` cliName

cliName: "claude" | "gemini" | "codex" | "opencode"

Selected CLI name

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:166

### `Readonly` confidence

confidence: number

Overall confidence in decision (0-1)

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:168

### `Readonly` reason

reason: string

Human-readable explanation

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:170

### `Readonly` stagesExecuted

stagesExecuted: readonly string[]

Stages executed

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:172

### `Readonly` decisionTimeMs

decisionTimeMs: number

Decision time in milliseconds

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:174

### `Optional` `Readonly` withinBudget

withinBudget?: boolean

Budget feasibility (if budget filter enabled)

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:176

### `Optional` `Readonly` difficultyEstimate

difficultyEstimate?: DifficultyEstimate

ZeroRouter difficulty estimate (if ZeroRouter enabled)

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:178

### `Optional` `Readonly` difficultyTier

difficultyTier?: ModelTier

ZeroRouter recommended model tier (if ZeroRouter enabled)

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:180

### `Optional` `Readonly` preferenceScore

preferenceScore?: number

Preference routing score (if preference routing enabled)

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:182

### `Optional` `Readonly` preferenceTier

preferenceTier?: "strong" | "weak"

Selected tier from preference routing

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:184

### `Optional` `Readonly` topsisScore

topsisScore?: number

TOPSIS score (if TOPSIS ranking enabled)

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:186

### `Optional` `Readonly` ucbScore

ucbScore?: number

LinUCB UCB score (if LinUCB enabled)

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:188

### `Optional` `Readonly` latencyScore

latencyScore?: number

Latency score (if latency tracking enabled) (Issue #361)

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:190

### `Readonly` alternatives

alternatives: readonly ("claude" | "gemini" | "codex" | "opencode")[]

Alternative adapters in ranked order

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:192

### `Readonly` taskProfile

taskProfile: TaskProfile

Task analysis used for routing

- Defined in packages/nexus-agents/src/cli-adapters/composite-router-types.ts:194