📸
Reporting

Multiple ways to report infrastructure issues, designed for speed and accuracy.

Quick Report (10 seconds)

One-screen flow: pick a category, GPS auto-detects your location, snap a photo, select hazard level, submit. Designed for people who don't have time for forms.

Single-screen flow. expo-location high-accuracy GPS, expo-image-picker for camera, auto-triggers Claude Haiku vision analysis via Supabase Edge Function.

📋 Detailed Report (5 steps)

Full wizard: category selection, interactive map with draggable pin, photos/videos, adaptive severity assessment, review screen. For when you want to be thorough.

5-step wizard with MapView draggable Marker, expo-image-picker multi-select, adaptive severity dimensions per CategoryInfo.severityDimensions array.

🗣️ Voice Commands

Say "Report pothole" or "Fix this" to start a report hands-free. Uses native speech recognition — no internet required for the voice trigger.

expo-speech-recognition with configurable trigger phrases. On-device speech-to-text, keyword matching, auto-navigates to Report screen with prefilled category.

🗨️ Audio-Guided Mode

Fully conversational reporting for visually impaired users or hands-free situations. The app talks you through every step, listens to your responses, and submits without ever touching the screen.

AudioGuideSession state machine: idle → greeting → category → photo → severity → description → confirm → submit. Uses expo-speech TTS + expo-speech-recognition STT.

📍 GPS + Draggable Pin

Location auto-detected with high-accuracy GPS. Step 2 of the report shows an interactive map where you can drag the pin to the exact spot. Reverse geocoding fills in the address.

expo-location high-accuracy → react-native-maps MapView with draggable Marker → reverseGeocodeAsync for address resolution.

🤖 AI Photo Analysis

After you take a photo, AI (Claude Vision) automatically identifies the issue type, estimates severity, detects dimensions, and describes the damage. Auto-fills the report form with its suggestions.

Base64 image → Supabase Edge Function → Claude Haiku vision API. Returns JSON: category, confidence 0-1, size, hazard, dimensions, surface type, weather conditions.

📷 Smart Photo Coaching

Category-specific guidance overlaid on the camera: "Place a shoe next to it for scale. Photograph from 3 feet away. Include surrounding road surface." AI then scores photo quality.

Category-specific PhotoGuideline arrays. Post-capture assessPhotoQuality() scores based on AI confidence, category detection, and dimension estimation.

📳 Bump Detection

Accelerometer monitors for road impacts while driving. Uses rolling-window analysis to filter false positives (speed bumps, railroad crossings). Asks "Was that a pothole?" before creating a report.

expo-sensors Accelerometer at 10Hz. Rolling 10-reading window filters single jolts. Sustained threshold (1.5G × 3+ readings) + spike threshold (2.5G) triggers confirmation.

👤 Anonymous Reporting

No account required. Report without signing in. Your identity is never attached to anonymous reports — not even in our database.

Reports INSERT with user_id = NULL. RLS policy: user_id IS NULL OR auth.uid() = user_id. No session token required.

📶 Offline Mode

No signal? Reports queue locally and auto-submit when you reconnect. Works on subways, in rural areas, anywhere. Nothing is lost.

AsyncStorage JSON queue. expo-network monitors connectivity. processQueue() on foreground retries failed items. Offline reports persist across app restarts.

🏷️ 63 Categories

The 24 physical-infrastructure categories (potholes, streetlights, sidewalks, signage, drainage, graffiti, road debris, guardrails, crosswalks, traffic signals, needed traffic lights, water mains, sewers, bridges, fallen trees, snow/ice, accessibility issues, bike lanes, abandoned vehicles, illegal dumping, parking meters, parks/playgrounds, utility poles, and "other") plus 39 Access & Equity categories added in the 2026 expansion: physical mobility / ADA, sensory & cognitive access, age & vulnerability, housing & shelter equity, transit equity, and digital public infrastructure. See the /access-equity taxonomy for the full list.

ReportCategory union type, 63 literals grouped by taxonomy. CategoryInfo includes severityDimensions array defining applicable assessment axes per category. Four Access & Equity categories enabled in the 10-second quick-report grid: missing_curb_cut, ada_blocked_path, broken_elevator_public_housing, missing_crossing_guard.

