func (s *ShardRPCServer) GetSlotNumber(ctx context.Context, req *pb.SlotNumberRequest) (*pb.SlotNumberResponse, error) {
	mgr, err := s.sm.GetManager(req.ShardID)
	if err != nil {
		return nil, err
	}

	node, err := mgr.Chain.Tip()
	if err != nil {
		return nil, err
	}

	// TODO: add calculated slot here in addition to tip slot
	return &pb.SlotNumberResponse{
		BlockHash: node.BlockHash[:],
		TipSlot:   node.Slot,
	}, nil
}
// GetSlotNumber gets the current tip slot and hash.
GetSlotNumber gets the current tip slot and hash.
// GetSlotNumber gets the current tip slot and hash .
func (s *ShardRPCServer) GetSlotNumber(ctx context.Context, req *pb.SlotNumberRequest) (*pb.SlotNumberResponse, error) {
	mgr, err := s.sm.GetManager(req.ShardID)
	if err != nil {
		return nil, err
	}
	node, err := mgr.Chain.Tip()
	if err != nil {
		return nil, err
	}
	return &pb.SlotNumberResponse{
		BlockHash: node.BlockHash[:],
		TipSlot:   node.Slot,
	}, nil
}
func ( s * ShardRPCServer ) GetSlotNumber ( ctx context . Context , req * pb . SlotNumberRequest ) ( * pb . SlotNumberResponse , error ) { mgr , err := s . sm . GetManager ( req . ShardID ) if err != nil { return nil , err } node , err := mgr . Chain . Tip ( ) if err != nil { return nil , err } return & pb . SlotNumberResponse { BlockHash : node . BlockHash [ : ] , TipSlot : node . Slot , } , nil }
GetSlotNumber gets the current tip slot and hash.
GetSlotNumber gets the current tip slot and hash .
// TODO: add calculated slot here in addition to tip slot