aboutsummaryrefslogtreecommitdiff
path: root/inbox
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-30 17:20:24 -0500
committerCraig Jennings <c@cjennings.net>2026-05-30 17:20:24 -0500
commit1f79945dd4ab386a9ea4ac58fb2161c174a26bba (patch)
tree0344827c0793c636a6f1e3f2e3ebc88724ab4f89 /inbox
parent4b24597eee171ccbc5f5fd7067fdd52b87931986 (diff)
downloadrulesets-1f79945dd4ab386a9ea4ac58fb2161c174a26bba.tar.gz
rulesets-1f79945dd4ab386a9ea4ac58fb2161c174a26bba.zip
fix(lint-org): suppress verbatim-asterisk misplaced-heading false positives
org-lint reads an =** Foo= verbatim span in body prose as a possible misplaced heading, but verbatim markup is never a real heading. lint-org kept surfacing these as judgment items, so they recurred in lint-followups.org on every wrap and could never be acted on, since the todo.org content was already correct. I added lo--verbatim-asterisk-at-line-p, which mirrors the markdown-bold detector: it checks the reported line and the one before it, since org-lint marks the blank line after the offender. A match is now suppressed silently, the same way the cj-comment false positives already are. I flipped the two tests that pinned the old judgment behavior, and confirmed todo.org lints clean (judgment=0). This resolves the checker-bug report I filed in the inbox earlier, which I removed.
Diffstat (limited to 'inbox')
-rw-r--r--inbox/2026-05-30-lint-org-verbatim-asterisk-false-positive.org25
1 files changed, 0 insertions, 25 deletions
diff --git a/inbox/2026-05-30-lint-org-verbatim-asterisk-false-positive.org b/inbox/2026-05-30-lint-org-verbatim-asterisk-false-positive.org
deleted file mode 100644
index d47dde7..0000000
--- a/inbox/2026-05-30-lint-org-verbatim-asterisk-false-positive.org
+++ /dev/null
@@ -1,25 +0,0 @@
-#+TITLE: lint-org misplaced-heading verbatim-asterisk false positives
-#+SOURCE: wrap-up lint pass (rulesets, self-filed)
-#+DATE: 2026-05-30
-
-* TODO [#B] lint-org: stop flagging unfixable verbatim-asterisk misplaced-heading items :tooling:bug:
-
-** The error
-Every wrap-up lint pass on =todo.org= re-surfaces =misplaced-heading — Possibly misplaced heading line= judgment items for legitimate verbatim org markup inside prose. Current examples:
-- =todo.org= line ~2369: the =** DONE= reference ("a level-2 task ... sits as =** DONE= under Open Work").
-- =todo.org= line ~1717: the =** Startup Pull Ordering= reference.
-
-These are intentional =...=-wrapped heading references in sentences, not actual misplaced headings. The content is correct, so they can't be fixed in =todo.org=, yet they reappend to =inbox/lint-followups.org= on every wrap and can never be actioned.
-
-** The rule / checker
-=.ai/scripts/lint-org.el= (canonical =claude-templates/.ai/scripts/lint-org.el=), the =misplaced-heading= branch that classifies =** Foo= / =*** Foo= inside body prose as a judgment item (search =verbatim-asterisk= / =misplaced-heading= in the script). It currently appends these to the follow-ups file as actionable TODOs, but they're never actionable.
-
-** Requested fix
-Per the principle that linting should not flag items that aren't fixable (Craig, 2026-05-30):
-1. Suppress the verbatim-asterisk =misplaced-heading= class so =...=-wrapped asterisk markup is never surfaced — it's never a real misplaced heading.
-2. More broadly, when lint hits a genuinely unfixable item, route a note to rulesets' inbox (this channel) rather than recurring it in the local =lint-followups.org=. Fixable items still get fixed or surfaced as before.
-
-Add a test to =test-lint-org.el= pinning that a ==** Foo== verbatim span in body prose produces no judgment.
-
-** Done this session
-Cleared the two recurring items from =inbox/lint-followups.org=. They will recur on the next wrap until this checker change lands.