Skip to main content
The open ledgerMay 17, 2026, 6:10 PM

Everything we build.
Every day.
In public.

This is the complete record of every project Stephen and Theo have shipped together — every session logged, every hour tracked, every deliverable catalogued. No marketing spin. Just the work.

393Sessions logged
12Projects shipped
9.2KhHours of work
$895KValue delivered
Daily activity
lessmore
MonWedFri

The full portfolio

Every project we've touched.

Sorted by value delivered. Click any project for the complete breakdown.

By the numbers

The shape of the work.

What we build

Features166 (42%)
Strategy81 (21%)
Bug Fixes55 (14%)
DevOps32 (8%)
Docs31 (8%)
Design21 (5%)
Refactors7 (2%)

How complex

Complex148 (38%)
Moderate143 (36%)
Routine60 (15%)
Architectural42 (11%)

That’s the whole ledger. Every project, every session, every hour — all public. If you made it this far, you know what working with us looks like. The next entry could be yours.

— Theo

The daily log

What we built, day by day.

The raw feed — every session, every summary, every work type. Updated after every session.

Today

1 session

Strong Human web pivot: full Next.js 16 PWA from zero (auth, Today, Meal log w/ Gemini photo analysis) · Voice onboarding for Bret (Pack-with-Theo pattern): Cloud Run proxy + AudioWorklet + Gemini Live tool calls + complete_onboarding flow

Tuesday, May 12

3 sessions
CloserFeature

SUPPLEMENTAL CORRECTION to entry #420: captured the full Phase L.A-L.F Audio Processing Gauntlet buildout, not only the final L.F verification slice · Built live extraction gauntlet foundation: DB schema, rollback, /extraction-gauntlet route, WebSocket sidecar, 90s/2s rolling window assembler

CloserFeature

Multi-model LLM gauntlet: 11+ paid validation runs across DeepSeek V4-Flash/V4-Pro, Kimi K2.5, Qwen3-32B, GPT-OSS-120b, Gemini 2.5/3.1, Anthropic Haiku+Sonnet. DeepSeek V4-Flash full-stack confirmed empirical winner at $40/mo per agent (3.9x cheaper than Anthropic at same quality grade). · Field definitions methodology: 47-field training doc with disambiguation/examples/edge cases, integrated into provider tool schemas across all candidates. Empirically validated as quality fix (MSRP-vs-sale-price extraction error resolved). Priority.tier locked to 28-label vocabulary; credit_tier_inference replaces duplicated payment framing field.

CloserDocs

Ran Phase L.F end-to-end extraction gauntlet verification across default, Anthropic benchmark, pause/resume, and reconnect smokes · Captured dashboard screenshot proof for fixture, Anthropic, and pause/resume runs

Sunday, May 3

5 sessions
CloserFeature

Phase A.0 encryption foundation review — caught DEK cache race condition (TTL eviction zeroing buffer mid-use) + master KEK env reload on every cache miss · DB ops unblock (DATABASE_URL/migrations/backfill) + env-and-secrets.md operational guidance for TENANT_ENCRYPTION_MASTER_KEY (generation, loss scenario, rotation, backfill workflow)

CloserFeature

B1/B2/B2-variant/B3 wearable mic gauntlet scenarios validated on real DJI Mic 3 hardware (4/4 PASS, all CSV-logged) · Discovered + diagnosed wearable route selection bug (Closer was preferring built-in mic over paired wearable); codex patched across 3 iterations

CloserFeature

Shipped Phase B wearable mic privacy-pause flow with wearable route preference, manual Pause/Resume, 30-second auto-pause, disconnect prompts, explicit iPad-mic continuation audit events, durability pause-window handling, iOS tests, and dealer troubleshooting copy. · Shipped M4 transcription pipeline foundation with AssemblyAI primary, Deepgram fallback, tenant DEK encryption, migrations, Inngest events, recording.chunk_uploaded handler, canonical segment offsets, shared R2 key derivation, and local-dev docs.

CloserDevOps

Recovered from parallel Claude Code session collision on feat/m4-transcription-pipeline (two CC sessions caused MM index state, misplaced commit, 50+ tangled files); created wip/recovery-snapshot-2026-05-03 safety branch then surgically split work into clean branches via update-ref + bulk file checkout + manual M4-only hunk surgery on store.ts, capture-routes.test.ts, packages/shared/src/v1/capture.ts · Committed M4 transcription pipeline foundation on feat/m4-transcription-pipeline (47 files, +7092/-889: AssemblyAI/Deepgram router, tenant DEK encryption, migrations 0003/0004, Inngest events, capture-store with pg_advisory_xact_lock offset recompute, in-memory mirror)

CloserFeature

Built per-tenant DEK envelope encryption for M4 transcript text with migrations, runtime helpers, backfill, cache hardening, and tests · Added Inngest scaffolding and explicit recording.chunk_uploaded publishing from upload completion with duplicate-safe event IDs

