jackson-kotlin-serialization-specialist

Diagnose Kotlin and Jackson JSON serialization issues in Spring applications.

14|1|Updated Mar 6, 2026
One-click install
npx skills add https://github.com/kbrgnj/kotlin-backend-agent-skills --skill jackson-kotlin-serialization-specialist-kbrgnj
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: jackson-kotlin-serialization-specialist
Source: https://github.com/kbrgnj/kotlin-backend-agent-skills/tree/main/.agents/skills/jackson-kotlin-serialization-specialist
Command: npx skills add https://github.com/kbrgnj/kotlin-backend-agent-skills --skill jackson-kotlin-serialization-specialist-kbrgnj

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Diagnose and design Kotlin + Jackson JSON serialization and deserialization behavior in Spring applications to prevent wire-format drift and contract violations.

Core Features & Use Cases

  • Diagnostic checks for Kotlin DTOs, Jackson modules, and JavaTime handling
  • Guidance on constructor semantics, nullability, and default values for deserialization
  • Examples and prescriptions for polymorphic types, unknown properties, and PATCH semantics

Quick Start

Provide a failing JSON payload and the tool will diagnose serialization issues and propose Kotlin + Jackson fixes.

Frequently Asked Questions about jackson-kotlin-serialization-specialist

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
Why does Jackson fail to deserialize my Kotlin DTO with default parameters?

Jackson DTO deserialization fails when jackson-module-kotlin is missing or misconfigured, preventing Kotlin default parameter invocation. The specialist diagnoses constructor semantics, nullability, and module alignment to ensure correct deserialization behavior.

How do I distinguish null from absent fields for PATCH semantics in Spring Kotlin?

PATCH semantics require distinguishing null from absent fields by carefully handling Kotlin nullability and Jackson deserialization. The specialist designs custom serializers and nullability rules to prevent unintended overwrites and wire-format drift.

How do I fix date-time format drift during Jackson serialization in Kotlin?

Fixing date-time format drift requires aligning JavaTimeModule with your Jackson configuration in Spring. The specialist diagnoses date-time or enum format drifts and prescribes corrections to maintain consistent wire formats.

What's the best way to handle polymorphic payloads with Jackson in Kotlin?

Handling polymorphic payloads requires careful management of Kotlin type discriminators to avoid breaking API contracts. The specialist designs polymorphic type configurations and custom serializers to ensure correct deserialization.

Does Jackson work with Kotlin nullability without breaking API contracts?

Jackson works with Kotlin nullability when properly aligned with jackson-module-kotlin, JavaTimeModule, and custom serializers. The specialist diagnoses unknown properties and nullability behavior to prevent contract violations.

How do I diagnose unknown property failures during Kotlin Jackson deserialization?

Diagnosing unknown property failures involves checking Jackson module configuration and Kotlin DTO constructor semantics. The specialist provides examples and prescriptions for handling unknown properties and preventing deserialization exceptions.