Skip to content

fix(security): fail closed on hostile clipboard throw values - #351

Draft
seonghobae wants to merge 6 commits into
mainfrom
fix/clipboard-hostile-throw-349
Draft

fix(security): fail closed on hostile clipboard throw values#351
seonghobae wants to merge 6 commits into
mainfrom
fix/clipboard-hostile-throw-349

Conversation

@seonghobae

Copy link
Copy Markdown
Contributor

Scope

Test-first repair for #349 on the deterministic local SafeClipboard adapter boundary only. No transport, persistence, auth, tenancy, credential, model/provider, network, deployment, retention, durable-audit, or clipboard-exfiltration authority is added.

Current state: hosted RED pending

  • Base: protected main@e8109ec2a17de8bd6594487aa12c8c8a93cb2c03.
  • RED commit: 758c36c05f104be0cc6b608acd5c753ea5b9b709.
  • The new regression drives the real ProseMirror transformPastedHTML adapter with a host config getter that throws a Proxy whose getPrototypeOf trap throws a private sentinel.
  • Protected production currently classifies the unknown thrown value with instanceof, so the expected hosted failure is the private sentinel escaping instead of '' plus a stable redacted invalid_html error.

Production code is intentionally unchanged until exact-head hosted RED is observed. After RED, the smallest repair will replace prototype inspection with a side-effect-free module-owned brand/check for genuine ClipboardSanitizationError values and normalize every other thrown value without inspecting it.

Integration boundary

Keep Draft/unmerged while #118 owns the unchanged exact protected v0.6.0 publication source identity.

Refs #349

@coderabbitai

coderabbitai Bot commented Aug 15, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 34d9a82d-5cb4-48a6-9058-e4e64a7c854d

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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