Remove dataset UI surfaces#1093
Conversation
📝 WalkthroughWalkthroughThis PR removes the entire datasets feature from the OSMO UI codebase, including all route handlers, page components, UI components for list and detail views, API adapters and hooks, mock data infrastructure, and E2E tests. Dataset-level localpath warnings are removed from workflow submission while retaining file-level checks. Navigation is updated to remove datasets references. ChangesDatasets Feature Removal
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Suggested reviewers
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1093 +/- ##
==========================================
- Coverage 53.15% 53.04% -0.12%
==========================================
Files 220 214 -6
Lines 28691 28363 -328
Branches 4296 4199 -97
==========================================
- Hits 15252 15045 -207
+ Misses 12738 12634 -104
+ Partials 701 684 -17
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
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/ui/e2e/journeys/navigation.spec.ts`:
- Around line 29-30: Update AGENTS.md’s "Codebase Structure" -> "Key routes"
section to remove or modify the entry that lists "/datasets" so it no longer
references the removed UI surface; search for the "Codebase Structure" heading
and the "Key routes" subsection in AGENTS.md, remove the "/datasets" bullet (or
replace it with the correct current route) and ensure the list and any
explanatory text reflect the current routes such as "/resources" and
"/occupancy".
🪄 Autofix (Beta)
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: Enterprise
Run ID: a2a220b9-dcd7-4b1c-a03f-bb5f9f108cb8
📒 Files selected for processing (78)
src/ui/e2e/global-setup.tssrc/ui/e2e/journeys/dataset-detail.spec.tssrc/ui/e2e/journeys/dataset-file-browser.spec.tssrc/ui/e2e/journeys/dataset-filters.spec.tssrc/ui/e2e/journeys/dataset-panel.spec.tssrc/ui/e2e/journeys/dataset-version-picker.spec.tssrc/ui/e2e/journeys/datasets.spec.tssrc/ui/e2e/journeys/empty-states.spec.tssrc/ui/e2e/journeys/navigation.spec.tssrc/ui/e2e/journeys/submit-workflow-form.spec.tssrc/ui/e2e/mock-api-backend.mjssrc/ui/e2e/utils/mock-setup.tssrc/ui/next.config.tssrc/ui/playwright.config.tssrc/ui/src/app/(dashboard)/datasets/[bucket]/[name]/error.tsxsrc/ui/src/app/(dashboard)/datasets/[bucket]/[name]/page.tsxsrc/ui/src/app/(dashboard)/datasets/[bucket]/page.tsxsrc/ui/src/app/(dashboard)/datasets/error.tsxsrc/ui/src/app/(dashboard)/datasets/layout.tsxsrc/ui/src/app/(dashboard)/datasets/page.tsxsrc/ui/src/app/api/e2e/dataset-manifest/route.tssrc/ui/src/app/proxy/dataset/file/route.impl.production.tssrc/ui/src/app/proxy/dataset/file/route.impl.tssrc/ui/src/app/proxy/dataset/file/route.tssrc/ui/src/components/copyable-value.tsxsrc/ui/src/components/submit-workflow/detect-localpath.test.tssrc/ui/src/components/submit-workflow/detect-localpath.tssrc/ui/src/components/submit-workflow/submit-workflow-config-panel.tsxsrc/ui/src/components/submit-workflow/use-submit-workflow-form.tssrc/ui/src/features/datasets/detail/components/dataset-detail-content.tsxsrc/ui/src/features/datasets/detail/components/dataset-detail-skeleton.tsxsrc/ui/src/features/datasets/detail/components/dataset-detail-with-data.tsxsrc/ui/src/features/datasets/detail/components/file-browser-breadcrumb.tsxsrc/ui/src/features/datasets/detail/components/file-browser-control-strip.tsxsrc/ui/src/features/datasets/detail/components/file-browser-table.tsxsrc/ui/src/features/datasets/detail/components/file-preview-panel.tsxsrc/ui/src/features/datasets/detail/components/version-picker.tsxsrc/ui/src/features/datasets/detail/hooks/use-file-browser-state.tssrc/ui/src/features/datasets/layout/datasets-panel-context.tsxsrc/ui/src/features/datasets/layout/datasets-panel-layout.tsxsrc/ui/src/features/datasets/layout/datasets-panel-store.tssrc/ui/src/features/datasets/list/components/datasets-page-content.tsxsrc/ui/src/features/datasets/list/components/datasets-page-skeleton.tsxsrc/ui/src/features/datasets/list/components/datasets-with-data.tsxsrc/ui/src/features/datasets/list/components/panel/collection-panel-members.tsxsrc/ui/src/features/datasets/list/components/panel/dataset-panel-details.tsxsrc/ui/src/features/datasets/list/components/panel/dataset-panel-versions.tsxsrc/ui/src/features/datasets/list/components/panel/dataset-panel.tsxsrc/ui/src/features/datasets/list/components/table/dataset-column-defs.tsxsrc/ui/src/features/datasets/list/components/table/datasets-data-table.tsxsrc/ui/src/features/datasets/list/components/toolbar/datasets-toolbar.tsxsrc/ui/src/features/datasets/list/hooks/use-datasets-async-fields.tssrc/ui/src/features/datasets/list/hooks/use-datasets-data.tssrc/ui/src/features/datasets/list/lib/dataset-columns.tssrc/ui/src/features/datasets/list/lib/dataset-search-fields.tssrc/ui/src/features/datasets/list/lib/date-filter-utils.tssrc/ui/src/features/datasets/list/stores/datasets-table-store.tssrc/ui/src/features/pools/hooks/use-pools-data.tssrc/ui/src/lib/api/adapter/BACKEND_TODOS.mdsrc/ui/src/lib/api/adapter/dataset-search.test.tssrc/ui/src/lib/api/adapter/dataset-search.tssrc/ui/src/lib/api/adapter/datasets-hooks.tssrc/ui/src/lib/api/adapter/datasets-shim.tssrc/ui/src/lib/api/adapter/datasets.test.tssrc/ui/src/lib/api/adapter/datasets.tssrc/ui/src/lib/api/adapter/types.tssrc/ui/src/lib/api/server/dataset-actions.production.tssrc/ui/src/lib/api/server/datasets.tssrc/ui/src/lib/date-range-utils.tssrc/ui/src/lib/e2e/dataset-manifest-fixtures.tssrc/ui/src/lib/navigation/config.test.tssrc/ui/src/lib/navigation/config.tssrc/ui/src/mocks/README.mdsrc/ui/src/mocks/factories.tssrc/ui/src/mocks/generators/dataset-generator.tssrc/ui/src/mocks/global-config.tssrc/ui/src/mocks/handlers.tssrc/ui/src/mocks/mock-provider.tsx
💤 Files with no reviewable changes (60)
- src/ui/src/features/datasets/layout/datasets-panel-store.ts
- src/ui/src/app/(dashboard)/datasets/[bucket]/[name]/page.tsx
- src/ui/src/features/datasets/detail/components/file-preview-panel.tsx
- src/ui/src/features/datasets/list/components/datasets-page-skeleton.tsx
- src/ui/src/lib/api/server/datasets.ts
- src/ui/src/app/(dashboard)/datasets/[bucket]/page.tsx
- src/ui/src/app/(dashboard)/datasets/layout.tsx
- src/ui/src/features/datasets/detail/components/dataset-detail-content.tsx
- src/ui/e2e/journeys/dataset-filters.spec.ts
- src/ui/src/features/datasets/list/components/panel/collection-panel-members.tsx
- src/ui/src/app/(dashboard)/datasets/error.tsx
- src/ui/src/app/api/e2e/dataset-manifest/route.ts
- src/ui/src/features/datasets/list/stores/datasets-table-store.ts
- src/ui/src/features/datasets/detail/components/dataset-detail-skeleton.tsx
- src/ui/src/app/proxy/dataset/file/route.impl.ts
- src/ui/src/features/datasets/list/hooks/use-datasets-data.ts
- src/ui/src/features/datasets/list/components/table/dataset-column-defs.tsx
- src/ui/src/features/datasets/list/components/datasets-page-content.tsx
- src/ui/src/features/datasets/detail/components/dataset-detail-with-data.tsx
- src/ui/e2e/journeys/dataset-panel.spec.ts
- src/ui/e2e/journeys/dataset-version-picker.spec.ts
- src/ui/e2e/journeys/dataset-file-browser.spec.ts
- src/ui/src/lib/api/server/dataset-actions.production.ts
- src/ui/src/features/datasets/layout/datasets-panel-layout.tsx
- src/ui/src/features/datasets/detail/components/file-browser-breadcrumb.tsx
- src/ui/src/features/datasets/layout/datasets-panel-context.tsx
- src/ui/src/app/proxy/dataset/file/route.ts
- src/ui/src/features/datasets/list/lib/date-filter-utils.ts
- src/ui/src/features/datasets/detail/hooks/use-file-browser-state.ts
- src/ui/src/features/datasets/list/components/datasets-with-data.tsx
- src/ui/e2e/journeys/dataset-detail.spec.ts
- src/ui/src/features/datasets/list/components/table/datasets-data-table.tsx
- src/ui/src/features/datasets/list/components/panel/dataset-panel-details.tsx
- src/ui/src/features/datasets/list/lib/dataset-search-fields.ts
- src/ui/src/features/datasets/list/components/toolbar/datasets-toolbar.tsx
- src/ui/src/features/datasets/list/components/panel/dataset-panel-versions.tsx
- src/ui/src/app/proxy/dataset/file/route.impl.production.ts
- src/ui/src/app/(dashboard)/datasets/[bucket]/[name]/error.tsx
- src/ui/src/lib/api/adapter/dataset-search.ts
- src/ui/src/lib/e2e/dataset-manifest-fixtures.ts
- src/ui/e2e/journeys/datasets.spec.ts
- src/ui/src/lib/api/adapter/datasets.test.ts
- src/ui/src/mocks/global-config.ts
- src/ui/src/features/datasets/list/lib/dataset-columns.ts
- src/ui/src/app/(dashboard)/datasets/page.tsx
- src/ui/src/features/datasets/list/components/panel/dataset-panel.tsx
- src/ui/src/mocks/generators/dataset-generator.ts
- src/ui/src/features/datasets/detail/components/file-browser-table.tsx
- src/ui/src/features/datasets/detail/components/file-browser-control-strip.tsx
- src/ui/src/lib/api/adapter/datasets-shim.ts
- src/ui/src/features/datasets/list/hooks/use-datasets-async-fields.ts
- src/ui/src/mocks/mock-provider.tsx
- src/ui/src/lib/api/adapter/datasets-hooks.ts
- src/ui/src/features/datasets/detail/components/version-picker.tsx
- src/ui/src/lib/api/adapter/dataset-search.test.ts
- src/ui/src/mocks/README.md
- src/ui/src/lib/api/adapter/datasets.ts
- src/ui/next.config.ts
- src/ui/e2e/journeys/empty-states.spec.ts
- src/ui/src/lib/api/adapter/BACKEND_TODOS.md
| * Resources /resources · Occupancy /occupancy | ||
| * |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Verify AGENTS.md changed in this branch and check dataset references in codebase-structure docs.
BASE="$(git merge-base HEAD origin/main 2>/dev/null || true)"
if [ -n "$BASE" ]; then
git diff --name-only "$BASE"..HEAD | rg -n '^AGENTS\.md$'
else
git show --name-only --pretty='' HEAD | rg -n '^AGENTS\.md$'
fi
rg -n 'Codebase Structure|dataset|datasets' AGENTS.mdRepository: NVIDIA/OSMO
Length of output: 1209
Update AGENTS.md “Codebase Structure” to reflect /datasets removal.
AGENTS.md still lists “datasets” under the “Key routes” in the “Codebase Structure” section, so the /datasets UI surface removal isn’t reflected in the same change.
🤖 Prompt for 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.
In `@src/ui/e2e/journeys/navigation.spec.ts` around lines 29 - 30, Update
AGENTS.md’s "Codebase Structure" -> "Key routes" section to remove or modify the
entry that lists "/datasets" so it no longer references the removed UI surface;
search for the "Codebase Structure" heading and the "Key routes" subsection in
AGENTS.md, remove the "/datasets" bullet (or replace it with the correct current
route) and ensure the list and any explanatory text reflect the current routes
such as "/resources" and "/occupancy".
Source: Coding guidelines
Issue #911
Summary:
Validation:
Checklist:
Summary by CodeRabbit
Removals
Bug Fixes
Tests