states: add concrete step states
Metadata
Current evaluation
Closed unmerged and split into #13–#16, which separately added PullState, BuildState, StageState, and PrimeState; all four replacement PRs were merged.
Resolution: closed superseded
Reason: The maintainer explicitly closed #12 after deciding to slice it into separate step-state PRs. PRs #13, #14, #15, and #16 delivered that work, with #16 also adding the state loader.
Evaluated by: mr-cal-bot
No scores available.
Issue body
`PullState`, `BuildState`, `StageState` and `PrimeState` are the
concrete subclasses of `StepState`.
Note: this is stacked on top of PR #10, relevant commit is 6412b19.
Signed-off-by: Claudio Matsuoka <claudio.matsuoka@canonical.com>
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed superseded | Closed unmerged and split into #13–#16, which separately added PullState, BuildState, StageState, and PrimeState; all four replacement PRs were merged. | |
| stealth/space-bunny-alpha | — | closed superseded | Closed unmerged and split into four focused PRs: #13 (PullState), #14 (BuildState), #15 (StageState), and #16 (PrimeState), all merged. | |
| qwen/qwen3.6-35b-a3b | — | — | Superseded by separate PRs. The author converted the pull request to a draft to slice the implementation into individual PRs for each step class, replacing this consolidated change with focused, separate submissions. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Superseded by separate pull requests. The maintainer converted the draft to slice concrete step state implementations into individual PRs for each step class, replacing this combined effort with focused, separate contributions. |
Update history
No update history recorded yet.
Related work
-
Superseded By:
canonical/craft-parts#13
(confidence 100%)
Merged as df8666c2, adding PullState.
-
Superseded By:
canonical/craft-parts#14
(confidence 100%)
Merged as 373d3a84, adding BuildState.
-
Superseded By:
canonical/craft-parts#15
(confidence 100%)
Merged as ab80f306, adding StageState.
-
Superseded By:
canonical/craft-parts#16
(confidence 100%)
Merged as 524909c6, adding PrimeState and the state loader.
-
Related To:
canonical/craft-parts#10
(confidence 95%)
The prerequisite StepState base-class PR, merged as 35d2dde5.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #16 states: add prime state class and state loader | craft-parts | merged | Merged PR #16 added PrimeState and persistent step-state loading; commit aa062828 landed via merge 524909c6, replacing unmerged PR #12. | |
| #15 states: add stage state class | craft-parts | merged | Merged PR #15 added StageState for stage-step context; implementation commit b16b4b77 landed via merge commit ab80f306. | |
| #13 states: add pull state class | craft-parts | merged | Merged PR #13 via df8666c2, adding PullState to retain pull-step context and track relevant properties and project options; it partially replaced PR #12. | |
| #14 states: add build state class | craft-parts | merged | Merged PR #14 added BuildState for context collected during part build steps, partially replacing unmerged PR #12 in merge commit 373d3a84. | |
| #10 states: add step state base class | craft-parts | merged | Merged PR #10 via commit 35d2dde5, adding a base class for step state that preserves execution context, detects relevant changes, and enables unchanged runs to be skipped. | |
| #17 states: add state metadata and ephemeral state manager | craft-parts | merged | Merged PR #17 added wrapped step-state metadata for lifecycle sequencing and an ephemeral state manager keyed by part and step; merge commit 63369fb9. | |
| #18 states: add stage manager class | craft-parts | merged | Merged PR #18 introduced the initial StateManager for tracking part and step states; implemented in commit 23c8afdc and merged by ccf5b434. |