Two services, one topic, either deploy order
A shared topic is only safe if the old consumer ignores what the new producer adds. One field with a default, and either side can roll back alone.
Occasional yapping.
A shared topic is only safe if the old consumer ignores what the new producer adds. One field with a default, and either side can roll back alone.
An autoscaler counting queued work drops to zero the moment pods claim it, so it scales into running jobs and each removal hands the work back to start over.
A state flag set inside the background thread instead of before launching it, so the caller that asked for the model read 'stopped' and took the slow path.
5 workers x 3 threads beat 7x2 and 12x1 on AMD and lost on Intel. The vendor also decides which math library the runtime picks underneath.
Sizing a worker pool from total machine memory is right inside a container with a limit and wrong everywhere else. 15 GB total, 3 GB free, one 4 GB worker.
Jobs running side by side, each fanning out its own cuts, with nothing capping the total. Four vCPUs, 18 concurrent decodes, and the machine stopped answering.
Cutting the last chunk of a 78 minute lecture took 23 seconds. Moving -ss before -i made every cut take about 1.5, with the audio provably unchanged.
Three embedded surfaces, three documents, three private copies of 'is this user subscribed'. Nothing in the browser tells a sibling frame that state moved.
window.addEventListener('message') also receives your extensions and the HMR client. JSON.parse on whatever arrives breaks the bridge for the whole session.
Two shells both re-assert the same open message, because neither knows the other's copy landed. So the receiver has to absorb the repeat.
A bridge queues inbound messages only while nobody is listening. One shared action, two listeners, and the eager one swallowed the other's message.
The picker offered image/*, which includes SVG, which neither the card nor the viewer could render. It uploaded cleanly and became a file nobody could open.
A library tab showed 30 of 267 notebooks. The pagination block answered total: 0, has_more: false on every page, while the pages themselves were correct.
Adding one request header is two lines. The gateway allow-lists headers per environment, and a failed preflight kills every cross-origin call.
The page said ₹9,900 and 90% off. Checkout then asked for ₹99. One service reports money in paise, another divides by 100, and only one client converted.
A synchronous accessor wrapping a suspending DataStore read, called from the UI thread everywhere. An ANR on Android and a real deadlock risk on Native.
Language is per account, but the sync keyed on the value alone, so who it belonged to never entered the decision. On a shared device you inherit a stranger's.
A component mounted before its locale chunk landed stayed frozen on the English fallback, even though t() resolved the translation. bindI18nStore is why.
A translate button that no-ops instead of failing. Detection fell through to 'en', the translator saw source matching target, and handed the text back.
A language picker inside one feed wrote to the app-wide i18next instance and persisted it. A context scope ends when the subtree does.
Toggling content back to English in an Arabic app left it mirrored. Ant Design takes direction from ConfigProvider, and its class outranks any inherited dir.
My own RTL fix caused the next bug. Putting dir="auto" on an option's text also flipped what text-align: start meant for its box, leaving a row-width gap.
Switch the UI to Arabic and English text renders as ".Photosynthesis is". The text isn't reversed. Only the neutral characters move, and no CSS can fix it.
On August 17, GitHub was down for 7 hours and 47 minutes. A scaling policy that watched the host and never checked the pod sitting next to it.
I built a RAG service over the OpenTelemetry docs, then traced it to find why answers took 16 seconds. Not the LLM, and not the vector search either.
The same logical query returned full nested data through REST and empty shells through the service layer. One shorthand parameter only one understood.
The same subscription field came back nested two levels deep, one level deep, or bare at the top. My fix added math on top of a check already wrong.
A user clicked straight to a recordings page with an expired session. They logged back in and landed on the dashboard, three clicks from where they started.
A payment flow has three exits: the user finishes it, the user closes the window, or the component that started it is gone. Mine handled the first one.
A premium content gate built from an overlay div is not a lock. It's a suggestion, and any browser's devtools decline the suggestion in about four seconds.
A reward endpoint can't tell a genuine retry from a genuinely repeated action. So we stopped pretending it could, and made it credit every call on purpose.
One internal caller needed to set a quiz's ID by hand. The public endpoint took the same parameter from anyone, and storage used it as a primary key.
I wrapped a balance update and an audit log write in one transaction. Then a log insert failed and rolled back a reward the user should have had.
One endpoint, hit three or four times during onboarding, sometimes before the user record finished writing. It still had to pay the bonus exactly once.
A challenge creator got a bonus for winning. They also got it for winning again, on the same challenge, because a retry doesn't know it's a retry.
A student is enrolled in six classes. On a given day they open one, maybe two. We were generating all six anyway, and paying for five nobody would ever see.
A ten-question quiz request sometimes came back with eight questions, sometimes twelve, sometimes ten where two didn't have a correct answer among the options.
"Solve $3x + 7 = 22$" and "a shirt costs $20" use the same character for two different jobs. The renderer couldn't tell them apart. Neither could my regex.
A student asked for more practice questions on the same topic four times in a row. The third batch had a question nearly identical to one from the first.
Across a batch of auto-generated quizzes, the correct answer kept landing in the same slot. Prompting the model to vary it helped. It didn't fix it.
A page crashed reading state that should have existed. A Redux slice was registered in one bootstrap path, and a second valid path never went through it.
A user tapped accept twice and hit a flow expecting a fresh acceptance. The second call returned success silently, and success was the cue to proceed.
Users were told to check their internet connection. It was fine. A switch built for 3 error codes was still running after the real list grew to 6.
A quiz report showed every answer as wrong, and a carousel on the same page crashed. Same cause: a call site that skipped a step every other one took.
A results report marked three question types as wrong, every time. One branch subtracted 1 from an index, and the fallback copied that subtraction.