Skip to content

Add Refresh data button to KG data-sources overview #747

Description

@aredenba-rh

Goal

Add a Refresh data bulk action on the KG data-sources overview page (/knowledge-graphs/[kgId]/data-sources) so users can manually reload the table (sources, sync runs, diff summaries) without triggering commit-refs refresh or ingestion prep.

The button should sit alongside the existing Check for new commits and Prepare data sources actions with a clean, consistent layout.

Acceptance criteria

  • A Refresh data button appears in the bulk actions area of the "Data sources overview" card on src/dev-ui/app/pages/knowledge-graphs/[kgId]/data-sources/index.vue, grouped with the two existing bulk buttons.
  • Clicking Refresh data re-fetches data sources, sync runs, and diff summaries via the existing loadDataSources({ silent: true }) path (API reload only — no commit-refs/refresh, no sync trigger).
  • While refreshing, the button shows a loading/disabled state (reuse existing refreshing state and spinner patterns used for silent reloads).
  • On success, the table updates in place; on failure, show an error toast (match existing toast patterns on this page).
  • Button layout remains usable on narrow viewports (flex-wrap / responsive — match existing toolbar patterns).
  • Update src/dev-ui/app/tests/kg-data-sources-phase1.test.ts to assert the new button label and handler wiring.

Out of scope

  • Changes to the global /data-sources catalog page
  • Backend API changes
  • Changing behavior of "Check for new commits" or "Prepare data sources"
  • New polling intervals or auto-refresh logic

Integration branch

dev-lead/refresh-data-button

Constraints

  • Stack / patterns: Vue 3 + Nuxt dev-ui; reuse existing Button, RefreshCw/Loader2 icons, loadDataSources, and refreshing ref patterns already on this page.
  • Dependencies: None.
  • Timeline: Small, single PR.

Context

  • Target file: src/dev-ui/app/pages/knowledge-graphs/[kgId]/data-sources/index.vue
  • Existing bulk actions (lines ~654–672): "Check for new commits" (checkAllCommitRefs) and "Prepare data sources" (prepareAllDataSources).
  • Silent reload already exists for polling: loadDataSources({ silent: true }) sets refreshing and shows "Updating…" in the card title.

Dev-lead notes

User request (paraphrased): add Refresh data button next to the other two on the data-sources UI; find a nice way to arrange the three actions.

Assumptions (user skipped follow-up questions):

  • Page is KG-scoped /knowledge-graphs/[kgId]/data-sources, not global /data-sources.
  • "Refresh data" = reload table from API only.
  • Worker may choose final button order/layout as long as it matches existing UI conventions.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions