function inspectObject(flow) {
    try {
        let properties = new Set()
        let currentObj = flow
        do {
            if (!Object.getPrototypeOf(currentObj)) { break }
            Object.getOwnPropertyNames(currentObj).map(item => properties.add(item))
        } while ((currentObj = Object.getPrototypeOf(currentObj)))
        let propList = [...properties.keys()].map(item => `${item}[${(typeof flow[item])[0]}]`)
        propList.sort();
        let result = [];
        let line = "";
        while (propList.length > 0) {
            let prop = propList.shift()
            if (line.length+prop.length > 80) {
                result.push(line)
                line = "";
            } else {
                line += " "+prop
            }
        }
        if (line.length > 0) {
            result.push(line);
        }
        return result.join("\n  ")

    } catch(err) {
        return "Failed to capture object properties: "+err.toString()
    }
}
Set the node's status object

status: { fill:"red|green", shape:"dot|ring", text:"blah" }
or
status: "simple text status"