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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions