qzl
2cdf075e92
feat: 添加用户行为分析功能
2026-04-01 18:35:32 +08:00
qzl
19aa33a609
fix: correct test failures and error propagation
...
- Add CacheScope provider in UserProfileCacheRepository tests
- Remove catch blocks that swallowed errors in _loadHistory/_loadMoreHistory
- Errors now properly propagate to switchUser() caller
2026-04-01 15:11:49 +08:00
qzl
63d225c567
feat(logging): add logging to auth feature
2026-04-01 14:28:30 +08:00
zl-q
60318b7aaa
chore: 更新国际化翻译及 UI 组件优化
2026-03-30 09:07:30 +08:00
zl-q
4db9a13bfe
refactor(apps): 重构数据层目录结构并新增启动预热编排器
2026-03-29 20:26:30 +08:00
qzl
ae29a8209b
refactor(apps): 主题系统迁移至 ColorScheme + 扩展架构并支持 Dark Mode
2026-03-27 19:07:39 +08:00
qzl
c592cc7854
feat(apps): 重构 UI 架构为 presentation 层并新增 l10n 国际化支持
2026-03-27 14:05:03 +08:00
qzl
d22ded21f8
refactor: 重构 schemas 结构,统一枚举定义
2026-03-25 12:36:31 +08:00
qzl
fcf98b1142
feat(apps): refine login consent and calendar day/month UX
2026-03-20 19:00:24 +08:00
zl-q
d574128815
feat: 实现日历提醒 in-app fallback 机制及通知服务重构
2026-03-20 01:30:34 +08:00
qzl
0661016827
feat(auth): transition from email to phone-based OTP authentication
...
- Replace Email+Password login with Phone+OTP flow
- Remove RegisterCubit and registration screens (email verification)
- Remove ResetPasswordCubit and reset password screens
- Add phone normalization and international dial code support
- Update LoginCubit with sendCode/resend cooldown logic
- Add new widgets: phone prefix selector, confirm sheet
- Update all auth API endpoints: /otp/send, /phone-session
- Update form inputs: Email -> Phone with E.164 validation
- Update tests for new auth flow
2026-03-19 18:42:05 +08:00
zl-q
29a4ea5294
feat(apps): 更新消息邀请详情和认证流程路由
2026-03-19 00:51:58 +08:00
qzl
b34697660d
feat: 实现 Auth 全局状态机与 401 统一处理机制
...
- 新增 AuthSessionInvalidated 事件处理 token 失效场景
- ApiInterceptor 新增 authFailureCallback 单飞机制
- AuthBloc 区分 manual logout 与 auto expiry 语义
- 新增 startup recovery fallback 防止启动卡死
feat: 重构 Calendar DayWeek 视图事件布局引擎
- 新增 DayEventLayoutEngine 解耦事件计算与渲染
- 新增 DayTimelineMetrics 统一时间轴常量
- 新增 DayViewScale 支持捏合缩放
feat: 新增 Settings 页面共享 UI 组件
- 新增 BackTitlePageHeader 统一页面 header
- 新增 DetailHeaderActionMenu 统一操作菜单
- 新增 DestructiveActionSheet 统一删除确认
- 新增 AppToggleSwitch 统一开关组件
feat: Chat UI Schema 支持导航操作
- 支持 navigation 类型 action 触发内部路由跳转
- 新增路径验证与参数处理
chore: 更新相关测试覆盖 auth 失效路径
2026-03-18 13:35:25 +08:00
qzl
19981964fb
refactor: 移除 LiteLLM proxy 架构,后端直连 Provider API
...
- 移除 backend/scripts/build_litellm_proxy_config.py
- 简化 LiteLLMService,移除 run_completion_with_cost 方法
- AgentScopeRunner 改为从 LlmFactory 获取 api_base 和 api_key
- 部署配置移除 litellm/litellm-config-job 服务
- Flutter 新增 AuthBootScreen 引导页
- Android 添加通知权限 (POST_NOTIFICATIONS, RECEIVE_BOOT_COMPLETED, SCHEDULE_EXACT_ALARM)
- 优化 LocalNotificationService 调度失败 fallback
- 更新 manifest.json (version 3)
2026-03-17 18:05:49 +08:00
qzl
a10a2db27a
feat: 添加视觉设计语言系统并重构认证页面UI
...
- 新增 visual_design_language.md 设计规范文档
- 新增 auth 设计 tokens (authBackground, authCard, authInput, feedback 系列等)
- 重构登录/注册/验证码/重置密码页面为新设计系统
- 新增 AuthHeroHeader, AuthSurfaceCard, AuthSection, AuthField, PasswordField 组件
- 重构 AppBanner 和 Toast 支持多类型配置 (info/success/warning/error)
- 后端 AgentScope: 重整 schemas/prompts/tools 作用域, 新增协议文档
- 更新 AGENTS.md 集成视觉设计语言约束
2026-03-13 14:10:13 +08:00
qzl
01c36eb32e
refactor: 移除前端 Mock API,新增共享组件,优化认证流程
...
- 删除 mock_api_client、mock_calendar_service、mock_history_service
- 新增 fixed_length_code_input、link_button、message_composer 共享组件
- 优化登录/注册/密码重置页面使用新组件
- 简化 injection.dart 移除 mock 分支
- 更新 env.dart 配置(BACKEND_URL 替换 API_URL)
- 后端 agentscope 工具和测试更新
- 重构 AGENTS.md 文档结构
- 新增 deploy/ 目录和 protocol 文档
2026-03-12 16:41:45 +08:00
qzl
18db6c50e7
fix(redis): 修复 Redis 流读取兼容性问题
...
- 支持 bytes 和 str 类型的 entry_id
- 支持 list 类型响应格式
- 优化 payload 解码处理
2026-03-11 21:33:25 +08:00
qzl
e20e7d2a02
feat: 增强日历功能并集成 AgentScope 代理服务
2026-03-11 15:28:29 +08:00
qzl
8dd48ec15b
feat: 重构认证页面使用 AuthPageScaffold 组件
2026-03-10 17:42:57 +08:00
zl-q
ec33bb0cee
refactor: 统一认证端点并删除冗余 profile 模块
...
- 合并 auth 端点: /verifications/verify → /verify, /verifications/resend → /resend
- 整合密码重置到 /verify 端点 (type=recovery)
- 移除未使用的 /auth/users 端点
- 添加 redirect URL 白名单验证 (site_url + additional_redirect_urls)
- 限流改用 Redis + IP 标识,替代内存锁
- 删除 v1/profile 死代码模块
- 更新前端 auth_api 适配新端点
- 添加 supabase site_url 和 additional_redirect_urls 配置
2026-03-07 14:55:00 +08:00
qzl
5e169251fe
refactor(apps): simplify API layer by removing redundant wrapper classes
...
- Remove ApiClientWrapper and MockApiClientWrapper
- Simplify IApiClient interface
- Update dependency injection configuration
- Optimize calendar service and AG-UI chat models
2026-03-03 10:12:46 +08:00
qzl
e4e995854d
feat: 实现密码重置功能与用户搜索API,优化注册登录流程
...
- 新增忘记密码页面与重置密码确认流程(前端+后端)
- 修复注册验证码页登录跳转路由
- 新增用户搜索API(按邮箱查询)
- 简化infra脚本,统一为app.sh
- 补充密码重置与用户API测试覆盖
- 更新runtime文档与AGENTS配置
2026-02-27 15:22:42 +08:00
qzl
d635d9a5e0
refactor(frontend): adapt to RESTful API routes
2026-02-26 14:28:58 +08:00
qzl
cc7a70d793
fix(auth): correct resend response type and improve error messages
2026-02-26 12:13:50 +08:00
qzl
11666e6492
fix(auth): validation toast and rate limit adjustment
2026-02-26 12:07:40 +08:00
qzl
56bee56415
fix(auth): fixed width resend button with border
2026-02-26 11:59:22 +08:00
qzl
76620cde6f
style(auth): simplify resend button to text link style
2026-02-26 11:53:06 +08:00
qzl
d50a1a0f8e
fix(auth): show validation error toast on register form
2026-02-26 11:40:49 +08:00
qzl
b80b9e795d
fix(auth): allow immediate resend on first send failure
2026-02-26 11:31:35 +08:00
qzl
a6fbf70ad5
fix(auth): reset state properly in sendCodeSilently
2026-02-26 11:28:33 +08:00
qzl
4f9889bb3f
fix(auth): set failure status on sendCodeSilently error
2026-02-26 11:25:51 +08:00
qzl
656b2a1793
fix(auth): improve error toast trigger condition
2026-02-26 11:18:56 +08:00
qzl
74dc44b0b0
feat(auth): add toast feedback for code sending
2026-02-26 11:15:49 +08:00
qzl
8235ac5cd9
fix(auth): improve resendCode with status tracking and return value
2026-02-26 11:12:04 +08:00
qzl
d1e224ece4
fix(auth): reset countdown after resend and add sending state
2026-02-26 11:06:16 +08:00
qzl
25b8a2b569
feat(auth): improve resend button style with countdown
2026-02-26 11:02:30 +08:00
qzl
1f253c54e9
feat(auth): add countdown timer for resend button
2026-02-26 10:58:29 +08:00
qzl
deba6cc435
fix(auth): add navigation debounce for register next button
2026-02-26 10:52:44 +08:00
qzl
8f8b6ac263
feat(auth): optimistic navigation to verification screen
2026-02-26 10:48:48 +08:00
qzl
8e8bcfa4f5
fix(auth): prevent concurrent sendCodeSilently and add edge case tests
2026-02-26 10:46:16 +08:00
qzl
175da2a8b7
feat(auth): add sendCodeSilently with isSending state
2026-02-26 10:37:02 +08:00
qzl
e20b1905cb
fix(apps): consolidate FormzInput validators and fix login screen
...
- Move FormzInput validators to core/form_inputs/form_inputs.dart
- Fix login_screen.dart syntax error (missing 'class' keyword)
- Remove unused _isLoading field
- Fix unnecessary const keywords
- Update login_cubit and register_cubit imports
- Remove duplicate FormzInput definitions from register_cubit
- Add Toast and Banner UI feedback system
- Remove legacy login/register screens (login_code, login_email, login_password, register_step2)
- Remove unused warning_banner widget
- Update tests for new error messages and DI setup
2026-02-25 18:00:02 +08:00
qzl
8c1dfa9987
feat(apps): integrate auth cubits with register and login screens
2026-02-25 15:21:26 +08:00
qzl
c9195b81b6
feat(apps): add LoginCubit for login form
2026-02-25 15:09:29 +08:00
qzl
89d2722241
feat(apps): add RegisterCubit for signup form
2026-02-25 15:05:29 +08:00
qzl
9b51c8b293
feat(apps): add AuthBloc for global auth state
2026-02-25 14:59:20 +08:00
qzl
b00cfc80ab
feat(apps): add auth repository
2026-02-25 14:51:21 +08:00
qzl
bfec6ffd7d
feat(apps): add auth data models
2026-02-25 14:45:08 +08:00
qzl
02e5e52e1f
fix: add navigation links and account screen
...
- Fix empty onPressed handlers in login/home screens
- Add todo/calendar toggle navigation in bottom dock
- Fix message invite detail path (/messages/invites/:id)
- Add account screen with logout/switch account dialogs
- Add /settings/account route
2026-02-25 12:06:14 +08:00
qzl
4fb90de1f5
feat(flutter): add auth module with router and screens
...
- Add app_router.dart with auth routes (login, register)
- Update main.dart with MaterialApp.router
- Add 5 auth screens:
- LoginEmailScreen with email validation
- LoginPasswordScreen with password visibility toggle
- LoginCodeScreen with verification code input
- RegisterScreen with step indicator
- RegisterStep2Screen with password/code/invite inputs
2026-02-25 10:57:43 +08:00