WordPress.org

Make WordPress Core

Opened 5 years ago

Closed 5 years ago

Last modified 5 years ago

#9808 closed defect (bug) (fixed)

Feedback Needed - Trac reports

Reported by: Denis-de-Bernardy Owned by: Denis-de-Bernardy
Milestone: Priority: normal
Severity: normal Version:
Component: WordPress.org site Keywords:
Focuses: Cc:

Description

Following up on yesterday's IRC discussions, I'm going to re-engineer the reports a bit, in an effort to make them more useful.

For information I've the following reports in my own trac system (which is organized differently than that of WP):

  1. Active tickets by milestone
  2. Active tickets by owner (owner being whoever it's assigned to, whether it was accepted or not)
  3. My tickets (which actually stands for tickets assigned to me + all unassigned tickets ordered by priority desc)

I'd personally suggest to drop either of severity or priority, but Mark apparently wants to keep that. Dropping them would make ticket ordering less random.

Anyway, the changes I'm chewing on are:

  1. Active tickets: changed to Tickets by Severity.

Ordered by severity desc (group), priority desc (color), summary asc

  1. Active tickets by Version: renamed to Tickets by Version

Ordered version by desc (group, unknown version last), severity desc (color), priority desc, summary asc

  1. All tickets by Milestone -> renamed to Tickets by Milestone

Ordered by Milestone asc (group, Future/Unassigned at the end), severity desc (color), priority desc, summary asc

  1. Assigned, active tickets by owner: renamed to Tickets by Owner

Ordered by owner asc (group, Unowned first), severity desc (color), priority desc, summary asc

  1. Assigned, Active Tickets by Owner (Full Description): changed to Tickets by Component

Ordered by component asc (group), severity desc (color), priority desc, summary asc

  1. All Tickets By Milestone (Including closed): Tickets By Milestone (including closed)

Same as Tickets by Milestone, with closed milestones last.

  1. My tickets

Ordered by Severity desc (group), priority desc (color), summary asc

  1. All tickets, mine first: renamed to My tickets, including unassigned

Ordered by My tickets/Severity desc (group), priority desc (color), summary asc

I'd also change the fields a little, to make them consistent from a report the next, and so as to better highlight their status (has-patch, needs-testing, tested, etc.)

Change History (39)

comment:1 Denis-de-Bernardy5 years ago

  • Component changed from General to WordPress.org

comment:2 filosofo5 years ago

It seemed like there used to be a "reports" link in the upper-right menu. Has that gone away? I'm not sure how to navigate to the current reports.

But going on memory, I think it would be good if a report showed who opened a ticket (which is usually different from owner) or provided a patch. And if there were a color key.

comment:3 Denis-de-Bernardy5 years ago

It's "View Tickets".

comment:4 filosofo5 years ago

I was thinking of "available reports," which shows up as a sub-page.

Anyways, is it possible to add a search filter to look for tickets by who attached a patch? I think report 27 must be using similar logic.

comment:5 Denis-de-Bernardy5 years ago

well, for the various reports from 9 and onwards, I'm itching to add some kind of trusted Y|N field, but the truth is it won't really work.

if a trusted user merely adds a big +1 to a patch, but didn't add the keyword himself, it won't get caught with the query used in report 27, for instance. hence the other ticket I opened related to trac permissions.

comment:6 Denis-de-Bernardy5 years ago

for the status, I'm itching between adding one field (status = needs-patch|has-patch|tested|commit), or several (patch Y|N, tested Y|N, commit Y|N)

comment:7 Denis-de-Bernardy5 years ago

  • Status changed from new to accepted

comment:8 westi5 years ago

Coherent reports sound good.

Please can we make all reports have both the created date and the last change date on the tickets in columns for visibility and ordering.

comment:9 Denis-de-Bernardy5 years ago

it's a bit clunky in sql. how about this instead: an hot (Y|N) field, set to true if modified is no more than a month old? the ticket's ID is a good indicator of how old a ticket is already.

comment:10 westi5 years ago

I really want the update date visible and sortable.

comment:12 Denis-de-Bernardy5 years ago

grouping actually prevents sorting. so I'm going to keep the first, all tickets report. draft here:

http://core.trac.wordpress.org/report/28

rss contains a few more fields.

comment:13 Denis-de-Bernardy5 years ago

Yay, I got the votes working. :-)

comment:14 Denis-de-Bernardy5 years ago

updated http://core.trac.wordpress.org/report/1

I'll wait for some feedback (or a few days, if none comes) before touching the next ones.

comment:15 Denis-de-Bernardy5 years ago

one thing I'd like to know in particular, is, whether the default sort by priority or by severity is preferable.

