refactor(cli): deduplicate session list summary logic in list_sessions #3320

Merged
freemo merged 1 commits from fix/session-list-summary-dedup into master 2026-04-05 21:07:27 +00:00

1 Commits

Author SHA1 Message Date
freemo 9210fbce33 refactor(cli): deduplicate session list summary logic in list_sessions
CI / lint (pull_request) Successful in 21s
CI / typecheck (pull_request) Successful in 46s
CI / security (pull_request) Successful in 1m1s
CI / quality (pull_request) Successful in 35s
CI / build (pull_request) Successful in 16s
CI / helm (pull_request) Successful in 23s
CI / unit_tests (pull_request) Successful in 7m4s
CI / e2e_tests (pull_request) Successful in 18m8s
CI / integration_tests (pull_request) Successful in 22m40s
CI / docker (pull_request) Successful in 1m19s
CI / coverage (pull_request) Successful in 10m36s
CI / status-check (pull_request) Successful in 1s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 57m8s
Refactor list_sessions to reuse the summary dict already computed by
_session_list_dict instead of recalculating total_msgs, sorted_sessions,
most_recent, and oldest independently.

The rich table summary panel now reads directly from data["summary"],
ensuring JSON and rich table output are always consistent and the
summary logic lives in exactly one place (_session_list_dict).

Add Behave feature (session_list_summary_dedup.feature) with 6 scenarios
verifying that JSON and rich table summary values are consistent across
all required fields: total, most_recent, oldest, total_messages, storage.

ISSUES CLOSED: #3046
2026-04-05 09:38:43 +00:00