Skip to content

[Safe Outputs Conformance] USE-003: 31 handlers with staged mode missing required 🎭 emoji in preview output #16887

@github-actions

Description

@github-actions

Conformance Check Failure

Check ID: USE-003
Severity: LOW
Category: Usability

Problem Description

31 handler files implement staged mode (they reference staged: true, isStaged, or GH_AW_SAFE_OUTPUTS_STAGED) but do not include the required 🎭 emoji or "Staged Mode Preview" heading in their preview output. The specification requires staged mode previews to use this formatting so users can visually distinguish staged (no-write) previews from actual actions.

Affected Components

View all 31 affected files
  • actions/setup/js/add_comment.cjs
  • actions/setup/js/add_labels.cjs
  • actions/setup/js/add_reviewer.cjs
  • actions/setup/js/assign_milestone.cjs
  • actions/setup/js/assign_to_agent.cjs
  • actions/setup/js/assign_to_user.cjs
  • actions/setup/js/autofix_code_scanning_alert.cjs
  • actions/setup/js/close_discussion.cjs
  • actions/setup/js/close_issue.cjs
  • actions/setup/js/close_pull_request.cjs
  • actions/setup/js/create_discussion.cjs
  • actions/setup/js/create_issue.cjs
  • actions/setup/js/create_project.cjs
  • actions/setup/js/create_project_status_update.cjs
  • actions/setup/js/hide_comment.cjs
  • actions/setup/js/link_sub_issue.cjs
  • actions/setup/js/mark_pull_request_as_ready_for_review.cjs
  • actions/setup/js/push_to_pull_request_branch.cjs
  • actions/setup/js/remove_labels.cjs
  • actions/setup/js/reply_to_pr_review_comment.cjs
  • actions/setup/js/resolve_pr_review_thread.cjs
  • actions/setup/js/safe_output_handler_manager.cjs
  • actions/setup/js/safe_output_manifest.cjs
  • actions/setup/js/safe_output_processor.cjs
  • actions/setup/js/safe_output_unified_handler_manager.cjs
  • actions/setup/js/unassign_from_user.cjs
  • actions/setup/js/update_handler_factory.cjs
  • actions/setup/js/update_project.cjs
  • actions/setup/js/update_release.cjs
  • actions/setup/js/update_runner.cjs
  • actions/setup/js/upload_assets.cjs

Current Behavior

Handlers detect staged mode and skip actual API writes, but their preview output does not include the 🎭 emoji or "Staged Mode Preview" heading. Users reviewing workflow run logs cannot easily tell at a glance that the output is a preview rather than a real action.

Expected Behavior

When a handler runs in staged mode, its output to the action summary or log MUST include the 🎭 emoji and a "Staged Mode Preview" label. The canonical format from staged_preview.cjs should be used:

if (isStaged) {
  core.info('🎭 Staged Mode Preview — no changes were written');
  // ...render preview content...
}

Remediation Steps

This task can be assigned to a Copilot coding agent with the following steps:

  1. Review actions/setup/js/staged_preview.cjs and actions/setup/js/messages_staged.cjs for the canonical staged mode preview format.
  2. For each file in the list above, locate the staged mode branch.
  3. Ensure the staged mode branch calls the shared preview function from staged_preview.cjs, or add a 🎭 Staged Mode Preview heading to the output.
  4. Prefer delegation to the shared helper over per-handler duplication.

Verification

After remediation, verify the fix by running:

bash scripts/check-safe-outputs-conformance.sh

USE-003 should pass without errors.

References

  • actions/setup/js/staged_preview.cjs
  • actions/setup/js/messages_staged.cjs
  • Safe Outputs Specification: docs/src/content/docs/reference/safe-outputs-specification.md
  • Conformance Checker: scripts/check-safe-outputs-conformance.sh
  • Run ID: §22191779279
  • Date: 2026-02-19

Generated by Daily Safe Outputs Conformance Checker

  • expires on Feb 20, 2026, 5:14 PM UTC

Metadata

Metadata

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