Skip to main content

ucx-development

Develop, build, and test UCX code. Use when asked to change UCX internals, compile UCX, run UCX tests, or report verification coverage.

Quellinformationen

Repository
openucx/ucx
Letzte Quellaktivität
17. Mai 2026 um 10:13
Erkannte Sprache von SKILL.md
Englisch
Sterne
1.734
Forks
624

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
ucx-development
description
Develop, build, and test UCX code. Use when asked to change UCX internals, compile UCX, run UCX tests, or report verification coverage.
# UCX Development ## Overview Use this skill for changing UCX itself. Durable code rules live in `AGENTS.md` files and project docs; this skill defines the end-to-end development workflow, including build and test commands. ## Required Reading Before editing or judging code: - Follow the `AGENTS.md` discovery rule from the root guide. - Read `docs/CodeStyle.md`, `docs/LoggingStyle.md`, or `docs/OptimizationStyle.md` when the change touches style, logging, or performance-sensitive code. - Read `REVIEW.md` when matching UCX reviewer expectations matters. ## Edit Workflow 1. Identify the owning subtree and nearby implementation pattern before editing. 2. Apply the rules from the applicable `AGENTS.md` files and project docs. 3. Make the code or test change. 4. Build UCX or explain why the local environment cannot build it. 5. Run focused tests that cover the changed behavior. 6. Report the build/test commands used and any hardware, optional dependency, or coverage gaps. ## Build The two main helpers are `configure-devel` and `configure-release`: pick `configure-devel` for failure investigation, debug-oriented and feature work (logging, assertions, gtest, and valgrind enabled), `configure-release` for performance work (those checks disabled and optimized for speed). From a fresh checkout, create an out-of-source build: ```sh ./autogen.sh mkdir -p build-<flavor> # <flavor> is "devel" or "release" cd build-<flavor> ../contrib/configure-<flavor> --prefix=$PWD/install make -j$(nproc) make install ``` Run `autogen.sh` and configure once per build directory. For incremental builds, run `make -j$(nproc)` again from `build-<flavor>`; use `make clean` before a fresh rebuild when necessary. Prefer repository configure helpers over ad hoc flag sets. If a dependency or optional transport is unavailable, report the missing capability instead of editing around it. When build configuration details matter, inspect `autogen.sh`, `contrib/configure-devel`, `configure.ac`, and `config/m4`. ## Unit Tests From `build-devel`, run the C++ unit test target with: ```sh make -C test/gtest test ``` Use `make check` when broader automake test coverage is needed. ## Result Interpretation - Capture the command, failing test name, relevant log lines, and environment variables. - Distinguish test failures from unavailable optional dependencies or hardware. - Do not hide flakes behind broad reruns. If a rerun is useful, say whether the failure reproduced.
Auf GitHub ansehen