# Tag

**Test family:** `TAG`

- **TAG-001** Create with case, accents, whitespace, punctuation, emoji, long, and normalization-equivalent names.
- **TAG-002** Duplicate policy is consistent across create/import/API/concurrency.
- **TAG-003** Add/remove one/many, max tags, typeahead, keyboard, and bulk action.
- **TAG-004** Rename/merge/delete updates all references, filters, counts, rules, and audit without losing history.
- **TAG-005** Private/tenant/global tags do not leak suggestions or membership.

## Comprehensive per-item coverage

- **TAG-006** Exercise absent, empty, ordinary, duplicate, boundary-size, over-limit, malformed, stale, and unknown values.
- **TAG-007** Use ASCII emoticons, emoji/ZWJ sequences, kaomoji, accents, mixed scripts, RTL, combining marks, confusables, and invisible characters in every textual value.
- **TAG-008** Use whitespace, tabs, newlines, delimiters, wildcards, operators, quotes, escapes, slashes, and encoded separators; parse only where the contract says.
- **TAG-009** Use inert markup, script, SQL, template, command, path, CSV-formula, header, and log-forging canaries; keep them data in every output context.
- **TAG-010** Compare UI, query string, path, JSON, form, import, API, database, cache, search index, analytics, and export representations.
- **TAG-011** Test case sensitivity, locale collation, normalization, stemming, tokenization, exact match, fuzzy match, and natural versus lexical ordering where relevant.
- **TAG-012** Create exact, case-variant, normalization-equivalent, and concurrently submitted duplicates; enforce explicit uniqueness atomically.
- **TAG-013** Change the underlying data while a query, filter, sort, grouping, or page is active; avoid omissions, duplicates, and stale totals.
- **TAG-014** Use owner, collaborator, restricted role, removed member, anonymous user, and another tenant; prevent hidden values from affecting visible counts or timing.
- **TAG-015** Deep-link, bookmark, share, refresh, duplicate the tab, navigate back/forward, and restore state; encode exactly once and reject tampering.
- **TAG-016** Import, export, copy, paste, bulk edit, migrate, and sync values; preserve identity and unknown/new values safely.
- **TAG-017** Retry after timeout, repeat the request, and operate offline/reconnected; avoid duplicate creation and silent state loss.
- **TAG-018** Use two sessions to edit definitions and applied state concurrently; expose conflicts and version decisions.
- **TAG-019** Delete, archive, restore, rename, merge, and reuse values; update references, URLs, caches, saved views, and audit coherently.
- **TAG-020** Verify keyboard operation, screen-reader labels/state/results, focus, error association, live announcements, and non-color distinctions.
- **TAG-021** Test narrow screens, zoom/reflow, long translations, RTL layout, locale changes, and unsupported glyph fonts.
- **TAG-022** Measure query, update, render, index, import, and export latency for empty, ordinary, and supported maximum datasets.
- **TAG-023** Cap expensive expressions, wildcards, nesting, fan-out, and user-controlled queries; cancel safely and protect shared capacity.
- **TAG-024** Log actor, query/definition version, target scope, old/new value, outcome, and correlation ID while redacting sensitive criteria.
- **TAG-025** Recover from partial index, cache, replica, or migration failure; detect divergence and provide reconciliation.

[Back to Search, filter, sort, group, and structured values index](../../find-organize.md)
