Skip to content

feat: ADO configurable work item types, area paths, and iteration support #240

@tamirdresher

Description

@tamirdresher

ADO Integration Enhancement: Configurable Work Item Types & Area Paths

Background

During external testing of the ADO platform adapter (PR #191), testers discovered that different ADO organizations use different work item types and project configurations:

  • WDATP project uses custom locked-down types (Stories category is literally named "Do not create work items in this project")
  • OS project uses Scenario instead of User Story
  • Standard ADO projects may use User Story, Bug, Task, etc.

Currently Squad hardcodes User Story as the work item type. This breaks in any non-standard ADO project.

Proposed Enhancements

P0 — Configurable work item type

  • Add workItemType option to squad config (e.g., workItemType: "Scenario" in squad.config.ts)
  • Auto-detect available work item types by querying the ADO process template
  • Fall back to User Story if not configured

P1 — Area path configuration

  • Add areaPath option to squad config so work items land in the correct team backlog
  • Current behavior: uses project default area path

P1 — Iteration path support

  • Map sprints/iterations for ADO work items
  • Allows work items to appear in the correct sprint board

P2 — Process template introspection

  • Query the ADO process template to discover available work item types, fields, and states dynamically
  • Handle ReadOnly fields gracefully (like WDATP's Activity field on Task Items)

Test Results Reference

Full test results: https://github.com/tamirdresher_microsoft/tamresearch1/issues/14

10/13 tests passed. 3 blocked by WDATP project restrictions (not Squad bugs).
3 bugs found during testing were already fixed in PR #191:

  1. ✅ GitHub workflows generated in ADO repos — fixed (init skips for ADO)
  2. ✅ No platform indicator in config — fixed (adds "platform": "azure-devops")
  3. ✅ MCP template references Trello — fixed (platform-appropriate examples)

Metadata

Metadata

Assignees

No one assigned

    Labels

    go:needs-researchNeeds investigationrelease:v0.8.22Release v0.8.22squadSquad triage inbox — Lead will assign to a membersquad:fensterAssigned to Fenster (Core Dev)squad:hockneyAssigned to Hockney (Tester)

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions