refactor: 个人自用,移除登录与云同步全链路

站点只给本人用,云乐坊 SSO 授权、收藏/历史云同步、获客归因和账号切换记账都没有收益,却被登录状态检查和同步失败提示持续打扰。

- 删除 useYunlefunAuth / yunlefunAuth / yunlefunSsoConfig / yunlefunAuth 适配器、useUserDataSync / userDataSync / userData 适配器、三个 client 插件与 /auth/callback 回调页
- 抽出 adapters/cloudbase.ts,让「反馈一下」和匿名筛选信号不再依赖登录态;cook-feedback 云函数保留
- 删除 cook-user-data 云函数与 cook_user_data 权限规则,移除 @yunlefun/sso 依赖
- 「我的」页删掉登录按钮、账号卡、四个统计格和退出登录;「关于」页删掉项目作者、致谢名单和上游宣传链接
- 本地收藏/历史与导出导入保留,删除同步专用的 lastUid 记账

取舍见 docs/decisions/0005-drop-login-and-sync.md
This commit is contained in:
toor
2026-10-22 15:52:54 +08:00
committed by trae-solo-agent
parent 7408591fac
commit 8ff7b879b9
54 changed files with 214 additions and 3049 deletions
@@ -3,21 +3,18 @@ import { useStorage } from '@vueuse/core'
import { namespace } from '~/constants'
/**
* Sync bookkeeping kept next to `cook:favorites` and `cook:history`, which stay
* in their original format. Deletions are recorded even when logged out so they
* can be applied to the cloud after the next login.
* Deletion bookkeeping kept next to `cook:favorites` and `cook:history`, which
* stay in their original format. Deletions are recorded so they survive an
* export/import round trip instead of resurrecting removed records.
*/
export interface UserDataMeta {
favoriteRemovals: FavoriteRemoval[]
historyRemovals: HistoryRemoval[]
historyClearedAt: number
/** The account this device last synced with. */
lastUid: string
}
export const userDataMeta = useStorage<UserDataMeta>(`${namespace}:sync`, {
favoriteRemovals: [],
historyRemovals: [],
historyClearedAt: 0,
lastUid: '',
}, undefined, { mergeDefaults: true })