RE: Some comments in Execution and Security Model spec

Hi, Runtime model editors,

I just read carefully about the Runtime model spec at http://sysapps.github..io/sysapps/proposals/Sysapps-Runtime/Overview.html#runtime and put down some comments for your reference. Please educate me if I have misunderstanding. Thanks.

1. Application update/uninstall behavior when it is running

If an application is in running state, and at the moment RuntimeInstaller try to update/uninstall it, what should be the expected behavior?

2. About using DOMRequest as return value

Lots of API is designed to return DOMRequest object. I think it should be better to define the meanings of DOMRequest object status, such as what onsuccess/onerror/readyState/result/onerror stands for respectively in Runtime model. For example, if the given applicationId parameter cannot be found, then what is the status of the returned DOMRequest object?

3. Be better to add 'description' field in application manifest since Application object also has a description field.

4. About application update, is it better to support auto-update through adding a 'update_url' in application manifest file?

If 'update_url' is provided in manifest file, the Runtime will periodically sync with the 'update_url' server to check the latest version and compare it with the current version. If it is higher than the current version, an auto-update behavior will be performed.

5. RuntimeInstaller interface is a privileged API and should not be accessed by untrusted application. We should prohibit untrusted application to install other applications. I found no such information is highlighted in the spec.

6. About Application.size, it should be in bytes, right? We should give a clear definition in spec.

7. No method to show an application in foreground if it is hidden via hide API.

8. Unclear behavior if the same application is installed/uninstalled/updated by more than on RuntimeInstaller.

Since each system application can access its own RuntimeInstaller via window.runtime.installer, if Foo app initiates an operation to uninstall application, while at the moment, another Bar app also initiates another operation to uninstall the same application, then the expected behavior is not defined. Should RuntimeInstaller in Bar app can also receive onUninstall event if Foo app uninstall the app successfully.

9. Does it make sense to add 'onupdate' event in Application interface to let Application itself be aware of update?

Thanks
Hongbo

Received on Tuesday, 16 April 2013 16:08:02 UTC