feat: add provider-neutral source-control recipe - #6
Merged
Conversation
|
| Filename | Overview |
|---|---|
| recipes/source-control/server/recipe.go | Adds the provider-neutral backend action boundary, verified-context handling, repository paging, immutable identities, and partial-success semantics. |
| recipes/source-control/server/references.go | Adds bounded entity-reference search and submission-time authorization delegation. |
| recipes/source-control/ui/register.ts | Registers repository, task-link, and review providers while normalizing untrusted action responses and forwarding cancellation. |
| recipes/source-control/ui/review-store.ts | Adds versioned snapshot storage that rejects stale refreshes and fences updates after teardown. |
| recipes/source-control/manifest.fragment.yaml | Documents the opt-in action scopes, capabilities, provider ownership, and reference-source declarations. |
| Makefile | Extends testing to recipe contracts and verifies package contents, binaries, and checksums. |
| .github/workflows/ci.yml | Pins the SDK source contract and adds Node-based recipe tests alongside minimum-version backend validation. |
| .github/workflows/release.yml | Applies the pinned contract tests and package verification before publishing releases. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart LR
HostUI[Host source-control UI] -->|authenticated actions| Frontend[Recipe frontend registrations]
Frontend -->|invokeAction| Host[Verified Kandev action context]
Host --> Backend[Recipe backend extension]
Backend --> Repositories[Provider repository adapters]
Backend --> Reviews[Review and association adapters]
Backend --> References[Reference search and authorization]
Frontend --> Stores[Review and association snapshot stores]
Stores --> HostUI
Package[Default plugin package] -. excludes .-> Recipe[Opt-in recipe files]
Reviews (1): Last reviewed commit: "feat: add provider-neutral source-contro..." | Re-trigger Greptile
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Plugin authors need a provider-neutral reference for Kandev source-control hooks. This adds an opt-in recipe while keeping generated plugins provider-free.
Important Changes
Validation
npm ci --ignore-scriptsmake testgo test -race ./server/... ./recipes/source-control/server/...make vetgofmt -l .and module-tidy diff checksmake audit-recipesmake verify-package-hostmake verify-packageChecklist
apps/web/), I have added or updated Playwright e2e tests inapps/web/e2e/and verified them withmake test-e2e.docs/public/**and updated them or noted why no docs change is needed.