Install any skill in seconds. Free to start, no credit card required.
Get Started Free →nwave-ai/nw-fp-kotlin
Kotlin language-specific patterns with Arrow, Raise DSL, and coroutine-based effects
Passed 21 of 22 test cases with the skill, and 19 of 22 without it.
and 2 more in the full report
3 fixed18 passed either way0 still failing1 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 3 test cases the skill fixed. Same model, same prompt, with and without the skill.
I need to write property-based unit tests in Kotlin to verify that my custom domain serializer and deserializer preserve equality across random valid inputs. Could you write a test specification showing how to construct a custom generator for formatted domain objects and run the invariant check across generated test cases?
| Checked | Without skill | With skill |
|---|---|---|
| Uses Kotest FunSpec and forAll to express property-based assertions | Missed | Passed |
| Uses the arbitrary builder DSL with bind calls to construct custom Generators | Missed | Passed |
| Defines domain wrappers using @JvmInline value class | Missed | Passed |
The instructions your model reads when the skill loads.
Cross-references: fp-principles | fp-domain-modeling | property-based-testing
mkdir order-service && cd order-service
gradle init --type kotlin-application --dsl kotlin
# Add arrow-core, arrow-fx-coroutines, kotest-property to build.gradle.kts
./gradlew build && ./gradlew test
sealed interface PaymentMethod {
data class CreditCard(val cardNumber: String, val expiryDate: String) : PaymentMethod
data class BankTransfer(val accountNumber: String) : PaymentMethod
data object Cash : PaymentMethod
}
Exhaustive when expressions ensure all cases handled.
data class Customer(
val customerId: CustomerId,
val customerName: CustomerName,
val customerEmail: EmailAddress
)
test cases passed, vs 19 / 22 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.