         isMainGraph = payload.name == runtime.namespace + '/' + runtime.graph.name
         p = if isMainGraph then getGraphSource(runtime) else getComponentSource(runtime, payload.name)
         return p.then (payload) ->
-          sendAck connection, { protocol: 'component', command: 'source', payload: payload }
+          return { protocol: 'component', command: 'source', payload: payload }
     else
-        return Promise.reject("Unknown FBP command component:#{command}: #{payload}")
+        return Promise.reject(new Error("Unknown FBP command component:#{command}: #{payload}"))
     return
 
-sendAck = (connection, msg) ->
-    delete msg.payload.secret
-    connection.send msg
 
 handleGraphCommand = (command, payload, connection, runtime) ->
     request = { protocol: 'graph', command: command, payload: payload }

            type: 'any' # FIXME
            addressable: false # FIXME
            required: false # FIXME
    connection.send
        protocol: 'runtime'
        command: 'ports'
        payload: ports

sendPacketCmd = (runtime, port, event, payload) ->
    return console.log "WARN: sendPacket, unknown event #{event}" if event is not 'data'

    if not p
      console.error("handler for #{contents.protocol}:#{contents.command} did not return a Promise")

    p.then (response) ->
      if not validResponse(response)
        throw new Error("Invalid FBP response to #{contents} : #{response}")
      sendResponse connection, contents, response
    .catch (err) ->
        errorResponse =
          responseTo: contents.requestId
          protocol: contents.protocol,
          command: 'error',
          payload: { message: err.message }
        connection.send errorResponse

        console.error('FBP PROTOCOL error:', err)
        console.error(err.stack)
