Error propagation and handling#24
Conversation
License Check Results🚀 The license check job ran with the Bazel command: bazel run //:license-checkStatus: Click to expand output |
|
The created documentation from the pull request is available at: docu-html |
7b8eb27 to
70ccdb7
Compare
feo/Design/shutdown_failure.png
Outdated
There was a problem hiding this comment.
Please follow for documentation the S-CORE process guidelines, address requirements, architecture changes in the according folders, if would also be from advantage, to use Change Management Issue to track the topics accordingly
Currently the documentation is still in score repo, but as part of next release, that shall be moved her and can be properly integrated, compare https://github.com/orgs/eclipse-score/discussions/516#discussioncomment-15039732
There was a problem hiding this comment.
Hi @masc2023,
Thank you for your feedback. I will review your concerns. please note that I am not trying to change the architecture or requirements, I already implement these existing requirements Activity stepping error and Activity shutdown error
At this time, I will proceed with removing the previously included design sequence diagrams. Concurrently, I will examine the process guidelines to ensure that all future contributions to the design documentation are submitted through the appropriate channels and in the correct format.
Thanks!
There was a problem hiding this comment.
Hi @masc2023,
you mean these architecture docs https://eclipse-score.github.io/reference_integration/main/_collections/score_process/process/process_areas/index.html, is it right?
There was a problem hiding this comment.
Hi @masc2023,
you mean these architecture docs https://eclipse-score.github.io/reference_integration/main/_collections/score_process/process/process_areas/index.html, is it right?
No, these are only the general process guidelines, the real documentation for the FEO Module are here: https://eclipse-score.github.io/score/main/modules/feo/index.html
FEO Component architecture are defined in this folder, https://eclipse-score.github.io/score/main/modules/feo/feo/docs/architecture/component_architecture.html
These should now be transferred completely to the FEO Module Folder and that would be then the right place to add your diagram and link it properly to the requirements.
There are also Feature High Level requirements, but they should be reflected on the component level, too.
https://eclipse-score.github.io/score/main/features/frameworks/feo/architecture/feature_architecture.html
There was a problem hiding this comment.
@masc2023, I removed the sequence diagrams. Thanks!
There was a problem hiding this comment.
Hi @masc2023,
you mean these architecture docs https://eclipse-score.github.io/reference_integration/main/_collections/score_process/process/process_areas/index.html, is it right?No, these are only the general process guidelines, the real documentation for the FEO Module are here: https://eclipse-score.github.io/score/main/modules/feo/index.html
FEO Component architecture are defined in this folder, https://eclipse-score.github.io/score/main/modules/feo/feo/docs/architecture/component_architecture.html
These should now be transferred completely to the FEO Module Folder and that would be then the right place to add your diagram and link it properly to the requirements.
There are also Feature High Level requirements, but they should be reflected on the component level, too. https://eclipse-score.github.io/score/main/features/frameworks/feo/architecture/feature_architecture.html
Okay great, Thank you for the clarification @masc2023!
|
Hi @masc2023, I removed the design sequence diagrams to be added in another PR in the relevant docs as we discussed. |
|
Hi @armin-acn, |
armin-acn
left a comment
There was a problem hiding this comment.
Thanks for the nice PR! I would like to ask for two small changes but will also ask @artemsheinacn to take a look.
examples/rust/mini-adas/TESTING.md
Outdated
| * **Relayed TCP Mode (Default):** | ||
| ```sh | ||
| # Terminal 1 (Primary Agent) | ||
| FAIL_STEP_AFTER=3 cargo run -p mini-adas --features test-error-injection --bin adas_primary -- 400 |
There was a problem hiding this comment.
This should be changed to call bazel instead of cargo, because cargo builds are no longer supported.
|
Hi @ShoroukRamzy, @armin-acn, in my view we don't put tests into mini-adas. We have a separate tests agent in one of our internal PRs and a tests scripts runner. Otherwise the PR looks good to me. |
|
Hi @artemshein, |
|
Hi @armin-acn, if you don't have any further comments, Could you please help me merge this PR? |
|
Hi @ShoroukRamzy, please do not only remove the test documentation, but also the test code itself (error injection) from the commit. As @artemshein mentioned, we have an internal PR that will be published soon, that is intended to provide a very similar functionality but in a more generic approach. |
a684345 to
d6b300c
Compare
Hi @armin-acn, thank you for the clarification. I removed all test code I added. |
d6b300c to
5e84ef4
Compare
Hi @armin-acn, I don't have sufficient permissions to merge this PR, Could you please help me merge it if it's ready? Thanks! |
This PR resolves issue #23 by implementing a robust error handling mechanism for activity failures.
Design diagrams illustrating the new failure handling sequences have been added to the feo/Design directory. A comprehensive guide for verifying this feature is available in the new TESTING.md in examples/rust/mini-adas
Proposal:
Currently the implementation handles step and shutdown errors as following:
Modify
ActivityTrait: Changestep()andshutdown()to return aResult<(), ActivityError>.Update
Worker: The worker will catch anyErrand send a failure signal to theScheduler.Enhance
Scheduler: The scheduler will handle failures as following:Thanks!