Skip to content

fix(skills): enforce stale verification controls - #8309

Open
prekshivyas wants to merge 19 commits into
mainfrom
fix/verify-stale-skill
Open

fix(skills): enforce stale verification controls#8309
prekshivyas wants to merge 19 commits into
mainfrom
fix/verify-stale-skill

Conversation

@prekshivyas

@prekshivyas prekshivyas commented Aug 5, 2026

Copy link
Copy Markdown
Collaborator

Summary

Prevents stale-issue verification from assigning a fixed verdict unless the same reviewed reproducer exposes the reported symptom on the reported release. The workflow installs requested release tags, treats issue content as untrusted, requires approval before execution or GitHub writes, and verifies cleanup before comparing releases.

Changes

  • Select the newest vX.Y.Z release tag and require a matching reported-release result before fixed scoring.
  • Normalize supported Brev inventory shapes and instance-name fields before reuse, collision, and concurrency checks.
  • Drop LangChain Deep Agents Code issues from the v1 workflow instead of substituting OpenClaw.
  • Require dedicated credential-bearing instances, confirmed deletion, and credential rotation when deletion is not confirmed.
  • Verify installer sandbox removal and reset acceptance criteria before each release comparison.
  • Cover performance, resource growth, lifecycle boundaries, intermittent results, architecture changes, and by-design outcomes with named evidence requirements.
  • Redact standalone bearer credentials and add policy regression coverage for these controls.

Type of Change

  • Code change (feature, bug fix, or refactor)
  • Code change with doc updates
  • Doc only (prose changes, no code sample modifications)
  • Doc only (includes code sample changes)

Quality Gates

  • Tests added or updated for changed behavior
  • Existing tests cover changed behavior — justification:
  • Tests not applicable — justification:
  • Docs updated for user-facing behavior changes
  • Docs not applicable — justification: this changes a maintainer-only agent workflow and does not change a supported user-facing command, configuration, or public documentation surface.
  • Sensitive paths changed (security, policy, credentials, preflight, onboarding, inference, runner, sandbox, or messaging)
  • Sensitive-path review completed or maintainer-approved waiver recorded — reviewer/approval link/justification: not completed; maintainer review is required before merge.
  • Non-success, skipped, or missing CI check accepted by maintainer — check name, approval link, and follow-up issue: no failed local check was accepted.

Documentation Writer Review

  • Documentation writer subagent reviewed the completed changes
  • Result: docs-updated
  • Evidence:
    • .agents/skills/nemoclaw-maintainer-verify-stale/SKILL.md
    • .agents/skills/nemoclaw-maintainer-verify-stale/reference/brev-provisioning.md
    • .agents/skills/nemoclaw-maintainer-verify-stale/reference/by-design.md
    • .agents/skills/nemoclaw-maintainer-verify-stale/reference/candidate-selection.md
    • .agents/skills/nemoclaw-maintainer-verify-stale/reference/environment-and-reproducer.md
    • .agents/skills/nemoclaw-maintainer-verify-stale/reference/reproduction-rubrics.md
    • .agents/skills/nemoclaw-maintainer-verify-stale/reference/scoring-comments-and-logging.md
    • Review result: PASS with no findings on 6234ac308.
  • Agent: Pi CLI

DGX Station Hardware Evidence

  • Tested on DGX Station
  • Tested commit:
  • Station profile/scenario:
  • Result:
  • Supporting evidence:

Verification

  • PR description includes a Signed-off-by: line and every commit appears as Verified in GitHub
  • 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
    • Normal pre-commit and commit-msg hooks passed on the repair commits. The final push ran the normal pre-push checks; CLI TypeScript and package-version checks passed.
  • Targeted behavior tests pass for the current change set, or tests are marked not applicable above — npx vitest run --project integration test/maintainer-skills-policy.test.ts test/skills-frontmatter.test.ts (2 files, 51 tests passed)
  • Applicable broad gate passed — not run; npm run checks:repository passed as a focused repository check.
  • Quality Gates section completed with required justifications or waivers — sensitive-path review remains required.
  • No secrets, API keys, or credentials committed
  • npm run docs builds without warnings (doc changes only)
  • Doc pages follow the style guide (doc changes only)
  • New doc pages include SPDX header and frontmatter (new pages only)