📊 Adaptive Severity

Each category shows only relevant severity dimensions. Potholes get size + hazard. Streetlights get urgency + hazard. Graffiti gets condition only. No irrelevant questions.

CategoryInfo.severityDimensions: SeverityType[] controls which UI picker sections render. ReportSeverity stores nullable fields for non-applicable dimensions.
👥
Community Verification

Crowdsourced verification turns individual reports into undeniable community evidence.

3️⃣ Three-Report Threshold

When 3 unique people report the same issue (same category within 50 meters), it's marked "community-verified." This filters noise and confirms real problems.

🔔 Witness Network

When a dangerous hazard is reported, nearby users get a push: "Can you verify? Pothole 200m from you." If they're heading that way, one tap and a photo confirms it — often within minutes.

👍 Upvote & Confirm

Upvote = "this matters." Confirm = "I've seen this too." Both boost the report's priority. Both are tracked independently.

🔗 Duplicate Detection

If you're about to report something that already has 8 reports, the app shows you the existing cluster and asks "Add yours to this?" Saves time, boosts count faster.

📢 Community Campaigns

Create named campaigns: "Fix Elm Street." Set a goal, track progress, share on social media. Turn scattered complaints into organized collective action with momentum.

📨
Authority Escalation

Automatic, professional, documented communication with the right government authority.

🏛️ Auto Authority Identification

GPS boundary mapping + Census data identifies whether your report goes to the city, county, or state. 795 authorities pre-configured across 46 states, with routing polygons seeded from the US Census TIGER dataset.

📧 Cluster Escalation (10 reports / 30 days)

When a cluster hits 10 reports over 30 days, Fault Line drafts a professional demand letter template for the reporter to review and send — with location, photos, community verification count, statutory citation, and fiscal impact projections. Reporter is always the sender; Fault Line does not transmit letters on residents’ behalf.

🔌 Direct 311 / SeeClickFix API

For cities with Open311 or SeeClickFix APIs (Boston, Cambridge, hundreds more), reports submit directly into their ticketing system. No email — real tickets with tracking numbers.

🔄 Bidirectional Status Sync

For API-connected cities, Fault Line pulls status updates back. When the city marks it "in progress" or "resolved" in their system, your app updates automatically.

🚨 Emergency Fast-Track

Reports rated "extremely dangerous" or "critical urgency" skip the normal threshold. They're flagged immediately and prioritized for escalation.

🗺️
Coverage

Where Fault Line routes reports into real municipal ticketing systems today — nationwide, growing, and honest about where we can't yet reach.

795
Authorities seeded
589
Active cities & towns
46
US states
584+
With Census boundary routing
CACalifornia56 cities

Alameda, Antioch, Burlingame, Chula Vista, Dublin, Elk Grove, Emeryville, Folsom, Foster City, Gilroy, Los Angeles, Menlo Park, Merced, Millbrae, Milpitas, Morgan Hill, Murrieta, Oakland, Paso Robles, Poway, San Bernardino, San Clemente, San Leandro, San Rafael, South San Francisco, St. Helena, Truckee, Tustin, Vallejo, Victorville, Visalia, Walnut Creek, Watsonville + 24 more

MAMassachusetts48 cities

Amesbury, Attleboro, Boston, Brockton, Cambridge, Chicopee, Fall River, Fitchburg, Foxborough, Framingham, Gloucester, Haverhill, Holyoke, Lawrence, Leominster, Lowell, Lynn, Malden, Marlborough, Medford, Methuen, Natick, Needham, New Bedford, Newburyport, Peabody, Pittsfield, Plymouth, Quincy, Revere, Salem, Somerville, Springfield, Taunton, Waltham, Watertown, Westfield, Weymouth, Worcester + 9 more

FLFlorida40 cities

Boca Raton, Clearwater, Daytona Beach, Fort Lauderdale, Fort Myers, Fort Pierce, Homestead, Key West, Largo, Orlando, Pembroke Pines, Pensacola, Pinellas Park, St. Petersburg, Stuart, Tamarac, Tarpon Springs, Venice, Winter Haven + 21 more

TXTexas34 cities

Abilene, Baytown, Beaumont, Cedar Park, College Station, Edinburg, Farmers Branch, Houston, Killeen, Lubbock, Mesquite, Midland, Odessa, Pasadena, Victoria + 19 more

WAWashington30 cities

Auburn, Bainbridge Island, Bellingham, Burien, Everett, Federal Way, Issaquah, Kent, Marysville, Mercer Island, Mukilteo, Puyallup, Renton, Sammamish, SeaTac, Shoreline, Tacoma, University Place + 12 more

GAGeorgia29 cities

Albany, Alpharetta, Brunswick, Decatur, Dunwoody, East Point, Kennesaw, Marietta, McDonough, Milton, Norcross, Smyrna, South Fulton, Stone Mountain, Valdosta + 14 more

ILIllinois26 cities

Algonquin, Aurora, Carbondale, Elk Grove Village, Geneva, Glenview, Lake Forest, Libertyville, Lombard, Mount Prospect, Oak Brook, Peoria, Rock Island, Schiller Park, Springfield + 11 more

OHOhio24 cities

Athens, Canton, Chillicothe, Cleveland Heights, Gahanna, Hamilton, Hilliard, Hudson, Lima, Lorain, Newark, Parma, Reynoldsburg, Toledo, Upper Arlington, Westerville, Youngstown + 7 more

MIMichigan19 cities

Ann Arbor, Bay City, Canton, Dearborn Heights, Detroit, Ferndale, Livonia, Muskegon, Portage, Sterling Heights, Westland, Ypsilanti + 7 more

CTConnecticut17 cities

Bridgeport, Danbury, Darien, Enfield, Hamden, Hartford, Meriden, Middletown, New Britain, New Haven, Norwalk, Stamford, Waterbury, West Hartford, Wethersfield, Wilton, New Milford

COColorado15 cities

Arvada, Aspen, Brighton, Colorado Springs, Commerce City, Durango, Erie, Greenwood Village, Littleton, Manitou Springs, Milliken, Montrose, Superior, Westminster, Windsor

INIndiana15 cities

Avon, Carmel, East Chicago, Elkhart, Fishers, Hammond, Huntington, Lafayette, New Haven, Plainfield, South Bend, West Lafayette + 3 more

UTUtah14 cities

Bluffdale, Draper, Farmington, Lehi, Murray, Provo, Salt Lake City, Sandy, Saratoga Springs, South Jordan, South Salt Lake, Spanish Fork, Syracuse, West Valley City

KSKansas12 cities

Derby, Hutchinson, Independence, Junction City, Lawrence, Manhattan, Mission Hills, Overland Park, Pittsburg, Shawnee, Topeka, Wichita

MNMinnesota12 cities

Blaine, Buffalo, Burnsville, Chanhassen, Eden Prairie, Edina, Mankato, Maple Grove, Minneapolis, Oakdale, Owatonna, Plymouth

NJNew Jersey12 cities

Ewing, Fairview, Jersey City, Kearny, Madison, Middletown, Newark, Paterson, Princeton, Summit, West Windsor, Westfield

AZArizona10 cities

Casa Grande, Chino Valley, Florence, Gilbert, Litchfield Park, Marana, Peoria, Queen Creek, Tucson, Yuma

NCNorth Carolina10 cities

Archdale, Burlington, Carolina Beach, Davidson, Eden, Fayetteville, Nags Head, Pineville, Raleigh, Wake Forest

NYNew York10 cities

Albany, DeWitt, Ithaca, Mount Vernon, New York, Newburgh, Peekskill, Schenectady, Southampton, Syracuse

TNTennessee10 cities

Clarksville, Goodlettsville, Hendersonville, Johnson City, Kingsport, Knoxville, Lakeland, Memphis, Mount Juliet, Smyrna

IAIowa9 cities

Ames, Bettendorf, Clinton, Coralville, Davenport, Mason City, Muscatine, Urbandale, West Des Moines

MOMissouri9 cities

Chesterfield, Columbia, Harrisonville, Hillsboro, Joplin, Lee's Summit, Parkville, Springfield, St. Joseph

