SEG491X-W2023-T42 / mikado-machine

A multi-platform web-app for managing tasks and goals using the Mikado Method.
https://mikadomachine.uottawaesports.ca/
1 stars 0 forks source link

Verify the acyclic condition on load #41

Closed danielzgtg closed 11 months ago

danielzgtg commented 1 year ago

The graph is not checked for acyclic consistency. The completion/dependency feature will require this to not become inconsistent.

Upon detecting a cycle, the app should close (possibly throwing an error to unmount it). Do not return an empty graph because that may risk data loss if saving occurs.

Server-side consistency is out of the scope of this issue. We are not currently enforcing it on the server, but a separate issue could implement this on using a cloud function or something. Even if the server is trusted, we should check on the client to eliminate this possibility to make debugging conceptually easier.

This MUST NOT take O(n**2)

Daanish-Khan commented 11 months ago

closing as there is no time to complete this task