Skip to content

refactor(core): move Android bridge out of lib.rs #134

Description

@xodapi

Почему это важно

src/lib.rs одновременно экспортирует core API, общие модели, Android bridge, notification/vibration state and tests. Для зрелой архитектуры core должен оставаться платформенно-нейтральным, а Android bridge должен жить отдельно за cfg.

Что сделать

  • Вынести Android-specific bridge/UI glue из src/lib.rs в отдельный модуль, например src/android.rs или src/platform/android.rs.
  • Оставить core models (AgentPulse, AgentBurnDetector, summaries, API helpers) доступными без Android feature.
  • Не менять Android package, JNI exports or Slint behavior.

Acceptance Criteria

  • src/lib.rs заметно короче и в основном содержит exports/core wiring.
  • Android-only код защищён #[cfg(all(target_os = "android", feature = "android-gui"))].
  • Android APK build не ломается.
  • cargo test --locked, cargo clippy --all-targets --features gui -- -D warnings, cargo fmt --check проходят.

Что нельзя трогать

  • Cargo.toml version
  • Android package id
  • API JSON output format
  • .env files
  • SUBMISSION.ru.md

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

agentГотово к выполнению агентомguiИзменения в Slint GUIzone:androidAndroid-specific build, permissions, bridge, APKzone:coreCore library and shared logic

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions