v0.7.2: gate-trace wiring, HITL panels, /identity command — TDD
Gate trace: wired into view-chat, renders below agent messages in dim. Collapsed-gates state field for Tab toggle (deferred to Croatoan test). HITL panels: on-daemon-msg detects :approval-required events, renders styled panel messages with :panel flag. View-chat renders with :hitl theme color (magenta). /approve and /deny add confirmation messages. /identity: opens ~/memex/IDENTITY.org in emacsclient -c -a '', auto-reloads. - channel-tui-view: gate-trace in view-chat, HITL panel styling - channel-tui-state: :collapsed-gates, :hitl theme, :panel attr - channel-tui-main: HITL panel detection, /identity handler - View: 29/29 TUI Main: 83/84 (1 pre-existing flake)
This commit is contained in:
@@ -132,9 +132,13 @@ Returns list of trimmed strings. Single words wider than width are split."
|
||||
(time (or (getf msg :time) ""))
|
||||
(color (theme-color (case role (:user :user) (:agent :agent) (:system :system) (t :agent))))
|
||||
(prefix (case role (:user "⬆") (:agent "⬇") (t " ")))
|
||||
(is-panel (getf msg :panel))
|
||||
(line-text (format nil "~a [~a] ~a" prefix time content))
|
||||
(wrapped (word-wrap line-text (- w 2))))
|
||||
(dolist (line wrapped)
|
||||
;; HITL panel: render with colored border
|
||||
(when is-panel
|
||||
(setf color (theme-color :hitl)))
|
||||
(dolist (line wrapped)
|
||||
(when (< y (1- h))
|
||||
(if (eq role :agent)
|
||||
(let ((segments (parse-markdown-spans line)))
|
||||
|
||||
Reference in New Issue
Block a user