Page MenuHomePhabricator

Provide a dedicated page for viewing a single workboard column
Closed, ResolvedPublic

Assigned To
Authored By
qgil
May 11 2014, 10:16 PM
Tags
Referenced Files
None
Tokens
"Love" token, awarded by franjesus."Like" token, awarded by stevex."Evil Spooky Haunted Tree" token, awarded by baszalmstra.

Description

I'm looking for an advanced search option to query the tasks listed under a specific column of a workboard. Is this possible?

Event Timeline

qgil raised the priority of this task from to Needs Triage.
qgil updated the task description. (Show Details)
qgil added a project: Workboards.
qgil added a subscriber: qgil.
chad triaged this task as Normal priority.May 12 2014, 5:37 PM
chad added subscribers: epriestley, chad.

Can you describe the use cases in more detail?

I think some approximation of T4673 (which is approximately "filtering for boards") might resolve this, but I'm not exactly sure what you're after.

Two use cases:

In our boards we have a column for "Need discussion". It would be very useful to have a URL for a saved query that would always show the tasks needing discussion in a specific project. We can use that URL in wiki pages and mailing lists asn an entry point of collaboration of editors and other users willing to give feedback. Of course we can share the URL of the board and tell them to focus on the "Need discussion" column, but it is good to remove as many elements of possible confusion / overwhelm as possible for these potentially new Phabricator users.

As long as closed tasks disappear from boards, it is... impossible? to know which tasks do you have under a specific column in a board. You need to query all closed tasks of a project and open them to see which ones are in the column desired, a value that is only shown in the "Projects" field of each task. This is especially annoying when you want to get rid of a column and you cannot because such column "contains tasks" (that you cannot see or find).

For the first case, maybe a column permalink would be a better solution? Then you could navigate back up the board easily. We can structure this as a search query instead (and it might not be bad to make that possible, for Dashboard panels) but it will lose some context. There's also no control which will easily let you select a column right now, and building a nice one is probably a fair bit of work (plus, it overlaps a lot with some other less well-defined tasks and infrastructure-blocked things).

For the second case, T4673 should cover it.

Permalinks are more convenient than search queries that need to be constructed, sure. They could be provided in the "settings" page of the column (i.e. https://secure.phabricator.com/project/board/404/column/86/ ) not to clutter the board view.

Where would those permalinks lead, to a subpage of the board listing only the tasks of a column, or...?

Ref T4673, agreed.

In fact, couldn't https://secure.phabricator.com/project/board/404/column/86/ be already that page listing the tasks of a specific column?

It would be very nice to have such list in column page to give changelog to other users. If column is hidden, this page would show closed tasks.

I create, for my application, a project, where columns are major version. And For each major version I create a project, eg 1.2.x, where columns are minor versions.

epriestley renamed this task from Possibility to query a search of the tasks in a specific column of a workboard to Provide a dedicated page for viewing a single workboard column.Sep 25 2014, 3:40 PM

To followup from IRC: If the single page view had the 'Batch Task Editor', I think between this and T5474 would cover > 90% of the internal feedback I've gotten.

I'd like to add some additional color commentary on the request as originally stated: searching for column names. We have several cases where tasks will be on multiple workboards -- each with their own columns -- and people struggle with figuring out "what is going on?". For example, a task might have been tagged with two engineering teams (either because ownership is unclear or multiple people need to work on the task) and on two product management like boards. This causes more pain with goals that are larger and more complex and don't fit cleanly into normal processes (something extraordinary like "provide more than 9 desk slots").

We ended up in this situation by saying (1) the engineering sprint process is going to meet the needs of engineers first (2) product,marketing,etc can make as many tags as they want to make sense of things in their context. I still think those at least sound like good ideas.

  • An engineering manager wants to answer: For in flight tasks that are in the CoolCodeName column on the ProductManagerX board, how is my team doing? Am I prepared to talk to the PM? Is way too much work coming from this PM and messing up my this sprint? Does the intersection of ColumnA from ProductManagerX and ColumnB from ProductManagerY have unexpected overlap and show two PMs are trying to manage what is really the same project?
  • As a product manager: I'd like to understand how tasks for CoolCodeName are progressing and I know that the EngrTeamX columnA is meaningful? Other PMs are my sworn enemies and I want to see if they are trying to steal my turf by putting everything in the WestSideStorySharks category. I have yet another board with a product like function (Marketing?) and want to see the intersection of two (board,column) tuples that represent how we are going to present externally.

In some cases there are probably better processes that we could implement, better ways we could use existing features, or what we really need to make this work for product people is feature X (burndown charts?). Even if searching by column isn't exactly the right solution, it give us a better sense of what is going on now, and allow people who think that reporting system X will solve their problems to hack it together over conduit and see if that is actually the case.

While some of the workboards may have state-like qualities, I'm unsure if T5474 is the right approach (I think it had been brought up in that context before). In particular I can't think of a better rule than "if task is moved to AnyColumn, write Project+AnyColumn custom field X". But that might not even work without some sort of hypothetical hash-like custom field. I recall some other discussion about searching for columns and there being technical complications (edges?), but that might have been lost to chatlog.

Another approach would be to make a lot of "real" states for most of this instead of workboard columns, and impose the One True Flow on all teams. Based on previous experience with other tools (Jira, trac) that allow creating custom directed graphs for task flow I am confident that trying to meet all needs with this would be -- at best -- a brittle mess.

I recall some other discussion about searching for columns

I've reread T7907 and while the title is about column position, the discussion is relevant and mostly about column names.

cburroughs moved this task from Restricted Project Column to Restricted Project Column on the Restricted Project board.May 3 2016, 6:48 PM

For the first case, maybe a column permalink would be a better solution? Then you could navigate back up the board easily. We can structure this as a search query instead (and it might not be bad to make that possible, for Dashboard panels) but it will lose some context. There's also no control which will easily let you select a column right now, and building a nice one is probably a fair bit of work (plus, it overlaps a lot with some other less well-defined tasks and infrastructure-blocked things).

Yeah, the "put this column on my dashboard" is actually pretty useful I think. Not sure what the plans for it are but would be great to have

I imagine this task is easier now that we have a "Move on Workboard" selector.

D19366 adds a "View as Query" option to the dropdown on workboard columns. This will take you to the Maniphest query results page with a query that selects exactly what was shown in the column when you selected the item.

Note that this query combines any existing board filters applied to the current view with an additional column constraint. For example, if you had the board filtered so that it only shows "Open, Wishlist" tasks, the "View as Query" link will give you a query which shows you "Open, Wishlist, In Column X on Board Y" tasks. This generally makes the workflow more powerful, but might be surprising if you're expecting it to give you an unfiltered view of every task in the column. If you want an unfiltered view, either switch the workboard to "All Tasks" first, or remove the additional constraints after following the "View as Query" link.

The query you end up with is a normal query that you can use all the existing query tools on (Add to Dashboard, Export Data, etc), save as a permanent link, add to a menu, save as a named query, modify to refine further, use as an API query constraint, etc.