Skip to content

Missing silent option and OptionResolver utility class #2

@micheledicosmo

Description

@micheledicosmo

Description

The current configuration system doesn't implement the silent option and lacks a reusable OptionResolver utility class as specified in CLAUDE.md.

Current Issue

  • No --silent option available in CLI
  • Configuration priority logic is duplicated across commands
  • No reusable component for handling configuration resolution
  • Commands don't follow DDD and Clean Code principles for configuration handling

Expected Behavior

According to CLAUDE.md:

  • Commands should have a --silent option that skips interactive prompts
  • All configuration resolution should use a reusable OptionResolver class
  • The OptionResolver should handle the complete priority chain and interactive logic

Tasks

  • Add --silent option to CLI
  • Create OptionResolver utility class in src/utils/option-resolver.ts
  • Implement priority chain resolution (CLI → ENV → Interactive → Project → User)
  • Handle silent mode logic (CASE 1: ask with default, CASE 2: use default or error)
  • Add input validation support
  • Refactor all commands to use OptionResolver
  • Add tests for OptionResolver class
  • Update CLAUDE.md with implementation details

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions