Confused about EntityQueryBuilder + AddChangedVersionFilter

Hi! Can somebody explain me, why query3 don’t work like another two. To be more precise, query3 AddChangedVersionFilter just don’t work.

[InternalBufferCapacity(256)]
public struct FatBuffer : IBufferElementData {
    public int BufferData;
}

public partial struct SystemA : ISystem {
    private EntityQuery query1;
    private EntityQuery query2;
    private EntityQuery query3;

    public void OnCreate(ref SystemState state) {
        var myArchetype = state.EntityManager.CreateArchetype(typeof(CivicComponent), typeof(FatBuffer));
        for (var i = 0; i < 3; i++) {
            var createdEntity = state.EntityManager.CreateEntity(myArchetype);
            state.EntityManager.SetName(createdEntity, $"Entity No. {i}");
        }

        query1 = SystemAPI.QueryBuilder()
            .WithAll<CivicComponent>()
            .Build();
        query1.AddChangedVersionFilter(ComponentType.ReadOnly<CivicComponent>());

        query2 = state.GetEntityQuery(
            new EntityQueryBuilder(Allocator.Temp)
                .WithAll<CivicComponent>()
        );
        query2.AddChangedVersionFilter(ComponentType.ReadOnly<CivicComponent>());

        query3 = new EntityQueryBuilder(Allocator.Temp)
            .WithAll<CivicComponent>()
            .Build(state.EntityManager);
        query3.AddChangedVersionFilter(ComponentType.ReadOnly<CivicComponent>());
    }

    public void OnUpdate(ref SystemState state) {
        foreach (
            var entity in query1.ToEntityArray(Allocator.Temp)
        ) {
            Debug.Log($"Query 1: {state.EntityManager.GetName(entity)} foreach at frame {Time.frameCount}");
        }

        foreach (
            var entity in query2.ToEntityArray(Allocator.Temp)
        ) {
            Debug.Log($"Query 2 : {state.EntityManager.GetName(entity)} foreach at frame {Time.frameCount}");
        }

        foreach (
            var entity in query3.ToEntityArray(Allocator.Temp)
        ) {
            Debug.Log($"Query 3 : {state.EntityManager.GetName(entity)} foreach at frame {Time.frameCount}");
        }
    }
}