Document PR conventions and add structure validation#682
Merged
Conversation
The July restructurings (category consolidation, sap.ui.unified subpackage, generated ports moved out) left AGENTS.md §1/§2/§4 describing subpackages that no longer exist (00/08-00/13) and stale CTEXTs (01/05, 01/08, 00/02, 00/04, 00/07). Update the tree, the src/00 categorization rules and the overview-generation examples to the actual layout, rewrite the retired z2ui5_cl_util_xml section (§10) around _generic( ), and point the checklists at the generator instead of hand-edited catalogs. Add scripts/check-agents-structure.js (npm run check:agents) plus a check_docs workflow that compares the documented tree against the actual package.devc.xml CTEXTs on every PR, so the doc cannot drift silently again. Also add a PR-title rule: squash-merge titles must describe the change and never stay auto-generated branch names. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01F6ZLY4zwg3tr9P7z4tiR9d
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.
This is a documentation-and-tooling-only change: no samples or packages are moved. It syncs AGENTS.md with the package structure that already exists after the July reorganizations (#668, #676, #680), adds a CI guard so the two cannot drift apart again, and documents PR title conventions.
Summary
AGENTS.md still described the pre-reorganization layout: subpackages
00/08–00/13that no longer exist, the old CTEXTs of00/02,00/04,00/07,01/05and01/08, a missing01/06, and guidance built on the retiredz2ui5_cl_util_xmlclass. Since AGENTS.md is the single source of truth for agents working on this repo, the drift actively misdirected new contributions.Key changes
package.devc.xmlCTEXTs —01/05"framework - extended Controls (CC and Action)",01/06"framework - use cases",01/08/07sap.ui.unified, the merged00/02"only non-openui5 or higher UI5 1.71",00/04"use of z2ui5",00/07"experimental, TODO"; the removed categories00/08–00/13are gone. The note about machine-generated demo kit ports now points to the api repository instead of the former01/08/07marker convention.00/04rule (samples needing thez2ui5/Utilfrontend helper) and post-1.71 controls going to00/02.npm run launchpadinstead of hand-editing the catalogs.z2ui5_cl_util_xmlbuilder is replaced with_generic( )guidance inside thez2ui5_cl_xml_viewchain.scripts/check-agents-structure.js,npm run check:agents): Parses the §1 tree and compares it against the actualpackage.devc.xmlCTEXTs in both directions (missing on disk, undocumented, CTEXT mismatch) and fails on any drift..github/workflows/check_docs.yaml): Runs the validation on every PR and on pushes tostandard.Verification
node scripts/check-agents-structure.js→ 23 subpackages in sync (and fails correctly on an injected mismatch)npx abaplint→ 0 issues (703 files)npm run launchpad→ no diff (overview catalogs unchanged)🤖 Generated with Claude Code
https://claude.ai/code/session_01F6ZLY4zwg3tr9P7z4tiR9d