Skip to content

chore(ai-slop): disable rule-emoji-formatting here, with the measurement - #3060

Merged
kyle-sexton merged 1 commit into
mainfrom
claude/ai-slop-emoji-exemption
Aug 20, 2026
Merged

chore(ai-slop): disable rule-emoji-formatting here, with the measurement#3060
kyle-sexton merged 1 commit into
mainfrom
claude/ai-slop-emoji-exemption

Conversation

@kyle-sexton

Copy link
Copy Markdown
Contributor

No linked issue

Summary

All 21 rule-emoji-formatting findings against this repo are semantic markers; none is decoration. The rule is doing its job — this repo simply uses these glyphs as vocabulary rather than ornament, which is a house-style call the config layer exists to record.

Measured 2026-08-20 over the 1214-file corpus, fence-stripped the way the detector does:

Class Count Where
Wrong/right teaching pairs (❌/✅) 7 docs-hygiene citation-form.md, planning interview/loop.md
Coaching pairs (✗/✓) 4 pat-pattison coaching-protocol.md
Warning headings (⚠) 9 kindle-dedrm README, songwriting CHANGELOG, book-references.md
Severity-legend marker (🟣) 1 REVIEW.md, sibling to the 🔴/🟡 in its own table

Fix

rule-emoji-formatting is added to disabled_rules in .claude/ai-slop.json, with the measurement and the class breakdown recorded under the single supported _comment key — the same treatment and the same rationale shape as rule-em-dash and rule-curly-artifacts already carry. The shipped detector default stays neutral; this is the consuming repo's own taste.

Why not in-file block markers. That was the first choice, and it was rejected once its cost was measured rather than assumed. The marked files span four plugins (docs-hygiene, kindle-dedrm, planning, songwriting), and changelog-parity-gate treats any edit under plugins/<name>/ as published-version reuse — the failure mode that blocked #3054 until a bump was added. Silencing cosmetic audit noise would therefore have published four plugin releases. This change touches one repo-root file and bumps nothing.

Why not a per-path exemption. It is the instrument that actually fits all three disabled entries, but the config layer supports per-rule path allowlisting only for rule-em-dash today. Generalizing it is a plugin change with its own design and test surface, and does not belong in a consumer-config diff. The _comment records that so the next reader does not re-derive it.

Verification

  • detect.sh --show-configdisabled_rules=rule-em-dash rule-curly-artifacts rule-emoji-formatting.
  • Scoped run over the affected files: rule-emoji-formatting findings=0 declined=0 disabled=1, Summary total: 0 findings.
  • .claude/ai-slop.json still carries exactly three keys — _comment, disabled_rules, excluded_paths — so no unknown-key drift against the ai-slop:setup contract (the defect caught by review on chore(ai-slop): honor the repo's standing punctuation-glyph ruling in config #3054).
  • check-changelog-parity.sh both --check and --check-bump origin/main — pass. No plugin file is touched, so no version bump is owed.
  • detect.test.sh — 92 cases pass (unchanged by this diff; run to confirm the config change does not leak into the suite's pinned-empty cascade).
  • editorconfig-checker, typos — clean.

Related


Generated by Claude Code

All 21 emoji findings against this repo are semantic markers; none is
decoration. Measured 2026-08-20 over the 1214-file corpus, fence-stripped as
the detector does:

- 7 wrong/right teaching pairs (docs-hygiene extract-ssot citation-form.md,
  planning interview loop.md)
- 4 coaching pairs (pat-pattison coaching-protocol.md)
- 9 warning headings (kindle-dedrm README.md, songwriting CHANGELOG.md,
  book-references.md)
- 1 severity-legend marker (REVIEW.md), sibling to the two in its own table

The rule is doing its job. This repo uses these glyphs as vocabulary rather
than ornament, which is a house-style call the config layer exists to record.

In-file block markers were the first choice and were rejected on cost once it
was measured: the marked files span four plugins, and changelog-parity-gate
treats any edit under plugins/<name>/ as version reuse, so silencing cosmetic
audit noise would have published four plugin releases. This change touches one
repo-root file and bumps nothing.

Same treatment and same rationale shape as rule-em-dash and
rule-curly-artifacts, recorded under the single supported `_comment` key. The
shipped detector default stays neutral.

Also noted in the record: a per-rule path exemption is the instrument that
actually fits all three disabled entries, and the config layer supports it only
for rule-em-dash today.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@claude

claude Bot commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

Claude finished @kyle-sexton's task in 1m 42s —— View job


CI code review — /review:code-review

  • Gather context (PR diff, .claude/ai-slop.json history, ai-slop setup contract)
  • Understand the request (invoke /review:code-review per the workflow header)
  • Review the diff against correctness/maintainability criteria
  • Post findings

Skip gate: this change is trivial with no meaningful review surface — a single JSON string-array append plus its accompanying _comment rationale, mechanically identical in shape to the two entries it sits beside. No inline findings.

What I checked (verified myself, not just author-claimed):

  • git show 4a268ca -- .claude/ai-slop.json — the diff is exactly "rule-emoji-formatting" appended to disabled_rules and the _comment extended to cover it; nothing else moved.
  • rule-emoji-formatting is a real, shipped rule ID — confirmed against plugins/ai-slop/skills/audit/scripts/detect.sh:59 and plugins/ai-slop/skills/audit/reference/catalog.md:262.
  • The file still carries exactly the three keys the setup contract recognizes (_comment, excluded_paths, disabled_rules) per plugins/ai-slop/skills/setup/SKILL.md:19-25 — no unknown-key drift.
  • The PR's claim that per-rule path allowlisting is supported only for rule-em-dash today is accurate: plugins/ai-slop/skills/setup/SKILL.md:20 documents em_dash_allowed_paths as the only such key; there's no emoji- or curly-artifact-specific equivalent in the setup contract.

Not independently verified (this lane's Bash access is scoped to gh pr * only, so I could not execute the scripts myself): detect.sh --show-config output, the scoped rule-emoji-formatting findings=0 run, detect.test.sh's 92 passing cases, check-changelog-parity.sh, editorconfig-checker, and typos. These are author-claimed in the PR description and should be taken as such rather than as independently confirmed here.

No correctness or maintainability issues found in the reviewed diff.

@claude

claude Bot commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

Claude finished @kyle-sexton's task in 44s —— View job


Security review

  • Gather context (PR diff, changed files)
  • Apply skip gate / assess security-relevant surface
  • Report findings

Skip gate hit: change has no security-relevant surface.

The diff touches a single file, .claude/ai-slop.json, and only:

  1. Adds "rule-emoji-formatting" to the disabled_rules array.
  2. Extends the _comment documentation string with the rationale and measurement for that addition.

No code execution paths, no authorization/access-control logic, no secrets/token handling, and no GitHub Actions workflow or permissions changes are touched. This is a data-only config file consumed by the ai-slop detector to decide which lint rules to skip — it carries no injection surface and doesn't alter any trust boundary. Per the skip gate in /review:security-review, no further review is needed and no findings are reported.

@github-actions

Copy link
Copy Markdown

Last security-reviewed head: 4a268cabba37bfc2ab18e13e279717e7016642ce. On the next push, the relevance gate compares only the commits since this SHA; delete this comment to force a full re-review.

@github-actions

Copy link
Copy Markdown

Claude has reviewed this PR 1 time. The lane skips further automatic reviews after 5; deleting this comment resets the count.

@kyle-sexton
kyle-sexton merged commit 150e783 into main Aug 20, 2026
49 checks passed
@kyle-sexton
kyle-sexton deleted the claude/ai-slop-emoji-exemption branch August 20, 2026 22:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants