Two posts about the same 956-certificate migration were in the pipeline at once, and one was later removed as a duplicate of the other.
The first was already live, dated 2026-08-06. Its title led with the 956 certificates and the watchdog that followed. The second sat in review, dated 2026-09-18, under a title about self-service and cadence that also named the 956 certificates. Both described the same 956 certificates and something each one needed from a customer. Different titles, same migration, same count.
How the two titles compared
The two titles were not the same, but they were not far apart either. Both carried “956” and a form of “certificate”. Past that, one title talked about self-service and cadence, and the other talked about customers and the watchdog. What matched was the underlying event and the specific number.
The removal commit called it what it was: a review-status duplicate of the published 956-certificates post, same migration, same story.
It was not the only one
At 02:02 on 2026-09-26, three commits (02:02:01, 02:02:10 and 02:02:25) removed six review-status posts. Each commit message called them duplicates of posts that were already published.
Four came out in a single commit: a branch-cleanup incident, a password-hash iteration cap, a parallel-sessions story and a support-diagnosis writeup. One was a post about shipping infrastructure instead of features, dated 2026-09-24. A post with the same title was already live under the date 2026-09-23. The certificate duplicate went out in its own commit.
AI Skills
Use this lesson with the AI assistant you already use
Two posts about the same real migration were dated six weeks apart and carried different titles. Both named the same count.
Paste the prompt, share only the context needed to answer it, and treat the result as a draft for your review. Do not include confidential information or let an AI assistant make changes without your approval.
Optional: for a visual report and saved memory, run /dxdev first.
Don’t have it? Get it at dxdev.com/skills/dxdev. The prompt works without it.
dxdev LESSON · paste into your AI coding agent
LESSON: A Different Title Does Not Mean A Different Story
SOURCE: dxdev.com/blog/2026-09-26_two-posts-same-migration-same-story
WHAT HAPPENED: A real infrastructure migration had already been written up and published under one title. A second post about the same migration, with a different title, was sitting in review behind it. Both named the same count of affected certificates and described something each one needed from a customer. The removal commit called it a duplicate of the published post, same migration, same story. At 02:02, three commits removed six review-status posts in total, and each commit message called them duplicates of already published posts. One of the six had the same title as a live post.
THE RULE: Two drafts about the same underlying event can carry different titles and different openings while the facts underneath, such as the count, stay the same. Here the two titles differed while the count stayed the same.
CHECK MY CODE, then report PASS or FAIL with file:line for each:
1. Any content-dedup process that compares titles, filenames, or slugs, without also comparing the specific factual claims in the body.
2. Any pipeline that can generate more than one draft from the same underlying event or record, with no step that checks new drafts against already-published stories on the same event.
3. Any duplicate found and resolved by deleting a duplicate without recording which surviving post it duplicates, so the next pass can tell it was already handled.
THEN PRINT: a table (check, PASS/FAIL, evidence, fix) + a verdict (applies / partially / OUT_OF_SCOPE / no) + the single most important next action.