- POST /items/batch-status:逐条成败,不做全回滚;拖 10 条里 1 条冲突不该让另 9 条白干
- GET /items/board:四列一次取全,收件箱不进看板
- 修:/items/board 被 /{item_id} 抢先匹配导致 422
- 新增向量库配置项(M3 用,独立实例,不动 fnsvr-01)
- 3 个新测试,全量 46 passed
41 lines
2.3 KiB
Bash
41 lines
2.3 KiB
Bash
# 复制为 .env 后按需修改;.env 不进仓库
|
||
ENV=dev
|
||
APP_NAME=达道Task
|
||
|
||
# ── 数据库 ───────────────────────────────────────────────────────────
|
||
# 应用角色(受 RLS 约束)—— 应用进程只能用它
|
||
DATABASE_URL=postgresql+asyncpg://dadao_app:dadao_dev_pw@127.0.0.1:5433/dadaotask
|
||
# 迁移角色(owner,绕过 RLS)—— 只有 alembic 用
|
||
MIGRATION_DATABASE_URL=postgresql+asyncpg://dadao_owner:dadao_dev_pw@127.0.0.1:5433/dadaotask
|
||
|
||
# 团队共享库(fnsvr-01,PostgreSQL 17.6)。断网时用上面的本机便携 PG。
|
||
# DATABASE_URL=postgresql+asyncpg://dadao_app:dadao_dev_pw@192.168.8.160:8432/dadaotask
|
||
# MIGRATION_DATABASE_URL=postgresql+asyncpg://dadao_owner:dadao_dev_pw@192.168.8.160:8432/dadaotask
|
||
|
||
# 测试库必须独立:测试会 TRUNCATE 所有表,打到开发库上数据就没了
|
||
# TEST_DATABASE_URL=postgresql+asyncpg://dadao_app:dadao_dev_pw@192.168.8.160:8432/dadaotask_test
|
||
# TEST_MIGRATION_DATABASE_URL=postgresql+asyncpg://dadao_owner:dadao_dev_pw@192.168.8.160:8432/dadaotask_test
|
||
|
||
REDIS_URL=redis://127.0.0.1:6380/0
|
||
|
||
# ── 认证 ─────────────────────────────────────────────────────────────
|
||
# 生产环境启动时会校验:JWT_SECRET 不得是默认值且长度 ≥ 32
|
||
JWT_SECRET=dev-only-change-me
|
||
ACCESS_TOKEN_MINUTES=30
|
||
REFRESH_TOKEN_DAYS=14
|
||
|
||
# 生产环境禁止 SMS_PROVIDER=dev(否则任意验证码可登录),启动即失败
|
||
SMS_PROVIDER=dev
|
||
SMS_DEV_CODE=123456
|
||
# 同一手机号两次发码的最小间隔(秒),测试里置 0 可关闭
|
||
SMS_THROTTLE_SECONDS=60
|
||
|
||
CORS_ORIGINS=http://localhost:5180,http://127.0.0.1:5180
|
||
|
||
# ── 知识库向量库(独立的 PG + pgvector,M3 起用)──────────────────────
|
||
# 单独实例,不动 fnsvr-01:那台没有 pgvector,且向量检索吃内存,不该和业务库挤。
|
||
# 起法见 deploy/docker-compose.vector.yml。不配则 M3 的语义检索能力直接不可用。
|
||
# VECTOR_DATABASE_URL=postgresql+asyncpg://dadao_app:dadao_dev_pw@127.0.0.1:5434/dadao_knowledge
|
||
# EMBEDDING_DIM=1024
|
||
# EMBEDDING_MODEL=BAAI/bge-m3
|