feat: add subject validation and length checking
Add buildAndValidateSubject function to construct commit subjects in
conventional commit format and validate they don't exceed 50 characters.
Truncated subjects show exceeding portion with ellipsis in error output.
Implements: bug-5b35298
Co-authored-by: Crush <crush@charm.land>