Skip to content

docs: add in-repository documentation in doc/ and link from README#1

Open
andybrown668 wants to merge 1 commit intomainfrom
andy/pr-docs-in-repo
Open

docs: add in-repository documentation in doc/ and link from README#1
andybrown668 wants to merge 1 commit intomainfrom
andy/pr-docs-in-repo

Conversation

@andybrown668
Copy link

Type of Change

  • New Feature
  • Bug Fix
  • Documentation
  • Performance Improvement
  • Test/CI
  • Refactor
  • Other:

Related Issues

N/A

Summary of Changes

Add in-repository documentation in doc/ and link from README.

  • Add doc/README.md (index), doc/architecture.md, doc/development.md, doc/configuration.md.
  • Update README.md to link to doc/ and to docs.rustfs.com.
  • Fix CONTRIBUTING.md development guide link to doc/development.md.

Checklist

  • I have read and followed the CONTRIBUTING.md guidelines
  • Passed make pre-commit
  • Added/updated necessary tests
  • Documentation updated (if needed)
  • CI/CD passed (if applicable)

Impact

  • Breaking change (compatibility)
  • Requires doc/config/deployment update
  • Other impact:

Additional Notes

Single-commit PR split from andy/documentation for easier review.

Verification: make pre-commit


Thank you for your contribution! Please ensure your PR follows the community standards (CODE_OF_CONDUCT.md) and sign the CLA if this is your first contribution.

Add doc/README.md (index), doc/architecture.md, doc/development.md,
doc/configuration.md. Update README.md to link to doc/ and to
docs.rustfs.com; fix CONTRIBUTING.md development guide link to
doc/development.md.

Creation metadata (extended description):
- Created by: Cursor AI assistant (Auto / agent router).
- Cost: Not available in this context; check Cursor session usage or
  billing for token/API cost of this edit session.

Made-with: Cursor
Copy link

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

Adds a new doc/ directory with in-repo documentation and updates top-level docs links so contributors/users can find architecture, development, and configuration guidance directly in the repository.

Changes:

  • Add in-repository documentation pages under doc/ (index + architecture/development/configuration).
  • Update README.md to link both in-repo docs and the external docs site.
  • Fix CONTRIBUTING.md to point to the new in-repo development guide.

Reviewed changes

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

Show a summary per file
File Description
doc/README.md Adds an index page for in-repo documentation.
doc/architecture.md Summarizes workspace layout and major crate/component areas.
doc/development.md Documents build/test/pre-commit workflows and relevant Make targets.
doc/configuration.md Documents env-var naming conventions and links to config sources.
README.md Adds links to doc/ alongside external docs.
CONTRIBUTING.md Updates development guide link to the new in-repo path.

## Environment Variables

- **Naming**: Use flat `RUSTFS_*` names (e.g. `RUSTFS_REGION`, `RUSTFS_ADDRESS`, `RUSTFS_VOLUMES`). Do not use module-segmented names like `RUSTFS_CONFIG_*`.
- **Constants and conventions**: See [crates/config/src/constants/](../crates/config/src/) and [crates/config/README.md](../crates/config/README.md) (including environment variable naming).
Copy link

Copilot AI Mar 11, 2026

Choose a reason for hiding this comment

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

The link text points to crates/config/src/constants/, but the actual link target is ../crates/config/src/, which doesn’t match. Update the URL to point at the src/constants/ directory (or adjust the link text) so readers land on the intended location.

Suggested change
- **Constants and conventions**: See [crates/config/src/constants/](../crates/config/src/) and [crates/config/README.md](../crates/config/README.md) (including environment variable naming).
- **Constants and conventions**: See [crates/config/src/constants/](../crates/config/src/constants/) and [crates/config/README.md](../crates/config/README.md) (including environment variable naming).

Copilot uses AI. Check for mistakes.
Comment on lines +38 to +42
- Format: `cargo fmt --all` and `cargo fmt --all --check`
- Lint: `cargo clippy --all-targets --all-features -- -D warnings`
- Check: `cargo check --all-targets`
- Tests: `cargo test --all-targets`

Copy link

Copilot AI Mar 11, 2026

Choose a reason for hiding this comment

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

In the “Typical steps” list, the test command is cargo test --all-targets, but make test in this repo excludes e2e_test and also runs doc tests. Consider updating this line to match the Makefile behavior so the documented manual steps align with the project’s quality gates.

Copilot uses AI. Check for mistakes.
Comment on lines +21 to +26
```bash
# Run tests
make test
# or
cargo test --all-targets
```
Copy link

Copilot AI Mar 11, 2026

Choose a reason for hiding this comment

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

The suggested manual test command (cargo test --all-targets) isn’t equivalent to make test in this repo: the Make target excludes the e2e_test crate and adds doc tests. Consider updating the “or” command to mirror the Makefile fallback (cargo test --workspace --exclude e2e_test … plus doc tests) to avoid surprising long-running or environment-dependent tests.

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

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants