You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hiring is quietly becoming a regulated activity — pay-transparency laws across US states and the EU, Ontario's 2026 ESA posting rules, salary-history bans in ~20 states, Japan's MHLW fair-hiring framework. career-ops reads exactly the surfaces these laws regulate: posting text, application forms, process timelines, offer documents — and the interview conversation itself. This umbrella tracks the signals that check those surfaces against the candidate's own jurisdiction — a private, local, warn-only decision aid. Nothing here asserts an employer broke the law, auto-acts, or leaves the candidate's machine.
Status (updated 2026-08-10): 11 of 13 identified members merged. Two remain — see table.
Members
Member
Surface
Verified seed(s)
Issue
PR
Status
Rejection latency
Process timeline
Ontario ESA 45-day post-interview notification window
Ontario ESA floors + Waksdale v. Swegon whole-provision voiding doctrine (2020 ONCA 391); candidates: UK ERA s.86/WTR 5.6wk, Germany §622 BGB/BUrlG, EU WTD 4wk, Japan LSA art.39
MERGED — shipped as Block G Signal 6; retrofit candidate: a jurisdiction table (California AB5 ABC test, Ontario Digital Platform Workers' Rights Act) would bring it up to this umbrella's verified-seed contract
Agency/recruiter licensing check
Posting (keyed to who posted)
Ontario THA/recruiter licensing (ESA + O. Reg. 99/23, mandatory since 2024-07-01) + the ministry's public licence-status checker
MERGED — shipped as Block G Signal 10; zero-fetch by design — points the candidate at the official registry, never scrapes or asserts unlicensed status; composes with the tracker's via={Agency} field (#1596)
Table-freshness validator
(infrastructure — keeps every row above true over time)
enforces the as_of / next_effective contract the table headers already carry
MERGED — zero-LLM watchdog (expired = exit 1, review-due = soft); schema-agnostic runtime discovery — empty main is designed behavior, picks up member tables automatically as they land; monthly Action deferred to v2
Vacancy-status disclosure
Posting
Ontario existing-vacancy statement requirement
to follow
—
NOT STARTED — previously blocked on #1938's cross-source (platform vs employer page, same req ID) machinery; #1938 has since merged, so this blocker should be clear — needs re-confirmation before picking up
AI-screening disclosure
Posting / portal
—
parked
—
NOT STARTED — honest version is disclosure capture feeding the ATS-channel analytics (#1404/#1405) — touches the analytics layer and ADR #1754's review bar; needs its own scoping pass before an issue can be filed
The shared contract
Every member follows it; the merged PRs pin most of it in tests:
Generic engine + jurisdiction-keyed table. The check logic is universal; only data rows are local. Never a Canada feature — Ontario is just the most frequent first seed, the same way modes/de seeded the market modes. (The covenant member's lead seed is California; the interview member's second seed is Japan.)
Seed discipline: no table entry without a citable legal source and an effective date. Candidate rows can be broad (listed as comments); seeds must be narrow and verified.
Phrasing discipline: state the verifiable fact about the text/timeline ("this range is $90K wide; O. Reg. 476/24 caps covered ranges at $50K") — never "this employer is breaking the law." Employer size, posting type, and exemptions aren't verifiable from a JD. Not-legal-advice notes throughout.
Coordination items for whoever reviews the cluster
The "Signal 9" renumber dance during the review window is now resolved — all merged members have their final Signal numbers in the table above.
If a single consolidated templates/jurisdiction-*.yml is preferable to per-feature tables, that call is best made here before more members land — happy to consolidate.
Contributions of verified jurisdiction rows (US states, EU member-state transpositions of Directive 2023/970, anywhere with regulator-grade sources) are the most valuable way to help. Want to pick something up? Comment on the specific issue, not here.
Hiring is quietly becoming a regulated activity — pay-transparency laws across US states and the EU, Ontario's 2026 ESA posting rules, salary-history bans in ~20 states, Japan's MHLW fair-hiring framework. career-ops reads exactly the surfaces these laws regulate: posting text, application forms, process timelines, offer documents — and the interview conversation itself. This umbrella tracks the signals that check those surfaces against the candidate's own jurisdiction — a private, local, warn-only decision aid. Nothing here asserts an employer broke the law, auto-acts, or leaves the candidate's machine.
Status (updated 2026-08-10): 11 of 13 identified members merged. Two remain — see table.
Members
via={Agency}field (#1596)as_of/next_effectivecontract the table headers already carryexpired= exit 1,review-due= soft); schema-agnostic runtime discovery — empty main is designed behavior, picks up member tables automatically as they land; monthly Action deferred to v2The shared contract
Every member follows it; the merged PRs pin most of it in tests:
modes/deseeded the market modes. (The covenant member's lead seed is California; the interview member's second seed is Japan.)Where a new member's section lives (by surface)
modes/oferta.mdBlock G — currently at Signal 10 (Agency Licensing Check), so a new posting-surface signal is Signal 11modes/offer-prep.mdmodes/interview-redflag.mdmodes/followup.mdCoordination items for whoever reviews the cluster
templates/jurisdiction-*.ymlis preferable to per-feature tables, that call is best made here before more members land — happy to consolidate.Contributions of verified jurisdiction rows (US states, EU member-state transpositions of Directive 2023/970, anywhere with regulator-grade sources) are the most valuable way to help. Want to pick something up? Comment on the specific issue, not here.