Below please find my comments to “Visualization Concept of Operation” doc.
Visualization Architecture  (Firefly item)
For people who are not familiar with Firefly, I would say that Firefly provides visualization tools, like image display and manipulation and an interface to extend its functionality on both client and server. Then it will be clear how UIUC written code (FE user interface and BE analysis code) is related to Firefly.
"Commands that do not require processing of raw image data … are performed locally by either Firefly or Javascript."
I would omit this last part, because Firefly is running Javascript.
"When zoomed out FF does not merge pixels…It degrades HW diagnostics capability"
Adding to Xiuqin’s comment. Right now, you can use calculated at BE regions to mark bad spot using current zoom level as a parameter driving the bin size.
"Note that the Firefly architecture requires that image display commands be initiated in the FE, so the URL of the new image must be passed back to the FE."
This is not true. You can ask Firefly to display an image produced by a python task on the Back End. If you allow Firefly to read from the directory where you produce an image, Firefly will just access the file. (See Example 1. Loading an image produced by a python task.)
Firefly accesses images from the file system routinely. It’s in the base of its architecture: firefly.showImage() command takes image search parameters and displays the image located somewhere in the file system.
“multi-extesion” -> multi-extension
Scroll-wheel zoom
We can do it, if users absolutely want this feature and it’s high on the priority list. People should just understand that the zoom is not continuous, zoom levels are predefined. I would say “FF does not do it.”