Layered handling of node and (sub-)system errors
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 25/100
Hướng nghiên cứu
Bắt đầu bằng cách đọc issue #43 và phần thảo luận về ModeManager, diagnostics và MROS Metacontroller. Không có tệp mã nguồn hay test nào được nêu tên, và vẫn cần đạt được sự thống nhất về giao diện chẩn đoán cũng như hành vi dự kiến trước khi có thể xem việc triển khai là hoàn tất.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
from (#47 )
This is in the context of our exemplary case of the
laser_drivererror. We want to elaborate on the layered approach we discussed in the last MROS meeting. This is how I interpret our desired design (please comment if something is not correct or clear):
- First the
laser_drivercode for handling errors tries to recover from the error in theErrorProcessingtransition state.(from here it is a related but different issue)
- If it does not succeed (I guess that means node does not transition to
Active), theModeManagertries to recover from the error using thefeature/rules. For this, @jginesclavero is adding a rule in the SystemModes file of our system.- If there is no rule, or there is but after applying it the alternative
MODE(s)of thelaser_driverare not reached either, theModeManagerreports to theMROS Metacontrollerthat the corresponding (sub)system(s) MODE(s) are not reachable.
(see issue for the continuation of the handling of errors at the higher layers)
continuation
Currently this will be implemented in a passive way, by offering that information (see https://github.com/micro-ROS/system_modes/issues/43)
But, since the current target MODE cannot be reached... we were thinking (in a discussion with TUD and URJC) if the ModeManager should report this actively system wide, for the operator or any supervisory system (e.g. MROS Metacontroller) to handle it.
Proposal: Since not being able to reach the target MODE is a deviation of expected and desired behaviour, we propose that the ModeManager uses diagnostics to report this. The MROS Metacontroller will subscribe such diagnostic messages.
(@fmrico @jginesclavero @marioney please comment if I missed something or did not convey it correctly)
What do you think @norro ?
- Ngôn ngữ chính
- C++
- Star
- 45
- Fork
- 13
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của micro-ROS/system_modes
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 45/100
micro-ROS/system_modes#101 ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
micro-ROS/system_modes#99 · 3 bình luận ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
micro-ROS/system_modes#98 ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
micro-ROS/system_modes#97 · 2 bình luận ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
micro-ROS/system_modes#96 · 2 bình luận ·
Tất cả issue của micro-ROS/system_modes
Issue tương tự
-
enhancement
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
QuantStack/git2cpp#187 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
AXERA-TECH/ax-llm#77 ·
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
games-on-whales/wolf#509 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100