/claim #17
@algora-pbc /claim #17
Summary
Adds a distinct multilingual-entity-alias-guard/ slice for Scientific Knowledge Graph Integration.
The guard normalizes multilingual scientific mentions before they become graph nodes, entity-page aliases, or recommendation signals. It accepts trusted translated aliases only when numeric confidence evidence is present, preserves original language tags, normalizes language-tag casing plus underscore and hyphen regional subtags for lookup, emits JSON-LD/schema.org-style entity packets, holds homographs, false friends, same-language alias collisions, extractor-candidate/alias conflicts, regional-tag homographs, malformed top-level corpus packets, malformed alias evidence, malformed mention entries or mention text, and mixed-script Latin-language lookalikes including lowercase Greek or Cyrillic confusables for curator review, suppresses low-confidence or missing-confidence aliases before graph recommendations are shown, and handles sparse or malformed ontology/corpus exports without runtime failures when corpus shape, localized names, mentions, or homograph policies are omitted or malformed.
Hardening Updates
44c44c3: malformed top-level corpus packets such as evaluateAliasGuard(null) now emit a high-priority malformed-corpus-packet curator hold and review-multilingual-malformed-corpus action instead of crashing at corpus.entities before graph evidence is produced.
- Added
malformed-corpus-packet.json and refreshed the generated Markdown evidence so reviewers can inspect the held malformed-corpus path directly.
- Malformed mention rows such as
mentions: [null] now emit malformed-mention-entry curator holds with high-priority review-multilingual-malformed-mention actions instead of crashing before graph packets are produced.
- Malformed localized-name evidence is omitted from alias lookup and JSON-LD alternate names, with
aliasEvidenceIssues preserved in the reviewer packet instead of crashing alias indexing.
- Malformed mention text values emit
malformed-mention-text curator holds with high-priority review-multilingual-malformed-mention actions instead of crashing normalization or reaching recommendation-safe IDs.
- Extractor candidate IDs that disagree with trusted multilingual alias lookup are held for curator review instead of silently overriding either signal.
- Same-language translated alias collisions are held for curator review instead of silently attaching a mention to the wrong canonical entity.
- Unicode NFKC normalization and whitespace collapsing prevent trusted translated aliases from being suppressed because of composed/decomposed accents or spacing differences.
- Language-tag casing is normalized for alias lookup while the original tag remains preserved in the decision packet.
- Regional language tags such as
es-MX and underscore tags such as es_MX fall back to base-language alias and homograph policy while preserving the original tag.
- Missing or non-numeric confidence evidence suppresses candidate alias recommendations instead of allowing an unproven canonical entity mapping.
- Mixed-script Latin-language aliases with Cyrillic or Greek lookalike characters are held for curator review before graph edges or recommendations are produced.
- Sparse ontology/corpus exports emit deterministic empty review or entity-alias evidence when
localizedNames, mentions, or homographs are omitted, instead of throwing before curator policy can run.
Non-overlap
This is scoped to multilingual scientific alias quality before graph nodes and recommendations are produced. It does not duplicate broad entity extraction/navigation, ontology deprecation or synonym migration, recommendation visibility/diversity, geospatial provenance, organism/strain boundaries, clinical trial, biological accession, software runtime, protocol deviation, sample custody, or temporal validity guards.
Validation
- Latest malformed top-level corpus regression failed before implementation with
TypeError: Cannot read properties of null (reading 'entities') when evaluateAliasGuard(null) ran before graph packet generation.
- Prior malformed-row regression failed before implementation with
TypeError: Cannot read properties of null (reading 'language') when mentions contained a null row.
- Earlier red regressions covered malformed localized-name evidence and malformed mention text crashes before implementation.
cd multilingual-entity-alias-guard && npm test passed: 22 tests.
cd multilingual-entity-alias-guard && npm run check passed test, demo, and video generation.
node --check passed for index.js, demo.js, and test.js.
- Parsed all seven generated JSON packets successfully, including
malformed-corpus-packet.json.
ffprobe verified multilingual-entity-alias-guard/reports/demo.mp4 as H.264, 1280x720, 4s, 30fps, 120 frames, 50,413 bytes.
git diff --check and git diff --cached --check passed; Git only reported Windows line-ending normalization warnings before staging.
- Staged allowlist validation confirmed all staged paths were under
multilingual-entity-alias-guard/.
- Focused payout/contact, credential, and token scan returned no matches.
- GitHub PR merge state after push:
CLEAN; no check contexts are reported for this branch.
Demo Artifacts
multilingual-entity-alias-guard/reports/alias-guard-packet.json
multilingual-entity-alias-guard/reports/sparse-alias-guard-packet.json
multilingual-entity-alias-guard/reports/candidate-alias-conflict-packet.json
multilingual-entity-alias-guard/reports/malformed-alias-evidence-packet.json
multilingual-entity-alias-guard/reports/malformed-mention-text-packet.json
multilingual-entity-alias-guard/reports/malformed-mention-entry-packet.json
multilingual-entity-alias-guard/reports/malformed-corpus-packet.json
multilingual-entity-alias-guard/reports/alias-guard-report.md
multilingual-entity-alias-guard/reports/summary.svg
multilingual-entity-alias-guard/reports/demo.mp4
Synthetic data only. No credentials, private corpora, live ontology calls, search indexes, recommendation systems, or external APIs are used.
AI-assisted with OpenAI Codex; I reviewed and locally verified the diff before submitting.