Closed whesse closed 2 years ago
The failure is caused by https://github.com/dart-lang/dart_ci/blob/master/results_feed/lib/src/test_source.dart#L13 which says
commits.singleWhere((c) => c.index == change.blamelistEndIndex).hash
If the change is pinned, the list "commits" only contains the single pinned commit, not the range from blamelistStartIndex to blamelistEndIndex.
The solution is to replace change.blamelistEndIndex with change.pinnedIndex ?? change.blamelistEndIndex, which is the expression used to compute the last element of the list "commits" when it is constructed.
The source link for a results change is broken, if those results have been pinned to a commit other than the last commit of their prior blamelist.
The calculation of the source URL throws an exception, which means that the log link and history link are also not calculated. Example image, showing the links as plain text rather than links.