← All posts

AI

Eleven errors to zero before Delray Beach passed its checks


Eleven errors to zero before Delray Beach passed its checks

No city reaches a customer until it passes every one of its checks. Delray Beach, Florida, 19,145 parcels, failed with 11 errors, then 8, then 7, then 6, and passed at 0.

The five runs below are in order, and they are not all of the runs. Delray Beach was one of the first cities through the harness, so it went through many more than most.

Explore AIM to find sites at city scale: Ask in plain language and see matches.

What a run is

When we prepare a city, parcel-finder, our zoning infrastructure, gathers the city's parcel data, zoning map, ordinance, overlays and state law, joins each parcel to its district, and applies the district's rules to the parcel. The result is a record for every parcel in the city.

Before that record reaches a customer it has to pass several hundred checks. Each check states, in advance, one thing that must be true of the record (a value present, a number inside its range, a calculation that matches its inputs) and either confirms it or fails. A check never passes by default.

A run has two steps. Promote adopts the latest changes to the code into the city run. Certify runs the checks and reports whether the city passed. Between one run and the next, logic was built or corrected, and the whole city was run again. The fifth run below certified a version that had already been promoted.

Five runs

First run: 11 errors.

Second run: 8 errors.

Third run: 7 errors.

Fourth run: 6 errors.

Fifth run: 0 errors, 15 warnings. Pass.

Runs 1 and 2: 11 errors, then 8.

Runs 1 and 2: 11 errors, then 8.

Runs 3 and 4: 7 errors, then 6.

Runs 3 and 4: 7 errors, then 6.

What one check caught

The first run brought 254 condominium buildings into the city. In the county's records, each condominium unit is a property with its own owner, so a tower of four hundred units arrives as four hundred records. Unless each unit is identified as part of one building, a query can take a unit for land, and a search for development sites returns a tower's worth of apartments as four hundred pieces of land.

The 254 new building rows arrived with no address, no owner and no land-use label. A check states that every row must carry all three. It failed on 254 rows, and kept failing through the second and third runs. On the fourth run the rows had their labels, and the error count dropped from 7 to 6.

What the pass means

The fifth run certified the latest version of the city in one minute and 40 seconds: 19,145 parcels, 0 errors, 15 warnings.

The same line records what the pass did not do: "Nothing was rehydrated, synced, or marked ready for customers." Passing certification is not permission to publish. Making the city available to the products is a human decision, and declaring it ready for customers is a second one. Neither had been taken.

Run 5: pass, 0 errors, 15 warnings.

Run 5: pass, 0 errors, 15 warnings.

What a developer gets

Nothing, from any run that failed. A city that fails certification does not reach AIM or DEV, the Deepblocks products that read it. Six errors did not let the city pass. Zero did, and a pass is still two human decisions away from a customer.

When a city does reach a developer, every one of its checks passed first. A pass proves what the checks state and no more. It does prove that the checks were run, and that none failed.

Explore AIM to find sites at city scale: Ask in plain language and see matches.

Related posts