githubnext/chopinPublic

Let's compose rich plans together

Apply the stricter URL rules only to links a change introduces

Whole-document validation runs when a room opens, restores, rebuilds and
checks each batch, so refusing hidden-character and protocol-relative
links there would lock people out of documents stored before the rule.
The rule now lives in assertIntroducedUrls, which judges only URLs absent
from the previous version: human batches, Planner and MCP edits, and new
documents. Stored documents keep opening, syncing and taking edits.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
C5MAMaggie Appleton and Claude Opus 5.5 authored
2a7aa2fPatch
Parentdb1b8fd
9 files changed+176-28
StackedSplit
apps/server/src/mcp/create.ts+16 −1
apps/server/src/plan/edit.test.ts+13 −0
apps/server/src/plan/edit.ts+3 −1
apps/server/src/plan/room.test.ts+47 −0
apps/server/src/plan/room.ts+2 −0
apps/server/src/plan/service.ts+3 −1
packages/dialect/src/dialect.test.ts+35 −9
packages/dialect/src/index.ts+1 −1
packages/dialect/src/validate.ts+56 −15