Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PhET-iO instrumentation #78

Open
6 of 11 tasks
pixelzoom opened this issue Feb 23, 2023 · 2 comments
Open
6 of 11 tasks

PhET-iO instrumentation #78

pixelzoom opened this issue Feb 23, 2023 · 2 comments

Comments

@pixelzoom
Copy link
Contributor

pixelzoom commented Feb 23, 2023

For #77.

Baseline version: https://phet-dev.colorado.edu/html/reactants-products-and-leftovers/1.3.0-dev.3/phet/reactants-products-and-leftovers_all_phet.html


TODO list

Convert from dynamic to static:

  • ReactionBarNode: create all equations on startup
  • RPALScreenView: create UI for all reactions on startup
  • GameButtons: tryAgainButton, showAnswerButton, nextButton
  • ChallengeNode: faceNode
  • GameScreenView: settingsNode, playNode, resultsNode
  • ResultsNode: rewardNode, levelCompletedNode
  • PlayNode: currentChallengeNode
  • GameModel: challenges
  • StackNode

Misc sim-specific

  • GameModel has an order dependency in several places (like this example), will this be a problem when restoring state?
    this.gamePhaseProperty.value = GamePhase.RESULTS; // do this last, so that other stuff is set up before observers are notified

Common Code:

  • vegas FiniteStatusBar needs PhET-iO design, to determine what should be instrumented. (Do InfiniteStatusBar at the same time?)
@pixelzoom pixelzoom self-assigned this Feb 23, 2023
pixelzoom added a commit that referenced this issue Mar 3, 2023
pixelzoom added a commit that referenced this issue Mar 3, 2023
pixelzoom added a commit that referenced this issue Mar 3, 2023
pixelzoom added a commit that referenced this issue Mar 3, 2023
pixelzoom added a commit that referenced this issue Mar 6, 2023
pixelzoom added a commit that referenced this issue Mar 6, 2023
pixelzoom added a commit that referenced this issue Mar 6, 2023
pixelzoom added a commit that referenced this issue Mar 6, 2023
pixelzoom added a commit that referenced this issue Mar 6, 2023
pixelzoom added a commit that referenced this issue Mar 6, 2023
pixelzoom added a commit that referenced this issue Mar 6, 2023
pixelzoom added a commit that referenced this issue Mar 6, 2023
pixelzoom added a commit that referenced this issue Mar 6, 2023
pixelzoom added a commit that referenced this issue Mar 6, 2023
pixelzoom added a commit that referenced this issue Mar 6, 2023
pixelzoom added a commit that referenced this issue Mar 6, 2023
@pixelzoom
Copy link
Contributor Author

Publishing a PhET-iO version of this sim is no longer a goal for July 2023, see #77. But instrumentation is now in an awkward intermediate state, where pausing would leave the sim in a bad state. So I'll continue to chip away at this until it's in an acceptable place to pause.

@pixelzoom
Copy link
Contributor Author

pixelzoom commented Jul 10, 2023

This is at a reasonable stopping point. The first 2 screens have a good start at instrumentation/reorganization. But since the Game screen reuses code from the first 2 screens, it's really impossible to continue further with the first 2 screens without addressing instrumentation of the Game screen. And before that happens, PhET-iO design for games (both general, and specific to this sim) needs to happen. Unassigning until it's feasible to continue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants