CTR-HCM · version 2
Core HR and Payroll — Worker records
The most heavily conditioned contract on the estate. Every field carries a lawful basis and four fields are excluded outright.
What the contract says
These are the terms the connector is generated against. A source that stops matching them is a drift finding, not a silent data change.
Review state
Neither review is performed by the team that wrote the contract.
Validation and drift
Drift is only detectable on a contract that has been read against a sample.
The field list
7 fields · 1 key · 3 personal. The validation rule on each row is what admits or rejects a record at the staging boundary.
| Field | Source | Target | Type | Flags | Drift | Validation |
|---|---|---|---|---|---|---|
| Worker id | Worker.Worker_ID | worker.ref | string(12) | keypersonalconfidential | In contract | Stable across the employment lifecycle. Never reused. |
| Position id | Position.Position_ID | worker.positionRef | string(12) | internal | In contract | Must resolve to a position in the org structure. |
| Cost center | Position.Cost_Center | worker.costCenter | string(10) | internal | In contract | Drives cost attribution. Null is a contract violation on an active worker. |
| Employment country | Worker.Country | worker.jurisdiction | string(2) | internal | In contract | ISO 3166-1 alpha-2. Determines the residency placement and the works-council obligation. |
| Full-time equivalent | Position.FTE | worker.fte | decimal(4,3) | internal | In contract | Between 0 and 1. Above 1 quarantines. |
| Compensation | Worker.Base_Pay | (excluded) | decimal(15,2) | nullablepersonalrestricted | In contract | Excluded from the contract. The platform has no use for individual compensation and does not ingest it. |
| Performance rating | Worker.Rating | (excluded) | string(4) | nullablepersonalrestricted | In contract | Excluded. Named in the works-council pack as a field the platform will not read. |
What has passed the staging boundary against this contract
2 batches · 6,164 arrived · 6,062 admitted · 102 quarantined · 0 rejected
| Batch | Arrived | In | Admitted | Quarantined | Rejected | Result | Gate |
|---|---|---|---|---|---|---|---|
| STG-0012 | Aug 18, 05:00 | 3,120 | 3,056 | 64 | 0 | Partly admitted | 3,056 admitted · 64 quarantined · 0 rejected outright. |
| STG-0013 | Aug 18, 01:00 | 3,044 | 3,006 | 38 | 0 | Partly admitted | 3,006 admitted · 38 quarantined · 0 rejected outright. |
Rejects raised against these batches
3 reasons covering 102 records. Each one names a field, what was observed and what the contract expected.
Replay windows
1 window recorded against this contract.
Write-back routes into this system
1 route designed against Core HR and Payroll.
What goes stale when this feed does
2 asserted figures depend on Core HR and Payroll. The rule on each row is what the surface does when the feed misses its commitment.
| Figure | Where it is shown | Role | On stale | Note |
|---|---|---|---|---|
| Cost per transaction | AI GBS towers | contributing | Mark it stale | Loaded labor cost is the largest component of the numerator. |
| Worker records in scope | Human resources cockpit | primary | Suppress the figure | There is exactly one worker master. A stale read here would misstate every per-head figure downstream. |
A contract, a validation rule, a freshness commitment and a replay path are real mechanisms and they are what this wave builds. What they are not is a connection. No connector on this estate is attached to a customer instance, so every batch, every replay and every write-back attempt recorded here ran against a modeled extract or a sandbox, and the registry keeps saying modeled.
The last validation read 3,000 records 14 days ago, which is 71% of a single day at the declared volume. A sample proves the shape of what it read and nothing beyond it.