description = "Engineer in a Box - the canonical right way. Design before you code. Review before you ship. Test before you submit."
formula = "shiny"
type = "workflow"
version = 1

[[steps]]
description = "Think carefully about architecture before writing code. Consider: How does this fit into the existing system? What are the edge cases? What could go wrong? Is there a simpler approach?"
id = "design"
title = "Design {{feature}}"

[[steps]]
description = "Write the code for {{feature}}. Follow the design. Keep it simple. Don't gold-plate."
id = "implement"
needs = ["design"]
title = "Implement {{feature}}"

[[steps]]
description = "Review the implementation. Check for: Does it match the design? Are there obvious bugs? Is it readable and maintainable? Are there security concerns?"
id = "review"
needs = ["implement"]
title = "Review implementation"

[[steps]]
description = "Write and run tests. Unit tests for new code, integration tests if needed, run the full test suite, fix any regressions."
id = "test"
needs = ["review"]
title = "Test {{feature}}"

[[steps]]
description = "Submit for merge. Final check: git status, git diff. Commit with clear message. Push and create PR."
id = "submit"
needs = ["test"]
title = "Submit for merge"

[vars]
[vars.assignee]
description = "Who is assigned to this work"
[vars.feature]
description = "The feature being implemented"
required = true
