mirror of
https://gitee.com/spark-store-project/spark-store
synced 2026-09-21 14:10:11 +08:00
fix: 处理 PR 审查意见(竞态/类型安全/冗余/日志泄露)
- App.vue fetchAppFromStore 的 fetch 接入 rootAbortController.signal, 组件卸载时取消请求,避免竞态与内存泄漏;catch 静默处理 AbortError。 - App.vue loadHome 远程字段由 `as string` 断言改为 typeof 运行时守卫, 避免非字符串数据注入响应式状态(非崩溃,属改进)。 - ranking.ts topUpdatedContributors 移除对 topByUpdate 已过滤结果的冗余 filter。 - storeConfig 加载成功日志改为仅打印规则条数,避免完整配置泄露且保留诊断价值。 - 未采纳:parseAppPayload 默认 origin=spark 维持不变(spark 为历史默认源, 盲改 apm 有反向误路由风险,且该字符串分支仅为极旧格式兜底)。
This commit is contained in:
@@ -113,9 +113,16 @@ export async function loadPriorityConfig(arch: string): Promise<void> {
|
||||
},
|
||||
};
|
||||
}
|
||||
// 仅打印规则计数而非完整配置,避免潜在敏感信息泄露(诊断用)
|
||||
const ruleCount = (r: {
|
||||
pkgnames: string[];
|
||||
categories: string[];
|
||||
tags: string[];
|
||||
}) => r.pkgnames.length + r.categories.length + r.tags.length;
|
||||
console.log(
|
||||
"[PriorityConfig] 已从服务器加载优先级配置:",
|
||||
JSON.stringify(dynamicPriorityConfig),
|
||||
`[PriorityConfig] 已从服务器加载优先级配置: spark ${ruleCount(
|
||||
dynamicPriorityConfig.sparkPriority,
|
||||
)} 条, apm ${ruleCount(dynamicPriorityConfig.apmPriority)} 条`,
|
||||
);
|
||||
} catch (error) {
|
||||
// 获取失败(含 404:服务器无配置文件),默认优先 APM。
|
||||
|
||||
Reference in New Issue
Block a user