Skip to content

v0.10.1 - Doctor Module Field Naming Refinement (2025-12-27)

What Changed?

This patch release refines field naming in the doctor module for better consistency and clarity. The DeviceInfo dataclass now uses status and uptime_ms field names that align with device response fields and make flat output more readable.


What's Different from the Last Version?

🔧 Changed

  • DeviceInfo Fields: Renamed device_statusstatus and uptimeuptime_ms
  • Flat output: device_device_statusdevice_status (removes redundant prefix)
  • Flat output: device_uptimedevice_uptime_ms (clarifies unit)
  • Consistent with device response field names (status, uptime_ms)

Is It Safe to Upgrade?

Backward Compatible: No (minor breaking change in doctor module)

  • ⚠️ API Users: If you access DiagnosticInfo or DeviceInfo fields directly, update field names:
  • device_info.device_statusdevice_info.status
  • device_info.uptimedevice_info.uptime_ms
  • CLI Users: No changes needed; output formats remain the same
  • Most Users: Doctor module was just introduced in v0.10.0, minimal impact expected

Installation

Quick Start

# Get the release
git checkout v0.10.1

# Setup
task env:setup

# Test the improved output
uv run kazunoko status --format json

Tests Passed

  • ✅ Builds without errors
  • ✅ Works with real device (/dev/cu.usbserial-110)
  • ✅ Works with mock device (--mock)
  • ✅ All output formats verified (table, json, jsonl, csv, ssv, tsv, ltsv)
  • ✅ Nested output verified (--use-raw)
  • ✅ Flat output verified (--use-flat)

Release Details

  • Date: 2025-12-27
  • Version: v0.10.1
  • Modified Files: src/kazunoko/doctor.py
  • Key Commits:
  • 824f877: refactor(doctor): rename DeviceInfo.uptime to uptime_ms
  • 4e19113: refactor(doctor): rename DeviceInfo.device_status to status
  • 4d8e7ba: docs: add API documentation for doctor module

Migration Guide

If you're using the doctor module API directly:

Before (v0.10.0):

device_info = DeviceInfo.collect(device)
print(device_info.device_status)  # "ok"
print(device_info.uptime)  # 123456

After (v0.10.1):

device_info = DeviceInfo.collect(device)
print(device_info.status)  # "ok"
print(device_info.uptime_ms)  # 123456

Next Steps

Future improvements for the doctor module:

  • Add network connectivity diagnostics
  • Include disk space and memory usage
  • Provide diagnostic recommendations and fixes
  • Export diagnostics in additional formats (markdown, HTML)