Standard Compliance

This section tracks ros2_medkit’s compliance with diagnostic industry standards.

Note

These are not project requirements in the traditional V-Model sense.

The items listed here represent standard API endpoints that ros2_medkit implements for interoperability with diagnostic tools and systems. The project may also include extensions beyond the standard (e.g., exposing ROS 2 Topics as diagnostic entities) which are documented separately.

Traceability & Reports

All Requirements

The following table shows all requirements across all categories:

ID

Title

Status

Tags

REQ_INTEROP_001

GET /version-info

open

Discovery

REQ_INTEROP_002

GET /{any}/docs

open

Discovery

REQ_INTEROP_003

GET /{entity-collection}

open

Discovery

REQ_INTEROP_004

GET /areas/{id}/subareas

open

Discovery

REQ_INTEROP_005

GET /components/{id}/subcomponents

open

Discovery

REQ_INTEROP_006

GET /areas/{id}/contains

open

Discovery

REQ_INTEROP_007

GET /components/{id}/hosts

open

Discovery

REQ_INTEROP_008

GET /components/{id}/depends-on

open

Discovery

REQ_INTEROP_009

GET /apps/{id}/depends-on

open

Discovery

REQ_INTEROP_010

GET /

open

Discovery

REQ_INTEROP_011

tags=... (query)

open

Discovery

REQ_INTEROP_012

GET /{entity}/faults

open

Faults

REQ_INTEROP_013

GET /{entity}/faults/{code}

open

Faults

REQ_INTEROP_014

DELETE /{entity}/faults

open

Faults

REQ_INTEROP_015

DELETE /{entity}/faults/{code}

open

Faults

REQ_INTEROP_016

GET /{entity}/data-categories

open

Data

REQ_INTEROP_017

GET /{entity}/data-groups

open

Data

REQ_INTEROP_018

GET /{entity}/data

open

Data

REQ_INTEROP_019

GET /{entity}/data/{data-id}

open

Data

REQ_INTEROP_020

PUT /{entity}/data/{data-id}

open

Data

REQ_INTEROP_021

GET /{entity}/data-lists

open

DataSets

REQ_INTEROP_022

POST /{entity}/data-lists

open

DataSets

REQ_INTEROP_023

GET /{entity}/data-lists/{id}

open

DataSets

REQ_INTEROP_024

DELETE /{entity}/data-lists/{id}

open

DataSets

REQ_INTEROP_025

GET /{entity}/cyclic-subscriptions

open

Subscriptions

REQ_INTEROP_026

GET /{entity}/cyclic-subscriptions/{id}

open

Subscriptions

REQ_INTEROP_027

PUT /{entity}/cyclic-subscriptions/{id}

open

Subscriptions

REQ_INTEROP_028

DELETE /{entity}/cyclic-subscriptions/{id}

open

Subscriptions

REQ_INTEROP_029

POST /{entity}/triggers

open

Subscriptions

REQ_INTEROP_030

GET /{entity}/triggers

open

Subscriptions

REQ_INTEROP_031

PUT /{entity}/triggers/{id}

open

Subscriptions

REQ_INTEROP_032

DELETE /{entity}/triggers/{id}

open

Subscriptions

REQ_INTEROP_033

GET /{entity}/operations

open

Operations

REQ_INTEROP_034

GET /{entity}/operations/{op-id}

open

Operations

REQ_INTEROP_035

POST /{entity}/operations/{op-id}/executions

open

Operations

REQ_INTEROP_036

GET /{entity}/operations/{op-id}/executions

open

Operations

REQ_INTEROP_037

GET /{entity}/operations/{op-id}/executions/{exec-id}

open

Operations

REQ_INTEROP_038

PUT /{entity}/operations/{op-id}/executions/{exec-id}

open

Operations

REQ_INTEROP_039

DELETE /{entity}/operations/{op-id}/executions/{exec-id}

open

Operations

REQ_INTEROP_040

POST /{entity}/scripts

open

Scripts

REQ_INTEROP_041

GET /{entity}/scripts

open

Scripts

REQ_INTEROP_042

GET /{entity}/scripts/{id}

open

Scripts

REQ_INTEROP_043

DELETE /{entity}/scripts/{id}

open

Scripts

REQ_INTEROP_044

POST /{entity}/scripts/{id}/executions

open

Scripts

REQ_INTEROP_045

GET /{entity}/scripts/{id}/executions

open

Scripts

REQ_INTEROP_046

GET /{entity}/scripts/{id}/executions/{exec-id}

open

Scripts

REQ_INTEROP_047

PUT /{entity}/scripts/{id}/executions/{exec-id}

