Skip to content

[breaking-change] Daily Breaking Change Analysis - 2026-06-23 #41073

Description

@github-actions

Summary

  • Total Breaking Changes: 1
  • Severity: HIGH
  • Commits Analyzed: 20+ PRs from last 24 hours (2026-06-22 to 2026-06-23)
  • Status: ⚠️ Requires Immediate Review

Critical Breaking Changes

Commit File Category Change Impact
PR #40897 pkg/parser/schemas/main_workflow_schema.json Schema Changes Removed copilot-sdk-driver property from engine object gh aw compile fails for workflows using engine.copilot-sdk-driver; schema enforces additionalProperties: false
Full Code Diff Analysis

Detailed Commit Analysis

PR #40897: Add shared engine.driver field with @earendil-works/pi-agent-core built-in driver

  • Schema change: The engine object in pkg/parser/schemas/main_workflow_schema.json has additionalProperties: false
  • Removed property: copilot-sdk-driver was removed from the allowed engine properties list
  • Added property: driver replaces it as the canonical field name
  • Runtime backward compat: pkg/workflow/engine.go still parses copilot-sdk-driver and maps it to the internal Driver field — workflows still execute correctly
  • But schema validation fails: Since additionalProperties: false, gh aw compile will reject workflows with engine.copilot-sdk-driver via JSON schema validation error
  • Codemod available: gh aw fix --write auto-migrates engine.copilot-sdk-driverengine.driver via pkg/cli/codemod_engine_driver.go
  • Changeset: .changeset/minor-pi-agent-core-driver.md — tagged minor, but per breaking CLI rules this is a major change (schema field removal with additionalProperties: false)

Breaking Change Patterns Detected

Schema Field Removal (Category: Schema Changes)

Decision tree:

Is it removing schema fields or making optional fields required?
├─ YES → BREAKING ✓

From pkg/parser/schemas/main_workflow_schema.json engine_config object:

  • additionalProperties: false is enforced
  • copilot-sdk-driver is absent from current properties list: ['id', 'version', 'model', 'model-provider', ..., 'driver']
All Commits Analyzed

PRs Analyzed (last 24 hours)

PR Title CLI Impact
#40897 Add shared engine.driver field ⚠️ BREAKING — schema field removal
#40903 Add engine-level model-provider selection i️ Only workflow/lock file changes; engine.llm-provider silently ignored (no schema impact)
#40877 Expose AWF platform.type via sandbox.agent.platform ✅ Additive schema change only
#40822 Rename --skip-secret, --disable-security-scanner, --disable-release-bump to --no-* i️ Old flags kept as hidden aliases — backward compatible but no deprecation warnings per policy
#40928 Centralized slash-command status comments update ✅ Not CLI-related
#40915 feat(merge-pull-request): refuse merge with no upstream PR ✅ Not CLI-related
#40887 fix: pass through supported local and Docker action refs ✅ Bug fix
#40882 fix(cache-memory): ensure detection on safe outputs ✅ Bug fix
Others Docs, community, lock file updates, infra fixes ✅ Not CLI-related

Notable non-breaking concern — PR #40822: Renames 3 flags without deprecation warnings. Per the breaking change policy, deprecated flags should print a warning to stderr. The MarkHidden() approach preserves backward compatibility but violates deprecation guidelines. No changeset was added for these flag renames.

Action Checklist

Complete the following items to address these breaking changes:

  • Review all breaking changes detected — Verify that copilot-sdk-driver schema removal is correctly categorized as breaking (schema enforces additionalProperties: false)
  • Create a changeset file in .changeset/ directory — Update .changeset/minor-pi-agent-core-driver.md bump type from minormajor, or create a new major-remove-copilot-sdk-driver-schema.md. Specify major in the YAML frontmatter. See scratchpad/changesets.md for format details.
  • Add migration guidance to changeset — Include: "Replace engine.copilot-sdk-driver: <path> with engine.driver: <path>, or run gh aw fix --write to auto-migrate."
  • Document breaking changes in CHANGELOG.md — Add entry under "Breaking Changes": engine.copilot-sdk-driver removed from schema; engine.driver is the canonical field name
  • Verify backward compatibility was considered — Runtime parse still works; gh aw fix --write codemod migrates automatically
  • Address flag deprecation warnings (PR fix(cli): rename --skip-secret, --disable-security-scanner, --disable-release-bump to --no-* convention; fix docs gaps #40822) — Replace MarkHidden() with MarkDeprecated() for --disable-security-scanner, --skip-secret, --disable-release-bump so users receive stderr warnings per policy

Recommendations

  1. Immediate: Upgrade .changeset/minor-pi-agent-core-driver.md bump type from minor to major to correctly signal the breaking schema change per scratchpad/breaking-cli-rules.md.
  2. Migration: Users with engine.copilot-sdk-driver in workflows must run gh aw fix --write before the next release to avoid compile failures.
  3. Consider: Adding a parse-time deprecation warning (stderr) when copilot-sdk-driver is encountered, to help users discover affected workflows before release.
  4. Flag deprecation (PR fix(cli): rename --skip-secret, --disable-security-scanner, --disable-release-bump to --no-* convention; fix docs gaps #40822): Replace cobra Flags().MarkHidden() with Flags().MarkDeprecated() so scripts using old flag names see clear migration guidance.

Reference

See scratchpad/breaking-cli-rules.md for the complete breaking change policy.


Once all checklist items are complete, close this issue.

References:

⚠️ Compatibility report by Breaking Change Checker · 89.1 AIC · ⌖ 10.9 AIC · ⊞ 4.9K ·

  • expires on Jun 25, 2026, 8:02 AM UTC-08:00

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions