All Articles
Building a Live Wallpaper That Doesn't Drain the Battery — Designing the WallpaperService Render Loop Around a Power Budget
Live wallpapers quietly burn battery because they keep drawing when nothing is visible. Here is the WallpaperService.Engine design I used to cut power draw by roughly 60% in a real wallpaper app, built around visibility, idle, and thermal gates.
Never Miss a Managed Agent Completion: Pairing a Serverless Receiver with Polling Reconciliation
A cloud Managed Agent can finish while you are not watching, and the webhook that should tell you can quietly fail. Here is a serverless receiver on Cloudflare Workers paired with polling reconciliation, and a state machine that recovers every completion within minutes.
Is the $100 AI Ultra Tier Worth It Solo? Measure the Break-Even from Limits and Parallelism
Whether the $100/month AI Ultra tier (5x the Pro limit) is worth it for an indie developer, framed as a break-even from how often you hit the cap and the effective throughput of parallel agents, with a calculator script.
Keep the Self-Debugging Agent Away From Live Ads: Three Layers Against AdMob Invalid Traffic
When Antigravity 2.0's real-browser self-debug renders a live AdMob unit, every pass counts as an impression, and Google may read it as invalid traffic. Here is a three-layer setup, with measurements, that keeps the agent from ever touching a production ad.
When Your Agent's Commits Pick Up Junk Files: Fixing It With Staging Scope and a Message Convention
Agents tend to run git add -A, sweeping .bak files and caches into your history, and leave a one-word message. Here is how a staging allowlist, a preflight, and a fill-in message template stop it.
Protecting Your Agent Stack's Known-Good State with a Single Lockfile — Change-Budget Design for an Era of Simultaneously Moving Parts
When the IDE build, CLI, model, and dependencies all move at once, you can no longer tell which one caused a regression. Here is a change-budget design that pins your known-good state to one lockfile, with working code and operational logs.
Make the Self-Debugging Agent Walk the Logged-In and Post-Paywall Screens
By default, Antigravity 2.0's real-browser self-debug only sees the logged-out free view and reports success. To catch billing regressions, inject an authenticated session and paid state into the agent's browser and force coverage with assertions.
Where Context Should Live — Routing It Across Persistent, Per-Task, and In-the-Moment Layers
Antigravity 2.0's /btw lets you inject context mid-task. But unless you separate what belongs in a persistent rule, a task instruction, and a passing aside, your agent's accuracy actually drops. Here is a design for three context layers.
When Nobody Reads Your AI Code Reviewer Anymore — Field Notes on Measuring Actioned-Rate
Our production AI code-review agent quietly went hollow over six months. When the team started silently resolving every comment, we instrumented actioned-rate and false-positive rate to bring it back. These are the field notes.
When a Stable Line and a Feature Line Ship Together, Which Build Should a Solo Operator Ride?
By shipping a 2.0 (stable) line and a 2.1 (feature) line in parallel, Antigravity now asks solo developers to decide which one to ride. Here is a design for selecting and switching builds without breaking your automation.
Paid, but the Ads Won't Go Away — Closing a StoreKit 2 Transaction.updates Launch Race with Antigravity
How I traced a StoreKit 2 launch race that dropped transactions arriving right after startup, pinned the listener to the app's lifetime instead of a view's, reconciled with currentEntitlements, and let Antigravity turn it into a StoreKitTest regression suite.
Point Real-Browser Self-Debug at a Throwaway Preview, Not Localhost or Production
Antigravity 2.0's real-browser self-debug is genuinely useful, but aim it at the wrong place and it touches production data. Here is a practical way to confine it to a per-branch throwaway preview and neutralize email, billing, and webhook side effects.