Missing handler's file name information in the http "init" request?


I am new to the serverless framework and Javascript. Currently, I am trying to implement a custom javascript runtime that could work with Serverless + Openwhisk (using the serverless-openwhisk plugin).

My setting is: I use the Serverless framework to deploy javascript applications to a local Openwhisk instance and this instance uses my custom javascript runtime (i.e. my docker image). I am running this example: https://github.com/serverless/examples/tree/v3/openwhisk-node-simple-http-endpoint and I am observing the http init request being sent to my runtime (by Openwhisk) after I run serverless invoke --function time.
The serverless.yml contains this info:

    handler: handler.time
      - http: GET time

The init request being received by my runtime is like this:

{"value":{"name":"my_service-dev-time","binary":true,"main":"time","code":" <some-binary-code> ..."}

In this request, the value of the key main is only time and not handler.time (as specified in the serverless.yml). The file name handler is not included in the whole init request. My questions are:

  1. Is the file name of the handler function not sent to the Openwhisk by the Serverless framework? (or is it later dropped by Openwhisk while sending the init request to the runtime?).
  2. When such an init request is received, how does a javascript runtime locate the file of the function time? Does it search through all the javascript files?

Thank you in advance!