# 公共复用与 AI 文档整理记录

## 本次目标

- 审查 `node_facade_base44_supabase` 与 core、同类 facade 的重复能力；
- 只提取稳定、与 Go/Supabase 业务无关的公共部分；
- 把源码边界、开发顺序和收尾条件整理为 AI 可直接执行的文档；
- 在不改版本、不发布、不推送的前提下完成本地收尾审查。

## 复用结论

通用的 Base44 当前用户解析已下沉到 `node_lib_base44_core.ResolveBase44User`。该能力只负责创建 Base44 Client、调用 `auth.me()` 和登录态判断，支持同步或异步 Client Factory。

以下能力继续保留在 facade：

- RS256 assertion claims、JTI 和签名配置；
- Go Auth 固定路径及 Bearer/幂等规则；
- 页面请求 Body 白名单、受保护字段和申请说明长度；
- Go 领域 envelope、错误码和 `RetryAllowedAt` 白名单。

这些内容依赖 Supabase V3 和 Go 契约，放入通用 core 会形成错误耦合。

## 项目内部整理

- `service_paths.js` 集中三个 Base44 固定路径和路径分类；
- `base44_request.js` 集中页面输入校验与最终 Go Body 构造；
- `supabase_function_handler.js` 复用 core 用户解析，不再重复实现 Base44 SDK 鉴权；
- 同一请求的页面 Body 只校验一次，再用于安全 assertion Body 构造；
- `examples/basic_usage.js` 补齐全部 assertion 必填配置。

## 文档整理

- 重写 `docs/fun/ai_development.md`，加入权威来源、模块地图、扩展步骤、安全边界和完成清单；
- 同步 API、usage、composition、project status 与历史交接状态；
- 明确真实 Base44/Go 联调和 registry 固定版本安装仍是发布前置条件。

## 本地验证

本次代码整理后已通过：

```bat
cd C:\Application\qoder\node\node_lib_base44_core
npm.cmd run check
npm.cmd test

cd C:\Application\qoder\node\node_facade_base44_supabase
npm.cmd run check
npm.cmd test
```

收尾审查结果：

- core 与 facade 的 `npm run check`、`npm test`、示例均通过；
- `npm ls --all` 通过；
- `npm audit --omit=dev` 均为 0 个已知漏洞；
- `npm pack --dry-run --json` 通过，core 28 个、facade 29 个发布文件；
- 两项目 UTF-8 BOM、行尾空白、深层 core 导入、疑似真实私钥/`service_role` 赋值检查均为 0；
- 两项目 Markdown 相对链接检查无断链。

## 发布边界

- 经用户确认，Core 和 Facade 的本地版本号已调整为 `1.1.0`，Facade 最低 core 依赖已调整为 `^1.1.0`；
- Core `1.1.0` 已由用户完成发布；Facade lockfile 已从 registry 刷新，并使用非 Junction 的 Core `1.1.0` 通过完整本地验证；
- Facade `1.1.0` 尚未提交、推送、建 tag 或发布 npm；
- 2026-07-16 registry 中 Facade 仍只有 `1.0.0`，本地待发布版本为 `1.1.0`，不能覆盖已发布版本；
- 用户确认后才进入 Gitee 固定 ref、npm registry 和真实 Base44 Function 验证。
