Platform · Building · new here
Schema-first canonical comp-data normalizer (US11829954B2 design-around)
Ingests HETEROGENEOUS compensation records (arbitrary pay-component labels, periods, currencies, FTEs) and maps every component onto a CANONICAL COMP SCHEMA: classified base/variable/commission/allowance, converted to one display currency, annualized, and FTE-normalized -> canonical records + per-class totals. A DATA-QUALITY report (missing currency, missing/mismatched period, unmapped class, unknown FX rate, negative amount) is emitted as a BYPRODUCT of schema conformance -- it never compares against an expected payroll amount and removing it would change no normalized number. Deterministic, stateless, pure compute; static FX snapshot, no live source/API key. IP-clean design-around of in-force US11829954B2: that patent is an ERROR-DETECTION-FIRST pipeline that normalizes commission & performance-pay to FLAG PAYROLL ERRORS; this inverts the posture -- normalization is primary, anomaly/quality flags fall out of canonicalization rules. The missing front-door COMPLEMENT (not a fork) to anycomp.onboarded-roster (which assumes already-normalized rows) and wage-compliance/currency (single-amount FX) -- it produces the single comparable canonical basis those primitives assume, feeding benchmark integrity.
- Cluster
- Platform
- Type
- algo
- Status
- Building
- Used by
- Not yet integrated into a consumer product
Maturity evidence
- Functioning
- core/comp-normalizer.ts (component-class inference + period annualization + static-table FX conversion + FTE normalization + quality byproduct) + REST (POST /api/spokes/comp-normalizer/normalize, service-key gated) + MCP (comp-normalizer.normalize) wired from one contract; 17 passing tests (tsx --test src/spokes/comp-normalizer/tests/comp-normalizer.test.ts) incl. messy multi-source canonicalization, monthly->annual + GBP->USD + FTE normalization, byproduct quality flags (missing-currency/period-mismatch/unmapped-class/unknown-FX), determinism, honest clean/empty cases; changed-files typecheck clean, check:spokes (0 required gaps) + check:standards green.
- Valuable
- Schema-first comp-normalization front door routed from the patent-radar sweep; complements anycomp.onboarded-roster (already-normalized rows) + wage-compliance currency (single-amount FX) and feeds benchmark integrity (like-for-like comparison needs one canonical basis). No live consumer yet, and IN-FORCE patent -- pending legal review on the non-infringement path before any commercial use.
- Understood
- spoke README (claim-vs-design-around table, synthesis decision vs anycomp.onboarded-roster + wage-compliance/currency, mermaid of heterogeneous records -> classify -> canonicalize -> canonical records + quality report) + docs/SURFACE.md + CHANGELOG.
- Integrated
- REST + MCP from one declaration on branch feat/comp-normalizer-us11829954b2 (PR open, NOT merged); registry + discovery + register-tools + health-aggregate + drizzle + db-barrel wired. No live consumer wiring yet.
How to use it
- REST
- /api/spokes/comp-normalizer/normalize
- MCP
- comp-normalizer.normalize
- Data
- src/spokes/comp-normalizer/core/comp-normalizer.ts
Other Platform capabilities
- Comp audit self-serve — CSV intake, free validate, commerce-gated watermarked run (HO-155)
- Gift pass — gifted ownership on the entitlement store (magic-link claim)
- JobFrame canonical Job Family × Focus × Level taxonomy + classifier
- SMB pay-system wizard — chocolate/vanilla over the pay-system catalog
- Support channel — portfolio-wide /support form → ticket store → operator email
- Ask-your-data — generalizable NL→rank→tier→cite spoke (HO-378)
- Diagnostic acquisition — next-best-ask over a live hypothesis set
- Executive-Priorities Elicitation Instruments (static catalog)
Capability detail sourced from the People Analytics Toolbox capability feed (source of truth), snapshot retrieved 2026-07-23.