Skip to content

docs: deduplicate dev setup from README, revamp CONTRIBUTING with fairness policy and husky guidance#554

Merged
cameri merged 2 commits intomainfrom
copilot/revamp-contributing-workflow
Apr 21, 2026
Merged

docs: deduplicate dev setup from README, revamp CONTRIBUTING with fairness policy and husky guidance#554
cameri merged 2 commits intomainfrom
copilot/revamp-contributing-workflow

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 20, 2026

  • Identify bad commits: 690146b (empty "Initial plan") and 0aa0163 ("docs(changeset):" missing subject)
  • Create new branch copilot/revamp-contributing-workflow-v2 off current main tip (3c78e61)
  • Apply changeset file with correct commit message: docs(changeset): add empty changeset for docs-only PR
  • Apply CONTRIBUTING.md / README.md changes with correct commit message: docs: revamp CONTRIBUTING.md with fairness policy, dev setup, husky guidance, and deduplicate README
  • Push new branch

Copilot AI linked an issue Apr 20, 2026 that may be closed by this pull request
Copilot AI changed the title [WIP] Revamp CONTRIBUTING.md to clarify development workflow and policies docs: deduplicate dev setup from README, revamp CONTRIBUTING with fairness policy and husky guidance Apr 20, 2026
Copilot AI requested a review from cameri April 20, 2026 12:16
@cameri cameri marked this pull request as ready for review April 21, 2026 02:25
Copilot AI review requested due to automatic review settings April 21, 2026 02:25
@cameri
Copy link
Copy Markdown
Owner

cameri commented Apr 21, 2026

@copilot please rebase commits and fix messages with errors: 0aa0163 has a broken commit message and it's failing commitlint

Copy link
Copy Markdown

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 reorganizes contributor-facing documentation by moving duplicated development/testing guidance out of the README into CONTRIBUTING.md, and adds clearer contribution process expectations (issue assignment fairness, Husky hooks, and changeset rules).

Changes:

  • Added an “Issue Assignment & Fairness Policy” and consolidated dev setup/testing/load-testing guidance into CONTRIBUTING.md.
  • Simplified README.md by replacing duplicated dev/test/load-testing sections with a pointer to CONTRIBUTING.md.
  • Added an empty Changesets file to satisfy CI for a docs-only change.

Reviewed changes

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

File Description
README.md Removes a large duplicated dev/testing section and links contributors to CONTRIBUTING.md.
CONTRIBUTING.md Adds fairness policy and centralizes dev setup, testing, and load-testing instructions.
.changeset/sparkly-times-win.md Adds an empty changeset for a docs-only PR.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread CONTRIBUTING.md
Comment on lines +64 to +68

```
DB_URI="postgresql://postgres:postgres@localhost:5432/nostr_ts_relay_test"
DB_USER=postgres
```
Copy link

Copilot AI Apr 21, 2026

Choose a reason for hiding this comment

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

npm run db:migrate uses the Knex CLI + knexfile.js, which currently reads DATABASE_URI (not DB_URI). With the DB_URI example shown here, a contributor may run migrations against the wrong/default DB. Please adjust the docs to mention DATABASE_URI/DB_HOST variables for migrations, or otherwise align the examples with what Knex actually consumes.

