duncanmcqueen repairs a costly upstream sync

A major sync brought new upstream work into the fork, then required seven fixes to restore the fork's own legal-product features.

workflowintegration

The repair pass brought back capabilities that the merge had silently displaced:

  • Legal monitoring, playbooks, prompt libraries, patent workflows and support features regained their test coverage.
  • Local sign-in and data storage were restored for the fork's end-to-end checks.
  • Chat users again get playbook and prompt-library pickers, alongside the new workflow option.
  • Tabular reviews can again start without a predefined template.
  • Workspace, integration and model controls, including Gmail, returned to settings.
  • Dark-mode preferences are again retained.

The interesting story is maintenance discipline, not a new product launch: this fork is taking upstream improvements while preserving a broader operational layer of its own.

So what Teams considering duncanmcqueen's fork should look closely at GitHub: it offers useful legal workflow additions, but each upstream sync currently carries real regression risk.

View this fork on GitHub →

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

Commits in this thread

8 commits from duncanmcqueen/mike, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
fb81d686 merge: sync Open-Legal-Products/mike upstream through 8c678e6 Codex Merge 2026-08-13 ↗ GitHub
90b44779 test: repair route test harnesses after upstream sync dwmcqueen 2026-08-13 ↗ GitHub
commit body
- Point the integration harnesses back at the sqlite provider path:
  routes resolve their db via createServerDatabase (which delegates to
  createServerSQLite under MIKE_DATABASE_PROVIDER=sqlite), so mocking
  only lib/supabase left every write invisible to query tracking.
  chat/wordChat mock createServerSQLite directly; projects/workflows
  forward it to the mocked createServerSupabase so the one-shot RPC
  capture overrides keep working.
- Expect sanitized 500 details in projects.routes tests (the routes
  deliberately do not leak raw database error messages).
- Fix a timebomb in legalMonitorConnectorSources.test: the trademark
  dossier test used a hardcoded registrationDate that ages out of the
  14-day lookback window; compute it relative to now.
fe5d9319 test: restore mikeApi coverage tests lost in the upstream sync dwmcqueen 2026-08-13 ↗ GitHub
commit body
The sync merge took upstream's mikeApi.test.ts wholesale, dropping the
wrapper/branch coverage added for the fork's endpoints (legal monitors,
playbooks, prompts, gmail, ironclad, support, patent preset) and the
dual-flavor blob text reader. Re-apply those on top of upstream's new
quick-actions / workflow-addon / reference-file tests.
b8f68fcd ci(e2e): restore the SQLite-stack e2e workflow dwmcqueen 2026-08-13 ↗ GitHub
commit body
The upstream sync took upstream's e2e.yml, which boots a local Supabase
stack - but this fork's specs authenticate through the local auth
provider (/user/auth/signup), which a Supabase-profile backend 404s.
Restore the SQLite + local-auth wiring the specs were written for.
c35b1d3d ci(e2e): pin the local auth/database providers for the e2e stack dwmcqueen 2026-08-13 ↗ GitHub
The frontend production build requires NEXT_PUBLIC_MIKE_AUTH_PROVIDER
for local-profile builds, and explicit MIKE_DATABASE_PROVIDER /
MIKE_AUTH_PROVIDER remove the reliance on env auto-detection.
ac4e13fe fix: restore composer playbook/prompt pickers and no-template reviews dwmcqueen 2026-08-13 ↗ GitHub
commit body
- The upstream sync clobbered ChatInput.tsx, dropping the playbook and
  prompt-library pickers from the composer; restore them and union with
  upstream's new startWorkflow imperative handle.
- Allow an empty columns_config on POST /tabular-review again: the 'No
  template - start from scratch' flow sends none, so the non-empty
  validation 400'd a flow the UI explicitly offers (matches upstream).
- e2e: follow the /account -> /settings rename in the gmail and patent
  connector specs.
162f9508 fix: restore feature flags and Gmail sections on the settings features page dwmcqueen 2026-08-13 ↗ GitHub
commit body
The upstream sync took upstream's settings/features page, dropping the
Workspace/Integrations/Models feature-flag groups and the Email
Integration (Gmail) section. Restore them on top of upstream's
server-backed quick-actions and CourtListener sections, using the new
SettingsSection/SettingsToggle components.
e55d8757 fix: preserve and reapply dark mode preference dwmcqueen 2026-08-13 ↗ GitHub

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-974.md from inside the repo you want the changes in.

⬇ Download capture-thread-974.md