Move SSD bitmap and tree guards to typed Kotlin

ober

c1072b643eb15842b08853f6ca1a780cabb4e445

diff --git a/templates/ssd-review.ss b/templates/ssd-review.ss
index 2e9c989..cb0b131 100644
--- a/templates/ssd-review.ss
+++ b/templates/ssd-review.ss
@@ -6853,7 +6853,8 @@
        "        expectedPdfSha1: String = pdfSha1,"
        "        expectedPageCount: Int = pageCount"
        "    ) {"
-       "        val bitmap = currentBitmap ?: return"
+       "        if (!bitmapLoaded(currentBitmap)) return"
+       "        val bitmap = checkNotNull(currentBitmap)"
        "        if (!pdfUriLoaded(expectedUri)) return"
        "        val uri = uriOrEmpty(expectedUri)"
        "        setStatus(detectStartStatus(forceDetect))"
@@ -9362,8 +9363,8 @@
        "        listOf(\"ground_truth\", \"learned\", \"events\", \"reviews\").forEach { name ->"
        "            val sourceDir = tree.findFile(name)"
        "            val localDir = File(root, name)"
-       "            if (sourceDir != null && documentFileIsDirectory(sourceDir)) {"
-       "                count += importTreeDir(sourceDir, localDir, 0, budget)"
+       "            if (documentFilePresent(sourceDir) && documentFileIsDirectory(checkNotNull(sourceDir))) {"
+       "                count += importTreeDir(checkNotNull(sourceDir), localDir, 0, budget)"
        "            }"
        "        }"
        "        return count"