     opts = defaults opts,
         database : undefined
         dev      : false          # dev -- for single-user *development*; compute server runs in same process as client on localhost
-        single   : false          # single -- for single-server use/development; everything runs on a single machine.
+        single   : false          # single -- for single-server use/development; everything runs on a single machine (and computer server also in same process)
         kubernetes : false        # kubernetes -- monolithic cocalc-kubernetes mode
         cb       : required
     if compute_server_cache?

                                dbg("wait longer...")

    _wait_for_a_state_dev: (opts) =>
        # For smc-in-smc dev, we have to **manually** cause another check,
        # since there is no separate compute server running!
        dbg = (m) => winston.debug("_wait_for_a_state(dev) in #{misc.to_json(opts.states)}, state='#{@_synctable.getIn([@project_id, 'state', 'state'])}': #{m}")
        dbg("retry until succeess")

            cb      : required
        dbg = (m) => winston.debug("wait_for_a_state in #{misc.to_json(opts.states)}, state='#{@_synctable.getIn([@project_id, 'state', 'state'])}': #{m}")
        dbg("cause state update")
        if @_dev or @_single
            @_wait_for_a_state_dev(opts)
            return
        @state
