Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Jan 30, 2026

Update campaign docs to reflect workflows with imports pattern

The .campaign.md file format has been removed. Documentation incorrectly still referenced "campaign specs" when campaigns are actually just regular workflows with optional imports for orchestration.

Changes

  • Rewrote core campaign guides to clarify campaigns are regular workflows, not special specs
  • Removed deprecated docs (creating-campaigns.md, lifecycle.md, cli-commands.md, specs.md) describing orchestrator generation and campaign-specific CLI commands
  • Removed migration guides showing old .campaign.md format examples
  • Removed advanced configuration options - only documenting the simple string format
  • Fixed broken links - removed all navigation items and documentation links pointing to deleted pages
  • Added imports pattern documentation - showing imports: [shared/campaign.md] for standard orchestration
  • Used Dependabot Burner as example - demonstrates the actual implementation pattern
  • Reduced documentation by 2,100+ lines (from 2,361 to ~260)

Current Implementation

Documentation now shows campaigns as regular workflows with optional imports:

---
name: Dependabot Burner
on:
  schedule: daily
  workflow_dispatch:

imports:
  - shared/campaign.md
---

# Dependabot Burner

- Project URL: https://github.com/orgs/myorg/projects/1
- Campaign ID: dependabot-burner

Find all open Dependabot PRs and add them to the project.

Key concepts:

  • No special "campaign specs" file format
  • Campaigns are regular workflows with optional imports for orchestration
  • Optional project: field for GitHub Projects tracking
  • Standard orchestration provided by shared/campaign.md

All broken links removed:

  • Navigation sidebar cleaned up
  • All references to deleted pages removed from documentation
  • No invalid links remain
Original prompt

Rewrite campaign docs according to the new implementation. Keep it simple.


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Copilot AI changed the title [WIP] Rewrite campaign documentation for new implementation Simplify campaign docs for project field implementation Jan 30, 2026
Copilot AI requested a review from mnkiefer January 30, 2026 06:21
@mnkiefer
Copy link
Contributor

@copilot Give me an overview of what setting project: does/ensures in a workflow.

Copy link
Contributor Author

Copilot AI commented Jan 30, 2026

@copilot Give me an overview of what setting project: does/ensures in a workflow.

Setting project: in a workflow frontmatter does three key things:

1. Automatic Safe-Outputs Configuration
The compiler automatically adds these safe-output operations:

  • update-project (max: 100) - Add items to projects, update fields (status, priority, custom fields), create views
  • create-project-status-update (max: 1) - Post status updates to project boards

2. Project URL Association
Links the workflow to a specific GitHub Projects board where all workflow-created items (issues, PRs) will be tracked.

3. Token Configuration
Uses the configured token (default: GH_AW_PROJECT_GITHUB_TOKEN) for all project operations, ensuring proper authentication.

Configuration Options:

Simple (string):

project: https://github.com/orgs/myorg/projects/123

Advanced (object):

project:
  url: https://github.com/orgs/myorg/projects/123
  scope: [owner/repo1, org:myorg]        # Repos/orgs this workflow operates on
  max-updates: 50                         # Override default (100)
  max-status-updates: 2                   # Override default (1)
  github-token: ${{ secrets.CUSTOM_TOKEN }}
  do-not-downgrade-done-items: true      # Prevent moving completed items backward

This replaces the deprecated .campaign.md orchestrator pattern with direct project integration.

@mnkiefer
Copy link
Contributor

@copilot Only document project: top level, no other options. We removed the others, there is no legacy and don't document the old way.

@mnkiefer mnkiefer marked this pull request as ready for review January 30, 2026 07:15
Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Jan 30, 2026

@copilot Only document project: top level, no other options. We removed the others, there is no legacy and don't document the old way.

Done in 16b2868. Removed all advanced configuration options and migration guide examples. Documentation now only shows the simple string format:

project: https://github.com/orgs/myorg/projects/1

Changes:

  • Removed "Advanced Configuration" section with object format
  • Removed migration guide showing old .campaign.md format
  • Removed references to deprecated options like max-updates, scope, etc.
  • Simplified specs.md to just point to current implementation

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • telemetry.astro.build
    • Triggering command: /opt/hostedtoolcache/node/24.13.0/x64/bin/node node /home/REDACTED/.npm/_npx/aa98e6899c6baff3/node_modules/.bin/astro build (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

@mnkiefer
Copy link
Contributor

@copilot Remove the cli commands page, they don't exist anymore as campaigns are just regular agentic workflows now.

@mnkiefer
Copy link
Contributor

@copilot Remove invalid links from docs.

Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Jan 30, 2026

@copilot Remove the cli commands page, they don't exist anymore as campaigns are just regular agentic workflows now.

Done in ab2f70b. Removed the cli-commands.md page entirely. Campaigns are now just regular workflows with the project field, so no special CLI commands documentation is needed.

Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Jan 30, 2026

@copilot Remove invalid links from docs.

Done in f44aba0. Removed invalid links to deleted campaign pages:

From astro.config.mjs (navigation sidebar):

  • Removed link to /guides/campaigns/lifecycle/
  • Removed link to /guides/campaigns/cli-commands/

From examples/campaigns.md:

  • Removed link to /guides/campaigns/lifecycle/

All remaining links now point to existing pages.

@mnkiefer
Copy link
Contributor

@copilot We no longer have campaign specs, just regular workflows with optional project field for tracking work on a project board and import for having standard campaign orchestration (shared/campaign.md). See "Dependabot Burner" for a good example.

Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Jan 30, 2026

@copilot We no longer have campaign specs, just regular workflows with optional project field for tracking work on a project board and import for having standard campaign orchestration (`shared/ca...

Done in 99388dd. Updated all campaign documentation to reflect the current implementation:

Key changes:

  • Removed all references to "campaign specs" - clarified campaigns are just regular workflows
  • Added imports: [shared/campaign.md] pattern for standard orchestration
  • Used Dependabot Burner as the primary example throughout
  • Updated navigation to remove "Campaign Specs" page link
  • Emphasized that project: field is optional for project tracking

Documentation now shows:

---
name: Dependabot Burner
on:
  schedule: daily
  workflow_dispatch:

imports:
  - shared/campaign.md
---

# Dependabot Burner

- Project URL: https://github.com/orgs/myorg/projects/1
- Campaign ID: dependabot-burner

Find all open Dependabot PRs and add them to the project.

The docs now accurately reflect that campaigns are regular workflows that optionally use imports for orchestration, not a separate file format or special specs.

Copilot AI changed the title Simplify campaign docs for project field implementation Update campaign docs to reflect workflows with imports pattern Jan 30, 2026
Updated the title and description of the campaigns guide. Changed 'Campaign Orchestration' to 'About Campaigns' and revised the definition to clarify the concept of Agentic Campaigns.
@mnkiefer
Copy link
Contributor

@copilot Remove invalid links from docs.

Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Jan 30, 2026

@copilot Remove invalid links from docs.

Done in 9779df1. Removed broken links to the deleted specs.md page:

From examples/campaigns.md:

  • Removed link to /guides/campaigns/specs/

From guides/specops.md:

  • Removed link to /guides/campaigns/specs/

All links now point to existing pages only.

Copilot AI requested a review from mnkiefer January 30, 2026 08:20
@mnkiefer mnkiefer merged commit ee065a2 into main Jan 30, 2026
36 checks passed
@mnkiefer mnkiefer deleted the copilot/rewrite-campaign-docs branch January 30, 2026 08:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants