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
9b9b8fcbdd
Merge branch 'feature/calendar-create-event' into dev
...
# Conflicts:
# apps/lib/features/calendar/ui/screens/calendar_event_detail_screen.dart
2026-03-02 17:29:21 +08:00
qzl
6fb527eb7b
fix: 修复日历事件详情页布局问题并添加底部输入框
...
- 修复 Row 中 Flexible 在无界宽度约束下的布局崩溃问题
- 用 Expanded 包裹内层 Row 提供有界宽度约束
- 添加底部输入框组件(+按钮、输入框、麦克风图标)
- 实现事件详情页动态数据展示
- 添加编辑和删除事件功能
- 添加事件不存在时的错误页面
2026-03-02 17:28:21 +08:00
qzl
ca1ce3d84a
docs: 添加 ag-ui 和 crewai 项目 skills 及更新文档
2026-03-02 17:02:09 +08:00
qzl
05f972e98a
refactor(apps): migrate hardcoded colors to AppColors tokens
...
- Replace Color(0xFFF8FAFC) with AppColors.surfaceSecondary (11 uses)
- Replace Color(0xFFF8FAFF) with AppColors.surfaceTertiary (9 uses)
- Replace Color(0xFFE2E8F0) with AppColors.borderSecondary (5 uses)
- Replace Color(0xFFDCE5F4) with AppColors.borderTertiary (5 uses)
- Replace Color(0xFFCFE1FB) with AppColors.borderQuaternary (5 uses)
- Replace Color(0xFFF59E0B) with AppColors.warning (4 uses)
- Replace Color(0xFFEAF3FF) with AppColors.surfaceInfo (4 uses)
- Replace Color(0xFF10B981) with AppColors.success (4 uses)
- Replace Color(0xFFEF4444) with AppColors.error (3 uses)
- Replace Color(0xFFF3F7FF) with AppColors.surfaceInfoLight (3 uses)
Files migrated:
- settings_screen.dart (7 colors migrated)
- contacts_screen.dart (3 colors migrated)
- calendar_event_detail_screen.dart (10 colors migrated)
- features_screen.dart (3 colors migrated)
- toast_type_config.dart (3 colors migrated)
- memory_screen.dart (4 colors migrated)
- account_screen.dart (3 colors migrated)
- add_contact_screen.dart (2 colors migrated)
Total: 37 hardcoded colors replaced with design tokens
Verification:
- flutter analyze: passed
- flutter test: passed
2026-03-02 16:34:33 +08:00
qzl
51ca78a37a
feat(tokens): add semantic color tokens for high-frequency colors
...
Add design tokens for frequently used hardcoded colors:
- Surface colors: surfaceSecondary (11 uses), surfaceTertiary (9 uses), surfaceInfo (4 uses), surfaceInfoLight (3 uses)
- Border colors: borderSecondary (5 uses), borderTertiary (5 uses), borderQuaternary (5 uses)
- Status colors: success (4 uses), warning (4 uses), error (3 uses)
- Text colors: textSecondary (4 uses)
These tokens will enable migration of hardcoded Color() values in pages.
2026-03-02 16:22:25 +08:00
qzl
e161ca22c4
refactor(chat): 重构聊天模块并集成历史消息加载功能
...
- 删除冗余的 chat_history_repository 和 home_mock_data
- 简化 ag_ui_event fromJson 使用工厂映射表
- 提取 ChatBloc 事件处理方法,添加 loadHistory/loadMoreHistory
- HomeScreen 集成 ChatBloc 实现历史消息加载和下拉刷新
- 更新 AGENTS.md 文档约束
2026-03-02 15:05:10 +08:00
qzl
87b8727ca4
docs: 添加 AG-UI 协议规则约束到 apps/AGENTS.md
2026-03-02 11:17:20 +08:00
qzl
99d540a18d
refactor: 重命名 agent_chat 模块为 agent
2026-03-02 11:13:20 +08:00
qzl
2ac56e5084
docs: 整理 runtime 系列文档,修正 API 端点名称
2026-03-02 10:55:46 +08:00
qzl
c3192a2431
feat(chat): add ChatBubble widget and mock data for home screen
...
- Add ChatBubble reusable widget for chat messages
- Add HomeMockData for chat list mock data
- Add HomeScreen widget tests
- Add AG-UI chat design and implementation plan docs
- Add friendship design docs
- Ignore backend/logs directory
2026-02-28 14:47:33 +08:00
qzl
d37677c533
fix(chat): fix ChatBloc event callback and test reliability
...
- Fix onEvent callback initialization in ChatBloc constructor
- Add MockAgUiService to isolate test from mock API behavior
- Remove unnecessary non-null assertions in tests
2026-02-28 14:41:21 +08:00
qzl
92781ddbbe
test(chat): add comprehensive unit tests
2026-02-28 13:49:51 +08:00
qzl
dd90f48c6f
feat(chat): integrate ChatBloc into HomeScreen
2026-02-28 13:43:22 +08:00
qzl
f82a8072a2
feat(chat): add ChatHistoryRepository with shared_preferences
2026-02-28 13:41:58 +08:00
qzl
e1973a9868
feat(chat): add ChatBloc for state management
2026-02-28 13:40:46 +08:00
qzl
d12f846cc0
feat(chat): add UiSchemaRenderer with design tokens
2026-02-28 13:38:58 +08:00
qzl
1fd33c57a7
feat(chat): add AgUiService with mock event stream
2026-02-28 13:38:26 +08:00
qzl
7e0e6457d7
feat(chat): add AiDecisionEngine with force trigger support
2026-02-28 13:36:59 +08:00
qzl
f0ae3b31e2
feat(chat): add ToolRegistry with validation
2026-02-28 13:36:30 +08:00
qzl
bc7bfa0692
feat(chat): add ChatListItem models in chat feature
2026-02-28 13:36:08 +08:00
qzl
e20b5e0b4f
feat(chat): add AG-UI event models with wire protocol mapping
2026-02-28 13:34:55 +08:00
qzl
4044b50cf9
feat(chat): add ToolResult and UiCard models
2026-02-28 13:33:08 +08:00
qzl
b90d1587c5
chore(chat): add json_annotation and shared_preferences deps
2026-02-28 13:29:47 +08:00
qzl
3d6ae7695f
refactor: 优化日历状态管理与首页输入框,添加API客户端抽象
2026-02-27 18:36:21 +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
d6113416c6
fix(auth): trigger AuthLoggedOut event on logout
2026-02-26 11:45:59 +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
d3bdb3ab4f
feat(apps): add router auth protection
2026-02-25 15:25:31 +08:00
qzl
8c1dfa9987
feat(apps): integrate auth cubits with register and login screens
2026-02-25 15:21:26 +08:00