Branch: refs/heads/master Home: https://github.com/xwiki/xwiki-dev-llm Commit: ca26e115d0c5c28ac63ac1522e659fe23a2d152d https://github.com/xwiki/xwiki-dev-llm/commit/ca26e115d0c5c28ac63ac1522e659f... Author: Vincent Massol <[email protected]> Date: 2026-08-08 (Sat, 08 Aug 2026) Changed paths: M .claude-plugin/marketplace.json M kimi.plugin.json M opencode.jsonc M xwiki/.claude-plugin/plugin.json M xwiki/okf/sonarqube/dead-code-rules.md M xwiki/okf/sonarqube/index.md M xwiki/okf/sonarqube/simplification-rules.md Log Message: ----------- Document S2629 and S3358, and widen the S1130 safe set to private helpers * S1130: a private helper in a test class cannot be overridden by a test-jar consumer, so it is as safe as an annotated test method. Also add the XWiki test-framework hooks (@BeforeComponent) to the safe annotation set. * S2629: the only mechanical shape is a redundant toString() on an argument of an already-parameterized SLF4J call; everything else needs an isXxxEnabled() guard, which is a judgement call. * S3358: extract the inner ternary; exact-negation branches collapse to one local plus a unary minus. Ship it separately, it is a readability judgement. * Denylist javabugs:S2259, S899/S4042, S1948 and S2386, with the reason each looks mechanical but is not. Co-Authored-By: Vincent Massol <[email protected]> Commit: e3243c3ed428f0347b99be8e79b56b6c38197f87 https://github.com/xwiki/xwiki-dev-llm/commit/e3243c3ed428f0347b99be8e79b56b... Author: Vincent Massol <[email protected]> Date: 2026-08-11 (Tue, 11 Aug 2026) Changed paths: M xwiki/okf/sonarqube/index.md M xwiki/okf/sonarqube/simplification-rules.md M xwiki/skills/xwiki-fix-sonarqube-issue/SKILL.md Log Message: ----------- Deny S2629 and route it to conventions/logging.md instead The S2629 section added in the previous commit was wrong: it advised deleting a redundant toString() from a parameterized log call, which contradicts conventions/logging.md ("Never silently remove an explicit toString()"). In XWiki a log argument is stored as an object and XStream-serialized into the job log, so the eager String is usually a deliberate snapshot. * Move S2629 out of the simplification family and into the index denylist, with a pointer to conventions/logging.md. * Tell the skill that a convention-owned rule's knowledge lives in okf/conventions/, not okf/sonarqube/, so the pointer gets followed. Co-Authored-By: Vincent Massol <[email protected]> Commit: 904b9d67c2c99333fbab6ae0a871585971a10ef7 https://github.com/xwiki/xwiki-dev-llm/commit/904b9d67c2c99333fbab6ae0a87158... Author: Vincent Massol <[email protected]> Date: 2026-08-11 (Tue, 11 Aug 2026) Changed paths: M .claude-plugin/marketplace.json M kimi.plugin.json M opencode.jsonc M xwiki/.claude-plugin/plugin.json M xwiki/okf/sonarqube/dead-code-rules.md M xwiki/okf/sonarqube/index.md M xwiki/okf/sonarqube/simplification-rules.md M xwiki/skills/xwiki-fix-sonarqube-issue/SKILL.md Log Message: ----------- [Misc] Document S2629 and S3358, and widen the S1130 safe set to private helpers Compare: https://github.com/xwiki/xwiki-dev-llm/compare/99d9fa1393e2...904b9d67c2c9 To unsubscribe from these emails, change your notification settings at https://github.com/xwiki/xwiki-dev-llm/settings/notifications