Legal guardrails: ban-the-box and protected-class safety

Hiring is the one place in Verinode where a wrong automated call has legal consequences, not just a bad business outcome. So Recruiting is built with a hard rule underneath every score, every stanc…

10 min read·Updated July 13, 2026
On this page

What these guardrails are

Hiring is the one place in Verinode where a wrong automated call has legal consequences, not just a bad business outcome. So Recruiting is built with a hard rule underneath every score, every stance, and every drafted decision: Verinode never evaluates a candidate on criminal history, salary history, or any protected-class attribute, and the moment a resume or note touches one of those subjects, the system stops trying to be smart about it and hands the call to you.

This isn't one screen. It's four layers that run every time a resume comes in, every time the applicant scorer runs, and every time the decision orchestrator clusters signals into a recommendation:

  1. Extraction never scores it. The applicant scorer is instructed to treat age, race, gender, religion, disability, veteran status, sexual orientation, marital and family status, political affiliation, criminal history, and salary history as absent, full stop, no scoring either direction.
  2. A ban-the-box flag forces operator review. If a resume mentions criminal history, the applicant record carries a flag that blocks the Draft Offer button and raises a Legal Review panel on the Context tab.
  3. The decision orchestrator overrides its own output. If any applicant behind a clustered recommendation carries that flag, the verdict is rewritten to "operator review required" after the fact, no matter what the underlying model call returned.
  4. Every render passes through a redaction filter. Work history, interview feedback, and talent pool notes are scanned for protected-class terms before they reach the screen, even though the extraction step already isn't supposed to produce them.

None of this scores, ranks, or decides anything about a candidate's fit. It exists so that the parts of hiring where Verinode does help, matching certifications, gauging experience, comparing peer-hired profiles, never brush up against the parts of hiring the law reserves for you.

Where you'll see it

Open Recruiting from the sidebar, at /recruiting. The guardrails don't live on a settings page; they surface directly on the records they protect:

  • An applicant's detail card, Context tab: the Legal Review panel (when triggered) and the disabled Draft Offer button.
  • The Why This Score modal, opened by clicking an applicant's score: the Legal Review Flag banner and the Risks Flagged list.
  • The Findings tab, on requisitions, applicants, and the portfolio level: clustered recommendations that carry a forced "Legal review required" prefix when a flagged applicant is behind them.
  • The applicant's stance pill, in the card header: reads Legal Review in Ember Red when the flag is active, alongside every other stance the applicant could carry (Healthy, Progressing, Watching, At Risk, Closed).

Guardrail 1: what extraction is never allowed to score

When a resume comes in, Verinode's applicant scorer runs against a fixed list of dimensions: certifications matched against the requisition's required and preferred cert stack, years of experience relative to the role's tier, how closely the applicant's profile resembles peers who stayed past 90 days in that role and state, location fit against your service area, and compensation fit against your published range.

That list is deliberately short, and there's a second list of things the scorer is instructed to never touch, in either direction:

  • Age, including using graduation year as a stand-in
  • Race, ethnicity, national origin, skin color, or native language
  • Gender, gender identity, or gender expression
  • Marital status, family status, pregnancy, or caregiver status
  • Religion or religious observance
  • Disability status, physical appearance, or medical history
  • Veteran or military status
  • Sexual orientation
  • Political affiliation
  • Criminal history (ban-the-box law restricts considering it in initial hiring decisions across a large and growing share of US states, plus several Canadian provinces)
  • Salary history (a separate, similarly wide set of jurisdictions bans anchoring an offer on what a candidate was previously paid)

If a resume mentions any of these, the scorer treats the field as if it weren't there. It doesn't get penalized and it doesn't get rewarded, and the candidate's overall score is computed exactly as if the mention hadn't appeared.

Note

This is why a criminal-history mention doesn't just quietly lower a score. If Verinode silently marked a candidate down for it, that would be exactly the discrimination ban-the-box law exists to prevent. Instead the field is excluded from the math entirely, and the fact that it was excluded is surfaced to you separately, which is the next guardrail.

When extraction detects a criminal-history mention in a resume, the applicant record's ban-the-box flag is set, and two things change on that applicant's Context tab.

The Legal Review panel appears, above the Years Experience / Location / Source Channel / Score grid, in an Ember Red bordered box:

Legal Review Flag Criminal-history mention detected in the resume. Verinode has not scored this attribute. You review and decide before advancing.

The Draft Offer button is disabled. Hovering it shows the tooltip "Clear the legal review flag before drafting an offer." Verinode won't let an offer get drafted for a flagged candidate until you've worked through the evidence yourself, since drafting the offer is the one action in the pipeline that commits you to a number.

When there's no flag, neither of these appears. The Context tab goes straight from the Draft Offer button to the Years Experience grid; a clean applicant record simply doesn't carry this panel at all.

Click the applicant's score anywhere it appears (it's a button, not plain text) to open the Why This Score modal, which decomposes the overall score into its five weighted dimensions:

| Dimension | Weight | What it measures | |---|---|---| | Certifications Match | 30% | Held certifications against the requisition's required and preferred cert stack | | Experience Band | 25% | Years of restoration field experience against the role's expected tier | | Peer-Profile Match | 20% | Similarity to peers who stayed past 90 days in this role and state | | Location Fit | 15% | Proximity to your service area (on-site roles penalize a long commute harder than hybrid ones) | | Compensation Fit | 10% | Overlap between the applicant's preferred range and yours |

