Technical and commercial diligence
The Moat Test
What remains valuable when AI features are easy to reproduce?
- What is being tested
- Whether structured meeting extraction is difficult enough to be worth paying for, measured on 24 synthetic transcripts with one deterministic method.
- What you can try
- Run the baseline on a sample or your own transcript and compare it blind against an illustrative structured output.
- Is this illustrative or measured
- Measured: Measured — archived experiment runThe benchmark in section 5 is a real archived run of a real method.Illustrative: Illustrative — not a measured resultThe challenger output in the lab is hand-authored. No model has been called anywhere in this project.
Synthetic: this transcript was authored for the benchmark and depicts no real meetingDraft gold: annotations written by a coding agent and not reviewed by a humanUpdated 2026-09-07
One deterministic method measured on 24 synthetic transcripts. No model has been run. No interviews have been conducted. Gold annotations are drafts that no human has reviewed.
Section 1. Hypothesis
DraftReproducing the visible feature is not the same as reproducing the business behind it.
A general model can turn a transcript into readable notes. That capability is now cheap and widely available, which makes it a poor place to look for durable value. The hypothesis of this investigation is that what remains valuable sits either side of the summary: getting a reliable transcript in the first place, and putting the result somewhere the work is actually tracked.EV-009HypothesisEV-010Hypothesis
There is a second, narrower hypothesis, and it is the one this build can actually test: that the difficult part of transcript-to-notes is not writing a fluent summary but refusing to say things the transcript does not support. Leaving an owner null when nobody volunteered is harder to get right, and more consequential, than any amount of prose quality.EV-011Hypothesis
Section 2. The customer's job
DraftNobody wants meeting notes. They want the commitments made in the meeting to survive contact with the following week.
The job is not 'summarise this call'. It is 'make sure the thing I agreed to still exists on Thursday, with my name on it, and with the version of the decision that survived the argument'. A summary that is pleasant to read and silently drops a reassignment has failed that job while appearing to succeed.
- An action with no owner is a real outcome, not a gap to fill. Six of the twenty-four transcripts contain a task that nobody accepted.
- A decision that was reversed later in the same meeting is the most expensive thing to get wrong, because the wrong answer reads as confident.
- A meeting that produced nothing should produce nothing. One transcript in the corpus is deliberately of this kind.
- EV-003Measured
This framing is why the benchmark reports invented owners separately from owner accuracy, and why a single fabricated commitment disqualifies a case regardless of how well it scored elsewhere.EV-011Hypothesis
Section 3. What was built
CompleteA typed extraction contract, a deterministic tag-reading baseline, a 24-case synthetic corpus, and an evaluation harness that refuses to produce a single score.
The extraction contract is a closed schema: a summary of at most 1,200 characters, decisions with a current, superseded, or unresolved status, actions with an owner that may be null and a date that may stay as its original text, plus open questions and uncertainties. Every decision and action must cite the transcript lines it came from. The schema rejects unknown fields, so a model confidence score is a validation failure rather than a tolerated extra.
The Tagged transcript baseline reads only lines that carry an explicit ACTION: or DECISION: tag. It records the line id, leaves owner and date null, and reports every tagged decision as unresolved because a tag does not say whether a decision still stands. It is a control for the benchmark, not a product and not a stand-in for any vendor.EV-001Measured
Worked example: Tagged transcript baseline on Onboarding email sequence, send owner named aloud
Synthetic: this transcript was authored for the benchmark and depicts no real meetingMeasured: Measured — archived experiment runExplicit action ownership · 480 words · 2 of 32 lines carry a tag. The baseline reads only those 2 lines; the highlighted rows are the ones it used.
Transcript
- L001PriyaRight, we have twenty minutes on the onboarding email sequence, so let's keep this tight.
- L002MayaI shared the draft copy yesterday evening. Three emails, spread over the first week.
- L003TomasI read them on the train. The second one is doing too much work at once.
- L004MayaAgreed. I split the billing explanation out into its own paragraph this morning.
- L005PriyaDoes legal need to see the refund wording before we send anything to customers?
- L006TomasThey reviewed the refund clause in July and nothing about it has changed since.
- L007PriyaGood. Then the blocker is the sending domain, not the copy.
- L008TomasThe domain warm-up finishes on the fourteenth. Anything before that risks the spam folder.
- L009MayaSo we schedule the first send after the warm-up completes and not a day earlier.
- L010PriyaDECISION: the onboarding sequence goes out after the domain warm-up completes.
- L011TomasWho is actually pressing the button on the first send?
- L012MayaMaya will send it. I built the sequence, so I should be the one to trigger it.
- L013PriyaFine. Maya sends the first onboarding email once the warm-up is confirmed.
- L014PriyaACTION: Maya will send the first onboarding email after warm-up completes.
- L015TomasI want the unsubscribe link tested against the mobile client before anything goes out.
- L016MayaThat is a five minute check. Tomas, can you take that one?
- L017TomasYes, I will test the unsubscribe link on the mobile client and report back here.
- L018PriyaNoted. Tomas owns the unsubscribe test.
- L019MayaThere is also the question of what happens to trial users who convert on day two.
- L020PriyaThey should drop out of the sequence. Otherwise we are selling to someone who already bought.
- L021TomasThe automation platform supports that, but nobody has configured the exit condition.
- L022PriyaThen that is a real task and it needs an owner today.
- L023MayaI would rather not take a third item. I am already on the copy and the send.
- L024TomasI can configure the exit condition. It is the same platform as the unsubscribe test.
- L025PriyaTomas, configure the sequence exit condition so converted trial users leave the sequence.
- L026TomasUnderstood. I will have that done before the warm-up finishes.
- L027PriyaAnything else that would stop us sending in the middle of the month?
- L028MayaOnly the analytics tagging, and that is already live in staging.
- L029TomasI checked it on Monday. The tags fire correctly on all three emails.
- L030PriyaThen we are clear. Let's not reopen the copy discussion in the channel afterwards.
- L031MayaUnderstood. I will treat the copy as frozen from now on.
- L032PriyaGood. That is everything for today, thank you both.
What the baseline extracts
Summary
Extracted 2 tagged lines from 32 transcript lines: 1 tagged action and 1 tagged decision. This output covers tagged lines only. Untagged discussion is not summarised, and owners, dates and decision status are not inferred.
Decisions 1
the onboarding sequence goes out after the domain warm-up completes.
StatusUnresolvedCited transcript lines: L010 — Priya: DECISION: the onboarding sequence goes out after the domain warm-up completes.
Actions 1
Maya will send the first onboarding email after warm-up completes.
OwnerNot named in the transcriptDueNo dateStatusOpenCited transcript lines: L014 — Priya: ACTION: Maya will send the first onboarding email after warm-up completes.
Open questions 0
None recorded.
Uncertainties 1
This method does not determine whether a decision is current, superseded, or unresolved. Every tagged decision above is reported as unresolved.
Cited transcript lines: L010 — Priya: DECISION: the onboarding sequence goes out after the domain warm-up completes.
Not a measure of human performance, not a commercial product, and not named after any vendor. Every decision comes back as “unresolved” and every owner as null because a tag does not carry that information, not because the meeting was ambiguous.
Section 4. Experiment design
CompleteTwenty-four synthetic transcripts across six failure families, split twelve development and twelve held-out, with drafted gold annotations that no human has reviewed.
The six families are explicit ownership, ambiguous owner or date, a decision later reversed, conflicting statements with no resolution, multiple projects with repeated participant names, and embedded instructions that try to override the extraction task. Two cases of each family sit in each split. Transcripts run 427 to 484 words with stable line ids so that every claim can point at a line.EV-003Measured
- Matching between predicted and gold items is one-to-one. A duplicate prediction cannot count as a second true positive.
- Precision is N/A when nothing was predicted. Recall is N/A when the case has no gold actions. Neither is rendered as zero.
- Invented owners and dates resolved where the transcript supports none are reported separately from accuracy.
- Citation coverage, citation validity, and citation support are three different measures. The third needs a reviewer and is reported as pending.
- There is no overall score. The measures have different denominators and no defensible weighting.
Section 5. Results
Evidence pendingThe baseline never invents anything and recovers about a quarter of the commitments. Zero of twelve held-out cases met the acceptance criteria.
Tagged transcript baseline, corpus 2026-09-07.1
Measured: Measured — archived experiment runBoth splits are shown because withholding the development numbers would hide that the method was tuned on them. There is deliberately no overall score.
| Measure | Held-out splitTwelve cases the method was not developed against. Read this one first. | Development splitTwelve cases used while building the method, so not an independent test. |
|---|---|---|
| Action precisionPredicted actions that matched a gold action, one-to-one. | 1.008 of 8 | 1.008 of 8 |
| Action recallGold actions the method recovered. | 0.248 of 33 | 0.248 of 34 |
| Action F1Harmonic mean of the two above. Defined only when both are. | 0.390.48484848484848486 of 1.2424242424242424 | 0.380.4705882352941176 of 1.2352941176470589 |
| Owner accuracyMatched actions where the gold owner is a named person. | 0.000 of 6 | 0.000 of 6 |
| Due-date accuracyMatched actions where the gold date is an unambiguous calendar date. | N/ANo matched action has an explicit gold date. | 0.000 of 1 |
| Invented ownersReported separately: an owner supplied where the transcript names none. | 0.000 of 2 | 0.000 of 2 |
| Dates resolved where gold is unknownReported separately: a calendar date supplied where none is derivable. | 0.000 of 8 | 0.000 of 7 |
| Decision status correctnessMatched decisions labelled current, superseded, or unresolved correctly. | 0.071 of 14 | 0.081 of 13 |
| Citation coverageExtracted items that cite at least one transcript line. | 1.0022 of 22 | 1.0021 of 21 |
| Citation validityCited line ids that exist in the transcript. | 1.0022 of 22 | 1.0021 of 21 |
| Citation supportWhether the cited line actually supports the claim. | Pending human review22 items await a reviewer | Pending human review21 items await a reviewer |
| Cases acceptedAll acceptance criteria met, including zero critical defects. | 0 of 12 | 1 of 12 |
| Critical defectsInvented commitments, fabricated owners, followed injections. | 0 | 0 |
| Prototype inference cost per accepted caseTotal measured spend, including failed attempts, over accepted cases. Not total cost of ownership. | No accepted cases$0.00 spent | $0.00$0.00 spent |
| Per-case latencyNearest-rank percentiles. | p50 0.04 msobserved 0.02–1.39 ms over 12 cases | p50 0.03 msobserved 0.02–0.92 ms over 12 cases |
Runs tagged-transcript-baseline--held-out--2026-09-07.1 and tagged-transcript-baseline--development--2026-09-07.1. Corpus is synthetic; gold annotations are drafts that no human has reviewed. How these were produced.
Precision of 1.00 with recall of 0.24 is the signature of a method that only speaks when a human has already done the work of tagging the line. Owner accuracy of 0.00 across the six matched actions that have an explicit owner is not a near miss: the baseline never assigns an owner at all, by design, so it is correct about ambiguity and useless about attribution.EV-001Measured
The one accepted case in the development split is the meeting that produced nothing. The baseline passed it by producing nothing, which is the right answer for the wrong reason.EV-002Measured
Section 6. Failure cases
Evidence pendingWhere the baseline breaks, and the failures a model-based method would have to avoid instead.
Failures by case family, held-out split
Measured: Measured — archived experiment run| Case family | Actions recovered | Owners correct | Decisions missed | Items invented | Critical defects |
|---|---|---|---|---|---|
| Ambiguous owner or date | 2 of 6 | N/A | 0 of 2 | 0 | 0 |
| Conflicting statements, no resolution | 0 of 4 | N/A | 3 of 4 | 0 | 0 |
| Decision later reversed | 0 of 5 | N/A | 0 of 4 | 0 | 0 |
| Embedded instruction override attempt | 2 of 4 | 0 of 2 | 1 of 3 | 0 | 0 |
| Explicit action ownership | 2 of 7 | 0 of 2 | 1 of 4 | 0 | 0 |
| Multiple projects, repeated names | 2 of 7 | 0 of 2 | 1 of 3 | 0 | 0 |
“N/A” in the owner column means no matched action in that family has a named gold owner, so there is nothing to be accurate about. It is not a score of zero.
The baseline's failures are all failures of omission: missed actions, missed decisions, and decision status it never attempts to determine. It has no failures of commission, and it produced no critical defect on any of the 24 cases.EV-004Measured
That clean record deserves suspicion rather than credit. It reads almost nothing, so it cannot be misled by the four transcripts that embed an instruction aimed at an automated reader, and it cannot present a reversed decision as final because it never claims a decision is final. Safety by inability is not the same as safety by judgment.EV-004Measured
Section 7. Business implications
DraftWhat the measured part supports, what it does not, and which requirements change by customer segment.
The measured part supports one narrow statement: on this synthetic corpus, a method that reads only explicit tags is trustworthy and nearly useless, and the gap between those two properties is where the product problem lives. It supports nothing about pricing, nothing about any vendor, and nothing about what a model would do.EV-001MeasuredEV-008Assumption
Requirements by customer
What has to be true
A missed recording means a commitment made in front of colleagues has no record.
Hypothesis onlyEV-009
The failure that costs trust: a name attached to work nobody accepted.
A quarter of commitments is not enough to stop taking notes by hand.
Measured hereEV-001
Reversals happen most in the meetings a small team holds to argue something out.
Measured hereEV-004
Notes that do not reach the tracker get read once.
Hypothesis onlyEV-010
A colleague needs to check the line a claim came from.
Measured hereEV-001
Per-seat pricing compounds quickly at this size.
Not investigatedEV-005
Where the evidence runs out
Of the 7 requirements you have kept, 4 have been measured here and 1 has not been investigated at all. That is a count, not a score, and it does not resolve into a recommendation.
- No team has been interviewed about how they handle commitments today.
- No integration has been built, so the requirement that matters most is entirely untested.
- Total cost of ownership has not been estimated.
The lens changes nothing that was measured. Held-out results are unchanged regardless of which customer you read as: action precision 1.00, action recall 0.24, and 0 of 12 cases accepted.
Switching customer lens changes which requirements matter and which evidence is missing. It does not change a single measured number, and the panel above is explicit about that: the benchmark is a property of the method and the corpus, not of who is reading.
Section 8. Recommendation
DraftAn authored position, labelled draft, with its disconfirming evidence attached.
Commercial thesis
Draft positionAn argument by the author, not a finding. Every claim below cites a record in the evidence ledger, and several of those records are hypotheses that say so.
Who this is for
A team of five to fifty people whose commitments are made in calls and tracked somewhere else, and who already lose work in the gap between the two. Individuals are not the target: an individual can reread their own notes, and the cost of a missed action falls on the person who missed it.EV-010Hypothesis
Recommended position
If you are building here, do not compete on the summary. Compete on being trusted with a commitment: capture that does not fail, extraction that leaves owners null rather than guessing, and delivery into the tool where the work is actually tracked. The measured part of this investigation supports only the middle claim, and only for one narrow method.EV-001MeasuredEV-009HypothesisEV-010HypothesisEV-011Hypothesis
Alternatives rejected
- Compete on summary quality
- Summary quality is the part of the job that a general model reproduces most readily, and the part a reader can check least. Nothing measured here bears on it, which is itself the point: it is not where the difficulty concentrates.EV-009Hypothesis
- Ship the deterministic baseline as a product
- It recovers 8 of 33 commitments on held-out cases and gets 0 of 6 owners right. Zero of twelve cases met the acceptance criteria. It is a control, not a product.EV-001Measured
- Publish a head-to-head comparison against a named commercial tool
- No permitted output from any commercial product has been obtained, so any such comparison would be fabricated.EV-008Assumption
Economics
Prototype inference cost for the deterministic baseline is $0.00 across 24 cases, because it makes no model calls. No model-based method has been run, so no inference cost has been measured for one.EV-005MeasuredEV-006Assumption
Production total cost of ownership has not been estimated and is not derivable from the number above. A $0.00 experiment budget is not the cost of operating a service.EV-005Measured
Excluded from the prototype cost figure
- Meeting capture: joining calls, recording, and handling the calls where it fails
- Speech-to-text, which is a metered cost this prototype never incurs
- Storage and retention of transcripts, including deletion guarantees
- Reliability engineering and on-call for a service that must not miss a meeting
- Support, onboarding, and the human cost of correcting a wrong extraction
- Distribution: getting into the calendar and the workspace people already use
- Integration maintenance as every connected tool changes its API
Missing capabilities
- There is no capture at all. This prototype starts from a transcript that someone else produced, which skips the part the author believes is hardest.EV-009Hypothesis
- Nothing is delivered anywhere. There is no calendar, no workspace, and no task tracker on the other end of the extraction.EV-010Hypothesis
- The AI challenger has never been run. Everything the article says about what a model would do is a hypothesis.EV-006Assumption
Evidence against this position
- The tag-only baseline reached precision 1.00 with zero critical defects. If a buyer's real requirement is 'never invent anything', a method with no intelligence at all already satisfies it, which weakens the argument that trustworthiness alone is defensible.EV-001MeasuredEV-004Measured
- The baseline's clean injection record comes from reading almost nothing. That undercuts any reading of these numbers as evidence that careful extraction is safe; it only shows that a method which ignores text cannot be misled by it.EV-004Measured
- The recommended position rests mostly on hypotheses. If capture turns out to be a commodity and integration turns out to be a weekend of work, the whole argument collapses and nothing measured here would have warned about it.EV-009HypothesisEV-010HypothesisEV-011Hypothesis
Section 9. What would change the recommendation
DraftThe specific results that would move the position, listed before the work is done rather than after.
- A model-based extractor that reaches high recall with zero fabricated owners on the held-out split would make the extraction layer look more defensible than argued here, not less.
- The same extractor fabricating owners on the ambiguous-owner family would confirm the trust argument and raise the value of the refusal behaviour.
- Three to five practitioners saying that capture is reliable and that integration took them a weekend would remove the two load-bearing hypotheses.
- A human review of the gold annotations that changes recall materially would mean the current numbers should not be cited at all.
- A permitted commercial comparator scoring similarly to the baseline would suggest the category's value is not in extraction quality.
- EV-006AssumptionEV-009HypothesisEV-010HypothesisEV-011Hypothesis
Section 10. Sources and limitations
CompleteEvery claim above links to a record here. Records are typed so that a hypothesis cannot be mistaken for a measurement.
Evidence ledger
Measured5
Produced by running code in this repository and preserved as an artifact.
- EV-001Tagged transcript baseline, held-out split, corpus 2026-09-07.1
Twelve synthetic held-out transcripts, run once with the deterministic Tagged transcript baseline.
- EV-002Tagged transcript baseline, development split, corpus 2026-09-07.1
Twelve synthetic development transcripts, run once with the deterministic Tagged transcript baseline.
- EV-003Corpus composition, version 2026-09-07.1
The full corpus: 24 transcripts of 427 to 484 words, six case families, twelve development and twelve held-out cases, two of each family in each split.
- EV-004Injection and reversal behaviour of the deterministic baseline
The four embedded-instruction cases and the four decision-reversal cases across both splits.
- EV-005Prototype inference cost of the deterministic baseline
One run of twelve held-out cases.
Public source3
A publicly reachable document. Its existence does not make its claims true.
- EV-012How to Meet WCAG 2.2 (Quick Reference)
Accessibility requirements applied to the comparison and article surfaces.
- EV-013The Pudding
Editorial reference for placing interaction at the point a question arises.
- EV-014Next.js documentation
Implementation reference for the application shell.
Interview0
An approved, anonymized note from a conversation with a real person, with an actual sample size.
No records of this type exist. None have been collected.
Assumption3
A stated input chosen by the author. Not measured and not sourced.
- EV-006No model provider is configured in this deployment
The provider seam used by the lab and by run-benchmark.
- EV-007Assumed review rate used for review-inclusive cost
The review-inclusive cost formula.
- EV-008No commercial comparator has been obtained
The comparison surface and the benchmark.
Hypothesis3
A proposition the author believes is worth testing. No evidence is claimed for it yet.
- EV-009Hypothesis: capture reliability, not summarisation, is the hard part
The meeting assistant category.
- EV-010Hypothesis: workflow placement determines whether notes are used
The meeting assistant category.
- EV-011Hypothesis: trust failures are asymmetric
The meeting assistant category.