mirror of
https://github.com/go-gitea/gitea.git
synced 2026-06-19 04:49:06 +02:00
Expand a needs-dependent matrix through the new jobparser.ExpandMatrixWithNeeds, which evaluates the raw matrix against the needs context via NewInterpeter the same way EvaluateConcurrency does. This replaces synthesizing a workflow with stub jobs and re-parsing it once the dependencies complete. Parse now emits a single placeholder per needs-dependent matrix and the whole matrix expands exactly once when the needs finish, instead of being split per static value at planning time and re-expanded per placeholder. This removes ExtractRawStrategies, HasMatrixWithNeeds and constructWorkflowWithNeeds. Side effects of deferring the whole matrix: a static+dynamic matrix no longer duplicates N times, needs-output detection no longer relies on string matching (so bracket notation is handled), and a deferred placeholder gets no commit status until it expands, avoiding an orphaned status from the name change. Co-Authored-By: Claude (Opus 4.8) <noreply@anthropic.com>