Contributing

Contribution guidelines for libcortlet-upgradesched development, testing, and repository standards.

Overview

Contributions should maintain the project's focus on:

  • execution stability
  • reduced synchronization overhead
  • predictable concurrent behavior
  • strict correctness standards
  • lightweight dependency-free development

Development Standards

The repository uses strict compiler enforcement during development.

Terminal

-std=c11 -Wall -Wextra -Werror

Code submitted to the project should compile cleanly under these requirements.

Testing

Changes should be validated using the repository testing workflow before submission.

Terminal

make test

The repository also references Valgrind verification during testing.

Terminal

valgrind

Testing should verify:

  • execution stability
  • memory correctness
  • consistent behavior during concurrent workloads

Concurrency Safety

Changes affecting concurrent execution paths should avoid introducing:

  • unnecessary synchronization overhead
  • deadlocks
  • dropped task conditions
  • segmentation faults
  • unstable execution behavior under load

Dependencies

The project maintains a dependency-free structure.

Terminal

External dependencies: none

New external runtime dependencies should not be introduced without clear justification.

Performance Awareness

Changes should preserve the project's focus on:

  • reduced thread thrashing
  • lower cache invalidation pressure
  • stable execution during stress workloads
  • efficient task coordination

Repository