- 
          
 - 
                Notifications
    
You must be signed in to change notification settings  - Fork 73
 
Description
Important Notice
Thank you for opening an issue! Please note that, as outlined in the README, I currently only work on feature requests or bug fixes when sponsored. Balancing this project with professional and personal priorities means I have a very limited amount of effort I can divert to this project.
You must put in the work to address this issue, or it won't be addressed.
- I am willing to put in the work and submit a PR to resolve this issue.
 
Describe the bug
Custom types used with @Convert annotation in KSP code generation are not generating correct QueryDSL path types. Types implementing Comparable or extending Number generate SimplePath<T> instead of ComparablePath<T> or NumberPath<T>. This is inconsistent with Java APT code generation, which correctly identifies types based on their hierarchy.
To Reproduce
@Entity
class Invoice(
    @Id val id: UUID,
    @Convert(converter = YearMonthConverter::class)
    val month: YearMonth?,  // Generates SimplePath<YearMonth> instead of ComparablePath<YearMonth>
    @Convert(converter = MoneyConverter::class)
    val amount: Money?,      // Generates SimplePath<Money> instead of NumberPath<Money>
)
data class Money(val value: BigDecimal) : Number(), Comparable<Money> {
    override fun compareTo(other: Money): Int = this.value.compareTo(other.value)
    // ... Number method implementations
}Expected behavior
- Types implementing 
Comparable→ComparablePath<T>(e.g.,YearMonth) - Types extending 
Numberand implementingComparable→NumberPath<T>(e.g.,Money) 
Type detection should be based on type hierarchy, not annotation presence.