Orbiter Dev Hub

Development updates, QA reports, and documentation for the Orbiter frontend.

Latest Push
Jun 9 — Outcomes → Mem0 Migration Plan: answers all 7 of Mark's readiness callouts PLAN REVIEW
Mark's migration doc opens with an Implementation Readiness Callouts block — 6 open decisions + 1 required guardrail he flagged as the specific part to answer first. This plan answers all 7 directly, grounded in the live openui05/dispatch (#8497) script + table schemas verified this session. The swap: Zep → Mem0 V3 as a distilled-memory recall layer (never a transcript/profile store), entirely server-side inside Xano — frontend contract identical (query / thread_id / suggestion_request_id in, mem_used / mem_ingested back), zero UI changes. 5 of 7 callouts decided + implemented for Outcomes: transcript-writes = no change; idempotency = deterministic source_id + retrieved-dedup (no new table); self-context metadata = N/A to the Mem0 path; streaming/failed-turns = #8497 is non-streaming, extractor runs end-of-stack; ownership guard = verify suggestion_request.user_id == auth.id before any run-scope op, else degrade to user-scope. The 2 non-Outcomes callouts (meeting-prep identity bridge, How I Know persistence) are deferred with a stated position. Ground truth: #8497 is auth="user" ($userId=$auth.id), owner col = user_id, no ai_memory_event_log table exists, #8497 writes no transcript today. Mem0 recall drops into the existing [NETWORK MEMORY] slot; extractor = gpt-5-nano (OpenRouter) w/ claude-haiku-4-5 fallback. Build + verify on sandbox clone openui05/dispatch-mem0; live #8497 stays pristine until Robert/Mark green-light cutover; Zep blocks stay (re-gated) for full reversibility. Outcomes must hit 100% + verified (incl. draft select) before the other 3 chats are touched.
Jun 9
Jun 4 — Outcomes Scope-1 Punch List: 100% shipped, PR #415 MERGEABLE / CLEAN SCOPE 1 ✓
Mark's 6/1 + 6/3 punch-list closed end-to-end. Scope 1 — Outcomes + Leverage Loops UI + submit/modify/draft — 100% shipped in PR #415 (MERGEABLE / CLEAN; Build · Lint · Netlify green; 1,559/1,559 tests across 98 files). The right-rail Summary panel is now the single editable confirm surface — the in-chat InterviewSummaryConfirm card (#35) is deleted, no auto-dispatch. #39 Modify→resubmit mints a NEW suggestion_request row (preserves modification history for RL, not the unused modified boolean) — fired live 6/4: Submit on suggestion 245 minted row 1718, dispatch reached the server (ep 8497 + ep 8491 both 200), original 245 byte-identical and re-openable. Dev-only tuning levers gated behind the flask (#62 dispatch-lever mirror + #64 Modify tab) so the default surface is demo-clean. S1 cosmetics: tonal Submit (#38), word/char counter removed (#42), bars waveform glyph (#40), real enumerateDevices mic dropdown (#53), Show Options grid (#24), Context Inspector flask (#25/#43). Draft restore (#57/#63) replays the conversation + presents the editable submit fork. One open item is backend, not frontend: row 1718 stays processing / osc:0 — the M10 lifecycle writeback that affects every row (Charles/Mark territory). 24 live-dogfood screenshots embedded.
Jun 4
May 17 — Wave 30: YAML Context + Opus 4.7 + Haiku bug hunted — 16/25 PASS, PR #354 CLEAN 16/25 PASS
17 frontend commits + 26 Xano patches across 18 endpoints. YAML context spec landed end-to-end: fn 13022 → ep 8573 → getMasterContextPerson BFF → every dispatch now carries 2,342-char YAML. OpenRouter anthropic/claude-opus-4-7 primary for find_investors (3× cheaper, ~40% faster, Opus-grade synthesis). Haiku 4.5 "7+ rows = empty arrays" root-caused and fixed across 11 endpoints (cap at 6 rows + fallback lambdas). Hardcoded 0.5 match scores eliminated — real keyword-density scoring now produces distributions like [0.88, 0.76, 0.62…]. Rule-based Cypher keyword matching replaces name_embedding ANN on 6 abstract-query endpoints. Mark's 4 standing directives (Mintlify sync, context/get-master-context-person, leverage loop context, outcome interview context) all shipped. Test suite 1,411 → 1,463 (+52). PR #354: Lint ✓ Build ✓ CodeRabbit ✓ Netlify ✓.
May 17
May 15 PM — 100% Canvas Audit Findings: 3 PASS / 14 PARTIAL / 8 FAIL 6 NEW P0/P1
Sonnet subagent walked all 25 outcome classes end-to-end through the live canvas. 3 PASS: find_warm_intros (4 real cards w/ connection paths), find_co_investors (6+ real cards), META tile picker. 8 FAIL: find_investors (8+ min, 0 cards), find_partners (interview completes then silence), purchase_real_estate + summarize_meeting (infinite "Say that one more way?" loop), plan_outcome + research_company + travel + summarize_meeting (lightweight class misroute to find_investors), find_cofounder + find_collaborators (dispatch hang). 5 systemic patterns surfaced: 60s dispatch watchdog NOT firing in practice (the one I shipped today), lightweight class 50% misroute rate, infinite clarification loop with no max-depth check, find_event_attendees returns wrong entity type (VC funds), find_partners interview→silence wire-up gap. 46 screenshots captured. 6 new P0/P1 tasks created (#68-73). The audit was honest about what's broken — closing it 100% needs another wave.
May 15 PM
May 15 — Anything Engine Waves 28-30 Closeout: classifier disambiguation + AnalysisCard wiring + extractToolItems fix 17 CLOSED
PR #343 head fast-forwarded with 12 new commits. 8 Xano endpoints patched live — talent_agent_requests honest empty-state (no synthetic stub), find-talent LLM-refusal fix on both 8492 + 8402, research_person/company/topic tightened (1 card vs 20) + emit AnalysisCard, classifier disambiguates "Research X" / "Tell me about" / "Who is" → research_person/company/topic on both 8400 + 8490, per-class count caps tightened on 5 endpoints. Frontend: extractToolItems extended to 19 per-class card-list keys (closes Group A's "stuck dispatching 0 cards" report), 60s dispatch watchdog + empty-result recovery, bare URL reload starts fresh conversation, AnalysisCard component shipped, chat-shell honors MCQ multi_select + allow_freetext flags. 26,212 tests passing. 5 tasks open (Mark spec / UX call / data seeds / CI workflow scope re-auth). 100% canvas dogfood audit running in background.
May 15
May 12 Late PM — Anything Engine Waves 21-27 Closeout: 24/24 dispatch pipelines 24/24 LIVE
Every backend gap that opened this morning closed. Went from 6/15 working dispatch pipelines to 24/24 in one push session. 9 new Xano endpoints (ep 8549-8557 covering find_acquisition, find_deal_flow, get_advice, find_cofounder, find_job, find_collaborators, make_purchase, find_speakers, purchase_real_estate). 3 Xano bug fixes (ep 8493 node-type fix, ep 8495/8496 threshold relax). FalkorDB "data gap" myth busted — find_advisors / find_journalists were missing pipelines, not data. Wave 21: 8 lightweight classes + context-floor hook. Wave 22: tiles + classifier expands to 24. Wave 23: Sentry + 17 stale CLAUDE.md claims corrected + chat-shell drift audit + context-floor v1 populated. Wave 24: 3 dispatch pipelines + envelope persistence on standalone /chat + Sentry @sentry/react wired (DSN-gated). Wave 25: tile polish + addendum sync. Wave 26: final 6 dispatch pipelines + 3 Mark bug fixes. Wave 27: threshold consistency + PR description refresh + final CLAUDE.md delta. 1,411 tests passing. PR #343 still MERGEABLE / CLEAN. Ready for Mark dogfood.
May 12 Late PM
May 12 PM — Anything Engine Waves 18-20 + Backend Ships: frontend + backend converge CONVERGED
12 frontend branches integrated on top of Wave 14-17 + 2 Xano endpoints shipped + 1 new outcome class live. fn 12993 (pitch/update-pitch-profile, NEW) replaces the inline stub; ep 8545 (/summarize-pitch-profile, NEW, Haiku 4.5) lights up system-rewrite-on-edit behind the Wave 19 pre-wire; travel class shipped end-to-end as outcome #16. Wave 18: auth-flicker / env-tests / MemoryPanel parity. Wave 19: per-thread pitch-confirm gate, TTS over-fire fix, right-rail bridge, mobile CSS, system-rewrite pre-wire. Wave 20: Path A persist, 254 LOC of dead CSS removed, stale-docs correction. 4 page-feedback flags from Robert closed (paperclip attach, freetext margin, taking-longer pill removed, system-rewrite live). 1,391 tests passing. PR #343 still MERGEABLE / CLEAN. 3 of 5 Mark-territory blockers from yesterday's report closed.
May 12 PM
May 12 — Anything Engine Waves 14-17: PR #343 demo-ready DEMO READY
22 sub-agent branches landed in 4 waves. Closed the last P0 ship-blocker (interview-gate auto-dispatch via InterviewSummaryConfirm primitive), shipped the Path A Opening Move intake turn, wired full 32-prop pitch_profile into the confirmation card, ported Summary/Context/Modify right-rail tabs, fixed 3 dogfood-surfaced regression P0s (state-collapse, classifier re-fire, history-replay). 132 new tests added; 1,241 total passing across 72 files. Biome lint 0 errors, tsc clean, build clean, all CI green. Ready for Mark dogfood → merge to dev.
May 12
May 12 — Perf Wins L65→L70: ~5 MB removed from first-paint ~5 MB CUT
5 chunks shrunk across 5 commits. notes-modal -99% (2.18 MB → 28 KB) via lazy NotionEditor + AI-review layer. audio-*.js -97% (1.43 MB → 46 KB) via Crayon sub-path imports. network.index -45% (498 KB → 272 KB) via 7 lazy canvases. stream-chat -24% via lazy collab panels. radar-sdk-js (1.07 MB) now 0 static importers. Plus 30 CSS animations + 2 inline transitions guarded with prefers-reduced-motion, 4 a11y fixes (MCQ aria-pressed + checkmark, 2 form aria-labels), 3 latent bugs fixed, routing-reasoning leak in /chat closed, CLAUDE.md refreshed (4 of 5 May 7 spec items FIXED).
May 12
May 12 — Wave 16-18 Quality Sweep: 22 commits, ~20,869 dead lines deleted SHIPPED
2 cross-account user_id leak bugs surfaced + fixed (chat-shell + upload-files-fn hardcoded Robert's "15"). 5 BFF wrappers wired with authenticated WorkOS user.id. coerceConversationTitle helper kills MCQ-fragment titles in left rail (live-verified). Repo-wide quality gates: 0 typecheck errors (was 13), 0 lint warnings (was 97), 30/30 tests pass. ~17K dead lines removed across 85 files (53 AE components, 4 lib/hook/constants, 28 repo-wide, 796 CSS). AE component count 93→33 (65% reduction).
May 12
May 12 — user_id Audit Deep-Dive: How 2 Cross-Account Bugs Surfaced P0 FIX
Forensic of the two hardcoded user_id "15" sites (chat-shell.tsx:1495 + upload-files-fn.ts:67) — both Robert's WorkOS id, both attributing Mark's dogfood writes to Robert's account. Includes BFF coverage matrix (6/6 stateful BFFs now wired, 3 stateless N/A), 9 call sites touched, backend follow-up required from Mark.
May 12
May 12 — Dead Code Sweep: 20,869 Lines Deleted Across 85 Files CHAINSAW
Methodology + full inventory. 4 CSS commits (-796 lines), 53-file AE component mass-delete (-15,981 lines), 4 lib/hook/constants files (-613 lines), 28-file cross-feature sweep (-3,479 lines). Includes the full list of deleted AE component basenames AND the 33 components that survived. Verification discipline at every chunk: tsc + biome + tests + canvas dogfood.
May 12
May 12 — Typecheck Cleanup: 13 Errors → 0 Repo-Wide 100% CLEAN
Forensic of every error and every fix. 8 patterns documented: TanStack Router search-reducer cast (×6), useRef no-arg TS5+ migration (×3), JSX namespace import (×3), sonner ToastProps style prop (silently dropping AE toast styles), boolean ?? false coercion (×4), inline shape replaced by Zod-inferred type, vestigial myEmails prop, Avatar size enum mismatch. Plus 2 test type bridges. 4 commits, 11 files touched, repo went from 13 → 0 typecheck errors.
May 12
May 12 — Methodology: Cron-Driven Loop Operations PROCESS
How 22 commits landed in ~4 hours of overnight cron firing. The 5-step loop pattern (cron fire → scan reports → decide direction → dispatch sub-agent → brief Robert), the FIX agent brief template, what happens when sub-agents die at 1M context (zero successful dispatches this session — orchestrator dropped to direct-edit mode), the 4 verification gates, and the 5 non-negotiable rules from CLAUDE.md.
May 12
May 12 — PR #343 Ship Readiness: Where it stands for merge REVIEW READY
All quality gates green. 23 session commits, ~23K lines removed across 100 files, 0 typecheck/lint failures, 30/30 tests pass, build clean. What this PR delivers (2 P0 user_id bugs fixed, 5 BFFs wired, coerceConversationTitle helper, dead code sweep, typecheck cleanup). What’s gated on Mark (6 backend follow-ups). What’s gated on Robert decisions (interview-gate proposal, duplicate Outcomes tabs). Risk assessment for each post-merge change.
May 12
May 12 — AE Architecture Map: Surviving Surface Area REFERENCE
Complete file map of the Anything Engine after the dead-code sweep. 33 components, 9 BFF wrappers (with Xano endpoint mappings), 10 hooks, 4 lib modules, 4 openui modules, 1 CSS file. Two entry points (network canvas + /chat standalone). Annotated end-to-end find_investors flow showing how every file connects. Use as a reading guide when reviewing PR #343.
May 12
May 12 — Mark Spec Compliance Scorecard SCORECARD
Every Mark spec from his Mintlify docs / Slack threads / verbatim prompts checked against frontend behavior + backend endpoint state. ~32 specs scored across 5 sections (interview pattern, user identity + memory, visual polish bar, 15 outcome class coverage, other). Frontend honors 18 specs, partial on 6 (waiting on Mark backend). Backend honors 7, 14 Mark territory. TL;DR: frontend has done its part — gaps are backend.
May 12
May 12 — Test Coverage Map: 30/30 pass, what’s next 30/30 PASS
4 vitest files, 30 cases, 100% pass rate, 1.13s runtime. Each test file annotated. Coverage philosophy (pure functions + hooks via vitest, render + interaction via canvas dogfood gate). Honest gap list: 6 helpers/validators that need tests next. Recommended priority queue (sanitizeAskBackReasoning, openui05DispatchFn validator, eventsToSse extraction, use-selected-anything-engine-conversation parsing). 2 hours of work to lift coverage from 30 to ~55 cases.
May 12
May 11 — Wave 13 loop v2: 8 commits + 6 audit findings UPDATED
8 commits total: noUselessCatch strip (unblocks Biome), P0 history-load crash fixed (event-renderer empty-array guard). 6 audit findings: interview-gate auto-dispatch P0, PATH B silent dispatch, 8 chat-shell drifts (3 critical), 3 unaddressed Krisp Mark gaps, EP 8497 enrichment stub, PR #343 blocked on 13 Biome a11y errors.
May 11
May 9 — Anything Engine Marathon — Wave 5 Recap 35 COMMITS
InterviewTurn MCQ primitive shipped, 5 audit docs written, AbortController + 45s timeout on all BFFs, ErrorBoundary around the Renderer, ask_back classification surfaced, 5 toLowerCase crashes guarded. Full BFF 1270→1276 migration map. PR #343 deploy-preview at exact HEAD parity.
May 9
May 8 — OpenUI 0.5 native generative UI on Xano LIVE
8 endpoints in new Xano group 1276 emit OpenUI Lang strings directly. Frontend deletes the events[]→Lang adapter and feeds responses straight into the Renderer. Banned-phrase lint, signal-taxonomy tag enforcement, and same-firm dedup all run server-side. Verified live: ContactCards rendering with [portfolio] tag chips, journalist-voice WHY paragraphs.
May 8
May 7 — Back on track: the real port LIVE
A 600-line green-field /chat shipped instead of the 2,285-line sandbox state machine. Three parallel agents tonight: structural baselines, supporting-component port (DONE), copilot polish-bar inventory (DONE — 678-line doc). Pixel-diff loop next. Two dev servers up side-by-side. Updates as waves close.
May 7
Proof of Work — The Anything Engine Running Today MAY 7
Live screenshots from localhost:3001/chat (orbiter-sandbox), verbatim curl proofs from the classify endpoint (purchase_real_estate 0.95, find_talent 0.95), 8 verbatim Mark quotes mapped to architecture decisions. Honest gaps stated plainly: frontend /chat is a shell, classify.md header says 14 not 15, AlloyDB migration pending.
May 7
May 7 — Anything Engine backend + plumbing ported PR OPEN
Backend pipeline live on Xano (find_investors 5-stage + find_talent interview). 8 BFF server fns + hooks + dispatch card ported to feat/anything-engine. Frontend /chat is a green-field shell — sandbox (orbiter-sandbox.vercel.app/chat) is the working UI. Screenshots in proof-of-work are of the sandbox, not orbiter-frontend. PR #343 open; merge blocked pending real port.
May 12
May 5 — Mark Spec + Henry Peck Push
Pipeline shape corrected from Mark’s Loom. 5/6 narrative check, dispatch packet = suggestion_request_id only, headroom + pre-filter. Henry Peck’s 4 quality axes addressed: anti-fabrication guardrails on all 14 classes, signal taxonomy tags, stale-data dates, existing-investor blacklist.
May 5
Overnight Build — Live
Claude Code Pro Setup ONBOARDING
Full pro setup for new Orbiter collaborators — settings, hooks, agent-browser, skills, and the workflow rules that make the tools matter.
Apr 29
LSI USA '26 — Dogfood PDF Part 1 / Leverage Loops PDF · PART 1
L1 Luc Marengere (TVM Capital) — 20 LSI execs ranked against TVM's dual-track thesis — and L2 Caitlin Morse (BrainSpace) — 20 LSI investors ranked for neurocritical-care fit. Full Opus 4 per-person rationale. 21.4 MB.
Apr 22
LSI USA '26 — Dogfood PDF Part 2 / Outcomes + Star51 PDF · PART 2
L3 Henry × Star51 deal flow, O1 IP-panel 6th speaker (5 non-lawyer operator candidates), and O2 Star51 Fund I LP prospecting — 20 ranked LPs with Opus rationale. 23.6 MB.
Apr 22
LSI USA '26 — Dogfood Report for Henry Peck CLIENT-FACING
The Henry-ready version. Five dogfood queries answered against the 1,982-attendee LSI USA '26 cohort — two leverage loops (Luc/TVM, Caitlin/BrainSpace), one bonus loop (Henry × Star51 deal flow), and two outcomes (IP panel speaker, Star51 Fund I LPs). 105+ ranked recommendations with Opus 4 rationale per person. Clean, no engineering jargon.
Apr 22
LSI DOGFOOD — Internal Full Build INTERNAL
Full build with engineering internals: Robert Lab endpoint inventory, XanoScript port spec, agent-plan primitive, enrichment chain notes, gotchas surfaced during deploy. Same five query results as the Henry-facing variant above.
Apr 22
LSI Proof — Henry's Five Queries, Two Patterns
Five Henry Peck queries answered against the 1,993-attendee LSI list. Includes the detour we took (Opus-over-raw-CSV) alongside the correct pattern per Mark's April 16 directive (graph filter narrows → small Opus at the end). Plus the graph cleanup done this morning.
Apr 20
Overnight Build — Seven Directives, One Night
Live progress tracker for the April 20 Mark-sync directives. OpenRouter swap, Outcome Agent, Opus rationale, recency filter. Updated continuously.
Apr 20→21
Dev Updates
April 14 Dev Update
WorkOS stabilization, polish restoration (370+ files), Manage Account modal fix, full QA pass — 0 console errors
Apr 14
April 10–11 Dev Update
Meeting prep canvas, gold action bars, CrayonChat creation flows, before/after comparison — 30 commits, 515 files
Apr 11
World-Class Polish Pass
12 waves, 50+ AI agents, 1,009 files touched — the great Orbiter UI overhaul
Apr 8
Architecture Docs
Agent Router — Intent-Aware Graph Queries
One endpoint, six intent-specific tools over 12K+ entities. Multi-hop Cypher (Investor → Funding_Round → Company), structured outputs with drafted emails, DMs, outreach. Live demo included.
Apr 16
Knowledge Graph Query Lab
Intent-aware query layer on FalkorDB — fund/hire/sell/general intents, schema discovery, Cypher templates, live test results. Living doc.
Apr 16
Meeting Prep — Technical Architecture
Full-stack data flow: Nylas calendar sync → classify_participants → context persistence pipeline (8 endpoints) → Claude Sonnet 4 → CrayonChat SSE. E2E verified.
Apr 15
All Orbiter Pages
🔀
Anything Engine
14-class intent classifier + dispatch system. Natural language → classify → route → specialized tool. 4 of 14 live.
Classifier 14 Classes Xano
🔍
Find Investors Pipeline
Reference E2E implementation on orbiter-sandbox.vercel.app. Classify → Embed → FalkorDB → Claude Haiku/Opus pipeline → Crayon cards. Zep memory wired.
Find Investors FalkorDB Zep
🤖
Agent Router Demo
Live, inspectable demo of the intent-aware agent over the Orbiter knowledge graph. Routing → Cypher → Graph → Drafted artifact.
Apr 16 Live API
🔍
Before / After Comparison
Side-by-side visual comparison of the April 10 UI transformation across all 6 canvas views.
Apr 10 12 Screenshots
QA Enrichment Dashboard
Live QA status for the enrichment pipeline — pass rates, crash logs, and self-fix metrics.
QA Pipeline Live Data
📚
Technical Documentation
Knowledge graph architecture, QA pipeline docs, and enrichment system documentation.
Architecture Docs