Back to the work

BUILT THROUGH SPIRAL ONE

Courier Copilot

Some bad offers don't look bad.

MY ROLE

iOS systems design · Broadcast extension · OCR pipeline · Parser and scoring logic · Local data flow

OUTCOME / WHAT CHANGED

A deterministic local advisory pipeline with tested parsing and correction behavior. It does not automatically accept or reject offers.

OVERVIEW

Some bad offers don't look bad.

You get an offer: $8 for 4.2 miles and 24 minutes.

Is that good?

Now do the math, think about the restaurant, where the trip leaves you, how long you might wait, and whether the whole thing is actually worth it.

Oh, and you might be driving.

Courier Copilot reads the visible offer, does the basic math, and gives me a simple signal while there's still time to decide.

I got tired of doing that.

IMPLEMENTATION NOTES

OCR + decision pipeline

Courier Copilot is deterministic. There isn't an LLM sitting between the offer and the recommendation.

The current iPhone pipeline is Visible Offer → ReplayKit → Frame Sampling → Vision OCR → Field Parsing → Calculations → Threshold Rules → GREEN / YELLOW / RED → Notification.

The resulting signal is advisory. Courier Copilot doesn't connect to an Uber API and doesn't accept or reject an offer.

IMPLEMENTATION NOTES

OCR failure handling + resource constraints

OCR in a live courier interface is messy. Frames change. Animations happen. Text can appear partially. A value can be misread before a later frame produces the correct result.

The engineering problem is deciding when an observation is trustworthy enough to act on while staying fast enough to return something useful inside a short offer window.

Resource usage became part of correctness. A decision assistant that interferes with the courier app, navigation or the phone itself isn't working correctly even if its OCR output is technically accurate.

IMPLEMENTATION NOTES

Local data + future personalization

The current system can preserve structured information about evaluated offers. That creates a foundation for offers, outcomes, merchant history, area and time patterns, and personal baselines.

That is future direction, not current functionality. The current prototype evaluates visible offers using configured deterministic rules.

It doesn't currently claim predictive market intelligence or demonstrated earnings improvement.

BOUNDARIES

What this is not claiming.

The evidence viewer keeps the limitation attached to each artifact. Current capability is shown separately from future direction so the technical story stays useful without getting ahead of the work.

DIRECTION

What I am still testing.

  • Controlled offer-to-result capture
  • OCR accuracy evaluation
  • Measured runtime and thermal behavior

NEXT SYSTEM

Pocket Spiral