Additional focused checks:

  • npm run checks:repository
  • npx vitest run --project integration test/maintainer-skills-policy.test.ts test/skills-frontmatter.test.ts
  • npx --yes markdownlint-cli2@0.22.0 '.agents/skills/nemoclaw-maintainer-verify-stale/**/*.md'
  • git diff --check
  • NUL-byte check across the nine changed files
  • Independent documentation writer review: PASS with no findings on 6234ac308

Signed-off-by: Prekshi Vyas prekshiv@nvidia.com

Summary by CodeRabbit

  • New Features

    • Added safer stale-issue verification with bounded reproductions, exact-release validation, approval checkpoints, and secure credential handling.
    • Added automated sanitization for credentials, authorization data, internal domains, email addresses, and local paths.
    • Expanded verification for performance, rebuild cycles, architecture changes, and intentional feature removal.
  • Bug Fixes

    • Improved handling of installation, infrastructure, cleanup, and inconclusive verification failures.
    • Strengthened candidate filtering, release detection, evidence ownership, and race-condition handling.
  • Tests

    • Expanded coverage for safety controls, bounded execution, redaction, and secure evidence processing.

Signed-off-by: Prekshi Vyas <prekshiv@nvidia.com>
@copy-pr-bot

copy-pr-bot Bot commented Aug 5, 2026

Copy link
Copy Markdown

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@coderabbitai

coderabbitai Bot commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

The verify-stale workflow now validates exact release tags, treats issue reproducers as untrusted, requires approval before remote or GitHub effects, bounds local and Brev execution, redacts evidence, and routes installation or baseline failures to inconclusive outcomes.

Changes

Verify-stale workflow

Layer / File(s) Summary
Candidate intake and intent evidence
.agents/skills/nemoclaw-maintainer-verify-stale/SKILL.md, .agents/skills/nemoclaw-maintainer-verify-stale/reference/candidate-selection.md, .agents/skills/nemoclaw-maintainer-verify-stale/reference/by-design.md
Candidate discovery uses private evidence storage, native Issue Type data, exact release tags, refined exclusions, and explicit evidence before a by-design verdict.
Safe reproducer and local verification
.agents/skills/nemoclaw-maintainer-verify-stale/reference/environment-and-reproducer.md, .agents/skills/nemoclaw-maintainer-verify-stale/scripts/redact-evidence.py, test/maintainer-skills-policy.test.ts
Reproducer review, credential handling, isolated local execution, evidence redaction, failure handling, and policy tests enforce bounded and approved verification.
Brev provisioning and verification
.agents/skills/nemoclaw-maintainer-verify-stale/reference/brev-provisioning.md, .agents/skills/nemoclaw-maintainer-verify-stale/reference/reproduction-rubrics.md, test/maintainer-skills-policy.test.ts
Brev reuse, provisioning, reset, installation, dependency setup, locks, and verification rubrics use ownership checks, time limits, exact versions, cleanup, and infrastructure-failure handling.
Verdicts, comments, and activity records
.agents/skills/nemoclaw-maintainer-verify-stale/reference/scoring-comments-and-logging.md, .agents/skills/nemoclaw-maintainer-verify-stale/SKILL.md
Scoring, baseline requirements, redacted comments, race checks, partial writes, cleanup, activity records, and scheduling guidance reflect controlled verification outcomes.

Estimated code review effort: 4 (Complex) | ~60 minutes

Possibly related PRs

  • NVIDIA/NemoClaw#8523: Its OpenShell runtime upgrade relates to this PR’s exact release-tag and version-validation changes.

Suggested labels: area: security, area: policy, bug-fix

Suggested reviewers: cv

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: enforcing stronger stale-verification controls in skills.
✨ Finishing Touches 💡 2
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🛠️ Fix failing CI checks 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/verify-stale-skill

Comment @coderabbitai help to get the list of available commands.

@github-code-quality

github-code-quality Bot commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Code Coverage Overview

Languages: TypeScript

TypeScript / code-coverage/plugin

The overall coverage in commit 5a8276a in the fix/verify-stale-ski... branch remains at 96%, unchanged from commit b5ac557 in the main branch.

TypeScript / code-coverage/cli

The overall coverage in commit 5a8276a in the fix/verify-stale-ski... branch remains at 81%, unchanged from commit b5ac557 in the main branch.

Show a code coverage summary of the most impacted files.
File main b5ac557 fix/verify-stale-ski... 5a8276a +/-
src/lib/onboard...flight-ports.ts 67% 33% -34%
src/lib/onboard...oute-handoff.ts 95% 92% -3%
src/lib/messagi...flow-planner.ts 91% 91% 0%
src/lib/onboard...-transaction.ts 93% 93% 0%
src/lib/inferen...ompatibility.ts 90% 90% 0%
src/lib/core/immutable.ts 97% 97% 0%
src/lib/messagi...etup-applier.ts 68% 68% 0%
src/lib/messaging/utils.ts 76% 76% 0%
src/lib/onboard/temp-files.ts 100% 100% 0%
src/lib/agent/d...e-base-image.ts 86% 100% +14%

Updated August 07, 2026 08:55 UTC

@github-actions

github-actions Bot commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

PR Review Advisor — Informational

Advisor assessment: Informational / low confidence
Next action: No advisor follow-up needed.
Findings: 0 blockers · 0 warnings · 0 suggestions
Status: PR review advisor skipped: OpenShell inference configuration failed or the advisor credential is unavailable

Model lanes

  • GPT-5.6 Terra (primary): Skipped
  • Nemotron 3 Ultra (second opinion): Skipped

Second-opinion terminology and E2E selections are advisory. Live E2E does not run automatically for pull requests.

E2E guidance

Advisory only. A maintainer can dispatch the default E2E suite against this exact revision.

Recommended E2E: cloud-inference, security-posture

Workflow run details

This automated review informs maintainers. Warnings and suggestions do not require a response. A maintainer decides whether to merge.

@prekshivyas prekshivyas self-assigned this Aug 5, 2026
@prekshivyas
prekshivyas requested a review from cv August 5, 2026 14:50
@prekshivyas
prekshivyas marked this pull request as ready for review August 5, 2026 14:50

@coderabbitai coderabbitai Bot 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.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.agents/skills/nemoclaw-maintainer-verify-stale/reference/by-design.md:
- Around line 64-68: Escape issue-derived text before shell interpolation: in
by-design.md lines 64-68, assign the symbol to a variable and pass it to git
grep as a quoted -e argument; in reproduction-rubrics.md lines 53-66, assign the
redacted symptom phrase to a variable and pass it to grep -F -- with quotes.
Apply the same safe argument handling at both sites while preserving the
evidence-capture workflow.

In
@.agents/skills/nemoclaw-maintainer-verify-stale/reference/reproduction-rubrics.md:
- Around line 272-277: Update the performance-sample scoring flow around the
loop writing `${PERF_SIDE}-perf-exits.log` to read and validate all ten recorded
exit codes before calculating p50 or p90. Accept only ten expected successful
exit codes; if any sample fails or the count is incomplete, mark that side
inconclusive and ensure the final result is verify-inconclusive for both
baseline and latest rather than scoring recorded durations.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: e6fa341b-342e-4175-82f9-4a4fa35c4f63

📥 Commits

Reviewing files that changed from the base of the PR and between ead85bc and d301b03.

📒 Files selected for processing (9)
  • .agents/skills/nemoclaw-maintainer-verify-stale/SKILL.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/reference/brev-provisioning.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/reference/by-design.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/reference/candidate-selection.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/reference/environment-and-reproducer.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/reference/reproduction-rubrics.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/reference/scoring-comments-and-logging.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/scripts/redact-evidence.py
  • test/maintainer-skills-policy.test.ts

Comment thread .agents/skills/nemoclaw-maintainer-verify-stale/reference/by-design.md Outdated
cv added 7 commits August 6, 2026 20:01
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
@cv cv changed the title fix(skills): harden stale issue verification fix(skills): enforce stale verification controls Aug 7, 2026
Signed-off-by: Carlos Villela <cvillela@nvidia.com>

