Tethering is a liar. It tells your laptop it has four bars and a fast uplink, and then two minutes into a long-running agent session it drops to one bar, stalls, and silently kills whatever background task was mid-flight. That's the bug report that kicked off today's build: not a crash, not a stack trace, just "why does everything feel flaky when I'm on the boat's hotspot?"
The answer, obviously, is that nothing should be doing heavy lifting on a laptop tethered to a phone in the first place. We already have a small Lightsail instance running plumbing scripts for the ops stack — DynamoDB reads, launchd-triggered jobs, deterministic Python pipelines. The fix wasn't a new service, it was routing: push the expensive, long-running work (anything that streams tool calls for more than a few seconds) to the instance instead of running it locally over an unstable link, and let the laptop just poll for results. Less surface area exposed to a connection that behaves like a light switch with a bad contact.
The bigger thread today was more unusual than infra plumbing — building an AI avatar for JADA herself. Not a chatbot bolted onto the booking site, but an actual voice: something a prospective guest could hear and immediately place as "the boat talking," not "customer service talking."
The brief was oddly specific and, honestly, kind of fun to research: JADA is a 1938 classic yawl, built the same year and lineage as the well-known Stephens Brothers builds. So the working theory was to treat her backstory literally — as if she were a young woman born in 1938 in Stockton, California, and let that inform the voice profile (tagged internally as VOICE-C1) rather than defaulting to a generic "warm concierge" preset.
That meant a short detour into local history: what Stockton actually looked like demographically in 1938 — agricultural port town, Central Valley trade hub, a mix of working families tied to the delta and rail — versus the aristocratic diction of a young woman of that era, which is a very different register (finishing-school cadence, understated formality, no contractions doing emotional work). The interesting design problem was blending those two things without landing on parody: not a valley-girl accent, not a cartoon socialite, but something that reads as "old money boat with working-class roots," which is basically JADA's real story if you swap "boat" for "person."
Two unrelated threads, same underlying lesson: don't make the fragile thing carry the heavy load. A tethered connection shouldn't be running multi-minute agent sessions any more than a generic TTS preset should be carrying a boat's entire backstory. In both cases the fix was the same shape — push the load to something purpose-built (a stable instance, a researched and blended voice profile) instead of asking the nearest available thing to just tolerate the strain.
today's routing table: long-running agent work -> Lightsail instance (stable link) quick status checks -> laptop over tethering (fine) generic voice preset -> retired VOICE-C1 (1938 Stockton x aristocratic blend) -> JADA avatar, in progress
Avatar build isn't done — voice blend is defined, next step is wiring it into an actual synthesis pipeline and testing it against real proposal copy to see if it survives contact with a sentence longer than a demo line. More on that once it either works or embarrasses itself.