Skip to content

feat: Introduce azdo boards iteration command group #140

@tmeckel

Description

@tmeckel

This issue introduces the azdo boards iteration command group to manage iteration (sprint) paths from the CLI.

Command Group Description

Add an iteration subgroup beneath azdo boards so users can inspect and manage sprint hierarchies that drive planning and reporting. The command should highlight how iteration paths schedule work and control sprint boards, pointing to Microsoft guidance.

Implementation Notes

  • Create internal/cmd/boards/iteration/iteration.go with NewCmd(ctx util.CmdContext) *cobra.Command.
  • Register the subgroup from internal/cmd/boards/boards.go and regenerate docs so the new hierarchy appears in help output.
  • Provide concise help text describing iteration paths, default usage examples, and how it relates to future subcommands (for example, project-scoped operations).
  • Ensure future iteration commands (for example iteration project list) live under the corresponding package to keep wiring consistent with other groups.

Command Wiring

  • Implement the group factory in internal/cmd/boards/iteration/iteration.go and ensure it registers child commands only through this package.
  • In internal/cmd/boards/boards.go, add cmd.AddCommand(iteration.NewCmd(ctx)) so the root boards command exposes the iteration branch.
  • After wiring changes, run make docs to refresh Cobra-generated documentation.

SDK / Client Requirements

  • The command group itself does not require additional SDK clients, but leaf commands beneath it typically call the Work Item Tracking client. Confirm ClientFactory().WorkItemTracking(...) is used downstream.
  • If new Azure DevOps clients are needed, follow the "Handling Missing Azure DevOps SDK Clients" workflow in AGENTS.md (extend ClientFactory, execute go mod tidy and go mod vendor, update scripts/generate_mocks.sh, and add the factory implementation) before writing command logic.

Tooling & Validation

  • Format new Go code with gofmt/goimports.
  • Run go build ./cmd/azdo/... to ensure the CLI compiles with the new wiring.
  • Add/update hermetic tests and run go test ./... (include documentation regeneration in CI checklist).

References

Sub-issues

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions