Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Jan 27, 2026

Plan: Make "noop" safe output type always enabled ✅

  • Understand the current implementation
    • Locate where auto-enabled handlers are defined
    • Verify current behavior for missing_tool and missing_data
    • Understand how noop is currently configured
  • Make minimal code changes
    • Add "noop" to autoEnabledHandlers map in compiler_safe_outputs_config.go
    • Add "noop" handler to handlerRegistry in compiler_safe_outputs_config.go
  • Create/update tests
    • Add test for noop auto-enablement
    • Verify existing tests still pass
  • Validate changes
    • Run unit tests for safe outputs config
    • Run related noop and missing_tool tests
    • Manually compile test workflow and verify noop is included
    • Format and lint code
  • Post-review actions
    • Merge main branch
    • Recompile all workflows

Summary

Successfully implemented the requirement that "noop" safe output type should always be enabled, just like "missing_tool" and "missing_data".

Changes Made

File: pkg/workflow/compiler_safe_outputs_config.go

  1. Added "noop": true to autoEnabledHandlers map (line 17)
  2. Added noop handler to handlerRegistry (lines 406-414)

File: pkg/workflow/compiler_safe_outputs_config_test.go
3. Added TestAutoEnabledHandlers test covering all auto-enabled handlers

Verification

Unit Tests: All tests pass including new TestAutoEnabledHandlers
Integration Tests: Existing noop and missing_tool conclusion tests pass
Manual Verification: Compiled test workflow includes noop with default config {"max":1}
Post-merge: Merged main branch and recompiled all workflows successfully

Handler Configuration Example

When a workflow has safe-outputs configured, the compiled workflow now includes:

{
  "create_issue": {"max": 1},
  "missing_data": {},
  "missing_tool": {},
  "noop": {"max": 1}
}

All three built-in handlers (missing_tool, missing_data, noop) are automatically enabled as fallbacks, ensuring consistent behavior across all workflows.

Original prompt

The "noop" safe output type is a built in tool that should always be enabled, just like missing_tool and missing_data.


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI and others added 2 commits January 27, 2026 19:14
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
- Added "noop" to autoEnabledHandlers map
- Added "noop" handler to handlerRegistry
- Added comprehensive test for auto-enabled handlers
- Ensures noop is always available as fallback like missing_tool and missing_data

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copilot AI changed the title [WIP] Add noop safe output type as a built-in tool Auto-enable noop safe output handler Jan 27, 2026
Copilot AI requested a review from pelikhan January 27, 2026 19:28
@pelikhan pelikhan marked this pull request as ready for review January 27, 2026 20:00
@pelikhan
Copy link
Contributor

@copilot merge main and recompile

Copilot AI and others added 2 commits January 27, 2026 20:19
…-output-type

# Conflicts:
#	.github/workflows/security-alert-burndown.campaign.lock.yml
- Merged origin/main into branch
- Resolved conflict by accepting deletion of security-alert-burndown.campaign.lock.yml
- Recompiled all workflows to include noop handler in auto-enabled handlers
- Added new generated campaign files

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Jan 27, 2026

@copilot merge main and recompile

Done! Merged main and recompiled all workflows in commit f1b55f1. The noop handler is now included in all compiled workflows alongside missing_tool and missing_data.

Copilot AI requested a review from pelikhan January 27, 2026 20:21
@pelikhan pelikhan merged commit e827227 into main Jan 27, 2026
17 checks passed
@pelikhan pelikhan deleted the copilot/add-noop-safe-output-type branch January 27, 2026 21:05
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