internal/core/adt: fix disjunction state management
This fixes two problems:
- the disjunctionTasks was not decremented upon
completion of processing disjunctions. This meant
that related tasks were always yielded and "unblocked".
- in "attemptOnly" mode, when requesting disjunctions
to be solved, it would not finalize disjunctions,
causing, likewise, tasks to be yielded.
This also fixes a P2 error in previous tests.
Fixes #3925
Fixes #3905
Signed-off-by: Marcel van Lohuizen <mpvl@gmail.com>
Change-Id: I79b70f0673a8283dcb4afb274c1b9e4c5c38892d
Reviewed-on: https://review.gerrithub.io/c/cue-lang/cue/+/1215093
TryBot-Result: CUEcueckoo <cueckoo@cuelang.org>
Unity-Result: CUE porcuepine <cue.porcuepine@gmail.com>
Reviewed-by: Daniel Martí <mvdan@mvdan.cc>