Selection anchors are product state

When a user selects text or math, the product receives a durable intent, not a temporary highlight.

AnyReader codebase research/knowledge/selection-anchors-are-product-stateknowledge.trace("selection-anchors-are-product-state")Working

Signal

When to use it

Use when implementing quote, highlight, annotation, QA, or reading-progress behavior.

Principle

What it protects

It prevents teams from treating DOM selection as enough. Durable reading products need stable anchors, source context, quote hashes, replay behavior, and tests for Markdown, math, and cross-block selection.

Reference

How to cite it

Use this when planning tests for Markdown rendering, math selection, QA records, or article interaction components.

knowledge.trace("selection-anchors-are-product-state")

Where this idea is used.