Skip to content

Conversation

@bburda
Copy link
Contributor

@bburda bburda commented Dec 7, 2025

Pull Request

Summary

  • Add ConfigurationPanel for viewing/editing ROS 2 parameters
  • Add OperationsPanel for invoking services and actions
  • Add ActionStatusPanel with auto-refresh for monitoring action goals
  • Restructure entity tree with virtual folders (data/operations/configurations)
  • Add lazy loading for virtual folder contents
  • Add empty state indicator for folders without content
  • Add detail views for service, action, and parameter entities
  • Extend sovd-api.ts with configurations and operations endpoints
  • Add new types for Parameter, Operation, ActionGoalStatus

Issue


Type

  • Bug fix
  • New feature
  • Breaking change
  • Documentation only

Testing

Manual tests with demo


Checklist

  • Breaking changes are clearly described (and announced in docs / changelog if needed)
  • Linting passes (npm run lint)
  • Build succeeds (npm run build)
  • Docs were updated if behavior or public API changed

@bburda bburda self-assigned this Dec 7, 2025
@bburda bburda added the enhancement New feature or request label Dec 7, 2025
@bburda bburda force-pushed the feat/add-operations-and-configuration branch from 26ac281 to 0c8fdd1 Compare December 7, 2025 20:55
…ucture

- Add ConfigurationPanel for viewing/editing ROS 2 parameters
- Add OperationsPanel for invoking services and actions
- Add ActionStatusPanel with auto-refresh for monitoring action goals
- Restructure entity tree with virtual folders (data/operations/configurations)
- Add lazy loading for virtual folder contents
- Add empty state indicator for folders without content
- Add detail views for service, action, and parameter entities
- Extend sovd-api.ts with configurations and operations endpoints
- Add new types for Parameter, Operation, ActionGoalStatus
@bburda bburda force-pushed the feat/add-operations-and-configuration branch from 0c8fdd1 to b6b6236 Compare December 8, 2025 20:03
@bburda bburda marked this pull request as ready for review December 11, 2025 21:26
@bburda bburda requested a review from Copilot December 11, 2025 21:26
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds comprehensive configuration and operations management capabilities to the SOVD web UI by introducing three new panels (ConfigurationPanel, OperationsPanel, and ActionStatusPanel) and restructuring the entity tree with virtual folders for better organization of data, operations, and configurations.

Key Changes:

  • Introduces virtual folder structure (data/, operations/, configurations/) for component organization
  • Adds ROS 2 parameter viewing and editing with inline edit capabilities
  • Implements service invocation and action goal management with status monitoring
  • Extends API client with new endpoints for configurations and operations

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 18 comments.

Show a summary per file
File Description
src/lib/types.ts Adds comprehensive type definitions for Parameters, Operations, and ActionGoalStatus with proper TypeScript interfaces
src/lib/store.ts Extends state management with configurations/operations state, virtual folder handling, and lazy loading logic
src/lib/sovd-api.ts Implements API methods for configurations (ROS 2 parameters) and operations (services/actions) endpoints
src/components/OperationsPanel.tsx New panel for invoking services and actions with form/JSON input modes and history tracking
src/components/OperationResponse.tsx Renders operation responses with proper formatting for different data types
src/components/ConfigurationPanel.tsx New panel for viewing and editing ROS 2 parameters with inline editing and type-specific inputs
src/components/ActionStatusPanel.tsx Monitors action goal status with auto-refresh capability and progress indicators
src/components/EntityTreeNode.tsx Updates tree node rendering to support virtual folders, operations, and parameters with appropriate icons
src/components/EntityDetailPanel.tsx Refactors detail view with tabbed interface for components and specialized views for operations/parameters
src/components/DataFolderPanel.tsx New panel for displaying topics within the data virtual folder
src/index.css Adds custom animation for indeterminate progress bars and removes trailing whitespace

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

- Add JSON validation before operation invoke with error display
- Fix UUID regex to match standard format with hyphens
- Add encodeURIComponent for goalId in API URL parameters
- Return empty array instead of raw string on array parse error
- Add accessibility attributes to editable parameter div (role, tabIndex, keyboard)
- Add proper id/htmlFor and focus styling to auto-refresh checkbox
- Replace native button with Button component for History toggle
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 11 out of 11 changed files in this pull request and generated 8 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link

@mfaferek93 mfaferek93 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@bburda bburda merged commit 17857f6 into main Dec 12, 2025
8 checks passed
@bburda bburda deleted the feat/add-operations-and-configuration branch December 12, 2025 07:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add operations and configuration support to UI

3 participants