huskies: merge 958

This commit is contained in:
dave
2026-05-13 11:47:27 +00:00
parent 8b53e20ca9
commit 28338a8e8d
7 changed files with 103 additions and 31 deletions
+2 -12
View File
@@ -165,16 +165,6 @@ pub enum ArchiveReason {
// ── Stage convenience methods ──────────────────────────────────────────────
impl Stage {
/// Returns true if this stage is an "active" stage (Coding, Qa, or Merge).
pub fn is_active(&self) -> bool {
matches!(self, Stage::Coding | Stage::Qa | Stage::Merge { .. })
}
/// Returns true if this is the Upcoming variant.
pub fn is_upcoming(&self) -> bool {
matches!(self, Stage::Upcoming)
}
/// Returns the filesystem directory name for this stage.
pub fn dir_name(&self) -> &'static str {
stage_dir_name(self)
@@ -223,8 +213,8 @@ impl Stage {
/// stage-directory string (from CRDT fields or watcher events) into a
/// typed `Stage`. Rich variants (`Done`, `Archived`, `Merge`) are
/// synthesised with zero-value fields — callers should use this only for
/// stage *classification* (e.g. `is_active()`, `matches!`), not for
/// accessing the rich metadata fields.
/// stage *classification* (via `matches!`), not for accessing the rich
/// metadata fields.
pub fn from_dir(s: &str) -> Option<Self> {
match s {
"upcoming" => Some(Stage::Upcoming),