FE-657: Direct in-place editing on the structured-list view#109
FE-657: Direct in-place editing on the structured-list view#109kostandinang wants to merge 3 commits into
Conversation
6e427ef to
5ffdee6
Compare
47795c4 to
1f76988
Compare
7a05b7a to
222ba01
Compare
1f76988 to
40b955f
Compare
PR SummaryMedium Risk Overview Edits can be saved with Cmd/Ctrl+Enter or an inline Save button (disabled for empty/no-op changes) to stage a Extends Reviewed by Cursor Bugbot for commit 4ae654f. Bugbot is set up for automated code reviews on this repo. Configure here. |
🤖 Augment PR SummarySummary: Adds inline “direct edit” support to the specification structured-list view so users can quickly tweak an item’s content without going through a side-chat flow. Changes:
Technical Notes: Inline editing is tracked by an 🤖 Was this summary useful? React with 👍 or 👎 |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 389579a. Configure here.
389579a to
c71b58a
Compare
222ba01 to
764c29b
Compare
Per-row pencil button enters inline-edit mode that swaps the static content paragraph for an autosizing textarea seeded with the current content. Saving (blur or Cmd/Ctrl+Enter) stages a kind: 'edit' patch on the existing PatchListProvider — same staging surface, apply path, impact-tier routing, and undo handling that side-chat tool-call edits already use. Escape cancels without staging. Only one row may be in edit mode at a time; the Edit affordance is disabled on other rows while editing, and disabled entirely when no PatchListProvider is mounted (e.g. legacy preview routes). Patch payload includes anchorReferenceCode and currentContent so the PatchListOverlay renders the kind-tinted reference badge and word-level ContentDiff without re-querying the entity store. Co-authored-by: Amp <amp@ampcode.com>
Replace blur-to-save behavior with explicit Save and Cancel buttons beneath the textarea, plus a keyboard hint (⌘↵ save · esc cancel). Save uses the same blue gradient + ring as the patch-list-overlay Apply button so users see one consistent primary-action style across the staging surface; Cancel is a ghost button. Save is disabled when the trimmed value is empty or unchanged from the original, so the editor never stages a no-op edit. Container-level blur falls back to cancel only when focus leaves the editor entirely (clicking the inline buttons keeps focus inside and runs their own handlers). Hide the row's hover action rail and toggle while editing so the top-bar reads only as the editor (badge + textarea + Save/Cancel controls), and align the badge to the textarea's top edge with items-start so multi-line edits don't drift the alignment. Adds two tests covering Save click (with disabled-state transitions for unchanged / whitespace-only content) and Cancel click. Co-authored-by: Amp <amp@ampcode.com>
Compare trimmed user input against trimmed initial content so leading or trailing whitespace in the original value doesn't make canSave true on edit-mode entry, which would otherwise enable Save and stage a no-op whitespace-only edit patch.
764c29b to
7a9823e
Compare
c71b58a to
4ae654f
Compare


What
Adds direct in-place editing on the structured-list view, reusing the side-chat V2 staging pipeline.
Stacked on #108. Linear: FE-657.
How
Cmd/Ctrl+Enteror Save stages aneditpatch on the existingPatchListProvider.Esc/ Cancel / clicking away exits without staging — staging is explicit.Why
Same patch shape as
propose_edit, so this reuses the V2 pipeline (staging, apply, impact classification, undo, hard-impact cascade) with no new server work.Test plan
Cmd/Ctrl+Enterstages; same impact chip + Apply / Undo as side-chat edits