---
title: "Discussion on \"Facts, guesses and unknowns: keeping an AI sales agent honest\" | Hashnode"
description: "Discussion on \"Facts, guesses and unknowns: keeping an AI sales agent honest\". LLMs quietly turn 'they are hiring' into 'you are struggling'. Five design choices that keep an AI agent's claims tied to their sources."
url: "https://hashnode.com/posts/facts-guesses-and-unknowns-keeping-an-ai-sales-agent-honest/6ad27a0dbd1b90f3a0d2ac4f"
---

[Feed](https://hashnode.com/feed) /

Discussion

# [Facts, guesses and unknowns: keeping an AI sales agent honest](https://glue-eng.hashnode.dev/facts-guesses-and-unknowns-keeping-an-ai-sales-agent-honest?utm_source=hashnode&utm_medium=feed)

LLMs quietly turn 'they are hiring' into 'you are struggling'. Five design choices that keep an AI agent's claims tied to their sources.

Oct 16 · 5 min read · glue-eng.hashnode.dev  
Read the article

-   [#ai](https://hashnode.com/tag/ai)
-   [#llm](https://hashnode.com/tag/llm)
-   [#software-architecture](https://hashnode.com/tag/software-architecture)
-   [#typescript](https://hashnode.com/tag/typescript)

## Written by

[Vaibhav Verma](https://hashnode.com/@verma6uc)

@verma6uc

  
[View profile](https://hashnode.com/@verma6uc)

CTO at Leucine | Founder of MachGTM | CodeIntelligently

I'm Vaibhav Verma, CTO at Leucine, with 23+ years in engineering. I build MachGTM and write about sourced sales workflows at https://machgtm.com/blog. CodeIntelligently is my engineering publication about code quality, technical debt and codebase understanding: https://codeintelligently.com/blog. I'm also exploring a product for understanding codebases and assessing changes.

## Responses 1

Markdown supported · ⌘↵ to post

[Oct 17](https://hashnode.com/posts/facts-guesses-and-unknowns-keeping-an-ai-sales-agent-honest/6ad27a0dbd1b90f3a0d2ac4f/comment/6ad2ff226a06a6508a0026e8)

The "draft only from facts" rule matches what I've seen work. Two additions that helped in a similar pipeline. First, verify citations mechanically after generation: for each claim, check that the cited fact id exists and that the claim's key nouns and numbers appear in the fact's quote. A cheap string or embedding similarity check catches most cases where the model cites a real fact but overstates it ("plans to" becoming "has launched"). Second, tense and modality drift is the most common failure, so add a small list of banned upgrades to the validator: plan/launched, discussed/agreed, hiring/struggling. If a sentence trips one, send it back for a rewrite instead of to the reviewer. Also, keep the fact's seenAt visible in the review screen. Facts older than about 60 days should be phrased as questions too, because hiring posts and roadmaps go stale quickly.
