---
title: "Verify Unicode search matches equivalent text forms"
description: "Check localized search with composed and decomposed accented text, verifying expected matches without stripping meaningful distinctions or corrupting names."
canonical_url: "https://vostride.com/agent-library/localization/unicode-search-normalization.md"
md_url: "https://vostride.com/agent-library/localization/unicode-search-normalization.md"
content_kind: "recipe"
topic: "localization"
---

# Verify Unicode search matches equivalent text forms

Check localized search with composed and decomposed accented text, verifying expected matches without stripping meaningful distinctions or corrupting names.

## Risk

Text that looks identical can have different Unicode representations. Search behavior should follow an explicit product normalization policy, while saved user-visible names preserve their approved spelling and remain distinguishable from nearby controls.

## Fixtures

- An owned sandbox directory containing a composed accented name, an equivalent decomposed-query fixture, and a deliberately different unaccented control name.
- A product search specification describing whether canonical equivalents and accent-insensitive variants should match.
- A read-only record manifest with exact Unicode strings and immutable identifiers; prepare copyable query values outside the test to avoid accidental normalization.

## Steps

1. Open the directory and verify the composed fixture name and control record are separately identifiable.
2. Search using the prepared decomposed equivalent and verify the result identifier set matches the product canonical-equivalence policy.
3. Open the intended accented record and verify its displayed spelling and identifier remain intact.
4. Search using the unaccented control query and verify the result set follows the separately documented accent-sensitivity rule.
5. Inspect the independent directory oracle and verify no saved name changed during either search and that the originally composed record retains its approved text.

## Expected results

- Canonical-equivalent query handling matches the explicit search specification.
- The unaccented control follows the product accent policy rather than an assumed universal rule.
- Searching does not normalize or overwrite stored display names as a side effect.

## False-pass traps

- Typing a query manually may normalize it before the application receives it, bypassing the intended fixture.
- Matching the right visible spelling without checking identifiers can hide unintended merged results.

## Cleanup

- Clear the test search history and remove only the disposable directory fixtures.

## Use with agent-qa

Adapt this test design to your application's acceptance criteria and configured target using the [recipe execution guide](/agent-library/software-factory/turn-a-recipe-into-an-agent-qa-test.md). External fixture setup and non-UI checks require your own supported hooks or test tooling. Validate the authored test, execute it, and inspect the completed evidence; this recipe is not a recorded test result.

## References

- [agent-qa first test](/docs/agent-qa/guides/first-test.md)
- [agent-qa hooks](/docs/agent-qa/guides/hooks.md)
- [agent-qa test](/docs/agent-qa/configuration/test.md)

- [Localization QA recipes](/agent-library/localization.md)
- [Software factory QA library](/agent-library.md)
