How Contract Medic is put together
One machine. Two readers.
Contract Medic is built on Emergent: the app, the upload, the clause register, the documents, the payment, the ops page. Because it reads law, it doesn't get the last word alone — a second engine on Make.com reads every clause against the same statute text and returns a severity per clause. Every clause where the two engines disagree is routed to human review before release, and the s.63 notice-schedule comparison runs as code — not as a model judgement — so the same clause always produces the same verdict. This is that machine, drawn the way you'd draw it for an inspector.
The whole build · live map
Every app, every language, every scenario, every table — one page.
Two Contract Medic apps (BC + New York), one shared translate engine, thirteen target languages, seven Make.com scenarios, and the nine Airtable tables that carry the law, the outreach and the payments.
Machine translation via Claude Sonnet 4.6, paragraph by paragraph. Back-translated for flags. Two-column PDF with red header and diagonal "READING COPY" watermark on every page. Free for the first 50. Held for review before it goes to the customer.
We never open the file. Forwarded unopened to the certified translator whose Region + From/To matches in Airtable. The translator quotes the customer directly (reply-to = customer). We get a notification with no attachment.
Other tools built on the same platform: thanxofficial.com
How one contract moves
What we kept from each build
From the Emergent build
keptThe whole customer side: upload, the free preview, pricing, payment, the two-document output, the methodology page, the operator queue, the lock.
keptIts own clause-by-clause engine, now Reader 1.
goneIts hand-written copy of the law and its hard-coded words. Both now come from the table.
From the Make.com build
keptThe Live Review Engine that grades all 39 clause registers against the Employment Standards Act with the section behind each finding. It is Reader 2 on every contract.
keptThe Airtable record: one row per review, the law text with its change log, the outreach machine.
goneThe website's own upload page as a second front door. The site now sends you to the app.
What the blend added
newOne law text, read by both engines at run time. An amendment is a one-cell edit that reaches every review from the next run.
newThe comparison. Agree, and you see "Checked by two engines". Disagree, and we read it before anything goes out.
newEvery word on screen edited in a table, no redeploy. And Check In, free with every purchase.
First live run through the blended app · 12 September 2026
The test agreement was written to fail. Clause 9.2 gave "one week per completed year of service, to a maximum of eight weeks." Both engines graded it Fatal for the same reason: at twelve months that formula pays one week, and s.63 of the Employment Standards Act requires two. A clause that pays less than the Act is void, and a void clause revives common-law reasonable notice — usually months, not weeks.
Neither engine cited another province's law. The app's own pass took about a minute; the second opinion arrived seventy seconds after it. One row was written to the record with both engines' counts.
We used Emergent for as much as we could and we liked it. For statutory arithmetic we got steadier results from the Make engine we had already built, so instead of choosing, we put it behind the app as the second reader. Where they agree, you see it. Where they don't, we do.
Sister build: the New York build →