diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..5c7d528 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,2 @@ +# Replace with real usernames or teams in your organization. +* @dimanikulin/dimanikulin diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000..a3f743d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,36 @@ +--- +name: Bug report +about: Report a reproducible bug in the project +title: "[BUG] " +labels: bug +assignees: "" +--- + +## Description + +A clear and concise description of the bug. + +## Steps to reproduce + +1. Go to '...' +2. Run '...' +3. See error + +## Expected behavior + +Describe what you expected to happen. + +## Actual behavior + +Describe what actually happened. + +## Environment + +- OS: +- Compiler: +- CMake version: +- Commit/branch: + +## Logs or screenshots + +Add any relevant output, stack traces, or screenshots. diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..550b34b --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,23 @@ +## Summary + +Describe what this PR changes and why. + +## Type of change + +- [ ] Bug fix +- [ ] New feature +- [ ] Refactor +- [ ] Documentation update +- [ ] CI/workflow update + +## Checklist + +- [ ] Code compiles locally +- [ ] Relevant tests added or updated +- [ ] Existing tests pass +- [ ] Documentation updated where needed +- [ ] No unrelated changes included + +## Validation + +List the commands or steps used to verify this change. diff --git a/.github/copilot/copilot-instructions.md b/.github/copilot/copilot-instructions.md new file mode 100644 index 0000000..acb642b --- /dev/null +++ b/.github/copilot/copilot-instructions.md @@ -0,0 +1,27 @@ +# Copilot Instructions + +This repository is a C++ CMake template project. + +## Project focus + +- Keep changes small, explicit, and testable. +- Preserve existing public interfaces unless the task asks for API changes. +- Prefer portable C++ and cross-platform CMake. + +## Coding rules + +- Follow the existing formatting style in the file being edited. +- Avoid broad refactors in bug-fix pull requests. +- Add or update unit tests in `tests/` when behavior changes. +- Keep includes minimal and avoid unused dependencies. + +## Build and test expectations + +- Configure with CMake and build with standard targets. +- Run unit tests via CTest when tests are affected. +- Keep warnings low and do not introduce obvious analyzer issues. + +## Documentation + +- Update README or code comments when behavior or usage changes. +- Keep docs concise and aligned with implementation. diff --git a/.github/workflows/copilot-review.yml b/.github/workflows/copilot-review.yml new file mode 100644 index 0000000..78bb082 --- /dev/null +++ b/.github/workflows/copilot-review.yml @@ -0,0 +1,30 @@ +name: Copilot Review + +on: + pull_request: + types: [opened, synchronize, reopened, ready_for_review] + +permissions: + contents: read + pull-requests: write + +jobs: + copilot-review: + if: github.event.pull_request.draft == false + runs-on: ubuntu-latest + steps: + - name: Post Copilot review marker + uses: actions/github-script@v7 + with: + script: | + const body = [ + 'Copilot review workflow is enabled for this pull request.', + '', + 'Use this workflow as an integration point for automated review tooling.' + ].join('\n'); + await github.rest.issues.createComment({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: context.issue.number, + body + });