75min

Changelog

Echoes is released continuously, our changelog is therefore an arbitrary month-to-month aggregation of changes.

2022

June

Added
Added
Added
Improved
Fixed

Experimental: PagerDuty integration

The PagerDuty integration is an experimental feature being rolled-out progressively to our user base. Feel free to reach out if you'd like it activated for your company.

The PagerDuty integration allows Echoes to connect to your PagerDuty instance in other to gather data on production incidents. The data collected by this integration will for example feed the MTTR (mean time to recovery) metrics. and more in the future.

PagerDuty integration
PagerDuty integration

In-flight and backlog items in the intent report

The intent report is a zoom-in on a specific outcome or initiative, presenting the activity over time and how it impacts the different teams. This report now shows:

  • In-flight: the pull requests (GitHub) and merge requests (GitLab) contributing to the intent under examination which are still open, with additional details on the current phase and delays.
  • Completed: completed efforts contributing to the intent under examination.
  • Backlog: the remaining opened tickets labeled with the intent under examination across integrations (e.g., GitHub issues, JIRA user stories).
In-flight and completed efforts in the intent report
In-flight and completed efforts in the intent report

This view will continue to evolve in order to highlight blockers and outliers in your development flow.

Optionally apply initiatives composition changes to past efforts

Changing the composition of an initiatve can now be retroactively applied to past efforts.

Option to control whether composition changes apply to past efforts
Option to control whether composition changes apply to past efforts

When the option to retroactively apply composition changes to past efforts is checked, Echoes will reprocess historical data upon saving the initiative. Past efforts will be updated with the new composition, as if the initiative was always defined this way. While this process is irreversible, you still have the ability to revert the initiative to its past definition and retroactively apply that change.

Preserve published labels upon renaming

This is a sensitive change which is progressively being rolled out, account per account, and integration per integration.

Published labels are no longer deleted and recreated when an outcome or initiative is modified. This behavior had the undesired side effect of removing past annotations when the original label got deleted (for example on GitHub issues or JIRA tickets).

Miscellaneous bugfixes

  • Fixed an issue with Linear integration for teams with a high number of labels.
  • Fixed an issue where GitHub labels would remain after the corresponding outcome or initiative was deleted.
  • Fixed an issue where the intent on a JIRA issue would not properly be updated when changed.
  • Fixed an issue preventing Echoes to fall back on a JIRA ticket creator when no assignee is present.

May

Added
Added
Improved
Improved
Fixed

Experimental: activity map

The activity overview is an experimental feature being rolled-out progressively to our user base. Feel free to reach out if you'd like it activated for your company.

The activity map presents the flow of value in your product-engineering organization in a synthetic way. It highlights how initiatives contribute to outcomes, and for each how much efforts have been spent on the period (compared to the previous period), and how far we are (compared to the previous period).

Activity map
Activity map

The activity map, like all other reports, can be filtered on specific teams or a specific time window.

Filter persistence

The initial state of filters (e.g., selected teams, time period, and intent) were always initialized based on the logged in user's position within the organization. However, they are many cases in which users want to exclude a team from the reports, or always look at their report through the same time window.

The state of filters are persisted across reports as you navigate the app using your browser's local storage.

Dashboard refresh after items are tagged

Echoes provides a builtin tagger to annotate GitHub pull requests or GitLab merge requests directly from the app.



After tagging items through this method, Echoes now refreshes the dashboard to reflect the new annotations.



Note: because we rely on the labels being ackowledged by either GitHub or GitLab, a small delay may remain before all user actions get reflected in the data.



Opening the builtin tagger
Opening the builtin tagger

Improve release intent distribution

The distribution of intent of a given release is now taking initiatives into account and can show for any selected release the accurate distribution of efforts across outcomes.



The release timeline is also improved to accomodate for situations where deployment frequency is very high.



Distribution of intent on a given release
Distribution of intent on a given release

Miscellaneous

  • Add a change password link to the user profile.
  • Fix an issue where an installation of the JIRA plugin would fail under certain circumstances.
  • Prevent force push from alterting pull requests lead time computation.
  • Prevent the ability to drag a team as a sibbling of the organization root.

April

Added
Added
Improved
Improved
Improved
Improved
Improved
Fixed

Tagged Linear issues contribute to initiatives scope

Linear issue labels with an initiatives will now be considered part of that initiative's scope, and will therefore contribute to the initiative's measure of progress.

Tagging an issue Linear with an initiative
Tagging an issue Linear with an initiative

Initiative target completion date

An optional target completion date can be set on initiatives at creation time and changed at any point.

Setting the target completion date for an initiative
Setting the target completion date for an initiative

This information, combined with Echoes knowledge of the effort and progress on the initiative, is used to indicate the status of the initiative.

Initiative status with regards to its target date
Initiative status with regards to its target date

Status is defined as followed:

Status

Definition

On track

The initiative is likely to be delivered by its target date.

At risk

The initiative is at risk of not meeting its target date.

Off track

The initiative will not be completed by its target date given the current pace of progress.

Unknown

An estimated completion date could not be computed. This may happen when Echoes has insufficient data regarding the activity on this initiative.

Pull request approval as a component of the lead time

This feature is being rolled out progressively for our GitHub users.

In addition to being broken down into the time to merge (i.e., delay between a first commit and a pull request being merged) and the time to deploy (i.e., delay between the pull request being merged and its deployment), the lead time will now display take into consideration the moment at which a pull request was approved.

The components of the lead time
The components of the lead time

Zooming on an outcome or initiative

Names of outcomes or initiatives throughout the report are now link to a dedicated report showing the activity on that particular intent:

Zooming on the "Customer value" outcome
Zooming on the "Customer value" outcome

This space shows you an activity timeline, where in the organization have these efforts taken place, and the list of individual units contributing to it.

Improve GitHub interactions for large organizations

Echoes would occasionally hit GitHub API limits for organizations with hundred of repositories. This could have led to visible delays in data integration or on automated pull requests checks. We have significantly improved our interactions with the GitHub API to prevent this from happening.

Improve GitHub installation flow when an owner's approval is required

Improve the experience when the user doing the onboarding does not have the permissions to approve the installation of the GitHub App on the target organization. This flow used to create a lot of confusion as the approver would be redirected to Echoes without having an account for it.

GitHub installation flow with approval
GitHub installation flow with approval

Please note that while the user experience was significantly improved, the installation flow still requires a manual step by Echoes support for security reasons.

Ignore merge commits within pull requests and merge requests

In situations where for example a staging branch is merged into main , Echoes knows how to prevent previously known commits from being accounted for multiple times. However such pull request may contain merge commits only present on the staging branch which Echoes had never seen as part of a prior pull request.

Echoes now ignores any non-ordinary commit (that is: a commit with a number of parents different than 1) within GitHub pull requests and GitLab merge requests. As a result, a pull request which introduces no new commits but only merges existing commits into another branch will not be accounted for anymore.

Prevent stale labels on issue trackers

Fix a situation where labels on issue trackers (i.e., JIRA "Echoes - Intent" custom field, Linear labels, Shortcut labels) would become stale and not reflect Echoes' internal configuration.

March

Added
Added
Added
Improved
Improved

Opt-in label creation to public GitHub repositories

Echoes no longer creates labels for outcomes and initiatives on public GitHub repositories by default. This is a defensive measure to avoid accidentally disclosing roadmap information through labels.

Publication settings with public repositories toggle
Publication settings with public repositories toggle

Publication to public repositories must be enabled selectively on a per-outcome and per-initiative basis in Scoped publishing.

The share button copies to your clipboard a report link which includes the state of your filters. This makes it easy to share the exact same view you are looking at to your coworkers, and to save report links in internal documentation.

Share report button
Share report button

Filter on custom date range

The period filter on reports lets you pick a custom date range.

Custom date range filter
Custom date range filter



Searchable intent filter

For organizations with a large number of outcomes and initiatives, the intent filter can be searched.

Search box in intent filter
Search box in intent filter

Lead time display

Read the full documentation Vitals.

Following last month release of the Vitals report, this month are introduced improvements to the lead time visualization based on your feedbacks. In particular, the lead time can now be examined: as a breakdown of its components (at this time: first commit to merge, and merge to deployment), over time, and on a team-per-team basis.

Lead time visualization
Lead time visualization

February

Added
Added
Added
Improved
Improved
Improved

Vitals report

Read the full documentation Vitals.

The vitals report shows you the measures made popular by the DORA research program and the associated book Accelerate.

Lead time
Lead time

The report provides the two tempo metrics of lead time and deployment frequency, which are now considered as industry-standards to measure software delivery performance.

Measure progress on initiatives

Echoes reports the progress on initiatives by collecting issues tagged with their corresponding labels across all integrations (e.g., GitHub issues, JIRA tickets). It shows the number of completed and remaining tasks over time, how these numbers changed since last week, and how far you are from completion. GitHub task lists are also supported: each individual task will contribute to the total.

Progress on an ongoing initiative
Progress on an ongoing initiative