NHNew Hampshire9 cities

Concord, Dover, Keene, Laconia, Lebanon, Manchester, Nashua, Portsmouth, Rochester

OKOklahoma9 cities

Bixby, Broken Arrow, Coweta, Duncan, Edmond, El Reno, Enid, Muskogee, Piedmont

ALAlabama8 cities

Alabaster, Albertville, Birmingham, Gadsden, Homewood, Huntsville, Northport, Tuscaloosa

RIRhode Island8 cities

Cranston, East Providence, Middletown, Newport, Pawtucket, Providence, Warwick, Woonsocket

SCSouth Carolina8 cities

Anderson, Beaufort, Bluffton, Hartsville, Hilton Head Island, Pendleton, Spartanburg, Summerville

WIWisconsin8 cities

Bayside, De Pere, Glendale, Greenfield, Mosinee, Oshkosh, Sheboygan, South Milwaukee

MEMaine7 cities

Auburn, Augusta, Bangor, Biddeford, Lewiston, Portland, South Portland

IDIdaho6 cities

Boise City, Eagle, Garden City, Kuna, Meridian, Pocatello

MDMaryland6 cities

Annapolis, Bel Air, Cheverly, College Park, Hyattsville, Laurel

NMNew Mexico6 cities

Albuquerque, Carlsbad, Gallup, Las Cruces, Rio Rancho, Santa Fe

PAPennsylvania6 cities

Bethlehem, Lancaster, Monroeville, Norristown, State College, Zelienople

VTVermont6 cities

Burlington, Colchester, Essex, Montpelier, Rutland, South Burlington

KYKentucky5 cities

Danville, Frankfort, Jeffersontown, Paducah, Winchester

OROregon5 cities

Ashland, Bend, Eugene, Newberg, Troutdale

VAVirginia5 cities

Danville, Herndon, Martinsville, Portsmouth, Vienna

ARArkansas4 cities

Fayetteville, Fort Smith, Maumelle, Russellville

HIHawaii4 cities

Kahului, Kihei, Lahaina, Wailuku

LALouisiana4 cities

Gretna, Lake Charles, New Orleans, Plaquemine

NVNevada4 cities

Boulder City, Henderson, Las Vegas, North Las Vegas

DEDelaware2 cities

Elsmere, Milford

NENebraska2 cities

La Vista, Lincoln

SDSouth Dakota2 cities

Brookings, Sioux Falls

WVWest Virginia2 cities

Huntington, Morgantown

MSMississippi1 city

Columbus

WYWyoming1 city

Cheyenne

Coming Soon

Nationwide expansion, on the record.

Chicago, San Francisco, Seattle, Austin, and Philadelphia run proprietary 311 platforms that don't expose public APIs — we're building a web-form-scraping worker to reach them. Boston's standalone Open311 endpoint is seeded and awaiting its API key. Additional direct-email DPW coverage is queued for under-served states, and a Census fuzzy-match pass will recover 50–70 deactivated unincorporated places.

See the full roadmap →
⚖️
Accountability & Legal

Tools that create real consequences for ignoring infrastructure problems.

📜 Legal Demand Letter Templates

Generates a formal notice citing your state's specific statute (MA: M.G.L. c. 84 § 15, RI: R.I. Gen. Laws § 24-5-14, NH: RSA 231:90-92) for you to review, sign, and send. Tracks the statutory deadline. Not legal advice.

🛡️ Insurance Claim Packager

One tap generates a complete evidence bundle: timestamped GPS data, photos, report timeline, authority notification proof, community verification count. You share it with your insurance company.

💰 Fiscal Impact Projections

Shows authorities the math: "Fix this for $75 now, or face $12,000 in liability in 12 months." Includes deterioration curves, claim probability, and expected liability costs by category.

⏱️ Response Countdown Scoreboard

Public timer from the moment an authority is notified. If the deadline passes, everyone who reported the issue is notified. Milestones at 30, 60, and 90 days overdue.

🏗️ Contractor Accountability

Tracks repair quality by analyzing re-reports at resolved locations. If a pothole was "fixed" and reopens in 3 months, the contractor's failure rate is recorded and published.

🔍 Repair Quality Verification

After a fix, nearby users photograph the result. AI grades it: Excellent, Good, Adequate, Poor, Failed. "Poor" or "Failed" reopens the report automatically.

📸 Deterioration Timelapse

When the same spot is photographed over weeks/months, the app builds a visual timeline of neglect. Shareable proof that an issue worsened while being ignored.

🎥 Video Testimonials

Record an optional 15-second video about how the issue affects you and attach it to your own escalation. A face and a voice are harder to ignore than a spreadsheet.

Fault Line is a self-help documentation tool, not a law firm. This is not legal advice. For a live claim against a municipality, consult a licensed attorney in your state.

📊
Data & Transparency

Public data that drives accountability and informs decisions.

🏆 Infrastructure Health Grades

Every city gets a live A+ to F grade based on report density, fix rate, response time, severity distribution, and repair recurrence. Public, shareable, updated in real-time.

😬 Cross-Municipal Shame Index

Comparative rankings between neighboring cities. "Your city: D+. Next town: B+." Competitive pressure between municipalities is the most powerful force for improvement.

🗳️ Election District Overlay

Maps reports to political districts using Census Bureau data. See which representatives' areas have the most unresolved issues. Free, no API key needed.

💵 Budget Transparency

Connects to municipal open data portals. "Your city allocated $4.2M for roads. $1.8M spent. 340 issues remain." Follow the money.

🔮 Predictive Analytics

Analyzes historical patterns, seasonal trends, and severity curves to predict where damage will occur. Generates pre-deployment reports so cities can fix proactively instead of reactively.

🛣️ Street Decay Profiles

Per-street condition grades with recurrence rates, seasonal patterns, and projected repair timelines. "Elm Street has a 78% probability of needing major repair within 12 months."

📰 Media & Journalist Pipeline

CSV data exports, authority performance reports, alert subscriptions. Give journalists the tools to cover infrastructure stories with real data.

💲 Cost Estimation

Every report shows an estimated repair cost. Aggregated per city. "Your city has $2.3M in deferred maintenance." Based on FHWA and ASCE data.

🎮
Engagement & Rewards

Incentives that keep communities engaged over the long haul.

🔥 Daily Streaks

Report something every day, build your streak. 7-day streak = 50 bonus points. 30-day streak = 200 points. Streaks show on your profile and the leaderboard.

🏅 Points & Badges

10 points per report, 15 with photo, 25 when your report gets resolved, 5 per streak day. Earn badges for milestones: first report, 10th report, 50th, first resolution, and more.

🏆 Leaderboards

Global, state, and city rankings. See who's making the biggest impact. Top contributors are featured in weekly community updates.

📰 Neighborhood Feed

Real-time activity near you: new reports, resolutions, milestones, campaigns. See your community in action.

Local Business Rewards

Local businesses sponsor rewards: "Report 10 issues, get a free coffee." Points redeem for real rewards. Business gets exposure, user gets rewarded, community wins.

📊 Weekly Digest

Every Sunday: how many reports in your area, how many resolved, which authorities responded. Stay informed without opening the app.

🧠
Intelligence

The app learns your patterns and surfaces the right information at the right time.

🚗 Commute Learning

Tracks your frequent locations (commute, neighborhood). When a pothole appears on your route: "The pothole on your morning commute needs 2 more reports for escalation."

⚠️ Proximity Danger Alerts

Approaching a known hazard? Vibrate + notification: "Caution: large pothole 200 feet ahead on your right." Passive safety from community data.

🔔 Smart Notifications

Not spam — context. "Your report was acknowledged." "3 more reports needed for escalation." "The city missed their deadline." Quiet hours respected.

🗺️ AR Overlay

Point your camera at the road. See floating markers showing nearby reports — color-coded by severity, showing distance and category. Tap any marker for details.

🗺️ Offline Maps

Cache map tiles for your area so the map works without cell service. Download from Profile → Offline Maps. Configurable zoom levels.

Accessibility & Language

Built for everyone, not just tech-savvy English speakers.

🔤 5 Languages

