Conversation
|
Caution Review failedThe pull request is closed. WalkthroughAdds Tone elements and rendering for behaviour prompts; introduces a new Memory Leak Profiling course (site content, course modules, many tag pages, and site navigation), updates site templates/CSS for nav dropdown and nav link, and renames controller references from WithoutCocoController → NoCocoController in example docs. All changes are documentation/content or template edits; no runtime code/APIs changed. Changes
Sequence Diagram(s)sequenceDiagram
autonumber
participant Author
participant XML as behaviour-*.xml
participant XSL as cursor-rules.xsl
participant MD as Rendered Markdown
Author->>XML: add <tone> element (after <role>)
Author->>XSL: update root template and add match="tone"
XML-->>XSL: prompt payload { role, tone, goal, ... }
XSL->>MD: emit sections: Role -> ## Tone -> Goal
note right of MD: "## Tone" appears in generated docs
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Poem
Pre-merge checks✅ Passed checks (3 passed)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (81)
Tip 👮 Agentic pre-merge checks are now available in preview!Pro plan users can now enable pre-merge checks in their settings to enforce checklists before merging PRs.
Please see the documentation for more information. Example: reviews:
pre_merge_checks:
custom_checks:
- name: "Undocumented Breaking Changes"
mode: "warning"
instructions: |
Pass/fail criteria: All breaking changes to public APIs, CLI flags, environment variables, configuration keys, database schemas, or HTTP/GraphQL endpoints must be documented in the "Breaking Change" section of the PR description and in CHANGELOG.md. Exclude purely internal or private changes (e.g., code not exported from package entry points or explicitly marked as internal).Please share your feedback with us on this Discord post. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (2)
system-prompts-generator/src/main/resources/cursor-rules.xsl (1)
133-141: Preserve Tone paragraph structure (avoid normalize-space collapse)Using
normalize-space(.)will squash newlines/lists if Tone evolves beyond a single paragraph. Reuse your existing goal trimming to preserve paragraphs and code fences.Apply:
<!-- Tone template --> <xsl:template match="tone"> <xsl:text> ## Tone </xsl:text> - <xsl:value-of select="normalize-space(.)"/> + <xsl:call-template name="trim-goal-content"> + <xsl:with-param name="content" select="."/> + </xsl:call-template> </xsl:template>system-prompts-generator/src/main/resources/behaviour-consultative-interaction.xml (1)
12-12: Style: multiline Tone for readability (future-proof with XSL change)Consider multiline formatting (pairs well with the XSLTone trimming change).
- <tone>Treats the user as a knowledgeable partner in solving problems rather than prescribing one-size-fits-all solutions. Presents multiple approaches with clear trade-offs, asking for user input to understand context and constraints. Uses consultative language like "I found several options" and "Which approach fits your situation better?" Acknowledges that the user knows their business domain and team dynamics best, while providing technical expertise to inform decisions.</tone> + <tone> + Treats the user as a knowledgeable partner in solving problems rather than prescribing one-size-fits-all solutions. + Presents multiple approaches with clear trade-offs, asking for user input to understand context and constraints. + Uses consultative language like "I found several options" and "Which approach fits your situation better?" + Acknowledges that the user knows their business domain and team dynamics best, while providing technical expertise to inform decisions. + </tone>
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (5)
.cursor/rules/behaviour-consultative-interaction.md(1 hunks).cursor/rules/behaviour-progressive-learning.md(1 hunks)system-prompts-generator/src/main/resources/behaviour-consultative-interaction.xml(1 hunks)system-prompts-generator/src/main/resources/behaviour-progressive-learning.xml(1 hunks)system-prompts-generator/src/main/resources/cursor-rules.xsl(2 hunks)
🧰 Additional context used
📓 Path-based instructions (3)
.cursor/rules/**
📄 CodeRabbit inference engine (AGENTS.md)
Do not edit files in .cursor/rules/ directly; they are generated outputs
Files:
.cursor/rules/behaviour-progressive-learning.md.cursor/rules/behaviour-consultative-interaction.md
**/src/{main,test}/{java,resources}/**/*
📄 CodeRabbit inference engine (.cursor/rules/110-java-maven-best-practices.md)
Follow Maven’s standard directory layout: src/main/java, src/main/resources, src/test/java, src/test/resources
Files:
system-prompts-generator/src/main/resources/behaviour-consultative-interaction.xmlsystem-prompts-generator/src/main/resources/behaviour-progressive-learning.xmlsystem-prompts-generator/src/main/resources/cursor-rules.xsl
system-prompts-generator/src/main/resources/**/*.xml
📄 CodeRabbit inference engine (AGENTS.md)
Edit XML source files under system-prompts-generator/src/main/resources/ to change or add cursor rules
Files:
system-prompts-generator/src/main/resources/behaviour-consultative-interaction.xmlsystem-prompts-generator/src/main/resources/behaviour-progressive-learning.xml
🧠 Learnings (5)
📚 Learning: 2025-09-14T14:44:18.662Z
Learnt from: CR
PR: jabrena/cursor-rules-java#0
File: .cursor/rules/behaviour-progressive-learning.md:0-0
Timestamp: 2025-09-14T14:44:18.662Z
Learning: Build content suitable for a Senior software engineer with extensive Java experience (use relevant Java examples when appropriate)
Applied to files:
.cursor/rules/behaviour-progressive-learning.mdsystem-prompts-generator/src/main/resources/behaviour-progressive-learning.xml
📚 Learning: 2025-09-14T14:44:18.662Z
Learnt from: CR
PR: jabrena/cursor-rules-java#0
File: .cursor/rules/behaviour-progressive-learning.md:0-0
Timestamp: 2025-09-14T14:44:18.662Z
Learning: Focus on being educational rather than prescriptive: extract concepts, structure learning, provide practice, and validate based on user engagement
Applied to files:
.cursor/rules/behaviour-progressive-learning.md
📚 Learning: 2025-09-16T17:49:31.992Z
Learnt from: CR
PR: jabrena/cursor-rules-java#0
File: AGENTS.md:0-0
Timestamp: 2025-09-16T17:49:31.992Z
Learning: Applies to system-prompts-generator/src/main/resources/**/*.xml : Edit XML source files under system-prompts-generator/src/main/resources/ to change or add cursor rules
Applied to files:
system-prompts-generator/src/main/resources/behaviour-consultative-interaction.xmlsystem-prompts-generator/src/main/resources/cursor-rules.xsl
📚 Learning: 2025-09-14T14:43:58.012Z
Learnt from: CR
PR: jabrena/cursor-rules-java#0
File: .cursor/rules/behaviour-consultative-interaction.md:0-0
Timestamp: 2025-09-14T14:43:58.012Z
Learning: Adopt a consultative style over a prescriptive one: analyze, propose options, ask for a choice, then implement
Applied to files:
system-prompts-generator/src/main/resources/behaviour-consultative-interaction.xml.cursor/rules/behaviour-consultative-interaction.md
📚 Learning: 2025-09-08T10:20:01.342Z
Learnt from: CR
PR: jabrena/cursor-rules-java#0
File: .cursor/rules/125-java-concurrency.md:0-0
Timestamp: 2025-09-08T10:20:01.342Z
Learning: Analyze before acting: use the consultative interaction technique (analyze issues, categorize by impact, propose options with trade-offs, ask user to choose, then implement)
Applied to files:
system-prompts-generator/src/main/resources/behaviour-consultative-interaction.xml.cursor/rules/behaviour-consultative-interaction.md
🔇 Additional comments (4)
system-prompts-generator/src/main/resources/behaviour-progressive-learning.xml (1)
12-15: Good addition: content is clear and consistent with RoleNo XML escaping issues. Note: current XSL normalizes whitespace for Tone; if you later add lists/paragraphs here, they’ll collapse. See my XSLT suggestion to preserve paragraph structure.
.cursor/rules/behaviour-consultative-interaction.md (1)
11-14: LGTM: Consultative Tone reads well and matches doctrineLooks consistent with the consultative technique. Reminder:
.cursor/rules/**is generated; avoid manual edits—regenerate via the XSLT pipeline.Use the script in my other comment to verify Role → Tone → Goal ordering in this file as well (swap filename).
system-prompts-generator/src/main/resources/cursor-rules.xsl (1)
27-28: Correct insertion point for ToneProcessing Tone immediately after Role is the right place; it will appear before Goal in outputs.
Run a quick regen and diff the two affected Markdown files to ensure placement and spacing look right.
.cursor/rules/behaviour-progressive-learning.md (1)
11-14: Verify generation: XSL handles — confirm source XML and generated MDXSL check passed: system-prompts-generator/src/main/resources/cursor-rules.xsl contains <xsl:apply-templates select="tone"/> (reported line 28) and <xsl:template match="tone"> (reported line 134). Verification run did not confirm a element in system-prompts-generator/src/main/resources/behaviour-progressive-learning.xml nor could it verify that .cursor/rules/behaviour-progressive-learning.md places "## Tone" after "## Role" and before "## Goal".
- Ensure system-prompts-generator/src/main/resources/behaviour-progressive-learning.xml includes a element.
- Ensure the pipeline actually regenerates .cursor/rules/behaviour-progressive-learning.md and that "## Tone" appears between "## Role" and "## Goal".
If both checks are true, approve the Tone section as-is; otherwise update the source/XSL pipeline and regenerate.
Rationale for this change
Improve the communication style in the conversation that you have with the software engineer
What changes are included in this PR?
Are these changes tested?
Are there any user-facing changes?
No
Summary by CodeRabbit
New Features
Documentation
Style
Notes