Add pipeline hash#38357
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 introduces a mechanism to verify the integrity of a pipeline during the download process by calculating and attaching a SHA256 hash of the serialized pipeline proto to the job options. This change ensures that the RunnerHarness or Server can validate the pipeline's sanity before execution, enhancing reliability across the Java, Python, and Go SDKs. 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
|
There was a problem hiding this comment.
Code Review
This pull request implements the generation and transmission of a SHA256 hash for the staged portable pipeline proto in the Java, Go, and Python Dataflow runners, adding it as a pipelineProtoHash option. Feedback for the Python implementation notes that re-serializing the pipeline proto to compute this hash can be resource-intensive and potentially non-deterministic; it is suggested to hash the actual bytes uploaded to GCS or allow the caller to provide a pre-computed hash.
|
Checks are failing. Will not request review until checks are succeeding. If you'd like to override that behavior, comment |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #38357 +/- ##
=========================================
Coverage 58.07% 58.07%
+ Complexity 13024 13022 -2
=========================================
Files 2509 2509
Lines 262111 262110 -1
Branches 10612 10615 +3
=========================================
+ Hits 152208 152224 +16
+ Misses 104238 104218 -20
- Partials 5665 5668 +3
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Add Pipeline Hash along with the PipelineURL. This will allow the RunnerHarness/Server to check the sanity of pipeline while downloading
Tested=Manually with printing logs from Runner in all 3 langs(Java,Python, Go)
Golang-Model pb



Python-Pipeline pb
Java-Pipeline pb
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.