Finch rebrand and tabular doc-detail drill-in view

One commit doing two unrelated things: a string-level rename of the product from Mike to Finch, and a 675-line three-pane doc-detail view for tabular review drill-in with inline cell editing and in-document search.

contract-reviewdiscovery

The rename is surface-level: user-visible strings, the system prompt assistant identity, the tracked-change author field, and the startup log. Internal types, file paths, and the mikeApi client name are unchanged. The brand mark swaps to a static ONIT SVG across sidebar, header, and the assistant landing. A frontend/src/lib/greetings.ts adds a randomized work-flavored legal greeting per mount with name substitution.

The substantive piece is TRDocDetailView - a three-pane panel (25/25/50 split) that opens when you click a document filename in a tabular review row. Left pane shows the column list; center pane shows the cell value, explanation, and a pencil-to-textarea edit flow; right pane shows the DocView preview. The edit path calls a new PATCH /tabular-review/:reviewId/cells endpoint, which persists manual edits and sets status="done" on the cell.

The in-document search is done with a DOM-level span walk: the search input triggers a traversal of pdf-text-layer spans, wrapping matches in <mark class="finch-search-match">. The overlay approach keeps the canvas glyphs visible while the highlights sit above. An N/M counter plus prev/next arrows let you step through occurrences. Top-bar document arrows let you move to the next or previous doc in the review without returning to the table.

One fix worth noting: the doc-viewer container was changed to display: flex so DocView's flex-1 scroll region resolves a real height. Without this, both mouse-wheel scroll and programmatic scroll to a cited passage were broken. This fix should come along if you port the doc-detail view.

The brand-rename portion is fork-specific. The TRDocDetailView is the thing worth evaluating.

So what The doc-detail view is worth importing if your fork has tabular review. It makes the review/verify workflow functional - the previous flow forced users back to the table for every document inspection. Port the `flex` container fix alongside it; scroll will be broken without it. Skip the Finch rename. Also note: the search highlighter and the citation highlighter previously conflicted over the same text divs; the commit includes a fix where DocView's empty-quote effect clears stale citation highlights - include that too.

View this fork on GitHub →

Spotted something wrong? Or know the PR text has fresher detail than the writeup above?

Commits in this thread

1 commit from nwhitehouse/mike, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
fac10f42 Rename to Finch, ONIT logo, random greeting, doc detail view Nick Whitehouse 2026-04-30 ↗ GitHub
commit body
- App-wide rename Mike -> Finch in user-visible strings, system
  prompts, and tracked-change author. Internal types, file paths,
  and the mikeApi client name are unchanged.
- Brand logo swapped to assets/ONIT_Mark_Dark.svg (copied to
  frontend/public/onit-mark-dark.svg). Sidebar, header, and the
  initial assistant landing all use the static mark; MikeIcon stays
  in place for spinner / done / error status indicators.
- Initial assistant greeting now picks one of the work___ legal
  greetings at random per mount and substitutes the user's name.
- New 3-pane "doc detail" view in tabular review (TRDocDetailView):
  click a document filename in the table to drill into a 25/25/50
  layout - column list / cell value & explanation / DocView preview.
  Doc viewer wrapper is a flex container so DocView's flex-1
  scroll region resolves a real height (otherwise mouse-wheel and
  programmatic scroll were both dead).
- Inline cell editing in the doc detail middle pane: pencil-driven
  edit mode with textareas, Cancel + Save buttons, and a new
  PATCH /tabular-review/:reviewId/cells endpoint that stores the
  manually edited content and sets status to "done".
- In-doc search in the right pane: input + N/M counter + prev/next
  arrows. Multi-match highlighter walks the pdf-text-layer spans
  and wraps every occurrence in <mark.finch-search-match> with
  rgba background so the canvas glyphs underneath stay visible.
  Current match shown in orange, others amber. DocView's empty-quote
  effect now clears stale citation highlights so the search and
  citation paths don't fight over the same text divs.
- Top-bar prev/next document arrows so you can scan the same column
  across documents without going back to the table.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

Capture this thread into my fork

Download a single Markdown prompt that tells Claude how to port every commit above into your working tree — adapting paths and structure to match your repo. Run it via claude -p < capture-thread-112.md from inside the repo you want the changes in.

⬇ Download capture-thread-112.md