Phase 06: CLI Interface Gap Closure - 2 plans addressing 3 UAT-identified issues - Session persistence: Add missing set_conversation_history method - Session feedback: Add verbose messaging for session file operations - Resource display: Fix color coding with force_terminal=True - Ready for execution to close CLI interface gaps
102 lines
3.6 KiB
Markdown
102 lines
3.6 KiB
Markdown
---
|
|
status: diagnosed
|
|
phase: 06-cli-interface
|
|
source: [06-02-SUMMARY.md, 06-04-SUMMARY.md]
|
|
started: 2026-01-26T20:00:00Z
|
|
updated: 2026-01-26T20:40:00Z
|
|
---
|
|
|
|
## Current Test
|
|
|
|
[testing complete]
|
|
|
|
## Tests
|
|
|
|
### 1. Session persistence across restarts
|
|
expected: Start a conversation, exit CLI, and restart. Session continues with contextual message about time elapsed
|
|
result: issue
|
|
reported: "Welcome back message shows time elapsed but error: 'ConversationState' object has no attribute 'set_conversation_history'"
|
|
severity: major
|
|
|
|
### 2. Session management commands
|
|
expected: Type /session to see session info, /clear to start fresh session
|
|
result: pass
|
|
|
|
### 3. Conversation history saving
|
|
expected: Messages are automatically saved to ~/.mai/session.json during conversation
|
|
result: issue
|
|
reported: "There is no session.json"
|
|
severity: major
|
|
|
|
### 4. Large conversation handling
|
|
expected: When conversation exceeds 100 messages, older messages are truncated with notification
|
|
result: skipped
|
|
reason: User chose to skip testing 100 message truncation feature
|
|
|
|
### 5. Real-time resource monitoring
|
|
expected: Resource usage (CPU, RAM, GPU) displays during conversation with color-coded status
|
|
result: issue
|
|
reported: "not color coded, but there"
|
|
severity: minor
|
|
|
|
### 6. Responsive terminal layout
|
|
expected: Resource display adapts to terminal width (full/compact/minimal layouts)
|
|
result: pass
|
|
|
|
### 7. Resource alerts
|
|
expected: System shows warnings when resources are constrained (high CPU, low memory)
|
|
result: skipped
|
|
reason: User chose to skip testing resource constraint warnings
|
|
|
|
### 8. Graceful degradation without dependencies
|
|
expected: CLI works normally even if rich/blessed packages are missing
|
|
result: pass
|
|
|
|
## Summary
|
|
|
|
total: 8
|
|
passed: 3
|
|
issues: 3
|
|
pending: 0
|
|
skipped: 2
|
|
|
|
## Gaps
|
|
|
|
- truth: "Start a conversation, exit CLI, and restart. Session continues with contextual message about time elapsed"
|
|
status: failed
|
|
reason: "User reported: Welcome back message shows time elapsed but error: 'ConversationState' object has no attribute 'set_conversation_history'"
|
|
severity: major
|
|
test: 1
|
|
root_cause: "Missing set_conversation_history method in ConversationState class"
|
|
artifacts:
|
|
- path: "src/mai/conversation/state.py"
|
|
issue: "Missing set_conversation_history method"
|
|
missing:
|
|
- "Add set_conversation_history method to convert Ollama messages back to ConversationTurn objects"
|
|
debug_session: ".planning/debug/resolved/session-persistence-error.md"
|
|
- truth: "Messages are automatically saved to ~/.mai/session.json during conversation"
|
|
status: failed
|
|
reason: "User reported: There is no session.json"
|
|
severity: major
|
|
test: 3
|
|
root_cause: "Session system works correctly, but users lack clear feedback about when/where session files are created"
|
|
artifacts:
|
|
- path: "src/app/__main__.py"
|
|
issue: "Missing user-friendly messaging about session file creation and location"
|
|
missing:
|
|
- "Add verbose feedback for session operations"
|
|
- "Enhance /session command with file information display"
|
|
- "Improve new session creation messaging"
|
|
debug_session: ".planning/debug/resolved/missing-session-file.md"
|
|
- truth: "Resource usage (CPU, RAM, GPU) displays during conversation with color-coded status"
|
|
status: failed
|
|
reason: "User reported: not color coded, but there"
|
|
severity: minor
|
|
test: 5
|
|
root_cause: "Rich console detects is_terminal=False and disables color output automatically"
|
|
artifacts:
|
|
- path: "src/app/__main__.py"
|
|
issue: "Console() initialization without force_terminal parameter"
|
|
missing:
|
|
- "Modify ResourceDisplayManager to use Console(force_terminal=True)"
|
|
debug_session: ".planning/debug/resolved/missing-color-coding.md" |