Skip to content

artifact-canvas: full-row '+' affordance (GitHub-diff pattern) — structurally eliminate the hover travel-gap bug class #1343

Description

@amrmelsayed

Origin

At pir-1237's dev-approval gate (2026-08-05), reviewer testing of the shipped #1236 fix (grace timers + pin-on-overlay-hover) surfaced residual UX gaps the damping approach cannot close:

Proposal (reviewer's, endorsed at gate)

Adopt the GitHub-diff pattern: the whole row is the hover target, and the '+' renders inside the hovered block's own row (leading edge, vertically centered on the row under the pointer). This structurally eliminates the travel-gap bug class — there is no journey between trigger and target, so grace timers, pinning, and re-anchor suppression all become unnecessary and can be deleted.

Scope notes

PIR — supersedes approved layout decisions, design-sensitive. Related: #1236 (interim fix), #863 (current layout contract), #1107 (composer), #1237 (keyboard parity).

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/vscodeArea: VS Code extension

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions