Skip to content

Add canonical SDK major targets - #1269

Open
Gudge (MGudgin) wants to merge 1 commit into
user/gudge/rust-sdk-operation-clifrom
user/gudge/rust-sdk-phase14a
Open

Gudge (MGudgin) wants to merge 1 commit into
user/gudge/rust-sdk-operation-clifrom
user/gudge/rust-sdk-phase14a

Conversation

@MGudgin

@MGudgin Gudge (MGudgin) commented Sep 24, 2026 •

Copy link
Copy Markdown
Member

This PR adds canonical SDK-major-to-exact-contract target metadata and validates
it against the exact Rust contract registry.

Details

  • Add the canonical sdkMajorTargets mapping without predeclaring a v1 target.
  • Require each registered v1-or-later major to target its latest exact Rust
    contract.
  • Document Rust contract authority and defer compatibility and API baselines
    until real v1 artifacts exist.

Tests

  • cargo check --workspace --all-targets --all-features
  • The complete stacked tree passed Rust tests, clippy, Node tests, and versioning
    validation before publication.
Microsoft Reviewers: Open in CodeFlow

@MGudgin
Gudge (MGudgin) requested a review from a team as a code owner September 24, 2026 22:07
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

🟡 Changes recommended

Prerelease contracts currently make a valid stable SDK target impossible at the planned v1.1 development boundary.

Get a fresh assessment by requesting another Copilot review.

Review effort: Balanced
Findings: 1 High severity · 1 Low severity

Open (2)
What changed in this PR

Adds canonical SDK-major contract targets and validates them against the Rust contract registry.

Changes:

  • Adds sdkMajorTargets metadata and validation.
  • Adds validator tests.
  • Documents contract authority and SDK target behavior.
File Description
scripts/​versioning/​tests/​contract-registry.test.js Tests SDK target validation.
scripts/​versioning/​lib/​contract-registry.js Implements target validation.
scripts/​versioning/​check-schema-versions.js Integrates validation into version checks.
schemas/​schema-version.json Adds canonical target mapping.
docs/​versioning.md Documents SDK target semantics.
docs/​schema-codegen.md Documents registry-based validation.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread scripts/versioning/lib/contract-registry.js Outdated
Comment thread docs/versioning.md Outdated
This PR adds canonical SDK-major-to-exact-contract target metadata and
validates it against the exact Rust contract registry.

Details

* Add the canonical `sdkMajorTargets` mapping without predeclaring a v1 target.
* Require each SDK major to target its latest published stable exact contract.
* Exclude development, prerelease, and build-metadata contracts from target
  candidates while retaining them in the full registry.
* Cover mutable development, development-only major lines, build metadata, and
  stable advancement in the registry tests.
* Document that opening prerelease development does not advance an SDK target;
  publishing the next stable contract does.
* Document Rust contract authority and defer compatibility and API baselines
  until real v1 artifacts exist.

Tests

* `npm test` in `scripts/versioning` (67 passed)
* `npm run check-schema-versions`
* `npm run check-contract-codegen`
* `git diff --check`

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 1d91874d-feea-4a33-b183-67d506ae61b5
Generated-with: gpt-5.6-sol
Copilot AI review requested due to automatic review settings September 25, 2026 20:26
@MGudgin
Gudge (MGudgin) force-pushed the user/gudge/rust-sdk-phase14a branch from d965962 to 24ab161 Compare September 25, 2026 20:26

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

🟢 Approval recommended

The implementation, tests, metadata, and documentation consistently enforce the stated versioning invariant.

Review effort: Balanced
Findings: None

Resolved since last review (2)

This branch has not been deployed

No deployments
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