Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Validation issue prioritization #527

Merged
merged 9 commits into from
Feb 13, 2020
Merged

Conversation

evansiroky
Copy link
Contributor

@evansiroky evansiroky commented Jan 26, 2020

Checklist

  • Appropriate branch selected (all PRs must first be merged to dev before they can be merged to master)
  • Any modified or new methods or classes have helpful JSDoc and code is thoroughly commented
  • The description lists all applicable issues this PR seeks to resolve
  • The description lists any configuration setting(s) that differ from the default settings
  • All tests and CI builds passing

Description

This PR seeks to fix #477 by modifying the version validation error viewer in two ways:

  • it will sort errors based off of priority level and then alphabetically
  • it shows different icons based on error severity

This PR depends on the ibi-group/datatools-server#275 PR to datatools-server that uses the version of gtfs-lib that includes the graphQL changes.

@codecov-io
Copy link

codecov-io commented Jan 26, 2020

Codecov Report

Merging #527 into dev will decrease coverage by 25.83%.
The diff coverage is 10.16%.

Impacted file tree graph

@@             Coverage Diff             @@
##              dev     #527       +/-   ##
===========================================
- Coverage   41.82%   15.99%   -25.84%     
===========================================
  Files         314      314               
  Lines       17072    16021     -1051     
  Branches     5211     4889      -322     
===========================================
- Hits         7141     2562     -4579     
- Misses       8645    11482     +2837     
- Partials     1286     1977      +691
Flag Coverage Δ
#end_to_end_tests ?
#unit_tests 15.99% <10.16%> (-0.03%) ⬇️
Impacted Files Coverage Δ
lib/manager/actions/versions.js 12.39% <ø> (-43.58%) ⬇️
lib/types/index.js 0% <ø> (ø) ⬆️
...ager/components/validation/GtfsValidationViewer.js 0% <0%> (-1.06%) ⬇️
...ib/manager/components/version/FeedVersionViewer.js 0% <0%> (-34.94%) ⬇️
...nager/components/validation/ValidationErrorItem.js 0% <0%> (ø) ⬆️
lib/manager/util/version.js 30.88% <16%> (-29.59%) ⬇️
lib/common/util/config.js 70.9% <66.66%> (-9.1%) ⬇️
lib/manager/components/validation/TripsChart.js 0% <0%> (-80.4%) ⬇️
...nager/components/validation/ServicePerModeChart.js 0% <0%> (-78.27%) ⬇️
lib/manager/components/HomeProjectDropdown.js 0% <0%> (-75.76%) ⬇️
... and 260 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 477f0b7...0bcf59c. Read the comment docs.

@evansiroky evansiroky assigned landonreed and unassigned evansiroky Jan 27, 2020
Copy link
Contributor

@landonreed landonreed left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👏, nice work and thanks for taking this on!

I have uploaded a few different feeds of varying quality to see how this looks for each. Here are some comments for each:

SEPTA Rail link

  • in list group buttons we may need an indication of if there are any high priority issues. We have a 'critical' warning if the feed basically entirely breaks stuff, but we may need to soften this to also apply to HIGH priority issues as well (or at least provide another level)
  • might be good to have a sort button? That's maybe just a nice to have.
  • contrast for medium priority issue count is too low/hard to read
  • I would expect black or dark blue color text for 'low' priority
    image

Feed missing required files (e.g., stop_times, trips)

  • With this feed, I noticed that the Missing required table issue does not rise to the level of high, which makes me think we need to audit the priority levels in gtfs-lib and make some adjustments. Issues that would break OTP should probably register as HIGH priority. We can tackle that in a separate issue.
  • Notice also, that there is a BLOCKING tag below. This is for MTC issues that prevent publication because they break things downstream. We should consider whether we want to use this kind of visual language and structure in the code elsewhere.
    image

Uploaded zipped shapefile (just to see what happens)

  • I uploaded a zipped shapefile just to see what happens and the issues are not nearly as scary as I would expect (or want) them to be
  • Again, I think this just highlights that Missing Table needs to be escalated AND that the summary indicator on the left should probably reflect the high priority/critical issues found.
    image

@binh-dam-ibigroup
Copy link
Contributor

The way it is depicted in Landon's post might suggest there could be, within one category, there might be critical issues and less critical issues (e.g. 50 critical unused stops and 214 less critical stops).
I would place the icon to the left of the text to avoid that confusion (keep the count to the right).

@landonreed landonreed assigned evansiroky and unassigned landonreed Jan 29, 2020
@landonreed
Copy link
Contributor

landonreed commented Jan 29, 2020

@binh-dam-ibigroup, I don't 100% follow the comment, but here's what it looks like with the icons on the right. I think it does look better, but I'm not crazy about the overall look. I'm wondering if there's a better way to format all of this.

image

@evansiroky
Copy link
Contributor Author

Other PRs have been merged in. Good to go, @landonreed?

@evansiroky evansiroky assigned landonreed and unassigned evansiroky Feb 4, 2020
@landonreed landonreed merged commit dcfcf1c into dev Feb 13, 2020
@landonreed landonreed deleted the validation-issue-prioritization branch February 13, 2020 22:43
@landonreed
Copy link
Contributor

🎉 This PR is included in version 4.1.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Indicate validation issue priority in validation table
4 participants