Yea, we've noticed the same thing internally at Google. Enough that
Andy opened http://jira.source.android.com/jira/browse/GERRIT-189 to
request for better overview on the My>Changes screen. Unfortunately
nobody has coded anything yet. And as JBQ points out, AOSP also has
this problem.
> A workflow system similar to Jira is a possible fix, but it seems like
> overkill and too specific.
I agree.
> If we could tag each change, I think that might be a possible
> solution. A change ready for peer review is tagged as such. If it is
> ready to be merged, the last peer reviewer removes that tag and tags
> it as merge. If it gets kicked back for a bug fix, it gets tagged
> with the developer's name who needs to upload the new patch. If a
> developer wants to check if any changes are waiting on them, they can
> search for tags containing their name.
Hmmph. Interesting.
I'd rather not make the user's perform tagging on their own if there
is a reasonably well defined process involved. I've worked with
groups that did workflow routing by manual instructions, I kid you
not, the "instruction book" was many pages long and involved setting
several fields at each "stop" in the process. It was very common for
things to be tagged wrong.
I need to stop dinking around with this LDAP code and move back to the
query stuff I was working on. I'm trying to define a generic query
language, so we could write expressions like:
branch:master project:tools/gerrit verified:+1 codereview:+2 status:open
to find all open changes with both verified +1 and code review +2, so
we can review them. I wonder if we can get the language sufficient
that folks can identify what they need to look at based solely on a
few query expressions, and then we support naming these queries in the
application, to add new menus like "My > To Merge".
But I've only got the query language parser written, and started a
draft of the predicate evaluators. Its still not quite there yet.
On the other side, there is something to be said for "labels". GMail
makes quite heavy use of them, and it actually works fairly well to
organize stuff. When combined with filters, which in Gerrit's case
could be saved query expressions that automatically add or delete a
given label based on the change matching (or not matching), plus
allowing users to manually add/remove these tags on their own, it
might be a pretty powerful, yet simple to use system.
I dunno, I am just tossing things out there. :-)
I started working on a similar patch myself. :) Please submit it, my
team and I would love something like that.
zach