feat: require world-class evidence artifacts
This commit is contained in:
@@ -197,6 +197,189 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"template_only": {
|
||||
"const": false
|
||||
},
|
||||
"evidence_key": {
|
||||
"const": "provider-holdout"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"template_only",
|
||||
"evidence_key"
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"artifact_refs": {
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"path": {
|
||||
"const": "reports/output_execution_runs.json"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"path"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"template_only": {
|
||||
"const": false
|
||||
},
|
||||
"evidence_key": {
|
||||
"const": "human-adjudication"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"template_only",
|
||||
"evidence_key"
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"artifact_refs": {
|
||||
"allOf": [
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"path": {
|
||||
"const": "reports/output_review_adjudication.json"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"path"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"path": {
|
||||
"const": "reports/output_review_decisions.json"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"path"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"template_only": {
|
||||
"const": false
|
||||
},
|
||||
"evidence_key": {
|
||||
"const": "native-permission-enforcement"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"template_only",
|
||||
"evidence_key"
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"artifact_refs": {
|
||||
"allOf": [
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"path": {
|
||||
"const": "reports/runtime_permission_probes.json"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"path"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"path": {
|
||||
"const": "reports/install_simulation.json"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"path"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"if": {
|
||||
"properties": {
|
||||
"template_only": {
|
||||
"const": false
|
||||
},
|
||||
"evidence_key": {
|
||||
"const": "native-client-telemetry"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"template_only",
|
||||
"evidence_key"
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"artifact_refs": {
|
||||
"allOf": [
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"path": {
|
||||
"const": "reports/adoption_drift_report.json"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"path"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"contains": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"path": {
|
||||
"const": "reports/telemetry_hook_recipes.json"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"path"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"additionalProperties": true
|
||||
|
||||
+1
-1
@@ -16,7 +16,7 @@
|
||||
"vscode"
|
||||
],
|
||||
"package_metadata": "registry/packages/yao-meta-skill.json",
|
||||
"package_sha256": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8"
|
||||
"package_sha256": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -16,8 +16,8 @@
|
||||
"trust_level": "local",
|
||||
"license": "MIT",
|
||||
"checksums": {
|
||||
"package_sha256": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8",
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576"
|
||||
"package_sha256": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb",
|
||||
"archive_sha256": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d"
|
||||
},
|
||||
"compatibility": {
|
||||
"openai": "pass",
|
||||
@@ -48,7 +48,7 @@
|
||||
},
|
||||
"distribution": {
|
||||
"archive_verified": true,
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576",
|
||||
"archive_sha256": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d",
|
||||
"package_verification": "reports/package_verification.json",
|
||||
"install_simulated": true,
|
||||
"install_simulation": "reports/install_simulation.json"
|
||||
|
||||
@@ -6,15 +6,15 @@
|
||||
"context_budget_tier": "production",
|
||||
"context_budget_limit": 1000,
|
||||
"skill_body_tokens": 751,
|
||||
"other_text_tokens": 1190325,
|
||||
"other_text_tokens": 1191951,
|
||||
"estimated_initial_load_tokens": 944,
|
||||
"estimated_total_text_tokens": 1191076,
|
||||
"deferred_resource_tokens": 383511,
|
||||
"estimated_total_text_tokens": 1192702,
|
||||
"deferred_resource_tokens": 383953,
|
||||
"deferred_resource_warn_threshold": 120000,
|
||||
"deferred_resource_dirs": [
|
||||
{
|
||||
"path": "scripts",
|
||||
"estimated_tokens": 336028,
|
||||
"estimated_tokens": 336470,
|
||||
"file_count": 96
|
||||
},
|
||||
{
|
||||
@@ -31,7 +31,7 @@
|
||||
"large_deferred_resource_dirs": [
|
||||
{
|
||||
"path": "scripts",
|
||||
"estimated_tokens": 336028,
|
||||
"estimated_tokens": 336470,
|
||||
"file_count": 96
|
||||
}
|
||||
],
|
||||
@@ -54,14 +54,14 @@
|
||||
],
|
||||
"missing": [],
|
||||
"path": "scripts",
|
||||
"estimated_tokens": 336028,
|
||||
"estimated_tokens": 336470,
|
||||
"file_count": 96,
|
||||
"rationale": "Script resources are deterministic deferred tools, not initial-load prompt context."
|
||||
}
|
||||
],
|
||||
"summary": "Large deferred resources are indexed and backed by evidence."
|
||||
},
|
||||
"relevant_file_count": 504,
|
||||
"relevant_file_count": 505,
|
||||
"unused_resource_dirs": [],
|
||||
"quality_signal_points": 130,
|
||||
"quality_density": 137.7
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
| Target | Path | Tier | Limit | Initial | SKILL | Deferred | Resource Governance | Large Deferred Dirs | Quality Density | Unused Dirs | Status |
|
||||
| --- | --- | --- | ---: | ---: | ---: | ---: | --- | --- | ---: | --- | --- |
|
||||
| root | `.` | `production` | 1000 | 944 | 751 | 383511 | `governed` | scripts:336028 | 137.7 | - | ok |
|
||||
| root | `.` | `production` | 1000 | 944 | 751 | 383953 | `governed` | scripts:336470 | 137.7 | - | ok |
|
||||
| complex-release-orchestrator | `examples/complex-release-orchestrator/generated-skill` | `production` | 1000 | 790 | 718 | 1657 | `not-required` | - | 164.6 | - | ok |
|
||||
| governed-incident-command | `examples/governed-incident-command/generated-skill` | `production` | 1000 | 760 | 658 | 1030 | `not-required` | - | 171.1 | - | ok |
|
||||
|
||||
|
||||
@@ -8,11 +8,11 @@
|
||||
"budget_limit": 1000,
|
||||
"initial_tokens": 944,
|
||||
"skill_body_tokens": 751,
|
||||
"deferred_resource_tokens": 383511,
|
||||
"deferred_resource_tokens": 383953,
|
||||
"large_deferred_resource_dirs": [
|
||||
{
|
||||
"path": "scripts",
|
||||
"estimated_tokens": 336028,
|
||||
"estimated_tokens": 336470,
|
||||
"file_count": 96
|
||||
}
|
||||
],
|
||||
@@ -35,7 +35,7 @@
|
||||
],
|
||||
"missing": [],
|
||||
"path": "scripts",
|
||||
"estimated_tokens": 336028,
|
||||
"estimated_tokens": 336470,
|
||||
"file_count": 96,
|
||||
"rationale": "Script resources are deterministic deferred tools, not initial-load prompt context."
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
"target_count": 4,
|
||||
"adapter_count": 4,
|
||||
"archive_present": true,
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576",
|
||||
"archive_sha256": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d",
|
||||
"archive_entry_count": 575,
|
||||
"failure_count": 0,
|
||||
"warning_count": 0
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
- Package directory: `dist`
|
||||
- Targets: `4 / 4` adapters present
|
||||
- Archive present: `True`
|
||||
- Archive SHA256: `5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576`
|
||||
- Archive SHA256: `54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d`
|
||||
- Failures: `0`
|
||||
- Warnings: `0`
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
"trust_level": "local",
|
||||
"license": "MIT",
|
||||
"checksums": {
|
||||
"package_sha256": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8",
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576"
|
||||
"package_sha256": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb",
|
||||
"archive_sha256": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d"
|
||||
},
|
||||
"compatibility": {
|
||||
"openai": "pass",
|
||||
@@ -53,7 +53,7 @@
|
||||
},
|
||||
"distribution": {
|
||||
"archive_verified": true,
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576",
|
||||
"archive_sha256": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d",
|
||||
"package_verification": "reports/package_verification.json",
|
||||
"install_simulated": true,
|
||||
"install_simulation": "reports/install_simulation.json"
|
||||
@@ -78,7 +78,7 @@
|
||||
"vscode"
|
||||
],
|
||||
"package_metadata": "registry/packages/yao-meta-skill.json",
|
||||
"package_sha256": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8"
|
||||
"package_sha256": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
- Maturity: `governed`
|
||||
- Owner: `Yao Team`
|
||||
- License: `MIT`
|
||||
- Package SHA256: `59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8`
|
||||
- Archive SHA256: `5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576`
|
||||
- Package SHA256: `2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb`
|
||||
- Archive SHA256: `54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d`
|
||||
- Install simulated: `True`
|
||||
|
||||
## Compatibility
|
||||
|
||||
@@ -439,7 +439,7 @@
|
||||
|
||||
<section>
|
||||
<h2>审查闸门</h2>
|
||||
<div class="gates"><article class='gate pass'><div><span>通过</span><h3>意图画布</h3></div><p>intent confidence 100/100; Intent is clear enough to package the first routeable version.</p><footer>reports/intent-confidence.json <a href='intent-confidence.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>触发实验</h3></div><p>13 trigger cases; 0 misroutes; 0 ambiguous</p><footer>reports/route_scorecard.json <a href='route_scorecard.md'>证据</a></footer></article><article class='gate warn'><div><span>关注</span><h3>输出实验</h3></div><p>5/5 cases; with-skill 100.0; baseline 0.0; file-backed 1; near-neighbor 1; blind A/B 5; exec 10; command 10; model 0; recorded 0; reviewed 0/5; review pending 5</p><footer>reports/output_quality_scorecard.json <a href='output_quality_scorecard.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>上下文</h3></div><p>initial load 944/1000; deferred 383511/120000; top deferred scripts 336028; resource governance governed; quality density 137.7</p><footer>reports/context_budget.json <a href='context_budget.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>运行矩阵</h3></div><p>5 / 5 targets pass</p><footer>reports/conformance_matrix.json <a href='conformance_matrix.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>信任报告</h3></div><p>0 secrets; 96 scripts; 3 network-capable scripts; 0 help smoke failures</p><footer>reports/security_trust_report.json <a href='security_trust_report.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>Python 兼容</h3></div><p>Python 3.11; 158 files; 0 compatibility issues; 0 syntax; 0 f-string 3.11 hazards</p><footer>reports/python_compatibility.json <a href='python_compatibility.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>架构维护</h3></div><p>155 Python files; 0 hotspots; 0 blockers; largest 888 lines; 34 CLI handlers</p><footer>reports/architecture_maintainability.json <a href='architecture_maintainability.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>权限批准</h3></div><p>3/3 permissions approved; gaps 0; required file_write, network, subprocess</p><footer>reports/security_trust_report.json + security/permission_policy.json <a href='../security/permission_policy.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>权限探针</h3></div><p>4/4 targets probed; native 0; metadata fallback 4; installer 4; residual risks 4</p><footer>reports/runtime_permission_probes.json <a href='runtime_permission_probes.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>组合治理</h3></div><p>12 skills, 1 actionable; 0 actionable route collisions; 0 actionable owner gaps; 0 actionable stale; 0 actionable drift; 24 scoped non-actionable issues</p><footer>reports/skill_atlas.json <a href='skill_atlas.html'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>运营回路</h3></div><p>1 metadata events; adoption 100.0; missed 0; bad-output 0; risk low</p><footer>reports/adoption_drift_report.json <a href='adoption_drift_report.md'>证据</a></footer></article><article class='gate warn'><div><span>关注</span><h3>人工批准</h3></div><p>0 active waivers; 1 warning gates still need reviewer decision</p><footer>reports/review_waivers.json <a href='review_waivers.md'>证据</a></footer></article><article class='gate warn'><div><span>关注</span><h3>世界证据</h3></div><p>4 pending world-class evidence entries; 1 human pending; 3 external pending; overclaim guard true</p><footer>reports/world_class_evidence_ledger.json <a href='world_class_evidence_ledger.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>注册审计</h3></div><p>yao-meta-skill 1.1.0; 6/6 compatibility entries pass; install pass with 4 adapters; installer permissions 12 enforced / 0 failures</p><footer>reports/registry_audit.json + reports/install_simulation.json <a href='registry_audit.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>发布路线</h3></div><p>0 promote; 3 keep current; 0 blocked; upgrade minor declared / minor recommended</p><footer>reports/promotion_decisions.json + reports/upgrade_check.json + docs/migration-v2.md <a href='promotion_decisions.md'>证据</a></footer></article></div>
|
||||
<div class="gates"><article class='gate pass'><div><span>通过</span><h3>意图画布</h3></div><p>intent confidence 100/100; Intent is clear enough to package the first routeable version.</p><footer>reports/intent-confidence.json <a href='intent-confidence.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>触发实验</h3></div><p>13 trigger cases; 0 misroutes; 0 ambiguous</p><footer>reports/route_scorecard.json <a href='route_scorecard.md'>证据</a></footer></article><article class='gate warn'><div><span>关注</span><h3>输出实验</h3></div><p>5/5 cases; with-skill 100.0; baseline 0.0; file-backed 1; near-neighbor 1; blind A/B 5; exec 10; command 10; model 0; recorded 0; reviewed 0/5; review pending 5</p><footer>reports/output_quality_scorecard.json <a href='output_quality_scorecard.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>上下文</h3></div><p>initial load 944/1000; deferred 383953/120000; top deferred scripts 336470; resource governance governed; quality density 137.7</p><footer>reports/context_budget.json <a href='context_budget.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>运行矩阵</h3></div><p>5 / 5 targets pass</p><footer>reports/conformance_matrix.json <a href='conformance_matrix.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>信任报告</h3></div><p>0 secrets; 96 scripts; 3 network-capable scripts; 0 help smoke failures</p><footer>reports/security_trust_report.json <a href='security_trust_report.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>Python 兼容</h3></div><p>Python 3.11; 158 files; 0 compatibility issues; 0 syntax; 0 f-string 3.11 hazards</p><footer>reports/python_compatibility.json <a href='python_compatibility.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>架构维护</h3></div><p>155 Python files; 0 hotspots; 0 blockers; largest 888 lines; 34 CLI handlers</p><footer>reports/architecture_maintainability.json <a href='architecture_maintainability.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>权限批准</h3></div><p>3/3 permissions approved; gaps 0; required file_write, network, subprocess</p><footer>reports/security_trust_report.json + security/permission_policy.json <a href='../security/permission_policy.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>权限探针</h3></div><p>4/4 targets probed; native 0; metadata fallback 4; installer 4; residual risks 4</p><footer>reports/runtime_permission_probes.json <a href='runtime_permission_probes.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>组合治理</h3></div><p>12 skills, 1 actionable; 0 actionable route collisions; 0 actionable owner gaps; 0 actionable stale; 0 actionable drift; 24 scoped non-actionable issues</p><footer>reports/skill_atlas.json <a href='skill_atlas.html'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>运营回路</h3></div><p>1 metadata events; adoption 100.0; missed 0; bad-output 0; risk low</p><footer>reports/adoption_drift_report.json <a href='adoption_drift_report.md'>证据</a></footer></article><article class='gate warn'><div><span>关注</span><h3>人工批准</h3></div><p>0 active waivers; 1 warning gates still need reviewer decision</p><footer>reports/review_waivers.json <a href='review_waivers.md'>证据</a></footer></article><article class='gate warn'><div><span>关注</span><h3>世界证据</h3></div><p>4 pending world-class evidence entries; 1 human pending; 3 external pending; overclaim guard true</p><footer>reports/world_class_evidence_ledger.json <a href='world_class_evidence_ledger.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>注册审计</h3></div><p>yao-meta-skill 1.1.0; 6/6 compatibility entries pass; install pass with 4 adapters; installer permissions 12 enforced / 0 failures</p><footer>reports/registry_audit.json + reports/install_simulation.json <a href='registry_audit.md'>证据</a></footer></article><article class='gate pass'><div><span>通过</span><h3>发布路线</h3></div><p>0 promote; 3 keep current; 0 blocked; upgrade minor declared / minor recommended</p><footer>reports/promotion_decisions.json + reports/upgrade_check.json + docs/migration-v2.md <a href='promotion_decisions.md'>证据</a></footer></article></div>
|
||||
</section>
|
||||
|
||||
<div class="twocol">
|
||||
@@ -501,12 +501,12 @@
|
||||
</section>
|
||||
|
||||
<section class="twocol">
|
||||
<div class="panel"><h2>上下文</h2><p>initial load 944/1000; deferred 383511/120000; top deferred scripts 336028; resource governance governed; quality density 137.7</p></div>
|
||||
<div class="panel"><h2>上下文</h2><p>initial load 944/1000; deferred 383953/120000; top deferred scripts 336470; resource governance governed; quality density 137.7</p></div>
|
||||
<div class="panel"><h2>编译证据</h2><p>Review reports/compiled_targets.md before packaging to inspect target adapter modes, generated files, preserved semantics, warnings, and unsupported features.</p></div>
|
||||
</section>
|
||||
|
||||
<section id="trust" class="twocol">
|
||||
<div class="panel"><h2>信任报告</h2><dl class='kv-grid'><div><dt>Secret</dt><dd>0</dd></div><div><dt>脚本数</dt><dd>96</dd></div><div><dt>网络脚本</dt><dd>3</dd></div><div><dt>Help 失败</dt><dd>0</dd></div><div><dt>包体哈希</dt><dd><code>59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8</code></dd></div></dl></div>
|
||||
<div class="panel"><h2>信任报告</h2><dl class='kv-grid'><div><dt>Secret</dt><dd>0</dd></div><div><dt>脚本数</dt><dd>96</dd></div><div><dt>网络脚本</dt><dd>3</dd></div><div><dt>Help 失败</dt><dd>0</dd></div><div><dt>包体哈希</dt><dd><code>2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb</code></dd></div></dl></div>
|
||||
<div class="panel"><h2>安全边界</h2><p>高风险 secret、远程 inline execution、缺失依赖策略或无法解释的脚本接口应阻断 governed release。</p></div>
|
||||
</section>
|
||||
|
||||
@@ -574,12 +574,12 @@
|
||||
|
||||
<section id="registry" class="twocol">
|
||||
<div class="panel"><h2>注册审计</h2><p>yao-meta-skill 1.1.0; 6/6 compatibility entries pass; install pass with 4 adapters; installer permissions 12 enforced / 0 failures</p></div>
|
||||
<div class="panel"><h2>包体元数据</h2><dl class='kv-grid'><div><dt>名称</dt><dd>yao-meta-skill</dd></div><div><dt>版本</dt><dd>1.1.0</dd></div><div><dt>Maturity</dt><dd>governed</dd></div><div><dt>Owner</dt><dd>Yao Team</dd></div><div><dt>License</dt><dd>MIT</dd></div><div><dt>信任级别</dt><dd>local</dd></div><div><dt>目标平台</dt><dd>openai, claude, generic, agent-skills-compatible, vscode</dd></div><div><dt>兼容通过</dt><dd>6/6</dd></div><div><dt>归档哈希</dt><dd><code>5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576</code></dd></div></dl></div>
|
||||
<div class="panel"><h2>包体元数据</h2><dl class='kv-grid'><div><dt>名称</dt><dd>yao-meta-skill</dd></div><div><dt>版本</dt><dd>1.1.0</dd></div><div><dt>Maturity</dt><dd>governed</dd></div><div><dt>Owner</dt><dd>Yao Team</dd></div><div><dt>License</dt><dd>MIT</dd></div><div><dt>信任级别</dt><dd>local</dd></div><div><dt>目标平台</dt><dd>openai, claude, generic, agent-skills-compatible, vscode</dd></div><div><dt>兼容通过</dt><dd>6/6</dd></div><div><dt>归档哈希</dt><dd><code>54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d</code></dd></div></dl></div>
|
||||
</section>
|
||||
|
||||
<section id="release" class="twocol">
|
||||
<div class="panel"><h2>发布路线</h2><p>0 promote; 3 keep current; 0 blocked; upgrade minor declared / minor recommended</p></div>
|
||||
<div class="panel"><h2>包体验证</h2><dl class='kv-grid'><div><dt>目标数</dt><dd>4</dd></div><div><dt>Adapter</dt><dd>4</dd></div><div><dt>归档存在</dt><dd>是</dd></div><div><dt>Zip 条目</dt><dd>575</dd></div><div><dt>失败数</dt><dd>0</dd></div><div><dt>警告数</dt><dd>0</dd></div><div><dt>归档哈希</dt><dd><code>5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576</code></dd></div></dl></div>
|
||||
<div class="panel"><h2>包体验证</h2><dl class='kv-grid'><div><dt>目标数</dt><dd>4</dd></div><div><dt>Adapter</dt><dd>4</dd></div><div><dt>归档存在</dt><dd>是</dd></div><div><dt>Zip 条目</dt><dd>575</dd></div><div><dt>失败数</dt><dd>0</dd></div><div><dt>警告数</dt><dd>0</dd></div><div><dt>归档哈希</dt><dd><code>54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d</code></dd></div></dl></div>
|
||||
</section>
|
||||
|
||||
<section class="twocol">
|
||||
|
||||
+58
-50
@@ -43,7 +43,7 @@
|
||||
"key": "context-budget",
|
||||
"label": "上下文",
|
||||
"status": "pass",
|
||||
"detail": "initial load 944/1000; deferred 383511/120000; top deferred scripts 336028; resource governance governed; quality density 137.7",
|
||||
"detail": "initial load 944/1000; deferred 383953/120000; top deferred scripts 336470; resource governance governed; quality density 137.7",
|
||||
"evidence": "reports/context_budget.json",
|
||||
"link": "context_budget.md"
|
||||
},
|
||||
@@ -1332,13 +1332,13 @@
|
||||
"ok": true,
|
||||
"summary": {
|
||||
"reproducibility_ready": true,
|
||||
"release_lock_ready": true,
|
||||
"release_lock_ready": false,
|
||||
"methodology_complete": true,
|
||||
"required_artifact_count": 24,
|
||||
"missing_artifact_count": 0,
|
||||
"evidence_bundle_sha256": "de8906187bdb5ad75cfc4e606ed9cd38b88cd23232fce6a60912be45b16bce06",
|
||||
"source_contract_sha256": "c42643ea854dd90bb03ca607595f6a6b2c00118da64a78e8bdbb4392d7f204fb",
|
||||
"archive_sha256": "76793bd367e9aaf6c25e6b11ac1139156950827bd87ba3dd8a1bdc883f7d70fe",
|
||||
"evidence_bundle_sha256": "58baf3fe11e00c2be487239945ab3cc43a70b545507e1f1c891d1aed9a6da25e",
|
||||
"source_contract_sha256": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8",
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576",
|
||||
"output_case_count": 5,
|
||||
"failure_disclosure_count": 3,
|
||||
"command_count": 21,
|
||||
@@ -1352,10 +1352,10 @@
|
||||
"world_class_open_gap_count": 4,
|
||||
"world_class_task_count": 4,
|
||||
"world_class_ledger_pending_count": 4,
|
||||
"working_tree_dirty": false,
|
||||
"changed_file_count": 0
|
||||
"working_tree_dirty": true,
|
||||
"changed_file_count": 30
|
||||
},
|
||||
"commit": "165ef11daf45ffff44169935c71de280348af936",
|
||||
"commit": "d808071fb55a91484e78fe40f4b64bb52815758a",
|
||||
"missing_artifacts": [],
|
||||
"limitations": [
|
||||
"The git commit and dirty flag are generation-time context; the evidence bundle hash is the durable artifact anchor inside a committed report.",
|
||||
@@ -1460,7 +1460,7 @@
|
||||
"interactive_script_count": 0,
|
||||
"package_hash_scope": "source-contract-without-generated-reports",
|
||||
"package_hash_file_count": 180,
|
||||
"package_sha256": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8"
|
||||
"package_sha256": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb"
|
||||
},
|
||||
"skill_atlas": {
|
||||
"skill_count": 12,
|
||||
@@ -1498,8 +1498,8 @@
|
||||
"trust_level": "local",
|
||||
"license": "MIT",
|
||||
"checksums": {
|
||||
"package_sha256": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8",
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576"
|
||||
"package_sha256": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb",
|
||||
"archive_sha256": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d"
|
||||
},
|
||||
"compatibility": {
|
||||
"openai": "pass",
|
||||
@@ -1530,7 +1530,7 @@
|
||||
},
|
||||
"distribution": {
|
||||
"archive_verified": true,
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576",
|
||||
"archive_sha256": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d",
|
||||
"package_verification": "reports/package_verification.json",
|
||||
"install_simulated": true,
|
||||
"install_simulation": "reports/install_simulation.json"
|
||||
@@ -1546,7 +1546,7 @@
|
||||
"target_count": 4,
|
||||
"adapter_count": 4,
|
||||
"archive_present": true,
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576",
|
||||
"archive_sha256": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d",
|
||||
"archive_entry_count": 575,
|
||||
"failure_count": 0,
|
||||
"warning_count": 0
|
||||
@@ -1625,12 +1625,12 @@
|
||||
{
|
||||
"field": "archive_sha256",
|
||||
"from": "",
|
||||
"to": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576"
|
||||
"to": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d"
|
||||
},
|
||||
{
|
||||
"field": "package_sha256",
|
||||
"from": "0000000000000000000000000000000000000000000000000000000000000000",
|
||||
"to": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8"
|
||||
"to": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -3809,7 +3809,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 31.91,
|
||||
"duration_ms": 29.91,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -3837,7 +3837,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 31.46,
|
||||
"duration_ms": 28.72,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -3860,7 +3860,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 31.55,
|
||||
"duration_ms": 28.83,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -3888,7 +3888,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 31.52,
|
||||
"duration_ms": 28.47,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -3911,7 +3911,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 31.58,
|
||||
"duration_ms": 29.49,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -3939,7 +3939,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 31.11,
|
||||
"duration_ms": 29.13,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -3962,7 +3962,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 30.98,
|
||||
"duration_ms": 28.38,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -3989,7 +3989,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 30.56,
|
||||
"duration_ms": 28.42,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -4012,7 +4012,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 31.13,
|
||||
"duration_ms": 28.69,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -4041,7 +4041,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 31.4,
|
||||
"duration_ms": 28.75,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -10257,7 +10257,7 @@
|
||||
"interactive_script_count": 0,
|
||||
"package_hash_scope": "source-contract-without-generated-reports",
|
||||
"package_hash_file_count": 180,
|
||||
"package_sha256": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8"
|
||||
"package_sha256": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb"
|
||||
},
|
||||
"failures": [],
|
||||
"warnings": [],
|
||||
@@ -13787,15 +13787,15 @@
|
||||
"context_budget_tier": "production",
|
||||
"context_budget_limit": 1000,
|
||||
"skill_body_tokens": 751,
|
||||
"other_text_tokens": 1190325,
|
||||
"other_text_tokens": 1191951,
|
||||
"estimated_initial_load_tokens": 944,
|
||||
"estimated_total_text_tokens": 1191076,
|
||||
"deferred_resource_tokens": 383511,
|
||||
"estimated_total_text_tokens": 1192702,
|
||||
"deferred_resource_tokens": 383953,
|
||||
"deferred_resource_warn_threshold": 120000,
|
||||
"deferred_resource_dirs": [
|
||||
{
|
||||
"path": "scripts",
|
||||
"estimated_tokens": 336028,
|
||||
"estimated_tokens": 336470,
|
||||
"file_count": 96
|
||||
},
|
||||
{
|
||||
@@ -13812,7 +13812,7 @@
|
||||
"large_deferred_resource_dirs": [
|
||||
{
|
||||
"path": "scripts",
|
||||
"estimated_tokens": 336028,
|
||||
"estimated_tokens": 336470,
|
||||
"file_count": 96
|
||||
}
|
||||
],
|
||||
@@ -13835,14 +13835,14 @@
|
||||
],
|
||||
"missing": [],
|
||||
"path": "scripts",
|
||||
"estimated_tokens": 336028,
|
||||
"estimated_tokens": 336470,
|
||||
"file_count": 96,
|
||||
"rationale": "Script resources are deterministic deferred tools, not initial-load prompt context."
|
||||
}
|
||||
],
|
||||
"summary": "Large deferred resources are indexed and backed by evidence."
|
||||
},
|
||||
"relevant_file_count": 504,
|
||||
"relevant_file_count": 505,
|
||||
"unused_resource_dirs": [],
|
||||
"quality_signal_points": 130,
|
||||
"quality_density": 137.7
|
||||
@@ -15697,7 +15697,7 @@
|
||||
"adoption_drift": {
|
||||
"ok": true,
|
||||
"schema_version": "2.0",
|
||||
"generated_at": "2026-06-14T02:13:52Z",
|
||||
"generated_at": "2026-06-14T02:29:07Z",
|
||||
"skill_dir": ".",
|
||||
"privacy_contract": {
|
||||
"storage": "local-first",
|
||||
@@ -15885,7 +15885,7 @@
|
||||
"world_class_evidence_ledger": {
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-13",
|
||||
"generated_at": "2026-06-14",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"ledger_entry_count": 4,
|
||||
@@ -16161,7 +16161,7 @@
|
||||
"world_class_evidence_intake": {
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-13",
|
||||
"generated_at": "2026-06-14",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"schema_present": true,
|
||||
@@ -16189,7 +16189,9 @@
|
||||
"artifact_integrity": {
|
||||
"artifact_ref_count": 1,
|
||||
"artifact_existing_count": 0,
|
||||
"artifact_sha256_verified_count": 0
|
||||
"artifact_sha256_verified_count": 0,
|
||||
"required_artifact_count": 0,
|
||||
"required_artifact_verified_count": 0
|
||||
},
|
||||
"errors": []
|
||||
},
|
||||
@@ -16201,7 +16203,9 @@
|
||||
"artifact_integrity": {
|
||||
"artifact_ref_count": 2,
|
||||
"artifact_existing_count": 0,
|
||||
"artifact_sha256_verified_count": 0
|
||||
"artifact_sha256_verified_count": 0,
|
||||
"required_artifact_count": 0,
|
||||
"required_artifact_verified_count": 0
|
||||
},
|
||||
"errors": []
|
||||
},
|
||||
@@ -16213,7 +16217,9 @@
|
||||
"artifact_integrity": {
|
||||
"artifact_ref_count": 3,
|
||||
"artifact_existing_count": 0,
|
||||
"artifact_sha256_verified_count": 0
|
||||
"artifact_sha256_verified_count": 0,
|
||||
"required_artifact_count": 0,
|
||||
"required_artifact_verified_count": 0
|
||||
},
|
||||
"errors": []
|
||||
},
|
||||
@@ -16225,7 +16231,9 @@
|
||||
"artifact_integrity": {
|
||||
"artifact_ref_count": 2,
|
||||
"artifact_existing_count": 0,
|
||||
"artifact_sha256_verified_count": 0
|
||||
"artifact_sha256_verified_count": 0,
|
||||
"required_artifact_count": 0,
|
||||
"required_artifact_verified_count": 0
|
||||
},
|
||||
"errors": []
|
||||
}
|
||||
@@ -16455,7 +16463,7 @@
|
||||
"world_class_submission_review": {
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-13",
|
||||
"generated_at": "2026-06-14",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"review_item_count": 4,
|
||||
@@ -16631,7 +16639,7 @@
|
||||
"world_class_operator_runbook": {
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-13",
|
||||
"generated_at": "2026-06-14",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"evidence_item_count": 4,
|
||||
@@ -16950,7 +16958,7 @@
|
||||
"world_class_claim_guard": {
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-13",
|
||||
"generated_at": "2026-06-14",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"ledger_ready_to_claim_world_class": false,
|
||||
@@ -17314,8 +17322,8 @@
|
||||
"trust_level": "local",
|
||||
"license": "MIT",
|
||||
"checksums": {
|
||||
"package_sha256": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8",
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576"
|
||||
"package_sha256": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb",
|
||||
"archive_sha256": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d"
|
||||
},
|
||||
"compatibility": {
|
||||
"openai": "pass",
|
||||
@@ -17346,7 +17354,7 @@
|
||||
},
|
||||
"distribution": {
|
||||
"archive_verified": true,
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576",
|
||||
"archive_sha256": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d",
|
||||
"package_verification": "reports/package_verification.json",
|
||||
"install_simulated": true,
|
||||
"install_simulation": "reports/install_simulation.json"
|
||||
@@ -17371,7 +17379,7 @@
|
||||
"vscode"
|
||||
],
|
||||
"package_metadata": "registry/packages/yao-meta-skill.json",
|
||||
"package_sha256": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8"
|
||||
"package_sha256": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -17394,7 +17402,7 @@
|
||||
"target_count": 4,
|
||||
"adapter_count": 4,
|
||||
"archive_present": true,
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576",
|
||||
"archive_sha256": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d",
|
||||
"archive_entry_count": 575,
|
||||
"failure_count": 0,
|
||||
"warning_count": 0
|
||||
@@ -18402,12 +18410,12 @@
|
||||
{
|
||||
"field": "archive_sha256",
|
||||
"from": "",
|
||||
"to": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576"
|
||||
"to": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d"
|
||||
},
|
||||
{
|
||||
"field": "package_sha256",
|
||||
"from": "0000000000000000000000000000000000000000000000000000000000000000",
|
||||
"to": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8"
|
||||
"to": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
"interactive_script_count": 0,
|
||||
"package_hash_scope": "source-contract-without-generated-reports",
|
||||
"package_hash_file_count": 180,
|
||||
"package_sha256": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8"
|
||||
"package_sha256": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb"
|
||||
},
|
||||
"failures": [],
|
||||
"warnings": [],
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
- Interactive scripts: `0`
|
||||
- Package hash scope: `source-contract-without-generated-reports`
|
||||
- Package hash files: `180`
|
||||
- Package SHA256: `59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8`
|
||||
- Package SHA256: `2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb`
|
||||
|
||||
## Failures
|
||||
|
||||
|
||||
+14
-14
@@ -918,13 +918,13 @@
|
||||
"ok": true,
|
||||
"summary": {
|
||||
"reproducibility_ready": true,
|
||||
"release_lock_ready": true,
|
||||
"release_lock_ready": false,
|
||||
"methodology_complete": true,
|
||||
"required_artifact_count": 24,
|
||||
"missing_artifact_count": 0,
|
||||
"evidence_bundle_sha256": "de8906187bdb5ad75cfc4e606ed9cd38b88cd23232fce6a60912be45b16bce06",
|
||||
"source_contract_sha256": "c42643ea854dd90bb03ca607595f6a6b2c00118da64a78e8bdbb4392d7f204fb",
|
||||
"archive_sha256": "76793bd367e9aaf6c25e6b11ac1139156950827bd87ba3dd8a1bdc883f7d70fe",
|
||||
"evidence_bundle_sha256": "58baf3fe11e00c2be487239945ab3cc43a70b545507e1f1c891d1aed9a6da25e",
|
||||
"source_contract_sha256": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8",
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576",
|
||||
"output_case_count": 5,
|
||||
"failure_disclosure_count": 3,
|
||||
"command_count": 21,
|
||||
@@ -938,10 +938,10 @@
|
||||
"world_class_open_gap_count": 4,
|
||||
"world_class_task_count": 4,
|
||||
"world_class_ledger_pending_count": 4,
|
||||
"working_tree_dirty": false,
|
||||
"changed_file_count": 0
|
||||
"working_tree_dirty": true,
|
||||
"changed_file_count": 30
|
||||
},
|
||||
"commit": "165ef11daf45ffff44169935c71de280348af936",
|
||||
"commit": "d808071fb55a91484e78fe40f4b64bb52815758a",
|
||||
"missing_artifacts": [],
|
||||
"limitations": [
|
||||
"The git commit and dirty flag are generation-time context; the evidence bundle hash is the durable artifact anchor inside a committed report.",
|
||||
@@ -1046,7 +1046,7 @@
|
||||
"interactive_script_count": 0,
|
||||
"package_hash_scope": "source-contract-without-generated-reports",
|
||||
"package_hash_file_count": 180,
|
||||
"package_sha256": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8"
|
||||
"package_sha256": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb"
|
||||
},
|
||||
"skill_atlas": {
|
||||
"skill_count": 12,
|
||||
@@ -1084,8 +1084,8 @@
|
||||
"trust_level": "local",
|
||||
"license": "MIT",
|
||||
"checksums": {
|
||||
"package_sha256": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8",
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576"
|
||||
"package_sha256": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb",
|
||||
"archive_sha256": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d"
|
||||
},
|
||||
"compatibility": {
|
||||
"openai": "pass",
|
||||
@@ -1116,7 +1116,7 @@
|
||||
},
|
||||
"distribution": {
|
||||
"archive_verified": true,
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576",
|
||||
"archive_sha256": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d",
|
||||
"package_verification": "reports/package_verification.json",
|
||||
"install_simulated": true,
|
||||
"install_simulation": "reports/install_simulation.json"
|
||||
@@ -1132,7 +1132,7 @@
|
||||
"target_count": 4,
|
||||
"adapter_count": 4,
|
||||
"archive_present": true,
|
||||
"archive_sha256": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576",
|
||||
"archive_sha256": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d",
|
||||
"archive_entry_count": 575,
|
||||
"failure_count": 0,
|
||||
"warning_count": 0
|
||||
@@ -1211,12 +1211,12 @@
|
||||
{
|
||||
"field": "archive_sha256",
|
||||
"from": "",
|
||||
"to": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576"
|
||||
"to": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d"
|
||||
},
|
||||
{
|
||||
"field": "package_sha256",
|
||||
"from": "0000000000000000000000000000000000000000000000000000000000000000",
|
||||
"to": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8"
|
||||
"to": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
@@ -70,12 +70,12 @@
|
||||
{
|
||||
"field": "archive_sha256",
|
||||
"from": "",
|
||||
"to": "5f3d7a018d80277336598d3bf78c546f37a301c0e4d8be6691a9f8de349c6576"
|
||||
"to": "54e6b60578526fb40d38c7105cc61f59f0ca93c2811b1074b9ebc1620cfe853d"
|
||||
},
|
||||
{
|
||||
"field": "package_sha256",
|
||||
"from": "0000000000000000000000000000000000000000000000000000000000000000",
|
||||
"to": "59b0f65b269be1bcd9b8ab46997136fd5c19da796d0797702fb6a0dc96274cb8"
|
||||
"to": "2af3b1e7638215a67244ed897737e1d0b42b8c930c3a8ac66d87d818b3ba01bb"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-13",
|
||||
"generated_at": "2026-06-14",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"ledger_ready_to_claim_world_class": false,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# World-Class Claim Guard
|
||||
|
||||
Generated at: `2026-06-13`
|
||||
Generated at: `2026-06-14`
|
||||
|
||||
## Summary
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-13",
|
||||
"generated_at": "2026-06-14",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"schema_present": true,
|
||||
@@ -29,7 +29,9 @@
|
||||
"artifact_integrity": {
|
||||
"artifact_ref_count": 1,
|
||||
"artifact_existing_count": 0,
|
||||
"artifact_sha256_verified_count": 0
|
||||
"artifact_sha256_verified_count": 0,
|
||||
"required_artifact_count": 0,
|
||||
"required_artifact_verified_count": 0
|
||||
},
|
||||
"errors": []
|
||||
},
|
||||
@@ -41,7 +43,9 @@
|
||||
"artifact_integrity": {
|
||||
"artifact_ref_count": 2,
|
||||
"artifact_existing_count": 0,
|
||||
"artifact_sha256_verified_count": 0
|
||||
"artifact_sha256_verified_count": 0,
|
||||
"required_artifact_count": 0,
|
||||
"required_artifact_verified_count": 0
|
||||
},
|
||||
"errors": []
|
||||
},
|
||||
@@ -53,7 +57,9 @@
|
||||
"artifact_integrity": {
|
||||
"artifact_ref_count": 3,
|
||||
"artifact_existing_count": 0,
|
||||
"artifact_sha256_verified_count": 0
|
||||
"artifact_sha256_verified_count": 0,
|
||||
"required_artifact_count": 0,
|
||||
"required_artifact_verified_count": 0
|
||||
},
|
||||
"errors": []
|
||||
},
|
||||
@@ -65,7 +71,9 @@
|
||||
"artifact_integrity": {
|
||||
"artifact_ref_count": 2,
|
||||
"artifact_existing_count": 0,
|
||||
"artifact_sha256_verified_count": 0
|
||||
"artifact_sha256_verified_count": 0,
|
||||
"required_artifact_count": 0,
|
||||
"required_artifact_verified_count": 0
|
||||
},
|
||||
"errors": []
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# World-Class Evidence Intake
|
||||
|
||||
Generated at: `2026-06-13`
|
||||
Generated at: `2026-06-14`
|
||||
|
||||
## Summary
|
||||
|
||||
@@ -21,10 +21,10 @@ This report validates the intake contract for human and external evidence. A val
|
||||
|
||||
| Evidence | Status | Path | Artifacts | Errors |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| `provider-holdout` | `pass` | `evidence/world_class/templates/provider-holdout.intake.json` | 0 existing / 0 sha256 verified / 1 refs | none |
|
||||
| `human-adjudication` | `pass` | `evidence/world_class/templates/human-adjudication.intake.json` | 0 existing / 0 sha256 verified / 2 refs | none |
|
||||
| `native-permission-enforcement` | `pass` | `evidence/world_class/templates/native-permission-enforcement.intake.json` | 0 existing / 0 sha256 verified / 3 refs | none |
|
||||
| `native-client-telemetry` | `pass` | `evidence/world_class/templates/native-client-telemetry.intake.json` | 0 existing / 0 sha256 verified / 2 refs | none |
|
||||
| `provider-holdout` | `pass` | `evidence/world_class/templates/provider-holdout.intake.json` | 0 existing / 0 sha256 verified / 0 required verified / 1 refs | none |
|
||||
| `human-adjudication` | `pass` | `evidence/world_class/templates/human-adjudication.intake.json` | 0 existing / 0 sha256 verified / 0 required verified / 2 refs | none |
|
||||
| `native-permission-enforcement` | `pass` | `evidence/world_class/templates/native-permission-enforcement.intake.json` | 0 existing / 0 sha256 verified / 0 required verified / 3 refs | none |
|
||||
| `native-client-telemetry` | `pass` | `evidence/world_class/templates/native-client-telemetry.intake.json` | 0 existing / 0 sha256 verified / 0 required verified / 2 refs | none |
|
||||
|
||||
## Submissions
|
||||
|
||||
@@ -201,6 +201,7 @@ This report validates the intake contract for human and external evidence. A val
|
||||
## Boundary
|
||||
|
||||
- Templates and planned work do not count as accepted evidence.
|
||||
- Real submissions must include the evidence-key critical artifact paths with verified SHA-256 digests.
|
||||
- Local command-runner output does not count as provider-backed model evidence.
|
||||
- Metadata fallback does not count as native permission enforcement.
|
||||
- Pending reviewer work does not count as human adjudication.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-13",
|
||||
"generated_at": "2026-06-14",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"ledger_entry_count": 4,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# World-Class Evidence Ledger
|
||||
|
||||
Generated at: `2026-06-13`
|
||||
Generated at: `2026-06-14`
|
||||
|
||||
## Summary
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-13",
|
||||
"generated_at": "2026-06-14",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"audit_decision": "continue-iteration",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# World-Class Evidence Plan
|
||||
|
||||
Generated at: `2026-06-13`
|
||||
Generated at: `2026-06-14`
|
||||
|
||||
## Summary
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-13",
|
||||
"generated_at": "2026-06-14",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"evidence_item_count": 4,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# World-Class Operator Runbook
|
||||
|
||||
Generated at: `2026-06-13`
|
||||
Generated at: `2026-06-14`
|
||||
|
||||
## Summary
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-13",
|
||||
"generated_at": "2026-06-14",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"review_item_count": 4,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# World-Class Submission Review
|
||||
|
||||
Generated at: `2026-06-13`
|
||||
Generated at: `2026-06-14`
|
||||
|
||||
## Summary
|
||||
|
||||
|
||||
@@ -215,6 +215,7 @@ def render_table(items: list[dict[str, Any]]) -> list[str]:
|
||||
artifact_summary = (
|
||||
f"{integrity.get('artifact_existing_count', 0)} existing / "
|
||||
f"{integrity.get('artifact_sha256_verified_count', 0)} sha256 verified / "
|
||||
f"{integrity.get('required_artifact_verified_count', 0)} required verified / "
|
||||
f"{integrity.get('artifact_ref_count', 0)} refs"
|
||||
)
|
||||
lines.append(
|
||||
@@ -295,6 +296,7 @@ def render_markdown(report: dict[str, Any]) -> str:
|
||||
"## Boundary",
|
||||
"",
|
||||
"- Templates and planned work do not count as accepted evidence.",
|
||||
"- Real submissions must include the evidence-key critical artifact paths with verified SHA-256 digests.",
|
||||
"- Local command-runner output does not count as provider-backed model evidence.",
|
||||
"- Metadata fallback does not count as native permission enforcement.",
|
||||
"- Pending reviewer work does not count as human adjudication.",
|
||||
|
||||
@@ -50,6 +50,21 @@ EXPECTED_SOURCE_TYPES = {
|
||||
}
|
||||
SHA256_RE = re.compile(r"^[0-9a-fA-F]{64}$")
|
||||
DISALLOWED_REAL_ARTIFACTS = {"reports/telemetry_events.jsonl"}
|
||||
REQUIRED_REAL_ARTIFACT_PATHS = {
|
||||
"provider-holdout": {"reports/output_execution_runs.json"},
|
||||
"human-adjudication": {
|
||||
"reports/output_review_adjudication.json",
|
||||
"reports/output_review_decisions.json",
|
||||
},
|
||||
"native-permission-enforcement": {
|
||||
"reports/runtime_permission_probes.json",
|
||||
"reports/install_simulation.json",
|
||||
},
|
||||
"native-client-telemetry": {
|
||||
"reports/adoption_drift_report.json",
|
||||
"reports/telemetry_hook_recipes.json",
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
def load_json(path: Path) -> dict[str, Any]:
|
||||
@@ -120,10 +135,14 @@ def validate_artifact_refs(
|
||||
) -> dict[str, int]:
|
||||
refs = payload.get("artifact_refs")
|
||||
add_error(errors, isinstance(refs, list) and len(refs) > 0, "artifact_refs must contain at least one reference")
|
||||
required_paths = REQUIRED_REAL_ARTIFACT_PATHS.get(str(payload.get("evidence_key", "")), set())
|
||||
observed_paths: set[str] = set()
|
||||
stats = {
|
||||
"artifact_ref_count": len(refs) if isinstance(refs, list) else 0,
|
||||
"artifact_existing_count": 0,
|
||||
"artifact_sha256_verified_count": 0,
|
||||
"required_artifact_count": len(required_paths) if not template_expected else 0,
|
||||
"required_artifact_verified_count": 0,
|
||||
}
|
||||
if not isinstance(refs, list):
|
||||
return stats
|
||||
@@ -137,6 +156,11 @@ def validate_artifact_refs(
|
||||
add_error(errors, ref.get("contains_raw_content") is False, f"artifact_refs[{index}] must not contain raw content")
|
||||
if template_expected or not path_text:
|
||||
continue
|
||||
candidate = Path(path_text)
|
||||
if not candidate.is_absolute() and ".." not in candidate.parts and not any(
|
||||
token in path_text for token in ("<", ">", "*", "?")
|
||||
):
|
||||
observed_paths.add(candidate.as_posix())
|
||||
resolved, path_error = resolve_artifact_path(path_text, root)
|
||||
if path_error:
|
||||
errors.append(f"artifact_refs[{index}].path {path_error}")
|
||||
@@ -160,6 +184,14 @@ def validate_artifact_refs(
|
||||
errors.append(f"artifact_refs[{index}].sha256 does not match local artifact")
|
||||
continue
|
||||
stats["artifact_sha256_verified_count"] += 1
|
||||
if rel in required_paths:
|
||||
stats["required_artifact_verified_count"] += 1
|
||||
if not template_expected and required_paths:
|
||||
missing_required = sorted(required_paths - observed_paths)
|
||||
for path in missing_required:
|
||||
errors.append(f"artifact_refs must include required evidence artifact {path}")
|
||||
if not missing_required and stats["required_artifact_verified_count"] < len(required_paths):
|
||||
errors.append("all required evidence artifacts must have verified sha256 digests")
|
||||
return stats
|
||||
|
||||
|
||||
|
||||
@@ -56,7 +56,7 @@ def run_kit(*extra: str) -> subprocess.CompletedProcess[str]:
|
||||
)
|
||||
|
||||
|
||||
def provider_submission(*, valid: bool) -> dict:
|
||||
def provider_submission(*, valid: bool, artifact_path: str = "reports/output_execution_runs.json") -> dict:
|
||||
return {
|
||||
"schema_version": "1.0",
|
||||
"evidence_key": "provider-holdout",
|
||||
@@ -68,10 +68,10 @@ def provider_submission(*, valid: bool) -> dict:
|
||||
"summary": "Aggregate provider-backed holdout evidence for ledger review.",
|
||||
"artifact_refs": [
|
||||
{
|
||||
"path": "reports/output_execution_runs.json",
|
||||
"path": artifact_path,
|
||||
"kind": "aggregate-report",
|
||||
"contains_raw_content": not valid,
|
||||
"sha256": sha256_file(ROOT / "reports" / "output_execution_runs.json") if valid else "example-only",
|
||||
"sha256": sha256_file(ROOT / artifact_path) if valid else "example-only",
|
||||
}
|
||||
],
|
||||
"provenance": {
|
||||
@@ -153,11 +153,12 @@ def main() -> None:
|
||||
assert "ready to claim world-class: `false`" in markdown, markdown
|
||||
assert "Operator Checklist" in markdown, markdown
|
||||
assert "operator checklist: `0` ready / `4` total" in markdown, markdown
|
||||
assert "0 existing / 0 sha256 verified / 1 refs" in markdown, markdown
|
||||
assert "0 existing / 0 sha256 verified / 0 required verified / 1 refs" in markdown, markdown
|
||||
assert "`evidence/world_class/submissions/provider-holdout.json`" in markdown, markdown
|
||||
assert "`python3 scripts/yao.py world-class-submission-kit . --evidence-key provider-holdout --output-dir evidence/world_class/submissions`" in markdown, markdown
|
||||
assert "`python3 scripts/yao.py world-class-ledger .`" in markdown, markdown
|
||||
assert "Templates and planned work do not count as accepted evidence." in markdown, markdown
|
||||
assert "Real submissions must include the evidence-key critical artifact paths with verified SHA-256 digests." in markdown, markdown
|
||||
|
||||
kit_dir = TMP / "submission_kit"
|
||||
kit_proc = run_kit("--output-dir", str(kit_dir), "--evidence-key", "provider-holdout")
|
||||
@@ -234,6 +235,22 @@ def main() -> None:
|
||||
assert any("attestation.real_external_or_human_evidence" in error for error in invalid_payload["submissions"][0]["errors"]), invalid_payload["submissions"]
|
||||
invalid_checklist = {item["evidence_key"]: item for item in invalid_payload["operator_checklist"]}
|
||||
assert invalid_checklist["provider-holdout"]["readiness"] == "fix-submission", invalid_checklist["provider-holdout"]
|
||||
|
||||
unrelated_dir = TMP / "unrelated_artifact_submissions"
|
||||
unrelated_dir.mkdir()
|
||||
(unrelated_dir / "provider-holdout.json").write_text(
|
||||
json.dumps(provider_submission(valid=True, artifact_path="reports/context_budget.json"), ensure_ascii=False, indent=2)
|
||||
+ "\n",
|
||||
encoding="utf-8",
|
||||
)
|
||||
unrelated_payload = run_intake("--submissions-dir", str(unrelated_dir))
|
||||
assert unrelated_payload["ok"] is False, unrelated_payload
|
||||
assert unrelated_payload["summary"]["decision"] == "fix-intake", unrelated_payload["summary"]
|
||||
assert unrelated_payload["summary"]["invalid_submission_count"] == 1, unrelated_payload["summary"]
|
||||
unrelated_errors = unrelated_payload["submissions"][0]["errors"]
|
||||
assert any("required evidence artifact reports/output_execution_runs.json" in error for error in unrelated_errors), unrelated_errors
|
||||
assert unrelated_payload["submissions"][0]["artifact_integrity"]["artifact_sha256_verified_count"] == 1, unrelated_payload["submissions"]
|
||||
assert unrelated_payload["submissions"][0]["artifact_integrity"]["required_artifact_verified_count"] == 0, unrelated_payload["submissions"]
|
||||
print(json.dumps({"ok": True}, ensure_ascii=False, indent=2))
|
||||
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ def sha256_file(path: Path) -> str:
|
||||
return digest.hexdigest()
|
||||
|
||||
|
||||
def provider_submission(artifact_root: Path = ROOT) -> dict:
|
||||
def provider_submission(artifact_root: Path = ROOT, artifact_path: str = "reports/output_execution_runs.json") -> dict:
|
||||
return {
|
||||
"schema_version": "1.0",
|
||||
"evidence_key": "provider-holdout",
|
||||
@@ -32,10 +32,10 @@ def provider_submission(artifact_root: Path = ROOT) -> dict:
|
||||
"summary": "Aggregate provider-backed holdout evidence for ledger review.",
|
||||
"artifact_refs": [
|
||||
{
|
||||
"path": "reports/output_execution_runs.json",
|
||||
"path": artifact_path,
|
||||
"kind": "aggregate-report",
|
||||
"contains_raw_content": False,
|
||||
"sha256": sha256_file(artifact_root / "reports" / "output_execution_runs.json"),
|
||||
"sha256": sha256_file(artifact_root / artifact_path),
|
||||
}
|
||||
],
|
||||
"provenance": {
|
||||
@@ -213,6 +213,56 @@ def main() -> None:
|
||||
assert accepted_source_provider["status"] == "pending", accepted_source_provider
|
||||
assert accepted_source_provider["submission_state"]["status"] == "missing", accepted_source_provider
|
||||
|
||||
(accepted_source_skill / "reports" / "context_budget.json").write_text(
|
||||
json.dumps({"summary": {"unrelated": True}}, ensure_ascii=False, indent=2) + "\n",
|
||||
encoding="utf-8",
|
||||
)
|
||||
unrelated_accepted_submissions = TMP / "unrelated_accepted_submissions"
|
||||
unrelated_accepted_submissions.mkdir()
|
||||
(unrelated_accepted_submissions / "provider-holdout.json").write_text(
|
||||
json.dumps(
|
||||
provider_submission(accepted_source_skill, artifact_path="reports/context_budget.json"),
|
||||
ensure_ascii=False,
|
||||
indent=2,
|
||||
)
|
||||
+ "\n",
|
||||
encoding="utf-8",
|
||||
)
|
||||
unrelated_accepted_proc = subprocess.run(
|
||||
[
|
||||
sys.executable,
|
||||
str(SCRIPT),
|
||||
str(accepted_source_skill),
|
||||
"--output-json",
|
||||
str(TMP / "unrelated_accepted_provider_ledger.json"),
|
||||
"--output-md",
|
||||
str(TMP / "unrelated_accepted_provider_ledger.md"),
|
||||
"--submissions-dir",
|
||||
str(unrelated_accepted_submissions),
|
||||
"--generated-at",
|
||||
"2026-06-13",
|
||||
],
|
||||
cwd=ROOT,
|
||||
capture_output=True,
|
||||
text=True,
|
||||
check=True,
|
||||
)
|
||||
unrelated_accepted_payload = json.loads(unrelated_accepted_proc.stdout)
|
||||
unrelated_accepted_summary = unrelated_accepted_payload["summary"]
|
||||
assert unrelated_accepted_summary["source_accepted_count"] == 1, unrelated_accepted_summary
|
||||
assert unrelated_accepted_summary["accepted_count"] == 0, unrelated_accepted_summary
|
||||
assert unrelated_accepted_summary["invalid_submission_count"] == 1, unrelated_accepted_summary
|
||||
unrelated_accepted_provider = {
|
||||
entry["key"]: entry for entry in unrelated_accepted_payload["entries"]
|
||||
}["provider-holdout"]
|
||||
assert unrelated_accepted_provider["source_accepted"] is True, unrelated_accepted_provider
|
||||
assert unrelated_accepted_provider["status"] == "pending", unrelated_accepted_provider
|
||||
assert unrelated_accepted_provider["submission_state"]["status"] == "invalid-contract", unrelated_accepted_provider
|
||||
assert any(
|
||||
"required evidence artifact reports/output_execution_runs.json" in error
|
||||
for error in unrelated_accepted_provider["submission_state"]["errors"]
|
||||
), unrelated_accepted_provider
|
||||
|
||||
accepted_submissions = TMP / "accepted_submissions"
|
||||
accepted_submissions.mkdir()
|
||||
(accepted_submissions / "provider-holdout.json").write_text(
|
||||
|
||||
Reference in New Issue
Block a user