Skip to content

refactor: extract document-results — completes ClinicalDashboard decomposition (move-only) - #241

Merged
BigSimmo merged 1 commit into
mainfrom
claude/clinical-dashboard-decomp-final
Jul 3, 2026
Merged

refactor: extract document-results — completes ClinicalDashboard decomposition (move-only)#241
BigSimmo merged 1 commit into
mainfrom
claude/clinical-dashboard-decomp-final

Conversation

@BigSimmo

Copy link
Copy Markdown
Owner

What — final module of the ClinicalDashboard decomposition 🎉

Extracts the answer-results surfaces (WhyThisMatchedPanel, RelatedDocumentsPanel, StagedAnswerResultSurface) into clinical-dashboard/document-results.tsx (contiguous block, 489 lines). Monolith 5216 → 4726 lines.

This is the last of the approved move map. Prior modules: AuthPanel (#202), answer-content + evidence-panels (#211), output-panel (#214), visual-evidence (#240). ClinicalDashboard.tsx has gone from ~8.8k → ~4.7k lines and now holds the main orchestrator + state hooks + the deferred admin surfaces only.

No runtime cycle

The only monolith dependency is type AnswerFeedbackType (erased at compile time). StagedAnswerResultSurface is a leaf result-surface that imports one-way from every sibling module (answer-content, evidence-panels, visual-evidence, relevance, document-search-results, badges, dashboard-shell, display-text, use-mobile-preview-sheet); the monolith imports RelatedDocumentsPanel + StagedAnswerResultSurface back. The monolith's visual-evidence import (InlineTableCard/MobileEvidenceSheetContent) moved into document-results.

Move fidelity

  • Block cut verbatim — the original range diffs empty against the new module body.
  • data-testid / aria-label sha1 checksum over ClinicalDashboard.tsx + clinical-dashboard/*.tsx is byte-identical to main.
  • Stripped 35 now-orphaned monolith imports (via an import-aware trimmer); two pre-existing dead imports left untouched.

Pinned guard

Added document-results.tsx to the rendered-text-formatting.test.ts corpus (verified it trips none of the raw-render negative regexes). No AST pin lives here, so clinical-dashboard-merge-artifacts.test.ts is unchanged.

Gates

typecheck; lint 0 errors; pinned vitest 12/12; testid/aria checksum identical; format:check; verify:cheap 980/980.

Note

Built on the dedicated branch off main (cherry-picked cleanly on top of the merged #240 to avoid squash-ancestry churn).

🤖 Generated with Claude Code

…sition
Move-only extraction of the answer-results surfaces (WhyThisMatchedPanel,
RelatedDocumentsPanel, StagedAnswerResultSurface) into
clinical-dashboard/document-results.tsx. Contiguous block 456-944 moved
verbatim — it diffs empty against the new module body, and the
data-testid/aria-label sha1 checksum over ClinicalDashboard.tsx +
clinical-dashboard/*.tsx is byte-identical to main. Monolith 5216 -> 4726 lines.
No runtime cycle: the only monolith dependency is `type AnswerFeedbackType`
(erased at compile time). StagedAnswerResultSurface is a leaf result-surface
that imports one-way from every sibling module (answer-content, evidence-panels,
visual-evidence, relevance, document-search-results, badges, dashboard-shell,
display-text, use-mobile-preview-sheet); the monolith imports RelatedDocumentsPanel
+ StagedAnswerResultSurface back. The monolith's visual-evidence import
(InlineTableCard/MobileEvidenceSheetContent) moved into document-results.
Added document-results.tsx to the rendered-text-formatting corpus; stripped 35
now-orphaned monolith imports (two pre-existing dead imports left untouched).
This is the final module of the approved move map: ClinicalDashboard.tsx is now
~4.7k lines (from ~8.8k) and holds the main orchestrator + deferred admin
surfaces only.
Gates: typecheck, lint (0 errors), pinned vitest 12/12, testid/aria checksum
identical, format:check, verify:cheap 980/980.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@BigSimmo
BigSimmo enabled auto-merge (squash) July 3, 2026 10:29
@BigSimmo
BigSimmo merged commit da2d1f7 into mainJul 3, 2026
4 checks passed
@BigSimmo
BigSimmo deleted the claude/clinical-dashboard-decomp-final branch July 3, 2026 12:52
BigSimmo added a commit that referenced this pull request Aug 13, 2026
… queue text (#1890)
* docs(issues): retire 22 non-actionable ledger rows and correct the #231 queue text
A yield review of all 114 open rows against current main. The queue had become
roughly 60 tasks and 50 notes; this removes the notes and fixes two places where
the ledger was actively misdirecting.
The correction that matters most: the recommended-queue entry for #231, the top
clinical P1, told every session to "measure and fix the fast-route budget /
generation timeout" — an approach #231's own detail records as tested and
rejected, because the decisive 40-second probe completed generation in 25.272s
with route_deadline_exceeded=false and still failed quality. The session-start
hook prints the queue, not the row, so the refuted text was the text agents read.
Closed 22 rows:
- #304 was already done on main (commit d182844 refreshed the ranking
snapshot; generatedAt is 0 days old, not 2026-07-20), yet sat in the queue
advertising a freshness fuse that is not armed.
- #241#244#272#294#300#257 were standing cautions whose own text says
"no action". Each one's knowledge now lives in the code it protects, so
closing the row loses nothing.
- #196-#200 are five steps of the disaster-recovery checklist that is
canonical in docs/operator-backlog.md, with no trigger until a restore.
- #86#188 were index rows over children that are individually findable.
- #250#253#254 were superseded; #250 and #253 say so themselves.
- #156#301#152#236#260 merged into #168, #292 and #169 respectively —
each pair or group was one problem recorded two to four times.
Demoted 20 rows with a stated reason (premature ops for a single-user
prototype, upstream-blocked, measurement-gated, or design-system adoption
competing with an open clinical P1). The Pri cell is unchanged because the
writer has no --pri flag — which is now #313.
Added three rows for mechanism gaps this sweep exposed: rows outliving their
own completion (#312), the missing --pri flag (#313), and the queue being able
to contradict the row it cites with no guard (#314).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DuYJz8hauCsCdx8r4fXiZU
* docs(ledger): record the ledger yield review handoff
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DuYJz8hauCsCdx8r4fXiZU
* Keep recovery work visible and pin forced colors
---------
Co-authored-by: Claude <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@BigSimmo