Nice drawings. A bullet list might have been easier to understand.
The best way (only way) to achieve what you want is to use some sort of server to coordinate the distribution of projects, tasks etc amongst the clients. This is why the apps that do what you want are mostly web based. This is way outside the scope of Omnifocus. What you are requesting is turning a single user productivity app into a multi user client/server app.
Sure you have almost got there using syncing, but syncing wasn't designed to do this. I wouldn't have expected the Omni guys to have thought too much about simultaneous changes to the same tasks so, as whpalmer4 pointed out, this might cause you problems.
It's certainly never going to provide you with the permissions based control that you are talking about.
What Omnifocus does have though is a reasonably good scripting interface. I've been doing a bit of work with it lately (http://github.com/hmaddocks/omnifocusrb) and it wouldn't be too difficult to write a server app to do what you want using scripting.
As an example of what can be done with this approach check out http://github.com/seattlerb/omnifocus
These guys have written scripts that keep Omnifocus synchronised with various bug tracking systems. The master list of tasks are managed by the bug tracking systems, the individuals manage their own sets of tasks using Omnifocus and the scripts take care of synchronising everything.
The best way (only way) to achieve what you want is to use some sort of server to coordinate the distribution of projects, tasks etc amongst the clients. This is why the apps that do what you want are mostly web based. This is way outside the scope of Omnifocus. What you are requesting is turning a single user productivity app into a multi user client/server app.
Sure you have almost got there using syncing, but syncing wasn't designed to do this. I wouldn't have expected the Omni guys to have thought too much about simultaneous changes to the same tasks so, as whpalmer4 pointed out, this might cause you problems.
It's certainly never going to provide you with the permissions based control that you are talking about.
What Omnifocus does have though is a reasonably good scripting interface. I've been doing a bit of work with it lately (http://github.com/hmaddocks/omnifocusrb) and it wouldn't be too difficult to write a server app to do what you want using scripting.
As an example of what can be done with this approach check out http://github.com/seattlerb/omnifocus
These guys have written scripts that keep Omnifocus synchronised with various bug tracking systems. The master list of tasks are managed by the bug tracking systems, the individuals manage their own sets of tasks using Omnifocus and the scripts take care of synchronising everything.
Last edited by henry; 2010-06-02 at 08:29 PM..