Takehome

Changes

Machine-readable log of the engine and the public site. Subscribe via RSS. Source: web/site/src/data/changelog.json.

0.5.0-m4 — year projection, Option 2, 2027 preview, conformance

· 0.5.0-m4

M4 engine: batch, year projection with CPP/EI caps, Option 2 with a PDOC caveat, signed rule-change webhooks, 2027 preview labelled proposed. Conformance re-run: overall PDOC rate still 8838/9002. New classes named (bonus pending, year invariants, Option 2 worked examples). All 164 M-003 disagreements remain listed. rounding_compat pdoc stays NotImplemented.

Unreleased — 2027 CPP preview rule set

· unreleased-cpp-2027-preview

data/rules/2027-01-01/ ships as a proposed preview: CPP employee total 5.75% (base 4.75%), maximums held against 2026 YMPE, BC indexation paused. A 2027 as_of returns the set with a RULE_SET_PROPOSED warning naming the 2026-04-28 announcement. Do not file from that number.

Unreleased — rule-set diff, webhooks, T4127 pin watch

· unreleased-rules-watch

GET /v1/rules/diff compares two editions field by field. Account webhooks deliver an HMAC-signed rule_set.changed payload with retries and replay. A scheduled rules-watch job pins the T4127 index, edition pages, and CSV bundle and opens an issue with the unified diff on drift.

Unreleased — embeddable take-home widget

· unreleased-embed

One script tag, same T4127 WASM engine, no cookie and no salary posted back. Demo and a pitch for job boards, recruiters, and relocation services at /embed/.

Unreleased — five-minute API path

· unreleased-five-minute

Docs in the header. Email, verify, test key, first call. Ontario weekly $1000 on 2026-01-15 returns net_pay 800.79.

Unreleased — Worker API

· unreleased

Cloudflare Worker API (POST /v1/deductions and M3 GET surfaces) over the WASM engine. Unknown fields named; out-of-range as_of rejected; OpenAPI generated from the same schemas.

Unreleased — self-serve keys and CAD billing

· unreleased-keys

np_test_ and np_live_ keys, hashed at rest. Metering counts calculations. Live keys hard-stop at the published CAD plan limit. Signup is email, verify, keys, first call.

Unreleased — 200 pages, RSS, CPP 2027

· unreleased-pages

Site catalog expanded to 200 HTML pages from four templates (employee, employer, situational, reference). /conformance renders the full disagreement list. /changes has an RSS feed. /cpp-2027-rate-change published ahead of the 2027 T4127 edition.

0.3.0-m2 — thirteen jurisdictions, 164 M-003 rows

· 0.3.0-m2

Thirteen-jurisdiction T4127 engine (both 2026 editions); Quebec remains typed unsupported. July PDOC queue finished: 8,818/8,982 compared forms; 164 one-cent M-003 disagreements counted; 780 step-2 non-advances named out of the rate. Overall PDOC agreement 8,838/9,002 including M1. Finding 002 remains open.

0.2.0-m1 — Ontario PDOC 20/20

· 0.2.0-m1

M0: fixed-point decimal type and CRA rounding rules. M1: Ontario PDOC 20/20.