Skip to content

HealthMonitor: Component requirements and AoU - #863

Open
pawelrutkaq wants to merge 2 commits into
eclipse-score:mainfrom
qorix-group:pawelrutkaq_health_mon_comp_req
Open

pawelrutkaq wants to merge 2 commits into
eclipse-score:mainfrom
qorix-group:pawelrutkaq_health_mon_comp_req

Conversation

@pawelrutkaq

@pawelrutkaq pawelrutkaq commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

HealthMonitor: Component requirements and AoU

@github-actions

Copy link
Copy Markdown
Contributor

Documentation preview for this pull request is available at:
pr-863: https://eclipse-score.github.io/lifecycle/pr-863/

monitoring instance if any of the following holds:

- no monitor is configured,
- the supervisor notification cycle is not an integer multiple of the

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.

Those "config validation" reqs are assertions turned into requirements.
Rephrase to disallow lack of configured monitors, drop the rest.

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.

Subject to second opinion if this is too specific

Comment thread score/health_monitor/docs/requirements/requirements.rst Outdated
:status: valid
:version: 1

The :term:`Health Monitor` shall not accept a time range whose minimum is

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.

Assertion turned into requirement, not sure how helpful it is.

@pawelrutkaq pawelrutkaq Oct 27, 2026 •

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.

Second opinion whether its too specific for comp req; however, this is external input so to me souds like it shall be here

:status: valid
:version: 1

The :term:`Health Monitor` shall reject a heartbeat monitor configuration if

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.

Not a requirement, it's a constraint due to implementation detail.

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.

Yes, however, it still sounds valid, we need a second opinion ;)


Deadline Supervision
====================

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.

Is a deadline monitor without configured deadlines valid?

Comment thread score/health_monitor/docs/requirements/requirements.rst Outdated
- Set the status to valid and start the review/merge process
- Add other needed requirements for your feature
.. note:: Kept until the architecture elements are relinked to the
requirements above. See https://github.com/eclipse-score/lifecycle/issues/366.

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.

Is it still necessary?

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.

Yes

:status: valid
:version: 1

The process that hosts the :term:`Health Monitor` shall be developed to

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.

Could You elaborate? Why does it matter, especially in regard to the note?

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.

This is AoU so You cannot use HM in ASIL D, But to increase reliability and due to the process nature in POSIX, the hosted code in same process shall have same required safty level. Anyway AoU can be discarded with proper evidence by user. Open to second opinion if we need this

Comment thread score/health_monitor/docs/requirements/requirements.rst
Comment thread score/health_monitor/docs/requirements/requirements.rst
Comment thread score/health_monitor/docs/requirements/requirements.rst Outdated
Comment on lines +163 to +164
the internal evaluation cycle is not shorter than twice the minimum of the
heartbeat time range.

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.

not shorter I think its not aligned with impl as code allows <=

@pawelrutkaq pawelrutkaq Oct 27, 2026 •

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 think you read condition wrongly but I reworded double negation in this req

Comment on lines +61 to +62
The :term:`Health Monitor` shall reject a configuration and not create a
monitoring instance if any of the following holds:

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.

what does it mean reject? error? empty instance?

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.

This would be too detailed imho, but generally shall not create an instance, so error (it clearly says not create too or ?)

:version: 1

The reporting operations of the :term:`Health Monitor` (heartbeat, deadline
start and stop, state transition) shall have a bounded execution time, and

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.

imho comp req should be more strict - what is min, max of those boundaries?

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 don't think you can realistically set that, it depends on HW, on integration thread settings, and many more. The point is that this shall not be coupled with some generally random timing facilities (ie memory allocation).
Maybe thi shall not be even said in requrements, I would ask for Second Opinion

:status: valid
:version: 1

On any internal error, the :term:`Health Monitor` shall stop sending alive

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.

do we have a list of all possible internal errors?

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.

No, it would not be feasible.

Comment on lines +493 to +494
The :term:`Health Monitor` shall provide a Rust API and a C++ API with
equivalent supervision semantics.

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.

isnt it more like feat requirement?

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.

makse sense, done

Comment thread score/health_monitor/docs/requirements/requirements.rst
@pawelrutkaq

Copy link
Copy Markdown
Contributor Author

@aschemmel-tech, we need your second opinion on comments with "second opinion" included (+ ofc review of all) ;)

This branch is waiting to be deployed

1 waiting deployment
workflow-approval — 50b6e890 Waiting Oct 27, 2026 by pawelrutkaq via Build and test unit-tests-x86_64-qnx / approval #1833
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.

3 participants