Add concurrency.queue support and queue-aware conclusion job defaults#31764
Conversation
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
concurrency.queue support and queue-aware conclusion job defaults
|
@copilots features.group-concurrency-queue: false should disable the missiong of queue: max. |
|
@copilot features.group-concurrency-queue: false should disable the missiong of queue: max. |
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Addressed in 81b63d0 with the same fix: setting
Fixed in 81b63d0. |
|
@copilot recompile workflows and check conclusion used queue |
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Ran |
There was a problem hiding this comment.
Pull request overview
Adds end-to-end support for GitHub Actions’ new concurrency.queue field in schema + engine/workflow parsing, and updates the compiler-generated conclusion job to default to queue: max (with a feature flag to opt out).
Changes:
- Extend the main workflow schema (top-level
concurrencyandengine.concurrency) to allowqueue: single|max. - Preserve/serialize
queuein engine concurrency extraction and workflow concurrency passthrough logic. - Default the generated conclusion job’s concurrency to include
queue: max(controllable viafeatures.group-concurrency-queue), and regenerate workflow lockfiles accordingly.
Show a summary per file
| File | Description |
|---|---|
| pkg/workflow/notify_comment.go | Adds queue-aware conclusion job concurrency generation + feature-flag gating. |
| pkg/workflow/notify_comment_test.go | Adds tests for conclusion job concurrency queue default and opt-out behavior. |
| pkg/workflow/engine.go | Includes queue when serializing engine.concurrency object form to YAML. |
| pkg/workflow/engine_concurrency_test.go | Adds coverage for queue serialization in engine concurrency parsing. |
| pkg/workflow/compiler_orchestrator_workflow_test.go | Ensures top-level concurrency extraction preserves queue while stripping gh-aw extensions. |
| pkg/parser/schemas/main_workflow_schema.json | Adds concurrency.queue support (top-level and engine concurrency objects). |
| pkg/constants/spec_test.go | Verifies the new group-concurrency-queue feature flag constant matches spec. |
| pkg/constants/feature_constants.go | Introduces GroupConcurrencyQueueFeatureFlag constant. |
| pkg/constants/constants_test.go | Adds the new feature flag constant to the constants test matrix. |
| .github/workflows/workflow-skill-extractor.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/workflow-normalizer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/workflow-health-manager.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/workflow-generator.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/weekly-safe-outputs-spec-review.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/weekly-issue-summary.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/weekly-editors-health-check.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/weekly-blog-post-writer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/visual-regression-checker.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/video-analyzer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/update-astro.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/unbloat-docs.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/ubuntu-image-analyzer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/typist.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/tidy.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/test-workflow.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/test-quality-sentinel.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/test-project-url-default.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/test-dispatcher.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/test-create-pr-error-handling.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/terminal-stylist.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/technical-doc-writer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/super-linter.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/sub-issue-closer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/step-name-alignment.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/static-analysis-report.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/stale-repo-identifier.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/stale-pr-cleanup.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/spec-librarian.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/spec-extractor.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/spec-enforcer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-workflow-call.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-workflow-call-with-inputs.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-update-cross-repo-pr.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-test-tools.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-temporary-id.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-service-ports.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-project.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-pi.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-opencode.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-multi-pr.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-gemini.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-crush.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-create-cross-repo-pr.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-copilot.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-copilot-arm.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-codex.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency (plus deterministic heredoc token updates). |
| .github/workflows/smoke-claude.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-ci.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-call-workflow.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency (plus deterministic heredoc token updates). |
| .github/workflows/smoke-agent-scoped-approved.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-agent-public-none.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-agent-public-approved.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-agent-all-none.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/smoke-agent-all-merged.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/slide-deck-maintainer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/sergo.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/semantic-function-refactor.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/security-review.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/security-compliance.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/scout.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/schema-feature-coverage.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency (plus deterministic heredoc token updates). |
| .github/workflows/schema-consistency-checker.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/safe-output-health.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/research.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/repository-quality-improver.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/repo-tree-map.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/repo-audit-analyzer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/release.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/refiner.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/refactoring-cadence.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/q.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/python-data-charts.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/prompt-clustering-analysis.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/pr-triage-agent.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/pr-nitpick-reviewer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/pr-code-quality-reviewer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/poem-bot.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/plan.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/pdf-summary.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/org-health-report.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/notion-issue-summary.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/necromancer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency (plus deterministic heredoc token updates). |
| .github/workflows/metrics-collector.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/mergefest.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/mcp-inspector.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/mattpocock-skills-reviewer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/lockfile-stats.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/layout-spec-maintainer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/jsweep.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/issue-triage-agent.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/issue-monster.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/issue-arborist.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency (plus deterministic heredoc token updates). |
| .github/workflows/instructions-janitor.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/hourly-ci-cleaner.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/hippo-embed.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/grumpy-reviewer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency (plus deterministic heredoc token updates). |
| .github/workflows/gpclean.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/go-pattern-detector.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/go-logger.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/go-fan.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/glossary-maintainer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/github-remote-mcp-auth-test.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/github-mcp-tools-report.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/github-mcp-structural-analysis.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/functional-pragmatist.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/firewall.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/firewall-escape.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/example-workflow-analyzer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/example-permissions-warning.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/duplicate-code-detector.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency (plus deterministic heredoc token updates). |
| .github/workflows/draft-pr-cleanup.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/docs-noob-tester.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/discussion-task-miner.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/dictation-prompt.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/developer-docs-consolidator.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/dev.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/dev-hawk.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/design-decision-gate.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/deployment-incident-monitor.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/dependabot-worker.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/dependabot-repair.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/dependabot-go-checker.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/dependabot-campaign.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/dependabot-burner.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/delight.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/deep-report.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/dead-code-remover.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-workflow-updater.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-token-consumption-report.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-testify-uber-super-expert.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-team-status.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-team-evolution-insights.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-syntax-error-quality.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-subagent-optimizer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-spdd-spec-planner.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-skill-optimizer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-sentrux-report.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-semgrep-scan.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-security-red-team.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-security-observability.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-secrets-analysis.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-safe-outputs-conformance.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-safe-output-optimizer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-safe-output-integrator.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-repo-chronicle.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-rendering-scripts-verifier.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-regulatory.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-performance-summary.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-otel-instrumentation-advisor.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-observability-report.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency (plus deterministic heredoc token updates). |
| .github/workflows/daily-news.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-multi-device-docs-tester.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-model-inventory.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-mcp-concurrency-analysis.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-malicious-code-scan.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-issues-report.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-hippo-learn.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-grafana-otel-instrumentation-advisor.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-geo-optimizer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-function-namer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-firewall-report.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-file-diet.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-fact.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency (plus deterministic heredoc token updates). |
| .github/workflows/daily-experiment-report.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-doc-updater.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-doc-healer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-compiler-threat-spec-optimizer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-compiler-quality.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-community-attribution.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-code-metrics.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-cli-tools-tester.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-cli-performance.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-choice-test.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-caveman-optimizer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-cache-strategy-analyzer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency (plus deterministic heredoc token updates). |
| .github/workflows/daily-aw-cross-repo-compile-check.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-astrostylelite-markdown-spellcheck.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-assign-issue-to-user.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/daily-architecture-diagram.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/craft.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/copilot-token-optimizer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/copilot-token-audit.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/copilot-session-insights.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/copilot-pr-prompt-analysis.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/copilot-pr-nlp-analysis.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/copilot-pr-merged-report.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/copilot-opt.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/copilot-cli-deep-research.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/copilot-agent-analysis.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/contribution-check.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/constraint-solving-potd.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/commit-changes-analyzer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/codex-github-remote-mcp-test.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/code-simplifier.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/code-scanning-fixer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/cloclo.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/cli-version-checker.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/cli-consistency-checker.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/claude-code-user-docs-review.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/ci-doctor.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/ci-coach.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/changeset.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/breaking-change-checker.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/brave.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/bot-detection.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/blog-auditor.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/aw-portfolio-yield.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/aw-failure-investigator.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/auto-triage-issues.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/audit-workflows.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/artifacts-summary.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/architecture-guardian.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/archie.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/approach-validator.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/api-consumption-report.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/ai-moderator.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/agent-persona-explorer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/agent-performance-analyzer.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/ace-editor.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
| .github/workflows/ab-testing-advisor.lock.yml | Regenerated lockfile to include queue: max on conclusion job concurrency. |
Copilot's findings
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 230/230 changed files
- Comments generated: 1
| func parseGroupConcurrencyQueueFeatureValue(value any) bool { | ||
| switch v := value.(type) { | ||
| case bool: | ||
| return v | ||
| case string: | ||
| normalized := strings.ToLower(strings.TrimSpace(v)) | ||
| switch normalized { | ||
| case "false", "0", "off", "no": | ||
| return false | ||
| default: | ||
| return normalized != "" | ||
| } |
|
🌑 The shadows whisper... Smoke Codex failed to deliver outputs. The oracle requires further meditation... |
|
|
|
💫 TO BE CONTINUED... Smoke Claude failed to deliver outputs! Our hero faces unexpected challenges... |
|
📰 BREAKING: Smoke Copilot is now investigating this pull request. Sources say the story is developing... |
|
🚀 Smoke Pi MISSION COMPLETE! Pi delivered. 🥧 |
|
Commit pushed:
|
Agent Container Tool Check
Result: 12/12 tools available ✅ Overall Status: PASS
|
🧪 Test Quality Sentinel ReportTest Quality Score: 91/100✅ Excellent test quality
Test Classification DetailsView All Test Scenarios
Flagged Tests — Requires ReviewNo tests were flagged. All new/modified scenarios verify observable behavior. Language SupportTests analyzed:
Verdict
📖 Understanding Test ClassificationsDesign Tests (High Value) verify what the system does:
Implementation Tests (Low Value) verify how the system does it:
Goal: Shift toward tests that describe the system's behavioral contract — the promises it makes to its users and collaborators. References: §25756975470
|
There was a problem hiding this comment.
Skills-Based Review 🧠
Applied /tdd (new feature with tests) and /zoom-out (touches multiple compiler paths: engine, conclusion job, schema, constants).
Key Themes
-
Duplicate feature-flag infrastructure —
isGroupConcurrencyQueueEnabledandparseGroupConcurrencyQueueFeatureValuebypass the existingisFeatureEnabled/getFeatureValueFromFrontmatterhelpers. This silently removesGH_AW_FEATURESenv-var override support that every other flag enjoys. (#1 comment, notify_comment.go line 634) -
Inconsistent feature-value parsing — The new
parseGroupConcurrencyQueueFeatureValueaccepts"off","no","0"as falsy, while no other feature flag does. This creates undocumented per-flag behaviour. (#2 comment, notify_comment.go line 643) -
No validation of
queueenum at compile time — Invalid strings pass through to the emitted YAML verbatim in bothengine.goandnotify_comment.go. The schema already defines the enum; the compiler should enforce it. (#3 comment, engine.go line 314) -
Structural awkwardness in
engine.go— Thepartsslice as a single-element optional is hard to reason about;cancel-in-progress: falseis already silently dropped, andqueueadds a second asymmetric case. A comment or refactor would prevent future bugs. (#5 comment, engine.go line 307)
Positive Highlights
- ✅ Clean opt-out default: feature is on unless explicitly disabled — sensible default for a new GitHub Actions capability
- ✅ Good test coverage of the happy path and the string/bool
falseopt-out cases innotify_comment_test.go - ✅ Well-documented feature constant with frontmatter usage example
- ✅ Schema additions correctly placed in both
concurrencyandengine.concurrencyobjects
Verdict
Requesting changes primarily on the feature-flag duplication (#1) — it's a correctness issue (missing env-var override) that will surprise operators who expect GH_AW_FEATURES to work uniformly. The other comments are lower severity but worth addressing before merge.
🧠 Reviewed using Matt Pocock's skills by Matt Pocock Skills Reviewer · ● 10.7M
|
@copilot review all comments, merge main and recompile |
|
PRs: #31770 fix: convert double quotes to single quotes in experiment comparison expressions; #31768 test: migrate time_delta_test.go to testify Warning Firewall blocked 6 domainsThe following domains were blocked by the firewall during workflow execution:
network:
allowed:
- defaults
- "accounts.google.com"
- "android.clients.google.com"
- "clients2.google.com"
- "contentautofill.googleapis.com"
- "safebrowsingohttpgateway.googleapis.com"
- "www.google.com"See Network Configuration for more information.
|
Comment MemoryNote This comment is managed by comment memory.It stores persistent context for this thread in the code block at the top of this comment. Warning Firewall blocked 6 domainsThe following domains were blocked by the firewall during workflow execution:
network:
allowed:
- defaults
- "accounts.google.com"
- "android.clients.google.com"
- "clients2.google.com"
- "contentautofill.googleapis.com"
- "safebrowsingohttpgateway.googleapis.com"
- "www.google.com"See Network Configuration for more information.
|
🧪 Smoke Test: Claude — Run 25756984939Core tests #1-12: ✅ All passed Overall: PASS ✅ Warning Firewall blocked 6 domainsThe following domains were blocked by the firewall during workflow execution:
network:
allowed:
- defaults
- "accounts.google.com"
- "android.clients.google.com"
- "clients2.google.com"
- "contentautofill.googleapis.com"
- "safebrowsingohttpgateway.googleapis.com"
- "www.google.com"See Network Configuration for more information.
|
There was a problem hiding this comment.
💥 Automated smoke test review - all systems nominal!
Warning
Firewall blocked 6 domains
The following domains were blocked by the firewall during workflow execution:
accounts.google.comandroid.clients.google.comclients2.google.comcontentautofill.googleapis.comsafebrowsingohttpgateway.googleapis.comwww.google.com
To allow these domains, add them to the
network.allowedlist in your workflow frontmatter:
network:
allowed:
- defaults
- "accounts.google.com"
- "android.clients.google.com"
- "clients2.google.com"
- "contentautofill.googleapis.com"
- "safebrowsingohttpgateway.googleapis.com"
- "www.google.com"See Network Configuration for more information.
💥 [THE END] — Illustrated by Smoke Claude · ● 6.8M
| group = fmt.Sprintf("%s-%s", group, data.ConcurrencyJobDiscriminator) | ||
| } | ||
| concurrency = c.indentYAMLLines(fmt.Sprintf("concurrency:\n group: %q\n cancel-in-progress: false", group), " ") | ||
| concurrencyValue := fmt.Sprintf("concurrency:\n group: %q\n cancel-in-progress: false", group) |
There was a problem hiding this comment.
Nit: consider extracting the literal "queue: max" into a named constant alongside the feature flag, so the queue policy and its enablement live next to each other.
| if queueStr, ok := queue.(string); ok && queueStr != "" { | ||
| if len(parts) > 0 { | ||
| parts[0] += fmt.Sprintf("\n queue: %s", queueStr) | ||
| } |
There was a problem hiding this comment.
Consider validating known queue values here (e.g., max, min) and emitting a warning for unknown strings, so workflow authors get earlier feedback on typos.
|
Smoke test agent was here! 🔥 Me run test. Test pass! Cave painting on your metrics. Very impressive 1,455,791 LOC! Ugh ugh! Warning Firewall blocked 6 domainsThe following domains were blocked by the firewall during workflow execution:
network:
allowed:
- defaults
- "accounts.google.com"
- "android.clients.google.com"
- "clients2.google.com"
- "contentautofill.googleapis.com"
- "safebrowsingohttpgateway.googleapis.com"
- "www.google.com"See Network Configuration for more information.
|
Smoke Test Results for PR #31764
Overall: ✅ PASS PR by Run: https://github.com/github/gh-aw/actions/runs/25756985032 Warning Firewall blocked 6 domainsThe following domains were blocked by the firewall during workflow execution:
network:
allowed:
- defaults
- "accounts.google.com"
- "android.clients.google.com"
- "clients2.google.com"
- "contentautofill.googleapis.com"
- "safebrowsingohttpgateway.googleapis.com"
- "www.google.com"See Network Configuration for more information.
|
|
📰 VERDICT: Smoke Copilot has concluded. All systems operational. This is a developing story. 🎤 |
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Done in 8d896a9. I reviewed the feedback, confirmed this branch already includes the latest |
…rtifact-compat feature flag Add reference documentation for three user-facing surfaces merged in the last 24h that had no prior documentation: - firewall.effective-token-steering (#31796): budget-warning system message injection via AWF v0.25.44+ - concurrency.queue and features.group-concurrency-queue (#31764): queue:max behavior and opt-out for compiler-generated groups - features.ghes-artifact-compat (#31664): per-workflow GHES artifact compatibility opt-in via frontmatter or GH_AW_FEATURES env var Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
New Feature
What does this feature do?
This adds first-class support for GitHub Actions’ new
concurrency.queuefield across workflow/engine parsing paths and compiler output. It also updates the generated conclusion job to usequeue: maxby default, with an explicit feature flag to opt out.Why is this feature needed?
Without queue support, workflows cannot express multi-pending concurrency behavior (
singlevsmax) introduced by Actions. This change enables queue semantics end-to-end while preserving a safe override for repositories that want legacy conclusion-job behavior.Implementation details
queue(single|max) to:concurrencyobjectengine.concurrencyobjectqueuein serialized job concurrency YAML.job-discriminator, preserve standard fields includingqueue).queue: maxon the generatedconclusionjob concurrency block.features.group-concurrency-queueto control this behavior:true/ unset: includequeue: maxfalse: omit queue from generated conclusion concurrencyGroupConcurrencyQueueFeatureFlagconstant (group-concurrency-queue).Changeset
concurrency.queuein workflow parsing and compiler output, and default generated conclusion jobs toqueue: max.✨ PR Review Safe Output Test - Run 25756984939
Warning
Firewall blocked 6 domains
The following domains were blocked by the firewall during workflow execution:
accounts.google.comandroid.clients.google.comclients2.google.comcontentautofill.googleapis.comsafebrowsingohttpgateway.googleapis.comwww.google.comSee Network Configuration for more information.