gitlink-cli/output/reproducibility-gitlink-cli...

171 lines
5.4 KiB
HTML

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>zzx-coder/gitlink-cli — 复现性评分卡</title>
<script src="https://cdn.jsdelivr.net/npm/echarts@5.4.3/dist/echarts.min.js"></script>
<style>
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; background: #f5f7fa; color: #333; }
.header { background: linear-gradient(135deg, #1a237e 0%, #3949ab 100%); color: #fff; padding: 40px 30px; }
.header h1 { font-size: 26px; margin-bottom: 6px; }
.container { max-width: 1200px; margin: 0 auto; padding: 20px; }
.row { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 20px; margin-bottom: 24px; }
.panel { background: #fff; border-radius: 12px; padding: 24px; box-shadow: 0 2px 8px rgba(0,0,0,.08); }
.panel h2 { font-size: 18px; margin-bottom: 16px; color: #1a237e; border-bottom: 2px solid #3949ab; padding-bottom: 8px; }
.chart { width: 100%; height: 350px; }
.grade-circle { text-align: center; padding: 20px; }
.grade-letter { font-size: 72px; font-weight: 900; }
.grade-A { color: #2e7d32; }
.grade-B { color: #558b2f; }
.grade-C { color: #f57c00; }
.grade-D { color: #e65100; }
.grade-F { color: #c62828; }
.grade-score { font-size: 24px; color: #888; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: 10px 14px; text-align: left; border-bottom: 1px solid #eee; font-size: 13px; }
th { background: #f5f7fa; color: #555; }
.bar { height: 8px; border-radius: 4px; background: #e0e0e0; margin-top: 4px; }
.bar-fill { height: 100%; border-radius: 4px; }
.footer { text-align: center; padding: 24px; color: #999; font-size: 12px; }
@media (max-width: 768px) { .row { grid-template-columns: 1fr; } }
</style>
</head>
<body>
<div class="header">
<h1>zzx-coder/gitlink-cli — 科研复现性评分卡</h1>
<div style="opacity:0.8;font-size:14px;">2026-07-06</div>
</div>
<div class="container">
<div class="row">
<div class="panel grade-circle">
<div class="grade-letter grade-F">F</div>
<div class="grade-score">5.0 / 100</div>
<div style="margin-top:12px;color:#888;">
差 — 几乎不可复现
</div>
</div>
<div class="panel">
<h2>维度雷达图</h2>
<div id="radarChart" class="chart"></div>
</div>
<div class="panel">
<h2>维度明细</h2>
<table>
<tr><th>维度</th><th>评分</th><th>权重</th></tr>
<tr><td>许可证</td><td>0%</td><td>15%</td></tr>
<tr><td>无密钥/PII</td><td>0%</td><td>15%</td></tr>
<tr><td>README 完整</td><td>0%</td><td>15%</td></tr>
<tr><td>依赖声明</td><td>0%</td><td>15%</td></tr>
<tr><td>构建说明</td><td>50%</td><td>10%</td></tr>
<tr><td>CI 配置</td><td>0%</td><td>10%</td></tr>
<tr><td>测试证据</td><td>0%</td><td>10%</td></tr>
<tr><td>数据可用性</td><td>0%</td><td>10%</td></tr>
</table>
</div>
</div>
<div class="panel">
<h2>详细评估与改进建议</h2>
<table>
<tr><th>维度</th><th>评分</th><th>证据</th><th>建议</th></tr>
<tr>
<td>许可证</td>
<td></td>
<td>未扫描(无本地仓库)</td>
<td>建议添加 MIT/Apache-2.0/GPL-3.0 许可证</td>
</tr>
<tr>
<td>无密钥/PII</td>
<td>⚠️</td>
<td>未扫描(无本地仓库)</td>
<td>立即移除泄露的密钥,使用环境变量管理敏感信息</td>
</tr>
<tr>
<td>README 完整</td>
<td></td>
<td>README 缺失或过于简略</td>
<td>补充项目目的、安装、使用、许可和引用章节</td>
</tr>
<tr>
<td>依赖声明</td>
<td></td>
<td>无依赖声明</td>
<td>添加 package.json/go.mod/requirements.txt 等标准依赖文件</td>
</tr>
<tr>
<td>构建说明</td>
<td>⚠️</td>
<td>部分构建说明</td>
<td>添加 Makefile/Dockerfile + README 中的构建步骤</td>
</tr>
<tr>
<td>CI 配置</td>
<td></td>
<td>无 CI 配置</td>
<td>配置 GitLink CI 或 GitHub Actions 自动构建和测试</td>
</tr>
<tr>
<td>测试证据</td>
<td></td>
<td>无测试证据</td>
<td>添加单元测试和集成测试,在 README 中说明如何运行</td>
</tr>
<tr>
<td>数据可用性</td>
<td></td>
<td>无数据可用性声明</td>
<td>说明数据集来源,提供 Zenodo/Figshare 链接或生成脚本</td>
</tr>
</table>
</div>
</div>
<div class="footer">Generated by GitLink Research Assistant — 2026-07-06</div>
<script>
var radarChart = echarts.init(document.getElementById('radarChart'));
radarChart.setOption({
radar: {
indicator: [
{ name: '许可证', max: 100 },
{ name: '无密钥', max: 100 },
{ name: 'README', max: 100 },
{ name: '依赖', max: 100 },
{ name: '构建', max: 100 },
{ name: 'CI', max: 100 },
{ name: '测试', max: 100 },
{ name: '数据', max: 100 }
],
center: ['50%', '55%'],
radius: '70%'
},
series: [{
type: 'radar',
data: [{
value: [
0,
0,
0,
0,
50,
0,
0,
0
],
name: '复现性',
areaStyle: { color: 'rgba(57,73,171,0.3)' },
lineStyle: { color: '#3949ab' }
}]
}]
});
</script>
</body>
</html>