ONLINEREV · 2026-07-07§ BLOG · 2026-07-06-THE-WEEK-I-SHIPPED-AN-AUDIT-A-FULFILLMENT-ROBOT-AND-A-SIGNAL-PROCESSING-FIXPUBLISHED · 2026-07-06
All Posts
§ Journal2026-07-06

The Week I Shipped an Audit, a Fulfillment Robot, and a Signal-Processing Fix — All One Person

By Corey SlickPublished

A look at a week spanning security audits driven to zero, a physical-hardware fulfillment agent, FFT debugging, and the automation stack that caught its own blind spots.

A week with no single throughline — and that's the point

I track my work across roughly a dozen active projects, and this week's activity log reads like it belongs to five different people: a signal-processing engineer chasing an FFT off-by-one bug, a security auditor closing out a payment-path review, an operations engineer standing up a headless fulfillment pipeline for a physical product, and a systems engineer debugging why a scraper had been silently returning zero results for months. It was all one person, working across all of it in the same week, because AI collapses the distance between "I understand this domain" and "this is implemented correctly." That gap used to be the bottleneck. Increasingly, it isn't.

I want to walk through four threads from this week that each illustrate a different way AI changes what a solo research engineer can actually attempt.

Driving a security audit to zero, not to "mostly done"

One of my apps went through a full multi-round deep-review this week — the kind of audit that surfaces a pile of findings across authentication, payment logic, and data-loss edge cases, ranked by severity. The easy failure mode with a list like that is fixing the critical and high-severity items, feeling good about it, and quietly letting the mediums drift. I've been burned by that before, so the rule I now hold myself to is: every finding gets tracked to a terminal state — fixed, deferred with an explicit decision, or won't-fix with a reason. No silent attrition.

This week that meant three audit batches: a purchaser-gated migration to close out a critical finding, an App Attest single-flight fix paired with identity-preserving key rotation, a pre-auth CBOR denial-of-service patch, and a cluster of data-loss bugs (an email-token deletion bug, a backup database wipe, null-parsing on a financial data import). None of these are things you catch by "looking busy" — they're the kind of finding you get from treating an AI agent as an adversarial reviewer of your own code, not just a co-author. The interesting shift isn't that AI fixed the bugs. It's that running a genuinely adversarial, exhaustive review pass against your own system is now cheap enough to do routinely, on every meaningfully-sized change, instead of once a year when you can afford a contractor.

Standing up an agent to run physical fulfillment

The most fun thread this week was building out an automated "operator" for a hardware product I ship — a small connected device that customers actually receive in a box. I've been building this out in phases: headless device provisioning, a QA pass, packing-slip and print-packet generation, marking orders shipped, drafting the customer emails. The goal is a pipeline where an agent handles the operational grind of turning a paid order into a shipped, provisioned unit, with no manual cable-swapping between steps.

Building this surfaced a genuinely funny bug: the finalize step called a network logout on the device's remote-access tunnel as part of tearing down its temporary provisioning state — except that logout command was running over the same tunnel it was tearing down, so it killed its own SSH session mid-execution before finishing. That's the kind of bug that's obvious in hindsight and invisible until you watch an automated agent actually run the full flow end to end, because a human operator would never sequence things that way by accident — they'd notice their own terminal disconnecting. An agent running headlessly doesn't get that visceral feedback, so you have to design the sequencing more carefully than you would if a person were doing it manually. It's a small reminder that automating a physical-world process surfaces failure modes that never show up when a human is in the loop, precisely because the human's intuition was quietly covering for the workflow's actual fragility.

Automation catching its own blind spots

Two separate incidents this week were really the same story: a piece of my own reporting automation had been silently wrong for a while, and a second layer of automation is what caught it.

First: a local-events scraper had been pulling event listings from several sources for months, but one source — a popular event platform — was returning an HTTP method-not-allowed error on every request and being silently skipped. Zero events from that source, indefinitely, with no error surfaced anywhere. Swapping in a JS-rendering scraper for that one source alone recovered roughly 65 real events per run that had simply never existed as far as my pipeline was concerned. Second: an App Store status report had been showing "0 Live apps" for a stretch, because a field the report relied on had been retired upstream and nothing flagged the resulting empty result as suspicious — it just looked like a valid, if wrong, number.

Neither of these are exotic bugs. They're the mundane, extremely common failure mode of any automated system: a silent zero that looks like a legitimate answer instead of an error. What's changed is how cheap it now is to have a second automated pass — a portfolio-wide weekly digest, a watchdog, a stale-report monitor — whose entire job is sanity-checking the first layer of automation. I didn't go looking for either of these bugs. Automated monitoring found both, in the same week, as a side effect of routine reporting.

The intelligence layer, working as intended

The same monitoring stack also did its actual job this week: it flagged that Plaid's Signal consent enforcement had gone from "announced" to "live" on July 2nd, and that a specific Gemini model I depend on has a confirmed shutdown date in mid-October — not urgent, but now on a tracked clock instead of something I'd discover by having a production call start failing. On the competitive side, the same digest flagged a live, time-sensitive positioning opportunity coming out of an unrelated industry news cycle, generic enough that I can act on the pattern — a competitor's users experiencing friction elsewhere, creating a window to lean into a specific differentiator — without needing to name anyone involved.

One design choice I'm glad I made early: when the community-monitoring pass couldn't verify real, current discussion threads this cycle, it said so explicitly instead of inventing plausible-sounding thread titles to fill space. That's a small thing, but it's the difference between an intelligence pipeline you can trust and one that quietly trains you to stop reading it.

The actual takeaway

None of these four threads — audit, fulfillment automation, signal-processing debugging, monitoring-catching-monitoring — are things I'd have attempted in the same week working alone without AI doing the implementation legwork. The value I'm adding is still the same as it's always been: knowing which domains matter, framing the problems correctly, and deciding what "done" actually means. What's changed is how many of those problems I can hold open at once.