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.
-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.
make test
The repository also references Valgrind verification during testing.
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.
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