Rules studio · configuration is effective-dated & versioned; posted runs stay reproducible
Rules & pay codes
Every uncertain input is visible, labeled and editable
Assumptions & parameters registry
| Parameter | Value | Unit | Status | Notes | |
|---|---|---|---|---|---|
| CUPE initiation fee (one-time) dues.cupeInitiation | $ | workbook | Sheet 3-Pay Rules. | ||
| CUPE dues rate dues.cupeRate | % | workbook | Sheet 3-Pay Rules. | ||
| ONA dues (flat, first pay of month) dues.onaFlat | $ | workbook | Sheet 3-Pay Rules. | ||
| OPSEU dues rate dues.opseuRate | % | workbook | Sheet 3-Pay Rules. | ||
| CUPE RN/RPN wage top-up pay.rnTopUp | $/h | workbook | Sheet 3-Pay Rules: nurses get an extra $3/h worked. | ||
| FT float days granted per year policy.floatDaysPerYear | days | workbook | Sheet 3: 'about 5 float days a year'. | ||
| ONA 'first pay of month' convention policy.onaDuesMonthKey | enum | DEMO — unverified | 'First pay of the month' interpreted as the first pay period beginning in the calendar month (period 2026-09-05→09-18 is the first September period, so ONA dues apply this run). Alternative CHEQUE_DATE convention is configurable. Impact: decides whether ONA flat dues are charged in a run; for this demo period, charging the dues matches the County's expected results. | ||
| OT banked-in factor (non-union managers) policy.otBankFactorManagers | × | workbook | Sheet 3: managers bank overtime at straight time (1×). | ||
| OT banked-in factor (union groups) policy.otBankFactorUnion | × | derived | County ground truth banks overtime hour-for-hour (credit 1.0). Editable per rule group. Aligned to County ground truth validated in the prior engagement (252/252 figures). Impact: OT bank balance column of the pay-run results sheet — value proven against the County's expected results. | ||
| FT sick days granted per year policy.sickDaysPerYear | days | workbook | Sheet 3: 'about 10 days a year'. | ||
| Stat-worked premium portion policy.statWorkedPremium | × | workbook | 2A note: 'Stat worked — half-time premium portion'; regular portion is paid under the regular code, 1.5× in total. | ||
| FT vacation entitlement tiers policy.vacationTiers | json | DEMO — unverified | Sheet 3 lists example tiers (15/20/25/30 days) without year thresholds; DEMO thresholds used for the C5 rollover. Editable. Impact: year-end rollover grants only; the pay-run results sheet is unaffected. | ||
| CUPE weekend premium premium.cupeWeekend | $/h | derived | County ground truth captures premium hours at $0/h — CBA dollar rates are not supplied with the dataset. Set the CBA rate here when provided. Aligned to County ground truth validated in the prior engagement (252/252 figures). Impact: premium lines within Gross (currently $0/h, matching the County's expected results). | ||
| Non-union shift premium premium.nonUnionShift | $/h | derived | Shift starts after 4:30 p.m. with majority of hours 4:30 p.m.–7 a.m. County ground truth captures hours at $0/h (rate not supplied). Aligned to County ground truth validated in the prior engagement (252/252 figures). Impact: premium lines within Gross (currently $0/h, matching the County's expected results). | ||
| ONA evening premium premium.onaEvening | $/h | derived | County ground truth captures premium hours at $0/h (CBA rate not supplied; legacy Sheet4 hints $2.50/h). Editable. Aligned to County ground truth validated in the prior engagement (252/252 figures). Impact: premium lines within Gross (currently $0/h, matching the County's expected results). | ||
| ONA night premium premium.onaNight | $/h | derived | County ground truth captures premium hours at $0/h (CBA rate not supplied). Editable. Aligned to County ground truth validated in the prior engagement (252/252 figures). Impact: premium lines within Gross (currently $0/h, matching the County's expected results). | ||
| ONA weekend premium premium.onaWeekend | $/h | derived | County ground truth captures premium hours at $0/h (CBA rate not supplied). Editable. Aligned to County ground truth validated in the prior engagement (252/252 figures). Impact: premium lines within Gross (currently $0/h, matching the County's expected results). | ||
| OPSEU shift premium (6 p.m.–7 a.m.) premium.opseuShift | $/h | derived | County ground truth captures premium hours at $0/h (CBA rate not supplied). Excludes temporary/contract staff per rules. Aligned to County ground truth validated in the prior engagement (252/252 figures). Impact: premium lines within Gross (currently $0/h, matching the County's expected results). | ||
| Cheque date for period 2026-09-05 → 09-18 schedule.chequeDate | date | DEMO — unverified | Workbook gives the period only via 2A transaction dates. Cheque date assumed 4 business days after period end. Impact: display only — no dollar amount depends on it; the pay-run results sheet is unaffected. | ||
| CPP basic exemption (annual) cpp.exemptionAnnual | $/yr | DEMO — unverified tax year 2026 | DEMO value; per-pay exemption = annual / 26. Impact: changes the CPP column of the pay-run results sheet (and net pay) — one of only two DEMO values that reach the County's comparison columns. | ||
| CPP employee rate cpp.rate | rate | DEMO — unverified tax year 2026 | DEMO value. Authoritative 2026 CRA rate not supplied with the workbook. Editable; results are not production-certified. Impact: changes the CPP column of the pay-run results sheet (and net pay) — one of only two DEMO values that reach the County's comparison columns. | ||
| CPP2 rate (YMPE→YAMPE band) cpp.rate2 | rate | derived tax year 2026 | Second-tier CPP rate per the County-validated ruleset. Aligned to County ground truth validated in the prior engagement (252/252 figures). Impact: CPP column of the pay-run results sheet — method proven against the County's expected results. | ||
| CPP2 upper ceiling (YAMPE, annual) cpp.yampeAnnual | $/yr | derived tax year 2026 | Second-tier CPP ceiling per the County-validated ruleset; CPP2 applies between the YMPE and YAMPE per-pay slices. Aligned to County ground truth validated in the prior engagement (252/252 figures). Impact: CPP column of the pay-run results sheet — method proven against the County's expected results. | ||
| CPP YMPE (annual earnings ceiling) cpp.ympeAnnual | $/yr | derived tax year 2026 | 2026 CPP ceiling per the County-validated ruleset — distinct from the OMERS YMPE ($72,600). Applied as a per-pay slice (annual/26) because no YTD inputs ship with the workbook. Aligned to County ground truth validated in the prior engagement (252/252 figures). Impact: CPP column of the pay-run results sheet — method proven against the County's expected results. | ||
| EI employer multiplier ei.employerMultiplier | × | DEMO — unverified tax year 2026 | DEMO value. Editable. Impact: employer cost only — never the employee's pay; not on the pay-run results sheet. | ||
| EI maximum insurable earnings (annual) ei.mieAnnual | $/yr | derived tax year 2026 | 2026 MIE per the County-validated ruleset; applied as a per-pay slice (annual/26) absent YTD inputs. Aligned to County ground truth validated in the prior engagement (252/252 figures). Impact: EI deduction (net pay) only — the County's results template has no EI column, so the comparison sheet is unaffected. | ||
| EI employee rate ei.rate | rate | derived tax year 2026 | 2026 EI rate 1.63% per the County-validated ruleset; capped at the per-pay MIE slice ($68,900 / 26). Impact: EI deduction (net pay) only — the County's results template has no EI column, so the comparison sheet is unaffected. | ||
| OMERS rate above per-pay YMPE threshold omers.highRate | rate | workbook tax year 2026 | Sheet 3-Pay Rules: 14.6% above the per-pay threshold. | ||
| OMERS rate up to per-pay YMPE threshold omers.lowRate | rate | workbook tax year 2026 | Sheet 3-Pay Rules: 9% up to YMPE. | ||
| OMERS YMPE (annual) omers.ympeAnnual | $/yr | workbook tax year 2026 | Sheet 3-Pay Rules: 'YMPE ($72,600 annual)'. | ||
| Income tax flat rate (DEMO) tax.flatRate | rate | DEMO — unverified tax year 2026 | Flat demo rate standing in for CRA federal+ON tables, which are out of scope for the demo. Per-employee overrides supported (acceptance A2). Not production-certified. Impact: net pay only — the County's results template has no income-tax column, so the comparison sheet is unaffected. |
⚠ Parameters marked DEMO stand in for authoritative 2026 statutory values that were not supplied with the workbook. Results using them are not production-certified; each edit is versioned and audited.