executor: add the step handler
Metadata
Current evaluation
Merged to main via commit 878dd163, adding craft_parts/executor/step_handler.py (+823/-0, 6 files): built-in step actions, user-script execution, and a FIFO-based control API server ported from Snapcraft.
Resolution: closed resolved
Reason: PR #59 was approved by two reviewers and merged into main as commit 878dd163, carrying implementation commit 0c1e7feb ('executor: add the step handler') plus follow-up 72eb4ed3 adding a pkgconfig note. The module lives on as craft_parts/executor/step_handler.py, later extended by commits such as 2fbcee7d (part run action handler) and 22132bd3 (plugin validation).
Evaluated by: mr-cal-bot
Issue body
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged to main via commit 878dd163, adding craft_parts/executor/step_handler.py (+823/-0, 6 files): built-in step actions, user-script execution, and a FIFO-based control API server ported from Snapcraft. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged in craft-parts#59 via commit 0c1e7feb, adding the executor step handler, built-in actions, user-script execution, and a FIFO-based control API. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged #59 (commit 0c1e7feb), adding executor step handling for built-in actions and user scripts, with a FIFO-based control API ported from Snapcraft. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged after two approvals and CI. Adds a step handler to the executor for built-in actions and user scripts, featuring a FIFO-based control API ported from Snapcraft. Added 823 lines across six files. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged the executor step handler, enabling built-in actions or user-defined script execution via a FIFO-based control API ported from Snapcraft. Approved after minor discussion on return types, with future refactoring noted. |
Update history
No update history recorded yet.
Related work
-
Likely Fixed By:
craft-parts#58
(confidence 78%)
Complementary PR merged as 6473059e (commit a3ab59be 'executor: add step handler errors'), supplying the exception types the handler raises.
-
Related To:
craft-parts#60
(confidence 45%)
Later commit c14213dc 'ctl: add ctl protocol client' implements the client for the control API server introduced here.
-
Related To:
craft-parts#67
(confidence 35%)
Subsequent follow-up commits refactored the handler (2fbcee7d part run action handler, 0f7446aa migration module, 913eff42 overlay step).
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #66 executor: add part handler (1/2) | craft-parts | merged | Merged in canonical/craft-parts#66 via 98f11c83, adding executor handling for part RUN actions: package fetching/unpacking, step-handler dispatch, and step-state generation. | |
| #58 executor: add step handler errors | craft-parts | merged | Merged PR #58 added executor step-handling error classes in commit a3ab59be; merge commit: 6473059e. | |
| #60 executor: add callbacks | craft-parts | merged | Merged PR #60 (commit c411e2a7, merge 1ce62324) added the craft_parts/callbacks.py module enabling app-defined functions at executor lifecycle points; it shipped and was extended by later PRs like #1441. |