English, Spanish, Portuguese, Chinese, and Haitian Creole — the top languages spoken in MA, RI, and NH. Auto-detects device language. Switch anytime in settings.

Screen Reader Support

Every button, every label, every interaction has proper accessibility roles and labels. Tested with VoiceOver and TalkBack.

🔊 Audio-Guided Reporting

Complete voice-driven reporting flow: the app speaks to you, you speak back. Category, severity, photo, description, submission — zero screen touches required.

🔠 Dynamic Text Sizing

Respects your device's accessibility text size settings. Everything scales properly — no truncated text, no broken layouts.

🌓 High Contrast Mode

Enhanced contrast color palette for users with low vision. Larger touch targets. Reduce-motion support.

🧭
Access & Equity Reporting

39 categories covering the failures 311 handles worst — because routing is fragmented across ADA coordinators, transit authorities, public housing authorities, and school districts. Full taxonomy at /access-equity.

🛴 Physical Mobility / ADA (7)

Missing curb cuts, broken curb cuts, broken accessibility ramps, ADA-blocked paths, sidewalk dead-ends, broken and missing accessible pedestrian signals. Anchored in 28 CFR Part 35 (ADA Title II) with PROWAG standards.

👁️ Sensory & Cognitive (5)

Missing braille signage, English-only signage where translation is legally required, missing large-print, illegible signs, missing audible signage at transit hubs. Framed under Title VI + EO 13166 for language access.

👴 Age & Vulnerability (6)

Missing benches on senior-housing walk routes, missing shade in heat-vulnerable neighborhoods, broken drinking fountains, missing / closed public restrooms, missing crossing guards, dangerous school walk routes.

🏢 Housing & Shelter Equity (4)

Broken elevators in public housing, broken heat / AC crossing safety thresholds, mold violations under HUD Housing Quality Standards, missing accessibility features under Section 504. Federal complaint pathway via HUD FHEO in addition to local PHA.

🚌 Transit Equity (5)

Missing bus shelters, broken bus shelters, missing benches, ADA-inaccessible platforms, broken wayfinding. Routes to the transit authority (MBTA / RIPTA / etc.) with 49 CFR Part 37 framing.

💻 Digital Public Infrastructure (12)

Broken city website forms, screen-reader-inaccessible PDFs, missing translations, ADA web-accessibility violations, missing plain-language versions, missing captions, broken mobile-app accessibility, missing digital equivalents of in-person services, broken government email, broken phone accessibility, missing responsive design, broken subscription mechanisms. Anchored in the 2024 DOJ web-accessibility rule (WCAG 2.1 AA required). See /digital-infrastructure.

🗺️ Environmental-Justice Aggregation

Not a filed report type — a computed pattern. When reports concentrate in a census tract at a disproportionate rate compared to the peer-tract group, the pattern itself is a citable fact. Public census attributes only; never reporter-inferred.

📐
Advanced Report Types

Beyond the 10-second point report. Systemic patterns, insider observation, commercial property, and URL-first digital-failure reporting.

🛣️ Corridor & Area Reports

Three report types now: point (a single hazard), corridor (a linear street segment with a distributed pattern of failures), and area (a polygon — census tract, neighborhood, facility footprint). Auto-suggested when point-report clusters concentrate along a linear or polygonal feature; community-approved before publication. Weighted 3× on the Shame Index calculation to prevent accountability-arbitrage. See /corridor-reports.

🕵️ Public-Employee Reporting

DPW inspectors, city IT managers, facilities staff, transit workers, and PHA employees can file infrastructure observations that residents can’t see. Scope is narrowly bounded — infrastructure only, never personnel / criminal / classified / retaliation (with referrals to the correct channels: EEOC, IG, AG, whistleblower attorneys). 180-day verification window; expires without escalation if residents don’t independently confirm. Full design at /whistleblower.

🏬 Commercial Property Reporting

Physical / infrastructural conditions on privately-owned commercial property. ADA Title III framing (public accommodations). Photo required, public-view attestation required, reporter attestation required. Individual reports never publish — only aggregations after 5+ verified reports from 3+ distinct reporters over 90 days, with a 14-day right-of-reply window before public attribution. See /business-property.

🔗 URL-First Digital Reporting

Digital-infrastructure failures don’t photograph well — a screen-reader trap has no visual footprint. When a resident selects a digital-infrastructure category, the flow switches to URL-first: target URL + assistive-tech context + optional WCAG success criterion + automated page snapshot captured at submission. The snapshot is the evidence — cities can’t remediate the URL and later claim the report was inaccurate.

📊
Accountability Outputs

What Fault Line produces beyond individual reports: public grades, positive recognition, structured briefings for elected officials, and press-ready cluster summaries for local journalists.

🅰️ Shame Index & Grading Methodology

Cities that clear the minimum-data threshold get a public A–F grade weighted from fix rate (40%), response time (25%), severity-weighted backlog (20%), and recurrence (15%). Methodology fully published at /methodology with weights, thresholds, dispute process, and update cadence. Cities cannot pay to hide, alter, or delay their grade.

🏆 Rapid Response Roll

The positive-feedback counterweight to the Shame Index. A public, measured record of the departments and crews that resolve reported hazards fastest — verified via community re-photo, peer-normalized against similar-size municipalities. Absence isn’t evidence; only presence is. Full methodology at /rapid-response.

📋 Council-Member Briefing Packets

Monthly district-level briefings sent to every council member of record. Non-partisan by design; PDF + JSON delivery; talking-point suggestions; district vs. citywide performance comparison; Rapid Response Roll credits for fast-resolving crews in the district. Format published at /briefing-packets.

📰 Press-Ready Cluster Summaries

Event-driven summaries for subscribed local journalists when a cluster crosses a threshold (20+ verified reports, 90+ days past statutory deadline, or an equity-aggregation flag). Suggested headline, draft lede, key numbers, GPS-tagged photos, right-of-reply status. Delivered 24 hours after the responsible authority is pre-notified.

Right-of-Reply Pipeline

Shared infrastructure across press summaries (24-hour window) and commercial-property attributions (14-day window). Authority contact of record receives pre-notification; response is appended to the published artifact; window must close before publication proceeds. Prevents surprise attribution.

📈 Per-State Statutory Table

Public reference at /claim-by-state covering MA / RI / NH / ME / VT / CT / NY / CO / OR / NM. Notice periods, damage caps, primary-source citations, per-state audit points. High-intent SEO surface for "pothole damage claim [state]" queries.

⚖️
Legal Framing Dispatch

Every generated demand letter is composed from three versioned datasets. Chain-of-custody disclosure in the footer so recipients can see the provenance of every claim.

📚 5 Legal Framings

Every category maps to a framing: defective-highway (state statutes for physical infrastructure), ada-title-ii (28 CFR Part 35 for public-entity access barriers), fair-housing-504 (public housing), title-vi-language (federally-funded language access), transit-ada (49 CFR Part 37). Framing determines the letter’s headline, citation, notice-period language, demand verbs, and federal-fallback complaint pathway.

📄 Versioned Statute Dataset

Per-state defective-highway statutes with semver, chain-of-custody metadata, known-ambiguities list, and primary-source URLs. MA / RI / NH shipped as pending-review. When a state entry has not been attorney-reviewed, every generated letter prepends an unreviewed-content banner — the resident sees the warning before they send.

📮 Versioned Routing Dataset

Per-(category, jurisdiction) routing to the correct primary authority + escalation authority + federal fallback. 17 records seeded for MA / RI / NH + 4 federal fallbacks (DOJ CRD, HUD FHEO, DOJ Title VI, FTA CR). Fall-through means an unmapped state still gets a routable letter to the federal-fallback agency.

🏛️ Versioned ADA Title III Standards

2010 ADA Standards for Accessible Design used by the commercial-property flow. 5 standards seeded (accessible-route-slope, accessible-entrance, accessible-parking, accessible-restroom, tactile signage). Same pending-review chain of custody.

🔍 Chain-of-Custody Footer

Every letter footer carries three versioned disclaimers: statute version, routing version, template version. Recipients can audit exactly which claim comes from which dataset entry. Reviewers can promote entries from pending-review to verified and the footer surfaces the change immediately.