Ingestion & Provenance

Every observation is sourced, dated, licensed, and confidenced.

A 15-stage pipeline turns raw records from every jurisdiction into evidenced graph facts — with conflicts preserved and reviewable.

15-stage staged pipeline
01
Source Registration
Stage 1/15
02
Raw Data Import
Stage 2/15
03
Schema Validation
Stage 3/15
04
Data Normalization
Stage 4/15
05
Address Standardization
Stage 5/15
06
Geospatial Validation
Stage 6/15
07
Identity Resolution
Stage 7/15
08
Duplicate Detection
Stage 8/15
09
Relationship Generation
Stage 9/15
10
Conflict Detection
Stage 10/15
11
Confidence Assignment
Stage 11/15
12
Property Graph Upsert
Stage 12/15
13
Score Recalculation
Stage 13/15
14
Audit Logging
Stage 14/15
15
Review Queue Creation
Stage 15/15
Connector framework
Data connectors — status is honest
County Parcel Data
Bulk + delta feeds per county
DEFERRED
Assessor Data
Assessment history + tax status
DEFERRED
Deed Records
Recorded transfers + encumbrances
DEFERRED
Tax Records
Delinquency + tax status
DEFERRED
Zoning Data
District boundaries + rule text
DEFERRED
Permit Data
Applications, filings, inspections
DEFERRED
Census Data
Geographies + demographics
STRUCTURAL
FEMA
Flood zones + risk
STRUCTURAL
Environmental Data
Contamination, wetlands, habitat
DEFERRED
Transportation
Transit, road hierarchy, ADT
STRUCTURAL
Utilities
Water, sewer, electric, gas territories
DEFERRED
Telecom
Fiber routes, macro sites
DEFERRED
Satellite Imagery
Sentinel-2 derivations
STRUCTURAL
Market Transactions
Sales comps + capital markets
DEFERRED
Commercial Data Providers
Requires license + contract
BLOCKED
Live national feeds require credentials and licensing. Mock adapters exist for UI testing only and are always labeled.
Source classifications
GovernmentCounty AssessorRecorder of DeedsMunicipalityGIS ProviderUtilityCommercial Data ProviderUser SubmittedAnalyst VerifiedAI DerivedCalculatedPublic RecordSatellite or Aerial Imagery
Every observation stores
  • · Source + source record ID
  • · Retrieval date + effective date
  • · License restrictions
  • · Confidence + verification status
  • · Transformation history
  • · Original value + normalized value
Conflict resolution — versioned, never overwritten
FieldSource ASource BConfidenceStatus
properties.year_built1968 (Assessor)1969 (Planning)0.98 / 0.72Analyst Review Required
parcels.lot_area_sqft22,400 (Assessor)22,412 (Survey)0.94 / 0.99Automatically Resolved → 22,412
ownership.percent100% (ACRIS)50/50 (User Submitted)0.99 / 0.42Source Correction Pending
buildings.height_ft420 (DOB)418 (LiDAR)0.98 / 0.86Automatically Resolved → 420
Corrections generate corrective events. Historical values are never destroyed.
Migration & validation posture
Additive only
Additive migrations, no destructive renames, no dropped working tables.
Tested boundaries
Tenant isolation, RLS, duplicate handling, and score versioning tests.
Immutable ledger
Property events are append-only. Corrections create new corrective events.