Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 15 additions & 1 deletion .github/copilot-instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ It uses extensively the thread-per-core model and asynchronous (coroutines, futu
- `tools/`: Development and helper scripts
- `tests/`: Test suites
- `conf/`: Configuration files
- `proto/`: Protobuf definitions for Redpanda services and APIs
- `.github/`, `.buildkite/`: CI/workflow automation
- **Documentation:** [Docs site](https://redpanda.com/documentation) and `docs/`.

Expand Down Expand Up @@ -96,6 +97,19 @@ It uses extensively the thread-per-core model and asynchronous (coroutines, futu

---

## Protobuf-Specific Instructions

### Protobuf Coding Guidelines

Follow the guidelines provided in `proto/redpanda/README.md` for basic Protobuf standards.

### Protobuf Build & Environment
- **Primary Protobuf code lives in `proto/`.**
- **Formatting:** `.clang-format` in the root directory is enforced. Always run `clang-format` before committing changes or submitting a PR:
```bash
bazel run //tools:clang_format
```

## C++-Specific Instructions

### C++ Build & Environment
Expand All @@ -105,7 +119,7 @@ It uses extensively the thread-per-core model and asynchronous (coroutines, futu
- **Compiler Standard:** C++23 is required. Some SDK components (e.g., `src/transform-sdk/cpp/`) use C++23 and specific flags like `-Wall`, `-fno-exceptions`, and for some targets, `-stdlib=libc++`.
- **Sanitizers:** Some components and test builds use sanitizers (address, leak, undefined) via `-fsanitize=address,leak,undefined` for both compile and link.
- **Suppression Files:** Leak, undefined, and other sanitizer suppressions can be found in the root as `lsan_suppressions.txt`, `ubsan_suppressions.txt`.
- **C++ Linting:** `.clang-format` and `.clang-tidy` in the root directory are enforced. Always run formatting tools before submitting a PR:
- **C++ Linting:** `.clang-format` and `.clang-tidy` in the root directory are enforced. Always run `clang-format` before committing changes or submitting a PR:
```bash
bazel run //tools:clang_format
```
Expand Down