Skip to content

HTML annotate-mode toggle, icon copy actions, copy file contents - #23

Merged
angusbezzina merged 1 commit into
mainfrom
angus/annotate-toggle-copy-actions
Sep 10, 2026
Merged

HTML annotate-mode toggle, icon copy actions, copy file contents#23
angusbezzina merged 1 commit into
mainfrom
angus/annotate-toggle-copy-actions

Conversation

@angusbezzina

Copy link
Copy Markdown
Collaborator

Follow-up to #22 — work that was left uncommitted on angus/agentic-enhancements when that PR merged. Needed before cutting v0.12.0.

HTML annotation: off by default, pinned toggle (attn-wrf3)

  • Annotate mode is off on every shell (native, hosted reviewer, hosted owner), shared documents included, so interactive HTML artefacts keep their own links, buttons and tabs.
  • Shell-owned note toggle pinned bottom-right of the document viewport (HtmlAnnotateToggle.svelte, data-slot="html-annotate-toggle"); ⌘⇧N / Ctrl+Shift+N toggles, Esc leaves when nothing sits above it. Mode persists across submit/cancel.
  • Hardening: the bridge always re-states the mode (false included) after every handshake; the runtime's pickScope refuses to propose once the mode is off and clears offered scopes on inspect: false.
  • Recorded as decision Mark the committed icon output as generated #21 in planning/collab/amendments.md; html-annotation.md §Goal and §5 amended.

Agent feedback polish (attn-926b)

  • Per-card Copy icon next to the time badge; a bar pinned to the rail bottom (AgentFeedbackBar) copies all agent-assigned comments with file/project scope. "Copy selected" is dropped. Success shows as a check icon.
  • Composers share AssignToAgentCheckbox.
  • Header Copy file contents action (copy-file-contents.ts). To support it, the attn:// file handler now returns Access-Control-Allow-Origin for non-markdown files only when the request origin is the app document (attn://app, or localhost in debug builds). The sandboxed HtmlViewer frame sends Origin: null and still gets no CORS-clean read. Covered by app_document_origin_grants_only_the_shell.

Validation (local)

  • npm run check: 0 errors / 0 warnings
  • npm test: 150 test files, 0 failures
  • npm run check:doc-runtime: artifact current
  • cargo fmt --check, cargo clippy --all-targets -D warnings: clean
  • cargo test --bin attn app_document_origin: pass
  • Per the closed epics: Playwright runtime spec 35 pass, native dual-daemon HTML annotation E2E 31 PASS

🤖 Generated with Claude Code

https://claude.ai/code/session_013sxC4SnV9vkNUV73fhdx8K

…ile contents

HTML annotation (attn-wrf3): annotate mode is now off by default on every
shell, a shared document included, so interactive artefacts keep their own
links, buttons and tabs. A shell-owned note toggle pinned to the document
viewport (⌘⇧N, Esc to leave) turns the hover outline / breadcrumb chip /
click-to-comment surface on and off. The bridge re-states the mode after
every handshake and the runtime refuses to emit a scope proposal once the
mode is off. Recorded as decision #21 in amendments.md.

Agent feedback polish (attn-926b): each margin card gets a Copy icon next
to its time badge, and a bar pinned to the rail bottom copies all
agent-assigned comments with file or project scope ("Copy selected" is
dropped). Composers share an AssignToAgentCheckbox. A header "Copy file
contents" action reads the raw file back through the attn:// handler,
which now grants CORS only to the app document's own origin — never to
the sandboxed HtmlViewer frame.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013sxC4SnV9vkNUV73fhdx8K
@vercel

vercel Bot commented Sep 10, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
attn Ready Ready Preview Sep 10, 2026 9:38pm UTC

Request Review

@angusbezzina
angusbezzina merged commit ed77d21 into main Sep 10, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant