feat(coord): step-based workflow primitive over zbus#43
Open
VicAlexandre wants to merge 3 commits into
Open
Conversation
bb86790 to
5d83dde
Compare
rodrigopex
requested changes
May 26, 2026
| struct test_ctx { | ||
| char trace[16]; | ||
| int trace_len; | ||
|
|
Owner
There was a problem hiding this comment.
Why do you have one line here?
| async->match = match; | ||
| async->chan = chan; | ||
|
|
||
| zbus_chan_add_obs(chan, async->obs, K_NO_WAIT); |
Owner
There was a problem hiding this comment.
Could not be interesting, a small timeout just to increase the reliability of the operation. You are not checking if that worked. I suggest adding the verification and adding a timeout.
| } | ||
|
|
||
| k_work_cancel_delayable(&async->timer); | ||
| zbus_chan_rm_obs(chan, async->obs, K_NO_WAIT); |
| return; | ||
| } | ||
|
|
||
| zbus_chan_rm_obs(chan, async->obs, K_NO_WAIT); |
| } | ||
|
|
||
| /* trigger source — typically a zbus listener on a flow-local channel */ | ||
| if (provisioning->current == NULL) { |
Owner
There was a problem hiding this comment.
Suggested change
| if (provisioning->current == NULL) { | |
| if(!zephlet_coord_is_running(provisioning)) { |
Owner
There was a problem hiding this comment.
Do you have an idea of the coverage for the tests?
5d83dde to
53ee33f
Compare
53ee33f to
8d399d2
Compare
Adds zephlet_coord.{h,c} skeleton, Kconfig (CONFIG_ZEPHLETS_COORD), and
CMake wiring. Step + await + timeout chain, ported from loc8-catfish.
Tests and docs follow.
Signed-off-by: Victor Miranda <varm@ic.ufal.br>
Nine partition-derived cases cover kick + -EBUSY, await match, timeout, predicate filter, dst memcpy, resolve idempotency. Signed-off-by: Victor Miranda <varm@ic.ufal.br>
Sample, public surface table, and a one-line bullet under Architecture at a glance. Signed-off-by: Victor Miranda <varm@ic.ufal.br>
8d399d2 to
40cd111
Compare
Collaborator
Author
|
Pushed fixes and updated description with code coverage. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds the zephlet_coord framework — kick/next/await/done/resolve on a shared workqueue with bounded zbus-event awaits. Gated by
CONFIG_ZEPHLETS_COORD.zephlet_coord.c: 83% lines (75/90 covered). Uncovered lines are all error-handling paths the suite doesn't synthesize (zbus_chan_add_obs/zbus_chan_rm_obsfailure logs,k_work_schedule_for_queuerollback in_await,get_chan_namefallback whenCONFIG_ZBUS_CHANNEL_NAME=n).zephlet_coord.hexposes no inline functions, so nothing to instrument.