-
Notifications
You must be signed in to change notification settings - Fork 5
Streamline CLAUDE.md and reference dev-metaschema plugin skills #629
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Streamline CLAUDE.md and reference dev-metaschema plugin skills #629
Conversation
📝 WalkthroughWalkthroughRelocates CLAUDE.md from the repository root into a new Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: Organization UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🧰 Additional context used🧠 Learnings (12)📓 Common learnings📚 Learning: 2026-01-05T18:03:33.537ZApplied to files:
📚 Learning: 2025-12-24T21:22:07.082ZApplied to files:
📚 Learning: 2025-12-17T13:27:43.679ZApplied to files:
📚 Learning: 2025-12-24T21:21:56.361ZApplied to files:
📚 Learning: 2025-12-30T19:08:21.896ZApplied to files:
📚 Learning: 2025-12-30T04:19:49.192ZApplied to files:
📚 Learning: 2025-12-24T21:21:40.208ZApplied to files:
📚 Learning: 2026-01-05T16:33:59.206ZApplied to files:
📚 Learning: 2026-01-07T04:40:01.060ZApplied to files:
📚 Learning: 2025-12-17T13:27:43.679ZApplied to files:
📚 Learning: 2025-12-17T13:27:43.679ZApplied to files:
🔇 Additional comments (7)
Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In @.claude/CLAUDE.md:
- Line 154: In the Git Workflow section there is a bare URL that violates MD034;
replace the bare URL with either angle-bracketed form (<https://...>) or proper
markdown link syntax ([text](https://...)) so the URL is no longer a naked link
and linting passes; edit the Markdown entry that contains the plain URL in the
Git Workflow section to use one of those formats.
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
.claude/CLAUDE.mdCLAUDE.md
💤 Files with no reviewable changes (1)
- CLAUDE.md
🧰 Additional context used
🧠 Learnings (10)
📓 Common learnings
Learnt from: david-waltermire
Repo: metaschema-framework/metaschema-java PR: 618
File: core/src/main/java/dev/metaschema/core/datatype/package-info.java:52-52
Timestamp: 2026-01-05T18:03:33.537Z
Learning: In metaschema-framework/metaschema-java, CLAUDE.md is the canonical coding-guidelines document and now specifies dev.metaschema.* as the Java package convention (updated in PR #618).
📚 Learning: 2026-01-05T18:03:33.537Z
Learnt from: david-waltermire
Repo: metaschema-framework/metaschema-java PR: 618
File: core/src/main/java/dev/metaschema/core/datatype/package-info.java:52-52
Timestamp: 2026-01-05T18:03:33.537Z
Learning: In metaschema-framework/metaschema-java, CLAUDE.md is the canonical coding-guidelines document and now specifies dev.metaschema.* as the Java package convention (updated in PR #618).
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2025-12-24T21:22:07.082Z
Learnt from: david-waltermire
Repo: metaschema-framework/metaschema-java PR: 567
File: metaschema-testing/src/main/java/gov/nist/secauto/metaschema/model/testing/testsuite/GenerationCase.java:74-80
Timestamp: 2025-12-24T21:22:07.082Z
Learning: Files in the package gov.nist.secauto.metaschema.model.testing.testsuite in metaschema-testing are generated binding classes created from Metaschema definitions. Documentation and style improvements for these files should be made at the code generator level (metaschema-maven-plugin) rather than by manually editing the generated code.
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2025-12-24T21:21:56.361Z
Learnt from: david-waltermire
Repo: metaschema-framework/metaschema-java PR: 567
File: metaschema-testing/src/main/java/gov/nist/secauto/metaschema/model/testing/testsuite/Metaschema.java:41-47
Timestamp: 2025-12-24T21:21:56.361Z
Learning: In metaschema-testing, generated binding classes under gov.nist.secauto.metaschema.model.testing.testsuite are produced by metaschema-maven-plugin from YAML metaschema definitions. Javadoc issues in these generated classes should not be flagged for manual fixes; improvements are tracked and handled through code generator enhancements rather than manual edits to the generated source.
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2026-01-07T04:40:01.060Z
Learnt from: david-waltermire
Repo: metaschema-framework/metaschema-java PR: 623
File: .github/workflows/build.yml:8-14
Timestamp: 2026-01-07T04:40:01.060Z
Learning: In the metaschema-java repository, the build workflow intentionally includes `main` in the `pull_request.branches` trigger even though CONTRIBUTING.md requires PRs to target `develop`. This is a defensive design to provide feedback if someone accidentally targets main, rather than silent failure. The UPLOAD_SCAN_SARIF logic also needs main for security scan results.
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2025-12-24T21:21:40.208Z
Learnt from: david-waltermire
Repo: metaschema-framework/metaschema-java PR: 567
File: metaschema-testing/src/main/java/gov/nist/csrc/ns/metaschema/test_suite/_1_0/Metaschema.java:41-47
Timestamp: 2025-12-24T21:21:40.208Z
Learning: In metaschema-framework/metaschema-java, generated binding classes in package gov.nist.csrc.ns.metaschema.test_suite._1_0 (and similar generated binding packages) are pre-generated by metaschema-maven-plugin and checked into source control. Javadoc coverage issues in these generated classes should be tracked as code generator improvements rather than file-level issues, and improvements are deferred to generator enhancements.
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2025-12-17T13:27:43.679Z
Learnt from: CR
Repo: metaschema-framework/metaschema-java PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-17T13:27:43.679Z
Learning: Use SpotBugs, PMD, Checkstyle, and Jacoco for static analysis. Project enforces Checkstyle code style, PMD source analysis (fails on priority 2+ violations), SpotBugs bug detection (with spotbugs-exclude.xml exclusions), and Jacoco code coverage (target: 60% coverage)
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2025-12-17T13:27:43.679Z
Learnt from: CR
Repo: metaschema-framework/metaschema-java PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-17T13:27:43.679Z
Learning: Applies to **/*.java : All code changes must follow the Javadoc style guide (docs/javadoc-style-guide.md). New code requires 100% Javadoc coverage on public/protected members. Modified code must add/update Javadoc on any members touched. All Javadoc must include param, return, throws tags in the correct order (BLOCKING)
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2025-12-17T13:27:43.679Z
Learnt from: CR
Repo: metaschema-framework/metaschema-java PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-17T13:27:43.679Z
Learning: Applies to **/*.java : Follow Test-Driven Development (TDD) principles: write tests first before implementing functionality, verify tests fail with current implementation, implement minimal code to pass tests, then refactor while keeping tests green
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2026-01-05T16:33:59.206Z
Learnt from: david-waltermire
Repo: metaschema-framework/metaschema-java PR: 0
File: :0-0
Timestamp: 2026-01-05T16:33:59.206Z
Learning: In metaschema-framework/metaschema-java, the core/metaschema submodule is owned by this project's maintainers; updates to it are coordinated within this repository, so no follow-up issues should be opened in external repositories for submodule changes.
Applied to files:
.claude/CLAUDE.md
🪛 markdownlint-cli2 (0.18.1)
.claude/CLAUDE.md
154-154: Bare URL used
(MD034, no-bare-urls)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: Website
- GitHub Check: Code
🔇 Additional comments (5)
.claude/CLAUDE.md (5)
5-9: Overview section effectively contextualizes Metapath/XPath 3.1.The addition of Metapath as the project's XPath 3.1 implementation with authoritative spec references is clear and directly supports developers implementing or fixing Metapath functions.
144-150: Javadoc section correctly references dev-metaschema:javadoc-style-guide skill.The update to reference the skill provides a single source of truth for Javadoc requirements while maintaining the essential blocking requirements (100% Javadoc on public/protected members, add/update on touched members) inline. This aligns with learnings that Javadoc coverage is strictly enforced.
207-247: Available Skills section comprehensively documents plugin sources.The skills are well-organized by plugin (dev-metaschema, metaschema, metaschema-tools, superpowers) with brief descriptions. This section provides clear navigation to specialized guidance without duplicating detailed content.
101-116: Bootstrap Binding Classes section correctly discourages manual edits.The guidance to never manually edit bootstrap binding classes and instead modify source Metaschema modules aligns with learnings from PR #567 that generated code improvements should be tracked at the code generator level. The regeneration instructions are clear.
160-177: Git Worktrees requirement properly emphasized as MANDATORY.The mandatory worktree policy with clear setup/cleanup instructions supports isolated development. This reflects best practices for parallel independent work and was reinforced in learnings (superpowers:using-git-worktrees skill).
2fbc4ea to
38a9bab
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
🤖 Fix all issues with AI agents
In @.claude/CLAUDE.md:
- Line 154: Replace the bare URL
"https://github.com/metaschema-framework/metaschema-java" on line 154 with
proper Markdown syntax to satisfy MD034; either wrap it in angle brackets like
<https://github.com/metaschema-framework/metaschema-java> or convert it to a
link with text, e.g.
[metaschema-java](https://github.com/metaschema-framework/metaschema-java),
updating the .claude/CLAUDE.md content accordingly.
In @.claude/settings.json:
- Around line 1-22: Remove the invalid metaschema marketplace and its plugins:
delete the "metaschema-framework" entry under "extraKnownMarketplaces" and
remove the three enabled plugins "metaschema@metaschema-framework",
"metaschema-tools@metaschema-framework", and
"dev-metaschema@metaschema-framework" from "enabledPlugins" (or replace them
with valid repo names if you have alternatives); keep the existing
"superpowers-marketplace" and "superpowers@superpowers-marketplace" entries
intact so the configuration only references resolvable repositories.
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (4)
.claude/CLAUDE.md.claude/settings.json.gitignoreCLAUDE.md
💤 Files with no reviewable changes (1)
- CLAUDE.md
🧰 Additional context used
🧠 Learnings (12)
📓 Common learnings
Learnt from: david-waltermire
Repo: metaschema-framework/metaschema-java PR: 618
File: core/src/main/java/dev/metaschema/core/datatype/package-info.java:52-52
Timestamp: 2026-01-05T18:03:33.537Z
Learning: In metaschema-framework/metaschema-java, CLAUDE.md is the canonical coding-guidelines document and now specifies dev.metaschema.* as the Java package convention (updated in PR #618).
📚 Learning: 2025-12-17T13:27:43.679Z
Learnt from: CR
Repo: metaschema-framework/metaschema-java PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-17T13:27:43.679Z
Learning: Applies to **/*.{xmlbeans,antlr} : Generated code in *.xmlbeans and *.antlr packages is excluded from Javadoc and style checks. Generated sources are placed in target/generated-sources/
Applied to files:
.gitignore
📚 Learning: 2025-12-17T13:27:43.679Z
Learnt from: CR
Repo: metaschema-framework/metaschema-java PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-17T13:27:43.679Z
Learning: Applies to core/metaschema/schema/xml/** : XMLBeans code is generated from XSD schemas in core/metaschema/schema/xml during Maven build. Generated sources are placed in target/generated-sources/
Applied to files:
.gitignore
📚 Learning: 2025-12-24T21:22:07.082Z
Learnt from: david-waltermire
Repo: metaschema-framework/metaschema-java PR: 567
File: metaschema-testing/src/main/java/gov/nist/secauto/metaschema/model/testing/testsuite/GenerationCase.java:74-80
Timestamp: 2025-12-24T21:22:07.082Z
Learning: Files in the package gov.nist.secauto.metaschema.model.testing.testsuite in metaschema-testing are generated binding classes created from Metaschema definitions. Documentation and style improvements for these files should be made at the code generator level (metaschema-maven-plugin) rather than by manually editing the generated code.
Applied to files:
.gitignore.claude/CLAUDE.md
📚 Learning: 2026-01-05T18:03:33.537Z
Learnt from: david-waltermire
Repo: metaschema-framework/metaschema-java PR: 618
File: core/src/main/java/dev/metaschema/core/datatype/package-info.java:52-52
Timestamp: 2026-01-05T18:03:33.537Z
Learning: In metaschema-framework/metaschema-java, CLAUDE.md is the canonical coding-guidelines document and now specifies dev.metaschema.* as the Java package convention (updated in PR #618).
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2025-12-24T21:21:56.361Z
Learnt from: david-waltermire
Repo: metaschema-framework/metaschema-java PR: 567
File: metaschema-testing/src/main/java/gov/nist/secauto/metaschema/model/testing/testsuite/Metaschema.java:41-47
Timestamp: 2025-12-24T21:21:56.361Z
Learning: In metaschema-testing, generated binding classes under gov.nist.secauto.metaschema.model.testing.testsuite are produced by metaschema-maven-plugin from YAML metaschema definitions. Javadoc issues in these generated classes should not be flagged for manual fixes; improvements are tracked and handled through code generator enhancements rather than manual edits to the generated source.
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2026-01-07T04:40:01.060Z
Learnt from: david-waltermire
Repo: metaschema-framework/metaschema-java PR: 623
File: .github/workflows/build.yml:8-14
Timestamp: 2026-01-07T04:40:01.060Z
Learning: In the metaschema-java repository, the build workflow intentionally includes `main` in the `pull_request.branches` trigger even though CONTRIBUTING.md requires PRs to target `develop`. This is a defensive design to provide feedback if someone accidentally targets main, rather than silent failure. The UPLOAD_SCAN_SARIF logic also needs main for security scan results.
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2025-12-24T21:21:40.208Z
Learnt from: david-waltermire
Repo: metaschema-framework/metaschema-java PR: 567
File: metaschema-testing/src/main/java/gov/nist/csrc/ns/metaschema/test_suite/_1_0/Metaschema.java:41-47
Timestamp: 2025-12-24T21:21:40.208Z
Learning: In metaschema-framework/metaschema-java, generated binding classes in package gov.nist.csrc.ns.metaschema.test_suite._1_0 (and similar generated binding packages) are pre-generated by metaschema-maven-plugin and checked into source control. Javadoc coverage issues in these generated classes should be tracked as code generator improvements rather than file-level issues, and improvements are deferred to generator enhancements.
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2025-12-17T13:27:43.679Z
Learnt from: CR
Repo: metaschema-framework/metaschema-java PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-17T13:27:43.679Z
Learning: Use SpotBugs, PMD, Checkstyle, and Jacoco for static analysis. Project enforces Checkstyle code style, PMD source analysis (fails on priority 2+ violations), SpotBugs bug detection (with spotbugs-exclude.xml exclusions), and Jacoco code coverage (target: 60% coverage)
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2025-12-17T13:27:43.679Z
Learnt from: CR
Repo: metaschema-framework/metaschema-java PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-17T13:27:43.679Z
Learning: Applies to **/*.java : All code changes must follow the Javadoc style guide (docs/javadoc-style-guide.md). New code requires 100% Javadoc coverage on public/protected members. Modified code must add/update Javadoc on any members touched. All Javadoc must include param, return, throws tags in the correct order (BLOCKING)
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2025-12-17T13:27:43.679Z
Learnt from: CR
Repo: metaschema-framework/metaschema-java PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-17T13:27:43.679Z
Learning: Applies to **/*.java : Follow Test-Driven Development (TDD) principles: write tests first before implementing functionality, verify tests fail with current implementation, implement minimal code to pass tests, then refactor while keeping tests green
Applied to files:
.claude/CLAUDE.md
📚 Learning: 2026-01-05T16:33:59.206Z
Learnt from: david-waltermire
Repo: metaschema-framework/metaschema-java PR: 0
File: :0-0
Timestamp: 2026-01-05T16:33:59.206Z
Learning: In metaschema-framework/metaschema-java, the core/metaschema submodule is owned by this project's maintainers; updates to it are coordinated within this repository, so no follow-up issues should be opened in external repositories for submodule changes.
Applied to files:
.claude/CLAUDE.md
🪛 markdownlint-cli2 (0.18.1)
.claude/CLAUDE.md
154-154: Bare URL used
(MD034, no-bare-urls)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: Website
- GitHub Check: Code
🔇 Additional comments (11)
.gitignore (1)
27-28: LGTM! Appropriate ignore pattern for Java compiler artifacts.The addition of
javac.*.argsto.gitignorecorrectly excludes compiler-generated argument files from version control..claude/CLAUDE.md (10)
1-10: LGTM! Clear overview with appropriate XPath references.The Overview section effectively introduces the framework and correctly references XPath 3.1 specifications using proper markdown link syntax.
11-49: LGTM! Comprehensive build and quality commands.The build commands section provides clear, practical examples for common development tasks. The emphasis on running
mvn install -PCI -Preleasebefore pushing is appropriate.
51-59: LGTM! Static analysis configuration documented correctly.The static analysis section accurately describes the project's quality tools and enforcement policies, consistent with retrieved learnings about the project's static analysis setup.
60-100: LGTM! Architecture documentation is accurate.The project architecture section correctly documents the module hierarchy and package structure, including the
dev.metaschema.*convention established in PR #618.
101-122: LGTM! Bootstrap and regeneration guidance is accurate.The documentation correctly identifies bootstrap binding classes and provides clear regeneration instructions, aligning with learnings about generated code in metaschema-testing and databind modules.
124-137: LGTM! Testing requirements clearly documented.The testing section correctly emphasizes TDD principles and the requirement for 100% test passage, consistent with project conventions from retrieved learnings.
139-151: LGTM! Code style and Javadoc requirements are well-documented.The code style section accurately reflects the project's Java 11 target, package conventions, and strict Javadoc requirements. The reference to the
dev-metaschema:javadoc-style-guideskill appropriately delegates detailed guidance.
152-177: LGTM! Git workflow requirements are clear and comprehensive.The Git workflow section correctly emphasizes mandatory requirements (PRs from forks, targeting develop branch) and provides detailed git worktree instructions. The worktree approach prevents conflicts in the main checkout.
179-206: LGTM! PRD workflow provides clear structure for large initiatives.The PRD workflow section effectively documents the process for managing larger changes, including PR sizing guidance and verification requirements. The active/completed PRD tables provide helpful context.
207-247: LGTM! Available Skills section accurately documents enabled plugins.The skills documentation correctly reflects all four plugins enabled in
.claude/settings.json, providing comprehensive coverage of dev-metaschema, metaschema, metaschema-tools, and superpowers capabilities. The skill naming convention (plugin:skill-name) is consistent throughout.
0043be1
into
metaschema-framework:develop
Summary
dev-metaschema:javadoc-style-guideskillTest plan
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.