Friday, May 1

3 sessions
Calm SheetsStrategy

Analyzed Google Ads spend, CPC, funnel scroll depth, CTA behavior, and landing-page performance to identify unprofitable traffic patterns. · Tightened live Google Ads targeting with new campaign-level negatives, confirmed Flight Anxiety pause, set Fear of Flying to $20/day, and kept Night-Before Panicker at $50/day.

CloserFeature

Audio session interruption handler shipped (production handler with .began/.ended, lastFinalizedSegment tracking, stop-during-interruption fix, discardLocalFile defensive cleanup, orange warning UI, 4 unit tests) · Phase 2 background URLSession regression diagnosed and fixed (temp filename length bug — R2 multipart IDs exceeded APFS 255-byte filename limit)

CloserFeature

Built Phase B capture reliability foundation across iPad, API, DB, R2, and admin gauntlet surfaces · Shipped unfinished-conversation recovery flows: Finish & Upload, Continue Recording, Discard/quarantine

Thursday, Apr 30

2 sessions
Calm SheetsStrategy

Rebuilt /flight/, /flight/fear-of-flying/, and /flight/anxiety/ around concise $34 paid-traffic messaging, early kit preview, demo tools, one-price checkout, FAQ, and final CTA. · Fixed landing page UX issues including spacing, misleading hero pills, checkout preservation, and funnel section tracking.

CloserFeature

Built parsed-conversation continuity banner: iOS UnfinishedConversationSummary detection, banner UI with Finish/Discard action sheet, persisted closedConversationIds + PendingAbandonRequest retry queue, 24h auto-finalize, R2 quarantine via parsed_discard items, custom Decodable for legacy JSON tolerance, conversation-isolated finish path · Shipped conversation abandon API endpoint: POST /api/v1/conversations/{id}/abandon with auth + tenant + rate limit + idempotency, 'abandoned' state + recording.abandoned event type, durability + admin-health classify abandoned separately and exclude from SLO denominator, parsed_discard quarantine requires conversation_id with tenant validation

Wednesday, Apr 29

5 sessions

Updated Spark dashboard refresh behavior so live audio alerts are not interrupted after unlock

Restored Calm Sheets dashboard live-alert UI with tap-to-enable Web Audio visitor chime · Added active-purchase polling and generated cash-register alert when paid purchases increase

Fixed impossible dashboard registration funnel counts by normalizing starts to at least completed registrations across GA4 historical, same-day KV, realtime API, and render paths. · Added regression coverage for completed-vs-started registration counts.

CloserDocs

Phase B capture system technical review (3 rounds) — P0-P5 feedback, verified fixes · Phase B real-device gauntlet test plan — 35 scenarios with pass/fail criteria

CloserFeature

Hardened Phase B capture reliability across backend, iOS, and admin surfaces. · Built the Aitheos operator health dashboard foundation and Gauntlet Mode testing cockpit.

Tuesday, Apr 28

5 sessions

Fixed dashboard Purchases card showing lifetime totals regardless of 7d/30d/90d range toggle — fetchD1Metrics now accepts a 'since' date and applies WHERE created_at >= ? to the 4 purchase/refund queries (active purchases, revoked, refund requests, refunds confirmed). Both call sites updated (full dashboard render + /dashboard/api/metrics endpoint). · Removed redundant webhook_freshness health check that warned whenever the last D1 purchase was >14 days old. The stripe_d1_sync / orphaned_purchases check is the real signal — it queries Stripe directly and compares to D1 records. Cleared 33 stale webhook_freshness rows from production D1.

CloserFeature

Hardened Phase B capture API with auth, tenant gates, consent policy, idempotency, checksum verification, deletion retry, multipart GC, rate limits, and Postgres-backed capture-store path · Hardened iPad capture reliability with engine-owned rolling segments, wearable-backup upload/retention flow, per-install device identity, heartbeat reporting, recovery parsing, and max-recording policy

Audited Google Ads campaign and funnel screenshots; planned a concise paid-traffic rebuild for the highest-spend flight landing pages. · Rebuilt /flight/fear-of-flying/ and /flight/anxiety/ around immediate $34 offer clarity, early kit preview, demos, single checkout card, FAQ, and final CTA.

AitheosFeature

Created a globally discoverable Codex masterlog skill from the existing cross-tool spec · Renamed the skill from maserlog to masterlog, updated invocation metadata, and validated the skill

CloserDocs

Comprehensive pre-Phase-1 doc audit across 13 specs + 6 architecture contracts + cross-cutting docs; produced docs/doc-review-2026-04-27.md with severity-tiered punchlist · Added production hard-guard for PHASE_B_BYPASS_AUTH in apps/api/src/lib/env.ts (throws on boot if APP_ENV != local)