Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Jan 1, 2026

Treat campaign orchestrator markdown as debug artifacts ✅

Summary

Campaign orchestrator markdown files (*.campaign.g.md) are now treated as debug artifacts that are NOT committed to git. They are generated locally when running gh aw compile and can be reviewed for debugging, but only the source and compiled files are tracked.

Changes Implemented

  • Add *.campaign.g.md to .gitignore to prevent committing them
  • Remove *.campaign.g.md from .gitattributes (no longer needed if not committed)
  • Update ensureGitAttributes() to actively remove obsolete campaign.g.md entries
  • Update purgeOrphanedCampaignOrchestrators() to no-op (files are now debug artifacts)
  • Update all related tests to verify new behavior
  • Remove previously tracked .campaign.g.md files from git
  • Run make recompile and verify all workflows compile correctly
  • Update campaign documentation to reflect new behavior

Documentation Updates (Latest Commit)

  • Updated campaign overview explaining debug artifact status
  • Updated campaign specs documentation with clear notes
  • Updated CLI commands documentation
  • Updated getting started guide
  • Fixed links in labs.mdx to point to source .campaign.md files
  • Updated workflow file list in copilot-cli-checksum-verification.md

File Tracking Before vs After

Before:

✓ *.campaign.md (source) - tracked
✓ *.campaign.g.md (generated orchestrator) - tracked
✓ *.campaign.g.lock.yml (compiled) - tracked

After:

✓ *.campaign.md (source) - tracked
✗ *.campaign.g.md (generated orchestrator) - NOT tracked (debug artifact)
✓ *.campaign.g.lock.yml (compiled) - tracked

Verification

  • ✅ Tests pass: go test ./pkg/cli/gitattributes_test.go ./pkg/cli/git.go
  • ✅ Campaign compilation works: ./gh-aw compile *.campaign.md
  • ✅ Files are generated locally but ignored by git
  • ✅ Only .campaign.md and .campaign.g.lock.yml files remain tracked
  • ✅ Recompile succeeds: make recompile
  • .gitattributes no longer contains campaign.g.md entries
  • .gitignore contains campaign.g.md pattern with explanatory comments
  • ✅ Documentation updated to reflect debug artifact status

Developer Experience

Developers can still:

  1. Run gh aw compile to generate .campaign.g.md files locally
  2. Review the generated markdown for debugging
  3. Compile changes to .campaign.g.lock.yml files (which ARE committed)
  4. Delete .campaign.g.md files manually if desired (they'll regenerate on next compile)

Users never see the .campaign.g.md files in git diffs or PR reviews, reducing noise.

Original prompt

For campaigns, treat the generated orchestrator markdown *.campaign.g.md as a debug artifact, not something users must see/commit.


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copilot AI and others added 2 commits January 1, 2026 20:35
- Add `*.campaign.g.md` to `.gitignore` to prevent committing generated files
- Remove `*.campaign.g.md` from `.gitattributes` (no longer needed if not committed)
- Update `ensureGitAttributes()` to remove obsolete campaign.g.md entries
- Update `purgeOrphanedCampaignOrchestrators()` to no-op (files are now debug artifacts)
- Update tests to verify campaign.g.md entries are NOT in .gitattributes
- Remove previously tracked .campaign.g.md files from git (will be regenerated locally)
- Add documentation comments explaining the new behavior

Co-authored-by: mnkiefer <[email protected]>
These files are now treated as debug artifacts and should not be committed.
They will be regenerated locally when running `gh aw compile`.

Co-authored-by: mnkiefer <[email protected]>
@mnkiefer mnkiefer marked this pull request as ready for review January 1, 2026 20:42
Copilot AI changed the title [WIP] Treat generated orchestrator markdown as debug artifact Treat campaign orchestrator markdown (*.campaign.g.md) as debug artifacts Jan 1, 2026
Copilot AI requested a review from mnkiefer January 1, 2026 20:48
@mnkiefer
Copy link
Contributor

mnkiefer commented Jan 1, 2026

@copilot: Update campaign spec documentation.

Update all campaign documentation to clarify that .campaign.g.md files are:
- Generated locally as debug artifacts during compilation
- Not committed to git (in .gitignore)
- Only source .campaign.md and compiled .campaign.g.lock.yml are tracked

Changes:
- Update campaign overview, specs, CLI commands, and getting started guides
- Fix links in labs.mdx to point to .campaign.md instead of .campaign.g.md
- Update workflow file list in copilot-cli-checksum-verification.md

Co-authored-by: mnkiefer <[email protected]>
Copy link
Contributor Author

Copilot AI commented Jan 1, 2026

@copilot: Update campaign spec documentation.

Updated campaign documentation to clarify that .campaign.g.md files are debug artifacts not committed to git. Changes include:

  • Campaign overview, specs, CLI commands, and getting started guides now explain the debug artifact status
  • Fixed links in labs.mdx to point to source .campaign.md files instead of .campaign.g.md
  • Updated workflow file lists

Commit: 65c999d

@mnkiefer mnkiefer merged commit f52d5d5 into main Jan 1, 2026
91 of 92 checks passed
@mnkiefer mnkiefer deleted the copilot/update-campaign-markdown-handling branch January 1, 2026 21:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants