anchor.diff:  
   class function TExecutiveTransitionsProvider.CalcTotalSummary(StateHolder : TWorkflowStateHolder) : TArray<TSummaryItem>;
   begin
  -  // TODO: implement {TExecutiveTransitionsProvider.CalcTotalSummary}
  +  Result := CalcSummary(StateHolder, String.Empty);
   end;
   
   class function TExecutiveTransitionsProvider.MakeRecord(Msg : TFixInsightMessage) : TReportRecord;
   begin
  -  // TODO: implement {TExecutiveTransitionsProvider.MakeRecord}
  +  Result.Column             := Msg.Column;
  +  Result.FileName           := Msg.FileName;
  +  Result.Line               := Msg.Line;
  +  Result.MessageText        := Msg.Text;
  +  Result.MessageTypeKeyword := ARR_MSGTYPE_TO_MSGKEYWORD_MAPPING[Msg.MsgType];
  +  Result.MessageTypeName    := ARR_MSGTYPE_TO_MSGNAME_MAPPING[Msg.MsgType];
   end;
   
   class procedure TExecutiveTransitionsProvider.PrepareWorkflow(const StateMachine : IStateMachine;
  
positive.code:     .AddTransition(asReportsParsed, asReportBuilt, acBuildReport,
        procedure (const PreviousState, CurrentState : TApplicationState; const UsedCommand : TApplicationCommand)
        var
          S : TFileName;
          Msg : TFixInsightMessage;
        begin
          with StateHolder do
  
negative.code: 
  class function TExecutiveTransitionsProvider.CalcProjectSummary(StateHolder : TWorkflowStateHolder;
    Project : TFileName) : TArray<TSummaryItem>;
  begin
    Result := CalcSummary(StateHolder, Project);
  end;
  
  class function TExecutiveTransitionsProvider.CalcSummary(StateHolder : TWorkflowStateHolder;
    ProjectFilter : String) : TArray<TSummaryItem>;
  var
    MT : TFixInsightMessageType;
    arrSummary : array [Low(TFixInsightMessageType)..High(TFixInsightMessageType)] of TSummaryItem;
    F : TFileName;
    Msg : TFixInsightMessage;
  begin
    Result := nil;
  