# Tasks: enterprise-domain-normalizer ## 1. Scaffold - [x] 1.1 `universal/data/domain-normalizer/` skeleton; 100/100/100/100; guard tests; CLAUDE/README/FOLDERS. ## 2. Errors + schemas - [x] 2.1 `src/errors/*.ts` — codes. - [x] 2.2 Zod schemas. ## 3. Aliases - [x] 3.1 `src/core/aliases/aliases.ts` — `BUILT_IN_ALIASES` (curated list: m./mobile./amp./lite./www. → canonical), cache + reset. ## 4. Normaliser - [x] 4.1 `src/core/normalizer/normalizer.ts` — `normalizeDomain`, `normalizeUrl`, `getRegistrableDomain` (via `tldts`), `getSubdomain`, `getDomainGroup`. - [x] 4.2 Idempotency property tests. ## 5. Matcher - [x] 5.1 `src/core/matcher/matcher.ts` — `matchDomains`, `computeSimilarity`, `findMatchingDomains`, `groupDomains`, `levenshteinDistance`. - [x] 5.2 Property test: `levenshteinDistance(a,a) === 0`; triangle inequality. ## 6. Co-located `.md` + unit tests per module ## 7. Barrel / subpath exports / README ## 8. Benchmarks - [x] 8.1 `normalize.bench.ts`, `matcher.bench.ts` on 10 k domain fixture. ## 9. Ship gate - [x] 9.1 Verification sequence; fold spec + archive.