Uploaded image for project: 'OpenShift Pipelines'
  1. OpenShift Pipelines
  2. SRVKP-9172

Enhance Group-Based ApprovalTask to Preserve Member Messages

XMLWordPrintable

    • 3
    • False
    • Hide

      None

      Show
      None
    • False
    • For all users in a group, the message they add when they approve / reject, will now be preserved.
    • Enhancement
    • Done
    • Pipelines Sprint Pioneers 41

       

      Story:
      As a pipeline approver who approves or rejects a group-based ApprovalTask,
      I want my approval message to be visible at both the group and individual member levels,
      so that other stakeholders can easily understand the reasoning behind approval decisions without drilling into nested group member details.


      Background

      Manual Approval Gate supports both individual and group approvers.
      When users approve/reject as part of a group, they can include a message explaining their decision.

      Currently:

      • Group-level messages are not consistently visible.
      • Individual member messages are buried inside nested data structures.
      • actions.go doesn’t properly store messages in the UserDetails struct.

      This story addresses those issues by ensuring messages propagate correctly from CLI → group → individual level.


       Problem Summary

      1. Group-level message visibility – When multiple group members approve/reject, the latest message should be shown at the group level.
      1. Individual message preservation – Each member’s message should remain in the groupMembers array.
      1. Proper propagation – Ensure messages are stored in both approver.Message (group) and user.Message (individual).

       Out of Scope

      • Timestamps or message versioning

       Dependencies

      • Uses existing Go modules (go.mod)
      • No external services or APIs involved

       Acceptance Criteria

      Scenario Expected Behavior
      User provides -m flag Message is stored at both group and individual levels
      User omits -m flag Message remains empty
      Multiple group members approve Group-level message shows latest responder’s message; individual messages preserved

       INVEST Checklist

      • Independent – no external blockers
      • Negotiable – scoped to backend only
      • Valuable – improves visibility of approvals
      • Estimable – 1–2 small code changes
      • Small – confined to actions.go and message flow
      • Testable – can be validated via CLI and status check

      Definition of Done

      • Code implemented, reviewed, and merged
      • Unit tests added or updated
      • CI pipelines passing cleanly
      • Verified in staging or canary

       

              rh-ee-apalit Anwesha Palit
              rh-ee-apalit Anwesha Palit
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Estimated:
                  Original Estimate - 2 minutes
                  2m
                  Remaining:
                  Remaining Estimate - 1 minute
                  1m
                  Logged:
                  Time Spent - Not Specified Time Not Required
                  Not Specified