It reads the documents against each other and reports where they do not line up
Assume you have never heard of this. Here is the mechanism, in the order it happens.
In. A bid package for electronic physical security work. Specification sections, drawing schedules, addenda. Out. A ranked list of the things in that package that will generate an RFI, a change order, or a field failure, each one carrying the rule that caught it, the document and page it came from, the rationale, the authority, and a recommended action you can take before the bid closes.
It is not reading for comprehension. It is reading for disagreement. A document is segmented by CSI MasterFormat section, every located sentence keeps its document, page and coordinates, and then ordinary code compares what one document says against what another does not. The finding is always a relationship between two named places, which is why it can be printed with citations on both sides of it.
The seam it is built for
Door hardware is specified in Division 08 by the architect. Access control is specified in Division 28. Electric strikes, electrified locksets and latch retraction devices sit exactly on that line, and each package routinely assumes the other side covers it. That seam is the highest-value scope gap in this domain, and it is the thing this engine was built around.
For any one opening, on its locking device, its power and its rough-in, there are five states, and four of them cost money:
- Both divisions carry it. A duplicate buy, or an argument at submittal.
- Both carry it and require different things. An argument on the day the opening is hung, with two specifications that both say they are right.
- Each division hands it to the other. The seam failure caught in the act. A sentence reads "by others, by Division 28", the security contractor reads it as somebody else's scope, the hardware supplier reads the same sentence and agrees it is Division 28, and neither party prices the rough-in.
- Neither division specifies it. Nobody priced it, so after award somebody eats it.
- The documents do not settle it. Reported as a flag that means look here, deliberately kept as a separate finding from "nobody is assigned", because collapsing the two is what makes an estimator stop believing a register.
The output is not an estimate and it is not a takeoff. It is the list of questions to ask while asking is still free, which is the raw material for your qualifications and assumptions, your inclusions and exclusions, and the alternate adds you decide to carry.
What runs today, stated before you ask
Verified against the code rather than taken from a module name.
runs today
Document ingest. Reads a package of PDFs, segments by CSI section, and locates the markers where margin disappears: NIC, by others, furnished by, installed by, OFCI, CFCI. It has a measured recall gap, recorded rather than assumed.
runs today
The deterministic engine. Rule loading and evaluation with conflict groups, six validators that print their computed values, the ranked register, the bill of materials, and the report. Runs replay byte for byte from the same inputs.
half fed
The Division 08 and Division 28 seam analysis. Written and tested. It reads two kinds of evidence, located scope statements and structured claims, and only the first is populated on any package the tool can currently produce. So it runs at half its designed evidence today.
not built
Reading the plan sheets. Specified and not built. Nothing in the system draws or reads a drawing. Spatial models are hand authored today.
not built
The benchmark. The only thing that would let anyone claim this engine is accurate. It has no dataset.
The longer version of all of this, written for people who read bid packages for a living and have no reason to care how software is built, is at /how-it-works/, and the same system drawn as five diagrams is at /diagrams/.