docs: restructure the agent guidelines into CLAUDE.md, CONVENTIONS.md and guidelines/ - #25488
Open
totally-not-ai[bot] wants to merge 2 commits into
Open
docs: restructure the agent guidelines into CLAUDE.md, CONVENTIONS.md and guidelines/#25488totally-not-ai[bot] wants to merge 2 commits into
totally-not-ai[bot] wants to merge 2 commits into
Conversation
Adopt the CLAUDE.md / CONVENTIONS.md / guidelines/ structure that the web-components and flow-components repositories already use. CLAUDE.md is trimmed to the operational essentials — repository overview, key modules, build commands — and points at the other two layers. CONVENTIONS.md is new and collects the checkable rules that were spread across CLAUDE.md and DESIGN_GUIDELINES.md, plus rules derived from recurring pull request review feedback (build plugin dependency scoping, extracting shared utilities instead of copying code between modules). DESIGN_GUIDELINES.md is split into topical chapters under guidelines/ with an overview.md index; nothing from it is dropped.
List every top-level Maven module in guidelines/repository.md instead of a subset, so that the map CLAUDE.md calls complete actually is. Point guidelines/design.md at the browser-integration, documenting and testing chapters that the material for a browser-API wrapper moved to. Repeat the four always-applicable rules (spotless, commit prefix, issue reference, no @SInCE) in CLAUDE.md and widen the CONVENTIONS.md read trigger to cover committing and opening a PR. Document the optional type(scope) commit prefix form that most of the history already uses.
|
Contributor
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



What & why
The repository had two overlapping agent-facing documents:
CLAUDE.md(operational + a grab-bag of coding rules) andDESIGN_GUIDELINES.md(design + browser integration + Javadoc + testing + commit hygiene). Rules were duplicated between them, some had drifted out of date, and there was no single place to look up "what must this change comply with".This adopts the same three-layer structure that the
web-componentsandflow-componentsrepositories already use:CLAUDE.mdCONVENTIONS.md(new)guidelines/Nothing from
DESIGN_GUIDELINES.mdis dropped — it is split by topic and moved (git tracks it as a rename toguidelines/design.md).CLAUDE.mdflow-routerwas listed as a module although routing lives inflow-server; addedflow-plugins.-pl <module> -aminstead ofcd <module> && mvn …, and the single-IT example names its module.Fixes #issuenumber, no@since) so they are visible without following a link, and widens theCONVENTIONS.mdread trigger to cover committing and opening a PR — not just authoring/reviewing.CONVENTIONS.md(new)Collects the checkable rules that were spread across both old files into sections: Public API, Nullability, Client-Side JavaScript, Build & Dependencies, Javadoc, Testing, Code Style, Commit & PR Hygiene. On top of the existing material it adds rules derived from recurring pull request review feedback:
compile/runtimedependencies of a build plugin module (they land in the plugin classloader for every build, including-Pproduction, break offline builds and show up in SBOM audits);providedis not a valid workaround because Maven only loadscompile/runtimeinto the plugin realm; derive provisioned tool versions from the project's own dependency tree.It also documents the optional
type(scope):commit prefix form (fix(flow-client):,chore(deps):) that most of the history already uses, and the!breaking-change marker.guidelines/overview.mdCONVENTIONS.mdandCLAUDE.md.repository.mdarchitecture.mddesign.mdDESIGN_GUIDELINES.md(renamed file).browser-integration.mdexecuteJsparameter passing, DOM event naming, signalling patterns, bootstrap-time data, capability detection.documenting.mdtesting.mdCross-links were tightened so the layers actually resolve:
design.mdnow points at thebrowser-integration.md,documenting.mdandtesting.mdchapters that the rest of the browser-API-wrapper material moved to,repository.mdpoints at the Build & Dependencies rules, and the module mapCLAUDE.mdcalls "full" now really is complete. No remaining references toDESIGN_GUIDELINES.mdare left in the repository.Notes for reviewers
CONVENTIONS.md; the reasoning behind it belongs in aguidelines/chapter.