Add Staged Artifact validations for RunnerV2#37974
Add Staged Artifact validations for RunnerV2#37974tarun-google wants to merge 18 commits intoapache:masterfrom
Conversation
Summary of ChangesHello, 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 security and reliability of artifact staging for RunnerV2 by introducing mandatory SHA256 integrity checks. To maintain flexibility, a new experiment flag has been added that allows users to disable these checks if required. The changes span across multiple SDKs and the worker harness to ensure consistent behavior during job execution. Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. 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. Footnotes
|
|
Checks are failing. Will not request review until checks are succeeding. If you'd like to override that behavior, comment |
|
Stopping reviewer notifications for this pull request: review requested by someone other than the bot, ceding control. If you'd like to restart, comment |
Abacn
left a comment
There was a problem hiding this comment.
A general notes, there are many components involved here. If there is a planned beam/model proto addition, it usually needs to go first as Dataflow backend needs to be updated with new proto
|
@Abacn @kennknowles This PR is ready for review(server is fully rolled out). Failing tests are not relevant |
…m into add_expected_sha_checks
|
/gemini review |
There was a problem hiding this comment.
Code Review
This pull request implements artifact integrity validation by verifying SHA256 hashes during the retrieval process across the Go, Java, Python, and TypeScript SDKs. It introduces a mechanism to inject pipeline options into the context and provides a new experiment flag, disable_staged_file_integrity_checks, to bypass validation when necessary. Feedback focuses on improving the robustness of experiment parsing by combining legacy and URN-style options, optimizing performance by caching the experiments list to avoid repeated proto traversals, and reducing log noise during successful artifact validations.
|
Fixed suggestions and re-tested. Thanks! |
Adding Staged Artifact validations for RunnerV2. We currently disable this feature with disable_staged_file_integrity_checks(Note:currently rolled out to all regions). SDK already uploads these sha256 during the submission for RunnerV2. So, no need to make any changes in Job Submission
Fixes:
Next Fix:
Staged pipeline validation.
Test Java:(Adding custom log for test)



Test Python :(Adding custom log for test)
Test Golang(Adding custom log for test)
GitHub Actions Tests Status (on master branch)
See CI.md for more information about GitHub Actions CI or the workflows README to see a list of phrases to trigger workflows.