@coderabbitai coderabbitai Bot 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.

Actionable comments posted: 6

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (3)
.agents/skills/nemoclaw-maintainer-verify-stale/reference/scoring-comments-and-logging.md (1)

358-400: 🗄️ Data Integrity & Integration | 🟠 Major | 🏗️ Heavy lift

Serialize shared activity-log writes.

Scheduled batch runs and manual runs can share VERIFY_STALE_LOG_DIR. Per-issue appends and end-of-batch prepends are separate file operations. Concurrent runs can interleave entries or overwrite a session summary.

Use a lock or atomic write protocol. Alternatively, write unique per-run files and merge them atomically.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
@.agents/skills/nemoclaw-maintainer-verify-stale/reference/scoring-comments-and-logging.md
around lines 358 - 400, Serialize all writes to the shared
VERIFY_STALE_LOG_DIR/nemoclaw-verify-stale-log.md activity log, including
per-issue appends and end-of-batch session-summary prepends. Update the
verification logging flow to use a lock or atomic read-modify-write protocol so
concurrent scheduled and manual runs cannot interleave entries or overwrite
summaries; preserve the existing behavior when VERIFY_STALE_LOG_DIR is unset.
.agents/skills/nemoclaw-maintainer-verify-stale/reference/reproduction-rubrics.md (2)

284-310: ⚠️ Potential issue | 🟠 Major

Reject failed performance samples before scoring.

The harness writes ${PERF_SIDE}-perf-exits.log, but the scoring path validates only ten numeric timing samples. It never validates the ten exit codes. Ten fast failures can therefore produce an in-SLA p50/p90 and a false fixed-on-latest result. Require ten expected successful exit codes before calculating percentiles. Otherwise select verify-inconclusive.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
@.agents/skills/nemoclaw-maintainer-verify-stale/reference/reproduction-rubrics.md
around lines 284 - 310, Update the percentile-scoring flow around PERF_SAMPLES
to read and validate ${PERF_SIDE}-perf-exits.log before calculating P50_MS or
P90_MS. Require exactly ten exit codes, all matching the reproducer’s expected
successful code; on any missing, malformed, or non-success code, select
verify-inconclusive and do not score performance. Preserve the existing numeric
sample validation and percentile calculations for valid runs.

200-215: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Use a portable word-boundary check.

The drift command uses GNU-specific \b syntax with grep -E. macOS BSD grep can skip all tool names. Use POSIX character classes or Python, then test the command with GNU and BSD grep.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
@.agents/skills/nemoclaw-maintainer-verify-stale/reference/reproduction-rubrics.md
around lines 200 - 215, Update the tool-name extraction in the
architecture-drift check to use a portable POSIX word-boundary approach instead
of GNU-specific \b with grep -E. Preserve multi-word tool matching and macOS
system Bash compatibility, and ensure the command works with both GNU and BSD
grep.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In
@.agents/skills/nemoclaw-maintainer-verify-stale/reference/candidate-selection.md:
- Around line 105-107: Update the batch-mode candidate processing instructions
to bind ISSUE_NUMBER to the current candidate before querying comments. Ensure
each verification plan uses that candidate’s issue number, avoiding
unset-variable failures and inherited values from other issues.

In
@.agents/skills/nemoclaw-maintainer-verify-stale/reference/environment-and-reproducer.md:
- Around line 250-255: Update the local version probe near NEMOCLAW_BIN and
LOCAL_VERSION to execute through the existing bounded Python helper instead of
invoking the binary directly. Preserve the captured version output, and treat
helper timeouts as an inconclusive local result so the skill cannot hang on a
broken nemoclaw binary.
- Around line 292-294: Update the local reproducer validator’s argument
validation to match the complete argv vector against explicit read-only command
forms, rather than checking only argv[1] or help flags anywhere. Reject extra
arguments and write flags, while preserving the permitted read-only commands and
help forms before execution.

