Francesco Renzi
c23ac2969d
Add JobExecutionViewRenderer for DAP execution view
...
The DAP debugger serves a synthesized YAML document as the job's
`source`. That document is a 1:1 representation of how the runner
sees the job — not the workflow file — so pre and post action steps
appear as their own 'lines' that the user can pause on (and
eventually breakpoint, set in a follow-up PR).
This commit adds the core rendering algorithm: given a list of
phase-tagged entries (`JobExecutionViewEntry`), produce the
phase-keyed YAML plus a parallel array of 1-based line numbers
pointing at each entry's `- step:` key. The line numbers are what
later powers the DAP `stackTrace` handler.
Why hand-emit the skeleton instead of serializing a DTO?
Per-entry line offsets must be tracked at emission time. Using a
generic YAML serializer would force a second pass to scan the
output for `- step:` lines, which is fragile and breaks the moment
indentation conventions shift. Scalar values still go through the
library (via YamlScalarFormatter from #PR1a), so we don't carry
quoting rules.
Example output for a typical job (build, build, post step):
# Job: build
# Runner execution plan — read-only.
setup:
- step: Setup job
main:
- step: Run actions/checkout@v6
uses: actions/checkout@v6
if: success()
- step: Cache Primes
id: cache-primes
uses: actions/cache@v5
if: success()
with:
path: prime-numbers
key: ${{ runner.os }}-primes
post:
- step: Post Cache Primes
action: actions/cache@v5
cleanup:
- step: Complete job
This is part 2 of 5 splitting the previously-monolithic foundation
for review tractability. The wiring that turns runner state into
these entries lives in the next PRs.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-05-19 02:49:32 -07:00
Francesco Renzi
1ec6749d4b
Address Copilot review feedback
...
- Remove the redundant second `TrimEnd('\n')` from the return path.
The earlier trim already removes any trailing newline before the
`\n...` doc-end check; the marker-removal substring does not
re-introduce one, so the second trim was dead code.
- Surface full exception (`ex.ToString()`) in the test round-trip
helper so YAML parse failures show stack + inner exception, not
just the top-level message.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-05-19 02:49:32 -07:00
Francesco Renzi
699901f072
Add YamlScalarFormatter for quote-safe YAML scalars
...
The upcoming DAP execution-view renderer serves a synthesized YAML
document as the job's debugger source. The skeleton is hand-emitted
so we can track per-step line offsets, but scalar values (step names,
action refs, etc.) need quote-safe formatting that respects YAML's
reserved chars, leading/trailing whitespace, and embedded `: `/`#`
sequences. Doing this by hand is bug-prone and easy to get wrong on
edge cases (empty strings, expressions, multiline content).
This commit adds a thin wrapper around YamlDotNet's `Emitter` that
emits a single scalar, strips the surrounding document markers, and
forces LF line breaks (`StringWriter` otherwise picks up Windows's
CRLF via `Environment.NewLine` and corrupts the document-end
stripping).
No caller yet — the renderer that uses it lands in a follow-up PR.
This is part 1 of 5 splitting the previously-monolithic foundation
for review tractability.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-05-19 02:49:32 -07:00
Francesco Renzi
ae2896c551
Send welcome message in debugger console on connect ( #4419 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-05-18 16:14:37 +00:00
Francesco Renzi
ebf33710e8
Execute debugger REPL commands inside job container ( #4420 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-05-18 16:07:25 +00:00
github-actions[bot]
a1ccd22030
Update Docker to v29.5.0 and Buildx to v0.34.0 ( #4425 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-05-18 09:57:42 -04:00
github-actions[bot]
b549247bee
Update dotnet sdk to latest version @8.0.421 ( #4428 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-05-18 13:31:42 +00:00
Daniel Valdivia
d36839b001
Add support for Ubuntu 26.04 (liblttng-ust1t64, libicu77-80) ( #4394 )
...
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-14 10:51:46 -04:00
Francesco Renzi
0cdaa36d07
Move dap setup to setup job step ( #4403 )
2026-05-06 18:11:23 +01:00
Yashwanth Anantharaju
5ed0c52e21
fix: expand commit hash regex to support SHA-256 (64-char) hashes ( #4347 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-05-04 14:22:18 -04:00
Paulo Santos
16c8a91b21
Update setup job starting logs ( #4383 )
2026-05-04 07:49:30 -04:00
Tingluo Huang
4550db3c89
Not retry and report action download 403. ( #4391 )
2026-04-29 10:44:26 -04:00
Jeff Martin
b06c585762
feat: propagate actions dependencies ( #4372 )
2026-04-23 20:32:07 +00:00
dependabot[bot]
c6f978fd5f
Bump @actions/glob from 0.6.1 to 0.7.0 in /src/Misc/expressionFunc/hashFiles ( #4367 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Salman Chishti <salmanmkc@GitHub.com >
2026-04-23 09:55:48 +01:00
dependabot[bot]
d1690af497
Bump System.ServiceProcess.ServiceController from 10.0.6 to 10.0.7 ( #4370 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-22 16:09:28 +01:00
Salman Chishti
c87d955bad
Prepping runner release 2.334.0 ( #4365 )
2026-04-21 19:40:21 +01:00
dependabot[bot]
7407189cf5
Bump Microsoft.DevTunnels.Connections from 1.3.16 to 1.3.39 ( #4339 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Salman Chishti <salmanmkc@GitHub.com >
2026-04-21 17:49:08 +01:00
dependabot[bot]
a84fb3602d
Bump typescript from 6.0.2 to 6.0.3 in /src/Misc/expressionFunc/hashFiles ( #4353 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Salman Chishti <salmanmkc@GitHub.com >
2026-04-21 17:39:38 +01:00
dependabot[bot]
84598e03fa
Bump System.ServiceProcess.ServiceController from 10.0.3 to 10.0.6 ( #4358 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Salman Chishti <salmanmkc@GitHub.com >
2026-04-21 17:38:26 +01:00
dependabot[bot]
8fa7457bbf
Bump @typescript-eslint/eslint-plugin from 8.58.1 to 8.59.0 in /src/Misc/expressionFunc/hashFiles ( #4359 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Salman Chishti <salmanmkc@GitHub.com >
2026-04-21 16:36:21 +00:00
Salman Chishti
00af8379a2
Add vulnerability-alerts permission ( #4350 )
2026-04-21 17:31:10 +01:00
dependabot[bot]
6692e6a590
Bump System.Formats.Asn1 and System.Security.Cryptography.Pkcs ( #4362 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Salman Chishti <salmanmkc@GitHub.com >
2026-04-21 16:06:40 +00:00
dependabot[bot]
cacb25d2ed
Bump @typescript-eslint/parser from 8.58.1 to 8.59.0 in /src/Misc/expressionFunc/hashFiles ( #4360 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-21 15:15:02 +01:00
github-actions[bot]
c6ca9f6edb
Update dotnet sdk to latest version @8.0.420 ( #4356 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-20 17:06:35 +00:00
Copilot
fad1253513
Bump Docker version to 29.4.0 ( #4352 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: luketomlinson <19689611+luketomlinson@users.noreply.github.com >
2026-04-20 10:45:12 -04:00
github-actions[bot]
45debbd528
chore: update Node versions ( #4355 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-20 12:44:20 +00:00
Francesco Renzi
43e5211996
Add WS bridge over DAP TCP server ( #4328 )
...
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
2026-04-17 09:18:01 -04:00
Salman Chishti
4a587ada27
feat: add job.workflow_* typed accessors to JobContext ( #4335 )
2026-04-10 19:39:33 +01:00
Copilot
182a433782
Bump System.Formats.Asn1, Cryptography.Pkcs, ProtectedData, ServiceController, CodePages, Threading.Channels, @actions/glob, @typescript-eslint/parser, lint-staged, picomatch ( #4333 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: Salman Chishti <salmanmkc@GitHub.com >
2026-04-10 12:40:28 +01:00
Salman Chishti
8d35e710da
fix: only show changed versions in node upgrade PR description ( #4332 )
2026-04-10 11:34:08 +01:00
dependabot[bot]
2bcc65e864
Bump typescript from 5.9.3 to 6.0.2 in /src/Misc/expressionFunc/hashFiles ( #4329 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Salman Chishti <salmanmkc@GitHub.com >
2026-04-10 09:01:34 +01:00
dependabot[bot]
1ba5fdfd88
Bump actions/github-script from 8 to 9 ( #4331 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-10 08:54:56 +01:00
dependabot[bot]
580116c18b
Bump @typescript-eslint/eslint-plugin from 8.57.2 to 8.58.1 in /src/Misc/expressionFunc/hashFiles ( #4327 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Salman Chishti <salmanmkc@GitHub.com >
2026-04-08 07:44:38 +00:00
github-actions[bot]
c9a1751d87
Update Docker to v29.3.1 and Buildx to v0.33.0 ( #4324 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Salman Chishti <salmanmkc@GitHub.com >
2026-04-08 08:40:32 +01:00
Francesco Renzi
7711dc53e2
Add devtunnel connection for debugger jobs ( #4317 )
2026-04-07 12:51:33 +00:00
dependabot[bot]
df507886cb
Bump brace-expansion in /src/Misc/expressionFunc/hashFiles ( #4318 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Salman Chishti <salmanmkc@GitHub.com >
2026-04-01 13:19:42 +01:00
Tingluo Huang
5c6dd47e76
Add support for Bearer token in action archive downloads ( #4321 )
2026-03-31 17:51:01 -04:00
Stefan Penner
7ff994b932
Batch and deduplicate action resolution across composite depths ( #4296 )
...
Co-authored-by: Stefan Penner <spenner@linkedin.com >
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-31 13:28:43 -04:00
github-actions[bot]
b9275b59cf
chore: update Node versions ( #4319 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-03-30 12:58:17 +00:00
eric sciple
f0c228635e
Remove AllowCaseFunction feature flag ( #4316 )
2026-03-27 11:45:42 -05:00
dependabot[bot]
9728019b24
Bump @typescript-eslint/eslint-plugin from 8.57.1 to 8.57.2 in /src/Misc/expressionFunc/hashFiles ( #4310 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-24 10:40:31 +00:00
Francesco Renzi
e17e7aabbf
Add DAP server ( #4298 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
2026-03-23 14:02:15 +00:00
dependabot[bot]
4259ffb6dc
Bump flatted from 3.2.7 to 3.4.2 in /src/Misc/expressionFunc/hashFiles ( #4307 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-20 01:02:30 +00:00
Salman Chishti
4e8e1ff020
prep new runner release 2.333.0 ( #4306 )
2026-03-18 16:51:00 +00:00
dependabot[bot]
b6cca8fb99
Bump @typescript-eslint/eslint-plugin from 8.54.0 to 8.57.1 in /src/Misc/expressionFunc/hashFiles ( #4304 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Salman Chishti <salmanmkc@GitHub.com >
2026-03-18 16:26:33 +00:00
Salman Chishti
18d0789c74
Node 24 enforcement + Linux ARM32 deprecation support ( #4303 )
2026-03-17 18:58:34 +00:00
github-actions[bot]
c985a9ff03
Update dotnet sdk to latest version @8.0.419 ( #4301 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Tingluo Huang <tingluohuang@github.com >
2026-03-16 13:48:09 +00:00
Tingluo Huang
45ed15ddf3
Report infra_error for action download failures. ( #4294 )
2026-03-16 13:31:57 +00:00
Nikola Jokic
c5dcf59d26
Exit with specified exit code when runner is outdated ( #4285 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-13 14:16:31 -04:00
dependabot[bot]
c7f6c49ba0
Bump @typescript-eslint/eslint-plugin from 8.47.0 to 8.54.0 in /src/Misc/expressionFunc/hashFiles ( #4230 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Salman Chishti <salmanmkc@GitHub.com >
2026-03-11 10:21:47 +00:00