修复代码审查反馈:使用 Intl.DateTimeFormat、提取常量、改进错误日志
Co-authored-by: qinfendebingshuo <207279273+qinfendebingshuo@users.noreply.github.com>
This commit is contained in:
parent
7bd40b3e9a
commit
f79ead0e71
|
|
@ -63,6 +63,7 @@
|
||||||
<!-- BULLETIN_START -->
|
<!-- BULLETIN_START -->
|
||||||
| 时间 | 事件 | 详情 |
|
| 时间 | 事件 | 详情 |
|
||||||
|------|------|------|
|
|------|------|------|
|
||||||
|
| 03-09 17:15 | 📦 铸渊 (Copilot) | 模块更新: `scripts/` |
|
||||||
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `backend-integration/` |
|
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `backend-integration/` |
|
||||||
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `backend/` |
|
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `backend/` |
|
||||||
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `cloud-drive/` |
|
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `cloud-drive/` |
|
||||||
|
|
@ -80,7 +81,6 @@
|
||||||
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `m15-cloud-drive/` |
|
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `m15-cloud-drive/` |
|
||||||
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `m18-health-check/` |
|
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `m18-health-check/` |
|
||||||
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `notification/` |
|
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `notification/` |
|
||||||
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `scripts/` |
|
|
||||||
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `status-board/` |
|
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `status-board/` |
|
||||||
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `ticket-system/` |
|
| 03-09 17:01 | 📦 铸渊 (ZhùYuān) | 模块更新: `ticket-system/` |
|
||||||
<!-- BULLETIN_END -->
|
<!-- BULLETIN_END -->
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,7 @@ const MEMORY_PATH = path.join(__dirname, '..', '.github', 'brain', 'memory.json'
|
||||||
const BULLETIN_START = '<!-- BULLETIN_START -->';
|
const BULLETIN_START = '<!-- BULLETIN_START -->';
|
||||||
const BULLETIN_END = '<!-- BULLETIN_END -->';
|
const BULLETIN_END = '<!-- BULLETIN_END -->';
|
||||||
const MAX_ENTRIES = 20;
|
const MAX_ENTRIES = 20;
|
||||||
|
const MAX_GIT_LOG_COMMITS = 30;
|
||||||
|
|
||||||
/* ── 开发者名册 ─────────────────────────── */
|
/* ── 开发者名册 ─────────────────────────── */
|
||||||
const DEV_MAP = {
|
const DEV_MAP = {
|
||||||
|
|
@ -54,12 +55,17 @@ function formatTime(ts) {
|
||||||
if (!ts) return '—';
|
if (!ts) return '—';
|
||||||
const d = new Date(ts);
|
const d = new Date(ts);
|
||||||
if (isNaN(d.getTime())) return ts;
|
if (isNaN(d.getTime())) return ts;
|
||||||
const bj = new Date(d.getTime() + 8 * 3600000);
|
const fmt = new Intl.DateTimeFormat('zh-CN', {
|
||||||
const mm = String(bj.getUTCMonth() + 1).padStart(2, '0');
|
timeZone: 'Asia/Shanghai',
|
||||||
const dd = String(bj.getUTCDate()).padStart(2, '0');
|
month: '2-digit',
|
||||||
const hh = String(bj.getUTCHours()).padStart(2, '0');
|
day: '2-digit',
|
||||||
const mi = String(bj.getUTCMinutes()).padStart(2, '0');
|
hour: '2-digit',
|
||||||
return `${mm}-${dd} ${hh}:${mi}`;
|
minute: '2-digit',
|
||||||
|
hour12: false,
|
||||||
|
});
|
||||||
|
const parts = fmt.formatToParts(d);
|
||||||
|
const get = (type) => (parts.find(p => p.type === type) || {}).value || '';
|
||||||
|
return `${get('month')}-${get('day')} ${get('hour')}:${get('minute')}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
function statusIcon(result) {
|
function statusIcon(result) {
|
||||||
|
|
@ -177,7 +183,7 @@ function detectRecentModulePushes() {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const log = execSync(
|
const log = execSync(
|
||||||
'git log --oneline --name-only --since="7 days ago" -30 2>/dev/null || true',
|
`git log --oneline --name-only --since="7 days ago" -${MAX_GIT_LOG_COMMITS} 2>/dev/null || true`,
|
||||||
{ encoding: 'utf8', cwd: path.join(__dirname, '..') }
|
{ encoding: 'utf8', cwd: path.join(__dirname, '..') }
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
@ -219,7 +225,9 @@ function detectRecentModulePushes() {
|
||||||
detail: `模块更新: \`${mod}/\``,
|
detail: `模块更新: \`${mod}/\``,
|
||||||
sortKey: new Date(ts).getTime(),
|
sortKey: new Date(ts).getTime(),
|
||||||
});
|
});
|
||||||
} catch (_) { /* skip */ }
|
} catch (err) {
|
||||||
|
console.log(`⚠️ 读取模块 ${mod} 提交信息失败: ${err.message}`);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.log(`⚠️ Git 日志读取失败: ${err.message}`);
|
console.log(`⚠️ Git 日志读取失败: ${err.message}`);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue