G
YouTube TikTok Games
Skip to content

Add ado-lifecycle to community workflow catalog - #5312

Merged
mnriem merged 2 commits into
github:mainfrom
praveenlavu:community/add-ado-lifecycle-workflow
Nov 9, 2026
Merged

mnriem merged 2 commits into
github:mainfrom
praveenlavu:community/add-ado-lifecycle-workflow

Conversation

@praveenlavu

@praveenlavu praveenlavu commented Nov 8, 2026 •

Copy link
Copy Markdown
Contributor

Description

Adds the ado-lifecycle workflow (v0.3.1) to workflows/catalog.community.json, following Publishing workflows (workflow entries are a pull request; there is no workflow-definition issue form). The entry is added at the top of the workflows mapping (alphabetical) and the catalog's updated_at is bumped. The second commit moves the entry to 0.3.1 (the fix for the automated review finding below) and adds the ado-lifecycle row to docs/community/workflows.md.

  • Workflow ID: ado-lifecycle Name: ADO story lifecycle Version: 0.3.1 License: MIT
  • Repository: https://github.com/praveenlavu/spec-kit-ado (tag v0.3.1, GitHub release with the ado-0.3.1.zip bundle)
  • Pinned URL: https://raw.githubusercontent.com/praveenlavu/spec-kit-ado/v0.3.1/workflows/ado-lifecycle/workflow.yml
  • sha256 of that file: eaa2d4fa2bf3f5134771639549c1da5d7401dd5f4035cf008a0021b14c648c40
  • Related submissions: extension issue [Extension]: Add ado #5311; a bundle that installs both will follow once the extension validates.

The workflow takes an Azure DevOps story to an open pull request (spec, plan, tasks, push, implement, gate, review, PR). Every Azure Boards or PR change is a shell preview that writes a plan file, a gate that shows that file (show_file), and a shell apply that refuses unless the plan is unchanged. Only the numeric story_id input is interpolated into shell run fields; gate messages are constant. The shell steps call the ado CLI from the same repository and tag; the workflow README lists them, the credentials they use and the side effects. requires in the entry equals requires in workflow.yml.

Testing

