Commit Graph

8 Commits

Author SHA1 Message Date
011f7be20f stuff 2026-02-03 10:20:43 +03:00
007d700a8e feat: auto-transition users from NO_MORE_SCENARIOS to FIRST_REPLICA
При загрузке нового сценария пользователи в состоянии NO_MORE_SCENARIOS
теперь автоматически переходят в FIRST_REPLICA с выводом первой реплики,
вместо получения сообщения "используйте /start".
2026-02-02 23:02:15 +03:00
0ae290c81f fix: add safe_edit_message to prevent BadRequest errors
Добавлена helper-функция safe_edit_message, которая игнорирует ошибку
'Message is not modified' при повторном редактировании сообщений с тем же
содержимым. Все обработчики удаления сценариев используют эту функцию.
2026-02-02 23:01:05 +03:00
d0445d4480 Удаление сценариев 2026-02-02 22:57:27 +03:00
fc3f438cbf chore: add ruff and ty, fix linting
- Add ruff (line-length 88) and ty to dev dependencies
- Fix all ruff linting errors
- Configure ty to ignore nullable type warnings
- Update AGENTS.md with linting instructions
2026-02-02 21:43:08 +03:00
52dce1b2b8 feat: add polish and fallback handlers
- Add fallback handler for unexpected text messages
- Remove unused require_states alias
- Update TASK.md - all stages complete
2026-02-02 21:31:51 +03:00
613e492b2d refactor: extract common handler logic into decorators
- Add @answer_callback for auto-answering callback queries
- Add @with_user_and_session for injecting user/session
- Add @require_state for state validation
- Reduce handlers.py from ~850 to ~540 lines
2026-02-02 21:29:30 +03:00
8fecb3d543 feat: add FSM handlers and admin interface
- Add all user FSM states (INTRO through CONFIRM_SAVE)
- Add replica re-recording by number (ASK_REPLICA_NUMBER, REPEAT_REPLICA)
- Add admin interface with stats and scenario upload
- Add voice message handling and storage
2026-02-02 21:25:19 +03:00