Skip to content

Wire job execution view into DAP - #4471

Merged
rentziass merged 5 commits into
mainfrom
rentziass/job-steps-source-integration
Jun 5, 2026
Merged

Wire job execution view into DAP#4471
rentziass merged 5 commits into
mainfrom
rentziass/job-steps-source-integration

Conversation

@rentziass

@rentziassrentziass commented Jun 3, 2026

Copy link
Copy Markdown
Member

Part 2 of 2 of adding a job execution view for the DAP debugger. Stacks on #4470.

With the job view model introduced in the base PR, this PR is only about wiring that new view into the DAP flow.

The goal here is to make the debugger able to serve a stable synthetic job source and map pauses back onto that source, without mixing those transport and lifecycle concerns into the rendering model itself.

Splitting the work this way keeps the concerns separate:

  • Add job execution view model #4470 introduces the rendered job view and how its lines are assigned
  • this PR connects that new view to job initialization, post-step registration, stack traces, and DAP source requests

That makes this follow-up review mostly about integration: when the view is created, how it is surfaced through DAP, and how frames resolve back to the synthetic source.

Testing

cd src && ./dev.sh test

Base automatically changed from rentziass/job-execution-view to mainJune 4, 2026 14:03
rentziassand others added 4 commits June 4, 2026 15:09
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@rentziass
rentziassforce-pushed the rentziass/job-steps-source-integration branch from 896c45e to ff72885CompareJune 4, 2026 14:10
@rentziass
rentziass marked this pull request as ready for review June 4, 2026 14:51
@rentziass
rentziass requested a review from a team as a code ownerJune 4, 2026 14:51
CopilotAI review requested due to automatic review settings June 4, 2026 14:51
}
}

public Task OnJobStepsInitializedAsync(IEnumerable<IStep> steps, IEnumerable<IStep> initialPostSteps)

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are the core changes.

CopilotAI 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 PR wires the new JobExecutionView synthetic job source into the DAP debugger flow so the debugger can serve a stable “execution.yml” source and map stack frames back to the correct rendered step lines (including predicted/registered post-steps and the synthetic “Complete job” row).

Changes:

  • Initialize and maintain a session-scoped synthetic job source (JobExecutionView) and expose it via the DAP source request.
  • Update DAP stackTrace handling to map current/completed frames to the synthetic source lines (including job-complete behavior).
  • Add/extend L0 tests covering source responses, stack trace line mapping, predicted post-step claiming, and synthetic source path sanitization.
Show a summary per file
FileDescription
src/Test/L0/Worker/DapMessagesL0.csAdds serialization coverage for DAP source request/response message types.
src/Test/L0/Worker/DapDebuggerL0.csAdds integration-style L0 tests validating synthetic source serving and stack frame line mapping behavior.
src/Runner.Worker/JobRunner.csCalls into the DAP debugger to initialize the synthetic job steps source once steps are known.
src/Runner.Worker/ExecutionContext.csNotifies the DAP debugger when a post-job step is registered so predicted steps can be claimed.
src/Runner.Worker/Dap/IDapDebugger.csExtends the debugger interface to accept job-step initialization and post-step registration notifications.
src/Runner.Worker/Dap/DapMessages.csIntroduces DAP source request/response DTOs (SourceArguments, SourceResponseBody).
src/Runner.Worker/Dap/DapDebugger.csImplements job source initialization, post-step prediction/claiming, source request handling, and stack trace source/line mapping.

Copilot's findings

  • Files reviewed: 7/7 changed files
  • Comments generated: 2

Comment threadsrc/Runner.Worker/Dap/DapDebugger.cs
Comment threadsrc/Runner.Worker/Dap/DapDebugger.cs
@rentziass
rentziass enabled auto-merge (squash) June 5, 2026 14:59
@rentziass
rentziass merged commit e6c5af7 into mainJun 5, 2026
12 checks passed
@rentziass
rentziass deleted the rentziass/job-steps-source-integration branch June 5, 2026 15:04
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@rentziass@AllanGuigou