Confirm cohort VIN list, RO feed owner, telematics export owner, legal shadow language.
Deliver adapter manifest draft and sample batch template.
- Attendees
- Maint · IT · Legal optional
- Output
- Data contract v1
Data requirements, runtime choices, correction readiness, evidence contracts, security boundaries, deployment checklists, and validation responsibilities in one implementation guide.

Telematics and RO feeds into Pulse scoring outputs.
Illustrative seed-data visualization. Validate on your representative fleet sample before operational decisions.
Plain language for fleet and investor conversations. Technical detail for engineering diligence.
NADIR helps fleets detect likely ADAS miscalibration after repair using data you already export.
Shadow mode means advisory tiers and signed records — not automatic vehicle changes.
Batch ingest with schema validation, Pulse residual scoring, repair-event join, EVB export.
All outputs are versioned: model_id, policy_id, confidence, reason_codes.
Start with pilot runbooks, deepen into API field reference as needed.
Buyers: /how-it-works, /pilots/start, /pilots/kpi. Engineers: /api, /developers, /deep-dive.
All documents share the same boundary: shadow advisory, no ECU writes, MTTFF-RE for pilots.
Roles, meetings, and artifacts each week.
Confirm cohort VIN list, RO feed owner, telematics export owner, legal shadow language.
Deliver adapter manifest draft and sample batch template.
Quarantine report reviewed jointly. Scoring enabled on clean subset.
Maintenance labels true positives vs nuisance. Policy tweaks if agreed.
Verify workflow demo. Digest cadence confirmed.
Pass, fail, or stop with written appendix. Commercial renewal conversation only after pass.
What integrators should expect in diligence.
Telemetry batch ingest, health scoring queries, repair events, evidence compile/verify/export.
Bearer token scoped per tenant; API keys rotatable without redeploying edge gateways.
Idempotency-Key header on batch POST — duplicate payload returns 200 with original receipt.
Conflicting payload with same key returns 409 with diff summary.
Documented in order form — typically sufficient for hourly fleet batches.
429 responses include Retry-After header.
Signed webhook payloads for CRITICAL transitions — shadow mode still no actuation.
Verify HMAC on receiver before opening tickets in ITSM.
Developers/API Theater walks sample requests with seeded responses.
Production contracts versioned; breaking changes bump major path.
The RO close timestamp anchors post-repair scoring. Without it, MTTFF-RE is undefined.
VIN (17 char), RO identifier, close timestamp (UTC preferred), procedure category, and shop identifier.
Optional but valuable: part numbers for glass, ADAS kit replacement flag, technician notes.
NADIR validates identity before joining — malformed VINs land in a quarantine report, not silent scoring.
Weekly CSV from MSO export is enough for most $750 proofs.
Webhook on RO close tightens MTTFF-RE measurement when telematics latency is low.
Idempotency keys prevent duplicate events when shops retransmit files.
POST /v1/repair-events
Authorization: Bearer ${NADIR_TOKEN}
Content-Type: application/json
{
"idempotency_key": "ro-88421-vin-1HGBH41JXMN109186",
"vin": "1HGBH41JXMN109186",
"ro_id": "RO-88421",
"closed_at": "2026-07-15T18:42:00Z",
"procedure": "windshield_replacement",
"shop_id": "SAFELITE-DTW-014"
}Local shop time without timezone — converts incorrectly across DST.
RO marked closed before vehicle actually leaves bay — starts MTTFF clock too early.
Fleet unit numbers instead of VIN — must map through a stable crosswalk table.
Prefer the feed with earliest accurate close timestamp; document precedence in kickoff notes.
Conflicts surface in a reconciliation CSV — not auto-merged without operator ack.
RO payloads retain operational fields only — no customer PII beyond VIN and shop IDs in default pilot tier.
Retention windows defined in order form; export/delete available on request.
Signals you already export — validated before scoring.
VIN, UTC timestamp, speed, yaw rate, steering angle, forward radar lead distance if available, lane offset proxy if available.
Geotab, Samsara, Motive, and OEM exports differ — NADIR maps through adapter manifests.
Missing optional fields reduce confidence; missing required fields reject the batch row.
Clock regression within a VIN stream triggers batch rejection for affected rows.
Unit mismatches (mph labeled as m/s) return field-level 400 paths.
Duplicate frame hashes dedupe via idempotency — logged but not double-scored.
{
"error": "schema_validation_failed",
"details": [
{"path": "frames[12].speed_mps", "code": "unit_out_of_range"},
{"path": "frames[44].timestamp", "code": "clock_regression"}
]
}Daily or hourly batch uploads are typical for shadow proofs.
Scoring SLA target under five minutes from accepted batch — not real-time ADAS actuation.
Edge gateway optional when CAN normalization already exists on-vehicle.
Vehicles with < N frames in post-RO window exclude from MTTFF cohort.
Digest still reports fleet coverage percentage so ops knows blind spots.
Each fleet adapter ships as manifest vX.Y with field mapping, unit conversions, and quality flags.
Manifest version appears in evidence bundles for replay.
Mean Time To First Flag after Repair Event. One number for pass, fail, or stop.
When a vehicle leaves a glass or body shop, start a clock at repair order close.
MTTFF-RE measures hours until NADIR assigns CAUTION or CRITICAL in the post-repair observation window.
If most events flag within seven days, your maintenance team gets actionable lead time before silent misalignment becomes a safety conversation.
Join repair_events.ro_closed_at to health_transitions where tier ∈ {CAUTION, CRITICAL}.
Delta = first_flag_at − ro_closed_at in UTC hours.
Appendix lists excluded VINs with reason: no_telemetry, invalid_vin, pre_existing_critical.
SELECT
re.vin,
re.ro_closed_at,
MIN(ht.scored_at) AS first_flag_at,
EXTRACT(EPOCH FROM (MIN(ht.scored_at) - re.ro_closed_at))/3600 AS mttff_hours
FROM repair_events re
JOIN health_transitions ht ON ht.vin = re.vin
AND ht.scored_at >= re.ro_closed_at
AND ht.tier IN ('CAUTION','CRITICAL')
GROUP BY 1,2Each dot or bar is one repair event in the pilot cohort.
Color encodes pass (≤168h) vs fail. Gray marks excluded rows.
Median line is the primary SLA statistic; mean is shown but not contractual.
Cherry-picked VINs with perfect telematics while hard cases were dropped from cohort.
RO timestamps backfilled days after close — inflates MTTFF-RE artificially.
Treating missing data as NOMINAL instead of excluded.
NADIR readouts include an exclusion appendix specifically to prevent silent passes.
Define cohort size, date range, procedure types (glass, front-end, mirror), and telemetry coverage minimum.
State median and pass-rate thresholds explicitly. Define stop conditions if CAUTION noise exceeds agreed bounds.
Clarify that shadow mode continues regardless of pass — expansion is a commercial decision, not automatic actuation.
Tamper-evident records for QA, insurers, and safety boards.
Source frame hashes, ingest adapter version, model and policy IDs, tier transition, repair_event_id, operator ack metadata.
Canonical JSON serialization before HMAC-SHA256 signature.
Verification recomputes digest — integrity check, not ground-truth calibration proof.
Download bundle JSON and signature sidecar from Console or API.
POST to /v1/evidence/verify or run local SDK verify helper.
Compare model_id and policy_id to approved registry for your tenant.
from nadir_sdk.evidence import verify_bundle
result = verify_bundle(path="evb-20260715-001.json")
assert result.ok
print(result.model_id, result.policy_id, result.tier)Ingest → align timestamps → score → tier decision → optional operator ack → compile → sign.
Each stage appends structured metadata — no hidden transforms.
Shows what NADIR flagged and when relative to RO close.
Pairs with shop invoices, OEM scan reports, and physical cal certificates in broader file review.
90-day bundle retention unless extended in SOW.
Bulk export via API for archive systems.
Dense field reference for engineering diligence on this topic.
| Category | Field / control | Value | Notes |
|---|---|---|---|
| Pilot | mode | shadow_advisory | No ECU writes |
| Pilot | kpi | MTTFF-RE | Median ≤168h target |
| Pilot | cohort | 50–150 VINs | Shadow Proof SKU |
| Ingest | telemetry | POST /v1/telemetry/batch | CSV/JSONL |
| Ingest | repair | POST /v1/repair-events | RO anchor |
| Score | tier | NOMINAL|CAUTION|CRITICAL | Policy-bound |
| Score | model | pulse_residual_* | Versioned |
| Product | queue | Console CRITICAL rows | Operator-facing |
| Product | digest | Weekly CSV/email | CAUTION summary |
| Evidence | signature | HMAC-SHA256 | Integrity only |
| Evidence | verify | POST /v1/evidence/verify | Recompute digest |
| Security | transit | TLS 1.2+ | API only |
| Security | auth | Bearer + API key | Tenant scoped |
| Boundary | asil | Not claimed | Advisory analytics |
| Boundary | actuation | None | Shadow default |
| Commercial | proof | $750 flat | 4 weeks |
| Commercial | ops | $750/mo | After pass |
| Commercial | regional | $15k+ | 150–500 VINs |
Straight answers for buyers and reviewers.
Straight answers for buyers and reviewers.
Regional fleets and repair networks proving post-repair ADAS detection first.
VIN, timestamps, telematics signals, and repair close times.
No. Shadow advisory only — detection, queue, and evidence export.
No. NADIR is advisory analytics, not safety-certified software.
Each path links product behavior to the concrete inputs, owners, and acceptance criteria required.
Required identifiers, timestamps, sensor fields, context, quality checks, and sample validation.
Supported sensor path, validation envelope, fallback, model, and policy responsibilities.
Vehicle scope, baseline, operator ownership, review cadence, and measured closeout.
Source lineage, signatures, transform records, service events, retention, and exports.
NADIR separates what the customer supplies, what the platform computes, what correction can change, and what a human or qualified service process owns.
Vehicle, sensor, time, frame, units, quality, and context.
Model version, tier, residual, confidence, and severity.
Eligibility, transform, envelope, fallback, and re-score.
Acknowledgement, dispatch, physical service, and closure.
Retention, signature, access, export, and verification.
A valid evaluation can begin with a batch export; real-time correction requires a substantially stronger runtime and validation contract.
The deployment should end with a technical and commercial decision, including documented gaps.
Name the business question, owner, vehicles, sensors, and operating mode.
Validate units, timestamps, identity, quality, and representative conditions.
Run monitor-only scoring and review expected versus observed behavior.
Connect workflow, correction policy if applicable, and evidence export.
Review metrics, incidents, limitations, security, and operational ownership.
Produce go / revise / stop decision with signed artifacts.
Bring a representative sample and the team will map the shortest valid integration path.