Skip to content

I2903 — The workspace prefers stages by IntentStage, not by strings

Make idd::PREFERRED_STAGES a list of IntentStage, printed through IntentStage::as_str, so a renamed stage cannot leave the workspace behind.

READY wave 0 · p2 · implementation profile · runs alone

Part of idd-reads-at-a-glance — The intent workspace reads at a glance and leads everywhere it names.

Ready. Every dependency is done, so majordomus plan start I2903 will be accepted.

Objective

Make idd::PREFERRED_STAGES a list of IntentStage, printed through IntentStage::as_str, so a renamed stage cannot leave the workspace behind.

Why

PREFERRED_STAGES spells executing, verifying, planned and declared as strings while intent.rs owns IntentStage::as_str.

Current state

A string list in idd.rs.

Desired state

A typed list of IntentStage.

Scope

  • apps/majordomus-cli/src/ui/idd.rs
  • .ai/repo/project
  • docs
  • site

Dependencies

None. This issue is a root of the graph.

Acceptance criteria

  • PREFERRED_STAGES holds IntentStage values

Validation

  • majordomus plan validate
  • cargo test --lib ui::idd::

Evidence

None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.

Timeline

started
—
verified
—
completed
—

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

Canonical record: .ai/repo/project/issues/I2903.yaml. Read it back with majordomus plan show I2903.

Searches the titles and descriptions of every page this site publishes.