Skip to content

docs: expand CONTRIBUTING.md with technical developer workflow#6

Draft
patty-chow wants to merge 1 commit into
mainfrom
docs/contributing-dev-workflow
Draft

docs: expand CONTRIBUTING.md with technical developer workflow#6
patty-chow wants to merge 1 commit into
mainfrom
docs/contributing-dev-workflow

Conversation

@patty-chow

Copy link
Copy Markdown
Collaborator

Summary

Adds a Developer Workflow section to CONTRIBUTING.md. The existing guide covered community process (asking questions, reporting issues, DCO, TSC governance) but gave contributors no technical onboarding. This fills that gap.

New content:

  • Prerequisites and the two supported setup paths
  • Option A: Dev Container — VS Code .devcontainer/ workflow, default PG 16, forwarded ports (9712 Postgres, 10260 gateway)
  • Option B: Build from source — pointer to docs/build-from-source.md
  • Repository layout — annotated tree + component-relationship diagram (gateway → API → core → Postgres)
  • Building the projectmake install-documentdb, per-component targets, cargo build, and the DEBUG=yes / PG_VERSION build flags
  • Running tests — C regression targets (check, check-minimal, check-extended-rum, check-isolation, check-valgrind), Rust gateway unit + integration tests, with a pointer to pg_documentdb_gw/CONTRIBUTING.md
  • Running functional tests — the run-functional-tests.sh PR gate (allowlist / single / full)
  • Adding a feature or fixing a bug — branch, code conventions per component, test, sign-off, PR

Existing community-process content is preserved verbatim. A Table of Contents was added for navigation.

Verification

Every command, make target, port, file path, and flag was checked against the repo tree (.devcontainer/devcontainer.json, the component Makefiles, scripts/, documentdb_tests/tests/, and run-functional-tests.sh).

Note on cross-links

This doc links to docs/build-from-source.md, which is delivered by a sibling docs PR (branch docs/build-from-source). Merge that PR first, or merge together, so the link resolves.

Checklist

  • DCO sign-off on commit
  • No code changes — docs only
  • Technical claims verified against the repo

Add a Developer Workflow section covering:
- Dev container setup (VS Code + .devcontainer) and Build-from-source pointer
- Repository layout with component relationships diagram
- Build instructions for C extensions and Rust gateway, incl. DEBUG flag
- Running C regression tests (check, check-minimal, check-extended-rum,
  check-isolation, check-valgrind)
- Running Rust gateway unit and integration tests
- Running the functional test gate (allowlist/single/full)
- Step-by-step guide for adding features and fixing bugs with
  C extension and Rust-specific conventions

Existing community process content (asking questions, reporting
issues, DCO, TSC) is preserved unchanged. Added a table of contents.

Signed-off-by: richardsimmonds <richardsimmonds314@gmail.com>
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