4e789663a1
Memind CI / Test, build, and release guards (push) Failing after 5m19s
Drop the user_confirmed_at gate so public, online, unexpired pages can enter sitemap/llms and receive SEO/GEO tags. Defaults now enable all discovery switches; stored all-off config is still preserved until admin saves. Co-authored-by: Cursor <cursoragent@cursor.com>
39 lines
1.7 KiB
Markdown
39 lines
1.7 KiB
Markdown
# MindSpace SEO / GEO 回归守卫
|
||
|
||
日期: 2026-08-07
|
||
|
||
## 保护内容
|
||
|
||
1. **收录策略硬规则**:仅 `access_mode=public` 且 `status=online` 且未过期的发布页允许 SEO/GEO 注入与 sitemap/llms 收录。不再要求 `user_confirmed_at`。
|
||
2. **私有页强制 noindex**:密码、登录可见、owner_only、已过期、工作区预览直链等必须注入 `noindex, nofollow` 并设置 `X-Robots-Tag`。
|
||
3. **总开关默认开启**:`mindspace_config.seo_geo_config` 缺省为全开;库内已保存的旧值仍以数据库为准,需在 memind_adm MindSpace 配置页保存后才会改写生产。
|
||
4. **配置来源**:memind_adm MindSpace 配置页 → `PATCH /admin-api/mindspace/config` → Portal `loadMindSpaceConfigCached()`。
|
||
5. **百度推送**:仅在 admin 开启 `seo.baiduPush` 且页面可索引时触发;公开页发布与 Plaza 发帖共用该开关。
|
||
|
||
## 必跑验证
|
||
|
||
```bash
|
||
npm run verify:seo-geo
|
||
npm run verify:seo-discovery
|
||
npm run verify:portal-access-policy
|
||
```
|
||
|
||
改以下路径前必须跑上述命令:
|
||
|
||
- `mindspace-index-policy.mjs`
|
||
- `mindspace-seo-tags.mjs` / `mindspace-geo-tags.mjs` / `mindspace-seo-geo-delivery.mjs`
|
||
- `mindspace-seo-discovery-service.mjs` / `mindspace-seo-notify.mjs`
|
||
- `mindspace-public-delivery.mjs`
|
||
- `server/portal-published-page-delivery.mjs`
|
||
- `server/portal-workspace-publication-delivery.mjs`
|
||
- `server/portal-seo-discovery-routes.mjs`
|
||
- `mindspace-config.mjs`
|
||
- `mindspace-publications.mjs`(确认公开 + 百度推送)
|
||
|
||
## 禁止回退
|
||
|
||
- 禁止让非 public 页面进入 `/sitemap.xml` 或 `/llms.txt`
|
||
- 禁止在 embed 模式注入 SEO/GEO
|
||
- 禁止绕过 `resolveIndexPolicy` 直接注入 canonical / JSON-LD
|
||
- 禁止删除私有页的 `noindex` 保护以“提升收录”
|