Each dimension shows a 0-100 score and how many points it contributed to the overall total. If the applicant is flagged, the same Ember Red banner repeats at the top of this modal:

Criminal-history mention was detected in this applicant's resume. Verinode's scorer structurally skipped that field: it is not factored into the score below. You review and decide whether to advance.

Below the dimension breakdown, a Risks Flagged list surfaces anything the scorer noted as needing a human look, using these labels:

  • Legal review flag
  • Criminal-history mention (scorer skipped)
  • Salary-history mention (scorer skipped)
  • Protected-class mention (scorer skipped)

Every instance of the modal, flagged or not, closes with the same standing disclaimer: "Verinode does not make hiring decisions. The scorer surfaces relative evidence on technical skills, experience, certs, and peer-profile compatibility. You review each candidate for fit, culture, and legal compliance before advancing."

There's a structural consequence to the flag beyond the panel and the disabled button: a flagged applicant is excluded from the two Findings signals that normally push a strong candidate at you, the "top-tier, move to phone screen" and "promising, worth a phone screen" alerts. Those only fire for unflagged applicants. A flagged candidate never gets an automated nudge to advance; that call stays entirely with you.

Guardrail 3: the decision orchestrator's forced verdict

Findings on Recruiting aren't always single alerts, they're often clustered decisions: the orchestrator groups two or more related signals (a stalled requisition plus a top-tier applicant, say) into one recommendation with a verdict, like advance, decline, offer, or revise the job description.

If any applicant behind that cluster carries the ban-the-box flag (or one of the other legal-review risk flags, including a protected-class mention or a salary-history mention), the orchestrator rewrites the verdict after the underlying recommendation comes back, regardless of what it originally concluded. Concretely, that override:

  • Sets the verdict to operator review required, never advance, decline, or offer.
  • Sets the confidence on that verdict to low, deliberately, since the point is not to sound authoritative about a call it isn't allowed to make.
  • Prefixes the recommendation's title with "Legal review required:".
  • Appends the standing line "Verinode does not make hiring decisions. You review the evidence and decide" to the consequence text, if it isn't already there.
  • Adds a routing note directing the recommendation through your recruiting coordinator, specifically to surface the evidence and the ban-the-box or salary-history flag to you before any advance, decline, or offer action gets taken.

One more deliberate choice: even if the underlying cluster would otherwise read as time-critical, once the legal guardrail fires the recommendation's severity is fixed at warning, never escalated to critical. A legal-review recommendation shouldn't read with more urgency pressure than a routine one; the point is a careful look, not a rushed one.

When no flagged applicant is behind a cluster, none of this applies and the recommendation reads exactly as generated, with its own verdict, confidence, and severity.

Tip

If you see "Legal review required:" on a Findings card, that's your signal the underlying evidence involves a candidate with a flag. Open the applicant's Why This Score modal from there to see exactly what was flagged before you act.

Guardrail 4: redaction on every render, even where extraction should have caught it

Applicant work history summaries, interview feedback notes, and talent pool notes all pass through a filter before they render anywhere in Recruiting, whether or not the ban-the-box flag is set. The filter looks for terms tied to age, date of birth, gender, race, ethnicity, religion, disability, veteran status, criminal history, sexual orientation, and marital status, and replaces any match with [redacted].

This runs on every render of those three fields, no exceptions, even though the extraction prompt already instructs the model never to produce this content in the first place. It's a second layer that catches anything extraction missed, a stray phrase in a work history summary, an interviewer's offhand note, before it ever reaches your screen. You'll only notice it if a candidate's own resume or an interviewer's typed note happened to mention one of these terms; in the ordinary case it changes nothing you see.

The applicant stance pill can also read Blocked for two reasons that have nothing to do with the law: a comp gap (the applicant's preferred range sits above your p90) or a qualified internal candidate your succession planning already flagged for the same role. Both pause the advance decision the same way the legal guardrail does, and both carry their own explanation on the Context tab, but they're business judgment calls, not statutory ones. Only the Legal Review stance and its Ember Red panel are the ban-the-box guardrail described in this article; the other Blocked reasons are ordinary hiring trade-offs Verinode is surfacing for your call, same as any other recommendation on the platform.

Best-practice example

A resume comes in for a Lead Water Tech opening and mentions a past conviction in the work history section. Extraction sets the ban-the-box flag; the scorer computes the overall score exactly as it would for any other candidate, excluding that mention from the math entirely, and adds "legal review needed" to the risks flagged. The applicant's Context tab shows the Legal Review panel and a disabled Draft Offer button. You open Why This Score, see the five dimensions came back strong (a 90+ on Certifications Match, solid Experience Band), and see the same criminal-history note called out again, unscored, in the Risks Flagged list. Because this candidate also happens to sit inside a Findings cluster with a stalled requisition, that recommendation's title reads "Legal review required: advance your Lead Water Tech search," its confidence is set to low, and the consequence line reminds you Verinode isn't making this call. You read the resume, talk to counsel if the situation calls for it, and decide whether to advance, on the merits Verinode was allowed to score, and the ones it wasn't.

Data sources

  1. 1.Applicant resumes and extraction. Your business.
  2. 2.Verinode applicant scorer and decision orchestrator. Verinode agent pipeline.
Was this helpful?