Phase 4: Domain swap (legal → finance) + Mike → Gordon rename

✅ merged · #5 · Archibald312/GordonOSS ← Archibald312/GordonOSS · opened 11d ago by Archibald312 · merged 11d ago by Archibald312 · self · +650-435 across 89 files · ↗ on GitHub

From the PR description

Summary

  • Repositions the fork from legal AI to a finance AI assistant: rewrites system prompts, disclaimers, practice areas, and column presets for M&A diligence, PE, private credit, lev fin, IB, and equity/credit research.
  • Completes the Mike → Gordon brand rename across types (MikeMessage/Workflow/Chat/...), components (MikeIcon), API client (mikeApi.ts), MIME types, localStorage key, R2 bucket default, README, and docs.
  • Keeps all 12 built-in workflows untouched - finance workflow library is Phase 11. Old workflow practice values still display through the Practice = string flow + "Others" fallback.

What changed

Visible copy

  • InitialView disclaimer now covers financial/investment/accounting/legal advice.
  • Layout metadata (title, OG, Twitter), login/signup/support pages rebranded.
  • Chat title generator prompt reframed for finance.

System prompts

  • chatTools.ts SYSTEM_PROMPT rewritten with finance framing + citation-auditability emphasis.
  • projectChat.ts project-context block now describes finance deal/mandate workstreams.
  • tabular.ts extraction & review prompts (legal document analystfinance document analyst).
  • generate_docx tool description updated for finance artifacts (memo, IC paper, term sheet, diligence report, contract).

Practice areas - wholesale replacement: 19 legal practices → 17 finance verticals.

Column presets - additive, not replacement. Kept neutral legal contract presets (apply to finance contracts too) and added 12 finance presets (Revenue, EBITDA, Net Income, FCF, Leverage Ratio, Interest Coverage, Reporting Period, Maturity, Coupon/Rate, Currency, Capex, Margin).

Rename mechanics

  • 9 type identifiers across 48 files.
  • File renames: mike-icon.tsxgordon-icon.tsx; mikeApi.tsgordonApi.ts.
  • MIME types application/mike-*application/gordon-*, localStorage key, R2 bucket default in .env.example.
  • FORK.md upstream URLs to willchen96/mike intentionally preserved.

Deferred per plan

  • All 12 built-in workflows kept (Phase 11 will build the finance workflow library).
  • LEGAL_NUMBERING_REF in shared/generateDocx.ts left as-is (it refers to Word's built-in legal numbering style - forces arabic numerals at all levels - not legal documents).

Full rationale in decisions.md.

Test plan

  • tsc --noEmit clean on backend
  • tsc --noEmit clean on frontend
  • Backend Vitest: 57/57 passing
  • Spot-check chat title generation produces finance-style titles
  • Spot-check tabular review on a finance doc uses the new finance column presets
  • Verify login/signup pages render with new Gordon branding
  • Verify localStorage key change (mike.selectedModelgordon.selectedModel) - users will re-select model on first load

Operational notes

  • .env.example default R2_BUCKET_NAME changed mikegordon. Existing deployments setting this var explicitly are unaffected; deployments relying on the default need to set the var or create a new bucket.
  • localStorage key rename will silently reset users' last-selected model on their next visit. Acceptable one-time friction.

🤖 Generated with Claude Code

Our analysis

Pivot the fork from legal AI to a finance AI assistant — read the full analysis →

Think the analysis missed something the PR description covers?

Capture this PR into my fork

Download a Markdown prompt that tells Claude how to port every commit in this PR into your working tree. Run it via claude -p < capture-pull-5.md from inside the repo you want the changes in.

⬇ Download capture-pull-5.md