Skip to content

Implementation completion datarouter - #379

Open
AdamBienkunski wants to merge 5 commits into
eclipse-score:mainfrom
qorix-group:a.b/implementation_completion_datarouter
Open

AdamBienkunski wants to merge 5 commits into
eclipse-score:mainfrom
qorix-group:a.b/implementation_completion_datarouter

Conversation

@AdamBienkunski

@AdamBienkunski AdamBienkunski commented Oct 26, 2026 •

Copy link
Copy Markdown

Notes for Reviewer

Pre-Review Checklist for the PR Author

  • PR title is short, expressive and meaningful
  • Commits are properly organized
  • Relevant issues are linked in the References section
  • Tests are conducted
  • Unit tests are added

Checklist for the PR Reviewer

  • Commits are properly organized and messages are according to the guideline
  • Unit tests have been written for new behavior
  • Public API is documented
  • PR title describes the changes

Post-review Checklist for the PR Author

  • All open points are addressed and tracked via issues

References

Closes ##329

Merge PR #363 first

@github-actions

github-actions Bot commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

License Check Results

🚀 The license check job ran with the Bazel command:

bazel run --lockfile_mode=error //:license-check

Status: ⚠️ Needs Review

Click to expand output
[License Check Output]
Extracting Bazel installation...
Starting local Bazel server (8.6.0) and connecting to it...
INFO: Invocation ID: 2a697e1e-3570-48c0-ac91-2ae712112127
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
WARNING: For repository 'rules_cc', the root module requires module version rules_cc@0.2.17, but got rules_cc@0.2.25 in the resolved dependency graph. Please update the version in your MODULE.bazel or set --check_direct_dependencies=off
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
Loading: 
Loading: 4 packages loaded
DEBUG: /home/runner/.bazel/external/score_docs_as_code+/docs.bzl:716:14: INFO: ⚠️ DEPRECATED: Passing a Needs inventory through docs(data = [...]) is deprecated!!! Move it to external_needs = [...] instead.
WARNING: Target pattern parsing failed.
ERROR: Skipping '//:license-check': no such target '//:license-check': target 'license-check' not declared in package '' defined by /home/runner/work/logging/logging/BUILD
ERROR: no such target '//:license-check': target 'license-check' not declared in package '' defined by /home/runner/work/logging/logging/BUILD
INFO: Elapsed time: 15.440s
INFO: 0 processes.
ERROR: Build did NOT complete successfully
ERROR: Build failed. Not running target

@@ -0,0 +1,47 @@
{

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

As discussed lets exclude this from this PR.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Done

@@ -0,0 +1,666 @@
..

@rmaddikery rmaddikery Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

please exclude this (manual maintained list) since we intend to validate this through process tooling

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Done

- Replace the diagrams loaded by URL from plantuml.com and
  raw.githubusercontent.com by uml directives
- Link the diagram files in the design folder through symbolic links in
  docs/components/datarouter/detailed_design/_assets
- Add the unit, IPC and file transfer diagrams that no document used
- Add a section about the file transfer

Signed-off-by: Adam Bienkunski <Adam.Bienkunski.Ext@qorix.ai>
- Add description, design decisions, constraints and rationale. Decisions
  and constraints refer to the diagrams that show them.
- Add the static and dynamic views, the units table and the interfaces
  table.
- Refer to the checklist for the external dependencies and their
  findings.

Signed-off-by: Adam Bienkunski <Adam.Bienkunski.Ext@qorix.ai>
- Add the architectural_design target for the datarouter design
  diagrams, validated with the rules_score validator
- Add the unit diagram that the validator requires (units and
  interfaces of the sequence diagrams)
- Rename participant aliases that clashed between sequence diagrams
- Replace syntax that the diagram parser does not support (multi-line
  members and notes, default and mock method declarations)

Signed-off-by: Adam Bienkunski <Adam.Bienkunski.Ext@qorix.ai>
Link existing tests with RecordProperty("PartiallyVerifies", ...) to
the requirements they verify. No test logic changed.

- comp_req__data_router__dlt_server: UDP send test
- comp_req__data_router__dlt_multiple_channels,
  comp_req__data_router__dlt_message_filtering: channel configuration
  file tests
- comp_req__data_router__dlt_bw_quota_config: quota configuration test
- comp_req__data_router__dlt_quota_bw_reduction: quota enforcement
  attribute tests (the dropping of messages is not tested)

Signed-off-by: Adam Bienkunski <Adam.Bienkunski.Ext@qorix.ai>
Fill in the implementation inspection checklist of the datarouter.

- Add the passed value and the remarks for each checklist item.
- Record the findings with their tickets (eclipse-score#318 coverage, eclipse-score#319
  requirement traceability, eclipse-score#336 CodeQL, eclipse-score#327 mw::log context) and
  mark the findings that still need a ticket.
- Refer to the generated verification report and the dependency page
  instead of repeating analysis results.

Signed-off-by: Adam Bienkunski <Adam.Bienkunski.Ext@qorix.ai>

### File transfer

If the build flag `file_transfer` is set (default true), `FileTransferStreamHandler` is registered in the `LogParser` as a `TypeHandler` for the file transfer messages that `dlt_filetransfer_trigger_lib` (`IFileTransfer`, `FileTransfer`) writes. The handler queues a `FileTransferEntry` and a thread of the handler reads the file and sends it as DLT file transfer messages (file header, file data in packages, file end, error) through `DltLogServer::SendFtVerbose`. Without the flag `StubFileTransferStreamHandler` ignores the messages.

@rmaddikery rmaddikery Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This text block is not necessary. Linked uml is fine

This branch is waiting to be deployed

1 waiting deployment
workflow-approval — 7c117afd Waiting Oct 27, 2026 by AdamBienkunski via approval #966
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Backlog

Development

Successfully merging this pull request may close these issues.

2 participants