@@ -44,12 +44,41 @@ A real-time visualization dashboard at `/dashboard` shows:
4444- Action timeline with reward indicators
4545- ** Accumulated run results** that persist across tiers with expandable per-tier reports
4646
47+ ![ MissionCtrl Dashboard] ( Asset/l%20Missionctrl%20TASK.png )
48+
49+ #### Run Results Breakdown
50+ The Run Results panel now supports expandable per-tier drilldowns for:
51+ - Score breakdown contributions by signal
52+ - Hallucination stats (injected/caught/TP/FP)
53+ - Action-by-action reward history
54+
55+ ![ Run Results Panel] ( Asset/SCR-20260423-ordo.png )
56+
4757### 🔄 Deterministic Replay
4858Every episode can be deterministically replayed via seeded randomness, enabling reproducible debugging and benchmarking.
4959
5060### 🐳 Single-Container Deployment
5161Server + inference in one Docker image. No orchestration, no external databases — just ` docker run ` and go.
5262
63+ ### 🧾 Verbose LLM Trace View
64+ When ` VERBOSE_TRACE=1 ` , inference prints compact boxed traces for each step:
65+ - Prompt metadata (including char count)
66+ - Prompt preview for fast debugging
67+ - Action normalization and guardrail rewrites
68+ - Step transition outcomes and rewards
69+
70+ ![ LLM Prompt Trace] ( Asset/SCR-20260423-oqsn.png )
71+
72+ ![ LLM Response Trace] ( Asset/SCR-20260423-orzh.png )
73+
74+ ### 🚦 Token-Budget Guardrails
75+ Inference now includes hardening for provider token limits:
76+ - ** Stateless per-step LLM requests** (fresh system + current observation only)
77+ - ** No retry loop for permanent oversized-request errors**
78+ - Retry/backoff remains enabled for transient provider throttling
79+
80+ This prevents late-step context blowups (for example, step 5 payload growth) from repeatedly failing with the same "request too large" response.
81+
5382---
5483
5584## 📈 Baseline Results
@@ -204,13 +233,29 @@ pytest tests/ -v
204233
205234| Variable | Default | Description |
206235| ---| ---| ---|
207- | ` API_BASE_URL ` | ` https://api.groq.com/openai/ v1 ` | LLM API endpoint |
208- | ` MODEL_NAME ` | ` llama-3.3-70b-versatile ` | Model to use |
236+ | ` API_BASE_URL ` | ` https://router.huggingface.co/ v1 ` | OpenAI-compatible LLM API endpoint |
237+ | ` MODEL_NAME ` | ` openai/gpt-oss-120b ` | Model to use |
209238| ` HF_TOKEN ` | — | API key |
210- | ` STEP_DELAY_S ` | ` 0.5 ` | Delay between steps (reduce for speed) |
239+ | ` ENV_BASE_URL ` | ` http://localhost:8000 ` | MissionCtrl server base URL |
240+ | ` STEP_DELAY_S ` | ` 4.0 ` | Delay between steps (reduce for speed) |
211241| ` VERBOSE_TRACE ` | ` 1 ` | Show detailed step traces |
242+ | ` PROMPT_PREVIEW_CHARS ` | ` 200 ` | Prompt preview truncation length in trace logs |
243+ | ` TRACE_WRAP_WIDTH ` | ` 76 ` | Text wrap width for trace block content |
244+ | ` TRACE_BOX_WIDTH ` | ` 76 ` | Width of the boxed trace output |
245+ | ` SPINNER_ENABLED ` | ` 0 ` | Enable CLI spinner while waiting for LLM response |
212246| ` MAX_STEPS ` | ` 5 ` | Steps per episode |
213247
248+ ### Troubleshooting: Request Too Large / TPM Errors
249+
250+ If your provider returns errors like:
251+ ` Request too large ... tokens per minute ... Requested > Limit `
252+
253+ Use this checklist:
254+ 1 . Ensure you are running the latest image/code with stateless per-step requests.
255+ 2 . Reduce verbosity/observation size if needed (fewer long output snippets).
256+ 3 . Switch to a model/tier with higher TPM limits.
257+ 4 . Keep retries for transient rate limits; oversized requests are now treated as non-retryable.
258+
214259---
215260
216261## 📋 Task Tiers
0 commit comments