Bosonica

112 POSTS

Exclusive articles:

Why a Merged Branch Suddenly Conflicts: Squash-Merge Divergence

You squash-merged a branch cleanly, kept working on the same branch, opened a new pull request — and it says CONFLICTING, on files nobody else touched. The branch isn't broken; squash merge quietly spent it.

The Anti-Eye Rule: Why Your Centered Hero Starts Staring Back

Put a glowing core in the middle of a darker ring and something unsettling happens — the image looks like an eye. It's not a rendering bug; it's your own visual system, and the fix is compositional.

We Lost an Image Bake-off to Gemini’s SVG, Then Our Code Kit Closed the Gap

Our code-drawn hero kit and Gemini, writing SVG for the same subjects, went head to head. Gemini won the hard-science rounds. So we read why it won, rewrote the kit, and ran those rounds again.

One Image, Many Roles: Tagging Across Semantic Axes

A picture tagged "shield" is findable by "shield." The reason it isn't also serving your security, access-control, and hardening pages is that "shield" is one flat label where meaning has several dimensions.

Designing an Image Vault: Asset, Rendition, and the One Rule That Does Most of the Work

A folder of image files doesn't scale. The moment the same picture needs three formats, two sizes, and a way to be found, you need a model, and it's smaller than you'd think.

Breaking

Many-to-One: Why a Mapping Backlog Outgrows Its Target Taxonomy

You're mapping a messy source vocabulary onto a clean target taxonomy. The target has about 5,600 slots, so the job must be roughly 5,600 decisions — right? The backlog is already past 8,900, and still climbing.

The Fix That Didn’t Take: When a Content-Hash Gate Skips Your Code Change

You shipped a fix to how one field is computed, re-ran the pipeline across everything, and it reported a clean run. Then the consistency check still flags those records as wrong. The fix is in the code, the rebuild "ran" — and the records never changed. Your own optimisation skipped them.

Your Dedup Scan Is Over-Counting — Because It Forgot What You Already Fixed

The report said 80 duplicate groups still to resolve. You'd been resolving them for days. You run it again after a big batch and it *still* says 80-ish. The backlog isn't stubborn — the scan is counting work you already finished.

When Your Skills Folder Is a Deploy Target, Not a Drawer

You hardened a skill in the repo, shipped the PR, and the agent kept loading the old one. Or you fixed the live skill by hand, and the versioned copy quietly stayed behind. Same root cause: the copy you run and the copy you version are two different files.