-
Notifications
You must be signed in to change notification settings - Fork 32
Open
4 / 64 of 6 issues completedOpen
4 / 64 of 6 issues completed
Copy link
Labels
Description
Overview
This tracking issue covers the refactoring of the gh-aw compiler to store JavaScript code as custom GitHub Actions instead of embedding it inline in compiled workflows. This will reduce workflow file size, improve maintainability, and enable better code organization.
Source: Issue #5946
Current State
Currently, the compiler embeds ~200+ JavaScript files (.cjs) from pkg/workflow/js/ directly into compiled workflow files using actions/github-script. This results in very large workflow files with embedded JavaScript code.
Goals
- Store all JavaScript as pre-compiled custom actions in the repository
- Configure each JavaScript module as a standalone JavaScript custom action with
action.yml - Update compiler to emit references to local actions (development) or pinned SHA (release mode)
- Generate
action.ymland README for each required action - Maintain backward compatibility during transition
Planned Sub-Issues
- #aw_5946task001 - Create actions directory structure and tooling
- #aw_5946task002 - Update compiler to support custom action references
- #aw_5946task003 - Generate action.yml files for existing JavaScript modules
- #aw_5946task004 - Implement development vs release mode action references
- #aw_5946task005 - Migrate bundler and script registry to use custom actions
Success Criteria
- All JavaScript code lives in
actions/directory - Each action has
action.yml, bundled JavaScript, and README - Compiler emits local references in dev mode (
./actions/action-name) - Compiler emits SHA-pinned references in release mode
- Compiled workflows are significantly smaller
- All tests pass with the new approach
Related to Custom actions #5946
AI generated by Plan Command for #5946