Skip to content

Commit 20d6655

Browse files
Add contribution and maintenance docs (#34)
1 parent df2b79c commit 20d6655

5 files changed

Lines changed: 170 additions & 0 deletions

File tree

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,11 @@ labels: ["bug"]
66
assignees: []
77
---
88

9+
Review [`CONTRIBUTING.md`](../CONTRIBUTING.md) before filing.
10+
11+
Do not use this template for security vulnerabilities. Follow
12+
[`SECURITY.md`](../SECURITY.md) instead.
13+
914
## Summary
1015

1116
Describe the problem in one or two sentences.

.github/ISSUE_TEMPLATE/feature_request.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ labels: ["enhancement"]
66
assignees: []
77
---
88

9+
Review [`CONTRIBUTING.md`](../CONTRIBUTING.md) before filing.
10+
911
## Summary
1012

1113
Describe the capability you want to add.

.github/pull_request_template.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
Review [`CONTRIBUTING.md`](../CONTRIBUTING.md) for the branch workflow,
2+
required local checks, and when docs or changelog updates are expected.
3+
14
## Summary
25

36
- describe the user-visible change

CODE_OF_CONDUCT.md

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
# Code Of Conduct
2+
3+
This project is committed to a respectful, safe, and welcoming community for
4+
everyone.
5+
6+
## Our Commitment
7+
8+
Contributors, maintainers, and participants should be able to take part in the
9+
project without harassment or exclusion. We expect interactions in project
10+
spaces to stay professional, constructive, and considerate of people with
11+
different backgrounds, identities, and experience levels.
12+
13+
## Expected Behavior
14+
15+
Examples of behavior that support a healthy community include:
16+
17+
- showing empathy and patience
18+
- giving and receiving constructive feedback
19+
- assuming good intent while discussing technical disagreement
20+
- focusing criticism on ideas, code, and behavior rather than on people
21+
- respecting privacy and handling personal or sensitive information carefully
22+
23+
## Unacceptable Behavior
24+
25+
The following behavior is not acceptable in project spaces:
26+
27+
- harassment, threats, or personal attacks
28+
- insulting, demeaning, or discriminatory language
29+
- deliberate intimidation, trolling, or sustained disruption
30+
- publishing other people's private information without permission
31+
- sexualized language or imagery, or unwelcome sexual attention
32+
- encouraging or participating in retaliation against someone who reports a concern
33+
34+
## Maintainer Responsibilities
35+
36+
Maintainers are responsible for setting and enforcing community standards in
37+
issues, pull requests, discussions, release notes, and other project-managed
38+
spaces. They may remove, edit, or reject comments, commits, code, issues, and
39+
other contributions that violate this Code of Conduct.
40+
41+
## Scope
42+
43+
This Code of Conduct applies within project spaces and when someone is
44+
representing the project in public spaces. Project spaces include the GitHub
45+
repository, issue tracker, pull requests, review threads, and any maintainer-run
46+
communication channels used for project work.
47+
48+
## Reporting
49+
50+
Report Code of Conduct concerns to `andrewkoltsov@gmail.com`. Include links,
51+
screenshots, or other context that helps explain what happened.
52+
53+
Maintainers will review reports promptly and handle them as confidentially as
54+
practical. They may request more detail before deciding on a response.
55+
56+
## Enforcement
57+
58+
Possible responses include a private warning, content removal, temporary
59+
restrictions on participation, or a permanent ban from project spaces,
60+
depending on severity and pattern of behavior.
61+
62+
People who report or participate in an investigation in good faith must not be
63+
retaliated against.
64+
65+
## Attribution
66+
67+
This document is adapted from the Contributor Covenant, version 2.1:
68+
https://www.contributor-covenant.org/version/2/1/code_of_conduct/

CONTRIBUTING.md

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
# Contributing
2+
3+
This repository accepts focused improvements to the SDK, CLI, documentation, and
4+
repository automation.
5+
6+
## Before You Start
7+
8+
- Use the issue tracker for reproducible bugs, feature requests, and scoped maintenance work.
9+
- Do not open public issues for security-sensitive reports. Follow
10+
[`SECURITY.md`](./SECURITY.md) instead.
11+
- Keep changes small and reviewable. Split unrelated work into separate branches and pull requests.
12+
13+
## Branch Workflow
14+
15+
`master` is protected. Do not commit directly to `master`, and do not create new
16+
feature branches from a stale base branch.
17+
18+
For work that should merge directly into `master`:
19+
20+
```bash
21+
git checkout master
22+
git pull --ff-only origin master
23+
git worktree add ../librus-sdk-my-change -b codex/my-change master
24+
```
25+
26+
Use a short descriptive branch name. Prefer one worktree per active feature so
27+
parallel changes do not interfere with each other.
28+
29+
If a change intentionally depends on another in-flight feature branch, keep that
30+
dependency explicit and rebase or retarget the child branch once the parent
31+
lands.
32+
33+
## Local Setup And Required Checks
34+
35+
Install dependencies before running checks:
36+
37+
```bash
38+
npm install
39+
```
40+
41+
Run this full verification set before opening or updating a pull request unless
42+
you explain why a specific check was skipped:
43+
44+
```bash
45+
npm run lint
46+
npm run format:check
47+
npm run build
48+
npm test
49+
npm run pack:check
50+
```
51+
52+
You can run the CLI locally with:
53+
54+
```bash
55+
npm run cli -- <command>
56+
```
57+
58+
## Tests, Docs, And Changelog Expectations
59+
60+
- Behavior changes should include focused Vitest coverage near the closest existing suite in `test/`.
61+
- Avoid tests that require live credentials or network access unless the change explicitly calls for manual verification.
62+
- User-facing SDK or CLI changes should update [`README.md`](./README.md).
63+
- User-facing SDK or CLI changes should also update [`CHANGELOG.md`](./CHANGELOG.md).
64+
- Documentation-only or workflow-only changes do not require a new npm release.
65+
66+
## Pull Request Flow
67+
68+
- Keep each pull request focused on one mergeable line of work.
69+
- Describe the user-visible change and any notable internal refactors.
70+
- List the verification you ran and note any intentionally skipped checks.
71+
- Call out required documentation or changelog updates when they apply.
72+
- Link the relevant issue when the pull request addresses tracked work.
73+
74+
The repository includes a pull request template. Use it as the baseline summary
75+
for your change.
76+
77+
## Maintainer Response Expectations
78+
79+
Maintainer response times are best-effort, not guaranteed.
80+
81+
- Bug reports: maintainers aim to acknowledge or triage new reports within 7 calendar days. If a report is incomplete, maintainers may ask for reproduction details, versions, or sanitized logs before taking action.
82+
- Enhancement requests: maintainers aim to acknowledge or triage new requests within 7 calendar days and may ask follow-up questions to confirm the problem, scope, or proposed interface.
83+
- Pull requests: maintainers aim to review new pull requests, or at least leave a status update, within 7 calendar days.
84+
- Stale work: issues and pull requests with no activity for 30 days may be marked stale. If there is still no reply after 14 more days, maintainers may close them until new context is available.
85+
86+
Security-sensitive reports are handled outside the public issue tracker. Use
87+
[`SECURITY.md`](./SECURITY.md) for that process.
88+
89+
## Community Standards
90+
91+
By participating in this project, you agree to follow
92+
[`CODE_OF_CONDUCT.md`](./CODE_OF_CONDUCT.md).

0 commit comments

Comments
 (0)