1. Summary / Problem Statement
the App builder grew too large and ugly.. back in the day we would have called it a god class
the objective is to refactor it into more orchestration role.. delegating functionality to two sub managers:
- ConfigManager
- SetupManager
with some abstraction work we are able to:
- remove any vendor specific code
- remove string matches
- remove business logic that belongs higher up the stack
- remove default configuration logic that served no useful purpose
3. Dependencies (Required)
work being done on branch 412 (PR 418) will use the new app-builder
the work effects previous commit for the RuntimeInitiatorState where business logic was moved out of the app builder
there may also be conflicts with PR 423 as a result of those changes
4. Proposed Solution (Required)
How would you solve it?
Explain your idea. It doesn’t need to be perfect—just enough to guide a discussion.
5. Scope and Impact (Required)
mostly the bootstrap and files surrounding the app_builder
6. Testing Considerations (Required)
right now modifying the storage.json file is the way to run tests
7. Definition of Done (Required)
when all test paths work
Optional Details (Expand if needed)
8. Alternatives Considered
What other solutions did you think about?
Briefly describe alternatives and why this approach is preferred.
9. Risks or Concerns
What could go wrong?
Highlight potential challenges, like performance or compatibility issues.
10. Additional Context
Any supporting material?
Include links, screenshots, logs, or diagrams.
1. Summary / Problem Statement
the App builder grew too large and ugly.. back in the day we would have called it a god class
the objective is to refactor it into more orchestration role.. delegating functionality to two sub managers:
with some abstraction work we are able to:
3. Dependencies (Required)
work being done on branch 412 (PR 418) will use the new app-builder
the work effects previous commit for the RuntimeInitiatorState where business logic was moved out of the app builder
there may also be conflicts with PR 423 as a result of those changes
4. Proposed Solution (Required)
How would you solve it?
Explain your idea. It doesn’t need to be perfect—just enough to guide a discussion.
5. Scope and Impact (Required)
mostly the bootstrap and files surrounding the app_builder
6. Testing Considerations (Required)
right now modifying the storage.json file is the way to run tests
7. Definition of Done (Required)
when all test paths work
Optional Details (Expand if needed)
8. Alternatives Considered
What other solutions did you think about?
Briefly describe alternatives and why this approach is preferred.
9. Risks or Concerns
What could go wrong?
Highlight potential challenges, like performance or compatibility issues.
10. Additional Context
Any supporting material?
Include links, screenshots, logs, or diagrams.