comment:16 Denis-de-Bernardy5 years ago

btw, I still think that the severity field is pointless -- report 1 will highlight how redundant the two fields are. see the first and last pages.

comment:17 Denis-de-Bernardy5 years ago

I updated http://core.trac.wordpress.org/report/28

only one diff with http://core.trac.wordpress.org/report/1:

the severity field got dropped altogether, so that we can compare what shows up.

comment:18 Denis-de-Bernardy5 years ago

other update to report 28: it's now sorted by milestone asc as a highest order element.

comment:20 Denis-de-Bernardy5 years ago

by milestone, even

comment:21 Denis-de-Bernardy5 years ago

Discussion with andrew led me to put these changes directly into report 1.

I'll leave them untouched for a few days, so we can try that one out.

comment:22 Denis-de-Bernardy5 years ago

just for information, the workflow field is defined as follows:

  CASE
  WHEN keywords LIKE '%commit%'
  THEN 'commit'
  WHEN keywords LIKE '%dev_feedback%'
  THEN 'dev-feedback'
  WHEN keywords LIKE '%2nd_opinion%'
  THEN '2nd-opinion'
  WHEN keywords LIKE '%tested%'
  THEN 'tested'
  WHEN keywords LIKE '%needs_testing%'
  THEN 'needs-testing'
  WHEN keywords LIKE '%has_patch%'
  THEN 'has-patch'
  WHEN keywords LIKE '%reporter_feedback%'
  THEN 'reporter-feedback'
  ELSE 'needs-patch'
  END as workflow,

in other words, it's important (applies to devs too) to remove dev-feedback and 2nd-opinion when such have been added, else they override the tested keyword. I did this is on purpose, but I can always bump tested upwards if there is no interest.

comment:23 ryan5 years ago

Nice

comment:24 Denis-de-Bernardy5 years ago

sample /report/2 is at http://core.trac.wordpress.org/report/28

if anyone familiar with python bumps into this ticket, please take a look at this trac enhancement ticket:

http://trac.edgewall.org/ticket/8292

comment:25 dd325 years ago

Felt like playing with them myself, Here's one effort from me:

http://core.trac.wordpress.org/report/29

A better example for some will be: http://core.trac.wordpress.org/report/29?USER=dd32

It allows you to go back and chase up any tickets/review any tickets which you've submitted a patch for, But the ticket is still open.

Also useful for closing old tickets, I see a few which should potentially be closed as fixed

comment:26 Denis-de-Bernardy5 years ago

All tickets, Next Minor release tickets, Next Major release tickets, Future releases tickets. All done in reports 1-8, with and without workflow.

comment:27 Denis-de-Bernardy5 years ago

http://core.trac.wordpress.org/report/9 should hopefully be useful now. It lists:

  • tickets that are clearly marked as commit
  • tickets that are marked as tested, without the needs-unit-tests or reporter-feedback keywords

Tickets that are marked as tested and in need of dev feedback should thus show up as well. And everything is grouped by milestone for convenience.

comment:28 Denis-de-Bernardy5 years ago

reports 10 and 11 re-done as well for dev/wrangler feedback, and reporter feedback/confirmation needed

comment:29 Denis-de-Bernardy5 years ago

reports 12-18 redone as well:

  • needs-unit-tests (12)
  • has-patch / needs-testing (13)
  • needs early-attention (14)
  • needs-patch / lacks attachment (16)
  • dup (17)
  • wontfix (18)

dup and wontfix are new keywords.

comment:30 Denis-de-Bernardy5 years ago

Based on the code, report 27 should be covered in report 9 through the asterix. Report 9 now shows:

  • bugs with explicit commit
  • bugs with explicit tested
  • the owner with an asterisk if accepted

so more or less an enhanced/more complete report 27.

