-
Notifications
You must be signed in to change notification settings - Fork 26
docs: document NIPs and PR template usage #394
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
docs: document NIPs and PR template usage #394
Conversation
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.
Pull Request Overview
This PR documents NIPs and standardizes pull request practices by adding comprehensive guidelines for contributors and ensuring consistent commit/PR title formatting.
- Adds a complete index of current Nostr Implementation Possibilities (NIPs) across multiple documentation files
- Establishes standardized
type: descriptionformat for PR titles and commit messages with specific allowed types - Requires use of the pull request template with mandatory completion of all sections
Reviewed Changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| CONTRIBUTING.md | New contributor guidelines file with development standards and PR requirements |
| AGENTS.md | Added comprehensive NIP URL index and detailed PR quality gate requirements |
| .github/workflows/pr-quality-gate.yml | Updated workflow to validate both PR titles and commit messages against naming format |
| .github/copilot-instructions.md | Replicated NIP URL index for AI assistant reference |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| - PR summaries must reference modified files with file path citations (e.g. `F:path/to/file.java†L1-L2`). | ||
| - PR titles and commit messages must follow the `type: description` naming format. | ||
| - Allowed types: feat, fix, docs, refactor, test, chore, ci, build, perf, style. | ||
| - The description should be a concise verb + object phrase (e.g., `refactor: Refactor auth middleware to async`). |
Copilot
AI
Aug 19, 2025
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.
Same redundant example as in CONTRIBUTING.md. The description repeats 'refactor' unnecessarily. Consider using refactor: update auth middleware to async instead.
| - The description should be a concise verb + object phrase (e.g., `refactor: Refactor auth middleware to async`). | |
| - The description should be a concise verb + object phrase (e.g., `refactor: update auth middleware to async`). |
| const verbs = ['Add','Fix','Update','Refactor','Remove','Implement','Document','Docs','Test','Build','Improve','Feat','Enable','Disable','Migrate']; | ||
| const titleOK = new RegExp(`^(${verbs.join('|')})\\b.+`).test(title); | ||
| const types = ['feat','fix','docs','refactor','test','chore','ci','build','perf','style']; | ||
| const naming = `^(${types.join('|')}):\\s+[A-Z][^\\s]*\\s+.+`; |
Copilot
AI
Aug 19, 2025
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.
The regex pattern [A-Z][^\\s]*\\s+.+ requires the description to start with an uppercase letter followed by non-whitespace characters, then whitespace, then more content. This will reject valid descriptions like 'update auth middleware' (lowercase 'update'). The pattern should be ^(${types.join('|')}):\\s+[a-zA-Z].+ to allow lowercase verbs.
| const naming = `^(${types.join('|')}):\\s+[A-Z][^\\s]*\\s+.+`; | |
| const naming = `^(${types.join('|')}):\\s+[a-zA-Z].+`; |
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Co-authored-by: Copilot <[email protected]>
Summary
Testing
timeout 15 mvn -q verify(ZipException opening "nostr-java-util-0.2.2.jar": zip END header not found)Network Access
https://chatgpt.com/codex/tasks/task_b_68a4d060692c833196c490b93709a438