Skip to content

feat(tui): Phase 2 dynamic metrics — compaction/STT models, inference params, test coverage#2162

Merged
bug-ops merged 5 commits intomainfrom
feat-issue-2160-tui-phase2-metrics
Mar 23, 2026
Merged

feat(tui): Phase 2 dynamic metrics — compaction/STT models, inference params, test coverage#2162
bug-ops merged 5 commits intomainfrom
feat-issue-2160-tui-phase2-metrics

Conversation

@bug-ops
Copy link
Owner

@bug-ops bug-ops commented Mar 23, 2026

Closes #2160

Summary

  • Add 9 new fields to MetricsSnapshot: stt_model, compaction_model, provider_temperature, provider_top_p, active_channel, embedding_model, token_budget, self_learning_enabled, semantic_cache_enabled
  • Replace telegram-token-presence proxy in runner.rs with explicit AnyChannel variant for active_channel detection
  • Update /provider switch to populate provider_temperature and provider_top_p at runtime
  • Status bar: show active model name and channel inline
  • Resources panel: show embedding model, token budget, learning flag conditionally
  • 7 new tests covering default values, round-trip updates, and panel rendering branches

Test plan

  • cargo +nightly fmt --check — clean
  • cargo clippy --all-targets --all-features --workspace -- -D warnings — clean
  • cargo nextest run --workspace --all-features --lib --bins — 6464/6464 passed

bug-ops added 2 commits March 23, 2026 16:29
Add new MetricsSnapshot fields: stt_model, compaction_model,
provider_temperature, provider_top_p, active_channel, embedding_model,
token_budget, self_learning_enabled, semantic_cache_enabled.

Populate startup fields in runner.rs from config (stt_model,
compaction_model, embedding_model, semantic_cache_enabled,
self_learning_enabled, active_channel). Update metrics on /provider
switch (provider_name, model_name, temperature, top_p via Candle config).

TUI status bar: show model name and ch:<channel> segments when set.
Resources panel: render Embed:, Budget:, and Learning: ON lines
conditionally.

Tests: 7 new unit tests in metrics.rs, status.rs, resources.rs.
Total: 6464 passed (was 6457).
Populate m.token_budget from budget_tokens in runner.rs send_modify block.
Add [Unreleased] ### Added entry in CHANGELOG for Phase 2 metrics.

Note: vault_backend, compaction_threshold, autosave_enabled were never
present in MetricsSnapshot — their absence is not a regression.
@github-actions github-actions bot added documentation Improvements or additions to documentation rust Rust code changes core zeph-core crate enhancement New feature or request size/L Large PR (201-500 lines) labels Mar 23, 2026
bug-ops added 3 commits March 23, 2026 16:41
…after merge

After merging origin/main, the channel_segment was missing from the render()
format string in status.rs; add it back so ch:<channel> appears in the status
bar. Fix Phase 2 unit tests in resources.rs that used height=10 (collapsed
mode) for assertions that require the expanded layout (height >= 30).
@bug-ops bug-ops enabled auto-merge (squash) March 23, 2026 15:52
@bug-ops bug-ops merged commit bab69a0 into main Mar 23, 2026
25 checks passed
@bug-ops bug-ops deleted the feat-issue-2160-tui-phase2-metrics branch March 23, 2026 15:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

core zeph-core crate documentation Improvements or additions to documentation enhancement New feature or request rust Rust code changes size/L Large PR (201-500 lines)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(tui): Phase 2 dynamic metrics — compaction/STT models, inference params, test coverage

1 participant