I'll probably add a blockers report next. Or rather, a major bugs report for each of next minor and next major release, that'll list only major and higher severity bugs, and otherwise behave like reports 3 and 5. (The extent to which they're redundant is quite debatable though.)

Last one I've in mind are two "My Tickets" reports. The first would stick to grabbing owner = $USER. The second would be an enhanced "My tickets" report. That being, tickets where either of the following apply:

  • owner = $USER OR
  • component owner = $USER OR
  • $USER specific condition where applicable (trac-admin users most welcome to edit the report to suit their interests)

That way, if someone assigns a ticket from your component to himself, you still follow it in a convenient report.

comment:31 Denis-de-Bernardy5 years ago

Adding to all of this, the key goodie will come with trac 0.12. The ticket I submitted above is fixed, more or less. When 0.12 will get released, we'll add conditionals in the queries, along the lines of:

WHERE CASE
  WHEN $SEVERITY <> ''
  THEN severity = $SEVERITY
  ELSE 1
  END

It'll make things a tad bit slower, but it'll let us filter in the existing reports (keeping the pre-set order) using dropdowns, in a near-drill-down manner.

comment:32 Denis-de-Bernardy5 years ago

For reference, workflow field has been tweaked further:

  CASE
  WHEN keywords LIKE '%needs_review%'
  THEN 'needs-review'
  WHEN keywords LIKE '%dev_feedback%' OR keywords LIKE '%2nd_opinion%'
  THEN 'dev-feedback'
  WHEN keywords LIKE '%reporter_feedback%'
  THEN 'reporter-feedback'
  WHEN keywords LIKE '%wontfix%'
  THEN 'wontfix'
  WHEN keywords LIKE '%dup%'
  THEN 'dup'
  WHEN keywords LIKE '%commit%'
  THEN 'commit'
  WHEN keywords LIKE '%tested%'
  THEN 'tested'
  WHEN keywords LIKE '%needs_unit_tests%'
  THEN 'needs-unit-tests'
  WHEN keywords LIKE '%needs_docs%'
  THEN 'needs-docs'
  WHEN keywords LIKE '%needs_testing%' OR keywords LIKE '%has_patch%'
  THEN 'has-patch'
  WHEN keywords LIKE '%early%'
  THEN 'early'
  ELSE ''
  END as workflow,

and the order for the four workflow-oriented reports is:

  CASE
  WHEN ( keywords LIKE '%commit%' OR keywords LIKE '%tested%' )
    AND keywords NOT LIKE '%needs_unit_tests%'
    AND keywords NOT LIKE '%needs_docs%'
    AND keywords NOT LIKE '%reporter_feedback%'
    AND keywords NOT LIKE '%dev_feedback%'
    AND keywords NOT LIKE '%2nd_opinion%'
    AND keywords NOT LIKE '%needs_review%'
  THEN 'Tested Patches / Commit Candidates'
  WHEN keywords LIKE '%dev_feedback%' OR keywords LIKE '%2nd_opinion%'
    OR keywords LIKE '%needs_review%'
  THEN 'Needs Dev / Bug Wrangler Feedback'
  WHEN keywords LIKE '%early%'
  THEN 'Needs Early Attention'
  WHEN keywords LIKE '%needs_unit_tests%' OR keywords LIKE '%needs_docs%'
  THEN 'Needs Docs or Unit Tests'
  WHEN keywords LIKE '%needs_testing%' OR keywords LIKE '%has_patch%'
  THEN 'Has Patch / Needs Testing'
  WHEN keywords LIKE '%reporter_feedback%'
  THEN 'Needs Reporter Feedback'
  ELSE 'Needs Patch'
  END as __group__,

comment:33 Denis-de-Bernardy5 years ago

report 18 nows shows tickets that fill either of:

  • severity >= critical
  • priority = highest
  • keyword = blocker

It's grouped by milestone, then ordered by severity

comment:34 Denis-de-Bernardy5 years ago

fixed a further incoherence in all reports:

  WHEN keywords LIKE '%needs_unit_tests%'
  THEN 'needs-unit-tests'
  WHEN keywords LIKE '%needs_docs%'
  THEN 'needs-docs'
  WHEN keywords LIKE '%wontfix%'
  THEN 'wontfix'
  WHEN keywords LIKE '%dup%'
  THEN 'dup'
  WHEN keywords LIKE '%commit%'
  THEN 'commit'
  WHEN keywords LIKE '%tested%'
  THEN 'tested'

(to make things consistent with reports 2, 4, 6 and 8

comment:35 Denis-de-Bernardy5 years ago

  • Milestone Unassigned deleted
  • Resolution set to fixed
  • Status changed from accepted to closed

Reports 1-25 done.

comment:36 Denis-de-Bernardy5 years ago

changed the order and color codes, upon getting feedback from DD32.

things are now sorted by component, type, [milestone where relevant], summary, to maximize scan-ability, rather than by priority.

colors are based on workflow: red = core dev, yellow = contributors, blue = reporters.

comment:37 Denis-de-Bernardy5 years ago

actually... changing the color coding a bit more. see ticket 1. will finish tomorrow.

  • red = core dev
  • yellow = needs core dev or wrangler, or early attention

comment:38 Denis-de-Bernardy5 years ago

there we go. it's much better now.

comment:39 dd325 years ago

re: #10585

Maybe to help new users, the "My Tickets" report should show closed tickets as well? Perhaps only those closed within the last.. say, month? (Or fortnight?)

Note: See TracTickets for help on using tickets.