Skip to content

Cut releasemain#66

Merged
swethasukumarr merged 45 commits into
mainfrom
cutReleasemain
Jun 3, 2026
Merged

Cut releasemain#66
swethasukumarr merged 45 commits into
mainfrom
cutReleasemain

Conversation

@swethasukumarr
Copy link
Copy Markdown
Contributor

No description provided.

swethasukumarr and others added 25 commits May 7, 2026 16:04
RDKEMW-17483: Change Discovery.watched and Metrics methods return type
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
feat: actions.intent() and related eventing
Copilot AI review requested due to automatic review settings June 1, 2026 20:50
@github-advanced-security
Copy link
Copy Markdown

You are seeing this message because GitHub Code Scanning has recently been set up for this repository, or this pull request contains the workflow file for the Code Scanning tool.

What Enabling Code Scanning Means:

  • The 'Security' tab will display more code scanning analysis results (e.g., for the default branch).
  • Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results.
  • You will be able to see the analysis results for the pull request's branch on this overview once the scans have completed and the checks have passed.

For more information about GitHub Code Scanning, check out the documentation.

Copy link
Copy Markdown
Contributor

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 PR updates the client and OpenRPC definitions to reflect “fire-and-forget” semantics for Metrics and Discovery (changing return types from Result<bool> to Result<void>), adds the new Actions API, and improves local developer tooling for running tests and linting.

Changes:

  • Breaking: Metrics.* and Discovery.watched now return Result<void> and use helper_.invoke(...) instead of returning boolean success values.
  • Adds Actions API support (Actions.intent, Actions.onIntent) across implementation, accessor wiring, and tests.
  • Adds/updates local developer scripts (unit/component/all test runners, lint runner, SSH tunnel helper) and updates docs accordingly.

Reviewed changes

Copilot reviewed 37 out of 37 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
test/utils.h Updates event verification helper signatures.
test/utils.cpp Updates event verification helpers and related behavior.
test/unit/mock_helper.h Adds mockInvoke() helper for void-returning invoke calls.
test/unit/metricsTest.cpp Updates Metrics unit tests to use invoke-based mocking and void results.
test/unit/discoveryTest.cpp Updates Discovery unit tests for void return and invoke expectations.
test/unit/actionsTest.cpp Adds unit tests for Actions API (intent + subscription).
test/unit/actionsGeneratedTest.cpp Adds generated-style unit tests for Actions forwarding/error propagation.
test/ComponentTestsMain.cpp Makes component test endpoint configurable via FIREBOLT_ENDPOINT.
test/component/metricsTest.cpp Updates component tests for Metrics void-return behavior.
test/component/discoveryTest.cpp Updates component tests for Discovery void-return behavior.
test/component/actionsGeneratedTest.cpp Adds component tests for Actions intent + subscription event flow.
test/CMakeLists.txt Updates UT_OPEN_RPC_FILE definition to an explicit repo path.
test/api_test_app/apis/metricsDemo.cpp Updates Metrics demo output to reflect void return types.
test/api_test_app/apis/discoveryDemo.cpp Updates Discovery demo output to reflect void return types.
src/metrics_impl.h Updates MetricsImpl signatures to return Result<void>.
src/metrics_impl.cpp Switches Metrics calls to helper_.invoke(...) and void results.
src/json_types/actions.h Adds generated JSON types header stub for Actions.
src/firebolt.cpp Wires ActionsImpl into the accessor and unsubscribeAll flow.
src/discovery_impl.h Updates watched() signature to return Result<void>.
src/discovery_impl.cpp Switches watched() implementation to helper_.invoke(...).
src/actions_impl.h Adds generated ActionsImpl declaration.
src/actions_impl.cpp Adds generated ActionsImpl implementation (intent + subscribe/unsubscribe).
setup-device-tunnel.sh Adds helper script to create an SSH tunnel for device websocket traffic.
run-unit-tests.sh Adds local runner script for unit tests (build + execute).
run-component-tests.sh Adds local runner script for component tests (build + execute).
run-all-test.sh Adds combined runner delegating to unit + component scripts.
README.md Documents new test runners and lint script usage.
lint.sh Adds local clang-format/clang-tidy/cppcheck runner script.
include/firebolt/metrics.h Updates public Metrics interface to return Result<void> + doc updates.
include/firebolt/firebolt.h Exposes ActionsInterface() and includes Actions header.
include/firebolt/discovery.h Updates Discovery interface watched() to return Result<void> + doc updates.
include/firebolt/actions.h Adds generated public Actions interface header.
docs/openrpc/the-spec/firebolt-open-rpc.json Updates OpenRPC result schemas for affected methods to null results.
docs/openrpc/openrpc/metrics.json Updates Metrics OpenRPC file to null results and renames result field.
docs/openrpc/openrpc/discovery.json Updates Discovery OpenRPC file to null results and renames result field.
CHANGELOG.md Adds 0.6.0 entry describing new APIs and breaking return-type changes.
build.sh Makes SYSROOT optional (with guardrails around --install).
Comments suppressed due to low confidence (1)

test/utils.cpp:142

  • The comment says the timeout is 5 seconds, but the code waits for EventWaitTime (2 seconds). Also EventWaitTime is already a std::chrono::seconds, so wrapping it in std::chrono::seconds(...) is redundant. This can confuse future debugging of flaky event tests.

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

Comment thread src/metrics_impl.cpp
Comment thread src/metrics_impl.cpp
Comment thread src/metrics_impl.cpp
Comment thread test/unit/actionsGeneratedTest.cpp Outdated
Comment thread test/unit/actionsGeneratedTest.cpp Outdated
Copilot AI review requested due to automatic review settings June 3, 2026 12:00
Copy link
Copy Markdown
Contributor

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 40 out of 40 changed files in this pull request and generated 1 comment.

Comments suppressed due to low confidence (1)

test/utils.cpp:141

  • The comment and timeout duration are inconsistent: EventWaitTime is 2 seconds, but the comment says 5 seconds, and std::chrono::seconds(EventWaitTime) is redundant. Use EventWaitTime directly and update the comment to match the actual timeout.

Comment thread test/unit/mock_helper.h
Copilot AI review requested due to automatic review settings June 3, 2026 13:39
Copy link
Copy Markdown
Contributor

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 40 out of 40 changed files in this pull request and generated 3 comments.

Comment thread test/utils.h Outdated
Comment thread test/unit/mock_helper.h
Comment thread test/utils.cpp Outdated
@swethasukumarr swethasukumarr merged commit 1136d4c into main Jun 3, 2026
10 checks passed
@swethasukumarr swethasukumarr deleted the cutReleasemain branch June 3, 2026 15:37
@github-actions github-actions Bot locked and limited conversation to collaborators Jun 3, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants