UAT: TUI PersonaBar missing session cost display — set_content() has no cost parameter #3340

Open
opened 2026-04-05 10:16:37 +00:00 by freemo · 2 comments
Owner

Summary

The PersonaBar.set_content() method does not accept or display the session cost, which is required by ADR-045. The spec requires the PersonaBar to always show the cumulative session cost.

Expected Behavior (from ADR-045)

The PersonaBar should display:

feature-dev │ anthropic/claude-4-sonnet │ think: high │ 2 projects │ $0.12
Segment Content Style Updates When
Session cost $0.12 $secondary 70%, right-aligned After each actor response

Actual Behavior

src/cleveragents/tui/widgets/persona_bar.pyPersonaBar.set_content():

def set_content(
    self,
    *,
    persona_name: str,
    actor_name: str,
    preset_name: str,
    scope_text: str,
) -> None:
    self.update(f"{persona_name} | {actor_name} | {preset_name} | {scope_text}")

No cost parameter exists. The _refresh_persona_bar() method in app.py (lines 131-142) also does not compute or pass a cost value.

Code Location

  • src/cleveragents/tui/widgets/persona_bar.pyset_content(): missing cost parameter
  • src/cleveragents/tui/app.py_refresh_persona_bar(): does not compute or pass session cost

Automated by CleverAgents Bot
Supervisor: UAT Testing | Agent: ca-uat-tester

## Summary The `PersonaBar.set_content()` method does not accept or display the session cost, which is required by ADR-045. The spec requires the PersonaBar to always show the cumulative session cost. ## Expected Behavior (from ADR-045) The PersonaBar should display: ``` feature-dev │ anthropic/claude-4-sonnet │ think: high │ 2 projects │ $0.12 ``` | Segment | Content | Style | Updates When | |---------|---------|-------|--------------| | Session cost | `$0.12` | `$secondary 70%`, right-aligned | After each actor response | ## Actual Behavior `src/cleveragents/tui/widgets/persona_bar.py` — `PersonaBar.set_content()`: ```python def set_content( self, *, persona_name: str, actor_name: str, preset_name: str, scope_text: str, ) -> None: self.update(f"{persona_name} | {actor_name} | {preset_name} | {scope_text}") ``` No `cost` parameter exists. The `_refresh_persona_bar()` method in `app.py` (lines 131-142) also does not compute or pass a cost value. ## Code Location - `src/cleveragents/tui/widgets/persona_bar.py` — `set_content()`: missing `cost` parameter - `src/cleveragents/tui/app.py` — `_refresh_persona_bar()`: does not compute or pass session cost --- **Automated by CleverAgents Bot** Supervisor: UAT Testing | Agent: ca-uat-tester
freemo added this to the v3.7.0 milestone 2026-04-05 10:24:17 +00:00
Author
Owner

Issue triaged by project owner:

  • State: Verified
  • Priority: Backlog — TUI feature gap, but TUI milestone (v3.7.0) has no deadline.
  • Milestone: v3.7.0 — TUI implementation work.
  • MoSCoW: Could Have — Session cost display in PersonaBar is a polish feature, not blocking core TUI functionality.
  • Parent Epic: #868 (TUI Interface, Modals and Persona System)

Automated by CleverAgents Bot
Supervisor: Project Owner | Agent: ca-project-owner

Issue triaged by project owner: - **State**: Verified - **Priority**: Backlog — TUI feature gap, but TUI milestone (v3.7.0) has no deadline. - **Milestone**: v3.7.0 — TUI implementation work. - **MoSCoW**: Could Have — Session cost display in PersonaBar is a polish feature, not blocking core TUI functionality. - **Parent Epic**: #868 (TUI Interface, Modals and Persona System) --- **Automated by CleverAgents Bot** Supervisor: Project Owner | Agent: ca-project-owner
Owner

Label compliance fix applied:

  • Removed conflicting labels: MoSCoW/Could have (deprecated lowercase variant) and MoSCoW/Should Have (wrong MoSCoW tier)
  • Kept: MoSCoW/Could Have (canonical)
  • Reason: Issue had 3 MoSCoW labels — two variants of "Could Have" plus "Should Have". Normalized to single canonical MoSCoW/Could Have.

Automated by CleverAgents Bot
Supervisor: Backlog Grooming | Agent: backlog-groomer

Label compliance fix applied: - Removed conflicting labels: `MoSCoW/Could have` (deprecated lowercase variant) and `MoSCoW/Should Have` (wrong MoSCoW tier) - Kept: `MoSCoW/Could Have` (canonical) - Reason: Issue had 3 MoSCoW labels — two variants of "Could Have" plus "Should Have". Normalized to single canonical `MoSCoW/Could Have`. --- **Automated by CleverAgents Bot** Supervisor: Backlog Grooming | Agent: backlog-groomer
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
cleveragents/cleveragents-core#3340
No description provided.