In
@.agents/skills/nemoclaw-maintainer-verify-stale/reference/reproduction-rubrics.md:
- Around line 148-157: Update the resolved-version verification around
run_bounded and RESOLVED so its exit status is captured before any tail or
version parsing occurs. Store the command output in a temporary file, check the
run_bounded result—including timeouts—and set LATEST_INSTALL_FAILED=1
immediately on any non-zero status; only parse and compare RESOLVED_SEMVER when
the remote nemoclaw --version command succeeds.

In
@.agents/skills/nemoclaw-maintainer-verify-stale/reference/scoring-comments-and-logging.md:
- Around line 234-241: Update the evidence templates for baseline verification
and newest-release verification so fixed evidence is not emitted when baseline
installation or reproduction fails. In the scoring and logging guidance, make
the rows conditional or split them into separate templates: use
verify-inconclusive for baseline-stop paths, recording n/a and one redacted
failure line, while retaining newest-only results only for successful baseline
verification.
- Around line 26-27: Update both scoring rules in the scoring documentation so
the +50 newest-release signal requires the reviewed reproducer to match the
reported symptom on the exact $REPORTED_VERSION tag before confirming the
expected exit and absence of the symptom on the newest tag. Apply the same
reported-version symptom-match prerequisite to the +25 fallback rule, preserving
the existing mixed-results and newest-release conditions.

---

Outside diff comments:
In
@.agents/skills/nemoclaw-maintainer-verify-stale/reference/reproduction-rubrics.md:
- Around line 284-310: Update the percentile-scoring flow around PERF_SAMPLES to
read and validate ${PERF_SIDE}-perf-exits.log before calculating P50_MS or
P90_MS. Require exactly ten exit codes, all matching the reproducer’s expected
successful code; on any missing, malformed, or non-success code, select
verify-inconclusive and do not score performance. Preserve the existing numeric
sample validation and percentile calculations for valid runs.
- Around line 200-215: Update the tool-name extraction in the architecture-drift
check to use a portable POSIX word-boundary approach instead of GNU-specific \b
with grep -E. Preserve multi-word tool matching and macOS system Bash
compatibility, and ensure the command works with both GNU and BSD grep.

In
@.agents/skills/nemoclaw-maintainer-verify-stale/reference/scoring-comments-and-logging.md:
- Around line 358-400: Serialize all writes to the shared
VERIFY_STALE_LOG_DIR/nemoclaw-verify-stale-log.md activity log, including
per-issue appends and end-of-batch session-summary prepends. Update the
verification logging flow to use a lock or atomic read-modify-write protocol so
concurrent scheduled and manual runs cannot interleave entries or overwrite
summaries; preserve the existing behavior when VERIFY_STALE_LOG_DIR is unset.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 53611ae7-5b00-42a7-a347-ad83b49c636f

📥 Commits

Reviewing files that changed from the base of the PR and between d301b03 and 05f7e41.

📒 Files selected for processing (9)
  • .agents/skills/nemoclaw-maintainer-verify-stale/SKILL.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/reference/brev-provisioning.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/reference/by-design.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/reference/candidate-selection.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/reference/environment-and-reproducer.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/reference/reproduction-rubrics.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/reference/scoring-comments-and-logging.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/scripts/redact-evidence.py
  • test/maintainer-skills-policy.test.ts
🚧 Files skipped from review as they are similar to previous changes (5)
  • test/maintainer-skills-policy.test.ts
  • .agents/skills/nemoclaw-maintainer-verify-stale/scripts/redact-evidence.py
  • .agents/skills/nemoclaw-maintainer-verify-stale/SKILL.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/reference/by-design.md
  • .agents/skills/nemoclaw-maintainer-verify-stale/reference/brev-provisioning.md

Comment thread .agents/skills/nemoclaw-maintainer-verify-stale/reference/reproduction-rubrics.md Outdated
cv added 8 commits August 6, 2026 21:02
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>
Signed-off-by: Carlos Villela <cvillela@nvidia.com>

@cv cv left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Do not pipe an unverified installer response directly to Bash on a credential-bearing Brev instance. Download a release-tag-bound installer artifact, verify a repository-accepted checksum or signature, and execute only the verified file for both release passes. Add a policy test that rejects download-and-execute without integrity verification. Then refresh onto current main and rerun the skill policy and required checks.

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