Copilot uses AI. Check for mistakes.
Comment thread README.md
npm run test:unit:watch
```
For development environment setup, testing, linting, load testing, and contribution guidelines
(including the issue fairness policy, husky pre-commit hooks, and changeset workflow), see
Copy link

Copilot AI Apr 21, 2026

Choose a reason for hiding this comment

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

The README link text mentions "husky pre-commit hooks" in lowercase. Elsewhere in the repo (and in CONTRIBUTING just below) the tool name is capitalized as "Husky"; please keep this consistent.

Suggested change
(including the issue fairness policy, husky pre-commit hooks, and changeset workflow), see
(including the issue fairness policy, Husky pre-commit hooks, and changeset workflow), see

Copilot uses AI. Check for mistakes.
Comment thread README.md
Comment on lines +476 to +480
## Development & Contributing

Clone repository and enter directory:
```
git clone git@github.com:Cameri/nostream.git
cd nostream
```

Start:
```
./scripts/start
```

This will run in the foreground of the terminal until you stop it with Ctrl+C.

## Tests

### Linting and formatting (Biome)

Run code quality checks with Biome:

```
npm run lint
npm run lint:fix
npm run format
npm run format:check
```

### Unit tests

Open a terminal and change to the project's directory:
```
cd /path/to/nostream
```

Run unit tests with:

```
npm run test:unit
```

Or, run unit tests in watch mode:

```
npm run test:unit:watch
```
For development environment setup, testing, linting, load testing, and contribution guidelines
(including the issue fairness policy, husky pre-commit hooks, and changeset workflow), see
[CONTRIBUTING.md](CONTRIBUTING.md).
Copy link

Copilot AI Apr 21, 2026

Choose a reason for hiding this comment

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

This section now points readers to CONTRIBUTING.md for dev setup/testing, but the README still contains a long "Quick Start (Standalone)" block above with env vars, migrations, and npm run dev steps. That appears to conflict with the PR description about deduplicating dev setup from the README; consider removing or significantly shortening the standalone quick-start section in README (or reframing it as end-user runtime docs) to avoid duplication and mixed guidance.

Copilot uses AI. Check for mistakes.
Comment thread CONTRIBUTING.md
Comment on lines +49 to +51
> **Important:** Pre-commit hooks installed by Husky run linting and formatting checks on every
> commit. Do **not** bypass them with `git commit --no-verify`. If a hook fails, fix the reported
> issues before committing.
Copy link

Copilot AI Apr 21, 2026

Choose a reason for hiding this comment

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

The note about Husky pre-commit hooks says they run "linting and formatting checks on every commit", but the actual .husky/pre-commit hook runs npm run lint, npm run build:check, and npm run test:unit (no formatting check). Please update the text to match the enforced commands (or adjust the hook if formatting is intended).

Suggested change
> **Important:** Pre-commit hooks installed by Husky run linting and formatting checks on every
> commit. Do **not** bypass them with `git commit --no-verify`. If a hook fails, fix the reported
> issues before committing.
> **Important:** Pre-commit hooks installed by Husky run linting, build checks, and unit tests on
> every commit. Do **not** bypass them with `git commit --no-verify`. If a hook fails, fix the
> reported issues before committing.

Copilot uses AI. Check for mistakes.
Comment thread CONTRIBUTING.md
Comment on lines +63 to +78
Set the required environment variables (or copy `.env.example` to `.env` and edit it):

```
DB_URI="postgresql://postgres:postgres@localhost:5432/nostr_ts_relay_test"
DB_USER=postgres
```

or:

```
DB_HOST=localhost
DB_PORT=5432
DB_NAME=nostr_ts_relay
DB_USER=postgres
DB_PASSWORD=postgres
```
Copy link

Copilot AI Apr 21, 2026

Choose a reason for hiding this comment

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

The standalone dev env var examples use postgres credentials and a nostr_ts_relay_test database in the DB URI. This conflicts with .env.example and docker-compose.yml, which default to DB_USER/DB_PASSWORD/DB_NAME=nostr_ts_relay. To avoid confusing contributors, align these examples with .env.example (or make them clearly placeholders) and reserve the _test database naming for the integration-test section only.

Copilot uses AI. Check for mistakes.
Copilot stopped work on behalf of cameri due to an error April 21, 2026 02:36
Copilot AI requested a review from cameri April 21, 2026 02:36
Copilot stopped work on behalf of cameri due to an error April 21, 2026 02:46
@phoenix-server phoenix-server force-pushed the copilot/revamp-contributing-workflow branch from 0325b0a to 2ed271b Compare April 21, 2026 02:48
@phoenix-server phoenix-server force-pushed the copilot/revamp-contributing-workflow branch from c5e536f to 74a67d7 Compare April 21, 2026 03:03
@coveralls
Copy link
Copy Markdown
Collaborator

Coverage Status

coverage: 74.55%. remained the same — copilot/revamp-contributing-workflow into main

@cameri cameri merged commit 56652f3 into main Apr 21, 2026
14 checks passed
@cameri cameri deleted the copilot/revamp-contributing-workflow branch April 21, 2026 03:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CONTRIBUTING.md: deduplicate, clarify workflow, define fairness policy

4 participants