Campaign safe outputs: Update project with hourly schedule#11994
Campaign safe outputs: Update project with hourly schedule#11994
Conversation
Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
|
@copilot dispatch_workflow only was too strict. Bring back capabilities for:
|
…tputs for campaign orchestrators Bring back capabilities for campaign orchestrators to: - update-project: Update GitHub Projects dashboard (max: 10, governed by max-project-updates-per-run) - create-project-status-update: Create project status updates for summaries (max: 1) Changes: - pkg/campaign/orchestrator.go: Add UpdateProjects and CreateProjectStatusUpdates safe outputs - pkg/campaign/orchestrator_test.go: Update tests to verify project safe outputs are present - pkg/cli/compile_orchestrator.go: Serialize project safe outputs to generated .campaign.g.md frontmatter - .github/workflows/security-alert-burndown.campaign.lock.yml: Recompiled with project handler step Campaign orchestrators now support: - dispatch-workflow (max: 3) - Dispatch worker workflows - update-project (max: 10) - Update campaign dashboards - create-project-status-update (max: 1) - Create campaign summaries This maintains separation of concerns: orchestrators coordinate and maintain dashboards, while workers handle create-issue and add-comment operations. Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Done! I've restored Changes in commit 6002172: Campaign orchestrators now support:
The security-alert-burndown campaign has been recompiled with the project handler step that processes both project-related safe outputs. Orchestrators can now maintain campaign dashboards and create status summaries while workers handle create-issue and add-comment operations (if needed). |
|
@copilot More realistic max default items on the safe outputs. There are much too restrictive. |
…listic values Increase default max values for campaign orchestrator safe outputs: - dispatch-workflow: 3 → 10 (allow more workers per run) - update-project: 10 → 100 (handle larger discovery sets, still governed by max-project-updates-per-run) - create-project-status-update: 1 → 10 (allow multiple status updates per run) Changes: - pkg/campaign/orchestrator.go: Update default max values with comments - pkg/campaign/orchestrator_test.go: Update test expectations - pkg/parser/schemas/main_workflow_schema.json: Increase dispatch-workflow max from 3 to 50 - pkg/workflow/dispatch_workflow.go: Update hard-coded cap from 3 to 50 - .github/workflows/security-alert-burndown.campaign.lock.yml: Recompiled with new defaults The previous defaults were too restrictive for campaigns that can discover 100+ items per run. New defaults are more realistic while still governed by campaign-specific governance policies (max-project-updates-per-run, etc.). Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Done! I've increased the safe output defaults to more realistic values in commit 16d9357. New defaults for campaign orchestrators:
Schema updates:
The previous values were too restrictive for campaigns that can discover 100+ items per run. The new defaults allow campaigns to process discovered items more effectively while still respecting governance policies like |
Changes per new requirements: - Campaigns now run every hour by default (cron: "0 * * * *" instead of daily) - dispatch-workflow: back to max 3 (was temporarily 10) - create-project-status-update: back to max 1 (was temporarily 10) - update-project: remains at 100 default (governed by max-project-updates-per-run) Changes: - pkg/campaign/orchestrator.go: Update schedule to hourly, adjust safe output defaults - pkg/campaign/orchestrator_test.go: Update test expectations for hourly schedule and max values - .github/workflows/security-alert-burndown.campaign.lock.yml: Recompiled with new schedule and values With hourly runs, campaigns can respond more quickly to issues while keeping safe output limits conservative to avoid overwhelming the system. Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
|
@copilot Restore specs/artifacts.md |
Restore specs/artifacts.md to its state before commit 6002172. This auto-generated file was accidentally modified when recompiling workflows. Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Campaign safe outputs: Complete ✅
Final Configuration
Campaign orchestrators now have:
Schedule: Hourly (
0 * * * *) for better responsivenessSafe Outputs:
dispatch-workflow: max 3 per runupdate-project: default 100 (governed by max-project-updates-per-run)create-project-status-update: max 1 per runArchitecture:
Changes Summary
Analysis (Commit 1):
campaign-safe-outputs-analysis.md: Comprehensive analysis of PR chore: make orchestrator dispatch only #11855 changesRestore Project Capabilities (Commit 2):
update-projectandcreate-project-status-updateback to orchestratorsIncrease Limits (Commit 3):
Adjust to Hourly + Conservative Limits (Commit 4):
Restore artifacts.md (Commit 5):
Files Modified:
pkg/campaign/orchestrator.gopkg/campaign/orchestrator_test.gopkg/cli/compile_orchestrator.gopkg/parser/schemas/main_workflow_schema.jsonpkg/workflow/dispatch_workflow.go.github/workflows/security-alert-burndown.campaign.lock.ymlspecs/artifacts.mdOriginal prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.