Skip to content

Daily Breaking Change Analysis - 2026-02-16 #16119

@github-actions

Description

@github-actions

Summary

  • Total Breaking Changes: 3
  • Severity: HIGH
  • Commits Analyzed: 1 (d97c388)
  • Status: ⚠️ Requires Immediate Review

Three changes in the latest commit are breaking according to scratchpad/breaking-cli-rules.md but are marked as minor or patch changesets instead of major.

Critical Breaking Changes

Commit Category Change Impact Changeset
d97c388 Schema Field Removal Removed sandbox: false option Users using sandbox: false must update to sandbox.agent: false minor-disable-agent-sandbox-only.md (should be major)
d97c388 Behavior Change Status comments now opt-in (was automatic) Workflows expecting automatic status comments will lose them unless status-comment: true is added minor-decouple-status-comment.md (should be major)
d97c388 Enum Value Removal Removed sandbox.agent: srt value Workflows using SRT backend must migrate to AWF patch-remove-srt-support.md (should be major)
Full Code Diff Analysis

Change 1: Schema Field Removal - sandbox: false

File: .changeset/minor-disable-agent-sandbox-only.md

Current Changeset Type: minor
Should Be: major

Description: Removed the deprecated top-level sandbox: false option and replaced it with sandbox.agent: false

Breaking Rule Violated:

  • ✅ "Removing fields from workflow frontmatter schema" (Category 5: Schema Changes)

Why This Is Breaking:

  • Existing workflows using sandbox: false will fail validation or behave unexpectedly
  • Schema field removal requires major version bump per breaking-cli-rules.md
  • Even though deprecated and auto-migration exists (gh aw fix), the removal itself is breaking

Migration Impact: Users must run gh aw fix or manually change sandbox: false to sandbox.agent: false


Change 2: Default Behavior Change - Status Comments

File: .changeset/minor-decouple-status-comment.md

Current Changeset Type: minor
Should Be: major

Description: Status comments decoupled from ai-reaction emoji - now must be explicitly enabled

Breaking Rule Violated:

  • ✅ "Changing default values for flags" (Category 4: Behavior Changes)
  • ✅ "Changing default behavior that users may rely on"

Why This Is Breaking:

  • Before: Status comments were automatic (opt-out behavior)
  • After: Status comments require explicit status-comment: true (opt-in behavior)
  • Users who relied on automatic status comments will see different behavior without code changes
  • Changes semantics of existing workflows without user action

Migration Impact: Users who want status comments must add status-comment: true to their workflow frontmatter


Change 3: Enum Value Removal - SRT Backend

File: .changeset/patch-remove-srt-support.md

Current Changeset Type: patch
Should Be: major

Description: Removed the Anthropic Sandbox Runtime (SRT) backend option

Breaking Rule Violated:

  • ✅ "Removing allowed values from enums" (Category 5: Schema Changes)

Why This Is Breaking:

  • Removes sandbox.agent: srt as an allowed value
  • Workflows explicitly using sandbox.agent: srt must change configuration
  • Even though auto-migration to sandbox.agent: awf exists, the removal is breaking per rules

Migration Impact: Workflows using sandbox.agent: srt will be auto-migrated to sandbox.agent: awf


Breaking Change Decision Tree Applied

For all three changes:

Is the change removing or renaming a command, subcommand, or flag?
├─ sandbox: false removal: YES → BREAKING ✅
├─ status-comment behavior: NO (but changes default) → Continue
└─ sandbox.agent: srt: NO (but removes enum value) → Continue

Does the change alter default behavior that users may rely on?
├─ status-comment: YES → BREAKING ✅
└─ Other changes: Continue

Does the change remove schema fields or make optional fields required?
├─ sandbox: false: YES → BREAKING ✅
└─ sandbox.agent: srt: YES (removes enum value) → BREAKING ✅
Commit Details

d97c388 - Clean-up temporary ID pattern and add deferral logic to update-project (#16098)

Date: 2026-02-16 15:15:15 +0100
Author: Mara Nikola Kiefer
Type: Grafted commit (initial codebase addition in shallow clone)

Changesets Added:

  • 2 minor changesets (should be major)
  • 1 patch changeset (should be major)
  • 61 other patch changesets (correctly categorized)

Note: This is a grafted commit in a shallow CI clone, so file changes show as additions rather than modifications. The actual changes are reflected in the changeset files.

Action Checklist

Complete the following items to address these breaking changes:

  • Review all three breaking changes - Verify each change is correctly categorized as breaking
  • Update changeset types to major - Change the following changeset files:
    • .changeset/minor-disable-agent-sandbox-only.md → Change "gh-aw": minor to "gh-aw": major
    • .changeset/minor-decouple-status-comment.md → Change "gh-aw": minor to "gh-aw": major
    • .changeset/patch-remove-srt-support.md → Change "gh-aw": patch to "gh-aw": major
  • Add migration guidance to each changeset - Include clear migration instructions showing users how to update their workflows
  • Document breaking changes in CHANGELOG.md - Add entries under "Breaking Changes" section with user-facing descriptions
  • Verify backward compatibility was considered - Confirm that alternatives to breaking were evaluated (note: some changes mention auto-migration with gh aw fix)

Recommendations

  1. Update Changeset Types: The primary issue is incorrect changeset categorization. These are breaking changes and require major version bump per scratchpad/breaking-cli-rules.md.

  2. Migration Path: Good news - migration tools exist (gh aw fix mentioned). Ensure migration guidance is prominent in:

    • Updated changeset files
    • CHANGELOG.md
    • Release notes
    • Error messages when old config is detected
  3. Deprecation Timeline: The changesets mention "deprecated" options. If these were properly deprecated in a previous minor release with warnings, document that timeline to provide context for the breaking change.

  4. Version Bump Strategy: With multiple breaking changes, one major version bump covers all three. The release script will select the highest-priority bump type (major) from all changesets.

Reference

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

Breaking Change Categories Triggered:

  • Category 4: Behavior Changes (default values)
  • Category 5: Schema Changes (removing fields, removing enum values)

Workflow Run: §22066228939

Once all checklist items are complete, close this issue.

⚠️ Compatibility report by Breaking Change Checker

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