Releases: oslokommune/okr-tracker
[2.0.0-beta] 2020-11-03
Lots of changes in version 2. Most notably a new data model and restructured front end components.
What’s new
Introducing KPIs
Key performance indicators (KPIs) can now be registered and tracked in the OKR tracker. There are three categories for which KPIs can be added to organisations, departments and products. Each KPI must be paired with a cell in a shared Google Sheets document containing its value.
Access requests
Users who are not whitelisted may now ask permission to gain access to the system. They must submit their email address, which will be registered to a separate Firestore collection. A Cloud Function will trigger a message to the connected Slack channel where system administrators can grant or deny their request directly.
Weighted objectives and key results
All objectives and key results now contain a weight property for which administrators or team members may customise the weight. The weight of an object affects how progression is calculated. Objectives’ weight affects their period’s overall progression and the weight of key results affect their parent objective’s progression.
Improved development experience
It is now easier to get started setting up a new instance of the OKR Tracker or contributing to an existing Firebase project, due to improved documentation and simpler and better routines in regards to local mock data and development environment.
Progression is handled on server
There are now Firestore Cloud Functions that monitor CRUD operations to periods, objectives, key results, and their progressions, and automatically handling updating progression for the affected objects.
Firestore rules
Version 2.0.0 introduces better security. All documents in Firestore are now protected by database rules dictating read, write, and delete permissions based on document type and the user attempting to perform the action.
Move products, objectives and key results
It is now possible to move a product from one department to another. There is also support for moving objectives and key results to different periods and objective respectively.
Save view preferences
Users’ view preferences are stored in the database each time they make a change to their view (including minimize/expand widgets).
Audit logging on server
All CRUD events are audited and stored by Cloud Functions containing the affected object, the performing user and a timestamp. Updates include the before and after values.
Changed
- Several user interface changes
- More consistent styles and visual design
- Dashboard view available for organisations and departments
- Improved responsive design
Removed
- Audit feed
- Images for organisations, departments and products
[1.4.2] - 2020-04-22
Added
- MIT License
Changed
- Improve documentation
Fixed
- Fix issue regarding saving
longDescription
for key results
[1.4.1] - 2020-04-17
Added
- Description-field for key-result. Ref. issue #106.
Changed
- Upgrade dependencies
Fixed
- User-search: sum of weighted keys is not allowed to exceed 1
- Typo in nb-no translation
- Objective-progression was always 0
- Products did not update accordingly when changing routes
- keyResultPage did not show longDescription correctly
[1.4.0] - 2020-03-25
Added
- Dynamic
<title>
s withvue-meta
- Ability to add comments when updating progress for a key result via toaster
- Display comments as tooltips on progressions list for a key result
- Fuzzy search for user list on admin panel with
Fuse.js
Changed
- Increase modal size for members chart
- Sortable columns for user list on admin panel
Fixed
- Layout issue on key result page on certain page widths
- A few locale strings that were not mapped correctly
- Remove random word space before 'Home' in breadcrumbs
- Fix issue where progression for an empty objective shows as 'NaN'
- Fix z-index issue with the members modal
[1.3.0] - 2020-03-18
Added
- Visualising members of a department as a network graph
- Localization for nb-no with vue-i18n
Changed
- Refactor all Cloud Functions
- Better documentation (jsdoc) for all Cloud Functions
- Show progress next to an objective also when it's empty (0%)
Fixed
- Fix bug where progression for objectives and periods did not get updated when a new (empty) key result was created
- Hide dashboard view for departments and organisations
- Fix error logged when toggling archived documents on admin panel
[1.2.0] - 2020-03-11
OKRs are now supported on organisation level. This will allow administrators to create and manage details (name, mission statement), objectives and key results for organisations.
Organisations will work in a similar fashion as departments and products, whereas the child departments will be displayed on an organisation’s page. Please note that creating and/or deleting organisations is not included in this version.
What’s new
- OKRs for organisation level
- Character limits for user inputs
Added
- OKRs for organisation level
- Edit existing organisations from the admin panel
- Page to view organisations under route
/organization/<slug>
- Manage objectives and key results for organisation at
/organization/<slug>/edit
- Cloud functions to handle progression for organisation
- Supporting Markdown for mission statements
Changed
- Convert the organisation in breadcrumbs to a link
- Use
placeholder-image.svg
instead ofplaceholder-user.svg
for departments and products that do not have an image - Consistently use American
organization
instead oforganisation
as function and variable names - Reduce font weight on table of contents on help page
- Limit character count on various user inputs
profile/displayName
<= 32 charorganization/name
<= 64 chardepartment/name
<= 64 charproduct/name
<= 64 charperiod/name
<= 12 charobjective/description
<= 320 charobjective/name
<= 160 charmissionStatement
<= 320 charkeyResult/description
<= 120 charkeyResult/unit
<= 32 char
- Improved design on members and products lists (include name next to its image)
- Improved content on
help.md
- Managing products
- Managing organisations
- Managing dynamic periods
- Reduce size of image preview on forms for editing organisations, departments and products
- Visualise the (positive or negative) change on the newsfeed card for updating progress on a key result
Deprecated
Migrating data from Google Sheets: Functionality for migrating data from Google Sheets should no longer be necessary. The scripts for handling this will remain in the codebase for now, but will soon be removed. The description and file upload will be removed in the UI.
Removed
- Form for migrating data from Google Sheets
Fixed
- Fix JSDoc errors in
db.js
[1.1.0] - 2020-03-09
This release introduces dynamic date periods that replace static annual quarters for objectives. This means that custom date periods need to be manually created on each department and product onwards.
Under the ‘Danger Zone’ section on the admin view there is an action that automates the convertion of currently existing objecties onto dyamic date periods. This should only be triggered once in production after release of this version to prevent data loss.
This change adds a /periods
subcollection on the departments
and products
collections that holds the details for the periods as well as the progression for that period.
Added
- Show callout to team members when a product image is missing
- Documentation for managing departments on Help page
- Automated backup of the firebase database
- Automated restore of backup for the firebase database
Changed
- Converting static annual quarters to dynamic and custom date periods
- Users can now create unlimited future (and past) periods
- Users must give name date periods
- Navigating between periods using URL query parameters
- Adjustments in Cloud Functions to handle progression for dynamic periods
- Refactoring some Firestore handling – introducing the
serializeList
function to make the codebase a bit more DRY. - Hide progress visualisation when department or product does not have any objectives
Removed
- Legacy dashboard component
Fixed
- Fix issue where progress graphic did not always update when navigating between pages
- Force the submenu to appear even when no periods are available
- Minor layout adjustment on the page header (less white space below page name on desktop)
- Allow floating point numbers as key result progress
- Replace ninjas with cubes when a department has zero products
[1.0.1] - 2020-02-24
Added
- Table of contents on help page
- CHANGELOG.md
Changed
- Fixed misleading text on help page for updating profile image
- Hide notes on key result page for non-members
- Improve styling of line chart (gradient fill)
- Increase size and quality for uploaded images
- Updated event-types.md with correct data
Fixed
- Navigating to products/departments didn’t load the correct data
- Updating/changing a migrated key results
First official release (v1.0)
First stable release.