← All Field Notes
GHL · Digital Marketing Agency · Sep 26, 2026

We Replaced What An Approved Post Would Publish, And The Old Yes Still Counted

We Replaced What An Approved Post Would Publish, And The Old Yes Still Counted

Key takeaways

Nothing we post goes out without a yes. Every automation that stages a post adds a row to one approval file: what's waiting, where the draft lives, and a marker that names the queue item. I approve or reject from a dashboard. Every fifteen minutes a posting job wakes up, checks what's due, and looks up each item's row to see if it has a yes.

That lookup is simple. It searches the file for the item's marker and takes the first row that matches.

For a long time that was fine, because every item had exactly one row. It's the same setup a lot of Go High Level Bay Area businesses run without thinking about it: somebody drafts, somebody approves, a scheduler posts. The weak spot is what the approval is actually attached to.

The re-cut

On September 20 we were working on a community account we post for. One of its queued items was a short spotlight video for a Monday morning slot. It had been approved on September 4.

When we looked at it again, the video didn't pass our own bar. It had four visual changes in almost thirteen seconds and one stretch of more than five seconds with nothing new on screen. Our rule is no hold longer than three. So the plan was to replace it with a single still image, which is a different kind of post entirely.

Different asset, different decision. We'd add a new row, mark it pending, and ask.

Here's the part that would have bitten. The still was going to keep the item's old name. The September 4 approval was still in the file with that name on it, and it came first.

On the next fifteen minute tick, the job would search for the item, find the old approval first, and treat the still as approved. A post nobody had looked at would have gone out Monday morning with a real yes attached to it. Just a yes for something else.

Diagram of the approval file: an approved row from September 4 sits above a new pending row for the same item name, and the posting check reads the first match, so the old approval decides for the new version

Caught before it fired

We saw it while building the replacement, before anything posted. The fix was to rebuild the item under a new name. The video item had been the reel. The still became the post.

Now the old approval pointed at a name that no longer existed in the queue, so it matched nothing. The new row pointed at the new name, and it was the only row that did.

Then we checked the whole queue, not just the one item. Every queued item against every marker in the approval file. Exactly one row each. One orphan, the old approval, and that orphan was on purpose.

That same night the new still was rejected. I like that part most. The check exists so a person gets to say no to the version they're actually looking at. If the old yes had carried over, nobody would have been asked, and that no would never have happened.

Why we didn't just edit the old row

The tempting shortcut is to go back and change the old approved row. Flip it to pending, or rewrite what it points at. We don't.

That row is a record of a decision someone made on a specific day about a specific thing. Rewriting it changes history. Anything else that reads that row gets a different answer than it got yesterday. A new name costs nothing and leaves the record honest.

Diagram of the fix: the rebuilt item gets a new name, so the old approval matches no live item and the new pending row is the only one that matches, checked across the whole queue

The lesson we are keeping

An approval is only worth something if it's bound to the thing that was approved. Ours was bound to a name. Names get reused. The thing underneath them changes.

So approved now means this exact version. If what an item would publish changes in any way that matters, it gets a new name and a new question. And the check we run covers the whole file. Every queued item matches exactly one row, and any orphan is one we meant to leave.

What this means for Go High Level Bay Area businesses

If someone else posts for you, an assistant, an agency or a scheduling tool, you have this exact risk. You approved a post. Later someone swapped the image, changed the offer, or moved it to a different week. Does your yes still count?

In a lot of setups it does, quietly. The approval is a status sitting on the post, not a copy of what you saw when you said yes.

Three things worth doing this week:

For a Go High Level Bay Area business posting through its CRM, the approval step is only as good as what it's tied to. Tie it to the version, not the name.

Want this built for you

We build approval flows where a yes belongs to the exact version you saw. Start at optechsol.llc.

Want this working in your business?
Get my plan ← Back to all Field Notes