Skip to content

refactor: extract composer state - #90

Merged
zatevakhin merged 1 commit into
refactor/componentsfrom
refactor/composer-state
Aug 21, 2026
Merged

refactor: extract composer state#90
zatevakhin merged 1 commit into
refactor/componentsfrom
refactor/composer-state

Conversation

@zatevakhin

Copy link
Copy Markdown
Collaborator

what changed

  • replace 11 flat composer fields on App with private ComposerState
  • move UTF-8 input editing, visual movement/layout, mention/file-index state, and slash completion into the owner
  • keep command construction, prompt effects, editor status, and cross-owner App::take_input coordination at their existing boundaries
  • preserve session reset survivors while clearing file-index and mention session data
  • delete src/input.rs after migrating its composer-local behavior

validation

  • cargo fmt --all -- --check
  • cargo check --all-targets --all-features
  • cargo clippy --all-targets --all-features -- -D warnings
  • cargo build --all-targets --all-features
  • cargo test --all-targets --all-features (860 passed, 0 failed, 0 ignored)
  • git diff --check

scope

  • base: refactor/components@8fb8257d25e4b120236315f5b5277f3a8f9b6c61
  • phase 4 ComposerState slice only
  • no phase 5 events/effects, other phase 4 owner, protocol, transport, command, config, or persistence changes
  • source review intentionally left for an independent reviewer

@zatevakhin
zatevakhin merged commit e1f984a into refactor/components Aug 21, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant