Skip to content

Conversation

@tcheeric
Copy link
Owner

Summary

  • index all current NIP specifications in AGENTS
  • spell out type list and verb–object requirement for titles and commits
  • require pull requests to use the PR template in AGENTS and CONTRIBUTING

Testing

  • ⚠️ timeout 15 mvn -q verify (SLF4J: No SLF4J providers were found; build did not run)

Network Access

  • no network requests

https://chatgpt.com/codex/tasks/task_b_68a4d060692c833196c490b93709a438

@codecov-commenter
Copy link

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@tcheeric tcheeric merged commit ac6336c into develop Aug 19, 2025
3 of 4 checks passed
@tcheeric tcheeric deleted the codex/update-agents.md-with-pr-quality-gate-rules branch August 19, 2025 21:07
@tcheeric tcheeric requested a review from Copilot August 19, 2025 21:07
Copy link
Contributor

Copilot AI left a 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 (Nostr Implementation Possibilities) and establishes standardized PR template usage across the nostr-java project. The changes create comprehensive contribution guidelines and update the CI workflow to enforce stricter naming conventions.

  • Adds a complete index of 87 NIP specifications to AGENTS.md
  • Creates CONTRIBUTING.md with detailed development guidelines and commit/PR title formatting requirements
  • Updates the PR quality gate workflow to validate both PR titles and commit messages against the type: description format

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
CONTRIBUTING.md Creates new contributor guidelines with formatting rules and PR template requirements
AGENTS.md Adds comprehensive NIP index and updates PR guidelines with detailed type list and naming requirements
.github/workflows/pr-quality-gate.yml Updates CI workflow to validate commit messages and enforce stricter naming conventions

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 (e.g., `docs: update AGENTS`).
- PR titles and commit messages must follow the `type: description` naming format.
Copy link

Copilot AI Aug 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This line duplicates the formatting requirements already specified in lines 127-128. Consider removing this line to avoid redundancy and maintain consistency with the detailed specification below.

Suggested change
- PR titles and commit messages must follow the `type: description` naming format.

Copilot uses AI. Check for mistakes.
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+.+`;
Copy link

Copilot AI Aug 19, 2025

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 a capital letter followed by a non-whitespace character and then whitespace, but this doesn't properly validate the 'verb + object' requirement. For example, 'docs: A' would pass validation but isn't a proper verb + object phrase. Consider refining the pattern to better match the intended format.

Suggested change
const naming = `^(${types.join('|')}):\\s+[A-Z][^\\s]*\\s+.+`;
const naming = `^(${types.join('|')}):\\s+[A-Z][a-z]+\\s+[a-zA-Z0-9].+`;

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants