[steps][2/4] Expand composite function references into build steps - #3929
Merged
sswrk merged 8 commits intoJul 24, 2026
Merged
Conversation
Member
Author
This stack of pull requests is managed by Graphite. Learn more about stacking. |
This was referenced Jul 1, 2026
sswrk
force-pushed
the
szymonswierk/eng-22387-eas-build-job-local-action-schema
branch
from
July 1, 2026 16:50
95118f3 to
622179a
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-expand-custom-actions-at-parse-time
branch
from
July 1, 2026 16:50
72189ae to
4764420
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-eas-build-job-local-action-schema
branch
from
July 2, 2026 16:56
622179a to
ff953ae
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-expand-custom-actions-at-parse-time
branch
from
July 2, 2026 16:56
4764420 to
56ee52f
Compare
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #3929 +/- ##
==========================================
+ Coverage 61.13% 61.29% +0.16%
==========================================
Files 972 977 +5
Lines 43439 43687 +248
Branches 9137 9186 +49
==========================================
+ Hits 26554 26774 +220
- Misses 15439 15465 +26
- Partials 1446 1448 +2 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-expand-custom-actions-at-parse-time
branch
from
July 3, 2026 13:43
56ee52f to
e436769
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-eas-build-job-local-action-schema
branch
from
July 3, 2026 13:43
ff953ae to
77773ec
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-eas-build-job-local-action-schema
branch
from
July 3, 2026 14:08
77773ec to
d1bbabd
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-expand-custom-actions-at-parse-time
branch
2 times, most recently
from
July 3, 2026 14:46
92fe812 to
3e774f9
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-eas-build-job-local-action-schema
branch
from
July 3, 2026 14:46
d1bbabd to
6cd3f30
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-expand-custom-actions-at-parse-time
branch
from
July 3, 2026 14:58
3e774f9 to
f74b6da
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-eas-build-job-local-action-schema
branch
from
July 3, 2026 14:58
6cd3f30 to
85cc322
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-expand-custom-actions-at-parse-time
branch
from
July 3, 2026 15:40
f74b6da to
b5be21a
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-eas-build-job-local-action-schema
branch
2 times, most recently
from
July 3, 2026 15:48
244427d to
e64f37d
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-expand-custom-actions-at-parse-time
branch
from
July 3, 2026 15:48
b5be21a to
1e89296
Compare
sswrk
changed the base branch from
szymonswierk/eng-22387-eas-build-job-local-action-schema
to
graphite-base/3929
July 6, 2026 12:11
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-expand-custom-actions-at-parse-time
branch
from
July 6, 2026 12:11
1e89296 to
4f79fdc
Compare
sswrk
changed the base branch from
graphite-base/3929
to
szymonswierk/eng-22387-steps-local-action-discovery
July 6, 2026 12:11
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-local-action-discovery
branch
from
July 6, 2026 13:23
2046da9 to
bf2e850
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-expand-custom-actions-at-parse-time
branch
2 times, most recently
from
July 6, 2026 13:51
2190527 to
8d70398
Compare
|
Subscribed to pull request
Generated by CodeMention Warning: The preamble and epilogue options in commentConfiguration are deprecated. Use template instead. |
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-expand-custom-actions-at-parse-time
branch
from
July 14, 2026 17:37
f3e1220 to
0333696
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-expand-custom-actions-at-parse-time
branch
from
July 15, 2026 12:06
062f7d5 to
97bab28
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-local-action-discovery
branch
from
July 15, 2026 12:06
098fd12 to
0d0bb34
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-expand-custom-actions-at-parse-time
branch
from
July 15, 2026 12:43
97bab28 to
a9e4e38
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-local-action-discovery
branch
from
July 15, 2026 12:43
0d0bb34 to
1524069
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-expand-custom-actions-at-parse-time
branch
from
July 15, 2026 14:02
7c8b3bc to
b5d4bce
Compare
sswrk
force-pushed
the
szymonswierk/eng-22387-steps-expand-custom-actions-at-parse-time
branch
from
July 16, 2026 00:43
b5d4bce to
abaf7ea
Compare
hSATAC
approved these changes
Jul 21, 2026
hSATAC
left a comment
Contributor
There was a problem hiding this comment.
Nice, this looks solid — expansion, namespacing, cycle/depth, the if gating all read well. Two small notes inline, nothing blocking.
sjchmiela
approved these changes
Jul 22, 2026
This was referenced Jul 23, 2026
sjchmiela
approved these changes
Jul 23, 2026
Parse-time tree owns children and flattens for execution; derive internal-ness from scope instead of a ctor flag. Suppress phantom step-section log markers on the composite node.
…FunctionPathRequireInterpolation
…ect root or its parent
|
⏩ The changelog entry check has been skipped since the "no changelog" label is present. |
This was referenced Jul 27, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Why
EAS workflows need reusable local composite functions: a step like
uses: ./.eas/functions/setupshould run the steps defined infunction.yml, not be treated as a built-in function.This PR adds the structural layer for that: turning a composite function call into concrete workflow steps with correct ids, scoping, and control flow. Input interpolation, outputs, and loading
function.ymlfrom disk are handled in separate PRs.How
When
StepsConfigParsersees a localuses:path (./or../),CompositeFunctionExpanderreplaces the call with a flat list of inner steps:readunder callersetupbecomessetup__readBuildStepCompositeFunctionScopeso${{ steps.* }}and${{ inputs.* }}resolve against composite-function-local namesTest Plan
Added expansion unit tests covering nesting, cycles, depth limits, and id collisions.