mirror of
https://github.com/ChuckBuilds/LEDMatrix.git
synced 2026-10-04 14:25:08 +00:00
The first-frame dispatch (_dispatch_first_frame) now asks PluginExecutor.execute_display() to re-raise (raise_errors=True) and records a raise inside the executor as a breaker failure, with the original exception as last_error, instead of a success. The screen is still an empty pass and rotation is unchanged; a hung display() is still recorded once, as a hang. The run-loop golden trace plugin_error.json is regenerated (crashy now records health failures and is skipped by the breaker), and behaviour 7 is dropped from docs/RUN_LOOP_REDESIGN.md. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
30 lines
1.1 KiB
JSON
30 lines
1.1 KiB
JSON
{
|
|
"screens": [
|
|
[0.0, "clock", 10.0, "duration", 10, false],
|
|
[10.0, "broken_a", 0.0, "error", 0, null],
|
|
[10.0, "weather", 10.0, "duration", 10, true],
|
|
[20.0, "crashy", 0.0, "raised", 1, true],
|
|
[20.0, "clock", 10.0, "duration", 10, true],
|
|
[30.0, "broken_a", 0.0, "error", 0, null],
|
|
[30.0, "weather", 10.0, "duration", 10, true],
|
|
[40.0, "crashy", 0.0, "raised", 1, true],
|
|
[40.0, "clock", 10.0, "duration", 10, true],
|
|
[50.0, "broken_a", 0.0, "breaker", 0, null],
|
|
[50.0, "broken_b", 0.0, "breaker", 0, null],
|
|
[50.0, "weather", 10.0, "duration", 10, true],
|
|
[60.0, "crashy", 0.0, "breaker", 0, null],
|
|
[60.0, "clock", 10.0, "duration", 10, true],
|
|
[70.0, "broken_a", 0.0, "breaker", 0, null],
|
|
[70.0, "broken_b", 0.0, "breaker", 0, null],
|
|
[70.0, "weather", 10.0, "duration", 10, true],
|
|
[80.0, "crashy", 0.0, "breaker", 0, null],
|
|
[80.0, "clock", 10.0, "horizon", 10, true]
|
|
],
|
|
"events": [
|
|
[10.0, "health-failure", "broken"],
|
|
[20.0, "health-failure", "crashy"],
|
|
[30.0, "health-failure", "broken"],
|
|
[40.0, "health-failure", "crashy"]
|
|
]
|
|
}
|