Skip to content

Comments

fix(github): show attestation verification success in progress output#8230

Merged
jdx merged 1 commit intomainfrom
fix/attestation-output
Feb 18, 2026
Merged

fix(github): show attestation verification success in progress output#8230
jdx merged 1 commit intomainfrom
fix/attestation-output

Conversation

@jdx
Copy link
Owner

@jdx jdx commented Feb 18, 2026

Summary

  • Show "✓ GitHub attestations verified" in the github backend progress after successful verification, matching aqua backend behavior

Closes #8217

Test plan

  • Install a tool via github backend that has attestations (e.g. uv) and confirm "✓ GitHub attestations verified" appears in progress

🤖 Generated with Claude Code

Copilot AI review requested due to automatic review settings February 18, 2026 02:25
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @jdx, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request enhances the user experience by providing clearer feedback during GitHub attestation verification and reducing log noise. It introduces a visible confirmation message for successful attestation verification and intelligently filters out verbose INFO messages from third-party libraries in standard output, ensuring a cleaner and more focused user interface.

Highlights

  • GitHub Attestation Verification Output: The pull request now displays "✓ GitHub attestations verified" in the progress output when GitHub attestations are successfully verified, aligning with the behavior of the aqua backend.
  • Suppress External Crate INFO Logs: INFO level messages from external crates, such as sigstore key-parsing diagnostics, are now suppressed in non-verbose mode to prevent confusing users with internal implementation details.
Changelog
  • src/backend/github.rs
    • Added a progress message to indicate successful GitHub attestation verification.
  • src/logger.rs
    • Implemented conditional logic to suppress INFO level logs from external crates when not in debug mode.
Activity
  • No human activity has occurred on this pull request since its creation.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request introduces two user-facing improvements. First, it adds a success message "✓ GitHub attestations verified" when GitHub attestations are successfully verified, which enhances the user experience by providing clear feedback. Second, it suppresses INFO level log messages from external crates (like sigstore) in non-verbose mode, reducing noise and preventing user confusion from internal diagnostics. The changes are well-implemented and align with the PR's goals. I have one minor suggestion to improve the clarity of the logging condition.

src/logger.rs Outdated
Comment on lines 32 to 39
let will_log_term = if record.level() == Level::Info
&& term_level < LevelFilter::Debug
&& !record.target().starts_with("mise")
{
false
} else {
record.level() <= term_level
};
Copy link
Contributor

Choose a reason for hiding this comment

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

medium

The condition term_level < LevelFilter::Debug is correct for checking if we're in non-verbose mode. However, since this logic specifically targets INFO level logs, it only has a practical effect when term_level is Info. For lower levels like Warn or Error, INFO logs would be filtered out by the else branch anyway.

For improved clarity and to be more explicit about the exact condition under which this logic applies, you could use term_level == LevelFilter::Info or term_level <= LevelFilter::Info. This makes it clearer that we're only modifying behavior for the Info log level.

This is a minor suggestion for readability.

Suggested change
let will_log_term = if record.level() == Level::Info
&& term_level < LevelFilter::Debug
&& !record.target().starts_with("mise")
{
false
} else {
record.level() <= term_level
};
let will_log_term = if record.level() == Level::Info
&& term_level <= LevelFilter::Info
&& !record.target().starts_with("mise")
{
false
} else {
record.level() <= term_level
};

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR improves the user experience when installing tools with GitHub attestations by (1) displaying a success message after verification matching the aqua backend's behavior, and (2) suppressing confusing internal diagnostic INFO messages from external crates like sigstore in non-verbose mode.

Changes:

  • Added success message "✓ GitHub attestations verified" to github backend matching aqua backend behavior
  • Filtered INFO-level logs from external crates (non-mise modules) in terminal output when not in debug/verbose mode

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
src/backend/github.rs Added success message display after GitHub attestation verification
src/logger.rs Added filter to suppress external crate INFO messages in non-verbose terminal output

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is ON, but a Cloud Agent failed to start.

Show "✓ GitHub attestations verified" in the github backend progress
after successful verification, matching aqua backend behavior.

Closes #8217

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@jdx jdx force-pushed the fix/attestation-output branch from 1896c32 to 2dc2802 Compare February 18, 2026 02:37
@jdx jdx changed the title fix(github): improve attestation verification output fix(github): show attestation verification success in progress output Feb 18, 2026
@github-actions
Copy link

Hyperfine Performance

mise x -- echo

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.2.15 x -- echo 23.7 ± 0.4 23.0 27.9 1.00
mise x -- echo 23.9 ± 0.3 23.3 25.6 1.01 ± 0.02

mise env

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.2.15 env 23.4 ± 0.7 22.7 30.0 1.00
mise env 23.5 ± 0.3 22.8 25.9 1.00 ± 0.03

mise hook-env

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.2.15 hook-env 24.0 ± 0.3 23.2 25.5 1.00
mise hook-env 24.1 ± 0.3 23.5 25.6 1.01 ± 0.02

mise ls

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.2.15 ls 21.3 ± 0.3 20.7 23.2 1.00
mise ls 21.6 ± 0.3 20.9 23.7 1.01 ± 0.02

xtasks/test/perf

Command mise-2026.2.15 mise Variance
install (cached) 132ms 131ms +0%
ls (cached) 81ms 80ms +1%
bin-paths (cached) 86ms 86ms +0%
task-ls (cached) 815ms 814ms +0%

@jdx jdx merged commit 0bf0e85 into main Feb 18, 2026
36 checks passed
@jdx jdx deleted the fix/attestation-output branch February 18, 2026 02:57
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.

1 participant