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

Create more intentional separation between structural & progress data #173

Open
BenHenning opened this issue Sep 22, 2019 · 0 comments
Open
Labels
bug End user-perceivable behaviors which are not desirable. Impact: Low Low perceived user impact (e.g. edge cases). Issue: Needs Clarification Indicates that an issue needs more detail in order to be able to be acted upon. Priority: Important This work item is really important to complete for its milestone, but it can be scoped out. Work: Medium The means to find the solution is clear, but it isn't at good-first-issue level yet. Z-ibt Temporary label for Ben to keep track of issues he's triaged.

Comments

@BenHenning
Copy link
Member

It's not currently clear in the domain layer when a controller should produce read-only data (e.g. #121), produce read-only structural data with progress (#118), or specifically focus on progress (#119). It's likely that these are muddled because there aren't clear separations between:

  1. Controllers that provide structural data (e.g. exploration structure)
  2. Controllers that own persistent progress (e.g. for stories)
  3. Controllers that own ephemeral progress (e.g. for explorations)
  4. Controllers that provide UI-specific data (most controllers being introduced)

These ought to be clearly separate (probably via naming). It may also be nice if UI controllers are the primary controllers interacted with the UIs, and those depend on structural/progress controllers for sourcing data. 'Repository' may actually be a better name for these lower-level controllers.

Note also that structural controllers/repositories also need to have referential integrity, which likely requires #12 to be utilized for on-disk storage.

@BenHenning BenHenning added the Priority: Important This work item is really important to complete for its milestone, but it can be scoped out. label Sep 22, 2019
@BenHenning BenHenning added this to the Minimal Viable Product milestone Sep 22, 2019
@BenHenning BenHenning modified the milestones: Minimal Viable Product, Global Availability Jun 23, 2020
@Broppia Broppia added issue_type_infrastructure Impact: Low Low perceived user impact (e.g. edge cases). labels Jul 14, 2022
@BenHenning BenHenning added issue_user_developer Issue: Needs Clarification Indicates that an issue needs more detail in order to be able to be acted upon. Z-ibt Temporary label for Ben to keep track of issues he's triaged. labels Sep 16, 2022
@BenHenning BenHenning removed this from the Global Availability milestone Sep 16, 2022
@seanlip seanlip added bug End user-perceivable behaviors which are not desirable. and removed issue_type_infrastructure labels Mar 28, 2023
@adhiamboperes adhiamboperes added the Work: Medium The means to find the solution is clear, but it isn't at good-first-issue level yet. label Sep 22, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug End user-perceivable behaviors which are not desirable. Impact: Low Low perceived user impact (e.g. edge cases). Issue: Needs Clarification Indicates that an issue needs more detail in order to be able to be acted upon. Priority: Important This work item is really important to complete for its milestone, but it can be scoped out. Work: Medium The means to find the solution is clear, but it isn't at good-first-issue level yet. Z-ibt Temporary label for Ben to keep track of issues he's triaged.
Development

No branches or pull requests

4 participants