Skip to content

Contributing to Praetor

Thank you for contributing to Praetor! As the core governance and standardization platform for the CordanaLLM ecosystem, all contributions must adhere to High-Integrity Systems Standards (HISS).


Code of Conduct & Standards

All contributors are expected to uphold deterministic, high-integrity engineering practices: - Zero-warning tolerance across compiler, linter, and format checks. - 100% test coverage across public interface dimensions (Positive, Negative, Boundary). - All commits must include Developer Certificate of Origin (Signed-off-by: Your Name <email>).


Local Development & Verification

Before submitting any Pull Request, ensure local verification passes completely:

# 1. Run race-detected unit tests
go test -v -race ./...

# 2. Verify agent context synchronization
go run ./cmd/standardsctl compile-context --verify

# 3. Audit repository against declared HISS standards
go run ./cmd/standardsctl audit

# 4. Run all verification gates
make verify-all

Pull Request Lifecycle

  1. Feature Branch: Create a branch off main (e.g. feat/feature-name or fix/bug-name).
  2. Deterministic Checks:
  3. gofmt code formatting.
  4. REUSE 3.3 licensing compliance.
  5. AST complexity limits (McCabe $\le 10$, cognitive $\le 15$, function LOC $\le 75$).
  6. Receipt Generation:
  7. Run standardsctl gate run --path=. to verify the ephemeral worktree and generate an Ed25519 Exit-0 receipt.
  8. Pull Request Submission:
  9. Submit PR via GitHub. Direct pushes to main are declined by repository rules.
  10. Required status checks (Standards & Invariant Verification Gate, DCO 1.1 & REUSE Compliance Gate, Go Vulnerability & AST Security Scan) must pass before merge.