The decisions that only happened out loud: making meetings searchable

Six months ago I'd have told you our decisions lived in Jira comments and Slack threads. Messy, but text, and text is searchable.

Then we started indexing our meeting transcripts, and I had to revise that. A meaningful fraction of what we'd decided had never touched Jira or Slack at all. It happened in a call, someone said "yeah, let's do that," everyone nodded, and the decision existed only in four people's memories and a recording nobody would ever rewatch.

The gap you don't notice

Written channels have a survivor bias. The decisions that made it into a ticket comment are the ones someone bothered to write down — usually because they were contentious, or because a specific person is diligent about it. The decisions that felt obvious in the room, that nobody argued with, are exactly the ones that don't get written up. And those are often the load-bearing ones.

"Why do we cap uploads at 25MB" turned out to have been decided in a planning call eight months earlier. The reasoning was sound — a specific downstream service fell over above that — but it was never a ticket, never a Slack message. Just a sentence someone said once. A new engineer asking "can we raise the upload limit" had no way to find that, and would have had to rediscover the downstream limit the hard way.

What indexing transcripts actually gets you

We connect a meeting notetaker, and the transcripts get pulled in and chunked the same way tickets and messages are — searchable, with dates, tied into the same query as everything else.

The value isn't rewatching meetings. It's that a question like "what did we decide about the caching approach" now searches the room, not just the written record. If the decision happened in a call, the relevant thirty seconds of transcript comes back with the date and who said it, next to any related tickets.

It also makes a certain kind of disagreement legible. Sometimes the ticket says one thing and the meeting three weeks later said the opposite, and nobody updated the ticket. Seeing both, dated, side by side, is how you catch that the plan quietly changed and the artifact didn't.

The caveats, and there are real ones

Transcripts are noisy. People talk over each other, trail off, say "the thing" instead of the noun. Retrieval on transcript text is genuinely harder than on written prose, and the chunk that comes back sometimes needs the surrounding context to make sense.

Not everything said is decided. A meeting is full of half-formed ideas that got discarded five minutes later. Surfacing "someone suggested X" as if it were a decision is a failure mode. We lean on recency and on cross-referencing — an idea that also shows up in a later ticket is more likely to have been real.

Consent matters. Recording and indexing meetings is a team-culture decision before it's a tooling one. If people don't know they're being transcribed and searched, that's a problem regardless of how useful the index is. We only index meetings the team has opted into.

Where it's useful

It's most valuable for the questions that start with "why." Why is it built this way, why did we rule out the obvious alternative, why is there a weird limit here. Those answers disproportionately live in conversations, and until we indexed the conversations, the honest answer to a lot of "why" questions was "ask whoever was there, if they remember."

The upload limit, since you're wondering: the downstream service has since been replaced, the 25MB cap is now arbitrary, and there's a ticket open to raise it. We only know the original reason is obsolete because we could find the original reason.

Connect your meeting notes alongside Jira and Slack, and try asking a "why" question you've never found a written answer to.