Commit Graph

7 Commits

Author SHA1 Message Date
horooko fda094dd44 feat(task-0005): implement splash delay and loading progress with reactive properties
- Add SplashState delay timer using BootSettings.SplashDurationSeconds with cancellation support
- Implement LoadState progress tracking via ReactiveProperty<float> with step-by-step updates
- Update LoadingUIViewModel to accept and expose Progress reactive property
- Connect LoadingUIView to ViewModel progress changes using UniRx subscriptions
- Add CompositeDisposable for proper cleanup of UI subscriptions in Release()
- Scale ProgressFill transform based on progress value for visual feedback

Выполнена задача TASK-0005 и реализованы splash и loading состояния:
- Добавлен таймер задержки в SplashState с использованием BootSettings.SplashDurationSeconds и поддержкой отмены
- Реализован трекинг прогресса в LoadState через ReactiveProperty<float> со пошаговыми обновлениями
- Обновлён LoadingUIViewModel для принятия и экспорта реактивного свойства Progress
- Подключён LoadingUIView к изменениям прогресса ViewModel с использованием подписок UniRx
- Добавлен CompositeDisposable для правильной очистки UI подписок в Release()
- Масштабирование ProgressFill на основе значения прогресса для визуальной обратной связи
2026-05-27 04:27:33 +07:00
horooko 55e271805b feat(task-0003): implement boot flow service with menu restart signal and state transitions
- Implement BootFlowService with IStatesController injection and RunFlowAsync logic
- Add Splash → Load → Menu loop with cancellation support in boot flow
- Create IMenuRestartSignal interface for menu restart coordination
- Implement MenuRestartSignal using UniTaskCompletionSource
- Update MenuState to wait for restart signal instead of completing immediately
- Register MenuRestartSignal as singleton in GameLifetimeScope DI container

Выполнена задача TASK-0003 и реализован поток загрузки:
- Реализован BootFlowService с внедрением IStatesController и логикой RunFlowAsync
- Добавлен цикл Splash → Load → Menu с поддержкой отмены в потоке загрузки
- Создан интерфейс IMenuRestartSignal для координации перезапуска меню
- Реализован MenuRestartSignal с использованием UniTaskCompletionSource
- Обновлён MenuState для ожидания сигнала перезапуска вместо немедленного завершения
- Зарегистрирован MenuRestartSignal как синглтон в DI контейнере GameLifetimeScope
2026-05-27 04:13:29 +07:00
horooko 2f745ba328 feat(task-0002): implement state controller interface with cancellation support and update task status
- Refactor BootStatesController to implement IStatesController interface
- Move state dictionary creation into constructor, remove static helper method
- Add CancellationToken validation before state transitions in StatesController
- Track current state presence with _hasCurrentState flag for safety
- Update TASK-0002 with Ready status

Выполнена задача TASK-0002 и обновлён статус:
- Рефакторинг BootStatesController для реализации интерфейса IStatesController
- Перемещено создание словаря состояний в конструктор, удалён статический вспомогательный метод
- Добавлена валидация CancellationToken перед переходами между состояниями в StatesController
- Добавлен флаг _hasCurrentState для отслеживания текущего состояния
- Обновлён статус TASK-0002 до Ready
2026-05-27 04:04:59 +07:00
horooko 535ca1a1b5 docs: add workflow, architecture, DI and async rules to agent guidelines
- Add task status management section (Ready → In Progress → Done/Blocked)
- Add architectural rules for C# classes and MonoBehaviour usage
- Add dependency injection rules for Unity components and services
- Add async cancellation and cleanup rules with UniTask and CancellationToken
- Add UI subscription management rules with CompositeDisposable

Обновлены правила работы агента в Agent.md:
- Добавлена секция управления статусами задач (Ready → In Progress → Done/Blocked)
- Добавлены архитектурные правила для C# классов и MonoBehaviour
- Добавлены правила внедрения зависимостей для Unity компонентов и сервисов
- Добавлены правила async отмены и очистки с UniTask и CancellationToken
- Добавлены правила управления подписками UI с CompositeDisposable
2026-05-27 04:00:25 +07:00
horooko 723657f2f7 docs: add task status tracking to agent workflow
- Add Status section requirement in Agent.md guidelines
- Define valid status values (Planned, Ready, In Progress, Done, Blocked)
- Update TASK-0001 with Ready status
- Add Status section to TASK_TEMPLATE.md with Planned default

Обновлена документация агента и отслеживание статусов задач:
- Добавлено требование раздела Статус в руководствах Agent.md
- Определены допустимые значения статусов (Planned, Ready, In Progress, Done, Blocked)
- Обновлён TASK-0001 со статусом Ready
- Добавлен раздел Статус в TASK_TEMPLATE.md с значением Planned по умолчанию
2026-05-27 03:58:04 +07:00
horooko 6c46b3043a feat: add agent tasks and update documentation
- Create 7 new task files (TASK-0001 through TASK-0007)
- Add task template file for future use
- Update Agent.md with project information
- Update TASK.md with task tracking
2026-05-27 03:36:25 +07:00
horooko b980566288 [Add] Agent Task 2026-05-27 03:26:56 +07:00