trustgraph/tests
Wei Xu f106ae2103
fix: preserve non-ASCII entity names in ontology URI normalization (#1036)
The entity URI normalizer stripped every non-ASCII character via the
ASCII-only patterns `[^a-z0-9\-.]` and `[^a-z0-9\-]`. For non-Latin
entity names (e.g. Chinese), this deleted the entire name, so distinct
entities collapsed onto the same URI (".../<ontology>/-"), silently
merging unrelated nodes and breaking OntoRAG for non-English content.

Switch both filters to `[^\w\-.]` / `[^\w\-]`. In Python 3, `\w` is
Unicode-aware for str patterns, so non-ASCII letters (CJK, etc.) are
preserved while punctuation and symbols are still removed. ASCII
behaviour is unchanged: names are lowercased and underscores converted
to hyphens before the filter runs, so for ASCII input the patterns are
equivalent to the originals.

Adds tests covering ASCII regression guards and non-ASCII names/types,
including the core case that two distinct Chinese entities must not
collapse onto the same URI.

Co-authored-by: arthurxuwei <5179840+arthurxuwei@users.noreply.github.com>
2026-07-09 00:05:35 +01:00
..
contract feat: structured source document references in graph-rag responses (#1035) 2026-07-08 23:59:56 +01:00
integration feat: structured source document references in graph-rag responses (#1035) 2026-07-08 23:59:56 +01:00
unit fix: preserve non-ASCII entity names in ontology URI normalization (#1036) 2026-07-09 00:05:35 +01:00
utils Add agent explainability instrumentation and unify envelope field naming (#795) 2026-04-13 16:16:42 +01:00
__init__.py Test suite executed from CI pipeline (#433) 2025-07-14 14:57:44 +01:00
conftest.py Feat: TrustGraph i18n & Documentation Translation Updates (#781) 2026-04-14 12:08:32 +01:00
pytest.ini Optional test warning suppression (#923) 2026-05-15 12:58:12 +01:00
requirements.txt Test suite executed from CI pipeline (#433) 2025-07-14 14:57:44 +01:00