Finish ClinicalDashboard admin decomposition: SettingsDialog + dashboard-nav cutover, dead-code cleanup - #336
Merged
Merged
Conversation
…d-nav module (move-only) The prepared dashboard-nav.tsx sibling from #250 had drifted from the live monolith (missing prop members, stale colour tokens), so it was regenerated verbatim from the current monolith block (1072-1436) before wiring. Exports: ToolsHub, buildMobileSectionFabState, MobileSectionFab; back-imports (ApplicationsLauncherWorkspace, navigationHashes, mobileSectionFabMediaQuery) follow the existing benign back-edge pattern. Monolith 4373 -> 4007 lines. Live-surface data-testid/aria-label corpus verified byte-identical pre/post. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XPVNBVo4cg9PEYtNhJZBQY
…og module (move-only) The prepared settings-dialog.tsx from #250 predated the auth-email sign-in flow (useAuthSession/settingsEmail/submitSettingsEmail all absent), so it was regenerated verbatim from the current monolith block (518-1070) before wiring. Repointed both consumers: the monolith render and global-mockup-search-shell (which now imports SettingsDialog from the module and only recentQueryStorageKey from the monolith). Stripped 24 now-orphaned monolith imports. Monolith 4007 -> 3454 lines. Live-surface data-testid/aria-label corpus verified byte-identical pre/post. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XPVNBVo4cg9PEYtNhJZBQY
…log; record operator approvals The document-admin/ directory (document-drawer.tsx, label-helpers.ts, index.ts) was an unwired leftover shadowed by the live document-admin.tsx file in module resolution — nothing imported it. The process-hardening Phase-3 log now reflects that #250/#251 landed and the admin cutover is finished. docs/archive/operator-decisions-2026-07-06.md records the operator's approval to apply the two pending live migrations (M13, storage_cleanup_jobs index reconcile) and deploy the indexing-v3-agent edge function from any live-connected session. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XPVNBVo4cg9PEYtNhJZBQY
…mp-final # Conflicts: # src/components/ClinicalDashboard.tsx # src/components/clinical-dashboard/document-admin/document-drawer.tsx # src/components/clinical-dashboard/settings-dialog.tsx
This pull request has been ignored for the connected project Preview Branches by Supabase. |
BigSimmo
marked this pull request as ready for review
July 6, 2026 18:18
BigSimmo
enabled auto-merge
July 6, 2026 18:18
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
Uh oh!
There was an error while loading. Please reload this page.
BigSimmo added a commit
that referenced
this pull request
Aug 18, 2026
BigSimmo pushed a commit
that referenced
this pull request
Aug 18, 2026
Resolves the one real conflict GitHub reported (`mergeable_state: dirty`, base at dc7e518): `tests/design-token-contract.test.ts`. Both sides appended a new `describe` block to the end of the same file and the two shared a trailing `});` pair, so git could not tell them apart: - ours: "category accents stay out of the semantic palette" — the three guards keeping identity accents off the danger/warning/success/info families. - theirs: "responsive breakpoint tokens (Task #336)" — the --bp-* / --breakpoint-* assertions. There is no semantic overlap between them, so both are kept and each is closed explicitly rather than sharing a terminator. Verified by content, not by the merge exiting cleanly: the file now declares both describes, and the suite runs 40 tests where ours alone ran 39 and theirs added 1 — so neither side was silently dropped. Gates on the merged tree: typecheck, lint, `npm run test` (651 files, 7016 passed / 4 skipped). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XGhewT2mmRoRTynjWfF1Vn
4 tasks
BigSimmo added a commit
that referenced
this pull request
Aug 18, 2026
BigSimmo pushed a commit
that referenced
this pull request
Aug 18, 2026
PR #2081 (already merged) queued "update" flags for #222, #321, and #336 noting they were still open after PR #2072. This PR queues its own newer, more complete requests for the same three rows (two "done" decisions, one updated "PARTIAL" status), which the ledger inbox tool correctly refuses to auto-reconcile as a silent overwrite — it requires an explicit cancel decision per row. Cancels the three now-superseded #2081 flags in favor of this PR's requests, fixing the docs:check-links / ledger-inbox failure in Static PR checks. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015qDHwBNZYyRLdJHqSkiYTg
BigSimmo added a commit
that referenced
this pull request
Aug 18, 2026
7 tasks
BigSimmo pushed a commit
that referenced
this pull request
Aug 18, 2026
Cancels four pending requests found while diagnosing the docs:check-links CI failure — two were duplicates of already-applied requests (#222, #336, each already closed by a different, more accurate applied request), and two asserted "done" outcomes for work this branch's final state does not actually contain after the fabricated-content revert (#318: lexicon sign-off and loperamide exclusion; #309: filter-density fix). All four are cancelled via immutable cancel requests rather than deleted, per ledger-write discipline.
BigSimmo pushed a commit
that referenced
this pull request
Aug 18, 2026
Cancels 88868df4-c310-4ac2-9e83-cd3ad7702a1d, another false "done" claim from this branch's original batch (same pattern as #222/#318/#309/#336): #183 asks for a live Sentry production metric alert, blocked on missing credentials and unreachable via a code diff. This branch's actual final diff contains no Sentry or alerting changes. Also resolves a collision with a separate, legitimate concurrent update request on the same row from an unrelated branch.
9 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Completes the deferred admin-surface phase of the ClinicalDashboard decomposition (debt tracked in
docs/process-hardening.mdPhase 3). Monolith: 4,373 → ~3,450 lines; only the orchestrator, its data/state hooks, and small render/stream helpers remain.clinical-dashboard/dashboard-nav.tsx(move-only). The prepared refactor: extract SettingsDialog + dashboard-nav overlays from ClinicalDashboard (move-only) #250 sibling had drifted from the live monolith (missing prop members, stale colour tokens) and was regenerated verbatim from the current monolith block before wiring. Back-imports (ApplicationsLauncherWorkspace,navigationHashes,mobileSectionFabMediaQuery) follow the existing benign back-edge pattern.Settings*helpers) →clinical-dashboard/settings-dialog.tsx(move-only). The refactor: extract SettingsDialog + dashboard-nav overlays from ClinicalDashboard (move-only) #250 sibling predated the auth-email sign-in flow (useAuthSession/settingsEmail/submitSettingsEmailabsent) — wiring it as-is would have regressed settings sign-in — so it too was regenerated verbatim. Both consumers repointed: the monolith render andglobal-mockup-search-shell.tsx. 24 now-orphaned monolith imports stripped.clinical-dashboard/document-admin/directory (document-drawer.tsx,label-helpers.ts,index.ts) — shadowed by the livedocument-admin.tsxfile in module resolution; imported by nothing.text-2xs/text-sm-minus/text-base-minusclasses; no design regression.docs/process-hardening.mdPhase 3 now reflects refactor: extract SettingsDialog + dashboard-nav overlays from ClinicalDashboard (move-only) #250/refactor: extract document-admin — completes ClinicalDashboard decomposition (move-only) #251 landed + this cutover); addeddocs/archive/operator-decisions-2026-07-06.mdrecording operator approval to apply the two pending live migrations (M13, storage_cleanup_jobs index reconcile) and deploy theindexing-v3-agentedge function from any live-connected session.Move integrity: every block moved verbatim (diff-verified), and the live-surface
data-testid/aria-labelcorpus was proven byte-identical before/after each move and across the main merge (sorted-attribute sha1).Verification
npm run verify:cheap— pass (runtime, sitemap, lint [5 pre-existing warnings, 0 errors], typecheck, 1,181 unit tests)npm run verify:ui— 109/109 passed post-merge (settings dialog viaui-smokeaccount-settings assertions; ToolsHub viaui-tools*; MobileSectionFab viaui-overlap)npm run verify:releasebefore release or handoff confidence claimsnpm run format:check— passnpm run eval:retrieval:quality— N/A: no retrieval, ranking, selection, chunking, or scoring change (UI move-only)npm run eval:rag/eval:quality— N/A: no answer-generation changenpm run check:production-readiness— N/A: no clinical workflow, privacy, environment, Supabase, or deployment behavior changenpm run check:deployment-readiness— N/A: no deployment startup changeClinical Governance Preflight
UI module reorganization only; no ingestion/answer/search/source/privacy changes.
Clinical KB Database(sjrfecxgysukkwxsowpy)Notes
clinical-dashboard/index.tswas not extended; modules are imported by deep path.docs/archive/operator-decisions-2026-07-06.mditems (live migrations + edge deploy) still need execution from a live-connected session — this PR only records the approval.🤖 Generated with Claude Code
https://claude.ai/code/session_01XPVNBVo4cg9PEYtNhJZBQY
Generated by Claude Code