DOT D&A: instant PDF compliance-program binder (49)

Turn the DOT Drug & Alcohol Compliance Program into an automated
instant-delivery deliverable: when a carrier orders, we generate a
complete, print-ready PDF binder and email it (no admin step).

The binder (dot_da_binder_generator.py) bundles everything a small
carrier needs under 49 CFR Part 382 + Part 40:
  - How to manage the program (DER setup + annual operations)
  - Written drug & alcohol testing policy for employees
  - The six DOT test scenarios + triggers
  - Random testing / consortium (C-TPA) instructions
  - Supervisor reasonable-suspicion training + live/online access
  - Violations, SAP access, return-to-duty / follow-up
  - EAP / rehab / treatment resources (SAMHSA, 988, locator, ODAPC)
  - Recordkeeping retention schedule
  - Ready-to-use forms (acknowledgment, reasonable-suspicion,
    post-accident decision worksheet)
  - Regulation citations
  - Optional state Drug-Free Workplace addendum

Policy-variant selection: FMCSA (Part 382) is the trucking default;
honors an explicit dot_da_mode override for FRA/PHMSA/FTA/FAA/USCG.

New DrugAlcoholProgramHandler returns the binder PDF; slug added to
INSTANT_DELIVERY_SLUGS so job_server emails it automatically. Slug
rerouted from MCS150UpdateHandler (was admin-assisted enrollment) and
re-priced as a discountable own-deliverable (no passthrough cost).

Tests: scripts/tests/test_dot_da_binder.py (FMCSA sections, PHMSA+state
addendum, all-modes render) — passing.
This commit is contained in:
justin 2026-06-02 19:28:58 -05:00
parent 058d7cfbfe
commit 06e59965cc
6 changed files with 1172 additions and 2 deletions

View file

@ -267,7 +267,7 @@ const COMPLIANCE_SERVICES: Record<
name: "DOT Drug & Alcohol Compliance Program",
price_cents: 14900,
erpnext_item: "DOT-DRUG-ALCOHOL",
discountable: false, // passthrough cost — D&A testing provider
discountable: true, // instant PDF binder we generate — our own deliverable, no passthrough cost
},
"dot-audit-prep": {
name: "New Entrant Safety Audit Preparation",