Skip to content

feat(marketplace): connection access (routes 25–27) and OAuth sign-in start (route 28) - #95

Merged
Domantas merged 4 commits into
mainfrom
audit/marketplace-access
Oct 13, 2026
Merged

Domantas merged 4 commits into
mainfrom
audit/marketplace-access

Conversation

@Domantas

@Domantas Domantas commented Oct 13, 2026 •

Copy link
Copy Markdown
Contributor

What changed

  • Hub types regenerated from the running gateway (private stack), twice on this branch: refactoringV2 509156d57 (item access) and 515275038 (item oauth). Access matrix / role package / custom policy types (GetMarketplaceIntegrationAccess*, SetMarketplaceIntegrationRoleAccess, SaveMarketplaceIntegrationCustomAccess*, MarketplaceAccess*Dto, MarketplaceAccessLevel), StartMarketplaceIntegrationSignIn*, and the additive fields TestMarketplaceIntegrationResponse.accessChanges, MarketplaceAccessRoleDto.defaultNotApplied, MarketplaceValidationStepResultDto.errorCode, MarketplaceIntegrationDto.signedIn / signedInBy / signedInAt / tokenExpiresAt, MarketplaceIntegrationListProjection.signedIn / signedInAt, MarketplaceListingDto.connectSteps / oauthRedirectUrl. Api types untouched. Route 29 (OAuth callback) is not in the metadata — no method.
  • GetMarketplaceIntegrationAccessAsync, SetMarketplaceIntegrationRoleAccessAsync, SaveMarketplaceIntegrationCustomAccessAsync, StartMarketplaceIntegrationSignInAsync from the source generator; MarketplaceAccessTests (4) + MarketplaceOAuthTests (1) Verify snapshots; EndpointCoverageTests.Hub.Code accepted after reading the diff (Count 39 → 43, the four entries, AccessChanges, SignedIn); README section.
  • Tests: build 0 warnings; Hub.Tests 254 (+5), Sdk.Tests 84, Coexistence 2 — 0 failed.

Evidence

Task file: typegen docs/tasks/marketplace-access-sdks.md (branch audit/marketplace-access2, worktree ~/Projects/norbix/worktrees/typegen/marketplace-access2). Gateway items: docs/testing/testing-plan/11b-marketplace/items/access.md and oauth.md.

Expected release: v3.22.0 (last v3.21.0) (feat → minor). Additive only — no breaking change.

🤖 Generated with Claude Code

Domantas and others added 2 commits October 13, 2026 15:57
…57 (access, routes 25–27)

Adds the access matrix, role package and custom policy types
(GetMarketplaceIntegrationAccess*, SetMarketplaceIntegrationRoleAccess,
SaveMarketplaceIntegrationCustomAccess*, MarketplaceAccess*Dto,
MarketplaceAccessLevel) and the additive fields
TestMarketplaceIntegrationResponse.accessChanges,
MarketplaceAccessRoleDto.defaultNotApplied and
MarketplaceValidationStepResultDto.errorCode.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…policy (routes 25–27)

The source generator adds GetMarketplaceIntegrationAccessAsync,
SetMarketplaceIntegrationRoleAccessAsync and
SaveMarketplaceIntegrationCustomAccessAsync from the regenerated Hub
types. MarketplaceAccessTests pins each one with a Verify snapshot (the
id in the path, no body on the GET, the role / ticks in the PUT / POST
body) and reads AccessChanges and the step ErrorCode from the Test
response. EndpointCoverageTests.Hub.Code accepted: Count 39 -> 42, the
three route entries and AccessChanges. README section.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 13, 2026 •

Copy link
Copy Markdown

🚀 Release preview

Next version on merge to main: none

semantic-release dry-run output
[1:28:06 PM] [semantic-release] › ℹ  Running semantic-release version 25.0.9
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "verifyConditions" from "@semantic-release/exec"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "verifyConditions" from "@semantic-release/github"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "analyzeCommits" from "@semantic-release/commit-analyzer"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "analyzeCommits" from "@semantic-release/exec"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "verifyRelease" from "@semantic-release/exec"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "generateNotes" from "@semantic-release/release-notes-generator"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "generateNotes" from "@semantic-release/exec"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "prepare" from "@semantic-release/exec"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "publish" from "@semantic-release/exec"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "publish" from "@semantic-release/github"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "addChannel" from "@semantic-release/exec"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "addChannel" from "@semantic-release/github"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "success" from "@semantic-release/exec"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "success" from "@semantic-release/github"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "fail" from "@semantic-release/exec"
[1:28:07 PM] [semantic-release] › ✔  Loaded plugin "fail" from "@semantic-release/github"
[1:28:08 PM] [semantic-release] › ℹ  This test run was triggered on the branch refs/pull/95/merge, while semantic-release is configured to only publish from main, therefore a new version won’t be published.

If next_version is none, your commits don't trigger a release. Use feat: for minor (breaking changes too, until launch), fix: / perf: for patch.

Domantas and others added 2 commits October 13, 2026 16:23
…38 (oauth, route 28)

Adds StartMarketplaceIntegrationSignIn / StartMarketplaceIntegrationSignInResponse
(authorizeUrl, redirectUrl, expiresAt) and the additive fields
MarketplaceIntegrationDto.signedIn / signedInBy / signedInAt / tokenExpiresAt,
MarketplaceIntegrationListProjection.signedIn / signedInAt and
MarketplaceListingDto.connectSteps / oauthRedirectUrl. Route 29 (the
OAuth callback) is not in the type metadata.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…sign-in start (route 28)

The source generator adds StartMarketplaceIntegrationSignInAsync
(POST .../integrations/{IntegrationViewId}/oauth/start) from the
regenerated Hub types. MarketplaceOAuthTests pins the id in the path and
reads AuthorizeUrl / RedirectUrl / ExpiresAt. EndpointCoverageTests.Hub.Code
accepted: Count 42 -> 43, the route entry, SignedIn on the integration
DTOs (the stub fills the first 8 properties, so SignedIn takes the place
of ViewId in the SaveMarketplaceIntegration body). README note. Route 29
(the callback) is not in the type metadata and has no method.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Domantas Domantas changed the title feat(marketplace): connection access matrix, role package and custom policy (routes 25–27) feat(marketplace): connection access (routes 25–27) and OAuth sign-in start (route 28) Oct 13, 2026
@Domantas
Domantas merged commit 4dbdeb8 into main Oct 13, 2026
9 checks passed
@Domantas
Domantas deleted the audit/marketplace-access branch October 13, 2026 13:43
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 3.22.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant