feat(web): F13 — Copy as markdown button (tactical) + EVID-015 activate F12#38
Merged
Merged
Conversation
EVID-015 (Tactical, supports / CL3 / test) — F12 acceptance: PR #37 merged to develop, 9 new vitest tests (53 → 62), 3-OS smoke matrix green. SC-1..SC-9 all pass: - toggle UI + permission flow + 3 breach categories detected - localStorage persistence + UI state reflection - click → focus via notifyBus singleton - svelte-check 0/0; CI matrix 3-OS green Status transitions: - PRD-007: draft → active - RFC-006: draft → active These artifacts ride along with F13 (markdown export, tactical) for a single PR. F12 code already shipped in PR #37; this commit only updates artifact metadata. Refs: PRD-007 RFC-006 EVID-015
ArtifactPanel adds a "📋 Copy as markdown" button next to the impact
actions. Click writes a copy-paste-ready markdown summary to the
clipboard:
# {id} — {title}
**Status**: {status} · **Kind**: {kind} · **R_eff**: {r_eff|n/a}
## Outgoing
- {to} ({relation})
## Incoming
- {from} ({relation})
## Body excerpt
{first 500 chars + ...}
Outgoing / Incoming sections omitted when empty; Body section omitted
when artifact.body is empty. Closes the loop "PR review needs PRD
context" — paste straight into GitHub PR descriptions / Slack threads.
Visual feedback: ✓ Copied (green) on success, ✗ Copy failed (red) on
error. Both auto-revert after 2s. setTimeout cancelled on rapid clicks.
Pure function `buildMarkdownSummary` in widgets/artifact-panel/lib/
markdown-export.ts. 6 vitest unit tests (basic format, empty
outgoing/incoming, list rendering, R_eff n/a fallback, body
truncation past 500 chars, empty body omission).
Tactical — no PRD/RFC artifact required.
Verify:
- svelte-check 0/0/436.
- npm test 68/68 (62 baseline + 6 new).
Refs: tactical
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Two riding-along payloads:
F13 (tactical, no PRD/RFC) — Copy as markdown
ArtifactPanel adds a 📋 Copy as markdown button. Click writes a copy-paste-ready markdown summary to the clipboard for PR descriptions / Slack threads:
Empty Outgoing/Incoming/Body sections omitted. Visual feedback: ✓ Copied (green) on success, ✗ Copy failed (red) on error; auto-revert after 2 s.
Pure helper
buildMarkdownSummaryinwidgets/artifact-panel/lib/markdown-export.ts. 6 vitest unit tests.EVID-015 + activations
Verify
npx svelte-check— 0/0/436.npm test— 68/68 (62 baseline + 6 new).Test plan
Refs:
PRD-007RFC-006EVID-015🤖 Generated with Claude Code