Miami Has 150 Civic Records on File. Zero Are Scored for Hostility, Upzoning, or Litigation Risk. The Vessel Identity Layer Feeding Its Port CRE Is Just as Blind.
The Setup
PortMiami anchors a meaningful slice of the metro's industrial and warehousing commercial real estate. Underwriting that footprint draws on two independent data feeds: the vessel identity graph, fleet-wide, for counterparty and cargo-legitimacy signal on who's calling at the port; and the civic-records pipeline, local to Miami, for entitlement, hostility, and litigation exposure on the land side. Right now, neither feed is complete — and they're incomplete for different reasons.
The Chain
On the vessel side: 864 mmsi_changed edges have been logged fleet-wide since April 5, on 864 distinct hulls, 100% flagged as obfuscation, 100% still open. None has closed, none has been adjudicated, none has been distinguished from any other in the batch (see the companion analysis published alongside this one). Any of those 864 could belong to a vessel that has called, or will call, at PortMiami — the graph doesn't currently give an underwriter a way to cross-reference port-of-call against reassignment timing, so there's no way to separate a genuine evasion pattern from an ordinary re-registration that happened to land the same week.
On the land side: Miami carries 150 civic records — council filings, permits, zoning actions — logged in civic_records. None of the 150 has a scored hostility_index, upzoning_probability, or litigation_risk_score. Those three fields are populated elsewhere in the same table: 336 of San Francisco's 1,157 records are scored, 25 of Chicago's 197, 3 of Houston's 14. The enrichment pipeline exists and runs in other metros. It has not reached Miami's 150 yet. For context, Miami's 203 tracked cells carry an average safety_environment score of 73.98 and an average esgi_score of 0.00 — the ESGI signal that's populated for a handful of other metros is absent here too, same as it's absent in most of the tracked footprint.
The Implication
A CRE model underwriting Miami's port-adjacent industrial stock right now has no local counter-signal available to it — no hostility read on the neighborhoods around the port, no upzoning probability to weigh against a deal, no litigation-risk flag — at the exact moment the upstream vessel-identity signal is running at 100% flagged-and-unresolved. The two gaps don't cancel out; they compound. A model can't fall back on "the local civic signal looks calm" when the local civic signal hasn't been scored at all, and it can't fall back on "the vessel calling here has a clean identity history" when the identity layer treats every MMSI change as adversarial and closes none of them.
What to Watch
Whether Miami's civic-records enrichment backfills — the SF-and-Chicago pattern suggests the scoring pipeline reaches new metros in batches rather than continuously, so a jump from 0 scored records to some nonzero number would be the signal to watch for, not a gradual climb. Separately, watch whether any of the 864 fleet-wide MMSI reassignments resolve to a Miami-linked port call once that cross-reference gets built.
Limitations
The civic-records enrichment gap is a coverage gap, not evidence that Miami's entitlement or litigation risk is actually zero — absence of scoring is not evidence of absence of risk, and treating it that way would be the wrong read. The mmsi_changed figures cited here are fleet-wide, not Miami-specific; no direct join between the 864 reassignment events and PortMiami calls has been run for this piece, so the connection described above is structural — two incomplete feeds converging on one underwriting decision — rather than a demonstrated case-level link between a specific vessel and a specific Miami deal.
--- Data as of 2026-08-12. Sources: `temporal_edges` (relation_type = 'mmsi_changed'), `civic_records` (metro_slug = 'miami'), `cell_scores` (metro_slug = 'miami'). Axiom Locus / Axiom Overwatch shared graph.