On Feb 13, 2007, at 7:17 PM, Jeffrey Harris wrote:
I think what we want for the UI is to change lastModifiedBy (which
correspond in the UI to created by/edited by) if any changes
successfully merge in or if conflicting changes are accepted, but
not to
change lastModifiedBy if all changes are conflicting and the conflict
either hasn't been resolved or local changes are chosen to win.
Sincerely,
Jeffrey
If I change the title of an item, the byline should now say "edited
by Me" (or something equivalent). If Joe then changes the body on
the server, and I do a background sync, what should the byline say?
There was no conflict, so following the above logic the byline should
now read "edited by Joe". Now I hit the sync button to commit my
local change and send it to the server; lastModifiedBy is still
"Joe", not "Me", so the server has the wrong idea about who made the
latest change.
Perhaps we should instead think of the byline as "this item was
officially updated on the server by...", to indicate who was the last
person to change the "source of truth" for an item. This would mean
the sharing layer would set lastModifiedBy when a locally modified
item is sent out, and it means not having the byline change to "Me"
until local changes for an item have actually been successfully sent
to the server. I think it might be nice to see the byline change
from "Joe" to "Me" only when an item reaches the server -- it's a per-
item indicator that my changes made it out. What's also nice about
this is that since the sharing layer knows if we're *actually*
sending a change to the server (which is a function of what filters
are in place and what conflicts occur), it makes sense to have the
sharing layer be in charge of setting lastModifiedBy, just in time.
~morgen
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Open Source Applications Foundation "Design" mailing list
http://lists.osafoundation.org/mailman/listinfo/design