Row extension
Add a tag to an existing row with pipe inclusion: [ 'row | :new(T) ]. Same listing rhythm as exact aliases such as [ :ready | :error(String) ]. [> ...] is reserved for lower-bound rows, not ordinary extension through an existing row variable or alias. Polymorphic extension uses open-binder. Smaller rows widen into larger row-extension types, implicitly when required by an annotation or explicitly with coercion (value :> Target). Remove tags with row-subtraction. [lacks](lacks-constraint.md) applies when tag uniqueness matters — usually inferred, not written.