MarketWatch Intel
← All resources

Cara Whitfield · 2026-04-08 · 4 min read

The cost of getting it wrong

A short note on why we never let the language model make claims about a competitor we cannot prove from the underlying signal.

An intelligence product is only as useful as the worst mistake it has ever made on your behalf. Send one false alarm — a price drop that wasn't a price drop, an exec hire that wasn't an exec hire — and the customer will read every subsequent brief through the lens of that mistake. We learned this in our first year, the hard way, twice.

The architecture is built around that fact. Every claim in the Compass brief points to an underlying signal. If we cannot point to a snapshot, a sitemap entry, a social post or a news headline, we do not write the claim. The system prompt forbids it. The voice-lint pass catches it. The fallback narrator, when the language model is unavailable, refuses to insert it.

There is a second guardrail. The language model never names a customer's own product, internal pricing, or roadmap. We never reach into the customer's data, only out into the public record. This was a deliberate scope decision. It costs us some functionality — we cannot tell a customer how their own SKU is positioned against a competitor's matched SKU automatically. But it removes an entire class of leakage and an entire class of "the brief read like it had been to the all-hands" complaints.

If you are evaluating a competitive intelligence product, I would push hard on this. Ask the vendor what they do when the language model wants to write a claim that the underlying signal does not support. The answer should be: nothing — the prompt does not allow it, and the lint catches it, and the fallback narrator refuses to insert it. Three lines of defence. Anything less and you will eventually have a Wednesday morning you do not enjoy.

Tags: #editorial · #founder