Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 7 additions & 4 deletions .github/tests/update-coverage-security.test.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,12 @@ test('changes are restricted to the allowlist and validated against published mo
assert.match(snapshot, /updater\/\.github\/scripts\/cli-update-disallowed-paths\.sh/);
assert.match(step('generate', 'Checkout updater scripts'), /sparse-checkout: \.github\/scripts/);
assert.match(snapshot, /git reset -q --hard\n\s+git clean -fdq/);
assert.match(snapshot, /AGENT_BASE: \$\{\{ steps\.cli-clone\.outputs\.agent_base \}\}/);
assert.match(snapshot, /git reset -q --soft "\$AGENT_BASE"\n\s+git add -A/);
assert.match(step('generate', 'Clone CLI repo'), /agent_base=\$\(git rev-parse HEAD\)/);
assert.match(snapshot, /MAIN_SHA: \$\{\{ steps\.cli-clone\.outputs\.main_sha \}\}/);
assert.match(snapshot, /git reset -q --soft "\$MAIN_SHA"\n\s+git add -A/);
const prepare = step('generate', 'Clone CLI repo');
assert.match(prepare, /main_sha=\$\(git rev-parse origin\/main\)/);
// Only a branch without human commits may be regenerated from main.
assert.match(prepare, /git rebase --abort\n[\s\S]*grep -qvxF '260533166\+kernel-internal\[bot\]@users\.noreply\.github\.com'[\s\S]*exit 1\n[\s\S]*git switch -C /);
const scriptCalls = workflow.match(/^.*disallowed-paths\.sh.*$/gm);
assert.equal(scriptCalls.length, 2);
for (const line of scriptCalls) assert.match(line, /\| bash /);
Expand Down Expand Up @@ -115,7 +118,7 @@ test('publishing runs in a separate job that never executes repository code', ()
assert.doesNotMatch(jobs.publish.slice(0, mint).join(''), /GH_TOKEN:/);
const publish = step('publish', 'Open or update CLI coverage PR');
assert.match(publish, /GH_TOKEN: \$\{\{ steps\.publish-token\.outputs\.token \}\}/);
assert.match(publish, /gh auth setup-git\n\s+git push/);
assert.match(publish, /gh auth setup-git\n\s+git push --force-with-lease="cli-coverage-update:\$UPDATE_SHA"/);
for (const entry of jobs.publish) {
assert.doesNotMatch(entry, /continue-on-error: true|always\(\)/);
}
Expand Down
28 changes: 15 additions & 13 deletions .github/workflows/update-cli-coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -125,14 +125,21 @@ jobs:
if git show-ref --verify --quiet refs/remotes/origin/cli-coverage-update; then
echo "update_sha=$(git rev-parse origin/cli-coverage-update)" >> "$GITHUB_OUTPUT"
git switch --track origin/cli-coverage-update
if ! git merge origin/main --no-edit; then
echo "::error::cli-coverage-update conflicts with main. Resolve the conflicts on that branch, or delete it to start fresh, then rerun this workflow."
exit 1
if ! git rebase origin/main; then
git rebase --abort
# The agent covers everything since main's SDK version, so a bot-only
# branch can be regenerated from main. Human commits must be kept.
if git log --no-merges --format=%ae origin/main..origin/cli-coverage-update \
| grep -qvxF '260533166+kernel-internal[bot]@users.noreply.github.com'; then
echo "::error::cli-coverage-update has human commits that conflict with main. Resolve the conflicts on that branch, then rerun this workflow."
exit 1
fi
echo "::warning::cli-coverage-update conflicts with main; regenerating it from main."
git switch -C cli-coverage-update origin/main
fi
else
git switch -c cli-coverage-update origin/main
fi
echo "agent_base=$(git rev-parse HEAD)" >> "$GITHUB_OUTPUT"

- name: Get SDK version info
id: sdk-version
Expand Down Expand Up @@ -463,9 +470,9 @@ jobs:
id: snapshot
working-directory: /tmp/kernel-cli
env:
AGENT_BASE: ${{ steps.cli-clone.outputs.agent_base }}
MAIN_SHA: ${{ steps.cli-clone.outputs.main_sha }}
run: |
git reset -q --soft "$AGENT_BASE"
git reset -q --soft "$MAIN_SHA"
git add -A
git diff --cached --name-only --no-renames -z \
| bash "$GITHUB_WORKSPACE/updater/.github/scripts/cli-update-disallowed-paths.sh" > "$RUNNER_TEMP/excluded-paths"
Expand Down Expand Up @@ -544,12 +551,7 @@ jobs:
run: |
git config user.name "kernel-internal[bot]"
git config user.email "260533166+kernel-internal[bot]@users.noreply.github.com"
if [[ -n "$UPDATE_SHA" ]]; then
git switch -c cli-coverage-update "$UPDATE_SHA"
git merge --no-edit "$MAIN_SHA"
else
git switch -c cli-coverage-update "$MAIN_SHA"
fi
git switch -c cli-coverage-update "$MAIN_SHA"
git apply --index "$RUNNER_TEMP/cli-coverage-update/changes.patch"
git diff --cached --name-only --no-renames -z \
| bash ../.github/scripts/cli-update-disallowed-paths.sh > "$RUNNER_TEMP/disallowed-paths"
Expand Down Expand Up @@ -585,7 +587,7 @@ jobs:
exit 0
fi
gh auth setup-git
git push origin cli-coverage-update
git push --force-with-lease="cli-coverage-update:$UPDATE_SHA" origin cli-coverage-update

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Force-push discards reviewer branch commits

Medium Severity

The publish job always recreates cli-coverage-update from MAIN_SHA and force-pushes. Human commits that rebase cleanly are squashed into a bot commit, and the allowlist drops reviewer files outside go.mod, go.sum, and .go under cmd/ and pkg/. The human-author check only runs when rebase conflicts.

Additional Locations (2)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit eecefc9. Configure here.


body="$RUNNER_TEMP/cli-coverage-pr.md"
{
Expand Down
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.130.0"
".": "0.131.0"
}
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# Changelog

## [0.131.0](https://github.com/kernel/kernel-go-sdk/compare/v0.130.0...v0.131.0) (2026-10-26)


### Features

* Arm vault passkeys in browsers and sign WebAuthn requests in metro-api ([1f8dbc1](https://github.com/kernel/kernel-go-sdk/commit/1f8dbc1e1123f82d02e120ceba4aeee9a4ac101e))

## [0.130.0](https://github.com/kernel/kernel-go-sdk/compare/v0.129.0...v0.130.0) (2026-10-24)


Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Or to pin the version:
<!-- x-release-please-start-version -->

```sh
go get -u 'github.com/kernel/kernel-go-sdk@v0.130.0'
go get -u 'github.com/kernel/kernel-go-sdk@v0.131.0'
```

<!-- x-release-please-end -->
Expand Down
4 changes: 4 additions & 0 deletions api.md
Original file line number Diff line number Diff line change
Expand Up @@ -545,6 +545,7 @@ Methods:
Params Types:

- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#AgentcardPreparedProcessor">AgentcardPreparedProcessor</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#ArmPasskeyVaultItemOperationRequestParam">ArmPasskeyVaultItemOperationRequestParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#AuthorizeVaultItemOperationRequestParam">AuthorizeVaultItemOperationRequestParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#CardVaultItemSpecUnionParam">CardVaultItemSpecUnionParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#CollectVaultItemOperationRequestParam">CollectVaultItemOperationRequestParam</a>
Expand All @@ -558,6 +559,7 @@ Params Types:
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#CredentialVaultItemSpecInputUnionParam">CredentialVaultItemSpecInputUnionParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#CredentialVaultItemSpecUpdateParam">CredentialVaultItemSpecUpdateParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#CredentialVaultItemUpdateRequestParam">CredentialVaultItemUpdateRequestParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#DisarmPasskeyVaultItemOperationRequestParam">DisarmPasskeyVaultItemOperationRequestParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#FillVaultItemOperationRequestParam">FillVaultItemOperationRequestParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#KernelCardVaultItemSpecParam">KernelCardVaultItemSpecParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#KernelCredentialVaultItemSpecInputParam">KernelCredentialVaultItemSpecInputParam</a>
Expand All @@ -569,6 +571,7 @@ Params Types:
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#OnePasswordRecoverVaultItemOperationRequestParam">OnePasswordRecoverVaultItemOperationRequestParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#OnePasswordRequestAccessVaultItemOperationRequestParam">OnePasswordRequestAccessVaultItemOperationRequestParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#PrepareCheckoutVaultItemOperationRequestParam">PrepareCheckoutVaultItemOperationRequestParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#RegisterPasskeyVaultItemOperationRequestParam">RegisterPasskeyVaultItemOperationRequestParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#RestartVerificationVaultItemOperationRequestParam">RestartVerificationVaultItemOperationRequestParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#VaultCheckoutContextParam">VaultCheckoutContextParam</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#VaultFillFieldParam">VaultFillFieldParam</a>
Expand Down Expand Up @@ -608,6 +611,7 @@ Response Types:
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#OnePasswordCredentialVaultItemState">OnePasswordCredentialVaultItemState</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#OnePasswordFillVaultItemOperationResult">OnePasswordFillVaultItemOperationResult</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#OnePasswordOAuthAction">OnePasswordOAuthAction</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#PasskeyVaultItemOperationResult">PasskeyVaultItemOperationResult</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#VaultCardAliases">VaultCardAliases</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#VaultFillFieldResult">VaultFillFieldResult</a>
- <a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk">kernel</a>.<a href="https://pkg.go.dev/github.com/kernel/kernel-go-sdk#VaultItemUnion">VaultItemUnion</a>
Expand Down
2 changes: 1 addition & 1 deletion internal/version.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

package internal

const PackageVersion = "0.130.0" // x-release-please-version
const PackageVersion = "0.131.0" // x-release-please-version
Loading
Loading