fix(forms): expand Form information tick rows with DisclosureGroup - #1735
Conversation
Replace the static tick-row cards (truncated text + decorative chevron) with the design-system DisclosureGroup so taps reveal full content. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
Widen optional ServiceInfoRow values and narrow the DOM test text before assertions. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
|
Warning Review limit reachedYou’ve reached a temporary PR review limit under our Fair Usage Limits Policy. Next review available in: 16 minutes Your organization has reached its usage spending cap. Adjust your spending cap in the billing tab. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (3)
📝 WalkthroughWalkthroughThe form detail page now renders form information rows as expandable ChangesForm information disclosure
Estimated code review effort: 3 (Moderate) | ~20 minutes Sequence Diagram(s)sequenceDiagram
participant FormDetailPage
participant DisclosureGroup
participant DisclosurePanel
FormDetailPage->>DisclosureGroup: Render form information items
DisclosureGroup->>DisclosurePanel: Set expanded state
DisclosurePanel-->>FormDetailPage: Display full row content
Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
|
This pull request has been ignored for the connected project Preview Branches by Supabase. |
Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
8f25e6c to
061619d
Compare
|
@cursoragent Work the current open PR end-to-end. Confirm the PR number and GitHub head first from context. If more than one open PR could apply, stop and say which one you would use and why. Fetch and start from the remote tip that matches that GitHub head. If the named branch ref is missing or stale, use the PR head ref. Preserve unrelated local WIP, including any local-only ledger commits; do not discard dirty work, and do not treat a local-ahead commit as the reviewed tip. Do not merge the PR, force-push, rebase, or arm auto-merge unless I explicitly ask. No provider-backed gates without separate approval. If you cannot push or resolve threads, diagnose and comment only; if inline replies fail, resolve when possible and put dispositions in the summary comment. If auto-merge is already armed, push only for a real blocker, and avoid pushes that would cancel in-flight required CI unless the push itself clears that blocker. If the PR is already merged or closed: confirm the head and merge commit, note required-CI outcome, post one summary, and stop. Goal: deep review plus Bugbot, fix actionable issues with the smallest correct changes, clear merge / required-CI / thread blockers, run strong local offline verification, push fixes, append the review ledger, and post one PR summary. Prefer thoroughness over speed. Regenerate large assets only when a fix requires it; then run the asset check and keep compatibility aliases byte-identical where the repo uses them. Snapshot the GitHub head SHA: tip, base, behind/ahead, mergeable state, merge-tree versus origin/main (real conflict versus behind-but-clean), required checks on that tip including Production UI when selected, advisory separately, unresolved actionable threads. Missing checks while dirty are not green. If the tip moves mid-work, re-snapshot and continue from the new head. Ledger-lookup against that GitHub head under the heavy review-and-fix scope for this PR. Already reviewed at this head with clean merge-tree, green required checks, and no new actionable threads → summarize, comment, stop unless I asked for a fresh superseding pass. Follow the repo review protocol. Unblock once: real conflict → merge origin/main (prefer main’s shared queues; keep this PR’s notes); behind-but-clean → one sync, late if required CI is in flight; clean → leave. Labels like skip-branch-sync do not block a manual sync needed to clear a real blocker. No sync thrash. After any sync or push, re-snapshot tip, merge-tree, and required checks before declaring done. Dedupe the ledger if a merge touched it. Review high-confidence delta risks only. Separate PR-introduced defects from pre-existing re-emitted debt. For generated assets, review contracts, aliases, cache, and manifests—not every generated line. If protected RAG or ranking surfaces are touched, say so before editing; fix PR-body policy text only when wrong or missing. Ignore bot noise. No nit spam or broad rewrites. Escalate verification by touched risk: clinical / RAG / privacy / migrations / auth → domain check plus production-readiness when warranted; UI / phone-chrome / routing / styling → ensure plus phone-chrome or UI gates when warranted; generated assets or docs inventory/links → asset or docs checks when warranted. Fix P0/P1 always; clear scoped P2 when locally provable; else disposition and resolve. Required-check failures on this tip only; ignore advisory. Prefer reverting a bad autofix commit. After fixes: format and commit before push; smallest targeted proof; repo cheap gate; repo PR-local gate. No release, lighthouse, live eval, or live provider gates without approval. Push only this PR’s fix commits. Append ledger for the final GitHub head under the heavy scope. Never push a ledger-only tip—include ledger in a real fix push, or leave a no-change ledger append local and unpushed. One PR comment: tip, sync/merge-tree, fixed versus dispositioned, threads, required CI, decisive local gate lines, residual risks; merge left to me. Inline only for remaining human-needed P0/P1. Stop when merge-tree is clean on the current GitHub tip, actionable threads are clear, required checks are green or clearly in progress, heavy gates for scope passed, summary posted, merge left to me. |
|
PR #1735 @ Snapshot
Fixed (P2)Disclosure preview was inside the trigger, so Form information buttons announced the full clinical value, and Left for you
Summary comment is on the PR. |
Form information rows were announcing the full clinical value as the button name. Mark the preview aria-hidden, restore sm+ wrapping, and assert label-only names in Disclosure and Forms DOM tests. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
PR #1735 review-and-fix summaryPR / tip: Sync / merge-tree
Review findings
Threads
Local verification (decisive lines)
Residual risks
Merge left to you. |
|
@copilot resolve the merge conflicts on this branch. |
…closure-68d6 # Conflicts: # docs/branch-review-ledger.md Co-authored-by: BigSimmo <87357024+BigSimmo@users.noreply.github.com>
Resolved. I merged |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@src/components/forms/form-detail-page.tsx`:
- Around line 616-633: Update formInformationItems to generate unique IDs for
each disclosure item instead of relying only on row.label: incorporate the
available source identifier, or otherwise include the row ordinal as a fallback.
Preserve the existing labels and content, and add coverage confirming duplicate
labels produce distinct IDs and independent disclosure state.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 07416a06-5780-40b2-81c7-e4811bbf7ac9
📒 Files selected for processing (7)
docs/branch-review-ledger.mddocs/design-system/COMPONENTS.mddocs/design-system/adoption-manifest.jsonsrc/components/forms/form-detail-page.tsxsrc/components/ui/disclosure.tsxtests/forms-information-disclosure.dom.test.tsxtests/ui-v2-components.dom.test.tsx
…closure-68d6 Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
formInformationItems keyed only on row.label collided when referral info repeated the same label, breaking DisclosureGroup open state. Include the row index in each id and assert duplicate labels stay independent in forms-information-disclosure.dom.test.
There was a problem hiding this comment.
Pull request overview
This PR makes the “Form information” tick rows on the Forms detail page genuinely interactive by replacing the static, chevron-styled cards with the design-system DisclosureGroup, so rows can be expanded to reveal the full catalog text (with improved accessible naming behavior).
Changes:
- Replaced Forms detail “Form information” rows with a
DisclosureGroupbuilt from the catalog detail rows. - Updated
Disclosureto treat thedescriptionas a visual-only preview (aria-hidden) and restore wrapping onsm+. - Added DOM tests covering disclosure expand behavior and accessible-name expectations; refreshed design-system adoption snapshots/manifests.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
src/components/forms/form-detail-page.tsx |
Replaces static info rows with DisclosureGroup items (icons + preview + expandable full text). |
src/components/ui/disclosure.tsx |
Updates disclosure description rendering to be visual-only and wrap on larger screens. |
tests/forms-information-disclosure.dom.test.tsx |
New DOM test ensuring a Form information row expands and reveals full content. |
tests/ui-v2-components.dom.test.tsx |
Adds a disclosure test asserting label-only accessible name and expand behavior. |
docs/design-system/COMPONENTS.md |
Updates generated component inventory counts / DisclosureGroup adoption row. |
docs/design-system/adoption-manifest.json |
Updates generated adoption manifest to reflect new product import usage of DisclosureGroup. |
docs/branch-review-ledger.md |
Appends ledger entries for this work. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Conflict on docs/design-system/adoption-manifest.json: regenerated after taking main's route shell (documents/medications homes) so counts stay consistent with this PR's DisclosureGroup product import on form detail.
Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>


Summary
DisclosureGroupso collapsed rows show a preview and expanding reveals the full catalog text.DisclosureGroup.aria-hidden(label-only accessible name) and restoressm+wrapping so desktop scanners are not forced through a tap.Verification
npm run verify:pr-local— passed after the Disclosure a11y follow-up (lint, typecheck, full unit suite5608passed /4skipped, build, RAG fixtures)npm run test -- tests/forms-information-disclosure.dom.test.tsx tests/ui-v2-components.dom.test.tsxnpm run check:design-system-adoption(earlier on DisclosureGroup adoption)npm run formatRisk and rollout
Notes
DisclosureGroupon the Forms detail surface (related to outstanding DS adoption work), not a full Forms design-system tranche.Summary by CodeRabbit
New Features
Accessibility
Responsive Design
Tests