huskies: merge 1051
This commit is contained in:
@@ -76,6 +76,10 @@ pub enum PipelineEvent {
|
||||
MergeAborted,
|
||||
/// Story 974: user re-opens a Done story for a post-merge hotfix, sending it back to Coding.
|
||||
HotfixRequested,
|
||||
/// Story 1051: deterministic-merge pipeline started a retry on a story in
|
||||
/// `Stage::MergeFailure`; transitions back to `Stage::Merge` so the UI
|
||||
/// shows the active retry rather than the stale failure state.
|
||||
MergeRetryStarted,
|
||||
}
|
||||
|
||||
// ── Per-node execution events ───────────────────────────────────────────────
|
||||
@@ -123,6 +127,7 @@ pub fn event_label(e: &PipelineEvent) -> &'static str {
|
||||
PipelineEvent::ReQueuedForQa => "ReQueuedForQa",
|
||||
PipelineEvent::MergeAborted => "MergeAborted",
|
||||
PipelineEvent::HotfixRequested => "HotfixRequested",
|
||||
PipelineEvent::MergeRetryStarted => "MergeRetryStarted",
|
||||
}
|
||||
}
|
||||
|
||||
@@ -365,6 +370,26 @@ pub fn transition(state: Stage, event: PipelineEvent) -> Result<Stage, Transitio
|
||||
retries: 0,
|
||||
}),
|
||||
|
||||
// ── MergeRetryStarted: MergeFailure → Merge (deterministic retry) ─
|
||||
// When the deterministic-merge pipeline starts a retry on a MergeFailure
|
||||
// story, transition back to Merge so the UI shows the active retry rather
|
||||
// than the stale failure state (story 1051). Preserves feature_branch and
|
||||
// commits_ahead so the retry continues with the same branch.
|
||||
(
|
||||
MergeFailure {
|
||||
feature_branch,
|
||||
commits_ahead,
|
||||
..
|
||||
},
|
||||
MergeRetryStarted,
|
||||
) => Ok(Merge {
|
||||
feature_branch,
|
||||
commits_ahead,
|
||||
claim: None,
|
||||
retries: 0,
|
||||
server_start_time: None,
|
||||
}),
|
||||
|
||||
// ── MergemasterAttempted: MergeFailure → MergeFailureFinal ─────
|
||||
(MergeFailure { kind, .. }, MergemasterAttempted) => Ok(MergeFailureFinal { kind }),
|
||||
(MergeFailureFinal { kind }, MergemasterAttempted) => Ok(MergeFailureFinal { kind }),
|
||||
|
||||
Reference in New Issue
Block a user