I was already using my phone for development when an automated session prepared another iOS performance run against it. A screenshot exposed the collision before the second run took control. That should have ended the attempt. The automation also sent a mouse click intended for the app. It landed on a different window…
EN2026-09-29
I had a federated Flutter plugin whose tests passed, analysis passed, native builds passed, and dependency constraints looked correct. Then pana ran dart pub downgrade and awarded three packages 50 points out of 160. The workflow required 120. The previous score had been 140. Nothing had suddenly become fifty-points…
EN2026-09-28
The Android build failed with a message that was both precise and deeply unhelpful: The library I was validating did not implement a safe-area view. It did not declare react-native-safe-area-context. It did not even expose a Codegen surface. Yet its AAR contained RNCSafeAreaProviderManagerDelegate. Apparently Gradle…
Dart 3.10 added an official analyzer plugin system. I maintain two lint packages, so the migration looked almost suspiciously tidy: replace the archived host dependency, rename a few base classes, and enjoy the future. That was the optimistic version. The analyzer had other plans (of course it did). The host was not…
EN2026-09-27
“Be careful” may be the least testable instruction in a coding repository. It sounds responsible. So do “make a high-quality change,” “be thorough,” and “use good judgment.” These phrases give an instruction file a reassuring tone and give the agent almost no observable boundary. When the result was wrong, the only…
The agentic-coding-toolkit changelog describes a migration from command wrappers to skills. One release removed stale toolkit-owned links while preserving user-managed entries. That sentence is short. The filesystem decision behind it is not. An installer may already have created aliases in several host directories.…
EN2026-09-26
The most reassuring response from a source-editing tool is not always a successful edit. Sometimes it is: “There is no safe value at this cursor position.” That sounds like a disappointing feature. A keyboard shortcut was pressed; surely the extension should do something. But automatic edits have an awkward property:…
EN2026-09-25
An AI commit assistant sees a dirty working tree and has an obvious temptation: read everything, understand everything, and produce the most complete answer it can. That instinct is useful for research. It is unsafe for a commit. The staged diff is not merely a convenient smaller input. It is the developer saying,…
EN2026-09-24
The dangerous command is rarely the one that says it will delete everything. It is the tidy utility that loops across many repositories, opens a few pull requests, and promises to “save time.” At one repository, a mistake is a correction. At twenty repositories, it is a campaign. That is why the safety question for…
EN2026-09-23
A custom lint rule can compile, execute, report zero diagnostics, and be completely broken. That is the unpleasant lesson behind many static-analysis migrations. A removed API causes a useful red build. The obvious repair makes the project compile again. Then a changed query, stale type name, or weakened library check…
EN2026-09-15
Choosing a mature command-line tool as an application backend feels like deleting work. No new daemon. No hidden API. No second implementation of the domain. Spawn the executable, collect stdout, put the result in a tree view. Very civilized. Then stdout contains a tab inside user-authored text, an empty field that…
EN2026-09-14
Complete-sounding event names are tempting when an API returns a resolved promise. review_prompt_shown. review_completed. user_rated_app. They make dashboards wonderfully decisive. They can also describe events the application never observed. In-app review is a sharp example. An application may request the system…
EN2026-09-13
Follow via RSS or receive new posts by email.