Uh oh!
There was an error while loading. Please reload this page.
ci(cargo-deny): add dependency audit with cargo-deny - #2677
Merged
Conversation
Ygnas
requested review from
a team, derekwaynecarr, maxamillion and mrunalp
as code ownersAugust 10, 2026 12:34
alangou
commented
Aug 10, 2026
Contributor
/ok to test 4aa70cf |
alangou
commented
Aug 10, 2026
Contributor
/ok to test 4024c5a |
Ygnas
commented
Aug 10, 2026
ContributorAuthor
@alangou Moved |
alangou
commented
Aug 11, 2026
Contributor
/ok to test 4a5594e |
alangou
commented
Aug 11, 2026
Contributor
It might be a good idea to the new |
alangou
reviewed
Aug 11, 2026
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Ygnasforce-pushed
the
feat/cargo-deny
branch
2 times, most recently
from
August 11, 2026 13:50
8b8a0c0 to
41691e5Comparealangou
commented
Aug 11, 2026
Contributor
/ok to test 41691e5 |
Ygnasforce-pushed
the
feat/cargo-deny
branch
3 times, most recently
from
August 11, 2026 14:47
d40f9e5 to
feb92a0Comparealangou
commented
Aug 11, 2026
Contributor
/ok to test feb92a0 |
alangou
reviewed
Aug 12, 2026
Uh oh!
There was an error while loading. Please reload this page.
alangou
commented
Aug 12, 2026
Contributor
/ok to test 8827bad |
Add cargo-deny to check dependencies for vulnerabilities, license violations, and banned crates. Runs as a step in branch-checks for PRs and as a separate scheduled workflow for daily advisory scanning. Signed-off-by: Ignas Baranauskas <ibaranau@redhat.com>
alangou
commented
Aug 12, 2026
Contributor
/ok to test 41434c9 |
alangou
approved these changes
Aug 12, 2026
This was referenced Aug 12, 2026
Uh oh!
There was an error while loading. Please reload this page.
jganoff pushed a commit
to jganoff/OpenShell
that referenced
this pull request
Aug 14, 2026
Add cargo-deny to check dependencies for vulnerabilities, license violations, and banned crates. Runs as a step in branch-checks for PRs and as a separate scheduled workflow for daily advisory scanning. Signed-off-by: Ignas Baranauskas <ibaranau@redhat.com>
23 tasks
prekshivyas added a commit
to NVIDIA/NemoClaw
that referenced
this pull request
Aug 20, 2026
<!-- patch-walker:action=sha256:47430dbc6774dd610e8f5f19a5f0a109c20fb0826f48ba6e0078acf197cc0998 --> <!-- patch-walker:manifest=sha256:c1309329c618a280d91c328265aead642cd983a37a19273b0b76a8f128d6894e --> <!-- patch-walker:dependency=OpenShell --> <!-- patch-walker:target=0.0.106 --> <!-- markdownlint-disable MD041 --> ## Summary Updates OpenShell from 0.0.101 to 0.0.106 using the sealed NemoPin migration evidence. Release-trust prerequisite #9224 is merged on `main`, and the E2E-selector work from #9378 is included in this branch. The PR is reconciled with current `main` at latest PR commit `e3a53c96f`. <!-- 1-3 plain sentences: what changes and why. Describe before-and-after behavior when it applies. Follow the NemoClaw Writing Guide: https://github.com/NVIDIA/NemoClaw/blob/main/WRITING.md. Do not add unrelated prose cleanup. --> ## Related Issue - #6256: owner decision - #3136: open upstream work - #6871: open upstream work - #7367: open upstream work - #7937: open upstream work - #7957: open upstream work - #8769: open upstream work - #8887: open upstream work - #8893: open upstream work <!-- Fixes #NNN or Closes #NNN. Remove this section if none. --> ## Changes - Applies only paths authorized by `sha256:65355e5c4180f3716fd8e0d0431d432a876460a7005db6099fa18a8599c3037e`. - Migrates the exact base `44c2636d85f788f81767fbb451717566e0a8d475` across 5 adjacent release ranges. - Reconciles the migration with current `main` at base commit `40dc27283`, includes the reviewed E2E-selector work from #9378, adopts the upstream messaging-plan fixture fix from #9517, and hardens runtime-identity qualification for cold 0.0.106 onboarding while recording the attached-provider post-state. - Changed paths: `.github/workflows/e2e.yaml`, `.github/workflows/podman-cpu-proof.yaml`, `agents/hermes/Dockerfile`, `agents/hermes/mcp-config-transaction.py`, `agents/hermes/runtime-config-guard.py`, `agents/hermes/start.sh`, `docs/deployment/set-up-mcp-bridge.mdx`, `docs/manage-sandboxes/add-mcp-server.mdx`, `docs/manage-sandboxes/update-sandboxes.mdx`, `docs/reference/commands.mdx`, `docs/reference/configure-runtime-identity.mdx`, `docs/reference/troubleshooting.mdx`, `docs/security/best-practices.mdx`, `docs/security/gateway-authentication-controls.mdx`, `internal/security-reviews/openshell-0.0.72-compatibility-review.mdx`, `nemoclaw-blueprint/blueprint.yaml`, `nemoclaw/src/shared/openshell-policy-boundary.cts`, `scripts/brev-launchable-ci-cpu.sh`, `scripts/checks/dependency-pins.mts`, `scripts/checks/managed-image-protected-runtime-contract.ts`, `scripts/install-openshell.sh`, `scripts/install.sh`, `scripts/update-hermes-agent.sh`, `src/lib/actions/sandbox/mcp-bridge-input-validation.test.ts`, `src/lib/actions/sandbox/mcp-bridge-url-validation.ts`, `src/lib/actions/sandbox/mcp-bridge-validation.ts`, `src/lib/actions/sandbox/openshell-child-visible-credentials.v0.0.106.json`, `src/lib/onboard/docker-driver-gateway-config-toml.test.ts`, `src/lib/onboard/docker-driver-gateway-runtime.test.ts`, `src/lib/onboard/docker-driver-gateway-runtime.ts`, `src/lib/onboard/experimental/portable-demo-lifecycle.ts`, `src/lib/onboard/forward-start.ts`, `src/lib/onboard/managed-bootstrap/podman-held-workload.test.ts`, `src/lib/onboard/managed-bootstrap/podman-held-workload.ts`, `src/lib/onboard/openshell-feature-gate.test.ts`, `src/lib/onboard/openshell-feature-gate.ts`, `src/lib/onboard/openshell-install.test.ts`, `src/lib/onboard/openshell-install.ts`, `src/lib/onboard/openshell-version.ts`, `src/lib/onboard/runtime-provider/podman-lifecycle.ts`, `src/lib/policy/index.ts`, `test/brev-launchable-ci-cpu-checksum.test.ts`, `test/deepagents-mcp-legacy-lifecycle.test.ts`, `test/dependency-pins-check.test.ts`, `test/e2e/fixtures/openshell-v0106-qualification.ts`, `test/e2e/fixtures/security-posture.ts`, `test/e2e/live/mcp-bridge-sandbox.ts`, `test/e2e/live/network-policy.test.ts`, `test/e2e/live/openclaw-plugin-runtime-exdev.test.ts`, `test/e2e/live/openshell-gateway-auth-source-contract-helpers.ts`, `test/e2e/live/openshell-gateway-auth-source-contract.test.ts`, `test/e2e/live/openshell-gateway-upgrade.test.ts`, `test/e2e/live/openshell-v0106-tls-server-name-source.ts`, `test/e2e/live/podman-cpu-lifecycle-helpers.ts`, `test/e2e/live/podman-cpu-lifecycle.test.ts`, `test/e2e/support/mcp-bridge-runtime-compatibility.test.ts`, `test/e2e/support/mcp-bridge-sandbox.test.ts`, `test/e2e/support/mcp-workflow-boundary.test.ts`, `test/e2e/support/openshell-gateway-auth-contract-workflow-boundary.test.ts`, `test/e2e/support/openshell-v0106-tls-server-name-source.test.ts`, `test/e2e/support/workflow-plan.test.ts`, `test/exit-code-user-error-surfaces.test.ts`, `test/fixtures/openshell-v0.0.106`, `test/gateway-state-reconcile-2276.test.ts`, `test/hermes-doctor-config-hash.test.ts`, `test/hermes-mcp-config-transaction.test.ts`, `test/hermes-mcp-credential-boundary-manifest.test.ts`, `test/install-openshell-version-check.test.ts`, `test/install-openshell-version-pin.test.ts`, `test/installer-hash-check.test.ts`, `test/installer-sandbox-build-trust.test.ts`, `test/installer-supervisor-manifest-trust.test.ts`, `test/mcp-add-crash-consistency.test.ts`, `test/mcp-destroy-lifecycle.test.ts`, `test/mcp-policy-key-ownership.test.ts`, `test/mcp-restart-policy-order.test.ts`, `test/onboard-gateway-port-conflict-fast-fail.test.ts`, `test/openshell-0.0.85-migration-review.test.ts`, `test/openshell-channel-workflow.test.ts`, `test/pr-risk-plan.test.ts`, `test/rebuild-credential-preflight.test.ts`, `test/runner.test.ts`, `test/sandbox-provisioning.test.ts`, `test/sandbox-rlimit-hooks.test.ts`, `test/update-hermes-agent-script.test.ts`, `tools/e2e/mcp-workflow-boundary.mts`, `tools/e2e/openshell-gateway-auth-contract-workflow-boundary.mts`, `tools/e2e/workflow-boundary.mts` ### Release ranges | Range | Commits | State | Concerns | |---|---|---|---| | 0.0.101 → v0.0.102 | `8ddd98c3dff6` → `f48b05e31228` | published | 3 | | v0.0.102 → v0.0.103 | `f48b05e31228` → `c825b1f8efac` | published | 2 | | v0.0.103 → v0.0.104 | `c825b1f8efac` → `dd2b4e3bc068` | published | 1 | | v0.0.104 → v0.0.105 | `dd2b4e3bc068` → `0f8fad23c471` | published | 3 | | v0.0.105 → v0.0.106 | `0f8fad23c471` → `c4b500a7de64` | published | 5 | ### Concern dispositions | Concern | Surface | Planned disposition | Failure prevented | Remaining gate | |---|---|---|---|---| | `openshell-0.0.101..v0.0.102-network-1` | network | test | v0.0.102 reports network: ### Quick install * fix(e2e): separate Podman Machine loopback listeners by @matthewgrossman in NVIDIA/OpenShell#2622 * fix(pol... | none | | `openshell-0.0.101..v0.0.102-runtime-topology-2` | runtime topology | test | v0.0.102 reports runtime topology: ### Quick install * fix(e2e): separate Podman Machine loopback listeners by @matthewgrossman in NVIDIA/OpenShell#2622 ... | runtime-proof | | `openshell-0.0.101..v0.0.102-security-identity-3` | security identity | guard | v0.0.102 reports security identity: ### Quick install * fix(e2e): separate Podman Machine loopback listeners by @matthewgrossman in NVIDIA/OpenShell#2622... | none | | `openshell-v0.0.102..v0.0.103-network-1` | network | test | v0.0.103 reports network: ### Quick install * fix(sandbox): acknowledge unchanged policy revisions by @NaveCohenMonday in NVIDIA/OpenShell#2557 * fix(gat... | none | | `openshell-v0.0.102..v0.0.103-runtime-topology-2` | runtime topology | test | v0.0.103 reports runtime topology: ### Quick install * fix(sandbox): acknowledge unchanged policy revisions by @NaveCohenMonday in NVIDIA/OpenShell#2557 ... | runtime-proof | | `openshell-v0.0.103..v0.0.104-runtime-topology-1` | runtime topology | test | v0.0.104 reports runtime topology: ### Quick install * feat(build): add glibc-static supervisor libc variant by @EmilienM in NVIDIA/OpenShell#2682 * fix(... | runtime-proof | | `openshell-v0.0.104..v0.0.105-compatibility-change-1` | compatibility change | test | v0.0.105 reports compatibility change: ### Quick install * fix(gator): separate review budget from approval gate by @johntmyers in NVIDIA/OpenShell#2704 ... | none | | `openshell-v0.0.104..v0.0.105-network-2` | network | test | v0.0.105 reports network: ### Quick install * fix(gator): separate review budget from approval gate by @johntmyers in NVIDIA/OpenShell#2704 * perf(superv... | none | | `openshell-v0.0.104..v0.0.105-runtime-topology-3` | runtime topology | test | v0.0.105 reports runtime topology: ### Quick install * fix(gator): separate review budget from approval gate by @johntmyers in NVIDIA/OpenShell#2704 * pe... | runtime-proof | | `openshell-v0.0.105..v0.0.106-lifecycle-state-1` | lifecycle state | test | v0.0.106 reports lifecycle state: ### Quick install * ci(cargo-deny): add dependency audit with cargo-deny by @Ygnas in NVIDIA/OpenShell#2677 * feat(sdk/... | runtime-proof | | `openshell-v0.0.105..v0.0.106-code-impact-configuration-1` | mapped configuration | test | The exact-ref diff reports configuration changes in crates/openshell-cli/src/commands/common.rs, crates/openshell-cli/src/main.rs, crates/openshell-cli/src/run.rs. Mapped NemoCl... | runtime-proof | | `openshell-v0.0.105..v0.0.106-code-impact-contract-or-schema-2` | mapped contract or schema | test | The exact-ref diff reports contract or schema changes in crates/openshell-core/src/middleware.rs, crates/openshell-core/src/provider_credentials.rs, crates/openshell-driver-kube... | runtime-proof | | `openshell-v0.0.105..v0.0.106-code-impact-security-3` | mapped security | test | The exact-ref diff reports security changes in crates/openshell-bootstrap/src/build_windows.rs, crates/openshell-cli/src/commands/common.rs, crates/openshell-cli/src/main.rs. Ma... | runtime-proof | | `openshell-v0.0.105..v0.0.106-code-impact-test-4` | mapped test | test | The exact-ref diff reports test changes in crates/openshell-cli/tests/ensure_providers_integration.rs, crates/openshell-cli/tests/mtls_integration.rs, crates/openshell-cli/tests... | runtime-proof | ### Immutable artifacts | Artifact | SHA-256 | |---|---| | openshell-aarch64-apple-darwin.tar.gz | `969493205e3d3462…` | | openshell-aarch64-unknown-linux-musl.tar.gz | `ce981904ae8febd9…` | | openshell-checksums-sha256.txt | `7421aaf9d5550dc1…` | | openshell-gateway-aarch64-apple-darwin.tar.gz | `de8f90db9dd0d3b4…` | | openshell-gateway-aarch64-unknown-linux-gnu.tar.gz | `22b7781249e34870…` | | openshell-gateway-checksums-sha256.txt | `26e4345449e02475…` | | openshell-gateway-x86_64-unknown-linux-gnu.tar.gz | `b7760cb752a4363c…` | | openshell-gateway-x86_64-unknown-linux-gnu.tar.gz::executable:openshell-gateway | `e6cde8a54568aa19…` | | openshell-sandbox-aarch64-unknown-linux-gnu.tar.gz | `5e5d758d53c6abc6…` | | openshell-sandbox-aarch64-unknown-linux-gnu.tar.gz::executable:openshell-sandbox | `0031c6b257a23ecc…` | | openshell-sandbox-checksums-sha256.txt | `88bc98ffdc915fb7…` | | openshell-sandbox-x86_64-unknown-linux-gnu.tar.gz | `559b8aaad3a8eeab…` | | openshell-sandbox-x86_64-unknown-linux-gnu.tar.gz::executable:openshell-sandbox | `019301ec8618abbe…` | | openshell-x86_64-unknown-linux-musl.tar.gz | `d1a885a91b3e5aaa…` | | openshell-x86_64-unknown-linux-musl.tar.gz::executable:openshell | `98ecf95113fea999…` | | openshell.rb | `f0f86519e227b3b3…` | | openshell-source:crates/openshell-core/src/google_cloud.rs | `2583a04a0557f069…` | | openshell-source:crates/openshell-core/src/provider_credentials.rs | `7e8e05efcb725807…` | | openshell-source:crates/openshell-core/src/secrets.rs | `b122b4a5af5a5823…` | | ghcr.io/nvidia/openshell/supervisor:index | `722f44669722961b…` | ### Validation receipt | Gate | Current result | |---|---| | targeted | Passed: 609 assertions with 1 intentional skip across the migration/runtime suites, 290/290 E2E registry/workflow overlap assertions, and 73/73 onboarding-preflight overlap assertions on `cc9167892`. After the final main reconciliation, 32/32 conflict-sensitive gateway/TLS assertions and `npm run validate:pr` passed on latest PR commit `d1990537d`. | | brev-integration-fresh-onboarding | Passed on Brev before reconciliation; latest PR commit GitHub CI passed | | brev-integration-existing-upgrade | Passed on Brev before reconciliation; latest PR commit GitHub CI passed | | brev-integration-recovery-rollback | Passed on Brev before reconciliation; latest PR commit GitHub CI passed | | full-e2e | Exact inference run [32199961381](https://github.com/NVIDIA/NemoClaw/actions/runs/32199961381) on PR commit `cc9167892` with trusted base/workflow `a9fc8045d` passed 5/7 cases. TC-INF-12 and TC-INF-13 both completed cold onboarding, plan/apply, provider attachment, token refresh, and post-attach inference; OpenShell 0.0.106 then failed to project `E2E_ACCESS_TOKEN` / `ENTRA_ACCESS_TOKEN` into 19 fresh sandbox execs over 35 seconds. Protected managed-image runtime was not launched because inference is its prerequisite. This is a repeated upstream runtime-credential projection blocker, not a waived gate. | <!-- List concrete changes. If this adds an abstraction, configuration, fallback, migration, or compatibility path, name its current requirement and consumer, explain why a direct change is insufficient, and identify the test that protects it. --> ## Type of Change - [ ] Code change (feature, bug fix, or refactor) - [x] Code change with doc updates - [ ] Doc only (prose changes, no code sample modifications) - [ ] Doc only (includes code sample changes) ## Quality Gates <!-- Check one tests line and one docs line. Check other lines when applicable. Add every requested justification or approval reference. --> - [x] Tests added or updated for changed behavior - [ ] Existing tests cover changed behavior — justification: - [ ] Tests not applicable — justification: - [x] Docs updated for user-facing behavior changes - [ ] Docs not applicable — justification: - [x] Sensitive paths changed (security, policy, credentials, preflight, onboarding, inference, runner, sandbox, or messaging) - [x] Sensitive-path review completed or maintainer-approved waiver recorded — reviewer/approval link/justification: Independent exact-commit review passed for the OpenShell 0.0.106 migration and stacked E2E selector. - [ ] Non-success, skipped, or missing CI check accepted by maintainer — check name, approval link, and follow-up issue: ## Documentation Writer Review <!-- Required for code and documentation changes after the changes and applicable validation are complete. Keep one review checkbox and one instance of each visible or hidden field. For Evidence, list changed documentation paths. For documentation-only changes, also state that the writing rules and documentation style were reviewed. For other results, explain why no documentation change is needed or why the review is blocked. For Agent, use a consistent product and surface name, such as Codex Desktop, Codex CLI, Claude Code, or Cursor. After committing all review changes, put `git rev-parse --short HEAD` and `git rev-parse --short HEAD:AGENTS.md` in the hidden metadata below. Rerun the review and refresh that metadata after any new commit. This receipt is advisory during the data-collection pilot. --> - [x] Documentation writer subagent reviewed the completed changes - Result: `docs-updated` - Evidence: `docs/deployment/set-up-mcp-bridge.mdx`, `docs/manage-sandboxes/add-mcp-server.mdx`, `docs/manage-sandboxes/manage-mcp-servers.mdx`, `docs/reference/commands.mdx`, and `docs/reference/troubleshoot-mcp-servers.mdx` - Agent: Codex Desktop <!-- docs-review-head-sha: e3a53c9 --> <!-- docs-review-agents-blob-sha: 513518c --> ## DGX Station Hardware Evidence <!-- Required only when scripts/prepare-dgx-station-host.sh changes. Maintainers must review the linked evidence before approving or merging. This is human-reviewed evidence, not authenticated hardware provenance. Exceptional bypasses use existing repository governance and must be documented on the PR. --> - [ ] Tested on DGX Station - Tested commit: - Station profile/scenario: - Result: - Supporting evidence: ## Verification <!-- Check each applicable item only when supported by the requested evidence. Run targeted tests once per relevant change set and rerun after later edits or hook autofixes that can affect the tested behavior. Do not rerun hook-covered checks. --> - [x] PR description includes a `Signed-off-by:` line and every commit appears as `Verified` in GitHub - [x] Normal `pre-commit`, `commit-msg`, and `pre-push` hooks passed, or `npm run validate:pr` passed after refreshing `origin/main` when hooks were skipped or unavailable - [x] Targeted behavior tests pass for the current change set, or tests are marked not applicable above — 609 assertions passed with 1 intentional skip across the migration/runtime suites, followed by 290/290 E2E registry/workflow overlap assertions and 73/73 onboarding-preflight overlap assertions on `cc9167892`; 32/32 conflict-sensitive gateway/TLS assertions and `npm run validate:pr` then passed after the final main reconciliation on latest PR commit `d1990537d`. - [x] Applicable broad gate passed — GitHub reports no required checks for this branch. Optional checks do not gate review unless they expose a PR defect. - [x] Quality Gates section completed with required justifications or waivers - [x] No secrets, API keys, or credentials committed - [ ] `npm run docs` builds without warnings (doc changes only) - [x] Doc pages follow the [style guide](https://github.com/NVIDIA/NemoClaw/blob/main/docs/CONTRIBUTING.md) (doc changes only) - [ ] New doc pages include SPDX header and frontmatter (new pages only) --- <!-- DCO sign-off is required in this PR description, and every commit must appear as Verified in GitHub. Run: git config user.name && git config user.email --> Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com> <!-- patch-walker-status:start --> ## NemoPatch current-head status - Status: **blocked** - Latest PR commit: `d1990537d9b9c8579c3197cba33faddaeb9aa101` - Checked: 2026-08-19T02:46:48Z - Reconciled with `main` at base commit `ee6762b99`; 32/32 conflict-sensitive gateway/TLS assertions, local PR validation, and all 45 applicable current-commit GitHub checks pass. The two advisor services failed analysis without findings. Exact inference on `cc9167892` with trusted base/workflow `a9fc8045d` passed 5/7 and repeatedly isolated an OpenShell 0.0.106 runtime-credential projection failure after successful provider attachment and refresh. Protected managed-image E2E remains gated; maintainer/upstream resolution is required. <!-- patch-walker-status:end --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added support for OpenShell `0.0.106`, including updated CLI, gateway, sandbox, supervisor, and credential-boundary assets. - Added stronger installation integrity checks for reviewed binaries and release artifacts. - Added TLS server-name verification across Docker, Podman, and VM environments. - **Bug Fixes** - Improved MCP bridge destination validation before connections are established. - Added supervisor TLS-name sanitization protections. - **Documentation** - Updated setup, compatibility, security, installation, and troubleshooting guidance for OpenShell `0.0.106`. - Added guidance for resolving Docker credential-store failures in headless environments. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com> Signed-off-by: Senthil Ravichandran <senthilr@nvidia.com> Co-authored-by: Senthil Ravichandran <senthilr@nvidia.com>
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 freeto 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.
Summary
Add
cargo-denyto audit dependencies for known vulnerabilities (RustSec/NVD), license compliance, banned crates, and untrusted sources. Runs in branch checks to gate PRs and as a daily scheduled workflow to catch newly published advisories.Closes#2671
Changes
deny.tomlwith advisories, licenses, bans, and sources configurationrust:denymise task wrappingcargo deny checkcargo deny checkstep tobranch-checks.yml(blocks PRs on failure)cargo-deny.ymlscheduled workflow (daily cron + manual dispatch)cargo-denyat 0.20 inmise.tomlNot included (intentional)
Cargo.toml/Cargo.lock/deny.toml):cargo deny checkruns in ~10-15s with no compilation, so the CI time savings are minimal. Can be added later if needed.Testing
mise run pre-commitpassesmise run rust:denyruns successfully locallyChecklist
cc @alangou