Task Compass 1.8.0 focuses on reliability: cross-device sync gets more robust, and several prioritization bugs that could cause the ranked list to look wrong or the Prioritize button to stop working are fixed.
Added: Cross-device comparison IDs
Pairwise comparisons are now anchored to iCloud-stable identifiers in addition to the device-local ones. Previously, a comparison recorded on one device couldn’t reliably be matched to the same reminders on another device, because the local IDs differ across devices. With this change, comparisons use the iCloud external identifier when available so the ranking you build on your iPhone is fully honoured on your iPad, and vice versa.
A fill-pass runs automatically on every EventKit refresh to back-fill the new identifier on comparisons recorded before this update.
Fixed: Prioritized list order stable between launches
The ranked task list now shows the same order every time you open the app. A hash-seed-dependent iteration over an internal set was producing different but equally-valid orderings on each launch. The ordering is now deterministic.
Fixed: Prioritize button stays responsive
The Prioritize button in the Task Compass tab no longer gets stuck after the first session. Background tabs were flipping internal sheet state while not visible, leaving the comparison sheet marked as open with nothing displayed. The button is now the sole trigger for opening the sheet.
Fixed: Next comparison pair stable after recording
Recording a comparison now causes exactly one recompute. Previously the cleanup work happened in a separate write, triggering a second recompute about a second later and making the next pair flicker.
Fixed: Phantom partners visible in Reassess
Deleted tasks that had comparison partners with no further connections are now shown and can be removed in the Reassess sheet. They were previously invisible, leaving dangling references that couldn’t be cleaned up. These rows now display as “(deleted)”.
Fixed: Comparison estimate correct for short lists
The estimate of remaining comparisons no longer returns 0 for certain small graph shapes (three tasks, two comparisons recorded) that are not yet fully ordered.
Fixed: Ranked positions hidden until ordering is confirmed
The Prioritized view no longer shows tasks in specific ranked positions before their order is certain. Adding a new uncompared task used to display previous top items as if their positions were still valid. Tasks now appear in ranked order only once their position is fully resolved.
Fixed: Comparison pair order deterministic
The next comparison pair and the top-ranked task list are now identical across app launches. An unordered set iteration and a missing tie-break in the ranking algorithm were producing different valid but inconsistent results each run.
Changed: “Other tasks” appears above the ranked list
In the Plan Today/Tomorrow sheet, the “X other tasks” line now appears above the ranked task list instead of below it.