Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
845 commits
Select commit Hold shift + click to select a range
0469e16
[Internal] Code Quality: Adds Exception Analyzers (#5082)
msft-tsharp Mar 26, 2025
175443c
AsyncCache: Adds support for stack trace optimization during exceptio…
ananth7592 Mar 26, 2025
01042b1
WebAssembly : Fixes Guard the ServicePointAccessor call in DocumentCl…
lewing Mar 26, 2025
2faaba4
[Internal] ClientRetryPolicy: Adds Code to Apply Partition Level Over…
kundadebdatta Mar 26, 2025
b42d117
[Internal] Query: Adds Support for ORDER BY RANK in SQL DOM (#5052)
leminh98 Mar 26, 2025
300a3e3
[Internal] Code Analysis Rules: Fixes analyzer issues in Cosmos proje…
aavasthy Mar 29, 2025
45230b8
[Internal] Code Analysis Rules: Fixes analyzer issues in Exception cl…
aavasthy Apr 1, 2025
8f59e24
[Internal] PPAF: Adds Partition Level Failover for Gateway Mode (#5087)
kundadebdatta Apr 2, 2025
402f9aa
[Internal] Open Telemetry: Fixes Metric Name and Unit changes (#5098)
sourabh1007 Apr 2, 2025
1d0046e
[Internal] Binary Encoding: Adds Support for User String Encoding (#5…
Maya-Painter Apr 2, 2025
870fc4e
[Internal] Binary Encoding: Fixes User String Dictionary Interface Na…
Maya-Painter Apr 3, 2025
75125de
Diagnostics: Fixes bug where some overloaded substatus codes are disp…
NaluTripician Apr 4, 2025
187e164
[Internal]Thin Client Integration: Adds containerId to ThinClient req…
aavasthy Apr 5, 2025
c376700
[Internal]Thin Client Integration: Adds ThinProxy endpoint in account…
aavasthy Apr 5, 2025
34b719b
[Internal] Direct package: Adds direct package version 3.38.0 to SDK …
NaluTripician Apr 7, 2025
2687d7b
[Internal] Thin Client Integration: Fixes config refresh and gateway …
aavasthy Apr 9, 2025
65000b5
Query: Adds an environment variable for disabling the hybrid search q…
neildsh Apr 11, 2025
cd21ae6
Metadata requests: Fixes bug where certain metadata requests are not …
NaluTripician Apr 12, 2025
171259c
[Internal] 3.48.1: Refactors changelog + version for 3.48.1 hotfix (#…
NaluTripician Apr 12, 2025
fa6097d
[Internal] Binary Encoding: Adds Client Option to Enable/Disable Requ…
kundadebdatta Apr 14, 2025
9b75f85
[Internal] Query: Adds InternalsVisbility to all query oracle project…
leminh98 Apr 15, 2025
bddf591
UnknownRntbdHeader : Adds a new SDK capability for UnknownRntbdHeader…
dibahlfi Apr 15, 2025
72f9deb
Session Consistency: Adds SessionTokenMismatchRetryPolicy optimizatio…
dibahlfi Apr 15, 2025
0ca35ae
[INTERNAL] AddressEnumerator: Fixes IndexOutOfRangeException Observed…
dibahlfi Apr 15, 2025
e1ee560
[Internal] Thin Client Integration: Fixes rntbd headers for proxy req…
aavasthy Apr 16, 2025
1848684
[Internal] Binary Encoding: Fixes `DateTime` Parsing Issue (#5133)
kundadebdatta Apr 17, 2025
0d22105
VectorIndexing: Adds Preview APIs for VectorIndexing Policies (#5136)
NaluTripician Apr 17, 2025
206ece4
Query: Fixes flip of boolean switch for hybridSearchSkipOrderByRewrit…
neildsh Apr 17, 2025
d3e98de
[Internal] 3.49.0: Adds Version bump, changelog, and contracts (#5140)
NaluTripician Apr 17, 2025
93a79d8
Query: Fixes handling of undefined projections in hybrid search (#5145)
neildsh Apr 24, 2025
e4ec354
[Internal] Thin Client Integration: Fixes the ThinClientTransportSeri…
aavasthy Apr 25, 2025
2cc2ab6
Query: Fixes Full Text Search APIs by marking them public (#5150)
adityasa Apr 29, 2025
0b90eee
[Internal] Thin Client Integration: Adds HTTP Client Sharing between …
aavasthy Apr 30, 2025
7711480
Query: Adds LINQ extension method for ORDER BY RANK, FullTextScore an…
leminh98 Apr 30, 2025
23720f3
[Internal] Thin Client Integration: Fixes location cache update for t…
aavasthy May 1, 2025
60ccb10
HPK : Fixes code documentation to reference PartitionKeyPaths for HPK…
kirankumarkolli May 1, 2025
94f869c
Query: Fixes function signature for RRF, OrderByRank and FullTextScor…
leminh98 May 2, 2025
6d57959
Query: Adds support for the optimized query plan that skips the order…
neildsh May 6, 2025
a627e89
Query: Fixes default for the query plan optimization for Hybrid Searc…
neildsh May 6, 2025
5838871
Version bump: Adds changelog, and contracts for version 3.49.1 releas…
neildsh May 7, 2025
9dd94ec
Query: Fixes FullText Policy API by making language optional (#5172)
adityasa May 7, 2025
6fca24b
[Internal] PPAF: Adds Code to Enable Read Hedging By Default (#5165)
kundadebdatta May 9, 2025
db91df0
Hedging: Fixes Concurrency Issue (#5189)
NaluTripician May 9, 2025
d21434f
Hedging: Adds Hedging for Write requests GA (#5190)
NaluTripician May 10, 2025
25b0fda
3.50.0: Adds version bump and changelog (#5192)
NaluTripician May 10, 2025
54f3c3f
[Internal] Query: Fixes QueryAdviceRuleDocumentation (#5181)
leminh98 May 10, 2025
397609e
[Internal] Changelog: Fixes Changelog (#5194)
NaluTripician May 10, 2025
2baee60
[Internal]API-Documentation: Fixes session retry optimization public …
FabianMeiswinkel May 12, 2025
f07e797
[Internal]: Fixes the Observed exception (ObjectDisposedException) in…
dibahlfi May 12, 2025
7be150c
InMemoryLeaseContainer: Adds public API to use InMemoryLeaseContainer…
kirankumarkolli May 13, 2025
c6b90e4
[Internal] PPAF: Adds Code to Fetch Enablement Flag Through Gateway D…
NaluTripician May 15, 2025
65cc665
3.51.0: Adds new SDK versions and contract files (#5204)
kundadebdatta May 16, 2025
fbaa5bc
Query: Adds support for LINQ extension method for VectorDistance (#5157)
leminh98 May 16, 2025
d5d16df
[Internal] Query: Fixes Perf Tests (#5149)
Maya-Painter May 16, 2025
ea26d29
[Internal] Thin Client Integration: Adds runner tests for thinclient …
aavasthy May 19, 2025
ab51083
[INTERNAL] SessionRetry: Adds support to yield immediately after the …
dibahlfi May 20, 2025
88cf074
[Internal] Pipelines: Fixes emulator tests post emulator upgrade. (#5…
aavasthy May 22, 2025
487c193
[Internal] Thin Client Integration: Adds proxy request headers startE…
aavasthy May 22, 2025
bf16bf6
Client Encryption: Adds support for latest Cosmos package and bumps u…
kr-santosh May 29, 2025
98552ab
[Internal] Binary Encoding: Fixes DateTime Parsing Issue with Trailin…
aavasthy May 30, 2025
f20c685
Query: Adds public PopulateQueryAdvice capability (#5180)
leminh98 Jun 2, 2025
b62bbdd
[Internal] Binary Encoding: Fixes encoding for multi-byte user define…
Maya-Painter Jun 3, 2025
a2945c7
[Internal] Msdata: Adds pipeline runs to msdata/direct branch (#5229)
NaluTripician Jun 3, 2025
bd4ab13
Query : Fixes Skip + Order By Bug (#5221)
Maya-Painter Jun 3, 2025
f20c804
[Internal] Thin Client Integration: Adds runner tests for bulk and ba…
aavasthy Jun 5, 2025
cfabd2a
Client Encryption: Fixes Encryption Release Pipeline (#5234)
kundadebdatta Jun 6, 2025
dc36ab5
Direct Package Upgrade: Fixes `Cosmos.Direct` Package to `3.39.1` (#5…
kundadebdatta Jun 13, 2025
16558bb
3.52.0: Adds new SDK versions and contract files (#5248)
kundadebdatta Jun 14, 2025
4ff7687
[Internal] Fix: Fixes aggressive connection timeout behavior test fla…
ananth7592 Jun 17, 2025
74529da
Change Log: Adds Detailed Change Log for Some of the Previous Version…
kundadebdatta Jun 18, 2025
80924ef
[Internal] Gates: Fixes bug where CosmosOperaitonCancellationExceptio…
NaluTripician Jun 20, 2025
60c2d97
[Internal] PPAF: Fixes Integration Tests to Intercept Gateway Respons…
kundadebdatta Jun 27, 2025
fd0cc4a
[Thin Client Integration] Benchmark tests: Adds tests for thinclient …
aavasthy Jun 27, 2025
ea9a8a8
set license expression #5187 (#5253)
thompson-tomo Jun 27, 2025
0c12e8e
QueryPlan : Fixes 410 Gone Exception on non-x64 platforms (#5257)
dibahlfi Jun 27, 2025
d301474
TokenCredentialCache: Adds an options to override AAD audience scope.…
aavasthy Jun 27, 2025
e97ea1f
[Internal] Gate Reliability: Fixes flaky tests (#5259)
NaluTripician Jun 27, 2025
b42e83b
[Internal] Binary Encoding: Fixes JsonStringDictionary to allow dupli…
Maya-Painter Jun 27, 2025
846dfa0
[Internal] Thin Client Integration: Adds Diagnostics User Agent info …
kundadebdatta Jul 1, 2025
32f8b00
[FaultInjection] ThinClient Compatibility: Adds compatibility with Th…
NaluTripician Jul 1, 2025
d3cf3ee
[Internal] Query: Adds Constants for Trace Datum Keys (#5266)
Maya-Painter Jul 2, 2025
d383d10
[Internal] Testing: Adds test scenario for AddressResolution call fai…
NaluTripician Jul 3, 2025
e5f23a6
[Internal] PPAF: Fixes Account Properties Parsing Logic for Failing T…
kundadebdatta Jul 8, 2025
243a3ca
[Internal] Pipeline Improvement: Adds "Flaky" Tag to Test (#5270)
NaluTripician Jul 8, 2025
523d8d8
Query: Fixes non streaming order by queries to not be tagged as passt…
neildsh Jul 8, 2025
4c82ee6
[Internal] Query: Adds missing function names SqlIdentifier for SQL D…
leminh98 Jul 11, 2025
7acc58a
[Internal] ThinProxy Integration: Adds New `HttpTimeoutPolicy` and Fi…
kundadebdatta Jul 15, 2025
fd735e9
3.52.1: Adds new SDK versions and contract files (#5278)
ananth7592 Jul 15, 2025
faaa3a7
GatewayStoreClient: Fixes stream consumption bug in GatewayStoreClien…
Copilot Jul 16, 2025
f869cce
[Internal] Per Partition Automatic Failover: Removes Remove Environme…
NaluTripician Jul 17, 2025
6eb976b
[Internal] Thin Client Integration: Adds support for Per Partition Au…
aavasthy Jul 18, 2025
d69a1cf
[Internal] Query: Adds override for bypassing query parsing using env…
adityasa Jul 22, 2025
8a0e8e5
Query: Fixes HybridSearchQueryTests to account for backend changes in…
neildsh Jul 24, 2025
cdd1b1d
[Internal] Thin Client Integration: Adds Thin Client Enablement Throu…
aavasthy Jul 25, 2025
33b5c4e
[Internal] Thin Client Integration: Removes ThinClientStoreModel and …
aavasthy Aug 5, 2025
b16759f
[Internal] msdata/direct: Adds separate testing pipeline files (#5316)
NaluTripician Aug 5, 2025
7daaaae
Query: Adds Weighted RRF capability to LINQ (#5308)
leminh98 Aug 7, 2025
a78c201
[Internal] msdata/direct: Removes encryption from pipelines runs (#5339)
NaluTripician Aug 7, 2025
d57cf6f
Query: Adds GetIndexMetrics LINQ extension method (#5313)
leminh98 Aug 7, 2025
57e494c
[Internal] msdata/direct: Removes encryption.custom from pipeline run…
ananth7592 Aug 8, 2025
9fc8b0a
[Internal] PPAF: Adds Dynamic Enablement of PPAF (#5310)
NaluTripician Aug 13, 2025
963b607
[Internal] [FaultInjection] ThinClient: Fixes payload of injected err…
NaluTripician Aug 13, 2025
6ff7e4f
3.53.0: Adds new SDK version and contract files (#5346)
NaluTripician Aug 13, 2025
7f03bf0
[Internal] AOT: Adds Base Pipeline for AOT Package Generation (#5348)
ananth7592 Aug 14, 2025
437e4b0
Trace: Fixes thread safety issue in Trace class causing high CPU usag…
FabianMeiswinkel Aug 19, 2025
3344dcb
VectorDataType: Adds Support for `Float16` Data Type (#5368)
kundadebdatta Aug 21, 2025
5c76bd2
[Internal] Thin Client Integration: Fixes 400/1041 Error for Query Op…
aavasthy Aug 21, 2025
7960241
TokenCredentialCache: Adds a fallback mechanism to AAD scope override…
aavasthy Aug 26, 2025
427aa37
[Client encryption]: Adds new tests for StreamProcessor (#5370)
adamnova Aug 26, 2025
0b775de
3.53.1: Adds hotfix release 3.53.1 (#5378)
aavasthy Aug 28, 2025
077b84d
[Internal] Telemetry: Fixes Telemetry conditions and remove logging (…
sourabh1007 Sep 2, 2025
281300a
[Internal] Pipeline: Fixes pipelines by fixing the StoredProc and Use…
ananth7592 Sep 22, 2025
ed54090
Query: Fixes to not use passthrough context for collections with HPK …
neildsh Sep 23, 2025
cde0c6d
[Internal] Region Availability: Adds New Regions for Public Usage (#5…
kundadebdatta Sep 23, 2025
087d038
Hedging: Adds GA for adding hedging via RequestOptions (#5411)
NaluTripician Sep 24, 2025
35fafb5
[Internal] Query: Adds internals visibility for the functional tests …
leminh98 Sep 25, 2025
e21f50c
Diagnostics: Fixes race condition that can cause InvalidOperationExce…
FabianMeiswinkel Sep 25, 2025
0e9fbcb
[Internal]Nregion: Adds support for including nregioncommit synchrono…
ananth7592 Sep 30, 2025
8f26edb
Hedging: Adds back diagnostics filed `Response Region` to hedging req…
NaluTripician Sep 30, 2025
895697d
PPAF: Fixes issue where setting `RequestTimeout` to `0` second will c…
NaluTripician Oct 1, 2025
7cb23ce
Build: Removes System.Net.Http and System.Text.RegularExpressions pac…
Copilot Oct 2, 2025
673a258
[Internal] Query: Removes Unused Usings (#5429)
Maya-Painter Oct 2, 2025
5aaa555
VectorDataType: Fixes Enum Ordering for `Float16` Data Type (#5432)
kundadebdatta Oct 3, 2025
4629c2d
3.54.0: Adds new contracts/ version, and updates changelog (#5431)
NaluTripician Oct 3, 2025
f6ae21b
3.53.2: Adds updated changelog and contracts (#5439)
NaluTripician Oct 7, 2025
73b7f29
MSRC: Fixes dummy account endpoint and keys in tests (#5437)
sourabh1007 Oct 8, 2025
29a601e
ContractTests: Fixes failing contract tests on .NET 8 (#5442)
kirankumarkolli Oct 9, 2025
fabf38d
[Client encryption] Make Encryption.Custom build always preview (#5402)
MartinSarkany Oct 10, 2025
ff84695
[Client encryption] Fix Encryption.Custom contract tests (#5443)
MartinSarkany Oct 13, 2025
d752e0a
[Client encryption]: Removes Encryption.Custom compression (#5399)
adamnova Oct 15, 2025
228ad23
[Client encryption]: Adds new tests for EncryptionProcessor (#5349)
adamnova Oct 15, 2025
9e09d15
[Client encryption]: Adds Replace synchronous MDE calls with async eq…
MartinSarkany Oct 15, 2025
75175de
[Internal] JSON Binary Encoding: Adds support for Base64 String Encod…
sboshra Oct 23, 2025
c145985
Diagnostics: Fixes possible Thread contention in Traces (#5455)
FabianMeiswinkel Oct 27, 2025
c3afee0
Exceptions: Removes Unnecessary space added by CosmosException.ToStri…
Meghana-Palaparthi Oct 27, 2025
8c77506
ComponentGovernance: Fixes component governance alerts (#5456)
kirankumarkolli Oct 27, 2025
2ac3485
Internal: Adds 3.54.1 release (#5457)
FabianMeiswinkel Oct 27, 2025
dc94369
Fixing build versions
FabianMeiswinkel Oct 28, 2025
22e7471
Revert "Fixing build versions"
FabianMeiswinkel Oct 28, 2025
3768518
Internal: Fixes build versions (#5458)
FabianMeiswinkel Oct 28, 2025
ffbdd4a
Internal: Fixes build versions (#5459)
FabianMeiswinkel Oct 28, 2025
804e6c9
Update azure-pipelines-official.yml for Azure Pipelines
FabianMeiswinkel Oct 29, 2025
79adf1b
DeadCode: Fixes removes dead code (#5460)
kirankumarkolli Oct 29, 2025
6dbd53c
ContractTests: Fixes contract enforcement to be machine agnostic (#5453)
adamnova Oct 30, 2025
d0352eb
[VectorIndexPath]: Refactors IndexingSearchListSize and VectorIndexSh…
Meghana-Palaparthi Oct 30, 2025
14c1265
[Client encryption]: Adds a new override through property bag to enab…
adamnova Nov 4, 2025
745c596
[Thin Client Integration]: Adds empty string for RegionalDatabaseAcco…
aavasthy Nov 5, 2025
5beb345
Query: Fixes query advisor prefix url links to use aka.ms (#5475)
leminh98 Nov 6, 2025
a5c5d23
Barrier Requests: Adds Integration tests for retry logic for 410/ Lea…
aavasthy Nov 6, 2025
5951364
HttpTimeoutPolicy Improvements Phase 1: Fixes QueryPlan requests retr…
Praveen-Msft Nov 8, 2025
2a84d9a
[Client encryption]: Fixes race condition in MdeEncryptionProcessor (…
MartinSarkany Nov 11, 2025
0be9384
HttpTimeoutPolicy Improvements Phase 2: Refactors Code to Separate ou…
Praveen-Msft Nov 13, 2025
ba6a81c
Change feed: Adds id and pk to ChangeFeedMetadata for delete operatio…
yash2710 Nov 13, 2025
c6bcbe3
[Internal] HPK: Fixes EPK Normalization problem of Hierarchical Parti…
ananth7592 Nov 13, 2025
c7c61be
HttpTimeoutPolicy Improvements Phase 3: Fixes the TimeoutPolicies to …
Praveen-Msft Nov 14, 2025
0ea1ba1
Tests: Fixes failing tests (#5495)
yash2710 Nov 15, 2025
bc51a09
[Internal] Binary Encoding: Adds support to DateTimeOffset type in Co…
Meghana-Palaparthi Nov 15, 2025
90889e7
[ClientEncryption] Remove JsonProcessor from EncryptionOptions (#5454)
MartinSarkany Nov 15, 2025
c67845f
3.55.0: Adds contracts, changelog and version updates for the release…
Praveen-Msft Nov 15, 2025
3880e5a
Updating changelog
kirankumarkolli Nov 15, 2025
2dc3a47
Owner not found: Fixes substatus code 1003 for item operations when c…
Copilot Nov 19, 2025
cde1346
[Internal] Tests: Adds setup emulator step in thin client tests (#5504)
yash2710 Nov 19, 2025
f8e2fe8
[Internal] Query: Adds missing function identifiers part 2 (#5503)
leminh98 Nov 19, 2025
4402de8
[FaultInjection] Unauthorized Errors: Adds Unauthorized status codes …
NaluTripician Nov 24, 2025
92ad3c6
Semantic Rerank: Adds Semantic Rerank API (#5445)
NaluTripician Nov 24, 2025
106dab3
3.56.0: Adds Version Bump and changelog (#5514)
NaluTripician Nov 25, 2025
f10fdb6
[Internal] CI: Adds meaningful failure message on assert failure (#5513)
yash2710 Nov 25, 2025
2c73160
Tracing: Adds tracing improvements for pkrange refresh calls (#5511)
NaluTripician Nov 25, 2025
9edd18b
[FullTextPolicy]: Adds tests for full text policy multi-language supp…
aavasthy Nov 25, 2025
5c22376
ChangeFeed: Fixes crts field being nullable (#5512)
yash2710 Dec 3, 2025
670792d
[Internal] Pipelines: Adds test ignore category (#5519)
NaluTripician Dec 4, 2025
e38b812
[Internal]: Adds diagnostic logging for rolling pipeline (#5520)
yash2710 Dec 5, 2025
dee3eb9
VectorIndex Policy: Adds Support for QuantizerType in IndexingPolicy …
aavasthy Dec 8, 2025
17cfb96
[Internal] Testing: Refactors `AvailabilityStrategyNoTriggerTest` val…
NaluTripician Dec 10, 2025
f27899a
Semantic Reranking: Refactors `RerankResult.Document` to return `stri…
NaluTripician Dec 16, 2025
895c8d5
3.57.0-preview.1: Adds version update and contract changes (#5531)
NaluTripician Dec 16, 2025
ff99cba
SystemTextSerializer: Fixes serialization type in ToStream method (#5…
jaliyaudagedara Dec 17, 2025
313dd41
[Thin Client Integration]: Adds support for store procedure in thincl…
aavasthy Dec 18, 2025
48e7061
[Internal] Tests: Adds clean-up method to ensure created databases ar…
NaluTripician Dec 18, 2025
72aa896
[Internal] Logging: Refactors CFP traces to contain more information …
NaluTripician Dec 20, 2025
d9f2733
[Thin Client Integration]: Adds thinclient header for refresh account…
aavasthy Jan 5, 2026
51e3ac1
Query: Fixes hybrid search query plan optimization to be enabled by d…
neildsh Jan 6, 2026
080d90a
Query: Fixes GetItemQueryIterator to honor the supplied (optional) Fe…
adityasa Jan 8, 2026
7648e8c
Upsert/Batch: Fixes bug where RequestOptions are not honored for Upse…
NaluTripician Jan 8, 2026
ca9a868
Query : Fixes LINQ API to support builtin functions - ARRAY_CONTAINS_…
adityasa Jan 10, 2026
a97f4f5
[INTERNAL] ChangeLog: Fixes Revise changelog for versions 3.32.0 to 3…
amanrao23 Jan 14, 2026
61f7cce
docs: fix ApplicationPreferredRegions remarks typo (#5539)
meiranzheng Jan 14, 2026
626af83
3.57.0: Adds Version Update and contracts (#5557)
NaluTripician Jan 20, 2026
81f653f
Per Partition Automatic Failover: Adds Hub Region Processing Only Whi…
aavasthy Jan 26, 2026
e315613
HPK: Add internal CosmosClientOptions flag UseLengthAwareRangeCompare…
ananth7592 Jan 26, 2026
d6a69c8
Users/meghana palaparthi/test (#5573)
Meghana-Palaparthi Jan 27, 2026
2964cf3
Add Copilot agent issue triage and resolution plan
kirankumarkolli Feb 1, 2026
f8d3dec
Update PR template with full investigation details and proper referen…
kirankumarkolli Feb 1, 2026
d94125c
Add expectations validation phase and CI monitoring learnings
kirankumarkolli Feb 1, 2026
ff36a42
Add Azure DevOps build re-run documentation
kirankumarkolli Feb 1, 2026
9b6ec29
Docs: Add comprehensive Copilot agent issue triage plan
kirankumarkolli Feb 1, 2026
800faa9
Docs: Add CI gate monitoring loop with GREEN goal
kirankumarkolli Feb 1, 2026
3e4149f
Docs: Add StyleCop and EditorConfig style rules (Section 16.13)
kirankumarkolli Feb 1, 2026
31e44fb
Docs: Add best practices (Sections 16.14-16.21)
kirankumarkolli Feb 1, 2026
98acb46
Docs: Add local emulator testing strategy (Section 4.8.1)
kirankumarkolli Feb 1, 2026
6560fc6
Docs: Add new machine quick start guide (Section 0.7)
kirankumarkolli Feb 1, 2026
9a8990e
Docs: Clarify unit tests have no external dependencies
kirankumarkolli Feb 1, 2026
a52b8f1
Docs: Require proof of local test success before PR
kirankumarkolli Feb 1, 2026
e6bb1a5
Docs: Run tests with PREVIEW configuration also
kirankumarkolli Feb 1, 2026
fc9bd5d
Docs: Clarify gh CLI vs GitHub MCP Server for SAML repos
kirankumarkolli Feb 1, 2026
7e9c757
Docs: Add gh CLI installation and setup steps
kirankumarkolli Feb 1, 2026
299e438
Docs: Add SAML troubleshooting for gh CLI
kirankumarkolli Feb 1, 2026
420875f
Docs: Add auto-fix script for SAML errors
kirankumarkolli Feb 1, 2026
dbd8993
Docs: Auto-mark PR ready immediately when CI gates pass
kirankumarkolli Feb 1, 2026
1647ffb
Docs: Require branch sync and dotnet-v3-ci before ready
kirankumarkolli Feb 1, 2026
04fb0c7
Docs: Add Copilot code-review as gate before PR creation
kirankumarkolli Feb 1, 2026
e7e28b8
Docs: Specify benchmark location - Samples/Tools/Benchmark only
kirankumarkolli Feb 1, 2026
f30bb57
Docs: Add parallel issue handling while CI waits
kirankumarkolli Feb 1, 2026
372c6f1
Docs: Add quick start prompt at top of plan
kirankumarkolli Feb 1, 2026
ae64123
Docs: Check for existing PR before investigating issue
kirankumarkolli Feb 1, 2026
36b3dc3
Test: Add benchmark for SubtreeEvaluator Expression.Compile memory im…
kirankumarkolli Feb 1, 2026
0441b35
Docs: Add generalizable learnings for performance investigations
kirankumarkolli Feb 1, 2026
aa9d216
Docs: Make emulator tests required, remove area-specific tests
kirankumarkolli Feb 1, 2026
fe9ddcc
Docs: Add constraint - NEVER change project TargetFramework
kirankumarkolli Feb 1, 2026
6117a2f
Docs: Add dynamic .NET version testing approach (Section 16.22)
kirankumarkolli Feb 1, 2026
235e61e
Docs: Add GitHub comment attribution requirement (Section 16.23)
kirankumarkolli Feb 1, 2026
6710998
Docs: Add network and region debugging techniques (Section 16.24)
kirankumarkolli Feb 1, 2026
f436e95
Docs: Add Cosmos LiveSite MCP Server configuration (Section 0.1.1)
kirankumarkolli Feb 1, 2026
a420ce8
Docs: Add Azure CLI installation and setup (Section 0.2)
kirankumarkolli Feb 1, 2026
031611a
Docs: Update Cosmos LiveSite MCP setup instructions (Section 0.1.1)
kirankumarkolli Feb 2, 2026
e2a6fc3
Docs: Add awaiting customer response and status tracking workflows
kirankumarkolli Feb 2, 2026
7b88cf5
Docs: Add core principles - no shortcuts, evidence required
kirankumarkolli Feb 2, 2026
824e5bf
Docs: Add mandatory local test validation before push
kirankumarkolli Feb 2, 2026
b21326c
Docs: Add exact CI test filter arguments for local emulator tests
kirankumarkolli Feb 2, 2026
dbb741e
Docs: Add post-ready PR monitoring and review response workflow
kirankumarkolli Feb 2, 2026
aaed22a
Docs: Add exact pipeline test arguments for local validation
kirankumarkolli Feb 2, 2026
cf6eb24
Docs: Add Azure DevOps log access limitations and workarounds
kirankumarkolli Feb 2, 2026
aea5843
Docs: Add Azure DevOps PAT setup as primary option for CI access
kirankumarkolli Feb 2, 2026
4bf0b95
Docs: Simplify Section 7.4.7 to reference PAT setup in Section 0.3.1
kirankumarkolli Feb 2, 2026
3227673
Docs: Fix section numbering and add missing sections in agent plan
kirankumarkolli Feb 2, 2026
8c9aa5f
Docs: Add mandatory pre-push validation for CI failure fixes
kirankumarkolli Feb 2, 2026
5d2c531
Docs: Fix nested code blocks and remove stray content
kirankumarkolli Feb 2, 2026
1977c40
Add named IssueFixAgent configuration
kirankumarkolli Feb 2, 2026
b7f290d
Add IssueFixAgent - Named Copilot Coding Agent (#5589)
kirankumarkolli Feb 2, 2026
d0b97ae
Revert: Remove SubtreeEvaluatorMemoryBenchmark (#5590)
kirankumarkolli Feb 2, 2026
db77e81
Docs: Update IssueFixAgent with anti-patterns and copilot-instruction…
kirankumarkolli Feb 2, 2026
5329625
Docs: Adds immediate-action triggers to IssueFixAgent (#5594)
kirankumarkolli Feb 2, 2026
bf1325a
Docs: Add 'fix at source' anti-pattern to IssueFixAgent (#5598)
kirankumarkolli Feb 2, 2026
ee20556
[Internal] Docs: Add session learnings to IssueFixAgent plan (#5601)
kirankumarkolli Feb 3, 2026
65688ee
[Internal] Docs: Add PR body formatting guidance to agent plan (#5602)
kirankumarkolli Feb 3, 2026
7217a78
[Internal] Docs: Update PR monitoring frequency to 5-10 minutes (#5603)
kirankumarkolli Feb 3, 2026
92dea7f
Query: Adds ability to choose global vs local/focused statistics for …
neildsh Feb 6, 2026
155430b
[Internal] DTS: Adds logic to build request and parse response (#5576)
Meghana-Palaparthi Feb 6, 2026
03ad9b3
Merge master into msdata/direct - accept incoming master changes
yash2710 Feb 10, 2026
bb1df17
Update tests
yash2710 Feb 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5,817 changes: 5,817 additions & 0 deletions .github/agents/issue-fix-agent.agent.md

Large diffs are not rendered by default.

58 changes: 58 additions & 0 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
<!-- .github/copilot-instructions.md -->
# Copilot / AI assistant instructions — Microsoft.Azure.Cosmos

Purpose: quick, actionable context so an AI coding assistant can be immediately productive in this repo.

- **Big picture**: This repository implements the v3 .NET SDK for Azure Cosmos DB. Major components:
- `Microsoft.Azure.Cosmos/` — core SDK client, most production code.
- `Microsoft.Azure.Cosmos.Encryption/` and `Microsoft.Azure.Cosmos.Encryption.Custom/` — client-side encryption extensions.
- `Microsoft.Azure.Cosmos.Samples/` — runnable examples and usage patterns.
- `docs/`, `templates/`, and top-level Azure Pipelines YAMLs — CI, packaging and emulator setup.

- **Why this structure**: the SDK core is separated from optional features (encryption, fault-injection, direct mode) so consumers can opt into smaller packages. Versioning and feature flags are centralized in `Directory.Build.props`.

- **Build & test (most common workflows)**:
- Build solution: `dotnet build Microsoft.Azure.Cosmos.sln -c Release` (or simply `dotnet build`).
- Run unit/integration tests: `dotnet test --no-build` in the solution or specific test project folders under `**/tests/`.
- CI uses the YAML files in the repository root and `templates/` — see `templates/emulator-setup.yml` for the Windows emulator script used in CI.

- **Local emulator and integration testing**:
- The codebase expects the Windows Cosmos DB Emulator in many integration tests. CI installs/starts it via `templates/emulator-setup.yml` (PowerShell scripts that download and launch the MSI and call `Start-Process CosmosDB.Emulator.exe`).
- If running tests locally on Windows, install the emulator and ensure exclusions and local state paths match what's in `templates/emulator-setup.yml`.

- **Versioning & build flags**:
- `Directory.Build.props` (repo root and project-level overrides) contains the canonical package versions and MSBuild flags (e.g. `<ClientOfficialVersion>`, `<LangVersion>`, and `DefineConstants` that add `PREVIEW`/`ENCRYPTIONPREVIEW`).
- Feature/preview builds are gated by MSBuild properties like `IsPreview` or `IsNightly`; set these via `dotnet msbuild /p:IsPreview=true` when needed.

- **Conventions & patterns** (project-specific)
- Avoid introducing new global build properties; add versions to `Directory.Build.props` where applicable.
- Tests use the emulator or mocks; integration tests that depend on emulator are usually under `tests/` and expect environment-based setup. Look for CI templates for exact start-up sequence.
- Strong-name signing keys exist at repo root (`35MSSharedLib1024.snk`, `testkey.snk`); builds may require signing configuration on CI.

- **Integration points & external deps**:
- Azure Cosmos DB Emulator (Windows) — required for many integration tests.
- NuGet packaging and pipeline tooling — see `templates/nuget-pack.yml` and the many `azure-pipelines-*.yml` files for packaging/release behavior.

- **Where to look for examples** (use these as source-of-truth snippets):
- `Directory.Build.props` — versioning and define-constants
- `templates/emulator-setup.yml` — exact emulator install/start PowerShell used in CI
- `Microsoft.Azure.Cosmos/` — core SDK patterns (public APIs, partitioning, feed iterator usage)
- `Microsoft.Azure.Cosmos.Samples/` — minimal runnable samples for usage patterns

- **How AI should produce code/changes here**:
- **🚫 HARD RULE: NEVER push directly to `master` — NO EXCEPTIONS.** Always create a feature branch and submit a pull request. This rule cannot be overridden.
- Keep changes minimal and focused; prefer small, targeted edits and follow existing code style.
- When suggesting build/test changes, reference the relevant MSBuild property or pipeline YAML (point to `Directory.Build.props` or `templates/*`).
- Do not change version numbers or packaging settings without explicit instruction — these are centrally managed.
- If adding or modifying tests that require the emulator, include/update relevant CI/template steps and document required environment variables.

- **Quick examples to reference in suggestions**:
- Use `FeedIterator<T>` patterns as in `Microsoft.Azure.Cosmos` when generating query examples.
- For emulator-driven tests, mirror the startup sequence from `templates/emulator-setup.yml`.

- **Named Copilot Agents**:
- **IssueFixAgent** (`.github/agents/issue-fix-agent.agent.md`) — Comprehensive workflow for triaging and fixing GitHub issues. Use `@IssueFixAgent` in VS Code Copilot Chat or follow the plan manually.
- Includes: environment setup, issue investigation, fix implementation, testing requirements, PR workflow, and learnings capture.
- Start with: `@IssueFixAgent investigate issue #XXXX` or see Quick Start in the agent file.

If anything here is unclear or you want the file to include additional examples (specific files, common refactor targets, or typical PR reviewers), tell me what to add and I will iterate.
8 changes: 7 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -326,5 +326,11 @@ ASALocalRun/
# NVidia Nsight GPU debugger configuration file
*.nvuser

# MFractors (Xamarin productivity tool) working folder
# MFractors (Xamarin productivity tool) working folder
.mfractor/

# Local scratch/test projects (not part of the SDK)
ChangeFeedWithFaultInjection/
ConsoleApp1/
ItemGenerator/
Backup/
6 changes: 6 additions & 0 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"recommendations": [
"ms-azuretools.vscode-azurefunctions",
"ms-dotnettools.csharp"
]
}
11 changes: 11 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Attach to .NET Functions",
"type": "coreclr",
"request": "attach",
"processId": "${command:azureFunctions.pickProcess}"
}
]
}
7 changes: 7 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"azureFunctions.deploySubpath": "Microsoft.Azure.Cosmos.Samples\\Usage\\AzureFunctions/bin/Release/net6.0/publish",
"azureFunctions.projectLanguage": "C#",
"azureFunctions.projectRuntime": "~4",
"debug.internalConsoleOptions": "neverOpen",
"azureFunctions.preDeployTask": "publish (functions)"
}
81 changes: 81 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "clean (functions)",
"command": "dotnet",
"args": [
"clean",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary"
],
"type": "process",
"problemMatcher": "$msCompile",
"options": {
"cwd": "${workspaceFolder}/Microsoft.Azure.Cosmos.Samples\\Usage\\AzureFunctions"
}
},
{
"label": "build (functions)",
"command": "dotnet",
"args": [
"build",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary"
],
"type": "process",
"dependsOn": "clean (functions)",
"group": {
"kind": "build",
"isDefault": true
},
"problemMatcher": "$msCompile",
"options": {
"cwd": "${workspaceFolder}/Microsoft.Azure.Cosmos.Samples\\Usage\\AzureFunctions"
}
},
{
"label": "clean release (functions)",
"command": "dotnet",
"args": [
"clean",
"--configuration",
"Release",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary"
],
"type": "process",
"problemMatcher": "$msCompile",
"options": {
"cwd": "${workspaceFolder}/Microsoft.Azure.Cosmos.Samples\\Usage\\AzureFunctions"
}
},
{
"label": "publish (functions)",
"command": "dotnet",
"args": [
"publish",
"--configuration",
"Release",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary"
],
"type": "process",
"dependsOn": "clean release (functions)",
"problemMatcher": "$msCompile",
"options": {
"cwd": "${workspaceFolder}/Microsoft.Azure.Cosmos.Samples\\Usage\\AzureFunctions"
}
},
{
"type": "func",
"dependsOn": "build (functions)",
"options": {
"cwd": "${workspaceFolder}/Microsoft.Azure.Cosmos.Samples\\Usage\\AzureFunctions/bin/Debug/net6.0"
},
"command": "host start",
"isBackground": true,
"problemMatcher": "$func-dotnet-watch"
}
]
}
8 changes: 4 additions & 4 deletions Directory.Build.props
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ClientOfficialVersion>3.52.1</ClientOfficialVersion>
<ClientPreviewVersion>3.53.0</ClientPreviewVersion>
<ClientPreviewSuffixVersion>preview.1</ClientPreviewSuffixVersion>
<DirectVersion>3.39.1</DirectVersion>
<ClientOfficialVersion>3.57.0</ClientOfficialVersion>
<ClientPreviewVersion>3.58.0</ClientPreviewVersion>
<ClientPreviewSuffixVersion>preview.0</ClientPreviewSuffixVersion>
<DirectVersion>3.41.3</DirectVersion>
<FaultInjectionVersion>1.0.0</FaultInjectionVersion>
<FaultInjectionSuffixVersion>beta.0</FaultInjectionSuffixVersion>
<EncryptionOfficialVersion>2.0.5</EncryptionOfficialVersion>
Expand Down
57 changes: 57 additions & 0 deletions Exceptions.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,3 +33,60 @@ Cosmos DB SDK on any IO failure will attempt to retry the failed operation if re
## Common error status codes and troubleshooting guide <a id="error-codes"></a>

To see a list of common error code and issues please see [.NET SDK troubleshooting guide](https://docs.microsoft.com/azure/cosmos-db/troubleshoot-dot-net-sdk)

### Disambiguating 404 (Not Found) errors using SubStatusCode <a id="substatus-codes"></a>

When you receive a 404 (Not Found) status code from Cosmos DB, it can indicate two different scenarios:
1. **Item not found**: The requested item doesn't exist in the container
2. **Owner resource not found**: The parent resource (container or database) doesn't exist

To distinguish between these cases, check the `SubStatusCode` property:

- **SubStatusCode 0**: Regular item not found (the item doesn't exist in an existing container)
- **SubStatusCode 1003**: Owner resource not found (the container or database doesn't exist)

#### Example with Typed APIs (throws CosmosException):

```csharp
try
{
ItemResponse<MyItem> response = await container.ReadItemAsync<MyItem>("itemId", new PartitionKey("partitionKey"));
}
catch (CosmosException ex) when (ex.StatusCode == HttpStatusCode.NotFound)
{
if (ex.SubStatusCode == 1003)
{
// The container or database doesn't exist
Console.WriteLine("Owner resource (container/database) not found");
}
else
{
// The item doesn't exist in an existing container
Console.WriteLine("Item not found");
}
}
```

#### Example with Stream APIs (returns ResponseMessage):

```csharp
ResponseMessage response = await container.ReadItemStreamAsync("itemId", new PartitionKey("partitionKey"));

if (response.StatusCode == HttpStatusCode.NotFound)
{
int subStatusCode = (int)response.Headers.SubStatusCode;

if (subStatusCode == 1003)
{
// The container or database doesn't exist
Console.WriteLine("Owner resource (container/database) not found");
}
else
{
// The item doesn't exist in an existing container
Console.WriteLine("Item not found");
}
}
```

This distinction is particularly useful when implementing retry logic or error handling strategies, as you may want to handle these scenarios differently (e.g., creating the container if it doesn't exist vs. handling a missing item).
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,11 @@ internal class SymmetricKey
/// <param name="rootKey">root key</param>
internal SymmetricKey(byte[] rootKey)
{
// Key validation
if (rootKey == null || rootKey.Length == 0)
ArgumentValidation.ThrowIfNull(rootKey);

if (rootKey.Length == 0)
{
throw new ArgumentNullException(nameof(rootKey));
throw new ArgumentException("The root key cannot be empty.", nameof(rootKey));
}

this.rootKey = rootKey;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,32 +5,84 @@
namespace Microsoft.Azure.Cosmos.Encryption.Custom
{
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Threading;

/// <summary>
/// This is an empty implementation of CosmosDiagnosticsContext which has been plumbed through the DataEncryptionKeyProvider and EncryptionContainer.
/// This may help adding diagnostics more easily in future.
/// Lightweight diagnostics context for Custom Encryption extension.
/// Manages Activity creation for OpenTelemetry integration.
/// </summary>
internal class CosmosDiagnosticsContext
{
private static readonly CosmosDiagnosticsContext UnusedSingleton = new ();
private static readonly IDisposable UnusedScopeSingleton = new Scope();
private static readonly ActivitySource ActivitySource = new ("Microsoft.Azure.Cosmos.Encryption.Custom");

/// <summary>
/// Scope name prefix for MDE (Microsoft.Data.Encryption) encrypt operations.
/// </summary>
internal const string ScopeEncryptModeSelectionPrefix = "EncryptionProcessor.Encrypt.Mde.";

/// <summary>
/// Scope name prefix for MDE (Microsoft.Data.Encryption) decrypt operations.
/// </summary>
internal const string ScopeDecryptModeSelectionPrefix = "EncryptionProcessor.Decrypt.Mde.";

internal CosmosDiagnosticsContext()
{
}

/// <summary>
/// Creates a new diagnostics context instance.
/// </summary>
public static CosmosDiagnosticsContext Create(RequestOptions options)
{
_ = options;
return CosmosDiagnosticsContext.UnusedSingleton;
return new CosmosDiagnosticsContext();
}

public IDisposable CreateScope(string scope)
/// <summary>
/// Creates a new diagnostic scope for Activity tracking.
/// </summary>
/// <param name="scope">The name of the scope.</param>
/// <returns>A <see cref="Scope"/> that manages an Activity lifecycle.</returns>
/// <exception cref="ArgumentNullException">Thrown when <paramref name="scope"/> is null.</exception>
/// <exception cref="ArgumentException">Thrown when <paramref name="scope"/> is empty or whitespace.</exception>
/// <remarks>
/// Use with a <c>using</c> statement to ensure proper disposal.
/// </remarks>
public Scope CreateScope(string scope)
{
_ = scope;
return CosmosDiagnosticsContext.UnusedScopeSingleton;
ArgumentValidation.ThrowIfNullOrWhiteSpace(scope, nameof(scope));

Activity activity = ActivitySource.HasListeners() ? ActivitySource.StartActivity(scope, ActivityKind.Internal) : null;

return new Scope(activity);
}

private class Scope : IDisposable
/// <summary>
/// Represents a diagnostic scope for Activity tracking.
/// Must be used with the 'using' pattern to ensure proper disposal.
/// </summary>
/// <remarks>
/// Dispose() is idempotent - calling it multiple times will only dispose the Activity once.
/// </remarks>
public sealed class Scope : IDisposable
{
private readonly Activity activity;
private bool isDisposed;

internal Scope(Activity activity)
{
this.activity = activity;
}

public void Dispose()
{
if (!this.isDisposed)
{
this.isDisposed = true;
this.activity?.Dispose();
}
}
}
}
Expand Down
Loading
Loading