Tagging issues with the initiatives they contribute to is all it takes to benefit from this feature. As a reminder, tagging issues has the added benefits that pull requests linked to such an issue (for example through a "closes #xxxx" on GitHub" or a JIRA reference) will automatically inherit its labels.

Units of work timeline and filters

The units of work view now includes filters on teams and intent, and a timeline showing the volume of contributions across time.

Units of work timeline and filters
Units of work timeline and filters

Indirect effort in trajectory table

The trajectory table previously hid efforts on initiatives components when initiatives were displayed. While this made sense to avoid showing duplicated efforts, it gave the wrong impression that no efforts were contributed to the underlying goals.

When initiatives are displayed, the trajectory table will now reports both the efforts going directly into an outcome as well as the indirect efforts contributed through initiatives.

Trajectory table showing both direct and indirect efforts toward the outcomes
Trajectory table showing both direct and indirect efforts toward the outcomes

Exclude empty lines from trajectory table

The trajectory table now filters out lines that have no relevant data to be shown, such as deleted outcomes or initiatives with no efforts on the period under examination.

Actionable GitHub checks messages

Automated GitHub checks provide better feedback on the reason why a check is skipped. In particular, the details explain when a check was skipped because the author doesn't belong to any team in Echoes configuration, and the steps to fix it if necessary.

GitHub check message when the author is not part of any team
GitHub check message when the author is not part of any team

January

Added
Added
Improved
Fixed

Account for activities happening outside of git

Echoes can now account for efforts which are happening outside of GitHub pull requests or GitLab merge requests, such as investigating an incident, or creating new resources in your cloud provider. Echoes will now account for completed tickets when they are tagged with an effort value.

In JIRA, the "Echoes - Intent" custom field lets you set the intent of this issue (as defined within Echoes). Upon completion of the issue, the "Echoes - Effort" custom field will be used to account for the effort using the same t-shirt size scale used for pull requests.

Using Echoes custom fields to capture efforts happening outside of gitt
Using Echoes custom fields to capture efforts happening outside of gitt

Accounting for efforts described in tickets is currently supported for JIRA integrations.

Shortcut integration

Read the full documentation: Shortcut.



You can now connect Echoes to your Shortcut workspace.



Echoes creates Shortcut labels for each of its configured outcomes and initiatives. Shortcut stories can then be tagged with their intent as defined within Echoes.



A GitHub pull request or GitLab merge request referencing a Linear issue will automatically inherit its labels, without requiring any manual action from the author.



Document image

Multiple user experience improvements

This month were shipped dozens of small user experience improvements, many we owe to our users feedback. The non-exhaustive and unordered list includes:

  • Significantly simplify navigation with the sidebar.
  • Redesign parts of the units of work table to account for items outside of git.
  • Fix the page selection in units of work table.
  • Fix the missing horizontal scrollbar in units of work table.
  • Fix the confusing buttons in the outcomes and initiatives creation flow.
  • Fix the documentation link not opening in a new tab.
  • Fix a bug where the list of initiatives wouldn't scale to its content.



2021

December

Added
Added
Fixed
Improved
Added

Linear integration

Read the full documentation: Linear



You can now connect Echoes to your Linear workspace.



Echoes creates Linear issue labels for each of its configured outcomes and initiatives. Linear issues can then be tagged with their intent as defined within Echoes.



A GitHub pull request or GitLab merge request referencing a Linear issue will automatically inherit its labels, without requiring any manual action from the author.

Document image

Releases instrumentation

You can declare releases through the new Releases API. This will feed into a new dashboard displaying your timeline of releases per team, and the ability to inspect the content of releases based on their intent.

JIRA custom field options deletion

The JIRA integration would not, under certain conditions, properly remove custom field options as outcomes and initiatives get deleted from the configuration.

Read multiple JIRA issue keys from a single item

Echoes previously extracted a single issue key from a GitHub pull request (or GitLab merge request) title, branch name, or commit message headline. Echoes will now follow every issue key is finds and will follow the links for each of them.

November

Improved
Improved
Added
Added
Added

Inherit tags from parent JIRA issue

Read the full documentation: JIRA

A GitHub pull request or GitLab merge request previously inherited labels from their linked JIRA issue and its parent EPIC (if any). We now follow the "parent" link, which means that you can reference a JIRA subtask and inherit intent from the entire ancestry.

Example of label inheritance
Example of label inheritance

In the example above, a pull request references JIRA sub-task JIRA-3 in its title. Echoes successively inspects JIRA-3, its parent story JIRA-2, and the parent EPIC JIRA-1, collecting all values of the intent field along the path. It finds an intent on the EPIC and applies the corresponding label to the pull request. This required a single tag in JIRA, and no developer action.

Redesign outcomes and initiatives user experience

The outcomes and initiatives creation screen have been redesigned for clarity. We now guide through the creation process and preview how labels will appear on GitHub or GitLab.

Initiatives creation flow
Initiatives creation flow

Experimental support for SAML SSO

Read the full documentation: Enable single sign-on with SAML

Echoes, acting as the service provider (SP), supports single sign-on through SAML using external identity providers (IdPs) such as Okta, OneLogin and Microsoft Active Directory Federation Service. Echoes is compatible with all external IdPs that support SAML 2.0.

Experimental support for HRIS integrations

Read the full documentation: Teams

Echoes can retrieve both the description of the organization tree and its members through connecting to your company's HR system. We support a large number of providers thanks to our provider Finch.

GitHub scoped publication

Read the full documentation: Scoped publishing

Scoped publication allows to finely pick how outcomes and initiatives should be published to your GitHub organization. It allows to prevent certain labels to be created on selected repositories.



Updated 23 Jun 2022
Did this page help you?
Yes
No