qzl
2c59fe5ee2
refactor: 统一 Redis 连接管理,改用 RedisService
...
- App 启动时初始化 RedisService,关闭时释放连接
- Celery worker 通过 worker_process_init 钩子初始化 Redis
- Agent 端点改用 RedisService 替代直接创建连接
- Celery task 改为 async def,使用统一连接
- 删除无用的 infra 模块和 core/http/models
- 日志脱敏,不记录 Redis 密码
- 初始化失败时 fail-fast
- 异常发布添加二级保护
2026-03-06 16:11:43 +08:00
qzl
c5ccfc4b88
feat(agent): add redis short-term user context cache and align tests
2026-03-06 12:02:10 +08:00
qzl
b486e78ff3
feat(agent): complete closed-loop runtime and pricing fallback
2026-03-05 15:34:37 +08:00
qzl
b02a322bf3
refactor: 移除 crewai agent 架构相关代码并更新 LLM 配置
2026-03-04 11:37:09 +08:00
qzl
30a4a1af5d
fix(agent): polish interrupt-resume flow for merge readiness
2026-03-03 17:26:04 +08:00
qzl
9aefb76c9e
fix(agent): address CRITICAL/HIGH security and validation issues
...
- Fix SSE JSON injection: use json.dumps for safe serialization
- Add tool validation to dispatcher with allowlist
- Add field validation to tool_registry with proper error handling
- Add run_id consistency check (409 on mismatch)
- Add RunAgentInput constraints: min_length, extra=forbid
- Fix crewai_flow: use Field(default_factory), prefix unused params
2026-03-03 16:25:43 +08:00
qzl
6a4c98bb63
feat(agent): close interrupt resume tool result loop
2026-03-03 16:00:11 +08:00
qzl
5bac134506
feat(agent): add sse run/resume endpoints with auth
2026-03-03 15:55:38 +08:00
qzl
99d540a18d
refactor: 重命名 agent_chat 模块为 agent
2026-03-02 11:13:20 +08:00
qzl
b417bc800a
Merge branch 'feature-calendar-sharing' into dev
2026-02-28 13:28:49 +08:00
qzl
173d91086f
test: add calendar sharing tests and update API docs
2026-02-28 12:28:45 +08:00
qzl
330589f702
Merge remote-tracking branch 'origin/feature/friendship' into dev
2026-02-28 12:22:18 +08:00
qzl
e0cd20f16e
test: add integration tests for friendship routes
2026-02-28 12:16:06 +08:00
qzl
50b38de488
feat: add schedule items CRUD API
...
- Add ScheduleItem Pydantic schemas with metadata support
- Add repository layer with CRUD operations
- Add service layer with authorization
- Add FastAPI router with all endpoints
- Add unit and integration tests
- Update API documentation
2026-02-28 11:34:49 +08:00
qzl
dbd3f68dd4
test: add invite code validation tests and fix migration rollback
...
- Add TestInviteCodeSignup integration tests for valid/invalid invite codes
- Fix migration downgrade: avoid dropping trigger dependency
- Add DB CHECK constraint for invite_codes.code format
- Update runtime-route.md with invite_code documentation
- Update runtime-runbook.md with change log
2026-02-28 10:56:09 +08:00
qzl
e4e995854d
feat: 实现密码重置功能与用户搜索API,优化注册登录流程
...
- 新增忘记密码页面与重置密码确认流程(前端+后端)
- 修复注册验证码页登录跳转路由
- 新增用户搜索API(按邮箱查询)
- 简化infra脚本,统一为app.sh
- 补充密码重置与用户API测试覆盖
- 更新runtime文档与AGENTS配置
2026-02-27 15:22:42 +08:00
qzl
2994cc708c
fix: update E2E tests for RESTful endpoints
2026-02-26 14:43:52 +08:00
qzl
5b8b584013
test: verify signup_start response only contains email
2026-02-26 14:12:39 +08:00
qzl
2709d88c68
test: update integration tests for RESTful routes
2026-02-26 14:08:10 +08:00
qzl
cd40b2b4f4
feat(agent-chat): complete core workflow and strengthen auth rate limiting
2026-02-25 16:51:12 +08:00
qzl
1cc8fa1abf
feat(auth): switch signup to OTP verification flow
...
Replace legacy signup with start/verify/resend endpoints, add OTP-focused mail templates and auth rate limits, and align compose/env/runbook for local self-hosted Supabase OTP behavior.
2026-02-25 13:34:02 +08:00
qzl
a6b5d087f8
fix: scope log filenames by service under root logs dir
2026-02-25 10:39:47 +08:00
qzl
7d6dda57c1
feat: complete auth/profile username migration and runtime safeguards
2026-02-25 10:20:43 +08:00
qzl
105cf82d21
fix: 恢复Celery配置 + 修复测试文件
...
- 恢复 CelerySettings 和相关计算属性
- 修复 celery/app.py 调用 configure_celery_app 参数
- 创建 core/initialization/init_data.py stub
- 删除不完整的 test_auth_supabase_gateway.py
2026-02-24 16:38:30 +08:00
qzl
ad06fe7de4
refactor: align backend layout and supabase infra
...
Consolidate backend modules/tests under the backend package while syncing Supabase compose/env config and related plans.
2026-02-05 15:13:06 +08:00