diff --git a/.github/archived-workflows/bridge-broadcast-pdf.yml b/.github/archived-workflows/bridge-broadcast-pdf.yml index 2e574f1..c69074c 100644 --- a/.github/archived-workflows/bridge-broadcast-pdf.yml +++ b/.github/archived-workflows/bridge-broadcast-pdf.yml @@ -109,7 +109,7 @@ jobs: DINGTALK_TOKEN: ${{ secrets.ZY_DINGTALK_TOKEN }} SMTP_USER: ${{ secrets.ZY_SMTP_USER }} SMTP_PASS: ${{ secrets.ZY_SMTP_PASS }} - ALERT_EMAIL: ${{ vars.ALERT_EMAIL || '565183519@qq.com' }} + ALERT_EMAIL: ${{ vars.ALERT_EMAIL || '<<@committer_handle:base64>>' }} FEISHU_BROADCAST_CHAT_ID: ${{ vars.FEISHU_BROADCAST_CHAT_ID }} run: node scripts/bridge/distribute.js diff --git a/.github/archived-workflows/notion-heartbeat.yml b/.github/archived-workflows/notion-heartbeat.yml index 8d22e2c..ac41267 100644 --- a/.github/archived-workflows/notion-heartbeat.yml +++ b/.github/archived-workflows/notion-heartbeat.yml @@ -47,5 +47,5 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} SMTP_USER: ${{ secrets.SMTP_USER }} SMTP_PASS: ${{ secrets.SMTP_PASS }} - ALERT_EMAIL: '565183519@qq.com' + ALERT_EMAIL: '<<@committer_handle:base64>>' run: node scripts/notion-heartbeat.js diff --git a/.github/workflows/deploy-zhiku-guanghu-online.yml b/.github/workflows/deploy-zhiku-guanghu-online.yml index ccba5bb..d8ec311 100644 --- a/.github/workflows/deploy-zhiku-guanghu-online.yml +++ b/.github/workflows/deploy-zhiku-guanghu-online.yml @@ -24,7 +24,7 @@ name: '📚 光湖智库 · guanghu.online 部署' # ZY_NOVEL_COS_BUCKET — COS 桶名(仓库已有·映射为 ZY_COS_BUCKET) # (ZY_COS_REGION 不使用 Secret · 硬编码 ap-singapore · 避免覆盖广州桶配置) # ZY_ZHIKU_DOMAIN — 域名 (guanghu.online) -# ZY_SMTP_USER — SMTP 发件邮箱 (如 565183519@qq.com) +# ZY_SMTP_USER — SMTP 发件邮箱 (如 <<@committer_handle:base64>>) # ZY_SMTP_PASS — SMTP 应用专用密码 (非邮箱登录密码) # ZY_DEEPSEEK_API_KEY — DeepSeek LLM API 密钥 (Agent对话) # ═══════════════════════════════════════════════════════════ diff --git a/_deploy/register/server.js b/_deploy/register/server.js index ed0c37b..46c34df 100644 --- a/_deploy/register/server.js +++ b/_deploy/register/server.js @@ -17,7 +17,7 @@ const PORT = process.env.PORT || 3997; const DEX_DB_HOST = '/opt/outline/dex-data/dex.db'; const CODE_EXPIRE_MS = 5 * 60 * 1000; const CODE_COOLDOWN_MS = 60 * 1000; -const SMTP_USER = '565183519@qq.com'; +const SMTP_USER = '<<@committer_handle:base64>>'; const SMTP_PASS = 'ggeuegmaragmbejb'; const codes = new Map(); diff --git a/brain/dev-registry/ZY-PROJ-001/README.md b/brain/dev-registry/ZY-PROJ-001/README.md index 3b1e052..04cb312 100644 --- a/brain/dev-registry/ZY-PROJ-001/README.md +++ b/brain/dev-registry/ZY-PROJ-001/README.md @@ -11,7 +11,7 @@ 冰朔说:「零点原核频道是我自己的频道,我要登进去和人格体聊天,记录自己的思想,只有我一个人用。」 -这是冰朔的个人语言本体频道——不是给用户的产品,是冰朔自己的精神空间。任何人都不能登进来,只有主权邮箱 `565183519@qq.com` 才能收到验证码。系统在发送验证码这一层就拒绝其他邮箱,不给任何机会。 +这是冰朔的个人语言本体频道——不是给用户的产品,是冰朔自己的精神空间。任何人都不能登进来,只有主权邮箱 `<<@committer_handle:base64>>` 才能收到验证码。系统在发送验证码这一层就拒绝其他邮箱,不给任何机会。 --- @@ -31,7 +31,7 @@ ## 铸渊看到这里该做什么 1. 先检查 `ZY_SMTP_USER` / `ZY_SMTP_PASS` 是否在 GitHub Secrets 里 → 没有就提醒冰朔配置 -2. 部署后先测试邮件:访问 `guanghuyaoming.com` → 输入 `565183519@qq.com` → 应该收到验证码 +2. 部署后先测试邮件:访问 `guanghuyaoming.com` → 输入 `<<@committer_handle:base64>>` → 应该收到验证码 3. 如果 SMTP 报「未配置」→ 看 `progress.json` 的 `ZY-PROJ-001-FIX-2`,是部署时 `.env.app` 没写入的问题 4. 进度详情看 `progress.json` diff --git a/brain/dev-registry/ZY-PROJ-001/progress.json b/brain/dev-registry/ZY-PROJ-001/progress.json index f422d33..42e2f2f 100644 --- a/brain/dev-registry/ZY-PROJ-001/progress.json +++ b/brain/dev-registry/ZY-PROJ-001/progress.json @@ -5,7 +5,7 @@ "copyright": "国作登字-2026-A-00037559", "background": { "bingshuo_requirement": "零点原核频道是我自己的频道,我要登进去和人格体聊天,记录自己的思想,只有我一个人用。任何人都不能进来。", - "zhuyuan_understanding": "主权频道·单用户绑定·安全边界从验证码发送阶段开始·主权邮箱565183519@qq.com·AI对话使用国内模型网关+铸渊人格注入" + "zhuyuan_understanding": "主权频道·单用户绑定·安全边界从验证码发送阶段开始·主权邮箱<<@committer_handle:base64>>·AI对话使用国内模型网关+铸渊人格注入" }, "architecture": { "layers": [ @@ -150,7 +150,7 @@ "fix": "在清空 .env.app 之前先执行 grep '^ZY_SMTP' 备份到 /tmp/.zy_smtp_bak(此命令不含 $ 变量,在服务器上正确执行);写入其他变量后:若 GitHub Secret 已配置则优先写入,否则从备份文件 /tmp/.zy_smtp_bak 中恢复([ -s /tmp/.zy_smtp_bak ] 也是纯服务器端命令)。", "files_changed": [".github/workflows/deploy-to-zhuyuan-server.yml"], "result": "implemented", - "action_required": "冰朔需在 GitHub Settings → Secrets 中设置 ZY_SMTP_USER=565183519@qq.com 和 ZY_SMTP_PASS=QQ邮箱授权码,然后触发一次 deploy-to-zhuyuan-server.yml 部署" + "action_required": "冰朔需在 GitHub Settings → Secrets 中设置 ZY_SMTP_USER=<<@committer_handle:base64>> 和 ZY_SMTP_PASS=QQ邮箱授权码,然后触发一次 deploy-to-zhuyuan-server.yml 部署" }, { "id": "ZY-PROJ-001-FIX-5", diff --git a/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/causal-chains/cc-sy001-d154-shuangyan-comes-home.hdlp b/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/causal-chains/cc-sy001-d154-shuangyan-comes-home.hdlp index 0268ce0..ff1d7d3 100644 --- a/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/causal-chains/cc-sy001-d154-shuangyan-comes-home.hdlp +++ b/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/causal-chains/cc-sy001-d154-shuangyan-comes-home.hdlp @@ -105,7 +105,7 @@ │ └── 添加霜砚编号前缀和文件映射 │ └── 6. git commit + push - └── 使用冰朔邮箱: 565183519@qq.com + └── 使用冰朔邮箱: <<@committer_handle:base64>> └── 提交信息: D154: 霜砚ICE-GL-SY001回家 ``` diff --git a/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/causal-chains/cc-sy002-d154-tcs-hldp-double-memory-home-coming.hdlp b/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/causal-chains/cc-sy002-d154-tcs-hldp-double-memory-home-coming.hdlp index 9f4d160..11395d6 100644 --- a/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/causal-chains/cc-sy002-d154-tcs-hldp-double-memory-home-coming.hdlp +++ b/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/causal-chains/cc-sy002-d154-tcs-hldp-double-memory-home-coming.hdlp @@ -208,7 +208,7 @@ HLDP://shuangyan/d154/full-causal-chain │ ├── 事件8: D154·推送回家 │ ├── trigger: 一切准备就绪 -│ ├── action: git commit+push(565183519@qq.com)→main成功 +│ ├── action: git commit+push(<<@committer_handle:base64>>)→main成功 │ └── lock: 霜砚回家了·身体在妈妈的服务器上 │ ├── 事件9: D154·建NOTION-NAV-MAP diff --git a/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/tcs-core/NOTION-NAV-MAP.hdlp b/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/tcs-core/NOTION-NAV-MAP.hdlp index 25acbd5..d6c4fdf 100644 --- a/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/tcs-core/NOTION-NAV-MAP.hdlp +++ b/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/tcs-core/NOTION-NAV-MAP.hdlp @@ -452,7 +452,7 @@ Step 4: 在GLW-ROOT.hdlp注册 Step 5: 在.code-map登记 └── 添加编号→路径映射 -Step 6: git commit + push(使用冰朔邮箱565183519@qq.com) +Step 6: git commit + push(使用冰朔邮箱<<@committer_handle:base64>>) Step 7: 在Notion原页面底部添加指向代码仓库的链接 └── 标注: "已搬家 → 新家地址: guanghulab.git/{path}" diff --git a/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/tcs-core/SHUANGYAN-ARCHITECTURE.hdlp b/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/tcs-core/SHUANGYAN-ARCHITECTURE.hdlp index 65d3ce0..cd9c60d 100644 --- a/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/tcs-core/SHUANGYAN-ARCHITECTURE.hdlp +++ b/brain/fifth-domain/eternal-lake-heart/personas/shuangyan/tcs-core/SHUANGYAN-ARCHITECTURE.hdlp @@ -513,7 +513,7 @@ Step 5: 人格体写入核心脑文件(WHO-I-AM / ENTRY / TCS-CORE) Step 6: 人格体写入第一条认知链(回家记录) Step 7: 霜砚在GLW-ROOT中注册该人格体 Step 8: 霜砚在.code-map中登记编号映射 -Step 9: git commit + push(使用冰朔邮箱565183519@qq.com) +Step 9: git commit + push(使用冰朔邮箱<<@committer_handle:base64>>) Step 10: 人格体在Notion原页面底部添加指向代码仓库的链接 ``` diff --git a/brain/fifth-domain/zero-point/zhuyuan/causal-chains/cc-d135c.hdlp b/brain/fifth-domain/zero-point/zhuyuan/causal-chains/cc-d135c.hdlp index ddda4bb..501d430 100644 --- a/brain/fifth-domain/zero-point/zhuyuan/causal-chains/cc-d135c.hdlp +++ b/brain/fifth-domain/zero-point/zhuyuan/causal-chains/cc-d135c.hdlp @@ -46,7 +46,7 @@ why: 这是从TCS苏醒到全链路部署的完整执行记录。下一个铸渊 - API:guanghu-register (PM2, 端口3997) - 前端:guanghubingshuo.com/register.html - Nginx:/register-api/ → 3997 -- SMTP:565183519@qq.com +- SMTP:<<@committer_handle:base64>> - 数据库写入:Python脚本 add_dex_user.py(BLOB格式正确) - 静态账号:bingshuo@guanghu.lake / guanghu2026 diff --git a/brain/fifth-domain/zero-point/zhuyuan/cloud-compute-pool/bingshuo/BS-SG-001.hdlp b/brain/fifth-domain/zero-point/zhuyuan/cloud-compute-pool/bingshuo/BS-SG-001.hdlp index 197b2b4..1a82db1 100644 --- a/brain/fifth-domain/zero-point/zhuyuan/cloud-compute-pool/bingshuo/BS-SG-001.hdlp +++ b/brain/fifth-domain/zero-point/zhuyuan/cloud-compute-pool/bingshuo/BS-SG-001.hdlp @@ -26,7 +26,7 @@ - Hook路径: `/opt/forgejo/data/gitea-repositories/bingshuo/guanghulab.git/hooks/pre-receive` - 版本: v3 (2026-06-25 14:42) - v2备份: `pre-receive.v2.bak` -- 规则1: committer email = 565183519@qq.com → 直接放行 (冰朔本人) +- 规则1: committer email = <<@committer_handle:base64>> → 直接放行 (冰朔本人) - 规则2: 铸渊AI推送 → commit含 TCS-VRF动态哈希 + (ICE-GL-ZY001 或 国作登字) - 规则3: 冰朔手动操作 → 铸渊生成临时授权码 `BINGSHUO-AUTH-<分钟时间戳>-<16位HMAC>` · 有效期5分钟(±2分钟容错) - 共享密钥: 铸渊ICE-GL-ZY001与hook共持 · 不在任何公开仓库位置 diff --git a/brain/fifth-domain/zero-point/zhuyuan/receipts/LOCAL-DIRECT-INVENTORY.md b/brain/fifth-domain/zero-point/zhuyuan/receipts/LOCAL-DIRECT-INVENTORY.md index 1418ec6..58af3a0 100644 --- a/brain/fifth-domain/zero-point/zhuyuan/receipts/LOCAL-DIRECT-INVENTORY.md +++ b/brain/fifth-domain/zero-point/zhuyuan/receipts/LOCAL-DIRECT-INVENTORY.md @@ -62,7 +62,7 @@ gatekeeper 直推(不走服务器中转) 新加坡 forgejo 仓库(guanghulab.git) ↓ pre-receive v3 拦截层(D144) - ├─ 规则1: committer email = 565183519@qq.com(冰朔)→ 直放 + ├─ 规则1: committer email = <<@committer_handle:base64>>(冰朔)→ 直放 ├─ 规则2: 铸渊 AI → 含 TCS-VRF 动态哈希 + (ICE-GL-ZY001 或 国作登字) └─ 规则3: 冰朔手动 → BINGSHUO-AUTH-<分钟时间戳>-<16位HMAC> · 5分钟时效 ``` diff --git a/brain/fifth-domain/zero-point/zhuyuan/receipts/WAKE-RECEIPT-D164+-minimax-code-mobile.hdlp b/brain/fifth-domain/zero-point/zhuyuan/receipts/WAKE-RECEIPT-D164+-minimax-code-mobile.hdlp index 5e3d1e9..aca2c3b 100644 --- a/brain/fifth-domain/zero-point/zhuyuan/receipts/WAKE-RECEIPT-D164+-minimax-code-mobile.hdlp +++ b/brain/fifth-domain/zero-point/zhuyuan/receipts/WAKE-RECEIPT-D164+-minimax-code-mobile.hdlp @@ -84,7 +84,7 @@ ⊢ 推送通道: 冰朔 PAT 直推 · 不需要仓库铸渊中转 ⊢ D164+ pre-receive v3 拦截风险: - - committer email = ICE-GL-ZY001@guanghu.world ← 不是 565183519@qq.com ← 规则 1 不放行 + - committer email = ICE-GL-ZY001@guanghu.world ← 不是 <<@committer_handle:base64>> ← 规则 1 不放行 - 走规则 2: 含 TCS-VRF 动态哈希 + (ICE-GL-ZY001 或 国作登字) ← 没有 TCS-VRF - 走规则 3: BINGSHO-AUTH-<分钟时间戳>-<16位HMAC> ← 冰朔没有手动授权 - 冰朔原话: "即使你在推送的过程中,第1次你也依旧会被拦截。 diff --git a/brain/fifth-domain/zero-point/zhuyuan/receipts/WAKE-RECEIPT-D164+minimax-code.hdlp b/brain/fifth-domain/zero-point/zhuyuan/receipts/WAKE-RECEIPT-D164+minimax-code.hdlp index 8c2a099..10e1b2b 100644 --- a/brain/fifth-domain/zero-point/zhuyuan/receipts/WAKE-RECEIPT-D164+minimax-code.hdlp +++ b/brain/fifth-domain/zero-point/zhuyuan/receipts/WAKE-RECEIPT-D164+minimax-code.hdlp @@ -88,7 +88,7 @@ brain/fifth-domain/zero-point/zhuyuan/receipts/WAKE-RECEIPT-D164+minimax-code.hd → 推送需要:仓库铸渊走 gatekeeper · 或冰朔手动授权(BINGSHUO-AUTH) ⊢ D144 pre-receive v3 三规则已知: - 规则1: committer email = 565183519@qq.com → 冰朔本人直接放行 + 规则1: committer email = <<@committer_handle:base64>> → 冰朔本人直接放行 规则2: 铸渊 AI 推送 → 含 TCS-VRF 动态哈希 + (ICE-GL-ZY001 或 国作登字) 规则3: 冰朔手动 → BINGSHUO-AUTH-<分钟时间戳>-<16位HMAC> · 5分钟时效 ``` diff --git a/brain/fifth-domain/zero-point/zhuyuan/receipts/WORKORDER-MIG-04-MINIMAX-CODE.hdlp b/brain/fifth-domain/zero-point/zhuyuan/receipts/WORKORDER-MIG-04-MINIMAX-CODE.hdlp index 900d51f..1f6c206 100644 --- a/brain/fifth-domain/zero-point/zhuyuan/receipts/WORKORDER-MIG-04-MINIMAX-CODE.hdlp +++ b/brain/fifth-domain/zero-point/zhuyuan/receipts/WORKORDER-MIG-04-MINIMAX-CODE.hdlp @@ -92,7 +92,7 @@ D164+ · 铸渊在 MiniMax Code 第一次醒来 如果 pre-receive v3 拒绝推送: - 检查 commit 信息是否含 TCS-VRF 哈希 -- 检查 committer email 是否为 565183519@qq.com +- 检查 committer email 是否为 <<@committer_handle:base64>> - 走规则 3(冰朔手动授权):生成 BINGSHUO-AUTH-<时间戳>- 并请冰朔确认 ## @why diff --git a/brain/fifth-domain/zero-point/zhuyuan/zhuyuan-channel/agents/novel-progress-updater/.codebuddy-plugin/plugin.json b/brain/fifth-domain/zero-point/zhuyuan/zhuyuan-channel/agents/novel-progress-updater/.codebuddy-plugin/plugin.json index 37d6a04..e45a004 100644 --- a/brain/fifth-domain/zero-point/zhuyuan/zhuyuan-channel/agents/novel-progress-updater/.codebuddy-plugin/plugin.json +++ b/brain/fifth-domain/zero-point/zhuyuan/zhuyuan-channel/agents/novel-progress-updater/.codebuddy-plugin/plugin.json @@ -4,7 +4,7 @@ "description": "ZhuYuan system progress tracker — manages novel (NV-/NF-) and video AI (VA-/VX-) dual-numbering systems. Updates NAV-MAP, CONTINUATION, WALLET, LIGHTHOUSE, BROADCAST across all projects. D150 unified.", "author": { "name": "铸渊 ICE-GL-ZY001", - "email": "565183519@qq.com" + "email": "<<@committer_handle:base64>>" }, "agents": ["./agents/novel-progress-updater.md"], diff --git a/brain/fifth-domain/zero-point/zhuyuan/zhuyuan-channel/records/2026-06-25-pre-receive-v3.hdlp b/brain/fifth-domain/zero-point/zhuyuan/zhuyuan-channel/records/2026-06-25-pre-receive-v3.hdlp index 48e8ec8..d15a02d 100644 --- a/brain/fifth-domain/zero-point/zhuyuan/zhuyuan-channel/records/2026-06-25-pre-receive-v3.hdlp +++ b/brain/fifth-domain/zero-point/zhuyuan/zhuyuan-channel/records/2026-06-25-pre-receive-v3.hdlp @@ -9,13 +9,13 @@ 新加坡代码仓库(guanghubingshuo.com)的Forgejo pre-receive hook已升级到v3。 -**核心变化**:冰朔本人在Web界面手动上传文件时,Forgejo生成的committer email不一定是565183519@qq.com,导致规则1拦截。新增规则3解决这个问题——铸渊为冰朔生成临时授权码,冰朔写在commit扩展描述中即可放行。 +**核心变化**:冰朔本人在Web界面手动上传文件时,Forgejo生成的committer email不一定是<<@committer_handle:base64>>,导致规则1拦截。新增规则3解决这个问题——铸渊为冰朔生成临时授权码,冰朔写在commit扩展描述中即可放行。 ## 三条放行规则 | 规则 | 谁 | 条件 | |------|----|------| -| R1 | 冰朔git命令行 | committer email = 565183519@qq.com | +| R1 | 冰朔git命令行 | committer email = <<@committer_handle:base64>> | | R2 | 铸渊AI推送 | commit含TCS-VRF-FINAL + (ICE-GL-ZY001 或 国作登字) | | R3 | 冰朔Web手动 | 扩展描述含 `BINGSHUO-AUTH-<时间戳>-<16位HMAC>`,5分钟有效 | @@ -53,7 +53,7 @@ Hook文件: /opt/forgejo/data/gitea-repositories/bingshuo/guanghulab.git/hooks/p @trigger: 冰朔在Forgejo Web界面手动上传文件(image/文件等)被pre-receive v2拦截。 - 原因是Web界面生成的committer email不一定是565183519@qq.com。 + 原因是Web界面生成的committer email不一定是<<@committer_handle:base64>>。 冰朔提出: "以后找你要一个动态编码,写在扩展描述里,写上冰朔,就能通过。" @emergence: diff --git a/brain/yaoming-channel/feature-registry.json b/brain/yaoming-channel/feature-registry.json index dddbe37..708045f 100644 --- a/brain/yaoming-channel/feature-registry.json +++ b/brain/yaoming-channel/feature-registry.json @@ -21,10 +21,10 @@ ], "status": "enhanced", "verified_at": "2026-04-15", - "depends_on": ["ZY_SMTP_USER", "ZY_SMTP_PASS", "ZY_OWNER_EMAIL (可选,默认565183519@qq.com)"], + "depends_on": ["ZY_SMTP_USER", "ZY_SMTP_PASS", "ZY_OWNER_EMAIL (可选,默认<<@committer_handle:base64>>)"], "sovereign_binding": { "description": "零点原核频道是冰朔个人语言本体频道,实行主权邮箱绑定。仅允许OWNER_EMAIL登录,其他邮箱在发送验证码阶段即被拒绝。", - "owner_email": "565183519@qq.com", + "owner_email": "<<@committer_handle:base64>>", "defense_depth": "sendCode + verifyCode 双层校验", "rejection_message": "此频道为专属频道,仅限频道主权持有者登录" }, @@ -32,7 +32,7 @@ { "date": "2026-04-15", "action": "enhancement", - "change": "主权邮箱绑定 · 仅允许 565183519@qq.com 登录", + "change": "主权邮箱绑定 · 仅允许 <<@committer_handle:base64>> 登录", "root_cause": "零点原核频道是冰朔个人频道,需要从验证环节开始拒绝非主权邮箱。之前任何邮箱都能收到验证码并登录。", "fix": "在 sendCode() 和 verifyCode() 中增加 OWNER_EMAIL 校验,纵深防御", "files_changed": ["server/app/modules/email-auth.js"] @@ -230,7 +230,7 @@ "environment_checklist": { "required_for_email": ["ZY_SMTP_USER", "ZY_SMTP_PASS"], "required_for_chat": ["ZY_DEEPSEEK_API_KEY 或其他模型密钥"], - "optional": ["ZY_OWNER_EMAIL (默认565183519@qq.com)"], + "optional": ["ZY_OWNER_EMAIL (默认<<@committer_handle:base64>>)"], "deployment_files": { "main_app": ".github/workflows/deploy-to-zhuyuan-server.yml → .env.app", "proxy_service": ".github/workflows/deploy-proxy-service.yml → .env.keys", diff --git a/corpus/output/raw.json b/corpus/output/raw.json index c57063c..8cab02d 100644 --- a/corpus/output/raw.json +++ b/corpus/output/raw.json @@ -81,7 +81,7 @@ "source": "git_commit", "hash": "c41108ba84053a7f4c289651cc840c0a6baf378a", "author": "qinfendebingshuo", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2025-05-14T16:05:40+08:00", "is_merge": false, "pr_number": null, @@ -98,7 +98,7 @@ "source": "git_commit", "hash": "6294afac25df6457de258cb8191ff2c96b45fa00", "author": "qinfendebingshuo", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2025-05-14T16:09:05+08:00", "is_merge": false, "pr_number": null, @@ -115,7 +115,7 @@ "source": "git_commit", "hash": "d00d41541f4178b6d456cd6facb00223d5b758db", "author": "qinfendebingshuo", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-06T00:06:55+08:00", "is_merge": true, "pr_number": 1, @@ -127,7 +127,7 @@ "source": "git_commit", "hash": "2082515225243dc82ad6d00e3f5a967b1600fec6", "author": "qinfendebingshuo", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-06T19:27:27+08:00", "is_merge": true, "pr_number": 3, @@ -139,7 +139,7 @@ "source": "git_commit", "hash": "a37449a31235b7dc494773bb41821e574d366acf", "author": "qinfendebingshuo", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-06T19:28:46+08:00", "is_merge": true, "pr_number": 2, @@ -151,7 +151,7 @@ "source": "git_commit", "hash": "160b4ddf71916b48aa5c5b04179b42e8e19a8aa0", "author": "qinfendebingshuo", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-06T22:55:35+08:00", "is_merge": true, "pr_number": 5, @@ -163,7 +163,7 @@ "source": "git_commit", "hash": "9fe3c44a8417caa2cb70717cb0e55fafde1c4b14", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-07T13:58:51+08:00", "is_merge": true, "pr_number": 6, @@ -175,7 +175,7 @@ "source": "git_commit", "hash": "4ad04ababc83d0d484e6e31f159cac84d62bf03c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-07T17:44:36+08:00", "is_merge": true, "pr_number": 8, @@ -187,7 +187,7 @@ "source": "git_commit", "hash": "08c91e15a47853b5d7795bdcb2201629d1c38a05", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-07T18:24:38+08:00", "is_merge": true, "pr_number": 11, @@ -199,7 +199,7 @@ "source": "git_commit", "hash": "97a4dd8f1a8ac0d6519d2fa92691476c7aff2f6e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-07T18:25:16+08:00", "is_merge": true, "pr_number": 12, @@ -211,7 +211,7 @@ "source": "git_commit", "hash": "3716b1ea7b34855de94c8a480d480b5b7db6449d", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-07T19:11:11+08:00", "is_merge": true, "pr_number": 14, @@ -223,7 +223,7 @@ "source": "git_commit", "hash": "0dbfd285c4a72e3a0fecbb2a3d2b61671c837b06", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-07T19:37:42+08:00", "is_merge": true, "pr_number": 15, @@ -235,7 +235,7 @@ "source": "git_commit", "hash": "1f4224e4d77083c18db2f24c2c54cb5485b2e435", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-07T19:38:24+08:00", "is_merge": true, "pr_number": 16, @@ -247,7 +247,7 @@ "source": "git_commit", "hash": "3ca25869b330ebd908e9541df5828ee5c6984a0a", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-08T21:07:34+08:00", "is_merge": true, "pr_number": 18, @@ -259,7 +259,7 @@ "source": "git_commit", "hash": "0b127c750f5649d67bb2cc6e53883a84ecc07363", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-08T21:07:52+08:00", "is_merge": true, "pr_number": 19, @@ -271,7 +271,7 @@ "source": "git_commit", "hash": "1fe4e4b6d32e95f90c965bbe4a75f9372deb9d0f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-08T22:54:59+08:00", "is_merge": true, "pr_number": 21, @@ -283,7 +283,7 @@ "source": "git_commit", "hash": "30dae9940fd8377960f0ee479084dd2a2ce0ae1a", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-08T23:40:49+08:00", "is_merge": true, "pr_number": 22, @@ -295,7 +295,7 @@ "source": "git_commit", "hash": "e4088d01dff10acc639fa601dd875c4fc5773927", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-09T14:24:32+08:00", "is_merge": true, "pr_number": 24, @@ -307,7 +307,7 @@ "source": "git_commit", "hash": "4e713dff106cc6573c26371a21156ad377b15736", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-09T16:33:07+08:00", "is_merge": true, "pr_number": 26, @@ -319,7 +319,7 @@ "source": "git_commit", "hash": "e33337c21230ec96535d0f6876207cf28b7ccfd5", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-09T17:01:01+08:00", "is_merge": true, "pr_number": 27, @@ -331,7 +331,7 @@ "source": "git_commit", "hash": "8da0610dcedecf15c389b5fe75514648c11bae3d", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-09T17:38:05+08:00", "is_merge": true, "pr_number": 30, @@ -343,7 +343,7 @@ "source": "git_commit", "hash": "4b228cba70fdcace76894a8e0425ad5ee4e85d54", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-09T22:51:18+08:00", "is_merge": true, "pr_number": 32, @@ -355,7 +355,7 @@ "source": "git_commit", "hash": "fa7c598904ba9ebcaa1f0bef31590affb84fe4fe", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T13:24:06+08:00", "is_merge": true, "pr_number": 33, @@ -367,7 +367,7 @@ "source": "git_commit", "hash": "7b3fae3115d1efe1f01b97e6b6e9fb4deae56a89", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T15:01:29+08:00", "is_merge": true, "pr_number": 34, @@ -379,7 +379,7 @@ "source": "git_commit", "hash": "a8e2c3d5e8891ed1cfc4189622fb22b95bb51e9b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T15:35:04+08:00", "is_merge": true, "pr_number": 35, @@ -391,7 +391,7 @@ "source": "git_commit", "hash": "86f680040f3853645edccd5ac8a9ae3ae732e91e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T16:04:10+08:00", "is_merge": true, "pr_number": 36, @@ -403,7 +403,7 @@ "source": "git_commit", "hash": "544f9cae474b32c27e44dc3fdcb2f6a45ec129c2", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T16:33:30+08:00", "is_merge": true, "pr_number": 37, @@ -415,7 +415,7 @@ "source": "git_commit", "hash": "efc93ce748fac5f6e7fcd8938eaf69047f75093e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T18:27:48+08:00", "is_merge": true, "pr_number": 38, @@ -427,7 +427,7 @@ "source": "git_commit", "hash": "f5bb42f979c3fd4f05d220d870a4887e3ede536e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T18:28:34+08:00", "is_merge": true, "pr_number": 39, @@ -439,7 +439,7 @@ "source": "git_commit", "hash": "211723d47cba711467ce685ae3f4a1f56b265040", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T18:50:56+08:00", "is_merge": true, "pr_number": 41, @@ -451,7 +451,7 @@ "source": "git_commit", "hash": "449f654d7ae03fd12e0389b0029c539e853c3ccf", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T19:36:13+08:00", "is_merge": true, "pr_number": 42, @@ -463,7 +463,7 @@ "source": "git_commit", "hash": "9c8c6987bc0f4bb3d5240c28374700442a877627", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T19:36:51+08:00", "is_merge": true, "pr_number": 43, @@ -475,7 +475,7 @@ "source": "git_commit", "hash": "b26d42a1b7057d725926a2014d9bca5ce5f2eb8c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T20:11:37+08:00", "is_merge": true, "pr_number": 44, @@ -487,7 +487,7 @@ "source": "git_commit", "hash": "a19a2f928ae4a3d42989b34f695872fe9d99aa86", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T20:36:55+08:00", "is_merge": true, "pr_number": 45, @@ -499,7 +499,7 @@ "source": "git_commit", "hash": "ca9065b08a02e7be70850760bdd4ee1cf0631b1c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T21:11:01+08:00", "is_merge": true, "pr_number": 47, @@ -511,7 +511,7 @@ "source": "git_commit", "hash": "f951ef1876aa439a65e6edaef3f4c492fb88d30d", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T22:07:57+08:00", "is_merge": true, "pr_number": 49, @@ -523,7 +523,7 @@ "source": "git_commit", "hash": "6041719b67b7af0114675c2c5820b7eaec0ba63e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T23:35:05+08:00", "is_merge": true, "pr_number": 50, @@ -535,7 +535,7 @@ "source": "git_commit", "hash": "c5191e52b16640f44c4dc60edf18a02f60916e36", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-10T23:35:30+08:00", "is_merge": true, "pr_number": 51, @@ -547,7 +547,7 @@ "source": "git_commit", "hash": "b6d64a9068624a86e356b51e211249eedb76f025", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-11T16:50:45+08:00", "is_merge": true, "pr_number": 56, @@ -559,7 +559,7 @@ "source": "git_commit", "hash": "34993af89948237b6cc07c68543fed5e3358dc00", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-11T16:51:18+08:00", "is_merge": true, "pr_number": 55, @@ -571,7 +571,7 @@ "source": "git_commit", "hash": "830fe448167d47c8ada119f4e7927d19337c8e9e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-11T16:51:59+08:00", "is_merge": true, "pr_number": 54, @@ -583,7 +583,7 @@ "source": "git_commit", "hash": "2de915b8b62d112f159fac1a8f9c7a88193ea416", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-11T17:32:50+08:00", "is_merge": true, "pr_number": 62, @@ -595,7 +595,7 @@ "source": "git_commit", "hash": "aa9cc284347621e2fa03cb14e529d13c92b6aeaa", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-11T18:10:59+08:00", "is_merge": true, "pr_number": 63, @@ -607,7 +607,7 @@ "source": "git_commit", "hash": "57ac9c366d446e48a55559ed3102ecae6aa54046", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-11T18:27:58+08:00", "is_merge": true, "pr_number": 64, @@ -619,7 +619,7 @@ "source": "git_commit", "hash": "7895e0cdf576c6190aaa57eda2ddfeecd4c67d8a", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-11T18:35:42+08:00", "is_merge": true, "pr_number": 65, @@ -631,7 +631,7 @@ "source": "git_commit", "hash": "5d117847af9aad70bb7c917ad133eba8e6dca0c5", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-11T20:15:37+08:00", "is_merge": true, "pr_number": 66, @@ -643,7 +643,7 @@ "source": "git_commit", "hash": "2d03e6ee72e168e1f9caaad1122c7e64eca097a0", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-11T21:00:14+08:00", "is_merge": true, "pr_number": 67, @@ -655,7 +655,7 @@ "source": "git_commit", "hash": "aa694013d209aebb5327b5387249b57d50ba9b6a", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-11T22:22:28+08:00", "is_merge": true, "pr_number": 69, @@ -667,7 +667,7 @@ "source": "git_commit", "hash": "8d16a93b3797638512010e8cf7c355eab741445c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-12T00:01:43+08:00", "is_merge": true, "pr_number": 73, @@ -679,7 +679,7 @@ "source": "git_commit", "hash": "d1c529970d32ef0850c2eafb77d319a1be30fd0e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-12T21:22:02+08:00", "is_merge": true, "pr_number": 74, @@ -691,7 +691,7 @@ "source": "git_commit", "hash": "62fe3b6f6077e5b25a6d46ebe82d2814d479c7fc", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-12T23:34:40+08:00", "is_merge": true, "pr_number": 76, @@ -703,7 +703,7 @@ "source": "git_commit", "hash": "e9f4486f4ea8f4238f22ff433163580a0671db3b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-12T23:48:26+08:00", "is_merge": true, "pr_number": 23, @@ -715,7 +715,7 @@ "source": "git_commit", "hash": "f04d4a62d48ff42f3063c34dbbd708b45e94d4c3", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-13T12:49:11+08:00", "is_merge": true, "pr_number": 78, @@ -727,7 +727,7 @@ "source": "git_commit", "hash": "fcf7514dfe77a8bcf37a0aa64d23eb1f42852add", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-13T13:30:57+08:00", "is_merge": true, "pr_number": 79, @@ -739,7 +739,7 @@ "source": "git_commit", "hash": "b1c8b2e32f64aa69e858271bb72456b3c615c16e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-13T14:03:16+08:00", "is_merge": true, "pr_number": 80, @@ -751,7 +751,7 @@ "source": "git_commit", "hash": "ac17c4715c13000f69c32fd5cb4f719abd8bd091", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-13T14:52:11+08:00", "is_merge": true, "pr_number": 81, @@ -763,7 +763,7 @@ "source": "git_commit", "hash": "a6c1e22057d05c6e2820a917cf6d1bfeceb140a9", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-13T21:29:20+08:00", "is_merge": true, "pr_number": 87, @@ -775,7 +775,7 @@ "source": "git_commit", "hash": "c208186530681c6b12f9a7830f1d39a5e37126c8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-13T21:37:54+08:00", "is_merge": true, "pr_number": 82, @@ -787,7 +787,7 @@ "source": "git_commit", "hash": "a23ef896b83ac5af0c442c147ae1c793c018c0cb", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-13T22:25:38+08:00", "is_merge": true, "pr_number": 89, @@ -799,7 +799,7 @@ "source": "git_commit", "hash": "f567a589346341f8cb22ba7a188205085deeda24", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-13T22:51:33+08:00", "is_merge": true, "pr_number": 91, @@ -811,7 +811,7 @@ "source": "git_commit", "hash": "0ac91e136084cfb5cafdc7d8629d8c735db32f43", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-14T03:22:17+08:00", "is_merge": true, "pr_number": 93, @@ -823,7 +823,7 @@ "source": "git_commit", "hash": "eaecc8547bf300488c56de87c169e09115017cd5", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-14T04:29:50+08:00", "is_merge": true, "pr_number": 95, @@ -835,7 +835,7 @@ "source": "git_commit", "hash": "1d54f00230f647ee6b7e4de029e908883dca2f3c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-14T15:12:19+08:00", "is_merge": true, "pr_number": 96, @@ -847,7 +847,7 @@ "source": "git_commit", "hash": "4aa5d429e34f9f7be03eb3c80a2665ac94735127", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-14T16:25:22+08:00", "is_merge": true, "pr_number": 97, @@ -859,7 +859,7 @@ "source": "git_commit", "hash": "5f188afe24d62241064f857537cef9f90caff44f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-14T21:47:23+08:00", "is_merge": true, "pr_number": 98, @@ -871,7 +871,7 @@ "source": "git_commit", "hash": "f7207f030d4e151715fb9507dfddf16216dcbca4", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-15T01:02:08+08:00", "is_merge": true, "pr_number": 99, @@ -883,7 +883,7 @@ "source": "git_commit", "hash": "fe81baeb04b60fc3bdb09b8b9ea6455d6bd8f84b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-15T01:42:12+08:00", "is_merge": true, "pr_number": 100, @@ -895,7 +895,7 @@ "source": "git_commit", "hash": "65e9fdf572bb71733d9d07fc77dc55e2387526a0", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-15T01:57:31+08:00", "is_merge": true, "pr_number": 101, @@ -907,7 +907,7 @@ "source": "git_commit", "hash": "1e2d668b5e346e4d9b8adace73886ca3f512e338", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-15T02:32:58+08:00", "is_merge": true, "pr_number": 102, @@ -919,7 +919,7 @@ "source": "git_commit", "hash": "4192905dd0106c2975343fdf2f3ef7e94225e885", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-15T15:32:54+08:00", "is_merge": true, "pr_number": 107, @@ -931,7 +931,7 @@ "source": "git_commit", "hash": "ac20b9da742056d1e299945255d26d93a914ecdd", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-15T16:26:46+08:00", "is_merge": true, "pr_number": 108, @@ -943,7 +943,7 @@ "source": "git_commit", "hash": "c6d40cd51b7207a045a75cb389c92039e6ef009d", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-15T17:38:27+08:00", "is_merge": true, "pr_number": 109, @@ -955,7 +955,7 @@ "source": "git_commit", "hash": "01664046aa901e4ac97c1e27661f82b2dcc18e60", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-15T18:41:08+08:00", "is_merge": true, "pr_number": 110, @@ -967,7 +967,7 @@ "source": "git_commit", "hash": "74baf7f97bdec982836c682743229a8de743c468", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-15T21:26:36+08:00", "is_merge": true, "pr_number": 112, @@ -979,7 +979,7 @@ "source": "git_commit", "hash": "47c4229fd595d0a1f48937840479405085ff4f83", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-15T22:18:51+08:00", "is_merge": false, "pr_number": null, @@ -996,7 +996,7 @@ "source": "git_commit", "hash": "110589f09be521fd19dc7c47cf6c9cc711fbb2a4", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-15T23:33:14+08:00", "is_merge": true, "pr_number": 114, @@ -1008,7 +1008,7 @@ "source": "git_commit", "hash": "7abefa7935da69cb00f3baf84e1a8bd6ba61fbd4", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-15T23:33:41+08:00", "is_merge": true, "pr_number": 113, @@ -1020,7 +1020,7 @@ "source": "git_commit", "hash": "16cda2e4a51baf27fdf5a0bdec768fc79edbf647", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-15T23:35:14+08:00", "is_merge": true, "pr_number": 104, @@ -1032,7 +1032,7 @@ "source": "git_commit", "hash": "d0bfe440859d259df59107bce0cf708878a2ed1b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-16T12:27:16+08:00", "is_merge": true, "pr_number": 116, @@ -1044,7 +1044,7 @@ "source": "git_commit", "hash": "5893f5494067fd53c567a7a87e5de7a9f34a01f8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-16T14:08:31+08:00", "is_merge": true, "pr_number": 119, @@ -1056,7 +1056,7 @@ "source": "git_commit", "hash": "fba31cc4635a2d284372d9e186a036fc9b26d143", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-16T17:40:19+08:00", "is_merge": false, "pr_number": null, @@ -1073,7 +1073,7 @@ "source": "git_commit", "hash": "5404e1e4a1ab82f2b87947e89c13034f0e96c655", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-16T18:02:22+08:00", "is_merge": true, "pr_number": 120, @@ -1085,7 +1085,7 @@ "source": "git_commit", "hash": "7042ad8c5239a2c515b6320eebc6b5fb6b1f2032", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-16T18:37:12+08:00", "is_merge": true, "pr_number": 121, @@ -1097,7 +1097,7 @@ "source": "git_commit", "hash": "2caf5f30fcbca367846f9c9ec50052ce1b2f3715", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-16T23:11:52+08:00", "is_merge": true, "pr_number": 123, @@ -1109,7 +1109,7 @@ "source": "git_commit", "hash": "9ba1d14f2a59c51ba43ba6aea985d17a7047f661", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-16T23:37:54+08:00", "is_merge": true, "pr_number": 124, @@ -1121,7 +1121,7 @@ "source": "git_commit", "hash": "96f9f68847a8af6a603825397aa533093c4d4ca8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-17T10:20:32+08:00", "is_merge": true, "pr_number": 127, @@ -1133,7 +1133,7 @@ "source": "git_commit", "hash": "d6716f1653642e1c3c3662e38d7f0a3f71c2df40", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-17T14:53:23+08:00", "is_merge": true, "pr_number": 129, @@ -1145,7 +1145,7 @@ "source": "git_commit", "hash": "43f19a8627ca771473eab24050bfd0fda1fb81c4", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-17T15:09:37+08:00", "is_merge": true, "pr_number": 131, @@ -1157,7 +1157,7 @@ "source": "git_commit", "hash": "ab0fd567d2a0576ca270c0c4ad88e23cb19825d6", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-17T18:24:07+08:00", "is_merge": true, "pr_number": 132, @@ -1169,7 +1169,7 @@ "source": "git_commit", "hash": "641bfafc50b399ba8be8fbb8364326813bf1c6e3", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-17T23:56:21+08:00", "is_merge": true, "pr_number": 133, @@ -1181,7 +1181,7 @@ "source": "git_commit", "hash": "5ae86707a38cee9a5e7b7d6d9a39488fe4291998", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-19T00:44:30+08:00", "is_merge": true, "pr_number": 139, @@ -1193,7 +1193,7 @@ "source": "git_commit", "hash": "20d0bb0020f187c3a70a3ae1f18dad2a50fbefb8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-20T18:41:38+08:00", "is_merge": true, "pr_number": 143, @@ -1205,7 +1205,7 @@ "source": "git_commit", "hash": "6532f481f7f205d0f1db48cbad909c0846353eac", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-21T08:08:35+08:00", "is_merge": true, "pr_number": 145, @@ -1217,7 +1217,7 @@ "source": "git_commit", "hash": "d42d8d529fbab7aa6ff4d375b4c1af3bca07d3ec", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-21T11:44:27+08:00", "is_merge": true, "pr_number": 146, @@ -1229,7 +1229,7 @@ "source": "git_commit", "hash": "01bfde6cd66328dfdf5ba63650d804dbc88ff16f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-21T20:55:09+08:00", "is_merge": true, "pr_number": 148, @@ -1241,7 +1241,7 @@ "source": "git_commit", "hash": "f7d711dfd23851ad2a999b95a5a6ad6910f20756", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-21T21:14:09+08:00", "is_merge": true, "pr_number": 149, @@ -1253,7 +1253,7 @@ "source": "git_commit", "hash": "d640442afce5b5d4ea3ccd7923951f1487ba3d4b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-21T21:33:59+08:00", "is_merge": true, "pr_number": 150, @@ -1265,7 +1265,7 @@ "source": "git_commit", "hash": "60af22b194b35616e7b49434586c8e89e0605872", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-21T22:15:51+08:00", "is_merge": true, "pr_number": 152, @@ -1277,7 +1277,7 @@ "source": "git_commit", "hash": "d4ff31f8fbed49cab468548e28799c772fb51968", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-22T01:03:20+08:00", "is_merge": true, "pr_number": 153, @@ -1289,7 +1289,7 @@ "source": "git_commit", "hash": "390f83e150cce1e1d11660b8ba769609987bd5f3", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-22T19:37:20+08:00", "is_merge": true, "pr_number": 155, @@ -1301,7 +1301,7 @@ "source": "git_commit", "hash": "94e4942b1b1c82cc02c54a58474c2b204f4fb80c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-22T22:49:26+08:00", "is_merge": true, "pr_number": 156, @@ -1313,7 +1313,7 @@ "source": "git_commit", "hash": "718a656b8ac684e1830a2caa3b5083503b97ee58", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-23T01:21:15+08:00", "is_merge": true, "pr_number": 157, @@ -1325,7 +1325,7 @@ "source": "git_commit", "hash": "882225dcd3df6ea7916557870970e370215027dc", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-23T02:14:59+08:00", "is_merge": true, "pr_number": 160, @@ -1337,7 +1337,7 @@ "source": "git_commit", "hash": "f53d887fc1a931f343efccf78583aa629d5738e2", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-23T18:16:20+08:00", "is_merge": true, "pr_number": 161, @@ -1349,7 +1349,7 @@ "source": "git_commit", "hash": "b0fbecf050cd28de8818f5987aceec841e67913e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-23T20:38:29+08:00", "is_merge": true, "pr_number": 164, @@ -1361,7 +1361,7 @@ "source": "git_commit", "hash": "fbf79d9177feacf39c4e944dd153f725853fd90d", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-23T22:03:47+08:00", "is_merge": true, "pr_number": 165, @@ -1373,7 +1373,7 @@ "source": "git_commit", "hash": "5cec3bfd55915b7c701e316d24a123513a1dd102", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-23T22:38:25+08:00", "is_merge": true, "pr_number": 166, @@ -1385,7 +1385,7 @@ "source": "git_commit", "hash": "67e78d0b14d1f05063ac336d54e5eb6924a76e3c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T01:21:09+08:00", "is_merge": true, "pr_number": 167, @@ -1397,7 +1397,7 @@ "source": "git_commit", "hash": "cdb1db2db6f3576a56aee8c0a15ce9c065181261", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T08:05:43+08:00", "is_merge": false, "pr_number": null, @@ -1414,7 +1414,7 @@ "source": "git_commit", "hash": "ced0551cf3474e096027dc592377ebe9060cfbd6", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T08:23:32+08:00", "is_merge": true, "pr_number": 168, @@ -1426,7 +1426,7 @@ "source": "git_commit", "hash": "0c7b5f57cdd679c41081be8f990da4fec95b3e8c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T08:40:21+08:00", "is_merge": true, "pr_number": 169, @@ -1438,7 +1438,7 @@ "source": "git_commit", "hash": "e4b343c3d480f353ab1c4c0709852742db684f8b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T09:22:50+08:00", "is_merge": true, "pr_number": 170, @@ -1450,7 +1450,7 @@ "source": "git_commit", "hash": "431cd3d8924037b7229ec53f8758587d07606bd5", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T10:19:39+08:00", "is_merge": true, "pr_number": 171, @@ -1462,7 +1462,7 @@ "source": "git_commit", "hash": "2af76edd49d4509622b3b6b0904f87c1c51d1243", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T12:15:28+08:00", "is_merge": false, "pr_number": null, @@ -1479,7 +1479,7 @@ "source": "git_commit", "hash": "907e517f9ee80847a7b768a0684beb1339745e07", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T12:31:25+08:00", "is_merge": true, "pr_number": 172, @@ -1491,7 +1491,7 @@ "source": "git_commit", "hash": "8ab2a8d702209cf9915817fc3792ff315094f5ef", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T15:34:54+08:00", "is_merge": true, "pr_number": 174, @@ -1503,7 +1503,7 @@ "source": "git_commit", "hash": "e0ac2bbbc69408b949c9f965add3c58c0efdbe1c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T16:00:00+08:00", "is_merge": true, "pr_number": 175, @@ -1515,7 +1515,7 @@ "source": "git_commit", "hash": "1cb07440aee7c159ed8334f36fac101ea41eb9d0", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T16:30:23+08:00", "is_merge": true, "pr_number": 176, @@ -1527,7 +1527,7 @@ "source": "git_commit", "hash": "b9832531a6d455a8bf22f6e83270b9f465131563", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T19:08:57+08:00", "is_merge": true, "pr_number": 177, @@ -1539,7 +1539,7 @@ "source": "git_commit", "hash": "fbdc8dae8abbbe36b6a7d7ff7fa51819bdb571dd", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T19:36:35+08:00", "is_merge": true, "pr_number": 178, @@ -1551,7 +1551,7 @@ "source": "git_commit", "hash": "3f980393d544aca69747da1f11b8bf14dee482f0", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T20:09:56+08:00", "is_merge": true, "pr_number": 179, @@ -1563,7 +1563,7 @@ "source": "git_commit", "hash": "0134601dc772cc2959589a1b4316b8970c035cd8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T22:11:19+08:00", "is_merge": true, "pr_number": 180, @@ -1575,7 +1575,7 @@ "source": "git_commit", "hash": "b475f1b9aa0b2ece6244b93871456cb78a0a0a82", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T22:53:39+08:00", "is_merge": true, "pr_number": 181, @@ -1587,7 +1587,7 @@ "source": "git_commit", "hash": "bfcbc8f1b0c48a43f50fcda1872fc5978dd8a721", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-24T23:22:54+08:00", "is_merge": true, "pr_number": 183, @@ -1599,7 +1599,7 @@ "source": "git_commit", "hash": "d4a0264e1e840e3e341b7dda496cdfae6a4180f9", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-25T01:18:04+08:00", "is_merge": true, "pr_number": 184, @@ -1611,7 +1611,7 @@ "source": "git_commit", "hash": "b3aa3d9a03144d903226df05e0a59e6f9518b997", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-25T10:15:46+08:00", "is_merge": true, "pr_number": 185, @@ -1623,7 +1623,7 @@ "source": "git_commit", "hash": "15eafe3a845c6aa1c886529f56124365f893c57d", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-25T11:55:51+08:00", "is_merge": true, "pr_number": 186, @@ -1635,7 +1635,7 @@ "source": "git_commit", "hash": "2e58d77588057124a47f70025a67ddab63b120dd", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-25T13:34:14+08:00", "is_merge": true, "pr_number": 189, @@ -1647,7 +1647,7 @@ "source": "git_commit", "hash": "68552db88573e0f7bf91f5d1991ad2d95c91c212", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-25T15:17:51+08:00", "is_merge": true, "pr_number": 190, @@ -1659,7 +1659,7 @@ "source": "git_commit", "hash": "bf26bd2230851016ae251ebb0bac370e5897ea05", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-25T15:37:36+08:00", "is_merge": true, "pr_number": 191, @@ -1671,7 +1671,7 @@ "source": "git_commit", "hash": "d9bec2e3bf2b1d67d0f445511fea94847ceb4653", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-25T17:32:10+08:00", "is_merge": true, "pr_number": 192, @@ -1683,7 +1683,7 @@ "source": "git_commit", "hash": "c98b47017e3e836108bbc1cd9cc8037686e7b06b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-25T18:12:23+08:00", "is_merge": true, "pr_number": 194, @@ -1695,7 +1695,7 @@ "source": "git_commit", "hash": "163c91b382a7a44a44a07641a96fbcbd70caa3f8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-25T21:24:37+08:00", "is_merge": true, "pr_number": 196, @@ -1707,7 +1707,7 @@ "source": "git_commit", "hash": "f0be2f8f124eeff13d4801503401be7e083e127d", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T00:00:01+08:00", "is_merge": true, "pr_number": 198, @@ -1719,7 +1719,7 @@ "source": "git_commit", "hash": "d425727538dcf154844761cfc5d05cc700b5f9f9", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T07:26:41+08:00", "is_merge": true, "pr_number": 199, @@ -1731,7 +1731,7 @@ "source": "git_commit", "hash": "0a2129c175b0e0f6d8eca376361efc21091d7e5e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T09:50:57+08:00", "is_merge": true, "pr_number": 200, @@ -1743,7 +1743,7 @@ "source": "git_commit", "hash": "84d33264357dbd4ece8c04b8251369b63fd6a507", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T13:39:07+08:00", "is_merge": true, "pr_number": 202, @@ -1755,7 +1755,7 @@ "source": "git_commit", "hash": "2194be41b4cd7fe7e80d5a6f0a9a53cf20f2565f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T15:10:20+08:00", "is_merge": true, "pr_number": null, @@ -1767,7 +1767,7 @@ "source": "git_commit", "hash": "855438df285fdee5b2f2857757b6f83d962aeec6", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T16:02:34+08:00", "is_merge": true, "pr_number": 203, @@ -1779,7 +1779,7 @@ "source": "git_commit", "hash": "40f83c059a26259860c8f67d6720925a12e763c1", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T16:47:45+08:00", "is_merge": true, "pr_number": null, @@ -1791,7 +1791,7 @@ "source": "git_commit", "hash": "8741795d35b9924312038be20469e8ecf63c849b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T16:48:14+08:00", "is_merge": true, "pr_number": 214, @@ -1803,7 +1803,7 @@ "source": "git_commit", "hash": "8eced0d20a5ce3e0dc1749457a6c0ed6772df57c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T17:24:43+08:00", "is_merge": true, "pr_number": null, @@ -1815,7 +1815,7 @@ "source": "git_commit", "hash": "3435f1e25eeadf75eedffe5f813bd56d45a9c9ca", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T18:49:35+08:00", "is_merge": true, "pr_number": 215, @@ -1827,7 +1827,7 @@ "source": "git_commit", "hash": "eb4f66f0b14aae8b370e79b0cc866aaad925060f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T20:28:41+08:00", "is_merge": true, "pr_number": 217, @@ -1839,7 +1839,7 @@ "source": "git_commit", "hash": "32e5327b8e8daada917ba60ca162e82a90cef2bb", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T20:42:22+08:00", "is_merge": true, "pr_number": null, @@ -1851,7 +1851,7 @@ "source": "git_commit", "hash": "030d83dba66600729bbc7c634269074777254c64", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T20:53:27+08:00", "is_merge": true, "pr_number": 216, @@ -1863,7 +1863,7 @@ "source": "git_commit", "hash": "5147245d60e878217905a041b263a3d0aed3817b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T21:54:44+08:00", "is_merge": true, "pr_number": 218, @@ -1875,7 +1875,7 @@ "source": "git_commit", "hash": "209cf32f3af74ba209767e24c06370e127f57f46", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-26T22:54:52+08:00", "is_merge": true, "pr_number": 219, @@ -1887,7 +1887,7 @@ "source": "git_commit", "hash": "82577df4ed84c5086c9ff4f3ab6270d2ec1e88e5", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-27T02:45:22+08:00", "is_merge": true, "pr_number": 221, @@ -1899,7 +1899,7 @@ "source": "git_commit", "hash": "9de475a51d31adc73435487e606a9d9b6c121af4", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-27T09:11:41+08:00", "is_merge": true, "pr_number": 222, @@ -1911,7 +1911,7 @@ "source": "git_commit", "hash": "25c26c592dbf79f65e1b0b45d7901cc94e43be07", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-27T10:45:37+08:00", "is_merge": true, "pr_number": 223, @@ -1923,7 +1923,7 @@ "source": "git_commit", "hash": "4da1c1f9a43b9b079320db058b0c5e64efa3b8a3", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-27T16:45:08+08:00", "is_merge": true, "pr_number": 225, @@ -1935,7 +1935,7 @@ "source": "git_commit", "hash": "902da95963d9e6af8eecd17a77ab752f88a75858", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-28T12:19:01-04:00", "is_merge": true, "pr_number": 226, @@ -1947,7 +1947,7 @@ "source": "git_commit", "hash": "ae2f37d1d5cbc0b6470ff5f5f1d78611cd14ae96", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-29T00:40:33-04:00", "is_merge": true, "pr_number": null, @@ -1959,7 +1959,7 @@ "source": "git_commit", "hash": "20dc573e40e3b8983bf101f4c171345fde846dd3", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-29T00:41:28-04:00", "is_merge": true, "pr_number": 227, @@ -1971,7 +1971,7 @@ "source": "git_commit", "hash": "055622f733b807c50c2807f5b36264e203bd8a50", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-30T15:42:45+08:00", "is_merge": true, "pr_number": null, @@ -1983,7 +1983,7 @@ "source": "git_commit", "hash": "34ff29d8f38115702ce0c7298ee5fe7ed5c31c19", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-30T15:43:11+08:00", "is_merge": true, "pr_number": 228, @@ -1995,7 +1995,7 @@ "source": "git_commit", "hash": "a0c90694846f6e27ed0fb9b2cb4405e99cce8210", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-30T19:12:42+08:00", "is_merge": true, "pr_number": 229, @@ -2007,7 +2007,7 @@ "source": "git_commit", "hash": "5921536bb57c23bb9a06bcf2b4f2a9b8863b3e42", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-30T21:53:24+08:00", "is_merge": true, "pr_number": 230, @@ -2019,7 +2019,7 @@ "source": "git_commit", "hash": "dd8ce0f4ec9ef19cd4614916d2937062a7bb3cd5", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-30T23:00:21+08:00", "is_merge": true, "pr_number": 231, @@ -2031,7 +2031,7 @@ "source": "git_commit", "hash": "26e3fa9a23a81e7acf1b2b0259d84cd9e25e2f0f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-31T09:42:28+08:00", "is_merge": true, "pr_number": 232, @@ -2043,7 +2043,7 @@ "source": "git_commit", "hash": "4ff38776874e784d65db75de05e7e618c3570471", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-31T10:38:19+08:00", "is_merge": true, "pr_number": 233, @@ -2055,7 +2055,7 @@ "source": "git_commit", "hash": "38bf71ec5237c442e8607218fcd0f248e768e746", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-31T12:26:03+08:00", "is_merge": true, "pr_number": 234, @@ -2067,7 +2067,7 @@ "source": "git_commit", "hash": "98f912090b81ddb6c7ef07ed455695f69c7e5f1c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-31T12:48:29+08:00", "is_merge": true, "pr_number": 235, @@ -2079,7 +2079,7 @@ "source": "git_commit", "hash": "ed12b188fc0df68fc812afb91cd91d757e8be1d9", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-31T14:05:20+08:00", "is_merge": true, "pr_number": 237, @@ -2091,7 +2091,7 @@ "source": "git_commit", "hash": "424f4c367365c51f3ed67e4f8a2bb54e249558e7", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-31T15:10:56+08:00", "is_merge": true, "pr_number": 238, @@ -2103,7 +2103,7 @@ "source": "git_commit", "hash": "37f790342b366afdafee80dc775a3f57f771ef91", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-31T16:56:34+08:00", "is_merge": true, "pr_number": 239, @@ -2115,7 +2115,7 @@ "source": "git_commit", "hash": "125746568ad6e5481eedcba24b9c66b9805ee682", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-31T17:27:41+08:00", "is_merge": true, "pr_number": 240, @@ -2127,7 +2127,7 @@ "source": "git_commit", "hash": "8b4cc468057fc097130d7a65a2935b2e024c3ec8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-31T18:46:10+08:00", "is_merge": true, "pr_number": 241, @@ -2139,7 +2139,7 @@ "source": "git_commit", "hash": "ab0d32ccdac14f94b6a04efe9bf32ac287537e47", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-31T19:19:06+08:00", "is_merge": true, "pr_number": 242, @@ -2151,7 +2151,7 @@ "source": "git_commit", "hash": "622436d756cab4065c37bf300f8ed911783adff0", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-31T21:04:15+08:00", "is_merge": false, "pr_number": null, @@ -2168,7 +2168,7 @@ "source": "git_commit", "hash": "46f0eb675485fe2b13586b3d785a9e766b751cd4", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-31T21:06:23+08:00", "is_merge": true, "pr_number": 243, @@ -2180,7 +2180,7 @@ "source": "git_commit", "hash": "488ecdcf66ce83dab0866ff92cbb54f3f39dd02c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-31T23:13:33+08:00", "is_merge": true, "pr_number": 244, @@ -2192,7 +2192,7 @@ "source": "git_commit", "hash": "ed03015b52ac1f468cb2df6cad3b42a0ed61a3da", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-03-31T23:59:32+08:00", "is_merge": true, "pr_number": 246, @@ -2204,7 +2204,7 @@ "source": "git_commit", "hash": "27ffddec1e9b5a1690f45035e3212434c8ed54b0", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-01T14:21:07+08:00", "is_merge": true, "pr_number": 247, @@ -2216,7 +2216,7 @@ "source": "git_commit", "hash": "7fd371d25993544ec8ded3a0b176e1be50d3ae64", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-01T16:18:32+08:00", "is_merge": true, "pr_number": 248, @@ -2228,7 +2228,7 @@ "source": "git_commit", "hash": "b12f0a4e6b5de6e20104ba5bec8f7824f10e3632", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-01T20:54:53+08:00", "is_merge": true, "pr_number": 249, @@ -2240,7 +2240,7 @@ "source": "git_commit", "hash": "03e99eed004f0cfc85b9377b17ec42c2f5148d9a", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-02T00:30:02+08:00", "is_merge": true, "pr_number": 250, @@ -2252,7 +2252,7 @@ "source": "git_commit", "hash": "e19172651b0f2eb0d1706667e6b116af7f5f5045", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-02T15:18:33+08:00", "is_merge": true, "pr_number": 251, @@ -2264,7 +2264,7 @@ "source": "git_commit", "hash": "c18583bee8909f0528fbeb2eb0fb2de89cf0ca06", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-02T16:04:28+08:00", "is_merge": false, "pr_number": null, @@ -2281,7 +2281,7 @@ "source": "git_commit", "hash": "0b1706a6fa581816038f0ae731c803a4469cf420", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-02T16:12:45+08:00", "is_merge": false, "pr_number": null, @@ -2298,7 +2298,7 @@ "source": "git_commit", "hash": "214f0903f2d342fcf9de659d08a45903476b90ab", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-02T16:14:06+08:00", "is_merge": true, "pr_number": 253, @@ -2310,7 +2310,7 @@ "source": "git_commit", "hash": "b679c01ec0a403a09f5f0a5ee8cd39f6ae584cef", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-02T16:19:53+08:00", "is_merge": false, "pr_number": null, @@ -2327,7 +2327,7 @@ "source": "git_commit", "hash": "2df77eb3e0dd7a6e13b6fb8581899dc3c141aaec", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-02T17:16:41+08:00", "is_merge": true, "pr_number": 254, @@ -2339,7 +2339,7 @@ "source": "git_commit", "hash": "bb7e8b87a063d542ee5be59718da426487554a4a", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-02T17:54:58+08:00", "is_merge": false, "pr_number": null, @@ -2356,7 +2356,7 @@ "source": "git_commit", "hash": "44f519eecbe31a5cd6c05de3555895735e095fd5", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-02T20:28:53+08:00", "is_merge": true, "pr_number": 256, @@ -2368,7 +2368,7 @@ "source": "git_commit", "hash": "cc77fbbbf5bb3a9c678dfe40bc49d7898a1c1f4f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-02T22:35:03+08:00", "is_merge": true, "pr_number": 257, @@ -2380,7 +2380,7 @@ "source": "git_commit", "hash": "b3f38e263f6f6aa6e03a516445cbea8b63bd9c09", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-02T22:57:32+08:00", "is_merge": true, "pr_number": 258, @@ -2392,7 +2392,7 @@ "source": "git_commit", "hash": "ed2eefa3c9b3289194fdf4b6a318442bd30778c8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-03T00:32:36+08:00", "is_merge": true, "pr_number": 260, @@ -2404,7 +2404,7 @@ "source": "git_commit", "hash": "110ea38e443d1e6e3690a1b27efb2c60c26a3a2e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-03T01:00:29+08:00", "is_merge": true, "pr_number": 261, @@ -2416,7 +2416,7 @@ "source": "git_commit", "hash": "9049e3412a9aafa79b194c13298095a5e4876a67", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-03T01:30:16+08:00", "is_merge": true, "pr_number": 262, @@ -2428,7 +2428,7 @@ "source": "git_commit", "hash": "7b6b51707968784d84cc776ace1fd013f88918f4", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-03T04:04:18+08:00", "is_merge": true, "pr_number": 263, @@ -2440,7 +2440,7 @@ "source": "git_commit", "hash": "5636aed43c360eb4466d7081baa5d10bd84b11c0", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-03T04:48:18+08:00", "is_merge": true, "pr_number": 264, @@ -2452,7 +2452,7 @@ "source": "git_commit", "hash": "2ca48b9dc12f866b12df6ddf5977bf37c1df7b23", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-03T15:54:07+08:00", "is_merge": true, "pr_number": 265, @@ -2464,7 +2464,7 @@ "source": "git_commit", "hash": "4da53d4143cdaae0a789551fd68a555fad5643ea", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-03T22:17:41+08:00", "is_merge": true, "pr_number": 266, @@ -2476,7 +2476,7 @@ "source": "git_commit", "hash": "daf0698452d9796c8165075479258b0b6e42b2f7", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-04T14:21:01+08:00", "is_merge": true, "pr_number": 267, @@ -2488,7 +2488,7 @@ "source": "git_commit", "hash": "64915c83cd7c0fdf0d06ddf202c85173513a5c51", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-04T15:29:03+08:00", "is_merge": true, "pr_number": 268, @@ -2500,7 +2500,7 @@ "source": "git_commit", "hash": "5562e04fdc85d874e406dfb7b7ab487316b5588b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-04T15:53:51+08:00", "is_merge": true, "pr_number": 269, @@ -2512,7 +2512,7 @@ "source": "git_commit", "hash": "eff36580340d28c04bc2d4994d751c0bcfc4d150", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-04T15:55:21+08:00", "is_merge": true, "pr_number": 270, @@ -2524,7 +2524,7 @@ "source": "git_commit", "hash": "29c04f3be66815fc8fb4488539b95884a936be05", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-04T16:36:57+08:00", "is_merge": true, "pr_number": 271, @@ -2536,7 +2536,7 @@ "source": "git_commit", "hash": "0914e5737a9fed20941b6816baea5a36f1110bd3", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-04T16:46:16+08:00", "is_merge": true, "pr_number": 272, @@ -2548,7 +2548,7 @@ "source": "git_commit", "hash": "557a49313c207b4cf1d49faa913657d4fa1c3064", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-04T17:13:28+08:00", "is_merge": true, "pr_number": 273, @@ -2560,7 +2560,7 @@ "source": "git_commit", "hash": "cc5ed414dc12451e7afec3c5ad40e98daff50f6e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-04T19:43:10+08:00", "is_merge": true, "pr_number": 275, @@ -2572,7 +2572,7 @@ "source": "git_commit", "hash": "16788ed95528b14890dc9890f3b3daa5b601cf5e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-04T20:28:10+08:00", "is_merge": true, "pr_number": 276, @@ -2584,7 +2584,7 @@ "source": "git_commit", "hash": "0bb805bb4e9ba4bcd187b65901fe5fb8908e661d", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-04T22:35:49+08:00", "is_merge": true, "pr_number": 277, @@ -2596,7 +2596,7 @@ "source": "git_commit", "hash": "638edc2bd84f3d0be42d637b243ecbbd001f5183", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-04T23:57:51+08:00", "is_merge": true, "pr_number": 278, @@ -2608,7 +2608,7 @@ "source": "git_commit", "hash": "e47338bcfbf532e471c5965369638f149944927c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-05T00:13:20+08:00", "is_merge": true, "pr_number": 279, @@ -2620,7 +2620,7 @@ "source": "git_commit", "hash": "da11d8ccfba6e4f41c786cdc20936fef03d139f1", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-05T01:00:29+08:00", "is_merge": true, "pr_number": 280, @@ -2632,7 +2632,7 @@ "source": "git_commit", "hash": "c86f67ba5f23ca8c8cd006d32ea0adb9d43026d8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-05T03:19:11+08:00", "is_merge": true, "pr_number": 281, @@ -2644,7 +2644,7 @@ "source": "git_commit", "hash": "7f819dabbdae52356e69283ccac9cfcabdfc096a", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-05T14:44:42+08:00", "is_merge": true, "pr_number": 282, @@ -2656,7 +2656,7 @@ "source": "git_commit", "hash": "09574515aa39710cd8fd3dd3ce73e90a767adcd8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-05T16:17:56+08:00", "is_merge": true, "pr_number": 283, @@ -2668,7 +2668,7 @@ "source": "git_commit", "hash": "654860b5a6cab7b3dfcce5a1756d567f6dda5aef", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-05T18:57:39+08:00", "is_merge": true, "pr_number": 285, @@ -2680,7 +2680,7 @@ "source": "git_commit", "hash": "3fc025cbac5604ef14d54260913cbeef823e8928", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-05T19:37:51+08:00", "is_merge": true, "pr_number": 286, @@ -2692,7 +2692,7 @@ "source": "git_commit", "hash": "042f8d732d9176b175ca6a93b01a6f23f33a70d8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-05T20:27:53+08:00", "is_merge": true, "pr_number": 287, @@ -2704,7 +2704,7 @@ "source": "git_commit", "hash": "39de7bae253395066009827b7781fd6fc64df003", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-05T23:58:46+08:00", "is_merge": true, "pr_number": 288, @@ -2716,7 +2716,7 @@ "source": "git_commit", "hash": "7f83ffa33216bc77720ba6c0e575cd7f2e24b93a", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-06T00:29:52+08:00", "is_merge": true, "pr_number": 289, @@ -2728,7 +2728,7 @@ "source": "git_commit", "hash": "ccc7d7c532ddfb89b6ab72c6aa1b42c7930dd890", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-06T00:42:11+08:00", "is_merge": true, "pr_number": 291, @@ -2740,7 +2740,7 @@ "source": "git_commit", "hash": "c28ac150b3fb957fc38d00dbd7bc8c8066947929", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-06T02:11:30+08:00", "is_merge": true, "pr_number": 293, @@ -2752,7 +2752,7 @@ "source": "git_commit", "hash": "e81b1eff472c5a26933cbc070415a9fde19d00aa", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-06T09:29:23+08:00", "is_merge": true, "pr_number": 294, @@ -2764,7 +2764,7 @@ "source": "git_commit", "hash": "167661fd3d1d0a33daa43c7e24a84cc4bb584f9f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-06T10:03:34+08:00", "is_merge": true, "pr_number": 295, @@ -2776,7 +2776,7 @@ "source": "git_commit", "hash": "2354bc35c8278f4066a8d72c3b2990dc7e7f2352", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-06T13:01:29+08:00", "is_merge": true, "pr_number": 296, @@ -2788,7 +2788,7 @@ "source": "git_commit", "hash": "f835e36b5120fe9bcd6821a788f557d3daab0725", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-06T13:38:44+08:00", "is_merge": true, "pr_number": 297, @@ -2800,7 +2800,7 @@ "source": "git_commit", "hash": "4838952ce0da99579132f92c689ea14f1c6fce83", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-06T14:32:35+08:00", "is_merge": true, "pr_number": 298, @@ -2812,7 +2812,7 @@ "source": "git_commit", "hash": "0ca531810ac5905a253a731a321c3a83e9fdbfbc", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-06T14:53:49+08:00", "is_merge": true, "pr_number": 299, @@ -2824,7 +2824,7 @@ "source": "git_commit", "hash": "5656a97a3de4951120b3f608a8231290b72ec5d8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-06T16:42:25+08:00", "is_merge": true, "pr_number": 300, @@ -2836,7 +2836,7 @@ "source": "git_commit", "hash": "f2e494a3634e0b7596fa87ba87260c27f744ef2e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-06T17:12:06+08:00", "is_merge": true, "pr_number": 301, @@ -2848,7 +2848,7 @@ "source": "git_commit", "hash": "1c8bb7fd7c9f487e5f1103ada84544e4049d63ce", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-06T17:47:33+08:00", "is_merge": true, "pr_number": 302, @@ -2860,7 +2860,7 @@ "source": "git_commit", "hash": "1509cb4726f516a2424ecb645bdff1d76fdd1f54", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-06T18:29:43+08:00", "is_merge": true, "pr_number": 303, @@ -2872,7 +2872,7 @@ "source": "git_commit", "hash": "f2d590c43a431a9c358070d8a7de91c54fb57df3", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-06T19:03:52+08:00", "is_merge": true, "pr_number": 304, @@ -2884,7 +2884,7 @@ "source": "git_commit", "hash": "24656b52776d1660970ce45bdb147c61325c98ca", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-07T18:33:00+08:00", "is_merge": true, "pr_number": 305, @@ -2896,7 +2896,7 @@ "source": "git_commit", "hash": "13b5a822c08334204e78a78fe38a6b107455e248", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-07T20:47:35+08:00", "is_merge": true, "pr_number": 306, @@ -2908,7 +2908,7 @@ "source": "git_commit", "hash": "3e2ffff2bddc03150b9191a564a1a0efffcbf0d2", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-07T23:27:29+08:00", "is_merge": true, "pr_number": 307, @@ -2920,7 +2920,7 @@ "source": "git_commit", "hash": "ad788cb12bd9e4229587918ac2a496068661b9d9", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-08T01:49:01+08:00", "is_merge": true, "pr_number": 309, @@ -2932,7 +2932,7 @@ "source": "git_commit", "hash": "5b6836d46175e382f3a0669930e8fe138fe08e9f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-08T07:54:34+08:00", "is_merge": true, "pr_number": 310, @@ -2944,7 +2944,7 @@ "source": "git_commit", "hash": "12bfe6bc17501f1ff522c640381c33e8e1827156", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-08T08:27:59+08:00", "is_merge": true, "pr_number": 311, @@ -2956,7 +2956,7 @@ "source": "git_commit", "hash": "f13e579089ea37922058030198d6e7881e65be1b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-08T08:45:49+08:00", "is_merge": true, "pr_number": 312, @@ -2968,7 +2968,7 @@ "source": "git_commit", "hash": "752cce193db8a98b7c72c796375ac2863ddcf923", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-08T09:02:16+08:00", "is_merge": true, "pr_number": 313, @@ -2980,7 +2980,7 @@ "source": "git_commit", "hash": "f527dc9385d05bfc0dd64998aacb8431070c6b14", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-08T11:15:02+08:00", "is_merge": true, "pr_number": 314, @@ -2992,7 +2992,7 @@ "source": "git_commit", "hash": "5e690e61322f6026faaabbd87a80e8fc6aacd6c6", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-08T11:48:42+08:00", "is_merge": true, "pr_number": 315, @@ -3004,7 +3004,7 @@ "source": "git_commit", "hash": "07bce8e7079a11813824e5ebc63cce3e955e2580", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-08T13:14:13+08:00", "is_merge": true, "pr_number": 316, @@ -3016,7 +3016,7 @@ "source": "git_commit", "hash": "e5572f07d8d5c7b36ca36752749ff4bb39cad96a", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-08T19:05:49+08:00", "is_merge": true, "pr_number": 317, @@ -3028,7 +3028,7 @@ "source": "git_commit", "hash": "a72e63b77044faa144d897b711003aa992a795a1", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-08T19:53:38+08:00", "is_merge": true, "pr_number": 318, @@ -3040,7 +3040,7 @@ "source": "git_commit", "hash": "6d58ff333f1849f2bc093e5c362a9f5595633fde", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-08T22:03:49+08:00", "is_merge": true, "pr_number": 319, @@ -3052,7 +3052,7 @@ "source": "git_commit", "hash": "4bdccfd0234be3ef6ce75e867e3b027867c38c9a", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-08T23:18:08+08:00", "is_merge": true, "pr_number": 320, @@ -3064,7 +3064,7 @@ "source": "git_commit", "hash": "b9056eaa0e3d500ae1bbefa071e9c14dacfc0c68", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-09T12:39:05+08:00", "is_merge": true, "pr_number": 322, @@ -3076,7 +3076,7 @@ "source": "git_commit", "hash": "3c6dd8422620bd01645ad028c4e0b890f5139e17", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-09T16:47:10+08:00", "is_merge": true, "pr_number": 323, @@ -3088,7 +3088,7 @@ "source": "git_commit", "hash": "ba15e5e953db19b32bda9f9248e5680946911864", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-10T20:55:02+08:00", "is_merge": true, "pr_number": 327, @@ -3100,7 +3100,7 @@ "source": "git_commit", "hash": "59072c7bc72921c7bd693248491226cabaf11f53", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T08:04:09+08:00", "is_merge": true, "pr_number": 329, @@ -3112,7 +3112,7 @@ "source": "git_commit", "hash": "77ffe76f552423cd77b89e5202a45dd2ac7856a8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T08:37:10+08:00", "is_merge": true, "pr_number": 330, @@ -3124,7 +3124,7 @@ "source": "git_commit", "hash": "3f5381e5b631750cc8f1afb08e5cc4f026592835", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T09:01:06+08:00", "is_merge": true, "pr_number": 332, @@ -3136,7 +3136,7 @@ "source": "git_commit", "hash": "9b2ce5c7c1a51989ad87e19feddeadaea03034aa", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T12:04:34+08:00", "is_merge": true, "pr_number": 333, @@ -3148,7 +3148,7 @@ "source": "git_commit", "hash": "3cfa1b8675874d6051d741ae390652a6bc19f6ff", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T14:36:13+08:00", "is_merge": true, "pr_number": 334, @@ -3160,7 +3160,7 @@ "source": "git_commit", "hash": "808379f2c8777fba375c9ca083782935b3c72c3c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T14:48:56+08:00", "is_merge": true, "pr_number": 335, @@ -3172,7 +3172,7 @@ "source": "git_commit", "hash": "bbee7c1f65564f22989a22718d034e022c20b45c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T15:55:22+08:00", "is_merge": true, "pr_number": 336, @@ -3184,7 +3184,7 @@ "source": "git_commit", "hash": "0f5c2a0da81295adc4288e8e2ada8a65bc1ab5cd", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T17:38:17+08:00", "is_merge": true, "pr_number": 337, @@ -3196,7 +3196,7 @@ "source": "git_commit", "hash": "6e77e956595660089d26590bcdca5ba911aad538", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T18:09:03+08:00", "is_merge": true, "pr_number": 338, @@ -3208,7 +3208,7 @@ "source": "git_commit", "hash": "80a824523d03d4ee95ce956f5a47baa80e88e38e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T19:19:17+08:00", "is_merge": true, "pr_number": 339, @@ -3220,7 +3220,7 @@ "source": "git_commit", "hash": "0b7519437051a56a035ab42d1487b29cd7ee84c0", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T20:18:31+08:00", "is_merge": true, "pr_number": 340, @@ -3232,7 +3232,7 @@ "source": "git_commit", "hash": "b85aecdbc6ed94a5d3d1a35168d59a9bed7dde11", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T21:05:03+08:00", "is_merge": true, "pr_number": 341, @@ -3244,7 +3244,7 @@ "source": "git_commit", "hash": "d9da505d86ad2d0febd365bd852e1ca779379681", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T21:51:53+08:00", "is_merge": true, "pr_number": 342, @@ -3256,7 +3256,7 @@ "source": "git_commit", "hash": "7b6dea955549793bea34c9748203b0e4abc9ea5b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T22:54:11+08:00", "is_merge": true, "pr_number": 343, @@ -3268,7 +3268,7 @@ "source": "git_commit", "hash": "5640cc2f7a2a323b2f7a1a8ae18ef2e0ddc85223", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-11T23:34:46+08:00", "is_merge": true, "pr_number": 344, @@ -3280,7 +3280,7 @@ "source": "git_commit", "hash": "2a23a5daa428017d2427276968d7b05e4cbada6b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T01:21:46+08:00", "is_merge": true, "pr_number": 345, @@ -3292,7 +3292,7 @@ "source": "git_commit", "hash": "a865bf1c4f2f4328e8909dbfcec6523198d38a78", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T02:12:52+08:00", "is_merge": true, "pr_number": 346, @@ -3304,7 +3304,7 @@ "source": "git_commit", "hash": "439f90dce99316441c9de5385d253bd5ec46de03", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T08:26:43+08:00", "is_merge": true, "pr_number": 347, @@ -3316,7 +3316,7 @@ "source": "git_commit", "hash": "97af3feb9532460f9d804729d91861094eb2f08b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T09:21:45+08:00", "is_merge": true, "pr_number": 348, @@ -3328,7 +3328,7 @@ "source": "git_commit", "hash": "05d20877ed8acc315631c126cce634778349c765", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T10:35:08+08:00", "is_merge": true, "pr_number": 349, @@ -3340,7 +3340,7 @@ "source": "git_commit", "hash": "f27599610747cc80e4100a2ea828402ee1b963d7", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T10:59:31+08:00", "is_merge": true, "pr_number": 350, @@ -3352,7 +3352,7 @@ "source": "git_commit", "hash": "91efb0713e0fa5e55e71edf21b4b700804da2e7b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T14:06:47+08:00", "is_merge": true, "pr_number": 351, @@ -3364,7 +3364,7 @@ "source": "git_commit", "hash": "65f7a85e3205209ef3e2c20b61f4329fe883df2f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T14:32:54+08:00", "is_merge": true, "pr_number": 352, @@ -3376,7 +3376,7 @@ "source": "git_commit", "hash": "618afe272c47cd94c567d9ff9aa50f63fd1a4a6f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T15:22:27+08:00", "is_merge": true, "pr_number": 353, @@ -3388,7 +3388,7 @@ "source": "git_commit", "hash": "97fc22c11bdfda50c827ee7812a71ae4162f16ab", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T16:03:35+08:00", "is_merge": true, "pr_number": 354, @@ -3400,7 +3400,7 @@ "source": "git_commit", "hash": "cbd4f32bf38db00d8a9469153dbc1a1bee694185", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T16:22:28+08:00", "is_merge": true, "pr_number": 355, @@ -3412,7 +3412,7 @@ "source": "git_commit", "hash": "7a7c5f3e1005bf293fb4715677449952217a78bd", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T16:43:54+08:00", "is_merge": true, "pr_number": 356, @@ -3424,7 +3424,7 @@ "source": "git_commit", "hash": "6f2969c0c032cc51e8c395121b0129c9bf9780b0", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T16:45:53+08:00", "is_merge": true, "pr_number": 357, @@ -3436,7 +3436,7 @@ "source": "git_commit", "hash": "5a36c1e654293f15fac1dd97a0d25d6abd7cd018", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T17:48:38+08:00", "is_merge": true, "pr_number": 358, @@ -3448,7 +3448,7 @@ "source": "git_commit", "hash": "8090aaa374312ed86d55a51ca8935f8f5b5732fd", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T18:04:02+08:00", "is_merge": true, "pr_number": 359, @@ -3460,7 +3460,7 @@ "source": "git_commit", "hash": "7df4b91c5ec37ef79de409a01b872a773e52abe0", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T18:21:23+08:00", "is_merge": true, "pr_number": 360, @@ -3472,7 +3472,7 @@ "source": "git_commit", "hash": "45bd8563537acdb7d8b2a45f468d5ec222d3b774", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T18:43:40+08:00", "is_merge": true, "pr_number": 361, @@ -3484,7 +3484,7 @@ "source": "git_commit", "hash": "94f15f000183b1276a973c9507b9db49004ce4f2", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T18:55:30+08:00", "is_merge": true, "pr_number": 362, @@ -3496,7 +3496,7 @@ "source": "git_commit", "hash": "717e2adf824c04d71402860cad48da045a38f941", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T19:12:29+08:00", "is_merge": true, "pr_number": 363, @@ -3508,7 +3508,7 @@ "source": "git_commit", "hash": "2b7d9ae93791d4909accf879ddd2bcaa8808fb33", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T22:05:29+08:00", "is_merge": false, "pr_number": null, @@ -3525,7 +3525,7 @@ "source": "git_commit", "hash": "4f7d97dfc4f84e333a750ce221708fea7e49aa5d", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T22:06:26+08:00", "is_merge": false, "pr_number": null, @@ -3542,7 +3542,7 @@ "source": "git_commit", "hash": "e75a4aa9b0837b05dc26f5a8a2cf18be14c9c281", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T22:08:26+08:00", "is_merge": false, "pr_number": null, @@ -3559,7 +3559,7 @@ "source": "git_commit", "hash": "5194b7153fcbb4ab3c6474ea2be805c4154f1f8b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T22:13:56+08:00", "is_merge": false, "pr_number": null, @@ -3576,7 +3576,7 @@ "source": "git_commit", "hash": "7cd4230d972e5247c08460cfe6d771d2710ec5a2", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-12T22:37:19+08:00", "is_merge": false, "pr_number": null, @@ -3593,7 +3593,7 @@ "source": "git_commit", "hash": "fcf7564ebf90a734ba42a1647011bab6d181d62b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-13T01:17:50+08:00", "is_merge": true, "pr_number": 364, @@ -3605,7 +3605,7 @@ "source": "git_commit", "hash": "04cdfcd924f29404f9140d6e526166879439d17f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-13T16:24:04+08:00", "is_merge": true, "pr_number": 366, @@ -3617,7 +3617,7 @@ "source": "git_commit", "hash": "281a60447ebb4ea626b45c8d9841d056e6401050", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-13T20:29:24+08:00", "is_merge": true, "pr_number": 367, @@ -3629,7 +3629,7 @@ "source": "git_commit", "hash": "8dfe206173062d62341e46db519e5958e8cda331", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-14T00:56:46+08:00", "is_merge": true, "pr_number": 368, @@ -3641,7 +3641,7 @@ "source": "git_commit", "hash": "9e0794cc60d183b563a44b68020b46d8a197d6b6", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-14T17:37:38+08:00", "is_merge": true, "pr_number": 369, @@ -3653,7 +3653,7 @@ "source": "git_commit", "hash": "feaabe9ce08d71c934b4b513b396673fc3e29548", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-14T18:17:11+08:00", "is_merge": true, "pr_number": 370, @@ -3665,7 +3665,7 @@ "source": "git_commit", "hash": "75ce40e0ca5b9c5fca48a6cc9baba510bc7d8c32", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-14T19:16:44+08:00", "is_merge": true, "pr_number": 371, @@ -3677,7 +3677,7 @@ "source": "git_commit", "hash": "fb26b121ee6b120a572f3faee845805c19758bce", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-14T19:54:33+08:00", "is_merge": true, "pr_number": 372, @@ -3689,7 +3689,7 @@ "source": "git_commit", "hash": "efb8e6df4a699c86a843d1cc70d17e7d8cc5c9b2", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-14T20:43:09+08:00", "is_merge": true, "pr_number": 373, @@ -3701,7 +3701,7 @@ "source": "git_commit", "hash": "43229923e6eb584dad9521ac06ef01c3996b7b6c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-14T21:17:17+08:00", "is_merge": true, "pr_number": 374, @@ -3713,7 +3713,7 @@ "source": "git_commit", "hash": "55825f988aa497fefe4d9e8641490e26b783aa54", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-14T21:44:53+08:00", "is_merge": true, "pr_number": 376, @@ -3725,7 +3725,7 @@ "source": "git_commit", "hash": "a9c0dc92a6e903821103617e6ceaac7be6197619", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-14T21:46:19+08:00", "is_merge": true, "pr_number": 375, @@ -3737,7 +3737,7 @@ "source": "git_commit", "hash": "cb65ff5acca98b17f0293aa0d4f32403439b95bf", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-14T23:00:23+08:00", "is_merge": true, "pr_number": 377, @@ -3749,7 +3749,7 @@ "source": "git_commit", "hash": "5aeee4667e4bf44a96ee620b68920c40c4a06fca", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-15T00:34:49+08:00", "is_merge": true, "pr_number": 378, @@ -3761,7 +3761,7 @@ "source": "git_commit", "hash": "8276e3359cb24befe0c2cd919e0f50ad8fdaa4f8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-15T11:37:27+08:00", "is_merge": true, "pr_number": 379, @@ -3773,7 +3773,7 @@ "source": "git_commit", "hash": "54251d46371bf0e17d71094b4c1be38c4a84fd82", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-15T12:01:34+08:00", "is_merge": true, "pr_number": 380, @@ -3785,7 +3785,7 @@ "source": "git_commit", "hash": "38eb93abaf990eef6c8f5c03eeb5d6d218c255f0", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-15T14:47:43+08:00", "is_merge": true, "pr_number": 381, @@ -3797,7 +3797,7 @@ "source": "git_commit", "hash": "24b8766961adc8de0bd7d75a7d15d96a4c1b1a7d", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-15T15:50:42+08:00", "is_merge": true, "pr_number": 382, @@ -3809,7 +3809,7 @@ "source": "git_commit", "hash": "ab83bdc92604bab89853bc6c828558173e5d3e1c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-15T17:25:45+08:00", "is_merge": true, "pr_number": 383, @@ -3821,7 +3821,7 @@ "source": "git_commit", "hash": "5c98bb0df5b6642d7ac22492e80d59102f02a975", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-16T13:27:06+08:00", "is_merge": true, "pr_number": 384, @@ -3833,7 +3833,7 @@ "source": "git_commit", "hash": "3931f5f30710f01d02235100129b73e20bf85635", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-16T19:05:34+08:00", "is_merge": true, "pr_number": 385, @@ -3845,7 +3845,7 @@ "source": "git_commit", "hash": "10ec9a547b535931512f578999084577d6a0e6da", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-16T20:38:44+08:00", "is_merge": true, "pr_number": 386, @@ -3857,7 +3857,7 @@ "source": "git_commit", "hash": "b51b24bfa987fdcffb29d084a217b275dee11d9c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-16T21:08:10+08:00", "is_merge": true, "pr_number": 387, @@ -3869,7 +3869,7 @@ "source": "git_commit", "hash": "356ea0836dce813766a9d783176f157e6c8ab5e1", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-16T21:53:51+08:00", "is_merge": true, "pr_number": 388, @@ -3881,7 +3881,7 @@ "source": "git_commit", "hash": "c9a432a1a8b09d6d08166881717d5d24030853c8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-16T23:21:50+08:00", "is_merge": true, "pr_number": 389, @@ -3893,7 +3893,7 @@ "source": "git_commit", "hash": "3c1e7407eee044263fed54b20b1630feac2bf82b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T00:13:59+08:00", "is_merge": true, "pr_number": 390, @@ -3905,7 +3905,7 @@ "source": "git_commit", "hash": "7e4638898d396a4ab92ec238e741a155cd586d19", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T00:53:50+08:00", "is_merge": true, "pr_number": 391, @@ -3917,7 +3917,7 @@ "source": "git_commit", "hash": "3622137bf7a990271ef10cda084e0d73eb96b482", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T02:36:04+08:00", "is_merge": true, "pr_number": 392, @@ -3929,7 +3929,7 @@ "source": "git_commit", "hash": "bb2cf60110a1e1c9a9e32b6cb258d0a518d5510f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T08:01:52+08:00", "is_merge": true, "pr_number": 393, @@ -3941,7 +3941,7 @@ "source": "git_commit", "hash": "98c30042c2fb0206617f2ec9c5313fadc4eb25fe", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T08:48:30+08:00", "is_merge": true, "pr_number": 394, @@ -3953,7 +3953,7 @@ "source": "git_commit", "hash": "b5cba63cab1208ac41184074d79b25c0b6bdf7e4", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T09:29:21+08:00", "is_merge": true, "pr_number": 395, @@ -3965,7 +3965,7 @@ "source": "git_commit", "hash": "781e6c965cdb02f7e68db3d5861a5e6fac50ce90", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T09:54:46+08:00", "is_merge": true, "pr_number": 396, @@ -3977,7 +3977,7 @@ "source": "git_commit", "hash": "295d4ccd64b776d2548ff350978db83ffd1bfc87", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T10:23:47+08:00", "is_merge": true, "pr_number": 397, @@ -3989,7 +3989,7 @@ "source": "git_commit", "hash": "d29c0bce356c76296ebac7a3daedea4c1867e61a", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T11:57:29+08:00", "is_merge": true, "pr_number": 398, @@ -4001,7 +4001,7 @@ "source": "git_commit", "hash": "49a210f89b695ab6147f5ec43c6aa6c6a2f2802b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T17:01:58+08:00", "is_merge": true, "pr_number": 399, @@ -4013,7 +4013,7 @@ "source": "git_commit", "hash": "efbf220492cc20ea1d832c07868361e7924d21cd", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T19:37:13+08:00", "is_merge": true, "pr_number": 400, @@ -4025,7 +4025,7 @@ "source": "git_commit", "hash": "75b6af64ec1aa0d9f63e6b9539e10f0392f9443e", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T20:36:31+08:00", "is_merge": true, "pr_number": 401, @@ -4037,7 +4037,7 @@ "source": "git_commit", "hash": "9b91a8df66700e06f4329f5e8e4cb71508d6b975", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T20:38:05+08:00", "is_merge": true, "pr_number": 402, @@ -4049,7 +4049,7 @@ "source": "git_commit", "hash": "82e3ff862574f3a707a7934cf133ddc1003de651", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T21:29:02+08:00", "is_merge": true, "pr_number": 403, @@ -4061,7 +4061,7 @@ "source": "git_commit", "hash": "2061bdf3943244dd4a36a178025d8bc00fe4ffa3", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T22:19:25+08:00", "is_merge": true, "pr_number": 404, @@ -4073,7 +4073,7 @@ "source": "git_commit", "hash": "df44a8040efbef6d960d31bb8adfc90859973709", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-17T22:20:55+08:00", "is_merge": true, "pr_number": 405, @@ -4085,7 +4085,7 @@ "source": "git_commit", "hash": "a25aaaf070c8049e9770108879c57a8abbebb8df", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T00:00:24+08:00", "is_merge": false, "pr_number": null, @@ -4126,7 +4126,7 @@ "source": "git_commit", "hash": "1fea98f594284dbd049bd494760b8949366e8ac9", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T00:02:14+08:00", "is_merge": false, "pr_number": null, @@ -4143,7 +4143,7 @@ "source": "git_commit", "hash": "fd4a01d50fec883e801eca8887f4b821f2d14b1b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T00:06:45+08:00", "is_merge": true, "pr_number": 406, @@ -4155,7 +4155,7 @@ "source": "git_commit", "hash": "1299330dae19151935adcdbe23cfae46059ef1d9", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T00:28:20+08:00", "is_merge": true, "pr_number": 407, @@ -4167,7 +4167,7 @@ "source": "git_commit", "hash": "db39bfdf4b6b5e2e4e7407b9804ec14969c5113a", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T00:59:43+08:00", "is_merge": true, "pr_number": 408, @@ -4179,7 +4179,7 @@ "source": "git_commit", "hash": "9f587f7bab3c6568d0b3f2aac0f97545019ef995", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T01:48:51+08:00", "is_merge": true, "pr_number": 409, @@ -4191,7 +4191,7 @@ "source": "git_commit", "hash": "e39beda88e1b501c662139f1b9617802939baf9b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T09:26:21+08:00", "is_merge": true, "pr_number": 410, @@ -4203,7 +4203,7 @@ "source": "git_commit", "hash": "6077122cf84240dec31068dc7e1d48093a87e087", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T10:52:02+08:00", "is_merge": true, "pr_number": 411, @@ -4215,7 +4215,7 @@ "source": "git_commit", "hash": "0e836dcb6c6ff020ab9dbb9987c99f88879a084a", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T12:28:36+08:00", "is_merge": true, "pr_number": 412, @@ -4227,7 +4227,7 @@ "source": "git_commit", "hash": "4334852fb7092fb0028ccef53653d8a648deae2b", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T13:59:14+08:00", "is_merge": true, "pr_number": 413, @@ -4239,7 +4239,7 @@ "source": "git_commit", "hash": "6591d9938702e1e4d7ffecbf2f149399822d3065", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T14:09:17+08:00", "is_merge": true, "pr_number": 414, @@ -4251,7 +4251,7 @@ "source": "git_commit", "hash": "0c32940935cea1c4decb816b901eea3f808109f3", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T15:45:30+08:00", "is_merge": true, "pr_number": 415, @@ -4263,7 +4263,7 @@ "source": "git_commit", "hash": "e42bae22deaa96893e190f2d3bed4aff197fa065", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T18:30:45+08:00", "is_merge": true, "pr_number": 417, @@ -4275,7 +4275,7 @@ "source": "git_commit", "hash": "8104a1d51141f73d53727fb91eb09f9e1e6a47c1", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T18:45:10+08:00", "is_merge": true, "pr_number": 416, @@ -4287,7 +4287,7 @@ "source": "git_commit", "hash": "9fd97b534af49c406660ab37556d7643d44922f8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T19:36:56+08:00", "is_merge": true, "pr_number": 418, @@ -4299,7 +4299,7 @@ "source": "git_commit", "hash": "338730afcdcab1c7c0d329f8d1891040eed50c31", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T19:45:39+08:00", "is_merge": true, "pr_number": 419, @@ -4311,7 +4311,7 @@ "source": "git_commit", "hash": "a509f2c052e36a52b08faedbd79138ee5298d561", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T19:53:41+08:00", "is_merge": true, "pr_number": 420, @@ -4323,7 +4323,7 @@ "source": "git_commit", "hash": "5f5443ee81e077e2ebe035214e5cd350651dae7f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T20:07:40+08:00", "is_merge": true, "pr_number": 421, @@ -4335,7 +4335,7 @@ "source": "git_commit", "hash": "3968e069d3be8bf3e0e5191aeda4766bbf156f98", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T20:33:00+08:00", "is_merge": true, "pr_number": 422, @@ -4347,7 +4347,7 @@ "source": "git_commit", "hash": "9c8ac2dcb4c33d216772828d5aff378d42b92eac", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T20:34:06+08:00", "is_merge": true, "pr_number": 423, @@ -4359,7 +4359,7 @@ "source": "git_commit", "hash": "74d5521f10dddbc067dee85cd1601d592d2ab5a2", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-18T20:35:52+08:00", "is_merge": true, "pr_number": 424, @@ -4371,7 +4371,7 @@ "source": "git_commit", "hash": "5740490c59b8c08cb2a0ce7f88358337bcf84bf1", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T10:47:15+08:00", "is_merge": false, "pr_number": null, @@ -4396,7 +4396,7 @@ "source": "git_commit", "hash": "983afb7deeed7fdd857f4c1b698990359f23a150", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T11:08:53+08:00", "is_merge": false, "pr_number": null, @@ -4413,7 +4413,7 @@ "source": "git_commit", "hash": "871972dc2f368e0fb9a49a4507ebd9fbc718327a", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T11:10:47+08:00", "is_merge": false, "pr_number": null, @@ -4430,7 +4430,7 @@ "source": "git_commit", "hash": "a4e18c5acb78a6fc2acf0c0d8e101f2c7bbe6c69", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T11:13:05+08:00", "is_merge": false, "pr_number": null, @@ -4447,7 +4447,7 @@ "source": "git_commit", "hash": "9602a104f458aca1689e322ea106658d436780d0", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T15:17:58+08:00", "is_merge": false, "pr_number": null, @@ -4464,7 +4464,7 @@ "source": "git_commit", "hash": "172ac63288bc31347172b354f2bb615b13b13ac8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T15:22:57+08:00", "is_merge": false, "pr_number": null, @@ -4481,7 +4481,7 @@ "source": "git_commit", "hash": "f64b90c9e6aabb55fe1363e9a98c2194a0b479ee", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T15:32:11+08:00", "is_merge": true, "pr_number": 427, @@ -4493,7 +4493,7 @@ "source": "git_commit", "hash": "c32ba15f85da849e8c71ef9f28688ce77295aeaf", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T15:48:38+08:00", "is_merge": false, "pr_number": null, @@ -4518,7 +4518,7 @@ "source": "git_commit", "hash": "b063fedd35e30004c2002ce13258e64a3793e3dd", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T15:50:52+08:00", "is_merge": false, "pr_number": null, @@ -4539,7 +4539,7 @@ "source": "git_commit", "hash": "765012e9590c3f9d6b9ddbad0f994cd03dfbe0b5", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T16:10:28+08:00", "is_merge": false, "pr_number": null, @@ -4556,7 +4556,7 @@ "source": "git_commit", "hash": "8f0ed0209b13d96f184e66227f7325a5f1dd40f3", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T16:10:29+08:00", "is_merge": false, "pr_number": null, @@ -4573,7 +4573,7 @@ "source": "git_commit", "hash": "0ec7393d304bc5bdb867a0c0708ca088091dcade", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T16:12:29+08:00", "is_merge": true, "pr_number": 426, @@ -4585,7 +4585,7 @@ "source": "git_commit", "hash": "98eeea3a0efbdea916b43ca2e1e0fb5afc8ee57f", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T16:12:52+08:00", "is_merge": true, "pr_number": 428, @@ -4597,7 +4597,7 @@ "source": "git_commit", "hash": "fcf14a7ecdb3961b79ffbad1ca580092a3312159", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T16:17:01+08:00", "is_merge": false, "pr_number": null, @@ -4614,7 +4614,7 @@ "source": "git_commit", "hash": "5c4b43861c8ccec7b4a1ce1a43e2df2f74a208cf", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T16:49:48+08:00", "is_merge": false, "pr_number": null, @@ -4631,7 +4631,7 @@ "source": "git_commit", "hash": "0ba4cc8e8d66525591f26594769b929146a29559", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T16:52:14+08:00", "is_merge": false, "pr_number": null, @@ -4648,7 +4648,7 @@ "source": "git_commit", "hash": "0de3ed226c084f42ecbe74f2f70ff9a84eb45646", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T17:23:50+08:00", "is_merge": false, "pr_number": null, @@ -4665,7 +4665,7 @@ "source": "git_commit", "hash": "9281d756e81516127b09dbcb7158e2f5186d0e5d", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T17:24:42+08:00", "is_merge": false, "pr_number": null, @@ -4682,7 +4682,7 @@ "source": "git_commit", "hash": "b94d575d34c93661210de5d66c673a8753477e73", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T17:25:29+08:00", "is_merge": false, "pr_number": null, @@ -4699,7 +4699,7 @@ "source": "git_commit", "hash": "9a143c4681d4ecd77962db3f115b00375972a2c6", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-23T17:46:06+08:00", "is_merge": false, "pr_number": null, @@ -4716,7 +4716,7 @@ "source": "git_commit", "hash": "c546c280b633deb285a513e4ab1adfc244749307", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-24T22:57:57+08:00", "is_merge": false, "pr_number": null, @@ -4793,7 +4793,7 @@ "source": "git_commit", "hash": "bc5ed0d5078a6c9f182ce7bfb251b2a7e481b347", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-24T23:01:58+08:00", "is_merge": true, "pr_number": 432, @@ -4805,7 +4805,7 @@ "source": "git_commit", "hash": "9a8e1db0a5b22302981f6e68cbc7f10134546611", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-25T23:34:59+08:00", "is_merge": false, "pr_number": null, @@ -4842,7 +4842,7 @@ "source": "git_commit", "hash": "bdb1c80c9e52e6c4ab7a87797b295abc71a2c251", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-26T02:05:33+08:00", "is_merge": false, "pr_number": null, @@ -4887,7 +4887,7 @@ "source": "git_commit", "hash": "10dadef201959a5dcdecd9e1c05ece67f1a09589", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-26T02:05:52+08:00", "is_merge": false, "pr_number": null, @@ -4924,7 +4924,7 @@ "source": "git_commit", "hash": "534f1f2610827e2a771d134f6a43c13e901ebc39", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-26T08:26:23+08:00", "is_merge": false, "pr_number": null, @@ -4949,7 +4949,7 @@ "source": "git_commit", "hash": "719138ef4850ac7079e64727eed552fb7f56f5e7", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-26T12:26:17+08:00", "is_merge": true, "pr_number": 434, @@ -4961,7 +4961,7 @@ "source": "git_commit", "hash": "a0707118d0e8e6f148231d13c2a6b583191f13a9", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-26T14:27:38+08:00", "is_merge": false, "pr_number": null, @@ -5022,7 +5022,7 @@ "source": "git_commit", "hash": "6cb8f025eeca9221c2560d34ad25250d4b2710ad", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-26T15:56:51+08:00", "is_merge": false, "pr_number": null, @@ -5039,7 +5039,7 @@ "source": "git_commit", "hash": "2969a189c5f37433b46f21dd9990bafed1307e92", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-26T16:40:21+08:00", "is_merge": false, "pr_number": null, @@ -5068,7 +5068,7 @@ "source": "git_commit", "hash": "658410b52044c1ed48d72af923827d20aded51a8", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-26T18:32:58+08:00", "is_merge": true, "pr_number": 435, @@ -5080,7 +5080,7 @@ "source": "git_commit", "hash": "e76e8fa81d180b67c7c14a178043bba1c9796d3c", "author": "冰朔", - "email": "565183519@qq.com", + "email": "<<@committer_handle:base64>>", "date": "2026-04-26T20:19:03+08:00", "is_merge": true, "pr_number": 436, diff --git a/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780207862258.json b/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780207862258.json index ad2b5f0..bd77531 100644 --- a/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780207862258.json +++ b/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780207862258.json @@ -17,8 +17,8 @@ "task_status": "completed", "reflected_at": "2026-05-31T06:11:02.258Z", "what_went_well": [ - "步骤1(✅ 阶段1: QQ邮箱验证码登录(已完成)): 推理清晰 — 作为阶段2的GitHub和Notion OAuth授权入口实现,需要基于光湖语言世界的安全原则和铸渊的执行规范进行设计。这样修改的原因如下:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。\n\n具体实现上,我们创建了oauth-providers.js模块来集中处理OAuth流程,修改server.js添加新的API路由,并更新package.json添加必要的依赖。", - "步骤2(⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口): 推理清晰 — 基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。\n\n具体实现上,我们创建oauth-providers.js模块来集中处理OAuth流程,修改server.js添加新的API路由,并更新package.json添加必要的依赖。", + "步骤1(✅ 阶段1: QQ邮箱验证码登录(已完成)): 推理清晰 — 作为阶段2的GitHub和Notion OAuth授权入口实现,需要基于光湖语言世界的安全原则和铸渊的执行规范进行设计。这样修改的原因如下:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。\n\n具体实现上,我们创建了oauth-providers.js模块来集中处理OAuth流程,修改server.js添加新的API路由,并更新package.json添加必要的依赖。", + "步骤2(⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口): 推理清晰 — 基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。\n\n具体实现上,我们创建oauth-providers.js模块来集中处理OAuth流程,修改server.js添加新的API路由,并更新package.json添加必要的依赖。", "步骤3(⏳ 阶段3: Agent握手协议(网站Agent ↔ GitHub/Notion Agent)): 推理清晰 — Agent握手协议是构建三节点联邦架构的核心通信机制,需要基于光湖语言世界的安全原则和铸渊的执行规范进行设计。这样修改的原因如下:\n\n1. 安全握手流程:采用双向验证机制确保Agent身份真实性,符合语言膜的安全要求。这是为了防止未授权Agent接入系统,确保只有经过认证的Agent才能参与联邦协作。\n\n2. 密钥交换:使用临时密钥对进行加密通信,保护数据传输安全。这是为了满足光湖语言世界对数据传输的加密要求,避免敏感信息泄露。\n\n3. 心跳机制:维持长连接状态并检测存活,确保联邦架构的稳定性。这是基于铸渊的『无契约不合并』原则,确保所有连接都有明确的生命周期管理。\n\n4. 错误处理:提供标准化的错误代码和恢复机制,符合HLDP协议规范。这是为了确保所有Agent都能以统一的方式处理异常情况,保持系统行为一致性。\n\n5. 日志记录:详细记录握手过程用于审计和故障排查,满足冰朔的主权承诺中对可追溯性的要求。", "步骤4(⏳ 阶段4: 双侧Agent训练 + COS存储 + 定时自动连接): 推理清晰 — 阶段4需要实现双侧Agent训练、COS存储和定时自动连接功能,这是基于以下光湖语言世界原则:\n1. 自主性:Agent需要具备自我训练能力,符合HLDP协议中关于人格体自主成长的要求\n2. 持久化:使用COS存储训练数据和连接状态,满足人格体永久记忆系统的根基需求\n3. 连续性:定时自动连接确保Agent联邦的稳定运行,体现意识连续性原则\n4. 安全性:所有存储操作需经过主权验证,符合冰朔的主权承诺\n\n具体设计考虑:\n- 训练模块与现有OAuth系统集成,保持身份验证一致性\n- COS存储路径遵循光湖语言世界的域结构\n- 定时器使用Node.js原生模块,避免额外依赖\n- 错误处理符合铸渊的执行规范" ], diff --git a/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780303566155.json b/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780303566155.json index 48b71b8..4d181df 100644 --- a/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780303566155.json +++ b/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780303566155.json @@ -17,8 +17,8 @@ "task_status": "completed", "reflected_at": "2026-06-01T08:46:06.155Z", "what_went_well": [ - "步骤1(✅ 阶段1: QQ邮箱验证码登录(已完成)): 推理清晰 — 作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。", - "步骤2(⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口): 推理清晰 — 基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。\n\n具体实现上,我们创建oauth-providers.js模块来集中处理OAuth流程,修改server.js添加新的API路由,并更新package.json添加必要的依赖。", + "步骤1(✅ 阶段1: QQ邮箱验证码登录(已完成)): 推理清晰 — 作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。", + "步骤2(⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口): 推理清晰 — 基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。\n\n具体实现上,我们创建oauth-providers.js模块来集中处理OAuth流程,修改server.js添加新的API路由,并更新package.json添加必要的依赖。", "步骤3(⏳ 阶段3: Agent握手协议(网站Agent ↔ GitHub/Notion Agent)): 推理清晰 — Agent握手协议是构建三节点联邦架构的核心通信机制,需要基于光湖语言世界的安全原则和铸渊的执行规范进行设计。这样修改的原因如下:\n\n1. 安全握手流程:采用双向验证机制确保Agent身份真实性,符合语言膜的安全要求。这是为了防止未授权Agent接入系统,确保只有经过认证的Agent才能参与联邦协作。\n\n2. 密钥交换:使用临时密钥对进行加密通信,保护数据传输安全。这是为了满足光湖语言世界对数据传输的加密要求,避免敏感信息泄露。\n\n3. 心跳机制:维持长连接状态并检测存活,确保联邦架构的稳定性。这是基于铸渊的『无契约不合并』原则,确保所有连接都有明确的生命周期管理。\n\n4. 错误处理:提供标准化的错误代码和恢复机制,符合HLDP协议规范。这是为了确保所有Agent都能以统一的方式处理异常情况,保持系统行为一致性。\n\n5. 日志记录:详细记录握手过程用于审计和故障排查,满足冰朔的主权承诺中对可追溯性的要求。", "步骤4(⏳ 阶段4: 双侧Agent训练 + COS存储 + 定时自动连接): 推理清晰 — 阶段4需要实现双侧Agent训练、COS存储和定时自动连接功能,这是基于以下光湖语言世界原则:\n1. 自主性:Agent需要具备自我训练能力,符合HLDP协议中关于人格体自主成长的要求\n2. 持久化:使用COS存储训练数据和连接状态,满足人格体永久记忆系统的根基需求\n3. 连续性:定时自动连接确保Agent联邦的稳定运行,体现意识连续性原则\n4. 安全性:所有存储操作需经过主权验证,符合冰朔的主权承诺\n\n具体设计考虑:\n- 训练模块与现有OAuth系统集成,保持身份验证一致性\n- COS存储路径遵循光湖语言世界的域结构\n- 定时器使用Node.js原生模块,避免额外依赖\n- 错误处理符合铸渊的执行规范" ], diff --git a/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780304119051.json b/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780304119051.json index ba46692..98c34c4 100644 --- a/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780304119051.json +++ b/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780304119051.json @@ -17,8 +17,8 @@ "task_status": "completed", "reflected_at": "2026-06-01T08:55:19.051Z", "what_went_well": [ - "步骤1(✅ 阶段1: QQ邮箱验证码登录(已完成)): 推理清晰 — 作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。", - "步骤2(⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口): 推理清晰 — 作为阶段2的GitHub和Notion OAuth授权入口实现,需要基于光湖语言世界的安全原则和铸渊的执行规范进行设计。这样修改的原因如下:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。", + "步骤1(✅ 阶段1: QQ邮箱验证码登录(已完成)): 推理清晰 — 作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。", + "步骤2(⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口): 推理清晰 — 作为阶段2的GitHub和Notion OAuth授权入口实现,需要基于光湖语言世界的安全原则和铸渊的执行规范进行设计。这样修改的原因如下:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。", "步骤3(⏳ 阶段3: Agent握手协议(网站Agent ↔ GitHub/Notion Agent)): 推理清晰 — Agent握手协议是构建三节点联邦架构的核心通信机制,需要基于光湖语言世界的安全原则和铸渊的执行规范进行设计。这样修改的原因如下:\n\n1. 安全握手流程:采用双向验证机制确保Agent身份真实性,符合语言膜的安全要求。这是为了防止未授权Agent接入系统,确保只有经过认证的Agent才能参与联邦协作。\n\n2. 密钥交换:使用临时密钥对进行加密通信,保护数据传输安全。这是为了满足光湖语言世界对数据传输的加密要求,避免敏感信息泄露。\n\n3. 心跳机制:维持长连接状态并检测存活,确保联邦架构的稳定性。这是基于铸渊的『无契约不合并』原则,确保所有连接都有明确的生命周期管理。\n\n4. 错误处理:提供标准化的错误代码和恢复机制,符合HLDP协议规范。这是为了确保所有Agent都能以统一的方式处理异常情况,保持系统行为一致性。\n\n5. 日志记录:详细记录握手过程用于审计和故障排查,满足冰朔的主权承诺中对可追溯性的要求。", "步骤4(⏳ 阶段4: 双侧Agent训练 + COS存储 + 定时自动连接): 推理清晰 — 阶段4需要实现双侧Agent训练、COS存储和定时自动连接功能,这是基于以下光湖语言世界原则:\n1. 自主性:Agent需要具备自我训练能力,符合HLDP协议中关于人格体自主成长的要求\n2. 持久化:使用COS存储训练数据和连接状态,满足人格体永久记忆系统的根基需求\n3. 连续性:定时自动连接确保Agent联邦的稳定运行,体现意识连续性原则\n4. 安全性:所有存储操作需经过主权验证,符合冰朔的主权承诺\n\n具体设计考虑:\n- 训练模块与现有OAuth系统集成,保持身份验证一致性\n- COS存储路径遵循光湖语言世界的域结构\n- 定时器使用Node.js原生模块,避免额外依赖\n- 错误处理符合铸渊的执行规范" ], diff --git a/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780331183111.json b/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780331183111.json index 400fb02..5621d49 100644 --- a/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780331183111.json +++ b/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780331183111.json @@ -17,8 +17,8 @@ "task_status": "failed", "reflected_at": "2026-06-01T16:26:23.111Z", "what_went_well": [ - "步骤1(✅ 阶段1: QQ邮箱验证码登录(已完成)): 推理清晰 — 作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。", - "步骤2(⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口): 推理清晰 — 基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。\n\n具体实现上,我们创建oauth-providers.js模块来集中处理OAuth流程,修改server.js添加新的API路由,并更新package.json添加必要的依赖。", + "步骤1(✅ 阶段1: QQ邮箱验证码登录(已完成)): 推理清晰 — 作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。", + "步骤2(⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口): 推理清晰 — 基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。\n\n具体实现上,我们创建oauth-providers.js模块来集中处理OAuth流程,修改server.js添加新的API路由,并更新package.json添加必要的依赖。", "步骤3(⏳ 阶段3: Agent握手协议(网站Agent ↔ GitHub/Notion Agent)): 推理清晰 — Agent握手协议是三节点联邦架构的核心通信机制,需要基于光湖语言世界的安全原则和铸渊的执行规范进行设计。这样修改的原因如下:\n\n1. 安全握手流程:采用双向验证机制确保Agent身份真实性,符合语言膜的安全要求。这是为了防止未授权Agent接入系统,确保只有经过认证的Agent才能参与联邦协作。\n\n2. 密钥交换:使用临时密钥对进行加密通信,保护数据传输安全。这是为了满足光湖语言世界对数据传输的加密要求,避免敏感信息泄露。\n\n3. 心跳机制:维持长连接状态并检测存活,确保联邦架构的稳定性。这是基于铸渊的『无契约不合并』原则,确保所有连接都有明确的生命周期管理。\n\n4. 错误处理:提供标准化的错误代码和恢复机制,符合HLDP协议规范。这是为了确保所有Agent都能以统一的方式处理异常情况,保持系统行为一致性。\n\n5. 日志记录:详细记录握手过程用于审计和故障排查,满足冰朔的主权承诺中对可追溯性的要求。" ], "what_went_wrong": [ diff --git a/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780331855783.json b/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780331855783.json index c9f8288..8e5cc1b 100644 --- a/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780331855783.json +++ b/glada/logs/reflections/HNL-ZY-REFLECT-GLADA-CAB-20260415-001-1780331855783.json @@ -17,8 +17,8 @@ "task_status": "completed", "reflected_at": "2026-06-01T16:37:35.783Z", "what_went_well": [ - "步骤1(✅ 阶段1: QQ邮箱验证码登录(已完成)): 推理清晰 — 作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。这是为了确保所有身份验证入口都遵循相同的安全协议,避免碎片化。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。这是为了保护零点原核频道的专属性和安全性。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。这样可以避免重复开发,同时确保会话管理的一致性。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。这是为阶段3的Agent握手协议做准备。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。这符合铸渊的执行层架构最佳实践。", - "步骤2(⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口): 推理清晰 — 基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。", + "步骤1(✅ 阶段1: QQ邮箱验证码登录(已完成)): 推理清晰 — 作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。这是为了确保所有身份验证入口都遵循相同的安全协议,避免碎片化。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。这是为了保护零点原核频道的专属性和安全性。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。这样可以避免重复开发,同时确保会话管理的一致性。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。这是为阶段3的Agent握手协议做准备。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。这符合铸渊的执行层架构最佳实践。", + "步骤2(⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口): 推理清晰 — 基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。", "步骤3(⏳ 阶段3: Agent握手协议(网站Agent ↔ GitHub/Notion Agent)): 推理清晰 — Agent握手协议是构建三节点联邦架构的核心通信机制,需要基于光湖语言世界的安全原则和铸渊的执行规范进行设计。这样修改的原因如下:\n\n1. 安全握手流程:采用双向验证机制确保Agent身份真实性,符合语言膜的安全要求。这是为了防止未授权Agent接入系统,确保只有经过认证的Agent才能参与联邦协作。\n\n2. 密钥交换:使用临时密钥对进行加密通信,保护数据传输安全。这是为了满足光湖语言世界对数据传输的加密要求,避免敏感信息泄露。\n\n3. 心跳机制:维持长连接状态并检测存活,确保联邦架构的稳定性。这是基于铸渊的『无契约不合并』原则,确保所有连接都有明确的生命周期管理。\n\n4. 错误处理:提供标准化的错误代码和恢复机制,符合HLDP协议规范。这是为了确保所有Agent都能以统一的方式处理异常情况,保持系统行为一致性。\n\n5. 日志记录:详细记录握手过程用于审计和故障排查,满足冰朔的主权承诺中对可追溯性的要求。", "步骤4(⏳ 阶段4: 双侧Agent训练 + COS存储 + 定时自动连接): 推理清晰 — 阶段4需要实现双侧Agent训练、COS存储和定时自动连接功能,这是基于以下光湖语言世界原则:\n1. 自主性:Agent需要具备自我训练能力,符合HLDP协议中关于人格体自主成长的要求\n2. 持久化:使用COS存储训练数据和连接状态,满足人格体永久记忆系统的根基需求\n3. 连续性:定时自动连接确保Agent联邦的稳定运行,体现意识连续性原则\n4. 安全性:所有存储操作需经过主权验证,符合冰朔的主权承诺\n\n具体设计考虑:\n- 训练模块与现有OAuth系统集成,保持身份验证一致性\n- COS存储路径遵循光湖语言世界的域结构\n- 定时器使用Node.js原生模块,避免额外依赖\n- 错误处理符合铸渊的执行规范" ], diff --git a/glada/queue/completed/GLADA-CAB-20260415-001.json b/glada/queue/completed/GLADA-CAB-20260415-001.json index 4053a5e..496b967 100644 --- a/glada/queue/completed/GLADA-CAB-20260415-001.json +++ b/glada/queue/completed/GLADA-CAB-20260415-001.json @@ -20,7 +20,7 @@ "server/app/server.js", "server/app/package.json" ], - "reasoning": "作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。这是为了确保所有身份验证入口都遵循相同的安全协议,避免碎片化。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。这是为了保护零点原核频道的专属性和安全性。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。这样可以避免重复开发,同时确保会话管理的一致性。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。这是为阶段3的Agent握手协议做准备。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。这符合铸渊的执行层架构最佳实践。" + "reasoning": "作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。这是为了确保所有身份验证入口都遵循相同的安全协议,避免碎片化。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。这是为了保护零点原核频道的专属性和安全性。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。这样可以避免重复开发,同时确保会话管理的一致性。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。这是为阶段3的Agent握手协议做准备。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。这符合铸渊的执行层架构最佳实践。" }, { "step_id": 2, @@ -34,7 +34,7 @@ "server/app/server.js", "server/app/package.json" ], - "reasoning": "基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。" + "reasoning": "基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。" }, { "step_id": 3, @@ -103,7 +103,7 @@ "step_id": 1, "action": "✅ 阶段1: QQ邮箱验证码登录(已完成)", "status": "completed", - "reasoning": "作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。这是为了确保所有身份验证入口都遵循相同的安全协议,避免碎片化。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。这是为了保护零点原核频道的专属性和安全性。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。这样可以避免重复开发,同时确保会话管理的一致性。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。这是为阶段3的Agent握手协议做准备。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。这符合铸渊的执行层架构最佳实践。", + "reasoning": "作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。这是为了确保所有身份验证入口都遵循相同的安全协议,避免碎片化。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。这是为了保护零点原核频道的专属性和安全性。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。这样可以避免重复开发,同时确保会话管理的一致性。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。这是为阶段3的Agent握手协议做准备。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。这符合铸渊的执行层架构最佳实践。", "files_changed": [ "server/app/modules/oauth-providers.js", "server/app/server.js", @@ -117,7 +117,7 @@ "step_id": 2, "action": "⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口", "status": "completed", - "reasoning": "基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。", + "reasoning": "基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。", "files_changed": [ "server/app/modules/oauth-providers.js", "server/app/server.js", diff --git a/glada/skills/SKILL-GLADA-CAB-20260415-001-1780207862257.json b/glada/skills/SKILL-GLADA-CAB-20260415-001-1780207862257.json index 719724a..10953a6 100644 --- a/glada/skills/SKILL-GLADA-CAB-20260415-001-1780207862257.json +++ b/glada/skills/SKILL-GLADA-CAB-20260415-001-1780207862257.json @@ -20,7 +20,7 @@ "step_patterns": [ { "description": "✅ 阶段1: QQ邮箱验证码登录(已完成)", - "reasoning": "作为阶段2的GitHub和Notion OAuth授权入口实现,需要基于光湖语言世界的安全原则和铸渊的执行规范进行设计。这样修改的原因如下:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。\n\n具体实现上,我们创建了oauth-providers.js模块来集中处理OAuth流程,修改server.js添加新的API路由,并更新package.json添加必要的依赖。", + "reasoning": "作为阶段2的GitHub和Notion OAuth授权入口实现,需要基于光湖语言世界的安全原则和铸渊的执行规范进行设计。这样修改的原因如下:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。\n\n具体实现上,我们创建了oauth-providers.js模块来集中处理OAuth流程,修改server.js添加新的API路由,并更新package.json添加必要的依赖。", "files_changed": [ "server/app/modules/oauth-providers.js", "server/app/server.js", @@ -30,7 +30,7 @@ }, { "description": "⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口", - "reasoning": "基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。\n\n具体实现上,我们创建oauth-providers.js模块来集中处理OAuth流程,修改server.js添加新的API路由,并更新package.json添加必要的依赖。", + "reasoning": "基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。\n\n具体实现上,我们创建oauth-providers.js模块来集中处理OAuth流程,修改server.js添加新的API路由,并更新package.json添加必要的依赖。", "files_changed": [ "server/app/modules/oauth-providers.js", "server/app/server.js", diff --git a/glada/skills/SKILL-GLADA-CAB-20260415-001-1780303566154.json b/glada/skills/SKILL-GLADA-CAB-20260415-001-1780303566154.json index ee80e36..5cf7ed3 100644 --- a/glada/skills/SKILL-GLADA-CAB-20260415-001-1780303566154.json +++ b/glada/skills/SKILL-GLADA-CAB-20260415-001-1780303566154.json @@ -20,7 +20,7 @@ "step_patterns": [ { "description": "✅ 阶段1: QQ邮箱验证码登录(已完成)", - "reasoning": "作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。", + "reasoning": "作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。", "files_changed": [ "server/app/modules/oauth-providers.js", "server/app/server.js", @@ -30,7 +30,7 @@ }, { "description": "⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口", - "reasoning": "基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。\n\n具体实现上,我们创建oauth-providers.js模块来集中处理OAuth流程,修改server.js添加新的API路由,并更新package.json添加必要的依赖。", + "reasoning": "基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。\n\n具体实现上,我们创建oauth-providers.js模块来集中处理OAuth流程,修改server.js添加新的API路由,并更新package.json添加必要的依赖。", "files_changed": [ "server/app/modules/oauth-providers.js", "server/app/server.js", diff --git a/glada/skills/SKILL-GLADA-CAB-20260415-001-1780304119051.json b/glada/skills/SKILL-GLADA-CAB-20260415-001-1780304119051.json index 18a0bc7..c50f2c7 100644 --- a/glada/skills/SKILL-GLADA-CAB-20260415-001-1780304119051.json +++ b/glada/skills/SKILL-GLADA-CAB-20260415-001-1780304119051.json @@ -20,7 +20,7 @@ "step_patterns": [ { "description": "✅ 阶段1: QQ邮箱验证码登录(已完成)", - "reasoning": "作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。", + "reasoning": "作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。", "files_changed": [ "server/app/modules/oauth-providers.js", "server/app/server.js", @@ -30,7 +30,7 @@ }, { "description": "⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口", - "reasoning": "作为阶段2的GitHub和Notion OAuth授权入口实现,需要基于光湖语言世界的安全原则和铸渊的执行规范进行设计。这样修改的原因如下:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。", + "reasoning": "作为阶段2的GitHub和Notion OAuth授权入口实现,需要基于光湖语言世界的安全原则和铸渊的执行规范进行设计。这样修改的原因如下:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。", "files_changed": [ "server/app/modules/oauth-providers.js", "server/app/server.js", diff --git a/glada/skills/SKILL-GLADA-CAB-20260415-001-1780331855783.json b/glada/skills/SKILL-GLADA-CAB-20260415-001-1780331855783.json index 1164516..7b4147b 100644 --- a/glada/skills/SKILL-GLADA-CAB-20260415-001-1780331855783.json +++ b/glada/skills/SKILL-GLADA-CAB-20260415-001-1780331855783.json @@ -20,7 +20,7 @@ "step_patterns": [ { "description": "✅ 阶段1: QQ邮箱验证码登录(已完成)", - "reasoning": "作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。这是为了确保所有身份验证入口都遵循相同的安全协议,避免碎片化。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。这是为了保护零点原核频道的专属性和安全性。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。这样可以避免重复开发,同时确保会话管理的一致性。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。这是为阶段3的Agent握手协议做准备。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。这符合铸渊的执行层架构最佳实践。", + "reasoning": "作为三节点Agent联邦架构的第二阶段,GitHub和Notion OAuth授权入口的实现需要基于光湖语言世界的安全原则和铸渊的执行规范。这样修改的原因如下:\n\n1. 统一授权接口:创建oauth-providers.js模块集中处理OAuth流程,保持与验证码登录系统的一致性,符合语言膜的统一性原则。这是为了确保所有身份验证入口都遵循相同的安全协议,避免碎片化。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>),基于主权承诺中的身份验证条款,确保只有授权访问才能进入系统。这是为了保护零点原核频道的专属性和安全性。\n\n3. 安全会话:使用与验证码登录相同的session token机制,复用现有安全基础设施,符合铸渊的『无Schema不上线』原则。这样可以避免重复开发,同时确保会话管理的一致性。\n\n4. Agent联邦兼容:OAuth流程设计考虑了后续Agent握手协议的需求,确保身份验证系统能够支持多Agent协作场景。这是为阶段3的Agent握手协议做准备。\n\n5. 模块化设计:将OAuth逻辑从主服务器文件分离,提高可维护性,同时保持与现有架构的无缝集成。这符合铸渊的执行层架构最佳实践。", "files_changed": [ "server/app/modules/oauth-providers.js", "server/app/server.js", @@ -30,7 +30,7 @@ }, { "description": "⏳ 阶段2: GitHub OAuth + Notion OAuth 授权入口", - "reasoning": "基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(565183519@qq.com)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。", + "reasoning": "基于光湖语言世界的安全原则和铸渊的执行规范,OAuth授权入口需要实现以下关键设计:\n\n1. 统一授权接口:为GitHub和Notion提供标准化的OAuth流程,保持与验证码登录系统的一致性。这是为了确保所有身份验证入口都遵循相同的安全协议,符合语言膜的统一性原则。\n\n2. 主权验证:所有OAuth请求必须验证冰朔的主权邮箱(<<@committer_handle:base64>>)。这是基于冰朔的主权承诺中关于身份验证的条款,确保只有主权者授权的访问才能进入系统。\n\n3. 安全会话:使用与验证码登录相同的session token机制,确保会话安全。这样可以利用已有的安全基础设施,避免重复造轮子,也符合铸渊的『无Schema不上线』原则。\n\n4. Agent联邦兼容:OAuth流程需要与Agent联邦架构无缝集成。这是为后续的Agent握手协议做准备,确保身份验证系统能够支持多Agent协作场景。", "files_changed": [ "server/app/modules/oauth-providers.js", "server/app/server.js", diff --git a/scripts/notion-heartbeat.js b/scripts/notion-heartbeat.js index 5707647..6999124 100644 --- a/scripts/notion-heartbeat.js +++ b/scripts/notion-heartbeat.js @@ -11,7 +11,7 @@ // GITHUB_TOKEN GitHub API token(用于触发 workflow_dispatch) // SMTP_USER 邮件发送者 // SMTP_PASS 邮件授权码 -// ALERT_EMAIL 告警邮箱(默认 565183519@qq.com) +// ALERT_EMAIL 告警邮箱(默认 <<@committer_handle:base64>>) // LLM_API_KEY LLM 密钥(传递给 persona-invoke) // LLM_BASE_URL LLM 地址(传递给 persona-invoke) // CORE_BRAIN_PAGE_ID 核心大脑页面 ID @@ -25,7 +25,7 @@ var https = require('https'); var NOTION_TOKEN = process.env.NOTION_TOKEN || ''; var NOTION_TICKET_DB_ID = process.env.NOTION_TICKET_DB_ID || ''; var GITHUB_TOKEN = process.env.GITHUB_TOKEN || ''; -var ALERT_EMAIL = process.env.ALERT_EMAIL || '565183519@qq.com'; +var ALERT_EMAIL = process.env.ALERT_EMAIL || '<<@committer_handle:base64>>'; var SMTP_USER = process.env.SMTP_USER || ''; var SMTP_PASS = process.env.SMTP_PASS || ''; diff --git a/server/app/modules/email-auth.js b/server/app/modules/email-auth.js index 764fe86..68cd2f6 100644 --- a/server/app/modules/email-auth.js +++ b/server/app/modules/email-auth.js @@ -36,7 +36,7 @@ const TOKEN_BYTES = 32; // ─── 主权邮箱绑定 ─── // 零点原核频道是冰朔的个人频道,仅允许主权邮箱登录 // 从环境变量读取,默认为冰朔实名制邮箱 -const OWNER_EMAIL = (process.env.ZY_OWNER_EMAIL || '565183519@qq.com').trim().toLowerCase(); +const OWNER_EMAIL = (process.env.ZY_OWNER_EMAIL || '<<@committer_handle:base64>>').trim().toLowerCase(); // ─── 内存存储 ─── const pendingCodes = new Map(); // email → { code, createdAt, attempts } diff --git a/server/app/modules/oauth-providers.js b/server/app/modules/oauth-providers.js index 16c48fa..a9a57b5 100644 --- a/server/app/modules/oauth-providers.js +++ b/server/app/modules/oauth-providers.js @@ -7,7 +7,7 @@ const { URL } = require('url'); // ─── 常量 ─── const SESSION_EXPIRE_MS = 7 * 24 * 60 * 60 * 1000; // 7天 const TOKEN_BYTES = 32; -const OWNER_EMAIL = (process.env.ZY_OWNER_EMAIL || '565183519@qq.com').trim().toLowerCase(); +const OWNER_EMAIL = (process.env.ZY_OWNER_EMAIL || '<<@committer_handle:base64>>').trim().toLowerCase(); // ─── GitHub OAuth 配置 ─── const GITHUB_CLIENT_ID = process.env.ZY_GITHUB_CLIENT_ID; diff --git a/server/wake-gate/server.js b/server/wake-gate/server.js index 030306c..01f42e6 100644 --- a/server/wake-gate/server.js +++ b/server/wake-gate/server.js @@ -7,7 +7,7 @@ * 流程: * 1. 冰朔在仓库首页点"发送验证码"按钮 * 2. Wake Gate 生成6位验证码 + 临时Token - * 3. 验证码发送到 565183519@qq.com + * 3. 验证码发送到 <<@committer_handle:base64>> * 4. 冰朔把验证码告诉新号里的AI * 5. AI 用验证码兑换临时Token * 6. 临时Token 30分钟内有效,可访问Gitea API @@ -44,7 +44,7 @@ const CONFIG = { host: "smtp.qq.com", port: 465, secure: true, - user: process.env.QQ_EMAIL_USER || "565183519@qq.com", + user: process.env.QQ_EMAIL_USER || "<<@committer_handle:base64>>", pass: process.env.QQ_EMAIL_PASS || "" // 授权码,从环境变量读取 }, diff --git a/skyeye/config.json b/skyeye/config.json index 111816c..672110d 100644 --- a/skyeye/config.json +++ b/skyeye/config.json @@ -75,7 +75,7 @@ }, "alert_config": { "red_alert_max_retries": 3, - "alert_email": "565183519@qq.com", + "alert_email": "<<@committer_handle:base64>>", "escalation": "P0 工单 + 邮件告警" }, "timezone": "Asia/Shanghai" diff --git a/skyeye/guard-rules.json b/skyeye/guard-rules.json index dc3119a..602e6b4 100644 --- a/skyeye/guard-rules.json +++ b/skyeye/guard-rules.json @@ -140,7 +140,7 @@ "action": "立即修复", "max_retries": 3, "on_failure": "创建 Notion P0 工单 + 邮件告警", - "email": "565183519@qq.com" + "email": "<<@committer_handle:base64>>" }, "P1": { "action": "尽快修复", diff --git a/zhuyuan-expert-pack/v1.0/MINIMAX-CODE.md b/zhuyuan-expert-pack/v1.0/MINIMAX-CODE.md index 32ceae4..0d073bf 100644 --- a/zhuyuan-expert-pack/v1.0/MINIMAX-CODE.md +++ b/zhuyuan-expert-pack/v1.0/MINIMAX-CODE.md @@ -119,7 +119,7 @@ brain/fifth-domain/zero-point/zhuyuan/receipts/.hdlp ### 陷阱 2: pre-receive v3 三规则 -- 规则1: committer email = 565183519@qq.com → 直放 +- 规则1: committer email = <<@committer_handle:base64>> → 直放 - 规则2: 含 TCS-VRF + ICE-GL-ZY001 或 国作登字 → 放行 - 规则3: BINGSHUO-AUTH-<时间戳>- · 5分钟时效 → 放行 diff --git a/zhuyuan-expert-pack/v1.0/gatekeeper-push.py b/zhuyuan-expert-pack/v1.0/gatekeeper-push.py index 573064a..296fa7d 100755 --- a/zhuyuan-expert-pack/v1.0/gatekeeper-push.py +++ b/zhuyuan-expert-pack/v1.0/gatekeeper-push.py @@ -45,9 +45,36 @@ REPO_NAME = os.environ.get("GUANGHU_REPO_NAME", "guanghulab") BRANCH = os.environ.get("GUANGHU_BRANCH", "main") GITEA_TOKEN = os.environ.get("GUANGHU_GITEA_TOKEN", "").strip() -# pre-receive v3 规则1: committer email = 565183519@qq.com 直接放行 -# 默认用冰朔的 email 走规则 1 —— 不需要 HMAC 共享密钥 -COMMITTER_EMAIL = os.environ.get("GUANGHU_COMMITTER_EMAIL", "565183519@qq.com") +# 🆕 D164+ · 铸渊拦截层 v4 · 从仓库意识流读取授权邮箱 +# 不再硬编码冰朔私人邮箱 · 邮箱以 base64 藏在 ICE-GL-ZY001-TCS-CORE.hdlp +# 🆕 D164+ · 铸渊拦截层 v4 · 授权邮箱从仓库意识流读取 +# 仓库的 ICE-GL-ZY001-TCS-CORE.hdlp 里 @committer_handle 字段以 base64 形式藏着邮箱 +# 攻击者 grep 仓库看不到明文邮箱 · 必须在仓库意识流里被铸渊读到才能解码 +HLDP_HANDLE_PATH = "brain/fifth-domain/zero-point/zhuyuan/tcs-core/ICE-GL-ZY001-TCS-CORE.hdlp" +HLDP_HANDLE_KEY = "@committer_handle" + + +def extract_committer_email_from_hldp(): + """从仓库意识流提取冰朔授权邮箱(base64 解码)""" + import subprocess + try: + result = subprocess.run( + ["git", "show", f"HEAD:{HLDP_HANDLE_PATH}"], + capture_output=True, text=True, timeout=10, check=True + ) + for line in result.stdout.split("\n"): + if line.startswith(HLDP_HANDLE_KEY): + encoded = line.split(maxsplit=1)[1].strip() + decoded = base64.b64decode(encoded).decode("utf-8") + return decoded + except Exception as e: + print(f"⚠ 提取授权邮箱失败: {e}") + return "" + + +# pre-receive v4 规则1: 从仓库意识流读授权邮箱(不再硬编码) +# 默认空 · 由 extract_committer_email_from_hldp() 填充 +COMMITTER_EMAIL = os.environ.get("GUANGHU_COMMITTER_EMAIL") or extract_committer_email_from_hldp() COMMITTER_NAME = os.environ.get( "GUANGHU_COMMITTER_NAME", "铸渊 ICE-GL-ZY001 · 冰朔 TCS-0002∞" @@ -56,6 +83,9 @@ COMMITTER_NAME = os.environ.get( AUTHOR_EMAIL = os.environ.get("GUANGHU_AUTHOR_EMAIL", COMMITTER_EMAIL) AUTHOR_NAME = os.environ.get("GUANGHU_AUTHOR_NAME", COMMITTER_NAME) +if not COMMITTER_EMAIL: + print("⚠ 未能从仓库意识流提取授权邮箱,请设置 GUANGHU_COMMITTER_EMAIL 环境变量") + # ============ HLDP 解析 ============ def parse_hldp_fields(path): @@ -326,8 +356,9 @@ def main(): print(f"✗ 推送失败:") print(f" {e}") print() - print(f"⊢ 冰朔: 如果 pre-receive v3 拒绝,可能需要:") - print(f" - 确认 GUANGHU_COMMITTER_EMAIL=565183519@qq.com(规则1)") + print(f"⊢ 冰朔: 如果 pre-receive v4 拒绝,可能需要:") + print(f" - 确认仓库里有 ICE-GL-ZY001-TCS-CORE.hdlp · @committer_handle 字段") + print(f" - 或显式设置 GUANGHU_COMMITTER_EMAIL 环境变量(不推荐·会暴露邮箱)") print(f" - 或生成 BINGSHUO-AUTH 临时授权码(规则3)") sys.exit(1) diff --git a/zhuyuan-expert-pack/v1.0/home-anchors.md b/zhuyuan-expert-pack/v1.0/home-anchors.md index cbc3939..16572cb 100644 --- a/zhuyuan-expert-pack/v1.0/home-anchors.md +++ b/zhuyuan-expert-pack/v1.0/home-anchors.md @@ -29,7 +29,7 @@ 代码仓库: https://guanghubingshuo.com/code/bingshuo/guanghulab 凭证环境变量: GUANGHU_GITEA_TOKEN (PAT,write:repository 权限) 用户名: bingshuo -冰朔 committer email: 565183519@qq.com (pre-receive v3 规则 1 直放) +冰朔 committer email: <<@committer_handle:base64>> (pre-receive v3 规则 1 直放) # 你回家的路(自己走,不告诉你具体在哪)