Skip to content

Fix: FinOps frontend bugs — dimension selector, quality query gate, titleize dedup#115

Closed
cursor[bot] wants to merge 3 commits intomainfrom
cursor/finops-frontend-issues-e8f5
Closed

Fix: FinOps frontend bugs — dimension selector, quality query gate, titleize dedup#115
cursor[bot] wants to merge 3 commits intomainfrom
cursor/finops-frontend-issues-e8f5

Conversation

@cursor
Copy link

@cursor cursor bot commented Mar 16, 2026

Summary

Fixes three frontend bugs in the FinOps and workflow components.

Bug 1: Empty state hides dimension selector (workflow-compare-card)

When the default dimension (workflow_archetype) had fewer than two workflows, the early-return empty state rendered without the dimension <select>. Users with data in workflow_fingerprint but not workflow_archetype had no way to switch dimensions.

Fix: Extract the dimension selector into a shared JSX variable and render it in both the empty state and the normal comparison view.

Bug 2: Quality fetch failure blanks entire FinOps overview tab

The quality query was added as a hard blocking dependency for the entire overview tab. If it errored or was slow, the KPIs, charts, and workflow cost table were all hidden even though they loaded successfully.

Fix: Remove quality from the loading/data gates. Pass quality.data?.attribution ?? [] to WorkflowCompareCard, which already handles missing quality data gracefully via optional chaining.

Bug 3: Duplicated titleize utility

The titleize function was identically defined in 4 separate component files.

Fix: Add a single titleize() export to @/lib/utils and update all 4 consumer files to import it from there.

Files changed

  • frontend/src/components/finops/workflow-compare-card.tsx
  • frontend/src/components/finops/overview-tab.tsx
  • frontend/src/lib/utils.ts
  • frontend/src/components/growth/bright-spot-cards.tsx
  • frontend/src/components/growth/workflow-playbook-cards.tsx
  • frontend/src/components/bottlenecks/root-cause-cluster-list.tsx
  • frontend/src/components/projects/project-workflow-section.tsx
Open in Web Open in Cursor 

ccf and others added 3 commits March 16, 2026 08:42
…rom overview tab, deduplicate titleize utility

- workflow-compare-card: always render dimension selector even when current
  dimension has fewer than 2 options, so users can switch dimensions
- overview-tab: remove quality query from hard loading/data gates so the
  tab renders cost/productivity data even if quality fetch fails
- Extract titleize() into @/lib/utils and import it in all 4 consumer files
  instead of duplicating the function definition
@ccf ccf force-pushed the feat/workflow-compare-mode branch from 04bbdfe to bce1585 Compare March 16, 2026 17:49
Base automatically changed from feat/workflow-compare-mode to main March 16, 2026 19:15
@ccf ccf closed this Mar 16, 2026
Sign up for free to 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.

2 participants