fix(controller): pre-populate mma_tier_usage on reset (restore _flush_to_project contract)
This commit is contained in:
+12
-2
@@ -3405,8 +3405,18 @@ class AppController:
|
||||
self.active_tickets = []
|
||||
self.engines.clear()
|
||||
self.mma_streams.clear()
|
||||
# Reset mma_tier_usage to pre-populated default (prior tests pollute it)
|
||||
self.mma_tier_usage = {'Tier 1': {}, 'Tier 2': {}, 'Tier 3': {}, 'Tier 4': {}}
|
||||
# Reset mma_tier_usage to the same shape as __init__ (line 952-957). Prior
|
||||
# tests pollute it; downstream consumers like _flush_to_project require
|
||||
# every tier entry to have 'model' / 'provider' / 'tool_preset' keys. The
|
||||
# pre-populated defaults (input=0, output=0, provider='gemini', model=
|
||||
# tier default, tool_preset=None) restore the contract without retaining
|
||||
# any polluted model names or token counts from a prior session.
|
||||
self.mma_tier_usage = {
|
||||
"Tier 1": {"input": 0, "output": 0, "provider": "gemini", "model": "gemini-3.1-pro-preview", "tool_preset": None},
|
||||
"Tier 2": {"input": 0, "output": 0, "provider": "gemini", "model": "gemini-3-flash-preview", "tool_preset": None},
|
||||
"Tier 3": {"input": 0, "output": 0, "provider": "gemini", "model": "gemini-2.5-flash-lite", "tool_preset": None},
|
||||
"Tier 4": {"input": 0, "output": 0, "provider": "gemini", "model": "gemini-2.5-flash-lite", "tool_preset": None},
|
||||
}
|
||||
# Reset RAG engine state so the chroma collection from a prior test
|
||||
# doesn't leak into the next session. The next _sync_rag_engine will
|
||||
# rebuild the engine with the new active_project_root.
|
||||
|
||||
Reference in New Issue
Block a user