* docs(pipeline): pin the generated CLI docs to the released bd; repair main's CLI reference The #4874 squash-merge raced the docs-autofix bot: the bot had pushed a regeneration from main's source onto the PR branch, so the squash landed a contradictory mix — the release-aligned hand-written docs plus a CLI reference re-documenting unreleased commands and flags, with docs.json referencing four pages (heartbeat, migrate-personal, reclaim, unclaim) whose files do not exist. That broken nav fails the docsync guard on main and on every branch cut from it. This restores the intended end state of #4874 and lands the pin that prevents the race from recurring. - Regenerate the CLI reference from a bd built from the v1.1.0 tag (CI's canonical pure-Go build), removing the unreleased commands/flags and fixing the dangling nav entries. - docs/cli-docs.pin names the release tag; scripts/resolve-docs-bd.sh builds and caches a canonical pure-Go bd from that tag, fetching the tag first in shallow CI checkouts. - generate-cli-docs.sh, check-doc-flags.sh, and check-cli-docs-drift.sh resolve bd through the pin and ignore a supplied binary while pinned (BD_DOCS_IGNORE_PIN=1 bypasses), so the drift gates and the autofix bot now enforce docs-match-release instead of docs-match-main. - tools/docsmint detects the pre-overhaul Docusaurus staging layout that bd <= v1.1.0 emits and converts it to the generic form before its normal Mintlify transform (tested); removable once the pin reaches a release whose emitter writes build/cli-docs. - check-doc-flags.sh: run without timeout(1) on macOS instead of failing Check 4. - Decision record: engdocs/decisions/2026-07-17-docs-release-pin.md; the beads-docs skill §8 updated to match. * lint: annotate gosec G705 false positive in the docsmint legacy bridge Same class as the existing nav-splice annotation: a developer tool writing repo Markdown, not a web-output sink.
3.6 KiB
title, description
| title | description |
|---|---|
| bd ado | Commands for syncing issues between beads and Azure DevOps. |
{/* AUTO-GENERATED: do not edit manually */}
Generated from bd help --doc ado.
Commands for syncing issues between beads and Azure DevOps.
Configuration can be set via 'bd config' or environment variables: ado.org / AZURE_DEVOPS_ORG - Organization name ado.project / AZURE_DEVOPS_PROJECT - Project name (single) ado.projects / AZURE_DEVOPS_PROJECTS - Project names (comma-separated) ado.pat / AZURE_DEVOPS_PAT - Personal access token ado.url / AZURE_DEVOPS_URL - Custom base URL (on-prem)
bd ado [flags]
bd ado projects
List Azure DevOps projects that the configured token has access to.
bd ado projects [flags]
bd ado pull
Pull one or more items from Azure DevOps.
Accepts bead IDs or external references as positional arguments. Equivalent to: bd ado sync --pull-only --issues <refs>
bd ado pull [refs...] [flags]
Flags:
--dry-run Preview pull without making changes
bd ado push
Push one or more beads issues to Azure DevOps.
Accepts bead IDs as positional arguments. Equivalent to: bd ado sync --push-only --issues <ids>
bd ado push [bead-ids...] [flags]
Flags:
--dry-run Preview push without making changes
bd ado status
Display current Azure DevOps configuration and sync status.
bd ado status [flags]
bd ado sync
Synchronize issues between beads and Azure DevOps.
By default, performs bidirectional sync:
- Pulls new/updated work items from Azure DevOps to beads
- Pushes local beads issues to Azure DevOps
Use --pull-only or --push-only to limit direction.
Filters (--area-path, --iteration-path, --types, --states) restrict which work items are synced. On pull, they limit the WIQL query. On push, --types and --states filter local beads before pushing to ADO. Use --no-create with push to skip creating new ADO work items (only update existing linked items). Filters can also be persisted via config: ado.filter.area_path, ado.filter.iteration_path, ado.filter.types, ado.filter.states CLI flags override config values when both are set.
bd ado sync [flags]
Flags:
--area-path string Filter to ADO area path (e.g., "Project\Team")
--bootstrap-match Enable heuristic matching for first sync
--dry-run Show what would be synced without making changes
--issues string Comma-separated bead IDs to sync selectively (e.g., bd-abc,bd-def). Mutually exclusive with --parent.
--iteration-path string Filter to ADO iteration path (e.g., "Project\Sprint 1")
--no-create Never create new items in either direction (pull or push)
--parent string Limit push to this bead and its descendants (push only). Mutually exclusive with --issues.
--prefer-ado On conflict, use Azure DevOps version
--prefer-local On conflict, keep local beads version
--prefer-newer On conflict, use most recent version (default)
--project strings Project name(s) to sync (overrides configured project/projects)
--pull-only Only pull issues from Azure DevOps
--push-only Only push issues to Azure DevOps
--reconcile Force reconciliation scan for deleted items
--states string Filter to ADO states, comma-separated (e.g., "New,Active,Resolved")
--types string Filter to work item types, comma-separated (e.g., "Bug,Task,User Story")