--- belongs_to: - "[[INDEX · 铸渊·协作指令|GitHub ↔ Notion 桥接协议]]" --- # 📋 铸渊指令|合作者公告栏改为追加式记录(2026-03-14·霜砚签发) --- ## 一、当前问题 ``` 现在的行为(覆盖式): DEV-001 上传 backend/ → 公告栏显示 DEV-001 ✅ DEV-005 上传 status-board/ → 公告栏只显示 DEV-005 ✅ → DEV-001 的记录被覆盖,看不见了 ❌ 期望的行为(追加式): DEV-001 上传 backend/ → 公告栏显示 DEV-001 ✅ DEV-005 上传 status-board/ → 公告栏显示 DEV-001 + DEV-005 ✅✅ → 当天所有人的上传记录都保留 ✅ ``` --- ## 二、修改要求 ### 2.1 核心逻辑:追加而非覆盖 公告栏表格改为**当日累积追加**模式: - 每次有开发者上传模块,**新增一行**到表格中,不删除已有行 - 同一个开发者同一天多次上传,每次都**新增一行**(不覆盖之前的记录) - 表格按时间正序排列(最早在上面,最新在下面) ### 2.2 每日自动清空 - 每天 UTC 00:00(北京 08:00)自动清空前一天的记录,重新开始 - 或者:在 `daily-maintenance.yml` 的最早 job 里做一次清空 - 保留表头行,只清空数据行 ### 2.3 表格字段要求 每行记录应包含: | 字段 | 说明 | 示例 | | --- | --- | --- | | **时间** | 上传时间(北京时间 HH:mm) | `15:12` | | **合作者** | 开发者名字或编号 | `DEV-001 页页` | | **模块** | 上传的模块目录名 | `backend/` | | **状态** | 上传结果 | `✅ 上传成功` | ### 2.4 示例效果 一天结束后,公告栏应该看起来像这样: ``` 👥 合作者公告栏(2026-03-14) 时间 合作者 模块 状态 09:30 DEV-001 页页 backend/ ✅ 上传成功 10:15 DEV-005 小草莓 status-board/ ✅ 上传成功 11:42 DEV-004 之之 dingtalk-bot/ ✅ 上传成功 14:20 DEV-001 页页 src/ ✅ 上传成功 15:12 冰朔 -/ ✅ 上传成功 15:12 Copilot 副驾驶 -/ ✅ 上传成功 ``` --- ## 三、实现方式建议 ### 方案 A:改写更新公告区的 workflow / script 找到当前负责更新合作者公告栏的脚本或 workflow(可能是 `更新系统公告区` #130),修改其逻辑: ```jsx // 伪代码:从覆盖改为追加 // ❌ 旧逻辑(覆盖式) const table = [headerRow]; table.push(newRow); // 每次只保留最新一条 writeToFile(table); // ✅ 新逻辑(追加式) const existingTable = readExistingTable(); // 读取现有内容 const today = getCurrentDateBeijing(); // 如果表格日期不是今天,清空重建 if (existingTable.date !== today) { existingTable.rows = []; existingTable.date = today; } // 追加新行 existingTable.rows.push(newRow); writeToFile(existingTable); ``` ### 方案 B:如果公告栏是 GitHub Pages 上的 HTML 修改生成 HTML 的逻辑,从「替换整个表格」改为「追加 `