Skip to content

Latest commit

 

History

History
29 lines (23 loc) · 1.6 KB

File metadata and controls

29 lines (23 loc) · 1.6 KB

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

See CONTRIBUTING.md for build commands, testing, code style, and development workflow.

Workspace Structure

See README.md for the workspace layout and ARCH.md for some additional remark regarding important parts of LDK's architecture.

Development Rules

  • Always ensure tests pass before committing. To this end, you should run cargo +1.75.0 test for all affected crates and/or features. Upon completion of the full task you might prompt the user whether they want you to run the full CI tests via ./ci/ci-tests.sh. Note however that this script will run for a very long time, don't timeout when you do.
  • Run cargo +1.75.0 fmt --all before committing code changes. If rust 1.75.0 is not installed, skip this step.
  • Never add new dependencies unless explicitly requested.
  • Always disclose the use of any AI tools in commit messages and PR descriptions using a Co-Authored-By: line.
  • When adding new .rs files, always add the licensing header as found in other files.
  • When adding comments, do not refer to internal logic in other modules, instead make sure comments make sense in the context they're in without needing other context. Only add comments that aren't trivially obvious from the code.
  • Don't add comments or documentation which contrasts the previous state - code comments and documentation must only describe the current state of things.
  • Try to keep code DRY - if new code you add is duplicate with other code, deduplicate it.