Skip to content

Releases: AzureCosmosDB/cosmosdb-agent-kit

v1.1.0

11 Jun 14:03

Choose a tag to compare

  • New rule: pattern-langgraph-async-cosmos-routing.md — Wrap Cosmos DB sync calls in asyncio.to_thread for LangGraph routing functions (CRITICAL).

  • New rule: pattern-langgraph-async-cosmos-writes.md — Use asyncio.to_thread for active agent writes in async node functions (HIGH).

  • New rule: pattern-langgraph-agent-name-attribution.md — Tag AI messages with agent name for API response attribution (MEDIUM).

  • Amended: sdk-langchain-mcp-persistent-session.md — Updated for langchain-mcp-adapters >= 0.2.0 API (get_tools() replaces manual session management); kept < 0.2.0 example for backward reference.

  • Amended: pattern-langgraph-multi-agent.md — Added critical guidance to only check NEW messages (slice by existing count) to prevent infinite recursion loops.

  • Amended: pattern-langgraph-agent-routing-cosmosdb.md — Converted routing function to async with asyncio.to_thread, added 5s timeout, explicit exception handling for 404/timeout/credential errors.

  • Expanded README.md with a section describing the testing framework and how evaluations flow back into the skill.

  • Evaluated 5 Java iterations of the multitenant-saas scenario (testing-v2 batch #209).

  • Zero always-fail tests. When startup succeeded (3/5 iterations), pass rate was 100% across API contract, Cosmos infrastructure, and data integrity tests.

  • Identified a 40% Java startup-failure rate caused by Netty/OpenSSL behavior against the local emulator. Classified as an SDK/framework quirk, not a functional skill gap — sdk-emulator-ssl may benefit from a clearer programmatic Java CI bypass in a future pass.

  • No rules created or modified.

  • Added the docs/ agent-kit website with a GitHub-issue survey, Cosmos DB logo, Google Analytics, and metrics (70+ rules).

  • Added an "Integrations" section covering the MCP Server and Claude / Cursor plugins.

  • Converted the website submodule to a regular directory.

  • Added 4 new SDK rules (4.21–4.24).

  • Added a brand-new Full-Text Search category with 6 rules (12.1–12.6) covering the capability flag, fullTextPolicy, fullTextIndexes, BM25 ranking, keyword matching, and hybrid queries.

  • Skill now totals 89 rules across 12 categories.

  • Reverted explicit permissions: blocks that were breaking CI approval gates.

  • Fixed a race where post-create issue edits caused single-child failures in batch runs.

  • Fixed batch aggregation so parent issues resolve to the correct child PRs when iterating results.

  • Added intra-document pre-computed aggregates guidance to model-denormalize-reads.

  • Synced the skill index and added tooling rules covering build / validate scripts.

  • sdk-java-cosmos-config (#44) — added createDatabaseIfNotExists, fixed a CosmosConfig class-name collision, and added AbstractCosmosConfiguration guidance.

  • query-avoid-cross-partition (#43) — added a Java / Spring Data Cosmos @Query bypass warning.

  • sdk-java-content-response (#38, #42) — added a Reactor NPE warning and readItem() / CosmosItemResponse<T> unwrapping guidance.

  • sdk-spring-data-annotations (#41) — partition-key-path matching warning.

  • Rule 9.1 pattern-change-feed-materialized-views (#39) — added Change Feed idempotency guidance.

  • Rule 5.2 index-exclude-unused (#40) — reordered so exclude-all-first is the primary indexing pattern.

  • CI: narrowed path filters to iteration subdirectories only (#37).

  • Batch testing capability added for statistical significance (multiple iterations per scenario per run). New workflows: create-batch-children.yaml fans a batch issue into N child iteration issues; auto-trigger-tests.yaml kicks off CI for each child PR.

  • /batch-start comment replaces assign-Copilot as the batch trigger; labels are auto-created; /aggregate commands are auto-generated with child-issue numbers.

What's Changed

  • Update README.md to reference CONTRIBUTING.md for contribution guidel… by @sajeetharan in #2
  • Add pull request template for contributions by @sajeetharan in #3
  • Add four new rules for high availability and SDK resilience by @TheovanKraay in #1
  • Remove outdated issue templates and add post-install script with welc… by @sajeetharan in #4
  • Add CLI script with welcome banner and update package.json by @sajeetharan in #5
  • Add ASCII art banner to SKILL.md for enhanced visibility by @sajeetharan in #6
  • Remove CLI script and post-install script; update package.json to ref… by @sajeetharan in #7
  • Remove ASCII art banner from SKILL.md to streamline content by @sajeetharan in #10
  • Update installation command to use 'skills add' for consistency acros… by @sajeetharan in #12
  • Add testing framework and new rules by @TheovanKraay in #11
  • Remove rogue test_emulator.py debugging script by @TheovanKraay in #13
  • Add 1 new rule and update testing readme by @TheovanKraay in #14
  • Add gaming-leaderboard test iterations and update rules by @TheovanKraay in #15
  • Add best practice guidelines for Cosmos DB model constraints by @sajeetharan in #16
  • multitenant-saas iteration-001-java: add rules and strengthen existing by @TheovanKraay in #17
  • Add Claude Code plugin metadata for marketplace installation by @TheovanKraay in #18
  • Updated existing Data Modeling , partitioning and ChanegFeed - MVIEW rules by @sesmyrnov in #19
  • Add JPA-to-Spring-Data-Cosmos best practice rules by @TheovanKraay in #20
  • Add missing source-code.zip for iteration-004 of ecommerce-order-api … by @TheovanKraay in #21
  • Add iteration-003-python (9/10), fix Python ETag rule by @TheovanKraay in #22
  • Add Testing Framework v2 by @TheovanKraay in #35
  • Narrow CI path filter to ignore non-iteration files by @TheovanKraay in #37
  • Reorder Rule 5.2: Make exclude-all-first the primary indexing pattern by @Copilot in #40
  • Add Change Feed idempotency guidance to Rule 9.1 by @Copilot in #39
  • Add readItem() / CosmosItemResponse unwrapping guidance to sdk-java-content-response rule by @Copilot in #38
  • Add partition key path matching warning to sdk-spring-data-annotations rule by @Copilot in #41
  • Add Reactor NPE warning to sdk-java-content-response rule by @Copilot in #42
  • Extend query-avoid-cross-partition rule with Java/Spring Data Cosmos @query bypass warning by @Copilot in #43
  • sdk-java-cosmos-config: fix three gaps causing startup failures, class name collision, and compile errors by @Copilot in #44
  • Add Rule 5: handle Cosmos DB system metadata fields in Java deserialization by @Copilot in #45
  • Require evaluation rules to be generic in testing v2, not scenario-specific by @TheovanKraay in #46
  • Sync skill index and add tooling rules by @TheovanKraay in #58
  • Add pre-computed aggregates guidance to model-denormalize-reads rule by @Copilot in #59
  • Add query-olap-detection rule: warn against analytical queries on transactional containers by @Copilot in #61
  • Enhance partition-hierarchical rule: add explicit level-ordering guidance (broad→narrow) by @Copilot in #60
  • Add partition-immutable-key rule by @Copilot in #64
  • Add query-point-reads rule: prefer ReadItem over queries for known id + partition key by @Copilot in #63
  • Enhance query-use-projections: Add DTO/result-type matching guidance by @Copilot in #62
  • Testing framework V2: Fix batch aggregate issue-to-PR resolution by @TheovanKraay in #65
  • fix: add pe...
Read more