• v1.5.0 9d18c437f6

    v1.5.0 —— 重大架构重构

    Arutera released this 2026-09-01 14:32:36 +08:00

    架构升级

    • 移除 Supabase 全栈:PostgREST/GoTrue/supabase-proxy 三个容器停用
    • 引入 Drizzle ORM 0.45 + node-postgres(pg) 8.23,数据访问收敛到 src/lib/db/repositories/
    • 认证改静态密码 + httpOnly Cookie:bcryptjs + ECHO_STATIC_PASSWORD_HASH + ECHO_API_TOKEN
    • proxy.ts 取代 middleware.ts (Next.js 16 新约定)
    • Drizzle Kit 登记式迁移:基线迁移与历史库形态完全一致,hash 一致即 SKIP,数据零丢失
    • supabase/migrations/ 完整归档到 supabase-migrations-archive/
    • PostgreSQL 升级到 pg18
    • 环境变量重写:DATABASE_URL / ECHO_API_TOKEN / ECHO_STATIC_PASSWORD_HASH 三件套替代 SUPABASE_*

    关键修复

    • hybrid 搜索 500 → 200:item-repository.ts 的 SQL 运算符优先级 bug(distanceExpr 加内层括号)

    部署验证(NAS 实测)

    • 登录 200 + Set-Cookie ✓ / hybrid 搜索 mode=hybrid、similarity 0.38~0.43 ✓
    • 关键词降级 mode=keyword_ilike ✓ / 时间轴 total=228 ✓
    • 统计 nextcloud 69 + gitea 159 ✓ / 同步 Nextcloud 69 / Gitea 0 ✓
    • 回收站 total=3 ✓ / seed 生产 403 ✓

    注意事项

    • 管理 API 当前依赖内网部署假设,公网部署前必须加共享密钥或 IP allowlist
    • RLS 已移除,所有授权由应用层负责
    Downloads