MCPcopy Create free account
hub / github.com/compozy/agh / newBridgeTestDeliveryCommand

Function newBridgeTestDeliveryCommand

internal/cli/bridge.go:642–693  ·  view source on GitHub ↗
(deps commandDeps)

Source from the content-addressed store, hash-verified

640}
641
642func newBridgeTestDeliveryCommand(deps commandDeps) *cobra.Command {
643 var (
644 message string
645 peerID string
646 threadID string
647 groupID string
648 modeRaw string
649 )
650
651 cmd := &cobra.Command{
652 Use: "test-delivery <id>",
653 Short: "Resolve a typed outbound delivery target for one bridge instance",
654 Args: exactOneNonBlankArg(),
655 RunE: func(cmd *cobra.Command, args []string) error {
656 client, err := clientFromDeps(deps)
657 if err != nil {
658 return err
659 }
660
661 mode := bridgepkg.DeliveryMode(strings.TrimSpace(modeRaw)).Normalize()
662 if mode != "" {
663 if err := mode.Validate(); err != nil {
664 return err
665 }
666 }
667
668 item, err := client.TestBridgeDelivery(
669 cmd.Context(),
670 args[0],
671 BridgeTestDeliveryRequest{
672 Message: strings.TrimSpace(message),
673 Target: BridgeDeliveryTargetInput{
674 PeerID: strings.TrimSpace(peerID),
675 ThreadID: strings.TrimSpace(threadID),
676 GroupID: strings.TrimSpace(groupID),
677 Mode: mode,
678 },
679 },
680 )
681 if err != nil {
682 return err
683 }
684 return writeCommandOutput(cmd, bridgeTestDeliveryBundle(item))
685 },
686 }
687 cmd.Flags().StringVar(&message, bridgeMessageKey, "", "Optional dry-run message label")
688 cmd.Flags().StringVar(&peerID, "peer-id", "", "Override target peer ID")
689 cmd.Flags().StringVar(&threadID, "thread-id", "", "Override target thread ID")
690 cmd.Flags().StringVar(&groupID, "group-id", "", "Override target group ID")
691 cmd.Flags().StringVar(&modeRaw, bridgeModeKey, "", "Delivery mode: direct-send or reply")
692 return cmd
693}
694
695func bridgeListBundle(items []BridgeRecord, now func() time.Time) outputBundle {
696 return listBundle(

Callers 1

newBridgeCommandFunction · 0.85

Calls 7

exactOneNonBlankArgFunction · 0.85
clientFromDepsFunction · 0.85
writeCommandOutputFunction · 0.85
bridgeTestDeliveryBundleFunction · 0.85
ValidateMethod · 0.65
TestBridgeDeliveryMethod · 0.65
NormalizeMethod · 0.45

Tested by

no test coverage detected