Skip to content

Add generated typed client for Azure Data Explorer (Kusto) connector#37

Merged
daviburg merged 6 commits into
mainfrom
feature/kusto-connector
Apr 6, 2026
Merged

Add generated typed client for Azure Data Explorer (Kusto) connector#37
daviburg merged 6 commits into
mainfrom
feature/kusto-connector

Conversation

@daviburg
Copy link
Copy Markdown
Member

@daviburg daviburg commented Apr 4, 2026

Summary

Add generated typed C# client for the Azure Data Explorer (Kusto) connector, closing #9.

Changes

  • KustoExtensions.cs — Generated from BPM CodefulSdkGenerator (PR 15290716 branch)
    • 7 operations: KQL query, show command, query+chart, command+chart, async control command, MCP server, async result retrieval
    • [DynamicSchema] on Row type for runtime schema discovery
    • KustoClient with full auth, disposal, and error handling
  • ConnectorNames.cs — Add Kusto constant
  • ManagedConnectors.cs — Add kusto to AvailableConnectors
  • KustoClientTests.cs — 14 unit tests covering constructor, disposal, mocked API calls, error handling, serialization round-trips, and [DynamicSchema] attribute verification
  • ROADMAP.md — Add ADX as Phase 3.0 Complete

Generator fix (BPM side)

Discovered and fixed a bug where connectors with [DynamicSchema] on response types but no [DynamicValues] or triggers were missing the using Microsoft.Azure.Connectors.Sdk import. Fix pushed to BPM PR 15290716.

Validation

  • All 98 tests pass (84 existing + 14 new)
  • Existing Office365, SharePoint, Teams generated files verified identical to fresh generator output

- Add KustoExtensions.cs generated from BPM CodefulSdkGenerator
- Add Kusto constant to ConnectorNames.cs and ManagedConnectors.cs
- Add 14 unit tests for KustoClient
- Update ROADMAP.md with Kusto as Phase 3.0 Complete

Closes #9
@daviburg daviburg requested a review from a team as a code owner April 4, 2026 06:33
Copilot AI review requested due to automatic review settings April 4, 2026 06:33
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new generated DirectClient connector implementation for Azure Data Explorer (Kusto) to the SDK, along with unit tests and small registry/documentation updates so the connector is discoverable in-code.

Changes:

  • Added generated KustoClient + request/response models (including [DynamicSchema] support).
  • Registered kusto in connector name constants and the available-connectors list.
  • Added a new KustoClientTests test suite and updated ROADMAP.md to mark ADX as complete.

Reviewed changes

Copilot reviewed 2 out of 5 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
src/Microsoft.Azure.Connectors.Sdk/Generated/KustoExtensions.cs New generated typed client, models, and exception type for the Kusto connector.
src/Microsoft.Azure.Connectors.Sdk/Generated/ConnectorNames.cs Adds ConnectorNames.Kusto constant for compile-time connector name usage.
src/Microsoft.Azure.Connectors.Sdk/Generated/ManagedConnectors.cs Adds kusto to DirectClientConnectors.AvailableConnectors and updates the usage header comment.
tests/Microsoft.Azure.Connectors.Sdk.Tests/KustoClientTests.cs New unit tests covering Kusto client construction, disposal, calls, error handling, and DynamicSchema behavior.
ROADMAP.md Marks Kusto/ADX as complete and adds it to the phase table.

Comment thread src/Microsoft.Azure.Connectors.Sdk/Generated/KustoExtensions.cs
@daviburg daviburg self-assigned this Apr 6, 2026
Copilot AI review requested due to automatic review settings April 6, 2026 04:14
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 6 changed files in this pull request and generated 3 comments.

Comment thread src/Microsoft.Azure.Connectors.Sdk/Generated/ManagedConnectors.cs
Comment thread src/Microsoft.Azure.Connectors.Sdk/Generated/ConnectorNames.cs
Comment thread .github/copilot-instructions.md Outdated
daviburg added 2 commits April 5, 2026 21:26
Generator now includes internal schema discovery methods referenced by
response-level x-ms-dynamic-schema. This ensures the LSP can resolve
[DynamicSchema] attributes at design time.

- Kusto: adds ListKustoResultsSchemaPostAsync (7 methods total, was 6)
- SharePoint: adds GetItemChangesMetadata discovery method
- Teams: adds 17 schema/metadata discovery methods
- Office365: unchanged (no response-level dynamic schema)
Copilot AI review requested due to automatic review settings April 6, 2026 04:43
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 4 out of 9 changed files in this pull request and generated 2 comments.

Comment thread tests/Microsoft.Azure.Connectors.Sdk.Tests/ConnectorConstantsTests.cs Outdated
Comment thread src/Microsoft.Azure.Connectors.Sdk/Generated/KustoExtensions.cs
@daviburg daviburg merged commit dfca92a into main Apr 6, 2026
10 checks passed
@daviburg daviburg deleted the feature/kusto-connector branch April 6, 2026 05:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants