实现分层实体漏洞知识库与实体级完整度监控
这个提交包含在:
@@ -87,7 +87,7 @@
|
||||
<h1>当前架构库镜像</h1>
|
||||
<div class="meta">工作台内置镜像页:当前架构库结构化数据镜像。</div>
|
||||
<pre>{
|
||||
"generated_at": "2026-03-19T23:44:56+00:00",
|
||||
"generated_at": "2026-03-20T00:56:32+00:00",
|
||||
"title": "当前架构库",
|
||||
"summary": "工作台、控制面、数据层、授权边界与系统覆盖的当前真值视图。",
|
||||
"sections": [
|
||||
@@ -113,6 +113,14 @@
|
||||
"label": "近两年全量系统",
|
||||
"value": "42"
|
||||
},
|
||||
{
|
||||
"label": "已编目实体",
|
||||
"value": "97"
|
||||
},
|
||||
{
|
||||
"label": "发现 backlog",
|
||||
"value": "17"
|
||||
},
|
||||
{
|
||||
"label": "当前运行",
|
||||
"value": "140"
|
||||
@@ -137,7 +145,7 @@
|
||||
},
|
||||
{
|
||||
"label": "生成时间",
|
||||
"value": "2026-03-19T23:44:56+00:00"
|
||||
"value": "2026-03-20T00:56:32+00:00"
|
||||
}
|
||||
],
|
||||
"links": [
|
||||
@@ -267,6 +275,10 @@
|
||||
"label": "系统 Registry",
|
||||
"value": "08-threat-intel/registry/systems/*.json"
|
||||
},
|
||||
{
|
||||
"label": "实体 Registry",
|
||||
"value": "08-threat-intel/registry/entities/*.json"
|
||||
},
|
||||
{
|
||||
"label": "运行 Registry",
|
||||
"value": "08-threat-intel/registry/runs/*.json"
|
||||
@@ -366,6 +378,16 @@
|
||||
"href": "/docs/retired-sources.html",
|
||||
"description": "退役源、退役原因与 replacement map。"
|
||||
},
|
||||
{
|
||||
"label": "entity catalog report",
|
||||
"href": "/docs/entity-catalog-report.html",
|
||||
"description": "分层实体覆盖、history-full 完整度与 workflow 指标。"
|
||||
},
|
||||
{
|
||||
"label": "entity discovery backlog",
|
||||
"href": "/docs/entity-discovery-backlog.html",
|
||||
"description": "待编目 repo / 插件 / 包 backlog 与等待原因。"
|
||||
},
|
||||
{
|
||||
"label": "repro-map 真值",
|
||||
"href": "/docs/repro-map.html",
|
||||
@@ -411,6 +433,21 @@
|
||||
"href": "/data/monitor-summary.json",
|
||||
"description": "每日监控摘要、open alerts 与最近全绿时间。"
|
||||
},
|
||||
{
|
||||
"label": "entity-completeness.json",
|
||||
"href": "/data/entity-completeness.json",
|
||||
"description": "实体级 catalog 完整度、版本映射与 workflow 覆盖。"
|
||||
},
|
||||
{
|
||||
"label": "entity-discovery-backlog.json",
|
||||
"href": "/data/entity-discovery-backlog.json",
|
||||
"description": "发现但尚未正式编目的 repo / 插件 / 包 backlog。"
|
||||
},
|
||||
{
|
||||
"label": "entity-queues.json",
|
||||
"href": "/data/entity-queues.json",
|
||||
"description": "discovery/history/latest/workflow 四类队列摘要。"
|
||||
},
|
||||
{
|
||||
"label": "runs.json",
|
||||
"href": "/runs.json",
|
||||
@@ -451,6 +488,18 @@
|
||||
"label": "运行归档根目录",
|
||||
"value": "06-case-studies/generated-runs/<run-id>/"
|
||||
},
|
||||
{
|
||||
"label": "实体完整度",
|
||||
"value": "/data/entity-completeness.json"
|
||||
},
|
||||
{
|
||||
"label": "发现 backlog",
|
||||
"value": "/data/entity-discovery-backlog.json"
|
||||
},
|
||||
{
|
||||
"label": "实体队列",
|
||||
"value": "/data/entity-queues.json"
|
||||
},
|
||||
{
|
||||
"label": "默认入口",
|
||||
"value": "/index.html"
|
||||
|
||||
@@ -0,0 +1,171 @@
|
||||
<!doctype html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>分层实体覆盖报告</title>
|
||||
<style>
|
||||
:root {
|
||||
--bg: #08111f;
|
||||
--panel: rgba(9, 18, 32, 0.9);
|
||||
--border: rgba(137, 171, 214, 0.2);
|
||||
--text: #f7fafc;
|
||||
--muted: #9fb3ca;
|
||||
--accent: #5eead4;
|
||||
}
|
||||
* { box-sizing: border-box; }
|
||||
body {
|
||||
margin: 0;
|
||||
min-height: 100vh;
|
||||
font-family: "IBM Plex Sans", "Segoe UI", sans-serif;
|
||||
color: var(--text);
|
||||
background:
|
||||
radial-gradient(circle at top left, rgba(94, 234, 212, 0.12), transparent 26%),
|
||||
linear-gradient(160deg, #050c16 0%, #091526 50%, #10233d 100%);
|
||||
}
|
||||
main {
|
||||
max-width: 1080px;
|
||||
margin: 0 auto;
|
||||
padding: 32px 20px 40px;
|
||||
}
|
||||
.panel {
|
||||
background: var(--panel);
|
||||
border: 1px solid var(--border);
|
||||
border-radius: 20px;
|
||||
padding: 24px;
|
||||
box-shadow: 0 24px 80px rgba(1, 7, 20, 0.45);
|
||||
}
|
||||
.actions {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 12px;
|
||||
margin-bottom: 18px;
|
||||
}
|
||||
.chip {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
border-radius: 999px;
|
||||
border: 1px solid var(--border);
|
||||
padding: 10px 14px;
|
||||
color: var(--text);
|
||||
background: rgba(255,255,255,0.05);
|
||||
text-decoration: none;
|
||||
}
|
||||
.chip:hover { border-color: rgba(94, 234, 212, 0.42); }
|
||||
h1 {
|
||||
margin: 0 0 12px;
|
||||
font-family: "IBM Plex Serif", Georgia, serif;
|
||||
font-size: clamp(1.8rem, 4vw, 3rem);
|
||||
line-height: 1.08;
|
||||
}
|
||||
.meta {
|
||||
color: var(--muted);
|
||||
margin-bottom: 18px;
|
||||
}
|
||||
pre {
|
||||
margin: 0;
|
||||
padding: 20px;
|
||||
overflow: auto;
|
||||
border-radius: 16px;
|
||||
border: 1px solid rgba(137, 171, 214, 0.12);
|
||||
background: rgba(2, 8, 22, 0.84);
|
||||
color: #d6e5f5;
|
||||
font-family: "IBM Plex Mono", "SFMono-Regular", monospace;
|
||||
font-size: 0.92rem;
|
||||
line-height: 1.6;
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<main>
|
||||
<div class="panel">
|
||||
<div class="actions">
|
||||
<a class="chip" href="/overview/index.html">返回工作台</a>
|
||||
</div>
|
||||
<h1>分层实体覆盖报告</h1>
|
||||
<div class="meta">工作台内置镜像页:分层实体覆盖、history-full 完整度和 workflow 统计。</div>
|
||||
<pre># 分层实体覆盖与完整度报告
|
||||
|
||||
- 生成时间: `2026-03-20T00:56:31+00:00`
|
||||
- 已编目实体: `97`
|
||||
- 待编目 backlog: `17`
|
||||
- history-full 已完成: `40`
|
||||
- latest green: `97`
|
||||
- workflow 完整: `97`
|
||||
- 版本映射完整: `49`
|
||||
- 官方源覆盖: `97`
|
||||
- 插件 history-full 已完成: `4`
|
||||
|
||||
## 系统分层摘要
|
||||
|
||||
| 系统 | cataloged entities | candidate backlog | workflow complete | version mapped | official covered | plugins |
|
||||
| --- | ---: | ---: | ---: | ---: | ---: | ---: |
|
||||
| adminer | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| adobe-commerce | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| angular | 2 | 0 | 2 | 2 | 2 | 0 |
|
||||
| apache-httpd | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| apache-tomcat | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| aspnet-core | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| astro | 3 | 0 | 3 | 3 | 3 | 1 |
|
||||
| caddy | 3 | 0 | 3 | 2 | 3 | 1 |
|
||||
| directus | 1 | 1 | 1 | 0 | 1 | 0 |
|
||||
| discourse | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| django | 2 | 0 | 2 | 1 | 2 | 0 |
|
||||
| drupal | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| echo | 2 | 0 | 2 | 2 | 2 | 0 |
|
||||
| esbuild | 2 | 0 | 2 | 2 | 2 | 0 |
|
||||
| express | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| fastify | 2 | 0 | 2 | 2 | 2 | 0 |
|
||||
| flask | 2 | 0 | 2 | 2 | 2 | 0 |
|
||||
| ghost | 1 | 1 | 1 | 0 | 1 | 0 |
|
||||
| gin | 2 | 0 | 2 | 2 | 2 | 0 |
|
||||
| gitea | 1 | 1 | 1 | 0 | 1 | 0 |
|
||||
| gitlab-ce | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| grafana | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| hapi | 2 | 0 | 2 | 2 | 2 | 0 |
|
||||
| haproxy | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| jenkins | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| joomla | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| kibana | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| koa | 2 | 0 | 2 | 2 | 2 | 0 |
|
||||
| laravel | 2 | 0 | 2 | 2 | 2 | 0 |
|
||||
| magento-open-source | 1 | 1 | 1 | 0 | 1 | 0 |
|
||||
| mattermost | 5 | 0 | 5 | 5 | 5 | 1 |
|
||||
| mediawiki | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| medusa | 1 | 1 | 1 | 0 | 1 | 0 |
|
||||
| moodle | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| nestjs | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| nextjs | 2 | 1 | 2 | 1 | 2 | 0 |
|
||||
| nginx | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| nodejs | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| nuxt | 2 | 1 | 2 | 1 | 2 | 0 |
|
||||
| opencart | 1 | 1 | 1 | 0 | 1 | 0 |
|
||||
| openmage | 1 | 1 | 1 | 0 | 1 | 0 |
|
||||
| phpmyadmin | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| prestashop | 1 | 1 | 1 | 0 | 1 | 0 |
|
||||
| rails | 2 | 0 | 2 | 1 | 2 | 0 |
|
||||
| react | 3 | 1 | 3 | 2 | 3 | 0 |
|
||||
| redmine | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| saleor | 1 | 1 | 1 | 0 | 1 | 0 |
|
||||
| shopware | 1 | 1 | 1 | 0 | 1 | 0 |
|
||||
| spring-boot | 2 | 0 | 2 | 1 | 2 | 0 |
|
||||
| spring-framework | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| spring-security | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| strapi | 1 | 1 | 1 | 0 | 1 | 0 |
|
||||
| sveltekit | 2 | 0 | 2 | 2 | 2 | 0 |
|
||||
| symfony | 2 | 0 | 2 | 2 | 2 | 0 |
|
||||
| traefik | 2 | 0 | 2 | 1 | 2 | 0 |
|
||||
| undici | 3 | 0 | 3 | 2 | 3 | 1 |
|
||||
| vite | 5 | 1 | 5 | 4 | 5 | 3 |
|
||||
| vue | 2 | 1 | 2 | 1 | 2 | 0 |
|
||||
| webpack | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
| werkzeug | 2 | 0 | 2 | 2 | 2 | 0 |
|
||||
| woocommerce | 1 | 1 | 1 | 0 | 1 | 0 |
|
||||
| wordpress | 1 | 0 | 1 | 0 | 1 | 0 |
|
||||
</pre>
|
||||
</div>
|
||||
</main>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,117 @@
|
||||
<!doctype html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>分层实体发现 Backlog</title>
|
||||
<style>
|
||||
:root {
|
||||
--bg: #08111f;
|
||||
--panel: rgba(9, 18, 32, 0.9);
|
||||
--border: rgba(137, 171, 214, 0.2);
|
||||
--text: #f7fafc;
|
||||
--muted: #9fb3ca;
|
||||
--accent: #5eead4;
|
||||
}
|
||||
* { box-sizing: border-box; }
|
||||
body {
|
||||
margin: 0;
|
||||
min-height: 100vh;
|
||||
font-family: "IBM Plex Sans", "Segoe UI", sans-serif;
|
||||
color: var(--text);
|
||||
background:
|
||||
radial-gradient(circle at top left, rgba(94, 234, 212, 0.12), transparent 26%),
|
||||
linear-gradient(160deg, #050c16 0%, #091526 50%, #10233d 100%);
|
||||
}
|
||||
main {
|
||||
max-width: 1080px;
|
||||
margin: 0 auto;
|
||||
padding: 32px 20px 40px;
|
||||
}
|
||||
.panel {
|
||||
background: var(--panel);
|
||||
border: 1px solid var(--border);
|
||||
border-radius: 20px;
|
||||
padding: 24px;
|
||||
box-shadow: 0 24px 80px rgba(1, 7, 20, 0.45);
|
||||
}
|
||||
.actions {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 12px;
|
||||
margin-bottom: 18px;
|
||||
}
|
||||
.chip {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
border-radius: 999px;
|
||||
border: 1px solid var(--border);
|
||||
padding: 10px 14px;
|
||||
color: var(--text);
|
||||
background: rgba(255,255,255,0.05);
|
||||
text-decoration: none;
|
||||
}
|
||||
.chip:hover { border-color: rgba(94, 234, 212, 0.42); }
|
||||
h1 {
|
||||
margin: 0 0 12px;
|
||||
font-family: "IBM Plex Serif", Georgia, serif;
|
||||
font-size: clamp(1.8rem, 4vw, 3rem);
|
||||
line-height: 1.08;
|
||||
}
|
||||
.meta {
|
||||
color: var(--muted);
|
||||
margin-bottom: 18px;
|
||||
}
|
||||
pre {
|
||||
margin: 0;
|
||||
padding: 20px;
|
||||
overflow: auto;
|
||||
border-radius: 16px;
|
||||
border: 1px solid rgba(137, 171, 214, 0.12);
|
||||
background: rgba(2, 8, 22, 0.84);
|
||||
color: #d6e5f5;
|
||||
font-family: "IBM Plex Mono", "SFMono-Regular", monospace;
|
||||
font-size: 0.92rem;
|
||||
line-height: 1.6;
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<main>
|
||||
<div class="panel">
|
||||
<div class="actions">
|
||||
<a class="chip" href="/overview/index.html">返回工作台</a>
|
||||
</div>
|
||||
<h1>分层实体发现 Backlog</h1>
|
||||
<div class="meta">工作台内置镜像页:待编目 repo / 插件 / 包 backlog 与等待原因。</div>
|
||||
<pre># 分层实体发现 Backlog
|
||||
|
||||
- 生成时间: `2026-03-20T00:56:31+00:00`
|
||||
- 待编目数量: `17`
|
||||
|
||||
| candidate_id | root_system | entity_type | risk | reason | waiting_for | source |
|
||||
| --- | --- | --- | --- | --- | --- | --- |
|
||||
| directus--repo-candidate--https-github-com-directus-directus | directus | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/directus/directus/security/advisories |
|
||||
| ghost--repo-candidate--https-github-com-tryghost-ghost | ghost | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/TryGhost/Ghost/security/advisories |
|
||||
| gitea--repo-candidate--https-github-com-go-gitea-gitea | gitea | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/go-gitea/gitea/security/advisories |
|
||||
| magento-open-source--repo-candidate--https-github-com-magento-magento2 | magento-open-source | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/magento/magento2/security/advisories |
|
||||
| medusa--repo-candidate--https-github-com-medusajs-medusa | medusa | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/medusajs/medusa/security/advisories |
|
||||
| nextjs--repo-candidate--https-github-com-vercel-next-js | nextjs | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/vercel/next.js/security/advisories |
|
||||
| nuxt--repo-candidate--https-github-com-nuxt-nuxt | nuxt | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/nuxt/nuxt/security/advisories |
|
||||
| opencart--repo-candidate--https-github-com-opencart-opencart | opencart | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/opencart/opencart/releases |
|
||||
| openmage--repo-candidate--https-github-com-openmage-magento-lts | openmage | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/OpenMage/magento-lts/security/advisories |
|
||||
| prestashop--repo-candidate--https-github-com-prestashop-prestashop | prestashop | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/PrestaShop/PrestaShop/security/advisories |
|
||||
| react--repo-candidate--https-github-com-facebook-react | react | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/facebook/react/security/advisories |
|
||||
| saleor--repo-candidate--https-github-com-saleor-saleor | saleor | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/saleor/saleor/security/advisories |
|
||||
| shopware--repo-candidate--https-github-com-shopware-shopware | shopware | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/shopware/shopware/security/advisories |
|
||||
| strapi--repo-candidate--https-github-com-strapi-strapi | strapi | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/strapi/strapi/security/advisories |
|
||||
| vite--repo-candidate--https-github-com-vitejs-vite | vite | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/vitejs/vite/security/advisories |
|
||||
| vue--repo-candidate--https-github-com-vuejs-core | vue | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/vuejs/core/security |
|
||||
| woocommerce--repo-candidate--https-github-com-woocommerce-woocommerce | woocommerce | repo | medium | source catalog exposed a repo-like URL that is not yet cataloged as an entity | 确认是否应升级为 cataloged repo/package 实体并补齐历史漏洞 | https://github.com/woocommerce/woocommerce/security/advisories |
|
||||
</pre>
|
||||
</div>
|
||||
</main>
|
||||
</body>
|
||||
</html>
|
||||
@@ -88,7 +88,7 @@
|
||||
<div class="meta">工作台内置镜像页:active/retired source、replacement map 与覆盖摘要。</div>
|
||||
<pre># Source Catalog Audit
|
||||
|
||||
- generated_at: `2026-03-19T23:44:51+00:00`
|
||||
- generated_at: `2026-03-20T00:56:25+00:00`
|
||||
- systems: `62`
|
||||
- sources: `179`
|
||||
- active_sources: `101`
|
||||
|
||||
@@ -88,7 +88,7 @@
|
||||
<div class="meta">工作台内置镜像页:89 条 advisory 最新完整度、family 矩阵与 ingest 健康度。</div>
|
||||
<pre># 全库 Advisory 完整度报告
|
||||
|
||||
- 生成时间: `2026-03-19T23:44:56+00:00`
|
||||
- 生成时间: `2026-03-20T00:56:32+00:00`
|
||||
- 最新 advisory 完整度: `89/89` `verified-real`
|
||||
- 合成验证数量: `0`
|
||||
- 阻塞数量: `0`
|
||||
@@ -96,7 +96,9 @@
|
||||
- 完整度百分比: `100.0%`
|
||||
- active source 全绿: `101/101`
|
||||
- source open alerts: `0`
|
||||
- 最近一次 source 全绿: `2026-03-19T23:44:51+00:00`
|
||||
- 最近一次 source 全绿: `2026-03-20T00:56:25+00:00`
|
||||
- 已编目实体: `97`
|
||||
- 待编目 backlog: `17`
|
||||
|
||||
## 系统覆盖矩阵
|
||||
|
||||
@@ -107,6 +109,15 @@
|
||||
| undici | 14 | 14 | 0 | 0 | 0 | ssrf(14/14) |
|
||||
| vite | 12 | 12 | 0 | 0 | 0 | proxy-boundary(11/11), xss(1/1) |
|
||||
|
||||
## 分层实体完整度
|
||||
|
||||
- history-full 已完成: `40`
|
||||
- latest green: `97`
|
||||
- workflow 完整: `97`
|
||||
- 版本映射完整: `49`
|
||||
- 官方源覆盖: `97`
|
||||
- 插件 history-full 已完成: `4`
|
||||
|
||||
## 历史阻塞项修复纪要
|
||||
|
||||
- Docker daemon unavailable caused provision-compose-environment blocked-artifact.
|
||||
@@ -114,6 +125,7 @@
|
||||
- Baseline and browser steps were skipped when environment readiness was not enforced.
|
||||
- Latest completeness now uses one advisory -> latest run semantics instead of historical run piles.
|
||||
- Source health now counts only status=active sources; retired sources are audited separately with replacement links.
|
||||
- Entity coverage now separates cataloged entities from discovery backlog so infinite internet scope no longer pollutes completion numbers.
|
||||
|
||||
## Ingest / Source 健康度
|
||||
|
||||
|
||||
在新工单中引用
屏蔽一个用户