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

Tasks module #73

Open
michielbdejong opened this issue Jan 19, 2024 · 7 comments
Open

Tasks module #73

michielbdejong opened this issue Jan 19, 2024 · 7 comments
Assignees

Comments

@michielbdejong
Copy link
Collaborator

I'll start with https://github.com/NoelDeMartin/solid-focus/blob/5db6787fcd9823b14b8062923dcfb9805a56a463/src/services/Workspaces.ts#L101

@michielbdejong
Copy link
Collaborator Author

I'm starting with ripping out the Soukai code for Tasks from solid-focus -> NoelDeMartin/solid-focus#13

@michielbdejong michielbdejong self-assigned this Jan 22, 2024
@michielbdejong
Copy link
Collaborator Author

Doing some work related to this in the federated task-tracking project (also nlnet-funded):
federatedbookkeeping/task-tracking#15

@michielbdejong
Copy link
Collaborator Author

I'll work on this in the tasks folder in the tasks branch
I want to support:

  • distributed versioning as well as competing world views (these are two different things, right?)
  • mapping of local names for issues as well as (where possible) for authors
  • audit logs both of how data changed over time and which people were involved, using which permissions

@michielbdejong
Copy link
Collaborator Author

In terms of the base model for Task state I think the basics are:

  • title
  • description
  • comments
  • state (open/closed)

Additional attributes may be:

  • labels
  • links with other tasks (sub-task, dependency, milestone)
  • assignment
  • link to PR data

Comments maybe be split out in a machine-readable way to attachments, work log and time tracking.

@michielbdejong
Copy link
Collaborator Author

Theory of Mind depends both on versioning between network nodes and on authoring between authors.
For the former, it can help pro-actively send updates to nodes you think need them.
For the latter, it is necessary to display merge conflicts to the end user and to properly log the change history.

I can start coding with a single operations log, where operations are:

  • create/delete object
  • (un)link foreign id
  • (un)set attribute (for single-value attributes like title, description, state, ...)
  • add/remove link (for multi-value attributes like comment, label, linked issues, ...)

@michielbdejong
Copy link
Collaborator Author

Then a function that processes a Solid pod HTTP response, including deduplication of already-seen comments etc.

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

No branches or pull requests

2 participants