---
id: TASK-20
title: Add logging feature parity with zync
status: Done
assignee: []
created_date: '2026-02-27 11:45'
updated_date: '2026-02-27 12:00'
labels: []
dependencies: []
references:
  - docs/zync/lua/zync/lib/utils.lua
  - docs/zync/lua/zync/api.lua
  - docs/zync/lua/zync/api/manager.lua
  - src/core/cmd.rs
  - src/core/config.rs
  - src/core/cli.rs
  - src/core/exec.rs
---

## Description

<!-- SECTION:DESCRIPTION:BEGIN -->
Implement user-facing logging in Kaze mirroring zync’s logging behavior and messages (command selection, profile status, build/flash/run/list actions, and error hints). Use zync reference in `docs/zync` to align message text and timing.
<!-- SECTION:DESCRIPTION:END -->

## Acceptance Criteria
<!-- AC:BEGIN -->
- [x] #1 Logging helper exists (with consistent prefix) and is used for command/status messages described in zync reference
- [x] #2 Command flow logs command selection/default and profile status once per run
- [x] #3 Command handlers log key actions (clean/configure/build/flash/run/list/boards/runners/profiles) with sysbuild-specific messages
- [x] #4 Tests updated/added to validate logging without flakiness
- [x] #5 Docs updated if CLI behavior changes or new logging configuration is added
<!-- AC:END -->

## Implementation Notes

<!-- SECTION:NOTES:BEGIN -->
Subtasks 20.1-20.4 completed: logging helper + env suppression, command selection/profile logs, command handler logs, and integration tests for logging output.
<!-- SECTION:NOTES:END -->

## Final Summary

<!-- SECTION:FINAL_SUMMARY:BEGIN -->
Implemented zync-style logging in Kaze with a `kaze: `-prefixed helper (env suppression via `KAZE_TESTING`/`KAZE_LOGS`), command selection/profile status logs, and command handler logs for clean/configure/build/flash/run/list/boards/runners/profiles (including sysbuild image resolution messages). Added integration test to verify logging output. Tests: `just check`, `just test`.
<!-- SECTION:FINAL_SUMMARY:END -->
