github
Advanced Search
  • Home
  • Pricing and Signup
  • Explore GitHub
  • Blog
  • Login

cyberfox / triage

  • Admin
  • Watch Unwatch
  • Fork
  • Your Fork
  • Pull Request
  • Download Source
    • 1
    • 0
  • Source
  • Commits
  • Network (0)
  • Issues (0)
  • Downloads (1)
  • Wiki (1)
  • Graphs
  • Branch: master

click here to add a description

click here to add a homepage

  • Branches (3)
    • api_keys_experiment
    • gh-pages
    • master ✓
  • Tags (1)
    • data_complete
Sending Request…
Enable Donations

Pledgie Donations

Once activated, we'll place the following badge in your repository's detail box:
Pledgie_example
This service is courtesy of Pledgie.

A batch interface to Lighthouse, allowing easy triaging of larger numbers of tickets with a simple UI. — Read more

  cancel

  cancel
  • Private
  • Read-Only
  • HTTP Read-Only

This URL has Read+Write access

Add a test for accessing the second page using XHttpRequest; i.e. ajax 
loading of later pages. 
cyberfox (author)
Tue Oct 27 02:14:41 -0700 2009
commit  88975455abb612d50b330658947a47fd51ffce5a
tree    190f5344db8921a65862a6d12ed7bb3269d9944b
parent  c0b4a592cbe2f63e0332aced9acd46134789795c
triage /
name age
history
message
file .gitignore Sat Apr 18 01:42:22 -0700 2009 Add gitignore's for tmp/ and the restart file a... [cyberfox]
file Capfile Fri Jan 23 16:46:57 -0800 2009 Add a cap deploy to the triage app. [cyberfox]
file MIT-LICENSE Thu Jan 08 03:23:24 -0800 2009 Add a copyright and MIT License file. [cyberfox]
file README.textile Mon Apr 20 02:31:53 -0700 2009 Update the README. [cyberfox]
file Rakefile Sun Dec 28 01:50:46 -0800 2008 Basic rails app. [cyberfox]
directory app/ Mon Oct 26 22:48:12 -0700 2009 Handle AJAX request for the next page. [triage]
directory config/ Tue Oct 27 01:29:06 -0700 2009 Don't do the cool 'load an entry to get all the... [cyberfox]
directory db/ Sat Sep 05 21:18:14 -0700 2009 Minor schema change; Just a rails difference. [cyberfox]
directory doc/ Sun Dec 28 01:50:46 -0800 2008 Basic rails app. [cyberfox]
directory lib/ Fri Jan 02 14:36:02 -0800 2009 Really simple coverage test task. [cyberfox]
directory log/ Sun Dec 28 01:51:02 -0800 2008 Ignore the log files, but keep the directory. [cyberfox]
directory public/ Tue May 19 15:27:13 -0700 2009 Tweak the stylesheet for the font-reset layout. [cyberfox]
directory script/ Sun Dec 28 01:50:46 -0800 2008 Basic rails app. [cyberfox]
directory test/ Tue Oct 27 02:14:41 -0700 2009 Add a test for accessing the second page using ... [cyberfox]
directory tmp/ Sat Apr 18 01:42:22 -0700 2009 Add gitignore's for tmp/ and the restart file a... [cyberfox]
directory vendor/ Mon Oct 26 22:47:34 -0700 2009 Remove the now-unnecessary Version, and run a r... [triage]
README.textile

A simple interface to the Lighthouse API to allow for fast triaging of tickets

The initial goal is to build a few screens that allow for one-button triaging.

Background: After a while of not having time to handle triaging
tickets for an open source project I moved over to Lighthouse, I found
I had over 170 new tickets to wade through. If it takes me 1 minute
to triage (excessively low) then I’m still looking at 3 hours just to
speed through those tickets. The truth is that it usually takes me
5-10 minutes per ticket. I needed some way to triage it down to a
core set of ‘investigate’ issues quickly, then I could take my time
with those.

I decided I wanted a way to search for tickets (preferrably using the
existing search bins), show the first ticket result, and click Skip,
or one of ‘details’, ‘investigate’,
‘acknowledged’, ‘feature’,
‘duplicate’, or ‘invalid’. This set of
buckets is what I use; the idea is that everybody’d have their own,
and whether it changes the state of the ticket (and what to), or
milestone would be customizable per-bucket.

This magic application would then apply that tag, change it from ‘new’
to ‘open’ (or closed in the case of the last two), maybe stick some
boilerplate in the ticket comments, and move to showing the next
ticket in the Lighthouse search results. The buttons would be in the
same place for each ticket, for minimal and predictable mouse
movement.

Eventually, I’d love to offer niceties like applying tags to multiple
items at once, perhaps with some simple gmail like multiple selection.
There are other UI features that Lighthouse itself might not want to
include (in order to keep the core app simple), but that would be
useful to many developers.

For now, I’m working on the simple things. Getting a list of projects,
then a list of search bins, then a list of tickets, then an individual
ticket. That all works, right now, and caches the results in a local
database. It’s not fast, but it tries to keep in sync with Lighthouse,
so it probably won’t ever be very fast.

Searches aren’t cached, but the ticket retrievals are, and cache
expiry is handled using the updated_at field.

Triage uses #to_yaml on the Lighthouse API objects to store original
responses, so the app can manipulate the data without needing to
differentiate between cached and non-cached, and so I don’t have to
re-implement the entire database structure of Lighthouse. This
required a small change to the Lighthouse API library, so it’s bundled
as a packed gem (cyberfox-lighthouse-api on http://gems.github.com ).

It’s currently functional; you can create buckets and apply them to
tickets. Applying a bucket moves to the next search (or redisplays
the current ticket if it’s not part of an existing search.) You can
also skip through tickets, allowing you to walk through a search very
nicely. It’s pretty nearly completely functional for my use, now.

Then maybe I’ll re-skin the whole thing and make it look pretty. :)
Actually I’m not very good at making things look pretty, but I’m
pretty good at making things functional…

— Morgan Schweers, Cyber*FOX*!

p.s. You’ll need to create your own site_keys.rb in config/initializers
with:

  rake auth:gen:site_key

Copyright © 2009 Morgan Schweers, CyberFOX Software, Inc. under the MIT License

Blog | Support | Training | Contact | API | Status | Twitter | Help | Security
© 2010 GitHub Inc. All rights reserved. | Terms of Service | Privacy Policy
Powered by the Dedicated Servers and
Cloud Computing of Rackspace Hosting®
Dedicated Server