)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000530,"name":"Jeffry Morris","email":"jeffrymorris@gmail.com","username":"jmorris","avatars":[{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"8bf124a493a47c3d4ff551a79e94b8b31962187b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":24,"id":"4cccfdb6_d1b633be","updated":"2026-03-31 22:17:50.000000000","message":"Just a few questions. Glad to see you used dotnet benchmark!","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"}],"src/Couchbase/Core/Diagnostics/Metrics/AppTelemetry/AppTelemetryCollector.cs":[{"author":{"_account_id":1000530,"name":"Jeffry Morris","email":"jeffrymorris@gmail.com","username":"jmorris","avatars":[{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"8bf124a493a47c3d4ff551a79e94b8b31962187b","unresolved":true,"context_lines":[{"line_number":105,"context_line":"        requestType ??\u003d AppTelemetryUtils.DetermineAppTelemetryRequestType(serviceType);"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"        var targetKey \u003d new NodeAndBucket(node ?? string.Empty, alternateNode, nodeUuid, bucket);"},{"line_number":108,"context_line":"        var dict \u003d Volatile.Read(ref _metricSets);"},{"line_number":109,"context_line":"        var metricSet \u003d dict.GetOrAdd(targetKey, _ \u003d\u003e new AppTelemetryMetricSet());"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"        if (counterType \u003d\u003d AppTelemetryCounterType.Total \u0026\u0026 operationLatency.HasValue)"}],"source_content_type":"text/x-csharp","patch_set":24,"id":"65ead6a5_44911229","line":108,"updated":"2026-03-31 22:17:50.000000000","message":"Wouldn\u0027t a mutext be better here (like before) or is it permissable for two more threads to access this code at once? Performance tradeoff?","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"},{"author":{"_account_id":1005037,"name":"Emilien Bevierre","email":"emilien.bevierre@couchbase.com","username":"SecureCake","avatars":[{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"694786ffb49c0a5a38d5c729f7b62c0323bd5ac8","unresolved":true,"context_lines":[{"line_number":105,"context_line":"        requestType ??\u003d AppTelemetryUtils.DetermineAppTelemetryRequestType(serviceType);"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"        var targetKey \u003d new NodeAndBucket(node ?? string.Empty, alternateNode, nodeUuid, bucket);"},{"line_number":108,"context_line":"        var dict \u003d Volatile.Read(ref _metricSets);"},{"line_number":109,"context_line":"        var metricSet \u003d dict.GetOrAdd(targetKey, _ \u003d\u003e new AppTelemetryMetricSet());"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"        if (counterType \u003d\u003d AppTelemetryCounterType.Total \u0026\u0026 operationLatency.HasValue)"}],"source_content_type":"text/x-csharp","patch_set":24,"id":"d182a884_f8413949","line":108,"in_reply_to":"65ead6a5_44911229","updated":"2026-04-01 09:01:59.000000000","message":"A mutex isn\u0027t needed here anymore, `GetOrAdd` is thread-safe and (when needed) `Volatile.Read(ref _metricSets)` ensures each read always see an \"active\" ConcurrentDictionary when it\u0027s being swapped if the collector gets disabled.","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"},{"author":{"_account_id":1000530,"name":"Jeffry Morris","email":"jeffrymorris@gmail.com","username":"jmorris","avatars":[{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"9be32a4cf4c51d64bb41c55bcda1b6809821395b","unresolved":false,"context_lines":[{"line_number":105,"context_line":"        requestType ??\u003d AppTelemetryUtils.DetermineAppTelemetryRequestType(serviceType);"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"        var targetKey \u003d new NodeAndBucket(node ?? string.Empty, alternateNode, nodeUuid, bucket);"},{"line_number":108,"context_line":"        var dict \u003d Volatile.Read(ref _metricSets);"},{"line_number":109,"context_line":"        var metricSet \u003d dict.GetOrAdd(targetKey, _ \u003d\u003e new AppTelemetryMetricSet());"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"        if (counterType \u003d\u003d AppTelemetryCounterType.Total \u0026\u0026 operationLatency.HasValue)"}],"source_content_type":"text/x-csharp","patch_set":24,"id":"67fcbd56_0f606ddd","line":108,"in_reply_to":"d182a884_f8413949","updated":"2026-04-01 19:28:53.000000000","message":"Acknowledged","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"}],"src/Couchbase/Core/Diagnostics/Metrics/AppTelemetry/AppTelemetryHistogramBins.cs":[{"author":{"_account_id":1000530,"name":"Jeffry Morris","email":"jeffrymorris@gmail.com","username":"jmorris","avatars":[{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"8bf124a493a47c3d4ff551a79e94b8b31962187b","unresolved":true,"context_lines":[{"line_number":32,"context_line":"                return;"},{"line_number":33,"context_line":"            }"},{"line_number":34,"context_line":"        }"},{"line_number":35,"context_line":"    }"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    /// \u003csummary\u003e"},{"line_number":38,"context_line":"    /// Atomically snapshots and resets all bins. Returns arrays for export."}],"source_content_type":"text/x-csharp","patch_set":24,"id":"989e7575_b36e30ba","line":35,"updated":"2026-03-31 22:17:50.000000000","message":"Performance over thread safety?","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"},{"author":{"_account_id":1000530,"name":"Jeffry Morris","email":"jeffrymorris@gmail.com","username":"jmorris","avatars":[{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"9be32a4cf4c51d64bb41c55bcda1b6809821395b","unresolved":true,"context_lines":[{"line_number":32,"context_line":"                return;"},{"line_number":33,"context_line":"            }"},{"line_number":34,"context_line":"        }"},{"line_number":35,"context_line":"    }"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    /// \u003csummary\u003e"},{"line_number":38,"context_line":"    /// Atomically snapshots and resets all bins. Returns arrays for export."}],"source_content_type":"text/x-csharp","patch_set":24,"id":"76d7248e_59bbdb71","line":35,"in_reply_to":"1f70790f_e1d101b3","updated":"2026-04-01 19:28:53.000000000","message":"Context: I mean\u0027t the switch from mutex to interlocked, however, later I figured out how this works so disregard.","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"},{"author":{"_account_id":1005037,"name":"Emilien Bevierre","email":"emilien.bevierre@couchbase.com","username":"SecureCake","avatars":[{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"c84c3717aaa894807d20f315a0c4c85d63c88646","unresolved":false,"context_lines":[{"line_number":32,"context_line":"                return;"},{"line_number":33,"context_line":"            }"},{"line_number":34,"context_line":"        }"},{"line_number":35,"context_line":"    }"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    /// \u003csummary\u003e"},{"line_number":38,"context_line":"    /// Atomically snapshots and resets all bins. Returns arrays for export."}],"source_content_type":"text/x-csharp","patch_set":24,"id":"8cb25258_5739956e","line":35,"in_reply_to":"76d7248e_59bbdb71","updated":"2026-04-02 00:44:55.000000000","message":"Acknowledged","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"},{"author":{"_account_id":1005037,"name":"Emilien Bevierre","email":"emilien.bevierre@couchbase.com","username":"SecureCake","avatars":[{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"694786ffb49c0a5a38d5c729f7b62c0323bd5ac8","unresolved":true,"context_lines":[{"line_number":32,"context_line":"                return;"},{"line_number":33,"context_line":"            }"},{"line_number":34,"context_line":"        }"},{"line_number":35,"context_line":"    }"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    /// \u003csummary\u003e"},{"line_number":38,"context_line":"    /// Atomically snapshots and resets all bins. Returns arrays for export."}],"source_content_type":"text/x-csharp","patch_set":24,"id":"1f70790f_e1d101b3","line":35,"in_reply_to":"989e7575_b36e30ba","updated":"2026-04-01 09:01:59.000000000","message":"Which bit specifically are you referring to?\nThe boundaries are static, they\u0027re safe to iterate over and the increments are safe with `Interlocked`.","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"}],"src/Couchbase/Core/Diagnostics/Metrics/AppTelemetry/BinSnapshot.cs":[{"author":{"_account_id":1000530,"name":"Jeffry Morris","email":"jeffrymorris@gmail.com","username":"jmorris","avatars":[{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"8bf124a493a47c3d4ff551a79e94b8b31962187b","unresolved":true,"context_lines":[{"line_number":7,"context_line":"{"},{"line_number":8,"context_line":"    public readonly double Boundary \u003d boundary;"},{"line_number":9,"context_line":"    public readonly uint Count \u003d count;"},{"line_number":10,"context_line":"    public readonly double SumMilliseconds \u003d sumMilliseconds;"},{"line_number":11,"context_line":"}"}],"source_content_type":"text/x-csharp","patch_set":24,"id":"75108253_7109e8f8","line":10,"updated":"2026-03-31 22:17:50.000000000","message":"Any concerns about mutability here? Would a record be a better choice?","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"},{"author":{"_account_id":1000530,"name":"Jeffry Morris","email":"jeffrymorris@gmail.com","username":"jmorris","avatars":[{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"9be32a4cf4c51d64bb41c55bcda1b6809821395b","unresolved":false,"context_lines":[{"line_number":7,"context_line":"{"},{"line_number":8,"context_line":"    public readonly double Boundary \u003d boundary;"},{"line_number":9,"context_line":"    public readonly uint Count \u003d count;"},{"line_number":10,"context_line":"    public readonly double SumMilliseconds \u003d sumMilliseconds;"},{"line_number":11,"context_line":"}"}],"source_content_type":"text/x-csharp","patch_set":24,"id":"81c81374_84ae033a","line":10,"in_reply_to":"3305d3b5_9286ef1a","updated":"2026-04-01 19:28:53.000000000","message":"Acknowledged","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"},{"author":{"_account_id":1005037,"name":"Emilien Bevierre","email":"emilien.bevierre@couchbase.com","username":"SecureCake","avatars":[{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"694786ffb49c0a5a38d5c729f7b62c0323bd5ac8","unresolved":true,"context_lines":[{"line_number":7,"context_line":"{"},{"line_number":8,"context_line":"    public readonly double Boundary \u003d boundary;"},{"line_number":9,"context_line":"    public readonly uint Count \u003d count;"},{"line_number":10,"context_line":"    public readonly double SumMilliseconds \u003d sumMilliseconds;"},{"line_number":11,"context_line":"}"}],"source_content_type":"text/x-csharp","patch_set":24,"id":"3305d3b5_9286ef1a","line":10,"in_reply_to":"75108253_7109e8f8","updated":"2026-04-01 09:01:59.000000000","message":"This is already immutable, and potentially lighter than a record we really don\u0027t need much from this.  \nIt\u0027s a `readonly struct` with only other `readonly structs` as fields.","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"}],"src/Couchbase/Core/IO/HTTP/HttpServiceBase.cs":[{"author":{"_account_id":1000201,"name":"Sergey Avseyev","email":"sergey.avseyev@gmail.com","username":"avsej","avatars":[{"url":"https://www.gravatar.com/avatar/dd70f9d8cc5f9ee488d68e7a787ba526.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/dd70f9d8cc5f9ee488d68e7a787ba526.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/dd70f9d8cc5f9ee488d68e7a787ba526.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/dd70f9d8cc5f9ee488d68e7a787ba526.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"36421b2604bfde3468a8d6ed34cc254bcf4d3fba","unresolved":true,"context_lines":[{"line_number":84,"context_line":"            bool isReadOnly,"},{"line_number":85,"context_line":"            TErrorContext context,"},{"line_number":86,"context_line":"            ILogger logger,"},{"line_number":87,"context_line":"            IAppTelemetryCollector? telemetryCollector) where TErrorContext : IErrorContext"},{"line_number":88,"context_line":"        {"},{"line_number":89,"context_line":"            if (ex is OperationCanceledException)"},{"line_number":90,"context_line":"            {"}],"source_content_type":"text/x-csharp","patch_set":20,"id":"df054f0a_ac152e8a","line":87,"updated":"2026-03-27 20:54:40.000000000","message":"Maybe this parameter is not needed anymore once it moved to MetricTracker.AppTelemetry?","commit_id":"65d5f81a36a0e8968f4cb1f2d2cb1d0dc39d5a6b"},{"author":{"_account_id":1005037,"name":"Emilien Bevierre","email":"emilien.bevierre@couchbase.com","username":"SecureCake","avatars":[{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"8cffda2b583b0092a315f8ce3053ab804b9ac259","unresolved":false,"context_lines":[{"line_number":84,"context_line":"            bool isReadOnly,"},{"line_number":85,"context_line":"            TErrorContext context,"},{"line_number":86,"context_line":"            ILogger logger,"},{"line_number":87,"context_line":"            IAppTelemetryCollector? telemetryCollector) where TErrorContext : IErrorContext"},{"line_number":88,"context_line":"        {"},{"line_number":89,"context_line":"            if (ex is OperationCanceledException)"},{"line_number":90,"context_line":"            {"}],"source_content_type":"text/x-csharp","patch_set":20,"id":"940f8b53_77e0e778","line":87,"in_reply_to":"df054f0a_ac152e8a","updated":"2026-03-30 08:43:00.000000000","message":"Oh good catch, this was a leftover shared method between all Http clients, and `ViewClient` was still using it (which doesn\u0027t track AppTelemetry). Removed it.","commit_id":"65d5f81a36a0e8968f4cb1f2d2cb1d0dc39d5a6b"}],"tests/Couchbase.UnitTests/Search/SearchClientTests.cs":[{"author":{"_account_id":1000530,"name":"Jeffry Morris","email":"jeffrymorris@gmail.com","username":"jmorris","avatars":[{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"8bf124a493a47c3d4ff551a79e94b8b31962187b","unresolved":true,"context_lines":[{"line_number":520,"context_line":"    //        Assert.False(result.Success);"},{"line_number":521,"context_line":"    //        Assert.Equal(content.error, result.Errors.First());"},{"line_number":522,"context_line":"    //    }"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"        class FakeMessageHandler : HttpMessageHandler"},{"line_number":525,"context_line":"        {"},{"line_number":526,"context_line":"            public HttpRequestMessage RequestMessage { get; private set; }"}],"source_content_type":"text/x-csharp","patch_set":24,"id":"2e57bd52_026e5e8a","line":523,"updated":"2026-03-31 22:17:50.000000000","message":"I wonder why all of these tests are commented out?","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"},{"author":{"_account_id":1005037,"name":"Emilien Bevierre","email":"emilien.bevierre@couchbase.com","username":"SecureCake","avatars":[{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"694786ffb49c0a5a38d5c729f7b62c0323bd5ac8","unresolved":true,"context_lines":[{"line_number":520,"context_line":"    //        Assert.False(result.Success);"},{"line_number":521,"context_line":"    //        Assert.Equal(content.error, result.Errors.First());"},{"line_number":522,"context_line":"    //    }"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"        class FakeMessageHandler : HttpMessageHandler"},{"line_number":525,"context_line":"        {"},{"line_number":526,"context_line":"            public HttpRequestMessage RequestMessage { get; private set; }"}],"source_content_type":"text/x-csharp","patch_set":24,"id":"a294c958_9e4532e7","line":523,"in_reply_to":"2e57bd52_026e5e8a","updated":"2026-04-01 09:01:59.000000000","message":"Good question, they were last modified in 2019.\n`ContextFactory` doesn\u0027t exist, I can delete them as stale tests?","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"},{"author":{"_account_id":1005037,"name":"Emilien Bevierre","email":"emilien.bevierre@couchbase.com","username":"SecureCake","avatars":[{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/c1e3f0606531d9492a433378ebb72350.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"c84c3717aaa894807d20f315a0c4c85d63c88646","unresolved":false,"context_lines":[{"line_number":520,"context_line":"    //        Assert.False(result.Success);"},{"line_number":521,"context_line":"    //        Assert.Equal(content.error, result.Errors.First());"},{"line_number":522,"context_line":"    //    }"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"        class FakeMessageHandler : HttpMessageHandler"},{"line_number":525,"context_line":"        {"},{"line_number":526,"context_line":"            public HttpRequestMessage RequestMessage { get; private set; }"}],"source_content_type":"text/x-csharp","patch_set":24,"id":"06e1d5ff_d51c4b51","line":523,"in_reply_to":"a02d75e8_8812b436","updated":"2026-04-02 00:44:55.000000000","message":"Done","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"},{"author":{"_account_id":1000530,"name":"Jeffry Morris","email":"jeffrymorris@gmail.com","username":"jmorris","avatars":[{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/d0b8b4cd259ea37fb99be261e6a720b0.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"9be32a4cf4c51d64bb41c55bcda1b6809821395b","unresolved":true,"context_lines":[{"line_number":520,"context_line":"    //        Assert.False(result.Success);"},{"line_number":521,"context_line":"    //        Assert.Equal(content.error, result.Errors.First());"},{"line_number":522,"context_line":"    //    }"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"        class FakeMessageHandler : HttpMessageHandler"},{"line_number":525,"context_line":"        {"},{"line_number":526,"context_line":"            public HttpRequestMessage RequestMessage { get; private set; }"}],"source_content_type":"text/x-csharp","patch_set":24,"id":"a02d75e8_8812b436","line":523,"in_reply_to":"a294c958_9e4532e7","updated":"2026-04-01 19:28:53.000000000","message":"Yes, let\u0027s tidy them up.","commit_id":"ae121b3fa7a5c95c35924cb183d5fd5cc6f403f3"}]}
