Skip to content

Add run_source to CreateUploadLocationRequest - #7791

Open
EngHabu wants to merge 1 commit into
mainfrom
enghabu/upload-run-source
Open

Add run_source to CreateUploadLocationRequest#7791
EngHabu wants to merge 1 commit into
mainfrom
enghabu/upload-run-source

Conversation

@EngHabu

@EngHabu EngHabu commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

What

Adds workflow.RunSource run_source = 10 to CreateUploadLocationRequest.

Why

Tracked-run metadata uploads (inputs.pb / outputs.pb / report.html) are routed to control-plane-owned storage. Today the server infers that intent from the shape of filename_root (a tracked-runs/ prefix), which is a fragile, implicit contract — flagged in review on the consuming service.

The read path already solved this: GetActionDataRequest carries an explicit run_source hint. This mirrors it on the write path so the caller states which class of run the upload belongs to and the server routes on that, with the filename shape reduced to a validation detail.

Wire-compatible, additive, +optional — unset keeps today's behavior.

Test plan

Regenerated all targets in the CI container (Go/Python/TS/Rust); mocks regenerated with mockery v3.7.0.

🤖 Generated with Claude Code

https://claude.ai/code/session_01VJa4n1pjJUBVQbjeWCZJyQ

Lets callers state which class of run an upload belongs to so the data proxy
can route tracked-run metadata to the right storage explicitly, instead of
inferring intent from the shape of filename_root. Mirrors the run_source
hint GetActionDataRequest already carries for the read path.

Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>
Copilot AI lite review requested due to automatic review settings August 6, 2026 04:42
@github-actions github-actions Bot added the flyte2 label Aug 6, 2026

Copilot AI 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.

Pull request overview

Adds an explicit run_source hint to CreateUploadLocationRequest (mirroring GetActionDataRequest) so upload routing can be based on run provenance rather than inferring intent from filename_root shape, and regenerates the language targets derived from the proto.

Changes:

  • Add workflow.RunSource run_source = 10 to CreateUploadLocationRequest in dataproxy_service.proto.
  • Regenerate Go protobuf + validate bindings for the updated request message.
  • Regenerate Python and TypeScript protobuf bindings for the updated request message.

Reviewed changes

Copilot reviewed 3 out of 7 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
flyteidl2/dataproxy/dataproxy_service.proto Adds run_source field and associated docstring to CreateUploadLocationRequest.
gen/go/flyteidl2/dataproxy/dataproxy_service.pb.go Regenerated Go message struct + getter for RunSource.
gen/go/flyteidl2/dataproxy/dataproxy_service.pb.validate.go Regenerated validation scaffolding noting no rules for RunSource.
gen/python/flyteidl2/dataproxy/dataproxy_service_pb2.py Regenerated Python descriptor/module to include run_source.
gen/python/flyteidl2/dataproxy/dataproxy_service_pb2.pyi Regenerated Python typing stubs to include run_source in slots/init.
gen/ts/flyteidl2/dataproxy/dataproxy_service_pb.ts Regenerated TS message type to include runSource field.
Files not reviewed (3)
  • gen/go/flyteidl2/dataproxy/dataproxy_service.pb.go: Generated file
  • gen/go/flyteidl2/dataproxy/dataproxy_service.pb.validate.go: Generated file
  • gen/python/flyteidl2/dataproxy/dataproxy_service_pb2.py: Generated file

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

Comment on lines +95 to +99
// Source of the run this upload belongs to. The service uses this to route the
// artifact to the matching storage instead of inferring intent from the shape of
// filename_root: RUN_SOURCE_TRACKED marks tracked-run metadata (inputs.pb /
// outputs.pb / report.html) served from control-plane-owned tracked-runs storage;
// anything else keeps the standard behavior.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants