fix(github): show attestation verification success in progress output#8230
fix(github): show attestation verification success in progress output#8230
Conversation
Summary of ChangesHello @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
Changelog
Activity
Using Gemini Code AssistThe 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
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 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
|
There was a problem hiding this comment.
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
| let will_log_term = if record.level() == Level::Info | ||
| && term_level < LevelFilter::Debug | ||
| && !record.target().starts_with("mise") | ||
| { | ||
| false | ||
| } else { | ||
| record.level() <= term_level | ||
| }; |
There was a problem hiding this comment.
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.
| 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 | |
| }; |
There was a problem hiding this comment.
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.
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>
1896c32 to
2dc2802
Compare
Hyperfine Performance
|
| 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% |
Summary
Closes #8217
Test plan
uv) and confirm "✓ GitHub attestations verified" appears in progress🤖 Generated with Claude Code