Skip to content

Rename LocalRunService to TracedRunService - #7763

Open
EngHabu wants to merge 1 commit into
mainfrom
enghabu/traced-run-service
Open

Rename LocalRunService to TracedRunService#7763
EngHabu wants to merge 1 commit into
mainfrom
enghabu/traced-run-service

Conversation

@EngHabu

@EngHabu EngHabu commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

What

Pure rename of the service added in #7737. No behaviour change, no new fields.

before after
LocalRunService TracedRunService
CreateLocalRunRequest CreateTracedRunRequest
ReportLocalActionsRequest/Response ReportTracedActionsRequest/Response
LocalActionUpdate TracedActionUpdate
RunSource.RUN_SOURCE_LOCAL RUN_SOURCE_TRACED (tag 4 unchanged)
Operation.OPERATION_LOCAL_RUN_DATA OPERATION_TRACED_RUN_DATA (tag 11 unchanged)
local_run_service.proto traced_run_service.proto

Why

The service records runs the platform does not orchestrate: the client executes the work — on a laptop, in CI, or inside an agent framework — and reports the resulting action tree afterwards. "Local" describes only one of those callers. The API is a general surface for tracing externally-executed work, and the name should say so before anything is built against it.

Enum tags and field numbers are untouched, so this is wire-compatible; it breaks source references only. That is why it is worth doing now rather than after the first consumer ships.

Follow-ups (deliberately not in this PR)

Keeping this a mechanical rename so it can land quickly. Separately proposed:

  • inlining size-capped inputs/outputs on the action update, so the common path avoids a signed-URL round trip per action
  • LLM/agent-oriented fields (token counts, model/provider, cost) as first-class rather than labels

Test plan

Regenerated all targets (Go/Python/TS/Rust + gateway swagger + mocks); stale generated files from the old name removed. go build ./gen/go/... clean, buf lint clean.

🤖 Generated with Claude Code

https://claude.ai/code/session_01VJa4n1pjJUBVQbjeWCZJyQ

The service records runs the platform does not orchestrate — work
executed on a laptop, in CI, or inside an agent framework, whose action
tree is reported here after the fact. 'Local' describes only one of those
callers and undersells the surface; 'traced' describes what the API
actually does.

Pure rename, no behaviour change:
  LocalRunService            -> TracedRunService
  CreateLocalRunRequest      -> CreateTracedRunRequest
  ReportLocalActionsRequest  -> ReportTracedActionsRequest
  ReportLocalActionsResponse -> ReportTracedActionsResponse
  LocalActionUpdate          -> TracedActionUpdate
  RunSource.RUN_SOURCE_LOCAL -> RUN_SOURCE_TRACED (tag 4 unchanged)
  Operation.OPERATION_LOCAL_RUN_DATA -> OPERATION_TRACED_RUN_DATA (tag 11)
  local_run_service.proto    -> traced_run_service.proto

Enum tags and field numbers are untouched, so this is wire-compatible;
it breaks source references only. Landing it now, before anything is
built against the name.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VJa4n1pjJUBVQbjeWCZJyQ
Signed-off-by: Haytham Abuelfutuh <haytham@afutuh.com>
Copilot AI review requested due to automatic review settings August 4, 2026 02:53
@github-actions github-actions Bot added the flyte2 label Aug 4, 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

This pull request performs a wire-compatible rename of the “local run” reporting surface to “traced run” across the Flyte IDL and all regenerated artifacts, aligning naming with the broader intent (tracing externally-orchestrated work beyond just “local” execution).

Changes:

  • Renames LocalRunServiceTracedRunService and corresponding request/response/messages across proto + generated Go/Python/TS outputs.
  • Renames enum values to match the new “traced” terminology while preserving numeric tags (e.g. RUN_SOURCE_LOCALRUN_SOURCE_TRACED, OPERATION_LOCAL_RUN_DATAOPERATION_TRACED_RUN_DATA).
  • Updates Buf lint ignore configuration to point at the renamed proto.

Reviewed changes

Copilot reviewed 22 out of 34 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
gen/ts/flyteidl2/workflow/traced_run_service_pb.ts Regenerated TS service/message definitions for renamed TracedRunService.
gen/ts/flyteidl2/dataproxy/dataproxy_service_pb.ts Updates TS comments to reference traced run source routing.
gen/ts/flyteidl2/cluster/payload_pb.ts Renames cluster operation enum to TRACED_RUN_DATA while keeping tag 11.
gen/python/flyteidl2/workflow/traced_run_service_pb2.pyi Regenerated Python typing stubs for renamed traced service/messages.
gen/python/flyteidl2/workflow/traced_run_service_pb2.py New regenerated Python protobuf module for traced service.
gen/python/flyteidl2/workflow/traced_run_service_pb2_grpc.py Regenerated gRPC stubs for TracedRunService.
gen/python/flyteidl2/workflow/traced_run_service_connect.py Regenerated Connect-Python bindings for TracedRunService.
gen/python/flyteidl2/workflow/run_definition_pb2.pyi Renames RUN_SOURCE_LOCALRUN_SOURCE_TRACED in Python typing stubs.
gen/python/flyteidl2/workflow/run_definition_pb2.py Regenerated Python protobuf module reflecting RUN_SOURCE_TRACED.
gen/python/flyteidl2/workflow/local_run_service_pb2.py Removes stale generated Python module for the old LocalRunService name.
gen/python/flyteidl2/cluster/payload_pb2.pyi Renames OPERATION_LOCAL_RUN_DATAOPERATION_TRACED_RUN_DATA in Python typing stubs.
gen/python/flyteidl2/cluster/payload_pb2.py Regenerated Python protobuf module reflecting OPERATION_TRACED_RUN_DATA.
gen/go/gateway/flyteidl2/workflow/traced_run_service.swagger.json Regenerated swagger metadata reflecting TracedRunService.
gen/go/flyteidl2/workflow/workflowconnect/traced_run_service.connect.go New regenerated Connect-Go bindings for TracedRunService.
gen/go/flyteidl2/workflow/workflowconnect/local_run_service.connect.go Removes old generated Connect-Go bindings for LocalRunService.
gen/go/flyteidl2/workflow/traced_run_service_grpc.pb.go New regenerated gRPC-Go bindings for TracedRunService.
gen/go/flyteidl2/workflow/run_definition.pb.go Updates Go enum constants/docs for RUN_SOURCE_TRACED (tag 4 unchanged).
gen/go/flyteidl2/workflow/local_run_service_grpc.pb.go Removes old gRPC-Go bindings for LocalRunService.
gen/go/flyteidl2/dataproxy/dataproxy_service.pb.go Updates Go comments to reference traced run source routing.
gen/go/flyteidl2/cluster/payload.pb.go Renames Go enum constant to OPERATION_TRACED_RUN_DATA (tag 11 unchanged).
flyteidl2/workflow/traced_run_service.proto Renames service/messages; remains the source-of-truth for generated outputs.
flyteidl2/workflow/run_definition.proto Renames RUN_SOURCE_LOCALRUN_SOURCE_TRACED (tag 4 unchanged).
flyteidl2/dataproxy/dataproxy_service.proto Updates GetActionDataRequest docs to reference traced run routing.
flyteidl2/cluster/payload.proto Renames operation enum value to OPERATION_TRACED_RUN_DATA (tag 11 unchanged).
buf.yaml Updates lint ignore list to reference traced_run_service.proto.
Files not reviewed (9)
  • gen/go/flyteidl2/cluster/payload.pb.go: Generated file
  • gen/go/flyteidl2/dataproxy/dataproxy_service.pb.go: Generated file
  • gen/go/flyteidl2/workflow/run_definition.pb.go: Generated file
  • gen/go/flyteidl2/workflow/traced_run_service.pb.go: Generated file
  • gen/go/flyteidl2/workflow/traced_run_service_grpc.pb.go: Generated file
  • gen/go/flyteidl2/workflow/workflowconnect/traced_run_service.connect.go: Generated file
  • gen/python/flyteidl2/cluster/payload_pb2.py: Generated file
  • gen/python/flyteidl2/workflow/run_definition_pb2.py: Generated file
  • gen/python/flyteidl2/workflow/traced_run_service_pb2.py: Generated file
Suppressed comments (7)

flyteidl2/workflow/traced_run_service.proto:28

  • Service-level docs still say "local runs" even though the API has been renamed to TracedRunService. This should read "traced runs" for consistency with the rename.

This issue also appears in the following locations of the same file:

  • line 29
  • line 33
  • line 76
  • line 113
  • line 139
  • ...and 1 more
    flyteidl2/workflow/traced_run_service.proto:140
  • Request/response message comments still describe "local action state". Since these are now ReportTracedActions* messages, update the wording to "traced action state" for consistency.
    flyteidl2/workflow/traced_run_service.proto:149
  • Request/response message comments still describe "local action state". Since these are now ReportTracedActions* messages, update the wording to "traced action state" for consistency.
    flyteidl2/workflow/traced_run_service.proto:116
  • A few CreateTracedRunRequest field comments and the TracedActionUpdate header still reference "local" runs. These should be updated to "traced" to align with the renamed service/messages.
    flyteidl2/workflow/traced_run_service.proto:37
  • Multiple RPC docstrings in this block still refer to "local run". To match the TracedRunService rename and reduce ambiguity, these should consistently use "traced run".
    flyteidl2/workflow/traced_run_service.proto:80
  • This section still uses "local" terminology (ListRuns/WatchRuns/ListActions/WatchActions/AbortRun) and the CreateTracedRunRequest header comment still says "local run". These docs should be updated to "traced" for consistency with the rename.
    flyteidl2/workflow/traced_run_service.proto:29
  • This CreateRun docstring still says "local run" even though the service/message names have been renamed to TracedRunService/CreateTracedRunRequest.

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

Comment thread buf.yaml
Comment on lines 22 to +24
# LocalRunService deliberately reuses RunService request/response messages so clients and
# UIs work against local runs with only a service swap.
- flyteidl2/workflow/local_run_service.proto
- flyteidl2/workflow/traced_run_service.proto
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