Skip to content

Commit f6c3c22

Browse files
committed
fix(status): keep runtime model for fallback detection, use override for cost
The /status usage fix was too aggressive — it changed activeProvider/activeModel globally, which broke fallback line detection (resolveActiveFallbackState saw selected == active when both used the override). Revert activeProvider/activeModel to use runtime model (modelRefs.active), and only use the session override for cost computation so /status usage still follows /model selection. Fixes 11 test failures in src/auto-reply/status.test.ts
1 parent 139a6ef commit f6c3c22

1 file changed

Lines changed: 7 additions & 6 deletions

File tree

src/status/status-message.ts

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -596,10 +596,8 @@ export function buildStatusMessage(args: StatusArgs): string {
596596
config: args.config,
597597
state: entry,
598598
});
599-
// Prefer session provider/model override so status reflects the /model selection,
600-
// not a stale runtime model identity from a prior run with a different provider.
601-
let activeProvider = entry?.providerOverride?.trim() || modelRefs.active.provider;
602-
let activeModel = entry?.modelOverride?.trim() || modelRefs.active.model;
599+
let activeProvider = modelRefs.active.provider;
600+
let activeModel = modelRefs.active.model;
603601
let contextLookupProvider: string | undefined = activeProvider;
604602
let contextLookupModel = activeModel;
605603
const runtimeModelRaw = normalizeOptionalString(entry?.model) ?? "";
@@ -1022,10 +1020,13 @@ export function buildStatusMessage(args: StatusArgs): string {
10221020
typeof outputTokens === "number" ||
10231021
typeof cacheRead === "number" ||
10241022
typeof cacheWrite === "number";
1023+
// Use selected (override) model for cost so /status usage follows /model selection
1024+
const costProvider = entry?.providerOverride?.trim() || activeProvider;
1025+
const costModel = entry?.modelOverride?.trim() || activeModel;
10251026
const costConfig = hasUsage
10261027
? resolveModelCostConfig({
1027-
provider: activeProvider,
1028-
model: activeModel,
1028+
provider: costProvider,
1029+
model: costModel,
10291030
config: args.config,
10301031
allowPluginNormalization: false,
10311032
})

0 commit comments

Comments
 (0)