You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The current PreFlightStep (previously SetupStep) is a 'God Step' that handles too many responsibilities: file validation, asset injection, and setup/compilation commands. This issue proposes decomposing it into granular, single-responsibility steps to improve pipeline clarity, error reporting, and resource efficiency.
Proposed Changes
Decomposition of PreFlightStep:
FileCheckStep: Validates presence of required files. Moved beforeSandboxStep to fail fast and save resources.
AssetInjectionStep: Handles moving static assets into the sandbox.
SetupCommandsStep: Executes compilation and environment setup commands inside the sandbox.
Step Categorization:
Introduce a category (or step_type) attribute to the Step model to group steps into SETUP, GRADING, and REPORTING.
Template Intelligence:
Allow Grading Templates to define their own required_files and setup_commands. The pipeline should merge these with the assignment-level configuration.
Branch: feat/issue-302-decouple-setup-step
PR: #335
Validation: All 483 unit tests and integration tests passing. The pipeline successfully executes the new granular setup steps in place of the deprecated PreFlightStep.
Activity
ArthurCRodrigues commentedon May 27, 2026
Branch:
feat/issue-302-decouple-setup-stepPR: #335
Validation: All 483 unit tests and integration tests passing. The pipeline successfully executes the new granular setup steps in place of the deprecated PreFlightStep.
fix(pipeline): handle list of templates in granular setup steps (#302)
fix(pipeline): ensure deterministic order for required files and setu…
feat(pipeline): split PreFlight into granular setup steps (#302)