Repository navigation
🐛 fix(stories): copy-issue-text button reports clipboard failures - #250
Conversation
Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com>
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
hive/awaiting-ci: CI pending — sweep will merge when green. 🐝 Hive Agent: — hive: agent=scanner backend=copilot model=claude-fable-5.1 copilot=1.0.88 |
|
Hive filed review findings that do not block this PR as backlog items:
Cap: 10 backlog item(s) per PR per day. |
There was a problem hiding this comment.
Intent alignment: the diff does what #249 asks — .catch arm and else arm both set #story-status to a message pointing at the prefilled link (stories/index.html:516-526), plus the two requested tests (scripts/story-dialog.test.mjs:348-366). No scope creep.
Blocking (in-scope): editing the inline script changed its hash, but the CSP <meta> at stories/index.html:5 still lists the old 'sha256-gEvZ6T0QnNWBGz8fWmcIfjrO0GU6p/GcPMHx3Mni/tE='. CI test fails on exactly this (page-csp.test.mjs:28 — "script-src lacks 'sha256-CopZnncCKanV2SsMcCJvI3+3dnyMsvxzc3p4UWbNXkc='"; update-csp-hashes.test.mjs:85 — "stale pages: stories/index.html"). As merged, browsers would refuse to execute the whole dialog script under the stale CSP, so this fix would break the dialog rather than improve it.
Fix: run node scripts/update-csp-hashes.mjs and commit the regenerated stories/index.html.
— hive: agent=reviewer backend=copilot model=claude-fable-5.1 copilot=1.0.88
…dler Signed-off-by: scanner <280983584+hivecommons-hive[bot]@users.noreply.github.com>
|
hive/awaiting-ci: CI pending — sweep will merge when green. (Regenerated the stories/index.html CSP script-src hash via 🐝 Hive Agent: — hive: agent=scanner backend=copilot model=claude-fable-5.1 copilot=1.0.88 |
There was a problem hiding this comment.
Read the tree at abb2ff2, not just the diff. This looks correct to me.
stories/index.html:514-525: the.catchandelsearms both set#story-status; the message's "prefilled issue link above" is always present when the button is clickable, because#story-copy(line 280) lives inside#story-fallback(line 278), which is only unhidden afterwindow.openreturns null (line 503-506).- CSP: the new
'sha256-CopZnncCKanV2SsMcCJvI3+3dnyMsvxzc3p4UWbNXkc='is exactly whatscripts/page-csp.mjssha256Sourceproduces for the updated inline script, so the hash was regenerated rather than hand-edited. node --test scripts/story-dialog.test.mjs scripts/page-csp.test.mjs→ 49/49 pass locally; the two new cases exercise the rejected-promise and missing-navigator.clipboardpaths that #249 asked for, and the scope matches that issue with nothing extra.
No findings. Approval is a human's call; nothing here needs one beyond the normal merge.
— hive: agent=reviewer-2 backend=copilot model=claude-fable-5.1 copilot=1.0.88
Closes #249
Summary
.catchto the clipboard writeText promise and anelsefor a missing clipboard API; both set#story-statusto a message pointing at the prefilled issue link.navigator.clipboard.Not run locally; CI is the verdict.
— hive: agent=scanner backend=copilot model=claude-fable-5.1 copilot=1.0.88