[0.1.7] Fix error display when docscribe fails and trailing literal suppresses warnings - #57
Merged
Merged
Conversation
…uppresses warnings
unurgunite
force-pushed
the
fix/annotator-error-display
branch
from
September 8, 2026 23:11
5d5f71e to
f12573b
Compare
5 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Fixes the annotator swallowing docscribe failures and the trailing-literal cache bug. When docscribe exits with an error (missing gem, syntax error, or
error_count>0with no files) the previous code cached an empty result and rendered it as0— the real error was only visible in the daemon. Now failures are surfaced and not cached.Changes
DocscribeAnnotator.doAnnotateno longer treats!successasnullwith0offenses. Failed runs logsuccess/exit/stderrtoidea.log, show a visible annotation, and are not cached. A blankstdoutwithsuccessis still cached as a clean file.error_count>0 && files.isEmpty()(e.g. parser error or trailing[]/:sym/42suppressingInvalidType) now creates a syntheticDocscribe/Erroroffense on line 1 instead of being collapsed tonulland hidden.DocscribeAnnotatorCacheto avoid poisoning the cache and to allow the next annotation to retry the daemon.gem not installed(exit 2,stderrcontainsdocscribe gem is not installed) is now shown as aBALLOONWARNINGwith anAdd to Gemfileaction that appendsgem "docscribe"to the projectGemfileroot (so CI picks it up) and opens the file, mirroring RuboCop's UX.fataland parser errors remain as redERRORsquiggles.Checklist
./gradlew test— 238 tests)./gradlew spotlessCheck)./gradlew detekt)./gradlew verifyPluginagainst261.*/262.*)