Skip to content

Phase 552: whiteboard drawing tool public activation contract #226

@ExplodingUFO

Description

@ExplodingUFO

Context

Phase 551 is the docs/tests-only queue refresh after Phase 550's whiteboard primitive Cookbook screenshot proof route. The stacked Phase 547-550 work proves internal model, renderer-neutral projection, persistence decision policy, and a visual proof route, but it still does not expose a public React Flow-style drawing tool activation contract.

The next implementation step needs a narrow host-facing activation contract before pointer gesture capture or toolbar UX is added.

Scope

Add the first public/host-facing whiteboard drawing tool activation contract:

  • define the smallest activation surface for rectangle/freehand primitive authoring modes;
  • keep activation separate from pointer gesture capture and renderer/persistence behavior;
  • decide whether the surface belongs in hosted authoring actions, editor command descriptors, a new tool-mode enum, or another existing seam;
  • add focused tests/docs proving the activation contract is discoverable and does not claim full drawing parity;
  • preserve existing selection modes and graph-selection commands.

Out of scope

No pointer gesture capture, no runtime drawing creation, no toolbar UI implementation, no eraser behavior, no persistence/schema changes, no renderer rewrite, no screenshot manifest expansion, no UI redesign, no retained API removal, and no full React Flow whiteboard parity claim.

Dependency / stacking

Depends on Phase 551 / PR TBD and must not merge before the post-Phase-550 queue refresh lands.

Acceptance criteria

  • The public/host-facing drawing tool activation contract is explicitly documented and guarded by focused tests.
  • Rectangle/freehand activation is separated from selection/lasso modes and from actual pointer gesture capture.
  • The supported claim remains an activation contract only, with no runtime drawing creation or full React Flow whiteboard parity claim.
  • Verification includes focused activation-contract tests, relevant docs tests, full affected test project(s), and git diff --check.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions