AltimateAI / AltimateAI/altimate-code

fix: surface auto-picked warehouse in finops_* tool output

Open
#840 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
811
Forks
134
Avg merge
3d 2h
Merged PRs (30d)
50

Description

**Summary:** finops_* tools auto-pick a warehouse when `warehouse=` is omitted (v0.7.3, #828) but the result output gives no indication that an auto-pick happened. On a host with `prod_wh` + `dev_wh` configured, calling `finops_analyze_credits` without `warehouse=` silently queries prod-load-order — the user has no signal which one they just hit.

**What's missing:**
- The resolver returns `autoPicked: true` in its tagged-union result (warehouse-resolver.ts:118).
- That signal does NOT flow through the 6 native handler results into the 6 tool wrapper outputs.

**Recommended fix:**
1. Add `matched_warehouse?: string` + `auto_picked?: boolean` to result types in `altimate/native/types.ts` for all 6 finops result types.
2. Plumb the resolver's `autoPicked` flag through each handler at the assignment site.
3. In each tool wrapper formatter, prefix output with `Auto-selected warehouse: (pass warehouse= to override)` when `auto_picked === true`.

**Acceptance:**
- Both `metadata.matched_warehouse` and `metadata.auto_picked` surface in tool result metadata.
- Output prefix appears only when auto-picked, not when explicitly requested.
- All 6 tools: `finops_analyze_credits`, `finops_expensive_queries`, `finops_query_history`, `finops_role_*`, `finops_unused_resources`, `finops_warehouse_advice`.

**Origin:** Deferred from v0.7.3 release review (End User persona, P1).

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.