Skip to content

Conflicts

Whenever making changes to your Constellation through konstellat.io there’s a risk that the revision that you’re basing your changes on is no longer the latest revision of the Constellation due to other users making changes from the time that your started making yours. This will lead to a conflict when trying to apply your changes. To mitigate lost changes, konstellat.io will return a 409 Conflict status code when it detects a possible conflict and abort before applying your changes. There are two query parameters that you can append to all your queries, excluding your GET queries as those will not change the Constellation.

Not passing the hash query parameter will always result in a 409 Conflict unless the force query parameter is passed. The hash should be equal to the revision hash (all characters) that you’re basing your changes on. If the latest revision’s hash is equal to hash the conflict is considered resolved. If the latest revision’s hash is not equal to hash, you will need to either:

  • base your changes on the latest revision before trying to apply again; or
  • pass force=true as a query parameter to still try to apply your changes

Passing force=true as a query parameter will skip the conflict check. This can be useful when bumping versions or updating statuses from pipelines as they don’t need to know the latest revision’s hash provided that the nodes still exist.