diff options
| author | Craig Jennings <c@cjennings.net> | 2026-05-30 17:20:24 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-05-30 17:20:24 -0500 |
| commit | 1f79945dd4ab386a9ea4ac58fb2161c174a26bba (patch) | |
| tree | 0344827c0793c636a6f1e3f2e3ebc88724ab4f89 /inbox | |
| parent | 4b24597eee171ccbc5f5fd7067fdd52b87931986 (diff) | |
| download | rulesets-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.org | 25 |
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. |
