Skip to content

AZB #101279 Quality pack targets - #150

Open
GabrielPinheiro7891 wants to merge 15 commits into
eclipse-score:mainfrom
etas-contrib:feature/AZB-101279-Quality-pack-targets
Open

AZB #101279 Quality pack targets#150
GabrielPinheiro7891 wants to merge 15 commits into
eclipse-score:mainfrom
etas-contrib:feature/AZB-101279-Quality-pack-targets

Conversation

@GabrielPinheiro7891

Copy link
Copy Markdown
Contributor

Provide Bazel targets: unit tests, component tests, code coverage.
Added documentation

@github-actions

github-actions Bot commented Aug 5, 2026

Copy link
Copy Markdown

License Check Results

🚀 The license check job ran with the Bazel command:

bazel run //: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: 1be6863a-48a1-42fc-8d07-e29d8696fed6
Computing main repo mapping: 
Computing main repo mapping: 
WARNING: For repository 'platforms', the root module requires module version platforms@1.0.0, but got platforms@1.1.0 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: 
Loading: 
Loading: 3 packages loaded
Loading: 3 packages loaded
    currently loading: 
Loading: 3 packages loaded
    currently loading: 
Loading: 3 packages loaded
    currently loading: 
Loading: 3 packages loaded
    currently loading: 
Analyzing: target //:license-check (4 packages loaded, 0 targets configured)
Analyzing: target //:license-check (4 packages loaded, 0 targets configured)

Analyzing: target //:license-check (87 packages loaded, 10 targets configured)

Analyzing: target //:license-check (151 packages loaded, 3143 targets configured)

Analyzing: target //:license-check (160 packages loaded, 7051 targets configured)

Analyzing: target //:license-check (166 packages loaded, 9384 targets configured)

Analyzing: target //:license-check (172 packages loaded, 9417 targets configured)

Analyzing: target //:license-check (172 packages loaded, 9417 targets configured)

Analyzing: target //:license-check (175 packages loaded, 11305 targets configured)

Analyzing: target //:license-check (176 packages loaded, 11425 targets configured)

Analyzing: target //:license-check (176 packages loaded, 11425 targets configured)

Analyzing: target //:license-check (176 packages loaded, 11425 targets configured)

INFO: Analyzed target //:license-check (177 packages loaded, 11555 targets configured).
[12 / 16] JavaToolchainCompileClasses external/rules_java+/toolchains/platformclasspath_classes; 0s disk-cache, processwrapper-sandbox
INFO: From Generating Dash formatted dependency file ...:
INFO: Successfully converted 2 packages from Cargo.lock to bazel-out/k8-fastbuild/bin/formatted.txt
[14 / 16] JavaToolchainCompileBootClasspath external/rules_java+/toolchains/platformclasspath.jar; 0s disk-cache, processwrapper-sandbox
INFO: Found 1 target...
Target //:license.check.license_check up-to-date:
  bazel-bin/license.check.license_check
  bazel-bin/license.check.license_check.jar
INFO: Elapsed time: 27.648s, Critical Path: 2.07s
INFO: 16 processes: 12 internal, 3 processwrapper-sandbox, 1 worker.
INFO: Build completed successfully, 16 total actions
INFO: Running command line: bazel-bin/license.check.license_check ./formatted.txt <args omitted>
usage: org.eclipse.dash.licenses.cli.Main [-batch <int>] [-cd <url>]
       [-confidence <int>] [-ef <url>] [-excludeSources <sources>] [-help] [-lic
       <url>] [-project <shortname>] [-repo <url>] [-review] [-summary <file>]
       [-timeout <seconds>] [-token <token>]

@github-actions

github-actions Bot commented Aug 5, 2026

Copy link
Copy Markdown

The created documentation from the pull request is available at: docu-html

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 doesn't match up with the score process module_template.

I've started the component requirements work for the other components following the guidelines, see #151 and #149. I think we should have this structure across all the components. The actual build of the docs themselves won't work until the update to docs-as-code 6.0 is merged in #148 (updating to use docs_bundles so that we can have docs alongside source).

Please update to match the template.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I pushed the commit Update to match module_template , to match the template. However, like you said, until docs-as-code 6.0 isn't merged this will not work as we get:

"broken_references": [
{
"testcase": "testcase__SystemClockTest__NowReturnsTimepointSuitableForDurationArithmetic_nckqh",
"missing_need": "comp_req__system_time__snapshot"
},
{
"testcase": "testcase__SteadyClockTest__NowReturnsTimepointSuitableForDurationArithmetic_dhwjw",
"missing_need": "comp_req__steady_time__snapshot"
},
{
"testcase": "testcase__HighResSteadyClockTest__NowReturnsTimepointSuitableForDurationArithmetic_ogazc",
"missing_need": "comp_req__high_res_steady_time__snapshot"
},
{
"testcase": "testcase__VehicleClockTest__NowReturnsSynchronizedStatusAndTimepoint_xggob",
"missing_need": "comp_req__vehicle_time__snapshot"
},
{
"testcase": "testcase__VehicleClockTest__InitForwardsToBackend_vsaqs",
"missing_need": "comp_req__vehicle_time__lifecycle"
}
]

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Done

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.

Feature requirements should be in eclipse-score/score repo, not the module repo itself - should these be component requirements?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Your right. Removed feature requirements as they belong to eclipse-score/score repo.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Created them as component requirements

:valid_from: v1.0
:satisfied_by: feat__time

Clock domains that depend on an external resource (currently

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.

We should avoid having implementation details e.g. method names etc like this in the requirements. Review the requirements you've added here against the requirements checklists

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Removed feature requirements as they belong to eclipse-score/score repo

Remove feature requirements as they belong to eclipse-score/score repo
Comment thread score/time/docs/requirements/requirements.rst Outdated
:satisfied_by: comp__time
.. comp_req:: Unified clock facade across time domains
:id: comp_req__time__unified_clock_facade
:reqtype: Interface

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.

Think this should be functional since it describes type safety enforcement (functional behaviour)

Comment on lines +47 to +60
.. comp_req:: Immutable snapshot with quality metadata
:id: comp_req__time__snapshot_with_status
:reqtype: Functional
:security: NO
:safety: QM
:derived_from: feat_req__time__vehicle_time_time_api
:status: valid
:version: 1
:satisfied_by: comp__time

The Component shall do xyz to another component to bring it to this condition at this time
Every ``Clock<Tag>::Now`` call shall return a single immutable
``ClockSnapshot`` value that bundles the timepoint with the domain's
status metadata, so callers can inspect synchronization quality
without a separate status call.

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.

Per checklist REQ_02_03 requirements should be atomic. The immutable aspect of ClockSnapshot feels like it should be pulled out to its own req.

Suggested change
.. comp_req:: Immutable snapshot with quality metadata
:id: comp_req__time__snapshot_with_status
:reqtype: Functional
:security: NO
:safety: QM
:derived_from: feat_req__time__vehicle_time_time_api
:status: valid
:version: 1
:satisfied_by: comp__time
The Component shall do xyz to another component to bring it to this condition at this time
Every ``Clock<Tag>::Now`` call shall return a single immutable
``ClockSnapshot`` value that bundles the timepoint with the domain's
status metadata, so callers can inspect synchronization quality
without a separate status call.
.. comp_req:: Immutable snapshot with quality metadata
:id: comp_req__time__snapshot_with_status
:reqtype: Functional
:security: NO
:safety: QM
:derived_from: feat_req__time__vehicle_time_time_api
:status: valid
:version: 1
:satisfied_by: comp__time
The Component shall include synchronization metadata with each
time snapshot for clock domains that provide status information, so
callers can determine time validity without a separate status query.
.. comp_req:: Immutable snapshot with quality metadata
:id: comp_req__time__snapshot_with_status
:reqtype: Functional
:security: NO
:safety: QM
:derived_from: feat_req__time__vehicle_time_time_api
:status: valid
:version: 1
:satisfied_by: comp__time
The Component shall return time snapshots as immutable values that
cannot be modified after creation, so callers observe consistent
snapshot data throughout its lifetime.

Comment thread score/time/docs/requirements/requirements.rst Outdated
Comment thread score/time/docs/requirements/requirements.rst Outdated
Comment thread score/time/docs/requirements/requirements.rst Outdated
Comment thread score/time/docs/requirements/requirements.rst Outdated
Comment thread score/time/docs/requirements/requirements.rst Outdated
Comment thread score/time/docs/requirements/requirements.rst Outdated
Comment thread score/time/docs/detailed_design/index.rst Outdated

@ryan-steel ryan-steel Aug 28, 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.

These are a good start, but I think we could probably do with some more at this level.

  • thread safety for getInstance singleton access
  • thread safety for reading time snapshots
  • linux and qnx platform support
  • error handling (that we log on errors)
  • that we return empty snapshot when backend not initialized
  • AoU that user will initialize backend where necessary

Co-authored-by: Ryan Steel <str1yok@bosch.com>
Signed-off-by: Gabriel Pinheiro <gabriel.pinheiro@etas.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

3 participants