open

Scripts

REQ_INTEROP_048

GET /{entity}/configurations

open

Configuration

REQ_INTEROP_049

GET /{entity}/configurations/{id}

open

Configuration

REQ_INTEROP_050

PUT /{entity}/configurations/{id}

open

Configuration

REQ_INTEROP_051

DELETE /{entity}/configurations

open

Configuration

REQ_INTEROP_052

DELETE /{entity}/configurations/{id}

open

Configuration

REQ_INTEROP_053

GET /{entity}/modes

open

Modes

REQ_INTEROP_054

GET /{entity}/modes/{mode-id}

open

Modes

REQ_INTEROP_055

PUT /{entity}/modes/{mode-id}

open

Modes

REQ_INTEROP_056

GET /{entity}/clear-data

open

ClearData

REQ_INTEROP_057

PUT /{entity}/clear-data/cached-data

open

ClearData

REQ_INTEROP_058

PUT /{entity}/clear-data/learned-data

open

ClearData

REQ_INTEROP_059

PUT /{entity}/clear-data/client-defined-resources

open

ClearData

REQ_INTEROP_060

GET /{entity}/clear-data/status

open

ClearData

REQ_INTEROP_061

GET /{entity}/logs

open

Logs

REQ_INTEROP_062

GET /{entity}/logs/entries

open

Logs

REQ_INTEROP_063

GET /{entity}/logs/config

open

Logs

REQ_INTEROP_064

PUT /{entity}/logs/config

open

Logs

REQ_INTEROP_065

DELETE /{entity}/logs/config

open

Logs

REQ_INTEROP_066

GET /{entity}/communication-logs

open

CommLogs

REQ_INTEROP_067

POST /{entity}/communication-logs

open

CommLogs

REQ_INTEROP_068

GET /{entity}/communication-logs/{id}

open

CommLogs

REQ_INTEROP_069

PUT /{entity}/communication-logs/{id}

open

CommLogs

REQ_INTEROP_070

DELETE /{entity}/communication-logs/{id}

open

CommLogs

REQ_INTEROP_071

GET /{entity}/bulk-data

open

BulkData

REQ_INTEROP_072

GET /{entity}/bulk-data/{category}

open

BulkData

REQ_INTEROP_073

GET /{entity}/bulk-data/{category}/{bulk-data-id}

open

BulkData

REQ_INTEROP_074

POST /{entity}/bulk-data/{category}

open

BulkData

REQ_INTEROP_075

DELETE /{entity}/bulk-data/{category}/{bulk-data-id}

open

BulkData

REQ_INTEROP_076

GET /{entity}/status

open

Lifecycle

REQ_INTEROP_077

PUT /{entity}/status/start

open

Lifecycle

REQ_INTEROP_078

PUT /{entity}/status/restart

open

Lifecycle

REQ_INTEROP_079

PUT /{entity}/status/force-restart

open

Lifecycle

REQ_INTEROP_080

PUT /{entity}/status/shutdown

open

Lifecycle

REQ_INTEROP_081

PUT /{entity}/status/force-shutdown

open

Lifecycle

REQ_INTEROP_082

GET /updates

open

Updates

REQ_INTEROP_083

POST /updates

open

Updates

REQ_INTEROP_084

DELETE /updates/{id}

open

Updates

REQ_INTEROP_085

GET /updates/{id}

open

Updates

REQ_INTEROP_086

POST /authorize

open

Auth

REQ_INTEROP_087

POST /token

open

Auth

TEST_test_01_root_endpoint

test_01_root_endpoint

verified

TEST_test_01b_version_info_endpoint

test_01b_version_info_endpoint

verified

TEST_test_02_list_areas

test_02_list_areas

verified

TEST_test_03_list_components

test_03_list_components

verified

TEST_test_04_automotive_areas_discovery

test_04_automotive_areas_discovery

verified

TEST_test_05_area_components_success

test_05_area_components_success

verified

TEST_test_06_area_components_nonexistent_error

test_06_area_components_nonexistent_error

verified

TEST_test_07_component_data_powertrain_engine

test_07_component_data_powertrain_engine

verified

TEST_test_08_component_data_chassis_brakes

test_08_component_data_chassis_brakes

verified

TEST_test_09_component_data_body_door

test_09_component_data_body_door

verified

TEST_test_10_component_data_structure

test_10_component_data_structure

verified

TEST_test_11_component_nonexistent_error

test_11_component_nonexistent_error

verified

TEST_test_12_component_no_topics

test_12_component_no_topics

verified

TEST_test_13_invalid_component_id_special_chars

test_13_invalid_component_id_special_chars

verified

TEST_test_14_invalid_area_id_special_chars

test_14_invalid_area_id_special_chars

verified

TEST_test_15_valid_ids_with_underscores

test_15_valid_ids_with_underscores

verified

TEST_test_16_invalid_ids_with_hyphens

test_16_invalid_ids_with_hyphens

verified

TEST_test_17_component_topic_temperature

test_17_component_topic_temperature

verified

TEST_test_18_component_topic_rpm

test_18_component_topic_rpm

verified

TEST_test_19_component_topic_pressure

test_19_component_topic_pressure

verified

TEST_test_20_component_topic_data_structure

test_20_component_topic_data_structure

verified

TEST_test_21_component_nonexistent_topic_error

test_21_component_nonexistent_topic_error

verified

TEST_test_22_component_topic_nonexistent_component_error

test_22_component_topic_nonexistent_component_error

verified

TEST_test_23_component_topic_with_slashes

test_23_component_topic_with_slashes

verified

TEST_test_24_component_topic_valid_names

test_24_component_topic_valid_names

verified

TEST_test_25_publish_brake_command

test_25_publish_brake_command

verified

TEST_test_26_publish_validation_missing_type

test_26_publish_validation_missing_type

verified

TEST_test_27_publish_validation_missing_data

test_27_publish_validation_missing_data

verified

TEST_test_28_publish_validation_invalid_type_format

test_28_publish_validation_invalid_type_format

verified

TEST_test_29_publish_nonexistent_component

test_29_publish_nonexistent_component

verified

TEST_test_30_publish_invalid_json_body

test_30_publish_invalid_json_body

verified

TEST_test_31_operation_call_calibrate_service

test_31_operation_call_calibrate_service

verified

TEST_test_32_operation_call_nonexistent_operation

test_32_operation_call_nonexistent_operation

verified

TEST_test_33_operation_call_nonexistent_component

test_33_operation_call_nonexistent_component

verified

TEST_test_34_operation_call_invalid_component_id

test_34_operation_call_invalid_component_id

verified

TEST_test_35_operation_call_invalid_operation_name

test_35_operation_call_invalid_operation_name

verified

TEST_test_36_operation_call_with_invalid_json

test_36_operation_call_with_invalid_json

verified

TEST_test_37_operations_listed_in_component_discovery

test_37_operations_listed_in_component_discovery

verified

TEST_test_38_root_endpoint_includes_operations

test_38_root_endpoint_includes_operations

verified

TEST_test_39_action_send_goal_and_get_id

test_39_action_send_goal_and_get_id

verified

TEST_test_40_action_status_endpoint

test_40_action_status_endpoint

verified

TEST_test_41_action_status_after_completion

test_41_action_status_after_completion

verified

TEST_test_42_action_cancel_endpoint

test_42_action_cancel_endpoint

verified

TEST_test_43_action_listed_in_component_discovery

test_43_action_listed_in_component_discovery

verified

TEST_test_44_action_status_without_goal_id_returns_latest

test_44_action_status_without_goal_id_returns_latest

verified

TEST_test_45_list_configurations

test_45_list_configurations

verified

TEST_test_46_get_configuration

test_46_get_configuration

verified

TEST_test_47_set_configuration

test_47_set_configuration

verified

TEST_test_48_delete_configuration_resets_to_default

test_48_delete_configuration_resets_to_default

verified

TEST_test_49_configurations_nonexistent_component

test_49_configurations_nonexistent_component

verified

TEST_test_50_configuration_nonexistent_parameter

test_50_configuration_nonexistent_parameter

verified

TEST_test_51_set_configuration_missing_value

test_51_set_configuration_missing_value

verified

TEST_test_52_root_endpoint_includes_configurations

test_52_root_endpoint_includes_configurations

verified

TEST_test_53_service_operation_has_type_info_schema

test_53_service_operation_has_type_info_schema

verified

TEST_test_54_action_operation_has_type_info_schema

test_54_action_operation_has_type_info_schema

verified

TEST_test_55_root_endpoint_includes_faults

test_55_root_endpoint_includes_faults

verified

TEST_test_56_list_faults_response_structure

test_56_list_faults_response_structure

verified

TEST_test_57_faults_nonexistent_component

test_57_faults_nonexistent_component

verified

TEST_test_58_get_nonexistent_fault

test_58_get_nonexistent_fault

verified

TEST_test_list_areas_endpoint

test_list_areas_endpoint

verified

TEST_test_list_components_endpoint

test_list_components_endpoint

verified

TEST_test_root_endpoint

test_root_endpoint

verified

TEST_test_version_info_endpoint

test_version_info_endpoint

verified