Commit Graph
14 Commits
Author SHA1 Message Date
jpmschweitzerandClaude Opus 4.8 ba968223fe file T-324: 1px margin above the tab strip (cramped tabs)
Filed under UI epic T-276. The ClideTabBar
(lib/widgets/src/clide_tab_bar.dart) sits flush against the
chrome above it; add a 1px hairline of breathing room, applied
where it won't double up across the surfaces that embed a tab
bar. Changelog only — leaves concurrent lib/ work untouched.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 13:26:18 +02:00
jpmschweitzerandClaude Opus 4.8 1194527ad5 T-317: merge canvas work into one drawing-card epic (D-91 follow-up)
Records the T-7 -> T-317 merge on D-91's Relationship bullet (the
former Tier-5 canvas+graph epic folds into the unified canvas
epic; canvas pane T-322 + graph view T-323 consume the shared
renderer) and the D-91 index line. Plus the changelog for this
turn's board restructure: epic T-317, core engine T-318,
templates T-319/320/321, re-parented T-313/315/316, T-7 cancelled
as superseded, T-41 moved to T-276.

Governance + .pql/changelog only — leaves concurrent lib/ work
and CHANGELOG.md to the other worker on this branch.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 13:25:04 +02:00
jpmschweitzerandClaude Opus 4.8 7a98cbae4b frame the context / thinking / agent-prompt meta cards (T-306)
The injected context block and the thinking / agent-prompt blocks
rendered as frameless `bare` cards, reading as unfinished `> context …`
rows next to the framed tool cards. Switch them to the bordered variant —
same panel border + left chevron + label as the surrounding cards — while
keeping the D-78 de-emphasis (muted accent, collapsed by default,
first-line summary; thinking gains a summary for parity). Adds a
conversation_card_meta golden.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 13:16:41 +02:00
jpmschweitzerandClaude Opus 4.8 db66039769 file T-315/T-316: CLI stdin JSON plumbing + image annotation metadata
T-315 (task): add a client-side stdin path to the clide CLI so
commands can take a piped JSON payload (`… | clide icon show
--stdin`), the ergonomic peer of --file. Generic infra slurped in
lib/src/cli/ before the IpcRequest is sent; commands opt in via
CommandSchema. Unblocks the piped variants of T-313/T-316.

T-316 (task): give `clide image show` the same metadata plumbing
as the icon card — a JSON payload (--file, or --stdin once T-315
lands) carrying label/description/captions so images can be
annotated, extending ImageMessage + the image card. Starts with
text metadata; visual marker overlays flagged as a follow-up.
Existing `image show <path> --caption` form stays unchanged.

Both under UI epic T-276; cross-linked from T-313.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 12:55:57 +02:00
jpmschweitzerandClaude Opus 4.8 7ac29f59d1 refine T-313: multi-icon labelled glyph card + multi-size + flow
Broadens the Phosphor glyph card from a single-glyph preview to a
list of entries, each glyph + optional label + optional
description, driven by `clide icon show` (terse positional for
bare previews, JSON payload for labelled/described entries).

- Multi-size: each icon renders at a 48px hero (new named
  constant) plus a sample at every inline type token (badge 11 ->
  body 15) so legibility at real UI sizes is visible.
- Selection model (decided): display card stays display-only
  (D-78); selection happens in the interaction zone via a
  Claude-offered choice list whose options reuse the card's
  per-icon labels — labels are the bridge for the show-then-pick
  flow.
- Notes name->codepoint resolution already exists
  (phosphor_glyphs.g.dart, PhosphorIcons.byName), retiring the
  old 'generate the full set' caveat.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 12:43:10 +02:00
jpmschweitzerandClaude Opus 4.8 c72eb1eb5d T-302: settings-modal wireframe + scope-icon decision
Frame0 wireframe for the app settings UI (design step under T-8). A
centered modal with a left sidebar of sections (Claude is one), inline
per-field scope (no header toggle): each field shows its EFFECTIVE value
+ a source tag, edits default to Project, and a field's tag promotes it
to Always (global, all clide) or resets. Editor category fully rendered
(number/select/toggle/external-file + override shadow).

Scope tag becomes an icon: folder (project) / globe (always) /
circle-dashed (default), recorded on T-302. Filed T-313 (native Phosphor
glyph preview card — the vehicle to pick icons in-pane) and T-312 (image
card caches by path).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 12:22:16 +02:00
jpmschweitzerandClaude Opus 4.8 b680df2b24 T-310: numpad digits select prompt-card options
The prompt card's number-key shortcuts matched only digit1..digit9
(the number row); numpad 1-9 fell through to ignored. Add a
parallel _numpadKeys list and check it in _onKey so the keypad
maps to the same 1-9 selection for Allow/Deny and question
options. numpadEnter was already handled. The hasPrimaryFocus
guard still lets digits type into a focused note field.

Adds four widget tests (numpad Allow/Deny, question option,
focused-note swallow). Closes T-310 (under UI epic T-276).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 12:07:35 +02:00
jpmschweitzerandClaude Opus 4.8 cb86346234 file T-311: permission card 'Deny & simplify' option
Filed under UI epic T-276. Adds a fourth permission-card option:
a deny carrying a preformatted note asking Claude to retry the
action in a simpler format, with an explicit clause not to add a
memory or rewrite permission config (avoids continuous fiddling
with the permission surface). Working label 'Deny & simplify',
tooltip via ClideButton's existing tooltip param. Captures the
escalation-in-context design note. Persisting the changelog.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 11:56:29 +02:00
jpmschweitzerandClaude Opus 4.8 24739b0515 file T-310: numpad digits should select prompt-card options
Filed under UI epic T-276. Prompt-card number shortcuts only
match the top number row (_digitKeys = digit1..digit9); numpad
1-9 fall through. numpadEnter is already handled, so numpad
parity is partial. Persisting the ticket changelog.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 11:39:09 +02:00
jpmschweitzerandClaude Opus 4.8 46edc258e6 file T-309: lightbox click-outside-image should dismiss
Filed under UI epic T-276. Clicking the dimmed area beside a
smaller-than-94% image doesn't close the lightbox today — the
host backdrop only reaches the 6% margin. Persisting the ticket
changelog (no code change to piggyback on).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 11:37:46 +02:00
jpmschweitzerandClaude Opus 4.8 10a714e2c5 file T-308: surface Claude's task list docked above the input pane
Claude's TodoWrite/TaskCreate task list is currently neither parsed
(transcript_reader skips the event) nor rendered — invisible to the user.
Ticket covers modelling it from the transcript and docking a compact,
collapsible, display-only list directly above the composer in the Claude
conversation view. Filed under the UI epic T-276.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 11:28:11 +02:00
jpmschweitzerandClaude Opus 4.8 8cc238cb75 file tickets T-306/T-307 for context-card + frame0 approval gate
T-306: card the injected "context" conversation block to match the
collapser-card frame the rest of the tool/group cards use, keeping the
D-78 muted/collapsed de-emphasis.

T-307: gate the frame0-wireframe skill on user approval after each shown
screen — wireframing is a design dialogue, not a batch generation run.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 10:18:13 +02:00
jpmschweitzerandClaude Opus 4.8 ef09441eb4 file T-305: unify collapser cards + wireframe
Two collapser-card families (ClideHolderCard group container, T-266; the
ConversationCard merged tool card, T-262) attach collapse differently and
render inconsistent header chrome — status mark placement, no fixed
counter slot, color knob on one but not the other. File T-305 (under the
T-276 UI tracker) to extract one ClideCollapserCard primitive both grab:
a `color` for border/text fidelity, a fixed-width counter slot, and the
status icon hard against the card edge.

Adds the Frame0 wireframe (collapsed color variants + expanded nested
cards) at docs/design/wireframes/cards/collapser-card.{json,png}.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 10:17:49 +02:00
jpmschweitzerandClaude Opus 4.8 2b59598894 migrate ticket changelog to record_id identity (D-26)
Rewrites the committed .pql/changelog/ from the old T-NNN-keyed format to
the record_id identity model (pql 1.10.0, D-26): tickets keyed by a ULID
record_id, the friendly T-NNN in ticket_idmap, references and hashes
recomputed. Produced by the one-off cmd/migrate-ids in the pql repo.

Other clones: install pql >= 1.10.0, then rm .pql/pql.db && pql plan
rebuild to regenerate the local DB from this changelog.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 09:27:35 +02:00