anchor.diff:              Error;
           {ok, Registry} ->
               AllVersions = get_section(Section, Registry),
  -            case maps:find(Version, AllVersions) of
  +            NormalizedVersion = get_normalized_version(maps:keys(AllVersions), Version),
  +            case maps:find(NormalizedVersion, AllVersions) of
                   error ->
                       {error, unknown_version};
                   {ok, Entries} ->
  
positive.code:             end, OuterAcc, CompatibleVersions)
          end, OPvsOPSection, OPvsOPSection),
  
          %% Harvester GUI entries have another nesting level with human-readable
          %% labels (e.g. "ecrin") - it is flattened here.
          GuiShaSection = maps:get(<<"gui-sha256">>, Registry, #{}),
  
negative.code:     {error, unknown_version | cannot_parse_registry}.
  check_products_compatibility(?ONEZONE, VersionA, ?ONEPROVIDER, VersionB) ->
      check_entry([<<"compatibility">>, <<"onezone:oneprovider">>], VersionA, VersionB);
  check_products_compatibility(?ONEPROVIDER, VersionA, ?ONEZONE, VersionB) ->
      check_entry([<<"compatibility">>, <<"oneprovider:onezone">>], VersionA, VersionB);
  check_products_compatibility(?ONEPROVIDER, VersionA, ?ONEPROVIDER, VersionB) ->
      check_entry([<<"compatibility">>, <<"oneprovider:oneprovider">>], VersionA, VersionB);
  check_products_compatibility(?ONEPROVIDER, VersionA, ?ONECLIENT, VersionB) ->
  