Pivotal Tracker still has a flaw with the way the timing of stories is allocated when they are finally accepted. As we all know, the Product Owner often accepts stories long after their work has been finished and they have been delivered.
The problem that results from this is that stories look done only when they are accepted. And this means stories are not taken to account until some rather arbitrary time in the future. This results affects the velocity measurements and makes the misleading impression on the performance of the team.
To solve this issue, this application will watch user's activities on Pivotal Tracker and adjusts stories so that their accepted date is set to their last delivered date or finished date.
Pivotal Tracker document stated that updating Accepted date do not update the Story Composition Report (https://www.pivotaltracker.com/help/articles/updating_accepted_stories/). However, it should still works normally in our case.
- Python >3.6
- Django ~2.1
1 - Install dependencies for development:
$ pip install -r requirements/local.txtTo expose our webhook to Pivotal Tracker API we need to install ngrok
2 - Update .env file follow .env.sample file
3 - Start application
manage.py runserver 0.0.0.0:8000
ngrok http 80004 - Copy webhook url https://<ngrok-url>/activity/webhook/<webhook_verify_token>/
and add to PT project webhook
5 - Get Pivotal Tracker Token API and update the env PIVOTALTRACKER_TOKEN_API
1 - Install dependencies for production:
$ pip install -r requirements/base.txt2 - Deploy application to server (enable https)
3 - Update the enviroment variables.
4 - Add webhook url to PT project.
1 - Install dependencies:
$ pip install -r requirements/test.txtTo run unit tests
$ manage.py testCheck the coverage:
$ coverage run manage.py test
$ coverage html
$ coverage reportLinting using flake8:
$ flake8 .- PT has a limit on story activity changes history(limited to most recent 6 months), so if the story is too old, we won't have changes history to adjust accepted date.