Evidence from running the published 0.3.0 artifact (not a checkout) on 2026-11-08, Spec Kit 1.2.4.dev0, macOS. 0.3.1 differs from 0.3.0 only by the loop cap, one regex rewritten with escapes, documentation and version strings; the full live end-to-end below was not re-run on 0.3.1. The 0.3.1 change is covered by tests that drive the shipped loop definitions through the real specify CLI (they failed on 0.3.0 and pass on 0.3.1, on Spec Kit 1.2.1 and 1.2.4.dev0); the Azure-facing evidence below is from 0.3.0:

  • specify workflow catalog add .../v0.3.0/catalog/workflows.json, specify workflow add ado-lifecycle --version 0.3.0, specify workflow info ado-lifecycle: installed, 12 gate inputs listed.
  • Live end-to-end run against a real Azure DevOps organization and Azure Repos repository created for testing: the run paused at 12 gates with no TTY, each answered with specify workflow resume <run> --input verdict_<gate>=approve, and completed (8 Tasks created and synced, a pull request opened and linked; the story was closed afterwards with the extension's done command).
  • Rejection path: on a second story a rejected gate aborted the run; the work item was unchanged (revision 1, no relations, no comments) and resume refused the aborted run.
  • A weekly job checks the workflow against Spec Kit 1.2.1 (the minimum) and the latest release.
  • Not verified: approvals by comment with a second human identity, the unattended poller, Windows.
  • Catalog-only change: the Spec Kit test suite was not run (no code is touched); JSON validated and keys are sorted.

AI Disclosure

  • I did not use AI assistance for this contribution
  • I did use AI assistance (disclosure below)

AI disclosure: Tool: Claude Code (Anthropic's CLI/desktop app). Model: Claude Sonnet 5.5 for this pull request, the catalog entry and this text; the workflow and its CLI were built over several weeks with Claude Code using Claude Sonnet and Claude Opus models. Settings/mode: default settings, human-supervised (not autonomous): I approved each action and the submission. Extent: the catalog entry and this description were drafted by the AI and checked against the release artifacts (URL, sha256, requires); the workflow code itself was written with AI assistance under my review. Replies to review comments may also be drafted by the AI and will be marked as such.

Workflow ID: ado-lifecycle; Version: 0.3.0; Author: praveenlavu

Assisted-by: Claude Code (Claude Sonnet 5.5, human-supervised)
@praveenlavu
praveenlavu requested a review from mnriem as a code owner November 8, 2026 05:01
Copilot AI dynamic review requested due to automatic review settings November 8, 2026 05:01

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

In non-interactive terminal resumes, stale approval can survive a plan mismatch and authorize different Azure Boards or PR changes without a new human decision.

2 open issues
What changed in this PR

Adds ado-lifecycle to Spec Kit’s community workflow discovery catalog for Azure DevOps story-to-PR automation.

Changes:

  • Registers version 0.3.0 with a tag-pinned definition URL, SHA-256 digest, documentation links, and compatibility metadata.
  • Updates the catalog timestamp to November 8, 2026.

AI disclosure: GitHub Copilot generated this review in automated mode; model and requester identity were not supplied.

File Description
workflows/​catalog.community.json Adds the ado-lifecycle entry and refreshes the catalog timestamp.

Review effort: Max (auto)

Comment thread workflows/catalog.community.json Resolved
Comment thread workflows/catalog.community.json Resolved
Workflow ID: ado-lifecycle; Version: 0.3.1; Author: praveenlavu

0.3.1 fixes the review finding on this PR: a verdict supplied with
`--input` could pass the second gate of a loop after an apply refused a
changed plan. The entry now points at the v0.3.1 tag with its sha256, and
docs/community/workflows.md gains the ado-lifecycle row.

Assisted-by: Claude Code (Claude Sonnet 5.5, human-supervised)
Copilot AI dynamic review requested due to automatic review settings November 8, 2026 19:42
@praveenlavu praveenlavu mentioned this pull request Nov 8, 2026
11 tasks done

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The referenced v0.3.1 release does not bind approval plans to a commit SHA, allowing commits added during the approval pause to be pushed without renewed approval.

3 open issues

Review effort: Max (auto)

Comment thread workflows/catalog.community.json Resolved
@praveenlavu praveenlavu mentioned this pull request Nov 8, 2026
13 tasks done
@mnriem mnriem added the triage-must-have Verdict: high-value, important work for Spec Kit — do first label Nov 9, 2026
@mnriem
mnriem requested a dynamic review from Copilot November 9, 2026 13:55

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

No active review issues are reported for the workflow catalog and documentation update.

3 open issues

Review effort: Balanced (auto)

@mnriem
mnriem merged commit 3f60232 into github:main Nov 9, 2026
19 checks passed
@mnriem

mnriem commented Nov 9, 2026

Copy link
Copy Markdown
Collaborator

Thank you!

kevinnguyenhoang91 pushed a commit to kevinnguyenhoang91/spec-kit that referenced this pull request Nov 10, 2026
* Add ado-lifecycle to community workflow catalog

Workflow ID: ado-lifecycle; Version: 0.3.0; Author: praveenlavu

Assisted-by: Claude Code (Claude Sonnet 5.5, human-supervised)

* Update ado-lifecycle to 0.3.1 and list it in the workflows doc

Workflow ID: ado-lifecycle; Version: 0.3.1; Author: praveenlavu

0.3.1 fixes the review finding on this PR: a verdict supplied with
`--input` could pass the second gate of a loop after an apply refused a
changed plan. The entry now points at the v0.3.1 tag with its sha256, and
docs/community/workflows.md gains the ado-lifecycle row.

Assisted-by: Claude Code (Claude Sonnet 5.5, human-supervised)
@praveenlavu praveenlavu mentioned this pull request Nov 13, 2026
7 of 8 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

triage-must-have Verdict: high-value, important work for Spec Kit — do first

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants