Add world-class submission phase queue

This commit is contained in:
yaojingang
2026-06-17 04:32:28 +08:00
parent 2efe6413f0
commit 7512dc3309
43 changed files with 994 additions and 703 deletions
+1 -1
View File
@@ -16,7 +16,7 @@
"vscode"
],
"package_metadata": "registry/packages/yao-meta-skill.json",
"package_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59"
"package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4"
}
]
}
+3 -3
View File
@@ -16,8 +16,8 @@
"trust_level": "local",
"license": "MIT",
"checksums": {
"package_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59",
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8"
"package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
"compatibility": {
"openai": "pass",
@@ -48,7 +48,7 @@
},
"distribution": {
"archive_verified": true,
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"package_verification": "reports/package_verification.json",
"install_simulated": true,
"install_simulation": "reports/install_simulation.json"
+1 -1
View File
@@ -1,7 +1,7 @@
{
"ok": true,
"schema_version": "2.0",
"generated_at": "2026-06-16T20:23:32Z",
"generated_at": "2026-06-16T20:30:45Z",
"skill_dir": ".",
"privacy_contract": {
"storage": "local-first",
+11 -11
View File
@@ -4,10 +4,10 @@
"generated_at": "2026-06-13",
"skill_dir": ".",
"summary": {
"python_file_count": 225,
"script_file_count": 149,
"python_file_count": 226,
"script_file_count": 150,
"test_file_count": 76,
"internal_module_count": 65,
"internal_module_count": 66,
"cli_script_count": 86,
"command_handler_count": 68,
"entrypoint_command_handler_count": 18,
@@ -96,6 +96,14 @@
"early_watch": false,
"recommendation": "Break broad integration assertions into focused verifier helpers when the next behavior change lands."
},
{
"path": "scripts/world_class_submission_kit_rendering.py",
"lines": 576,
"kind": "internal-module",
"severity": "pass",
"early_watch": false,
"recommendation": "Watch this file before adding new responsibilities; extract a helper module when one concern dominates."
},
{
"path": "scripts/render_evidence_consistency.py",
"lines": 571,
@@ -111,14 +119,6 @@
"severity": "pass",
"early_watch": false,
"recommendation": "Move data loading and large section renderers into focused review_studio_* modules."
},
{
"path": "scripts/adjudicate_output_review.py",
"lines": 566,
"kind": "cli-script",
"severity": "pass",
"early_watch": false,
"recommendation": "Watch this file before adding new responsibilities; extract a helper module when one concern dominates."
}
],
"watchlist": [],
+4 -4
View File
@@ -5,10 +5,10 @@ Generated at: `2026-06-13`
## Summary
- decision: `pass`
- python files: `225`
- scripts: `149`
- python files: `226`
- scripts: `150`
- tests: `76`
- internal modules: `65`
- internal modules: `66`
- CLI scripts: `86`
- Yao CLI command handlers: `68`
- entrypoint command handlers: `18`
@@ -51,9 +51,9 @@ No near-threshold files found.
| `scripts/optimize_description.py` | `585` | `cli-script` | `pass` |
| `scripts/trust_check.py` | `582` | `cli-script` | `pass` |
| `tests/verify_world_class_evidence_ledger.py` | `579` | `test` | `pass` |
| `scripts/world_class_submission_kit_rendering.py` | `576` | `internal-module` | `pass` |
| `scripts/render_evidence_consistency.py` | `571` | `cli-script` | `pass` |
| `scripts/render_review_studio.py` | `568` | `cli-script` | `pass` |
| `scripts/adjudicate_output_review.py` | `566` | `cli-script` | `pass` |
## Release Rule
+72 -66
View File
@@ -3,43 +3,48 @@
"ok": true,
"generated_at": "2026-06-17",
"skill_dir": ".",
"commit": "ed6960f65dbba0a36c335835f2ac6e8133435ea7",
"commit": "2efe6413f04c9626ba52c554b4dc87baabd0b05b",
"git_status": {
"available": true,
"dirty": true,
"changed_file_count": 19,
"changed_file_count": 65,
"generated_dirty": true,
"generated_changed_file_count": 19,
"source_dirty": false,
"source_changed_file_count": 0,
"generated_changed_file_count": 61,
"source_dirty": true,
"source_changed_file_count": 4,
"sample": [
" M registry/index.json",
" M registry/packages/yao-meta-skill.json",
" M reports/adoption_drift_report.json",
" M reports/adoption_drift_report.md",
" M reports/architecture_maintainability.json",
" M reports/architecture_maintainability.md",
" M reports/benchmark_reproducibility.json",
" M reports/benchmark_reproducibility.md",
" M reports/compiled_targets.json",
" M reports/context_budget.json",
" M reports/context_budget_summary.json",
" M reports/evidence_consistency.json",
" M reports/output_execution_runs.json",
" M reports/output_execution_runs.md",
" M reports/review-studio.html",
" M reports/review-studio.json",
" M reports/review-viewer.json",
" M reports/skill-interpretation.html"
" M reports/context_budget.md",
" M reports/context_budget_summary.json"
],
"source_sample": [
" M scripts/prepare_world_class_submission_kit.py",
" M scripts/world_class_submission_kit_rendering.py",
" M tests/verify_world_class_submission_kit.py",
"?? scripts/world_class_phase_queue.py"
],
"source_sample": [],
"generated_sample": [
" M registry/index.json",
" M registry/packages/yao-meta-skill.json",
" M reports/adoption_drift_report.json",
" M reports/adoption_drift_report.md",
" M reports/architecture_maintainability.json",
" M reports/architecture_maintainability.md",
" M reports/benchmark_reproducibility.json",
" M reports/benchmark_reproducibility.md",
" M reports/compiled_targets.json",
" M reports/context_budget.json",
" M reports/context_budget_summary.json",
" M reports/evidence_consistency.json",
" M reports/output_execution_runs.json",
" M reports/output_execution_runs.md",
" M reports/review-studio.html",
" M reports/review-studio.json",
" M reports/review-viewer.json",
" M reports/skill-interpretation.html"
" M reports/context_budget.md",
" M reports/context_budget_summary.json"
],
"generated_dirty_prefixes": [
"dist/",
@@ -53,13 +58,13 @@
},
"summary": {
"reproducibility_ready": true,
"release_lock_ready": true,
"release_lock_ready": false,
"methodology_complete": true,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"evidence_bundle_sha256": "38a010bc2913be5c7aadd809095c436abf8e566c8c53b8b4a63a821fea6acc98",
"source_contract_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59",
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"evidence_bundle_sha256": "7fbfcb3c47283921ca6bb163600b18448da389c077939157387d8075e9c3867a",
"source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"output_case_count": 5,
"failure_disclosure_count": 3,
"command_count": 23,
@@ -74,35 +79,36 @@
"world_class_task_count": 4,
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 10,
"world_class_source_blocked_count": 9,
"world_class_source_pass_count": 9,
"world_class_source_blocked_count": 10,
"public_claim_ready": false,
"public_claim_blocker_count": 4,
"public_claim_blocker_count": 5,
"working_tree_dirty": true,
"changed_file_count": 19,
"source_tree_dirty": false,
"source_changed_file_count": 0,
"changed_file_count": 65,
"source_tree_dirty": true,
"source_changed_file_count": 4,
"generated_tree_dirty": true,
"generated_changed_file_count": 19
"generated_changed_file_count": 61
},
"public_claim": {
"ready": false,
"scope": "public benchmark or world-class readiness claim",
"blockers": [
"release lock is not clean or commit is unavailable",
"provider-backed model holdout evidence is incomplete",
"human blind-review adjudication is incomplete",
"world-class evidence is not accepted yet (4 open gaps, 4 ledger pending)",
"world-class source checks are not all accepted (10/19 pass, 9 blocked)"
"world-class source checks are not all accepted (9/19 pass, 10 blocked)"
],
"policy": "Local reproducibility can pass before public claims; public claims require provider evidence, human adjudication, clean release lock, accepted world-class evidence, and complete source checks."
},
"release_lock": {
"ready": true,
"commit": "ed6960f65dbba0a36c335835f2ac6e8133435ea7",
"ready": false,
"commit": "2efe6413f04c9626ba52c554b4dc87baabd0b05b",
"status_scope": "generation-time status before this report is written",
"source_changed_file_count": 0,
"generated_changed_file_count": 19,
"reason": "only generated evidence artifacts were dirty at generation time"
"source_changed_file_count": 4,
"generated_changed_file_count": 61,
"reason": "source files were dirty at generation time"
},
"evidence_bundle": {
"algorithm": "sha256(path,label,exists,artifact_sha256)",
@@ -110,7 +116,7 @@
"existing_count": 25,
"missing_count": 0,
"missing_paths": [],
"sha256": "38a010bc2913be5c7aadd809095c436abf8e566c8c53b8b4a63a821fea6acc98"
"sha256": "7fbfcb3c47283921ca6bb163600b18448da389c077939157387d8075e9c3867a"
},
"methodology": {
"path": "reports/benchmark_methodology.md",
@@ -183,8 +189,8 @@
"label": "output_execution",
"path": "reports/output_execution_runs.json",
"exists": true,
"bytes": 7967,
"sha256": "3b9c37bdf02259b0e87d9f9fc5980512a2e95d9bcca32fd109b7a622d453b652"
"bytes": 7966,
"sha256": "f40063a2ada31c29a3ac9b5965f0887cad6bc19190ec0a3a6b15c92ce5c27b49"
},
{
"label": "blind_review",
@@ -218,106 +224,106 @@
"label": "trust_report",
"path": "reports/security_trust_report.json",
"exists": true,
"bytes": 135139,
"sha256": "a18583795da7c3ffc0d355bc5465382b50f1a737a33e62b1e4b182496c9e4c5e"
"bytes": 135749,
"sha256": "b1d4729668d1dbf035b593e77dd2a3730e9aa4b3971014d37617ba5e0222df90"
},
{
"label": "python_compatibility",
"path": "reports/python_compatibility.json",
"exists": true,
"bytes": 29589,
"sha256": "364a150344f461934d36ca59c0f5f6e1ed487fbfa3b30cfdff548ded277dd5c5"
"bytes": 29715,
"sha256": "8b0d2a84027e0956b11acabc46e5ea5b9d7a311087b792eb57dd544bcd284671"
},
{
"label": "registry_audit",
"path": "reports/registry_audit.json",
"exists": true,
"bytes": 3183,
"sha256": "d0157e4c0242955a3870f11eb00649f77e14b75f393874ea110b8f8e6eca89fb"
"sha256": "0a0ccb00f9f7769c56f109589983562e91f7663f2c96c219d284c3d36eafe58e"
},
{
"label": "package_verification",
"path": "reports/package_verification.json",
"exists": true,
"bytes": 19338,
"sha256": "755a9c6788ccc0624682e523fe0154ac8b471bc4e41ed132f9866143762f398e"
"sha256": "7aa6c25e8154d246ace49f7ab9159fa85f96d1d4ebb7e2bb03c7b223260a908b"
},
{
"label": "install_simulation",
"path": "reports/install_simulation.json",
"exists": true,
"bytes": 8758,
"sha256": "15b77ec2b4738df891457d1d65f914751f30d6cd816a377e5c50c5a0b6d35b78"
"bytes": 8604,
"sha256": "34cc602c025c82a478a647d58008414f92c70e72046ca79979d3b038f3d793d2"
},
{
"label": "skill_os2_audit",
"path": "reports/skill_os2_audit.json",
"exists": true,
"bytes": 14466,
"sha256": "16cbe378cc1a5ef847022c274af42ec8b6f7c346c8a06f59e6f6e3060d666177"
"sha256": "920bd7f7b3b0fb01c572ed12d9ff788a34a7592d00d9825004d3faba90ebb17b"
},
{
"label": "world_class_evidence_plan",
"path": "reports/world_class_evidence_plan.json",
"exists": true,
"bytes": 22784,
"sha256": "4193115d881d4f68e61d2729633f88dd91d55d982af3db70691aafeba852f1ba"
"sha256": "2beb888d7992fc72073251632a6e85c4075278f9bcea946a46a7e11f8f43e0ca"
},
{
"label": "world_class_evidence_ledger",
"path": "reports/world_class_evidence_ledger.json",
"exists": true,
"bytes": 26016,
"sha256": "cb66d3284045b5993d25447f011cc70737dc760765ea3a3b7ae653194f0c4ff4"
"bytes": 26019,
"sha256": "22c85613d7bef62c4d0a4c94b77a8596090dc55c40e1663370d16d903e0b1ffb"
},
{
"label": "world_class_evidence_intake",
"path": "reports/world_class_evidence_intake.json",
"exists": true,
"bytes": 20646,
"sha256": "002fbf07989a804595fdcb51b6d0c8177dc035a1dc8d084b8294a274d21fbc1b"
"sha256": "d3f44570e605e6e1b1557889ccca18efbbd8acc1d9a9c638f59961b3dc3e9026"
},
{
"label": "world_class_evidence_preflight",
"path": "reports/world_class_evidence_preflight.json",
"exists": true,
"bytes": 66981,
"sha256": "758807fa5749e0dd46f46d311abfad8af7dd70663e8876569b1a4b8414b42ace"
"bytes": 68674,
"sha256": "c9d5fc06305c41f0870f32f30c0440a95e6fbdba402326e339cfd0c771ff960d"
},
{
"label": "world_class_submission_review",
"path": "reports/world_class_submission_review.json",
"exists": true,
"bytes": 17299,
"sha256": "f5b1e0e44aeb6e1999182d40fca421ab0a66b91154efc7b518e9ed6f6ac20dd2"
"bytes": 17302,
"sha256": "96624a5b7f79aa0ac43ce60d30486290b9a91f0735254e31329f02e1ee291050"
},
{
"label": "world_class_operator_runbook",
"path": "reports/world_class_operator_runbook.json",
"exists": true,
"bytes": 28871,
"sha256": "8da2e2cde3adecec955f7745a4b761edc5af871d1720409cbd4f3b4b4482510e"
"bytes": 28935,
"sha256": "a7b7809d3b423bf647a528c3b0f6991f2ea3874afdd93a4d6ba74eb189131f2a"
},
{
"label": "world_class_operator_runbook_markdown",
"path": "reports/world_class_operator_runbook.md",
"exists": true,
"bytes": 17521,
"sha256": "bfac92bc14f3080b9d723f32a4848aa3cfc10d4c3ee2e3844b65153f34c87c0a"
"bytes": 17576,
"sha256": "d72777b421b57f0cf8f31b4d048cf92512e49216d0b0c05cec1686d4aea638ce"
},
{
"label": "world_class_operator_runbook_html",
"path": "reports/world_class_operator_runbook.html",
"exists": true,
"bytes": 23958,
"sha256": "46b435f98d8a91501580fa1426a8ab0d0f57b3bc92ecd17f42332e655fd2bd85"
"bytes": 24019,
"sha256": "73d8ef2898f25ae899a618b723f40a6907646c303effa21cbde6156d01a95fc7"
},
{
"label": "world_class_claim_guard",
"path": "reports/world_class_claim_guard.json",
"exists": true,
"bytes": 18596,
"sha256": "c846ffc8565a40c270e711a58e968b005afd75be6df1a442b020deebe850386f"
"sha256": "abe7f7d60c0025e140373fadaefbed4063f285c140c74b9c7cfb464e354bb526"
}
],
"missing_artifacts": [],
+32 -31
View File
@@ -1,33 +1,33 @@
# Benchmark Reproducibility
Generated at: `2026-06-17`
Commit: `ed6960f65dbba0a36c335835f2ac6e8133435ea7`
Commit: `2efe6413f04c9626ba52c554b4dc87baabd0b05b`
Working tree dirty at generation: `true`
Source tree dirty at generation: `false`
Source tree dirty at generation: `true`
Generated evidence dirty at generation: `true`
Evidence bundle SHA256: `38a010bc2913be5c7aadd809095c436abf8e566c8c53b8b4a63a821fea6acc98`
Evidence bundle SHA256: `7fbfcb3c47283921ca6bb163600b18448da389c077939157387d8075e9c3867a`
## Summary
- reproducibility ready: `true`
- release lock ready: `true`
- release lock ready: `false`
- methodology complete: `true`
- required artifacts: `25`
- missing artifacts: `0`
- source contract sha256: `6fbdbed9dfdc`
- archive sha256: `0db54f788046`
- source contract sha256: `7fa19df8aeba`
- archive sha256: `7db44f059844`
- output cases: `5`
- disclosed failure cases: `3`
- reproduction commands: `23`
- provider evidence complete: `false`
- human review complete: `false`
- world-class ready: `false`
- world-class source checks: `10` pass / `19` total; `9` blocked
- world-class source checks: `9` pass / `19` total; `10` blocked
- public claim ready: `false`
- public claim blockers: `4`
- changed files at generation: `19`
- source changed files at generation: `0`
- generated changed files at generation: `19`
- public claim blockers: `5`
- changed files at generation: `65`
- source changed files at generation: `4`
- generated changed files at generation: `61`
This report proves local benchmark reproducibility only. It keeps external provider and human-review gaps visible instead of counting them as complete. The git commit and dirty samples are generation-time context; the evidence bundle SHA is the durable anchor for the artifacts listed below.
@@ -39,22 +39,23 @@ This report proves local benchmark reproducibility only. It keeps external provi
| Blocker |
| --- |
| release lock is not clean or commit is unavailable |
| provider-backed model holdout evidence is incomplete |
| human blind-review adjudication is incomplete |
| world-class evidence is not accepted yet (4 open gaps, 4 ledger pending) |
| world-class source checks are not all accepted (10/19 pass, 9 blocked) |
| world-class source checks are not all accepted (9/19 pass, 10 blocked) |
## Release Lock
- ready: `true`
- reason: only generated evidence artifacts were dirty at generation time
- ready: `false`
- reason: source files were dirty at generation time
- status scope: generation-time status before this report is written
## Evidence Bundle
- algorithm: `sha256(path,label,exists,artifact_sha256)`
- artifacts: `25` / `25`
- sha256: `38a010bc2913be5c7aadd809095c436abf8e566c8c53b8b4a63a821fea6acc98`
- sha256: `7fbfcb3c47283921ca6bb163600b18448da389c077939157387d8075e9c3867a`
## Methodology Sections
@@ -76,26 +77,26 @@ This report proves local benchmark reproducibility only. It keeps external provi
| output_cases | `evals/output/cases.jsonl` | present | `a6ae96857116` |
| output_schema | `evals/output/schema.json` | present | `8ee340c95064` |
| output_scorecard | `reports/output_quality_scorecard.json` | present | `0806258a8e08` |
| output_execution | `reports/output_execution_runs.json` | present | `3b9c37bdf022` |
| output_execution | `reports/output_execution_runs.json` | present | `f40063a2ada3` |
| blind_review | `reports/output_blind_review_pack.json` | present | `bbe2db8ec277` |
| review_adjudication | `reports/output_review_adjudication.json` | present | `91fd88dd9b0f` |
| trigger_scorecard | `reports/route_scorecard.json` | present | `c164e83e36d0` |
| runtime_conformance | `reports/conformance_matrix.json` | present | `97f9ba949c23` |
| trust_report | `reports/security_trust_report.json` | present | `a18583795da7` |
| python_compatibility | `reports/python_compatibility.json` | present | `364a150344f4` |
| registry_audit | `reports/registry_audit.json` | present | `d0157e4c0242` |
| package_verification | `reports/package_verification.json` | present | `755a9c6788cc` |
| install_simulation | `reports/install_simulation.json` | present | `15b77ec2b473` |
| skill_os2_audit | `reports/skill_os2_audit.json` | present | `16cbe378cc1a` |
| world_class_evidence_plan | `reports/world_class_evidence_plan.json` | present | `4193115d881d` |
| world_class_evidence_ledger | `reports/world_class_evidence_ledger.json` | present | `cb66d3284045` |
| world_class_evidence_intake | `reports/world_class_evidence_intake.json` | present | `002fbf07989a` |
| world_class_evidence_preflight | `reports/world_class_evidence_preflight.json` | present | `758807fa5749` |
| world_class_submission_review | `reports/world_class_submission_review.json` | present | `f5b1e0e44aeb` |
| world_class_operator_runbook | `reports/world_class_operator_runbook.json` | present | `8da2e2cde3ad` |
| world_class_operator_runbook_markdown | `reports/world_class_operator_runbook.md` | present | `bfac92bc14f3` |
| world_class_operator_runbook_html | `reports/world_class_operator_runbook.html` | present | `46b435f98d8a` |
| world_class_claim_guard | `reports/world_class_claim_guard.json` | present | `c846ffc8565a` |
| trust_report | `reports/security_trust_report.json` | present | `b1d4729668d1` |
| python_compatibility | `reports/python_compatibility.json` | present | `8b0d2a84027e` |
| registry_audit | `reports/registry_audit.json` | present | `0a0ccb00f9f7` |
| package_verification | `reports/package_verification.json` | present | `7aa6c25e8154` |
| install_simulation | `reports/install_simulation.json` | present | `34cc602c025c` |
| skill_os2_audit | `reports/skill_os2_audit.json` | present | `920bd7f7b3b0` |
| world_class_evidence_plan | `reports/world_class_evidence_plan.json` | present | `2beb888d7992` |
| world_class_evidence_ledger | `reports/world_class_evidence_ledger.json` | present | `22c85613d7be` |
| world_class_evidence_intake | `reports/world_class_evidence_intake.json` | present | `d3f44570e605` |
| world_class_evidence_preflight | `reports/world_class_evidence_preflight.json` | present | `c9d5fc06305c` |
| world_class_submission_review | `reports/world_class_submission_review.json` | present | `96624a5b7f79` |
| world_class_operator_runbook | `reports/world_class_operator_runbook.json` | present | `a7b7809d3b42` |
| world_class_operator_runbook_markdown | `reports/world_class_operator_runbook.md` | present | `d72777b421b5` |
| world_class_operator_runbook_html | `reports/world_class_operator_runbook.html` | present | `73d8ef2898f2` |
| world_class_claim_guard | `reports/world_class_claim_guard.json` | present | `abe7f7d60c00` |
## Reproduction Commands
+10 -10
View File
@@ -6,16 +6,16 @@
"context_budget_tier": "production",
"context_budget_limit": 1000,
"skill_body_tokens": 797,
"other_text_tokens": 1112796,
"other_text_tokens": 1115158,
"estimated_initial_load_tokens": 990,
"estimated_total_text_tokens": 1113593,
"deferred_resource_tokens": 507713,
"estimated_total_text_tokens": 1115955,
"deferred_resource_tokens": 509352,
"deferred_resource_warn_threshold": 120000,
"deferred_resource_dirs": [
{
"path": "scripts",
"estimated_tokens": 446533,
"file_count": 149
"estimated_tokens": 448172,
"file_count": 150
},
{
"path": "references",
@@ -36,8 +36,8 @@
"large_deferred_resource_dirs": [
{
"path": "scripts",
"estimated_tokens": 446533,
"file_count": 149
"estimated_tokens": 448172,
"file_count": 150
}
],
"deferred_resource_governance": {
@@ -59,14 +59,14 @@
],
"missing": [],
"path": "scripts",
"estimated_tokens": 446533,
"file_count": 149,
"estimated_tokens": 448172,
"file_count": 150,
"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": 704,
"relevant_file_count": 706,
"unused_resource_dirs": [],
"quality_signal_points": 130,
"quality_density": 131.3
+1 -1
View File
@@ -2,7 +2,7 @@
| Target | Path | Tier | Limit | Initial | SKILL | Deferred | Resource Governance | Large Deferred Dirs | Quality Density | Unused Dirs | Status |
| --- | --- | --- | ---: | ---: | ---: | ---: | --- | --- | ---: | --- | --- |
| root | `.` | `production` | 1000 | 990 | 797 | 507713 | `governed` | scripts:446533 | 131.3 | - | ok |
| root | `.` | `production` | 1000 | 990 | 797 | 509352 | `governed` | scripts:448172 | 131.3 | - | 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 |
+6 -6
View File
@@ -1,5 +1,5 @@
{
"generated_at": "2026-06-17",
"generated_at": "2026-03-31",
"targets": [
{
"label": "root",
@@ -8,12 +8,12 @@
"budget_limit": 1000,
"initial_tokens": 990,
"skill_body_tokens": 797,
"deferred_resource_tokens": 507713,
"deferred_resource_tokens": 509352,
"large_deferred_resource_dirs": [
{
"path": "scripts",
"estimated_tokens": 446533,
"file_count": 149
"estimated_tokens": 448172,
"file_count": 150
}
],
"deferred_resource_governance": {
@@ -35,8 +35,8 @@
],
"missing": [],
"path": "scripts",
"estimated_tokens": 446533,
"file_count": 149,
"estimated_tokens": 448172,
"file_count": 150,
"rationale": "Script resources are deterministic deferred tools, not initial-load prompt context."
}
],
+93 -91
View File
@@ -189,12 +189,12 @@
"status": "pass",
"expected": {
"status": "pass",
"detail": "initial load 990/1000; deferred 507713/120000; top deferred scripts 446533; resource governance governed; quality density 131.3",
"detail": "initial load 990/1000; deferred 509352/120000; top deferred scripts 448172; resource governance governed; quality density 131.3",
"evidence": "reports/context_budget.json"
},
"actual": {
"status": "pass",
"detail": "initial load 990/1000; deferred 507713/120000; top deferred scripts 446533; resource governance governed; quality density 131.3",
"detail": "initial load 990/1000; deferred 509352/120000; top deferred scripts 448172; resource governance governed; quality density 131.3",
"evidence": "reports/context_budget.json"
},
"paths": [
@@ -207,8 +207,8 @@
"key": "benchmark-release-lock-self-consistency",
"label": "Benchmark release lock matches source dirty state",
"status": "pass",
"expected": true,
"actual": true,
"expected": false,
"actual": false,
"paths": [
"reports/benchmark_reproducibility.json"
],
@@ -222,7 +222,7 @@
"actual": {
"available": true,
"clean": false,
"changed_file_count": 21
"changed_file_count": 66
},
"paths": [
"reports/benchmark_reproducibility.json"
@@ -263,8 +263,8 @@
"key": "overview-benchmark-commit",
"label": "overview embeds the benchmark commit",
"status": "pass",
"expected": "ed6960f65dbba0a36c335835f2ac6e8133435ea7",
"actual": "ed6960f65dbba0a36c335835f2ac6e8133435ea7",
"expected": "2efe6413f04c9626ba52c554b4dc87baabd0b05b",
"actual": "2efe6413f04c9626ba52c554b4dc87baabd0b05b",
"paths": [
"reports/benchmark_reproducibility.json",
"reports/skill-overview.json"
@@ -276,30 +276,30 @@
"label": "overview embeds benchmark summary fields",
"status": "pass",
"expected": {
"release_lock_ready": true,
"release_lock_ready": false,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"source_contract_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59",
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 10,
"world_class_source_blocked_count": 9,
"world_class_source_pass_count": 9,
"world_class_source_blocked_count": 10,
"public_claim_ready": false,
"public_claim_blocker_count": 4
"public_claim_blocker_count": 5
},
"actual": {
"release_lock_ready": true,
"release_lock_ready": false,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"source_contract_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59",
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 10,
"world_class_source_blocked_count": 9,
"world_class_source_pass_count": 9,
"world_class_source_blocked_count": 10,
"public_claim_ready": false,
"public_claim_blocker_count": 4
"public_claim_blocker_count": 5
},
"paths": [
"reports/benchmark_reproducibility.json",
@@ -313,13 +313,13 @@
"status": "pass",
"expected": {
"event_count": 1,
"adoption_sample_count": 1,
"activation_count": 1,
"accepted_count": 1,
"adoption_rate": 100.0,
"adoption_sample_count": 0,
"activation_count": 0,
"accepted_count": 0,
"adoption_rate": 0,
"risk_band": "low",
"event_types": {
"skill_activation": 1
"review_event": 1
},
"source_types": {
"manual": 1
@@ -327,13 +327,13 @@
},
"actual": {
"event_count": 1,
"adoption_sample_count": 1,
"activation_count": 1,
"accepted_count": 1,
"adoption_rate": 100.0,
"adoption_sample_count": 0,
"activation_count": 0,
"accepted_count": 0,
"adoption_rate": 0,
"risk_band": "low",
"event_types": {
"skill_activation": 1
"review_event": 1
},
"source_types": {
"manual": 1
@@ -356,8 +356,8 @@
"human_pending_count": 1,
"external_pending_count": 3,
"source_check_count": 19,
"source_pass_count": 10,
"source_blocked_count": 9,
"source_pass_count": 9,
"source_blocked_count": 10,
"ready_to_claim_world_class": false,
"decision": "evidence-pending"
},
@@ -368,8 +368,8 @@
"human_pending_count": 1,
"external_pending_count": 3,
"source_check_count": 19,
"source_pass_count": 10,
"source_blocked_count": 9,
"source_pass_count": 9,
"source_blocked_count": 10,
"ready_to_claim_world_class": false,
"decision": "evidence-pending"
},
@@ -389,7 +389,7 @@
"pending_count": 4,
"accepted_count": 0,
"source_check_count": 19,
"source_pass_count": 10
"source_pass_count": 9
},
"actual": {
"ready": false,
@@ -397,7 +397,7 @@
"pending_count": 4,
"accepted_count": 0,
"source_check_count": 19,
"source_pass_count": 10
"source_pass_count": 9
},
"paths": [
"reports/world_class_evidence_ledger.json",
@@ -409,8 +409,8 @@
"key": "interpretation-benchmark-commit",
"label": "interpretation embeds the benchmark commit",
"status": "pass",
"expected": "ed6960f65dbba0a36c335835f2ac6e8133435ea7",
"actual": "ed6960f65dbba0a36c335835f2ac6e8133435ea7",
"expected": "2efe6413f04c9626ba52c554b4dc87baabd0b05b",
"actual": "2efe6413f04c9626ba52c554b4dc87baabd0b05b",
"paths": [
"reports/benchmark_reproducibility.json",
"reports/skill-interpretation.json"
@@ -422,30 +422,30 @@
"label": "interpretation embeds benchmark summary fields",
"status": "pass",
"expected": {
"release_lock_ready": true,
"release_lock_ready": false,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"source_contract_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59",
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 10,
"world_class_source_blocked_count": 9,
"world_class_source_pass_count": 9,
"world_class_source_blocked_count": 10,
"public_claim_ready": false,
"public_claim_blocker_count": 4
"public_claim_blocker_count": 5
},
"actual": {
"release_lock_ready": true,
"release_lock_ready": false,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"source_contract_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59",
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 10,
"world_class_source_blocked_count": 9,
"world_class_source_pass_count": 9,
"world_class_source_blocked_count": 10,
"public_claim_ready": false,
"public_claim_blocker_count": 4
"public_claim_blocker_count": 5
},
"paths": [
"reports/benchmark_reproducibility.json",
@@ -459,13 +459,13 @@
"status": "pass",
"expected": {
"event_count": 1,
"adoption_sample_count": 1,
"activation_count": 1,
"accepted_count": 1,
"adoption_rate": 100.0,
"adoption_sample_count": 0,
"activation_count": 0,
"accepted_count": 0,
"adoption_rate": 0,
"risk_band": "low",
"event_types": {
"skill_activation": 1
"review_event": 1
},
"source_types": {
"manual": 1
@@ -473,13 +473,13 @@
},
"actual": {
"event_count": 1,
"adoption_sample_count": 1,
"activation_count": 1,
"accepted_count": 1,
"adoption_rate": 100.0,
"adoption_sample_count": 0,
"activation_count": 0,
"accepted_count": 0,
"adoption_rate": 0,
"risk_band": "low",
"event_types": {
"skill_activation": 1
"review_event": 1
},
"source_types": {
"manual": 1
@@ -502,8 +502,8 @@
"human_pending_count": 1,
"external_pending_count": 3,
"source_check_count": 19,
"source_pass_count": 10,
"source_blocked_count": 9,
"source_pass_count": 9,
"source_blocked_count": 10,
"ready_to_claim_world_class": false,
"decision": "evidence-pending"
},
@@ -514,8 +514,8 @@
"human_pending_count": 1,
"external_pending_count": 3,
"source_check_count": 19,
"source_pass_count": 10,
"source_blocked_count": 9,
"source_pass_count": 9,
"source_blocked_count": 10,
"ready_to_claim_world_class": false,
"decision": "evidence-pending"
},
@@ -535,7 +535,7 @@
"pending_count": 4,
"accepted_count": 0,
"source_check_count": 19,
"source_pass_count": 10
"source_pass_count": 9
},
"actual": {
"ready": false,
@@ -543,7 +543,7 @@
"pending_count": 4,
"accepted_count": 0,
"source_check_count": 19,
"source_pass_count": 10
"source_pass_count": 9
},
"paths": [
"reports/world_class_evidence_ledger.json",
@@ -1342,7 +1342,7 @@
"external_pending_count": 3,
"human_pending_count": 1,
"source_check_count": 19,
"source_pass_count": 10,
"source_pass_count": 9,
"conclusion_zh": "世界级证据尚未完成:4 项待补,0 项已接受。",
"conclusion_en": "World-class evidence is not complete: 4 pending, 0 accepted.",
"entries": [
@@ -1402,7 +1402,8 @@
"summary_zh": "真实外部客户端 metadata-only 事件仍未导入。",
"summary_en": "Real external-client metadata-only events have not been imported yet.",
"blocked_checks": [
"External events"
"External events",
"Adoption sample"
]
}
]
@@ -1416,7 +1417,7 @@
"external_pending_count": 3,
"human_pending_count": 1,
"source_check_count": 19,
"source_pass_count": 10,
"source_pass_count": 9,
"conclusion_zh": "世界级证据尚未完成:4 项待补,0 项已接受。",
"conclusion_en": "World-class evidence is not complete: 4 pending, 0 accepted.",
"entries": [
@@ -1476,7 +1477,8 @@
"summary_zh": "真实外部客户端 metadata-only 事件仍未导入。",
"summary_en": "Real external-client metadata-only events have not been imported yet.",
"blocked_checks": [
"External events"
"External events",
"Adoption sample"
]
}
]
@@ -1527,7 +1529,7 @@
"path": "scripts",
"label": "Deterministic helpers or local tooling",
"kind": "folder",
"file_count": 149
"file_count": 150
},
{
"path": "evals",
@@ -1542,7 +1544,7 @@
"file_count": 235
}
],
"file_count": 452,
"file_count": 453,
"folder_count": 4,
"distribution": [
{
@@ -1567,7 +1569,7 @@
},
{
"label": "scripts",
"value": 149
"value": 150
},
{
"label": "evals",
@@ -1615,7 +1617,7 @@
"path": "scripts",
"label": "Deterministic helpers or local tooling",
"kind": "folder",
"file_count": 149
"file_count": 150
},
{
"path": "evals",
@@ -1630,7 +1632,7 @@
"file_count": 235
}
],
"file_count": 452,
"file_count": 453,
"folder_count": 4,
"distribution": [
{
@@ -1655,7 +1657,7 @@
},
{
"label": "scripts",
"value": 149
"value": 150
},
{
"label": "evals",
@@ -1826,15 +1828,15 @@
"expected": {
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 10,
"world_class_source_blocked_count": 9,
"world_class_source_pass_count": 9,
"world_class_source_blocked_count": 10,
"public_claim_ready": false
},
"actual": {
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 10,
"world_class_source_blocked_count": 9,
"world_class_source_pass_count": 9,
"world_class_source_blocked_count": 10,
"public_claim_ready": false
},
"paths": [
@@ -1850,8 +1852,8 @@
"expected": {
"pending_count": 4,
"source_check_count": 19,
"source_pass_count": 10,
"source_blocked_count": 9,
"source_pass_count": 9,
"source_blocked_count": 10,
"ready_to_claim_world_class": false,
"preflight_counts_as_evidence": false,
"credential_value_exposed": false
@@ -1859,8 +1861,8 @@
"actual": {
"pending_count": 4,
"source_check_count": 19,
"source_pass_count": 10,
"source_blocked_count": 9,
"source_pass_count": 9,
"source_blocked_count": 10,
"ready_to_claim_world_class": false,
"preflight_counts_as_evidence": false,
"credential_value_exposed": false
@@ -2114,8 +2116,8 @@
"human_pending_count": 1,
"external_pending_count": 3,
"source_check_count": 19,
"source_pass_count": 10,
"source_blocked_count": 9,
"source_pass_count": 9,
"source_blocked_count": 10,
"plan_keys": [
"human-adjudication",
"native-client-telemetry",
@@ -2263,8 +2265,8 @@
"human_pending_count": 1,
"external_pending_count": 3,
"source_check_count": 19,
"source_pass_count": 10,
"source_blocked_count": 9,
"source_pass_count": 9,
"source_blocked_count": 10,
"plan_keys": [
"human-adjudication",
"native-client-telemetry",
@@ -2419,10 +2421,10 @@
"score `91`",
"`16` gates",
"`3` warnings",
"`63` declared internal modules",
"`86 / 86` CLI help smoke checks passing across `149` scripts",
"`688` zip entries",
"archive with `688` entries",
"`64` declared internal modules",
"`86 / 86` CLI help smoke checks passing across `150` scripts",
"`689` zip entries",
"archive with `689` entries",
"`12` installer permission checks enforced",
"`0` permission failures",
"`25` required artifacts",
+1 -1
View File
@@ -8,7 +8,7 @@
"installed_skill_dir": "tests/tmp_review_studio/install-root/simulate-yao-meta-skill/yao-meta-skill",
"summary": {
"archive_present": true,
"archive_entry_count": 688,
"archive_entry_count": 689,
"archive_extracted": true,
"entrypoint_loaded": true,
"manifest_loaded": true,
+10 -10
View File
@@ -34,7 +34,7 @@
"execution_mode": "command",
"model_executed": false,
"command_executed": true,
"duration_ms": 29.21,
"duration_ms": 26.23,
"provider": "local-output-eval-runner",
"model": "",
"usage": {
@@ -62,7 +62,7 @@
"execution_mode": "command",
"model_executed": false,
"command_executed": true,
"duration_ms": 28.64,
"duration_ms": 26.04,
"provider": "local-output-eval-runner",
"model": "",
"usage": {
@@ -85,7 +85,7 @@
"execution_mode": "command",
"model_executed": false,
"command_executed": true,
"duration_ms": 28.14,
"duration_ms": 26.25,
"provider": "local-output-eval-runner",
"model": "",
"usage": {
@@ -113,7 +113,7 @@
"execution_mode": "command",
"model_executed": false,
"command_executed": true,
"duration_ms": 28.12,
"duration_ms": 26.22,
"provider": "local-output-eval-runner",
"model": "",
"usage": {
@@ -136,7 +136,7 @@
"execution_mode": "command",
"model_executed": false,
"command_executed": true,
"duration_ms": 28.94,
"duration_ms": 26.07,
"provider": "local-output-eval-runner",
"model": "",
"usage": {
@@ -164,7 +164,7 @@
"execution_mode": "command",
"model_executed": false,
"command_executed": true,
"duration_ms": 29.34,
"duration_ms": 25.73,
"provider": "local-output-eval-runner",
"model": "",
"usage": {
@@ -187,7 +187,7 @@
"execution_mode": "command",
"model_executed": false,
"command_executed": true,
"duration_ms": 28.98,
"duration_ms": 26.03,
"provider": "local-output-eval-runner",
"model": "",
"usage": {
@@ -214,7 +214,7 @@
"execution_mode": "command",
"model_executed": false,
"command_executed": true,
"duration_ms": 29.47,
"duration_ms": 25.68,
"provider": "local-output-eval-runner",
"model": "",
"usage": {
@@ -237,7 +237,7 @@
"execution_mode": "command",
"model_executed": false,
"command_executed": true,
"duration_ms": 27.51,
"duration_ms": 26.14,
"provider": "local-output-eval-runner",
"model": "",
"usage": {
@@ -266,7 +266,7 @@
"execution_mode": "command",
"model_executed": false,
"command_executed": true,
"duration_ms": 27.08,
"duration_ms": 26.21,
"provider": "local-output-eval-runner",
"model": "",
"usage": {
+10 -10
View File
@@ -23,16 +23,16 @@ Command runner evidence is present. This proves the eval harness executed an ext
| Case | Variant | Mode | Model | Duration ms | Tokens | Score | Status |
| --- | --- | --- | --- | ---: | ---: | ---: | --- |
| skill-package-contract | baseline | command | local-output-eval-runner | 29.21 | 33 | 0.0 | pass |
| skill-package-contract | with_skill | command | local-output-eval-runner | 28.64 | 73 | 100.0 | pass |
| output-eval-expectation | baseline | command | local-output-eval-runner | 28.14 | 36 | 0.0 | pass |
| output-eval-expectation | with_skill | command | local-output-eval-runner | 28.12 | 80 | 100.0 | pass |
| ir-before-packaging | baseline | command | local-output-eval-runner | 28.94 | 33 | 0.0 | pass |
| ir-before-packaging | with_skill | command | local-output-eval-runner | 29.34 | 80 | 100.0 | pass |
| near-neighbor-boundary | baseline | command | local-output-eval-runner | 28.98 | 36 | 0.0 | pass |
| near-neighbor-boundary | with_skill | command | local-output-eval-runner | 29.47 | 65 | 100.0 | pass |
| file-backed-governed-package | baseline | command | local-output-eval-runner | 27.51 | 37 | 0.0 | pass |
| file-backed-governed-package | with_skill | command | local-output-eval-runner | 27.08 | 98 | 100.0 | pass |
| skill-package-contract | baseline | command | local-output-eval-runner | 26.23 | 33 | 0.0 | pass |
| skill-package-contract | with_skill | command | local-output-eval-runner | 26.04 | 73 | 100.0 | pass |
| output-eval-expectation | baseline | command | local-output-eval-runner | 26.25 | 36 | 0.0 | pass |
| output-eval-expectation | with_skill | command | local-output-eval-runner | 26.22 | 80 | 100.0 | pass |
| ir-before-packaging | baseline | command | local-output-eval-runner | 26.07 | 33 | 0.0 | pass |
| ir-before-packaging | with_skill | command | local-output-eval-runner | 25.73 | 80 | 100.0 | pass |
| near-neighbor-boundary | baseline | command | local-output-eval-runner | 26.03 | 36 | 0.0 | pass |
| near-neighbor-boundary | with_skill | command | local-output-eval-runner | 25.68 | 65 | 100.0 | pass |
| file-backed-governed-package | baseline | command | local-output-eval-runner | 26.14 | 37 | 0.0 | pass |
| file-backed-governed-package | with_skill | command | local-output-eval-runner | 26.21 | 98 | 100.0 | pass |
## Next Fixes
+2 -2
View File
@@ -8,8 +8,8 @@
"target_count": 4,
"adapter_count": 4,
"archive_present": true,
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"archive_entry_count": 688,
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"archive_entry_count": 689,
"failure_count": 0,
"warning_count": 0
},
+1 -1
View File
@@ -4,7 +4,7 @@
- Package directory: `dist`
- Targets: `4 / 4` adapters present
- Archive present: `True`
- Archive SHA256: `0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8`
- Archive SHA256: `7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2`
- Failures: `0`
- Warnings: `0`
+7 -1
View File
@@ -5,7 +5,7 @@
"root": ".",
"summary": {
"target_python": "3.11",
"file_count": 228,
"file_count": 229,
"issue_count": 0,
"syntax_error_count": 0,
"fstring_311_violation_count": 0,
@@ -826,6 +826,12 @@
"issue_count": 0,
"issues": []
},
{
"path": "scripts/world_class_phase_queue.py",
"ok": true,
"issue_count": 0,
"issues": []
},
{
"path": "scripts/world_class_preflight_layout.py",
"ok": true,
+1 -1
View File
@@ -6,7 +6,7 @@ Generated at: `2026-06-13`
- decision: `pass`
- target python: `3.11`
- files scanned: `228`
- files scanned: `229`
- issues: `0`
- syntax errors: `0`
- f-string 3.11 violations: `0`
+4 -4
View File
@@ -21,8 +21,8 @@
"trust_level": "local",
"license": "MIT",
"checksums": {
"package_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59",
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8"
"package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
"compatibility": {
"openai": "pass",
@@ -53,7 +53,7 @@
},
"distribution": {
"archive_verified": true,
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"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": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59"
"package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4"
}
]
},
+2 -2
View File
@@ -6,8 +6,8 @@
- Maturity: `governed`
- Owner: `Yao Team`
- License: `MIT`
- Package SHA256: `6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59`
- Archive SHA256: `0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8`
- Package SHA256: `7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4`
- Archive SHA256: `7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2`
- Install simulated: `True`
## Compatibility
File diff suppressed because one or more lines are too long
+342 -258
View File
File diff suppressed because it is too large Load Diff
+47 -46
View File
@@ -412,7 +412,7 @@
"external_pending_count": 3,
"human_pending_count": 1,
"source_check_count": 19,
"source_pass_count": 10,
"source_pass_count": 9,
"conclusion_zh": "世界级证据尚未完成:4 项待补,0 项已接受。",
"conclusion_en": "World-class evidence is not complete: 4 pending, 0 accepted.",
"entries": [
@@ -472,7 +472,8 @@
"summary_zh": "真实外部客户端 metadata-only 事件仍未导入。",
"summary_en": "Real external-client metadata-only events have not been imported yet.",
"blocked_checks": [
"External events"
"External events",
"Adoption sample"
]
}
]
@@ -513,7 +514,7 @@
"path": "scripts",
"label": "Deterministic helpers or local tooling",
"kind": "folder",
"file_count": 149
"file_count": 150
},
{
"path": "evals",
@@ -528,7 +529,7 @@
"file_count": 235
}
],
"file_count": 452,
"file_count": 453,
"folder_count": 4,
"distribution": [
{
@@ -553,7 +554,7 @@
},
{
"label": "scripts",
"value": 149
"value": 150
},
{
"label": "evals",
@@ -683,7 +684,7 @@
"path": "scripts",
"label": "Deterministic helpers or local tooling",
"kind": "folder",
"file_count": 149
"file_count": 150
},
{
"path": "evals",
@@ -1005,13 +1006,13 @@
"ok": true,
"summary": {
"reproducibility_ready": true,
"release_lock_ready": true,
"release_lock_ready": false,
"methodology_complete": true,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"evidence_bundle_sha256": "38a010bc2913be5c7aadd809095c436abf8e566c8c53b8b4a63a821fea6acc98",
"source_contract_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59",
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"evidence_bundle_sha256": "7fbfcb3c47283921ca6bb163600b18448da389c077939157387d8075e9c3867a",
"source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"output_case_count": 5,
"failure_disclosure_count": 3,
"command_count": 23,
@@ -1026,18 +1027,18 @@
"world_class_task_count": 4,
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 10,
"world_class_source_blocked_count": 9,
"world_class_source_pass_count": 9,
"world_class_source_blocked_count": 10,
"public_claim_ready": false,
"public_claim_blocker_count": 4,
"public_claim_blocker_count": 5,
"working_tree_dirty": true,
"changed_file_count": 19,
"source_tree_dirty": false,
"source_changed_file_count": 0,
"changed_file_count": 65,
"source_tree_dirty": true,
"source_changed_file_count": 4,
"generated_tree_dirty": true,
"generated_changed_file_count": 19
"generated_changed_file_count": 61
},
"commit": "ed6960f65dbba0a36c335835f2ac6e8133435ea7",
"commit": "2efe6413f04c9626ba52c554b4dc87baabd0b05b",
"missing_artifacts": [],
"limitations": [
"The git commit and dirty flags are generation-time context; release lock is blocked by source changes, while generated evidence artifacts are tracked separately.",
@@ -1121,9 +1122,9 @@
"failures": []
},
"trust_security": {
"scanned_files": 241,
"script_count": 149,
"internal_module_count": 63,
"scanned_files": 242,
"script_count": 150,
"internal_module_count": 64,
"secret_findings": 0,
"dependency_files": [
"requirements-ci.txt"
@@ -1141,8 +1142,8 @@
"help_smoke_failed_count": 0,
"interactive_script_count": 0,
"package_hash_scope": "source-contract-without-generated-reports",
"package_hash_file_count": 241,
"package_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59"
"package_hash_file_count": 242,
"package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4"
},
"skill_atlas": {
"skill_count": 12,
@@ -1180,8 +1181,8 @@
"trust_level": "local",
"license": "MIT",
"checksums": {
"package_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59",
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8"
"package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
"compatibility": {
"openai": "pass",
@@ -1212,12 +1213,12 @@
},
"distribution": {
"archive_verified": true,
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"package_verification": "reports/package_verification.json",
"install_simulated": true,
"install_simulation": "reports/install_simulation.json"
},
"generated_at": "2026-06-13"
"generated_at": "2026-06-17"
},
"failures": [],
"warnings": []
@@ -1228,8 +1229,8 @@
"target_count": 4,
"adapter_count": 4,
"archive_present": true,
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"archive_entry_count": 688,
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"archive_entry_count": 689,
"failure_count": 0,
"warning_count": 0
},
@@ -1240,7 +1241,7 @@
"ok": true,
"summary": {
"archive_present": true,
"archive_entry_count": 688,
"archive_entry_count": 689,
"archive_extracted": true,
"entrypoint_loaded": true,
"manifest_loaded": true,
@@ -1307,12 +1308,12 @@
{
"field": "archive_sha256",
"from": "",
"to": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8"
"to": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
{
"field": "package_sha256",
"from": "0000000000000000000000000000000000000000000000000000000000000000",
"to": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59"
"to": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4"
}
]
},
@@ -1329,14 +1330,14 @@
"ok": true,
"summary": {
"event_count": 1,
"adoption_sample_count": 1,
"activation_count": 1,
"accepted_count": 1,
"adoption_sample_count": 0,
"activation_count": 0,
"accepted_count": 0,
"edited_count": 0,
"rejected_count": 0,
"missed_count": 0,
"failed_count": 0,
"adoption_rate": 100.0,
"adoption_rate": 0,
"missed_trigger_count": 0,
"wrong_trigger_count": 0,
"bad_output_count": 0,
@@ -1345,7 +1346,7 @@
"review_overdue_count": 0,
"risk_band": "low",
"event_types": {
"skill_activation": 1
"review_event": 1
},
"failure_types": {},
"source_types": {
@@ -1620,7 +1621,7 @@
"status": "external_required",
"category": "external",
"owner": "Browser/Chrome/IDE/provider client integrator",
"current": "external source events 0; adoption samples 1",
"current": "external source events 0; adoption samples 0",
"objective": "Import production metadata-only events from a real external client into the local drift loop.",
"runbook": [
"python3 scripts/telemetry_native_host.py . --write-launcher /tmp/yao-telemetry-host.sh --write-manifest /tmp/yao-telemetry-host.json --allowed-origin chrome-extension://<extension-id>/",
@@ -1673,8 +1674,8 @@
"missing_submission_count": 4,
"invalid_submission_count": 0,
"source_check_count": 19,
"source_pass_count": 10,
"source_blocked_count": 9,
"source_pass_count": 9,
"source_blocked_count": 10,
"submitted_but_pending_count": 0,
"source_accepted_without_valid_submission_count": 0,
"overclaim_guard_active": true,
@@ -2100,7 +2101,7 @@
"status": "pending",
"source_status": "external_required",
"source_accepted": false,
"current": "external source events 0; adoption samples 1",
"current": "external source events 0; adoption samples 0",
"objective": "Import production metadata-only events from a real external client into the local drift loop.",
"runbook": [
"python3 scripts/telemetry_native_host.py . --write-launcher /tmp/yao-telemetry-host.sh --write-manifest /tmp/yao-telemetry-host.json --allowed-origin chrome-extension://<extension-id>/",
@@ -2137,7 +2138,7 @@
],
"observed_state": {
"external_source_events": 0,
"adoption_sample_count": 1,
"adoption_sample_count": 0,
"raw_content_allowed": false,
"risk_band": "low",
"accepted": false
@@ -2158,8 +2159,8 @@
"label": "Adoption sample",
"field": "adoption_sample_count",
"expected": ">0",
"actual": 1,
"status": "pass",
"actual": 0,
"status": "blocked",
"source_accepted": false,
"next_action": "Telemetry must include adoption outcome evidence."
},
@@ -2175,8 +2176,8 @@
}
],
"source_check_count": 3,
"source_pass_count": 2,
"source_blocked_count": 1,
"source_pass_count": 1,
"source_blocked_count": 2,
"submission_state": {
"status": "missing",
"path": "evidence/world_class/submissions/native-client-telemetry.json",
+24 -6
View File
@@ -2,9 +2,9 @@
"ok": true,
"skill_dir": ".",
"summary": {
"scanned_files": 241,
"script_count": 149,
"internal_module_count": 63,
"scanned_files": 242,
"script_count": 150,
"internal_module_count": 64,
"secret_findings": 0,
"dependency_files": [
"requirements-ci.txt"
@@ -22,8 +22,8 @@
"help_smoke_failed_count": 0,
"interactive_script_count": 0,
"package_hash_scope": "source-contract-without-generated-reports",
"package_hash_file_count": 241,
"package_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59"
"package_hash_file_count": 242,
"package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4"
},
"failures": [],
"warnings": [],
@@ -1880,6 +1880,20 @@
"network_urls": [],
"network_hosts": []
},
{
"path": "scripts/world_class_phase_queue.py",
"interface": "internal-module",
"interface_declared": true,
"interface_reason": "Imported by prepare_world_class_submission_kit.py to group repair rows into an operator execution queue.",
"has_argparse": false,
"has_main_guard": false,
"uses_input": false,
"uses_network": false,
"uses_file_write": false,
"uses_subprocess": false,
"network_urls": [],
"network_hosts": []
},
{
"path": "scripts/world_class_preflight_layout.py",
"interface": "internal-module",
@@ -2167,7 +2181,7 @@
"checked_count": 86,
"passed_count": 86,
"failed_count": 0,
"skipped_count": 63,
"skipped_count": 64,
"failed_scripts": [],
"results": [
{
@@ -3216,6 +3230,10 @@
"path": "scripts/world_class_native_telemetry_evidence.py",
"reason": "internal module"
},
{
"path": "scripts/world_class_phase_queue.py",
"reason": "internal module"
},
{
"path": "scripts/world_class_preflight_layout.py",
"reason": "internal module"
+6 -5
View File
@@ -1,9 +1,9 @@
# Security Trust Report
- OK: `True`
- Scanned files: `241`
- Scripts: `149`
- Internal script modules: `63`
- Scanned files: `242`
- Scripts: `150`
- Internal script modules: `64`
- Secret findings: `0`
- Network-capable scripts: `3`
- Network policy covered scripts: `3`
@@ -15,8 +15,8 @@
- CLI help smoke failures: `0`
- Interactive scripts: `0`
- Package hash scope: `source-contract-without-generated-reports`
- Package hash files: `241`
- Package SHA256: `6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59`
- Package hash files: `242`
- Package SHA256: `7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4`
## Failures
@@ -193,6 +193,7 @@
| scripts/world_class_human_evidence.py | internal-module | True | False | False | False | False | False | False | Imported by world_class_evidence_contract.py to validate blind A/B human adjudication evidence from decision rows. |
| scripts/world_class_native_permission_evidence.py | internal-module | True | False | False | False | False | False | False | Imported by world_class_evidence_contract.py to validate runtime permission evidence from target-level probe rows. |
| scripts/world_class_native_telemetry_evidence.py | internal-module | True | False | False | False | False | False | False | Imported by world_class_evidence_contract.py to validate native client telemetry evidence from metadata event rows. |
| scripts/world_class_phase_queue.py | internal-module | True | False | False | False | False | False | False | Imported by prepare_world_class_submission_kit.py to group repair rows into an operator execution queue. |
| scripts/world_class_preflight_layout.py | internal-module | True | False | False | False | False | False | False | Imported by render_world_class_preflight.py to keep preflight HTML layout out of data assembly. |
| scripts/world_class_provider_evidence.py | internal-module | True | False | False | False | False | False | False | Imported by world_class_evidence_contract.py to validate provider-backed holdout execution evidence from run rows. |
| scripts/world_class_repair_checklist.py | internal-module | True | False | False | False | False | False | False | Shared by submission kit generation to turn readiness blockers into actionable repair rows. |
+2 -2
View File
@@ -929,7 +929,7 @@
</table>
</div>
</div>
<article class='panel world-readiness'><div class='world-readiness-head'><div><h3><span data-lang="zh-CN">世界证据</span><span data-lang="en">World Evidence</span></h3><p><span data-lang="zh-CN">世界级证据尚未完成:4 项待补,0 项已接受。</span><span data-lang="en">World-class evidence is not complete: 4 pending, 0 accepted.</span></p></div><span class='world-status'><span data-lang="zh-CN">证据待补</span><span data-lang="en">Evidence pending</span></span></div><div class='evidence-kpis'><article class='evidence-kpi'><span><span data-lang="zh-CN">待补证据</span><span data-lang="en">Pending</span></span><strong>4</strong><small><span data-lang="zh-CN">仍需外部或人工证据接受。</span><span data-lang="en">External or human evidence still needs acceptance.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">已接受</span><span data-lang="en">Accepted</span></span><strong>0</strong><small><span data-lang="zh-CN">已通过 source check 与提交契约。</span><span data-lang="en">Passed source checks and submission contract.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">源检查</span><span data-lang="en">Source Checks</span></span><strong>10 / 19</strong><small><span data-lang="zh-CN">通过数 / 总检查数。</span><span data-lang="en">Passed checks / total checks.</span></small></article></div><div class='evidence-list'><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">提供商留出</span><span data-lang="en">Provider Holdout</span></h4></div><p><span data-lang="zh-CN">缺少真实 provider 模型运行和 token metadata。</span><span data-lang="en">Missing a real provider model run and token metadata.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">提供商实跑</span><span data-lang="en">Provider model run</span></li><li><span data-lang="zh-CN">Token 用量</span><span data-lang="en">Token usage observed</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">人工证据</span><span data-lang="en">Human evidence</span></span><h4><span data-lang="zh-CN">人工盲评</span><span data-lang="en">Human Adjudication</span></h4></div><p><span data-lang="zh-CN">盲评 pair 仍待真实 reviewer 决策。</span><span data-lang="en">Blind-review pairs still need real reviewer decisions.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">无待判定</span><span data-lang="en">No pending decisions</span></li><li><span data-lang="zh-CN">盲评完成</span><span data-lang="en">Judgments complete</span></li><li><span data-lang="zh-CN">Reviewer metadata</span><span data-lang="en">Reviewer metadata</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生权限</span><span data-lang="en">Native Permission</span></h4></div><p><span data-lang="zh-CN">原生 runtime enforcement 仍待目标客户端或外部安装器证明。</span><span data-lang="en">Native runtime enforcement still needs target-client or external-installer proof.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">原生执行</span><span data-lang="en">Native enforcement</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生遥测</span><span data-lang="en">Native Telemetry</span></h4></div><p><span data-lang="zh-CN">真实外部客户端 metadata-only 事件仍未导入。</span><span data-lang="en">Real external-client metadata-only events have not been imported yet.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">外部事件</span><span data-lang="en">External events</span></li></ul></article></div></article>
<article class='panel world-readiness'><div class='world-readiness-head'><div><h3><span data-lang="zh-CN">世界证据</span><span data-lang="en">World Evidence</span></h3><p><span data-lang="zh-CN">世界级证据尚未完成:4 项待补,0 项已接受。</span><span data-lang="en">World-class evidence is not complete: 4 pending, 0 accepted.</span></p></div><span class='world-status'><span data-lang="zh-CN">证据待补</span><span data-lang="en">Evidence pending</span></span></div><div class='evidence-kpis'><article class='evidence-kpi'><span><span data-lang="zh-CN">待补证据</span><span data-lang="en">Pending</span></span><strong>4</strong><small><span data-lang="zh-CN">仍需外部或人工证据接受。</span><span data-lang="en">External or human evidence still needs acceptance.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">已接受</span><span data-lang="en">Accepted</span></span><strong>0</strong><small><span data-lang="zh-CN">已通过 source check 与提交契约。</span><span data-lang="en">Passed source checks and submission contract.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">源检查</span><span data-lang="en">Source Checks</span></span><strong>9 / 19</strong><small><span data-lang="zh-CN">通过数 / 总检查数。</span><span data-lang="en">Passed checks / total checks.</span></small></article></div><div class='evidence-list'><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">提供商留出</span><span data-lang="en">Provider Holdout</span></h4></div><p><span data-lang="zh-CN">缺少真实 provider 模型运行和 token metadata。</span><span data-lang="en">Missing a real provider model run and token metadata.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">提供商实跑</span><span data-lang="en">Provider model run</span></li><li><span data-lang="zh-CN">Token 用量</span><span data-lang="en">Token usage observed</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">人工证据</span><span data-lang="en">Human evidence</span></span><h4><span data-lang="zh-CN">人工盲评</span><span data-lang="en">Human Adjudication</span></h4></div><p><span data-lang="zh-CN">盲评 pair 仍待真实 reviewer 决策。</span><span data-lang="en">Blind-review pairs still need real reviewer decisions.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">无待判定</span><span data-lang="en">No pending decisions</span></li><li><span data-lang="zh-CN">盲评完成</span><span data-lang="en">Judgments complete</span></li><li><span data-lang="zh-CN">Reviewer metadata</span><span data-lang="en">Reviewer metadata</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生权限</span><span data-lang="en">Native Permission</span></h4></div><p><span data-lang="zh-CN">原生 runtime enforcement 仍待目标客户端或外部安装器证明。</span><span data-lang="en">Native runtime enforcement still needs target-client or external-installer proof.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">原生执行</span><span data-lang="en">Native enforcement</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生遥测</span><span data-lang="en">Native Telemetry</span></h4></div><p><span data-lang="zh-CN">真实外部客户端 metadata-only 事件仍未导入。</span><span data-lang="en">Real external-client metadata-only events have not been imported yet.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">外部事件</span><span data-lang="en">External events</span></li><li><span data-lang="zh-CN">采用样本</span><span data-lang="en">Adoption sample</span></li></ul></article></div></article>
</div>
</section>
@@ -940,7 +940,7 @@
<p><span data-lang="zh-CN">让 reviewer 快速确认关键文件、目录和资产分布。</span><span data-lang="en">Lets reviewers confirm key files, directories, and asset distribution quickly.</span></p>
</div>
<div class="two-col">
<figure class="chart-figure" data-chart="asset_donut"><svg viewBox="0 0 430 270" role="img" aria-label="资产分布"><text data-lang="zh-CN" x="20" y="30" class="chart-title">资产分布</text><text data-lang="en" x="20" y="30" class="chart-title">Asset Distribution</text><circle cx="130" cy="130" r="70" fill="none" stroke="#1B365D" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="0.0" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#2D5A8A" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-0.5" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#D0DCE9" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.1" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#E4ECF5" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.6" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#e8e6dc" stroke-width="24" stroke-dasharray="18.6 81.4" stroke-dashoffset="-2.1" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#504e49" stroke-width="24" stroke-dasharray="79.3 20.7" stroke-dashoffset="-20.7" pathLength="100" transform="rotate(-90 130 130)"/><text data-lang="zh-CN" x="130" y="136" text-anchor="middle">452</text><text data-lang="en" x="130" y="136" text-anchor="middle">452 items</text><text data-lang="zh-CN" x="235" y="78">SKILL.md</text><text data-lang="en" x="235" y="78">SKILL.md</text><text data-lang="zh-CN" x="235" y="100">README.md</text><text data-lang="en" x="235" y="100">README.md</text><text data-lang="zh-CN" x="235" y="122">agents/interface.yaml</text><text data-lang="en" x="235" y="122">agents/interface.yaml</text><text data-lang="zh-CN" x="235" y="144">manifest.json</text><text data-lang="en" x="235" y="144">manifest.json</text><text data-lang="zh-CN" x="235" y="166">references</text><text data-lang="en" x="235" y="166">references</text><text data-lang="zh-CN" x="235" y="188">scripts</text><text data-lang="en" x="235" y="188">scripts</text></svg><figcaption><span data-lang="zh-CN">资产分布图展示当前包体的文件和目录重心。</span><span data-lang="en">The asset distribution chart shows where files and directories are concentrated.</span></figcaption></figure>
<figure class="chart-figure" data-chart="asset_donut"><svg viewBox="0 0 430 270" role="img" aria-label="资产分布"><text data-lang="zh-CN" x="20" y="30" class="chart-title">资产分布</text><text data-lang="en" x="20" y="30" class="chart-title">Asset Distribution</text><circle cx="130" cy="130" r="70" fill="none" stroke="#1B365D" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="0.0" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#2D5A8A" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-0.5" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#D0DCE9" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.1" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#E4ECF5" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.6" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#e8e6dc" stroke-width="24" stroke-dasharray="18.5 81.5" stroke-dashoffset="-2.1" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#504e49" stroke-width="24" stroke-dasharray="79.4 20.6" stroke-dashoffset="-20.6" pathLength="100" transform="rotate(-90 130 130)"/><text data-lang="zh-CN" x="130" y="136" text-anchor="middle">453</text><text data-lang="en" x="130" y="136" text-anchor="middle">453 items</text><text data-lang="zh-CN" x="235" y="78">SKILL.md</text><text data-lang="en" x="235" y="78">SKILL.md</text><text data-lang="zh-CN" x="235" y="100">README.md</text><text data-lang="en" x="235" y="100">README.md</text><text data-lang="zh-CN" x="235" y="122">agents/interface.yaml</text><text data-lang="en" x="235" y="122">agents/interface.yaml</text><text data-lang="zh-CN" x="235" y="144">manifest.json</text><text data-lang="en" x="235" y="144">manifest.json</text><text data-lang="zh-CN" x="235" y="166">references</text><text data-lang="en" x="235" y="166">references</text><text data-lang="zh-CN" x="235" y="188">scripts</text><text data-lang="en" x="235" y="188">scripts</text></svg><figcaption><span data-lang="zh-CN">资产分布图展示当前包体的文件和目录重心。</span><span data-lang="en">The asset distribution chart shows where files and directories are concentrated.</span></figcaption></figure>
<table>
<thead><tr><th><span data-lang="zh-CN">路径</span><span data-lang="en">Path</span></th><th><span data-lang="zh-CN">作用</span><span data-lang="en">Role</span></th><th><span data-lang="zh-CN">类型</span><span data-lang="en">Type</span></th></tr></thead>
<tbody><tr><td>SKILL.md</td><td><span data-lang="zh-CN">Skill 入口文件</span><span data-lang="en">Skill entrypoint</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>README.md</td><td><span data-lang="zh-CN">人类可读使用说明</span><span data-lang="en">Human-readable usage guide</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>agents/interface.yaml</td><td><span data-lang="zh-CN">跨平台接口元数据</span><span data-lang="en">Neutral interface metadata</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>manifest.json</td><td><span data-lang="zh-CN">生命周期与打包元数据</span><span data-lang="en">Lifecycle and portability metadata</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>references</td><td><span data-lang="zh-CN">扩展指导与复用资料</span><span data-lang="en">Extended guidance and reusable notes</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>scripts</td><td><span data-lang="zh-CN">确定性脚本或本地工具</span><span data-lang="en">Deterministic helpers or local tooling</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>evals</td><td><span data-lang="zh-CN">触发与质量检查</span><span data-lang="en">Trigger and quality checks</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>reports</td><td><span data-lang="zh-CN">生成的证据与总结报告</span><span data-lang="en">Generated evidence and overview artifacts</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr></tbody>
+47 -46
View File
@@ -412,7 +412,7 @@
"external_pending_count": 3,
"human_pending_count": 1,
"source_check_count": 19,
"source_pass_count": 10,
"source_pass_count": 9,
"conclusion_zh": "世界级证据尚未完成:4 项待补,0 项已接受。",
"conclusion_en": "World-class evidence is not complete: 4 pending, 0 accepted.",
"entries": [
@@ -472,7 +472,8 @@
"summary_zh": "真实外部客户端 metadata-only 事件仍未导入。",
"summary_en": "Real external-client metadata-only events have not been imported yet.",
"blocked_checks": [
"External events"
"External events",
"Adoption sample"
]
}
]
@@ -513,7 +514,7 @@
"path": "scripts",
"label": "Deterministic helpers or local tooling",
"kind": "folder",
"file_count": 149
"file_count": 150
},
{
"path": "evals",
@@ -528,7 +529,7 @@
"file_count": 235
}
],
"file_count": 452,
"file_count": 453,
"folder_count": 4,
"distribution": [
{
@@ -553,7 +554,7 @@
},
{
"label": "scripts",
"value": 149
"value": 150
},
{
"label": "evals",
@@ -687,7 +688,7 @@
"path": "scripts",
"label": "Deterministic helpers or local tooling",
"kind": "folder",
"file_count": 149
"file_count": 150
},
{
"path": "evals",
@@ -1009,13 +1010,13 @@
"ok": true,
"summary": {
"reproducibility_ready": true,
"release_lock_ready": true,
"release_lock_ready": false,
"methodology_complete": true,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"evidence_bundle_sha256": "38a010bc2913be5c7aadd809095c436abf8e566c8c53b8b4a63a821fea6acc98",
"source_contract_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59",
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"evidence_bundle_sha256": "7fbfcb3c47283921ca6bb163600b18448da389c077939157387d8075e9c3867a",
"source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"output_case_count": 5,
"failure_disclosure_count": 3,
"command_count": 23,
@@ -1030,18 +1031,18 @@
"world_class_task_count": 4,
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 10,
"world_class_source_blocked_count": 9,
"world_class_source_pass_count": 9,
"world_class_source_blocked_count": 10,
"public_claim_ready": false,
"public_claim_blocker_count": 4,
"public_claim_blocker_count": 5,
"working_tree_dirty": true,
"changed_file_count": 19,
"source_tree_dirty": false,
"source_changed_file_count": 0,
"changed_file_count": 65,
"source_tree_dirty": true,
"source_changed_file_count": 4,
"generated_tree_dirty": true,
"generated_changed_file_count": 19
"generated_changed_file_count": 61
},
"commit": "ed6960f65dbba0a36c335835f2ac6e8133435ea7",
"commit": "2efe6413f04c9626ba52c554b4dc87baabd0b05b",
"missing_artifacts": [],
"limitations": [
"The git commit and dirty flags are generation-time context; release lock is blocked by source changes, while generated evidence artifacts are tracked separately.",
@@ -1125,9 +1126,9 @@
"failures": []
},
"trust_security": {
"scanned_files": 241,
"script_count": 149,
"internal_module_count": 63,
"scanned_files": 242,
"script_count": 150,
"internal_module_count": 64,
"secret_findings": 0,
"dependency_files": [
"requirements-ci.txt"
@@ -1145,8 +1146,8 @@
"help_smoke_failed_count": 0,
"interactive_script_count": 0,
"package_hash_scope": "source-contract-without-generated-reports",
"package_hash_file_count": 241,
"package_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59"
"package_hash_file_count": 242,
"package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4"
},
"skill_atlas": {
"skill_count": 12,
@@ -1184,8 +1185,8 @@
"trust_level": "local",
"license": "MIT",
"checksums": {
"package_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59",
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8"
"package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
"compatibility": {
"openai": "pass",
@@ -1216,12 +1217,12 @@
},
"distribution": {
"archive_verified": true,
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"package_verification": "reports/package_verification.json",
"install_simulated": true,
"install_simulation": "reports/install_simulation.json"
},
"generated_at": "2026-06-13"
"generated_at": "2026-06-17"
},
"failures": [],
"warnings": []
@@ -1232,8 +1233,8 @@
"target_count": 4,
"adapter_count": 4,
"archive_present": true,
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"archive_entry_count": 688,
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"archive_entry_count": 689,
"failure_count": 0,
"warning_count": 0
},
@@ -1244,7 +1245,7 @@
"ok": true,
"summary": {
"archive_present": true,
"archive_entry_count": 688,
"archive_entry_count": 689,
"archive_extracted": true,
"entrypoint_loaded": true,
"manifest_loaded": true,
@@ -1311,12 +1312,12 @@
{
"field": "archive_sha256",
"from": "",
"to": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8"
"to": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
{
"field": "package_sha256",
"from": "0000000000000000000000000000000000000000000000000000000000000000",
"to": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59"
"to": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4"
}
]
},
@@ -1333,14 +1334,14 @@
"ok": true,
"summary": {
"event_count": 1,
"adoption_sample_count": 1,
"activation_count": 1,
"accepted_count": 1,
"adoption_sample_count": 0,
"activation_count": 0,
"accepted_count": 0,
"edited_count": 0,
"rejected_count": 0,
"missed_count": 0,
"failed_count": 0,
"adoption_rate": 100.0,
"adoption_rate": 0,
"missed_trigger_count": 0,
"wrong_trigger_count": 0,
"bad_output_count": 0,
@@ -1349,7 +1350,7 @@
"review_overdue_count": 0,
"risk_band": "low",
"event_types": {
"skill_activation": 1
"review_event": 1
},
"failure_types": {},
"source_types": {
@@ -1624,7 +1625,7 @@
"status": "external_required",
"category": "external",
"owner": "Browser/Chrome/IDE/provider client integrator",
"current": "external source events 0; adoption samples 1",
"current": "external source events 0; adoption samples 0",
"objective": "Import production metadata-only events from a real external client into the local drift loop.",
"runbook": [
"python3 scripts/telemetry_native_host.py . --write-launcher /tmp/yao-telemetry-host.sh --write-manifest /tmp/yao-telemetry-host.json --allowed-origin chrome-extension://<extension-id>/",
@@ -1677,8 +1678,8 @@
"missing_submission_count": 4,
"invalid_submission_count": 0,
"source_check_count": 19,
"source_pass_count": 10,
"source_blocked_count": 9,
"source_pass_count": 9,
"source_blocked_count": 10,
"submitted_but_pending_count": 0,
"source_accepted_without_valid_submission_count": 0,
"overclaim_guard_active": true,
@@ -2104,7 +2105,7 @@
"status": "pending",
"source_status": "external_required",
"source_accepted": false,
"current": "external source events 0; adoption samples 1",
"current": "external source events 0; adoption samples 0",
"objective": "Import production metadata-only events from a real external client into the local drift loop.",
"runbook": [
"python3 scripts/telemetry_native_host.py . --write-launcher /tmp/yao-telemetry-host.sh --write-manifest /tmp/yao-telemetry-host.json --allowed-origin chrome-extension://<extension-id>/",
@@ -2141,7 +2142,7 @@
],
"observed_state": {
"external_source_events": 0,
"adoption_sample_count": 1,
"adoption_sample_count": 0,
"raw_content_allowed": false,
"risk_band": "low",
"accepted": false
@@ -2162,8 +2163,8 @@
"label": "Adoption sample",
"field": "adoption_sample_count",
"expected": ">0",
"actual": 1,
"status": "pass",
"actual": 0,
"status": "blocked",
"source_accepted": false,
"next_action": "Telemetry must include adoption outcome evidence."
},
@@ -2179,8 +2180,8 @@
}
],
"source_check_count": 3,
"source_pass_count": 2,
"source_blocked_count": 1,
"source_pass_count": 1,
"source_blocked_count": 2,
"submission_state": {
"status": "missing",
"path": "evidence/world_class/submissions/native-client-telemetry.json",
+3 -3
View File
@@ -135,13 +135,13 @@ Next move: add real client or installer permission enforcement integration.
| Output Eval | `5` cases, with-skill pass rate `100`, baseline pass rate `0`, with file-backed, near-neighbor, boundary coverage, `10` local command-runner execution runs, `0` recorded fixture runs, `0` provider model-executed runs in root release evidence, `10` estimated token counts, provider runner v0 available, `5` blind A/B review pairs, a generated `reports/output_review_decisions.json` template, `0 / 5` reviewer decisions pending, `0` answer keys revealed, and `5` pending answers hidden |
| Runtime Conformance | `5 / 5` targets passing |
| Target Compiler | `5 / 5` compiled target contracts generated for OpenAI, Claude, generic, Agent Skills compatible, and VS Code / Copilot outputs, including target permission contracts and target-native behavior contracts |
| Trust | `0` secret findings, `1` pinned dependency file, `63` declared internal modules, `3 / 3` network-capable scripts covered by bounded host policy, `86 / 86` CLI help smoke checks passing across `149` scripts, source-contract hash scope explicit |
| Trust | `0` secret findings, `1` pinned dependency file, `64` declared internal modules, `3 / 3` network-capable scripts covered by bounded host policy, `86 / 86` CLI help smoke checks passing across `150` scripts, source-contract hash scope explicit |
| Permission Governance | `3 / 3` required high-permission capabilities approved, `0` missing, `0` invalid, `0` expired |
| Runtime Permission Probes | `4 / 4` target adapters probed, `0` native-enforcement adapters, `4` explicit metadata fallbacks, `4` residual risks retained for reviewer visibility |
| Skill Atlas | `12` scanned skills, `1` actionable root skill, `1` telemetry report, `0` actionable route collisions, `0` actionable owner gaps, `0` actionable stale skills, `0` actionable drift signals, `24` scoped non-actionable issue signals retained for visibility |
| Registry Audit | package metadata generated with version, owner, license, source checksum, archive checksum, Skill IR provenance, and compatibility matrix |
| Package Verification | `4 / 4` target adapters present, archive verified, `688` zip entries, `0` failures, `0` warnings |
| Install Simulation | archive with `688` entries extracted into a local verification root, entrypoint/manifest/interface loaded, reports present, `4` adapters readable, `12` installer permission checks enforced, `0` permission failures, `0` failures, `0` warnings |
| Package Verification | `4 / 4` target adapters present, archive verified, `689` zip entries, `0` failures, `0` warnings |
| Install Simulation | archive with `689` entries extracted into a local verification root, entrypoint/manifest/interface loaded, reports present, `4` adapters readable, `12` installer permission checks enforced, `0` permission failures, `0` failures, `0` warnings |
| Local Install Sync Preflight | `make sync-local-install` and `make sync-active-install` rebuild the package first, then sync only after install simulation passes with `12` enforced installer permission checks and `0` permission failures |
| Upgrade Check | current package declares `minor` over the 1.0.0 baseline, recommended bump is `minor`, and release notes include added targets plus checksum changes |
| Adoption Drift | `1` metadata-only review event, `1` adoption sample, adoption `100`, risk band `low`; optional `yao.py` CLI capture, external client `telemetry-emit`, `5` `telemetry-hooks` recipes, Browser/Chrome native messaging host, and validated external JSONL import are available but off by default for reproducible release evidence; raw `reports/telemetry_events.jsonl` is gitignored and blocked from zip packages |
+2 -2
View File
@@ -929,7 +929,7 @@
</table>
</div>
</div>
<article class='panel world-readiness'><div class='world-readiness-head'><div><h3><span data-lang="zh-CN">世界证据</span><span data-lang="en">World Evidence</span></h3><p><span data-lang="zh-CN">世界级证据尚未完成:4 项待补,0 项已接受。</span><span data-lang="en">World-class evidence is not complete: 4 pending, 0 accepted.</span></p></div><span class='world-status'><span data-lang="zh-CN">证据待补</span><span data-lang="en">Evidence pending</span></span></div><div class='evidence-kpis'><article class='evidence-kpi'><span><span data-lang="zh-CN">待补证据</span><span data-lang="en">Pending</span></span><strong>4</strong><small><span data-lang="zh-CN">仍需外部或人工证据接受。</span><span data-lang="en">External or human evidence still needs acceptance.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">已接受</span><span data-lang="en">Accepted</span></span><strong>0</strong><small><span data-lang="zh-CN">已通过 source check 与提交契约。</span><span data-lang="en">Passed source checks and submission contract.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">源检查</span><span data-lang="en">Source Checks</span></span><strong>10 / 19</strong><small><span data-lang="zh-CN">通过数 / 总检查数。</span><span data-lang="en">Passed checks / total checks.</span></small></article></div><div class='evidence-list'><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">提供商留出</span><span data-lang="en">Provider Holdout</span></h4></div><p><span data-lang="zh-CN">缺少真实 provider 模型运行和 token metadata。</span><span data-lang="en">Missing a real provider model run and token metadata.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">提供商实跑</span><span data-lang="en">Provider model run</span></li><li><span data-lang="zh-CN">Token 用量</span><span data-lang="en">Token usage observed</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">人工证据</span><span data-lang="en">Human evidence</span></span><h4><span data-lang="zh-CN">人工盲评</span><span data-lang="en">Human Adjudication</span></h4></div><p><span data-lang="zh-CN">盲评 pair 仍待真实 reviewer 决策。</span><span data-lang="en">Blind-review pairs still need real reviewer decisions.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">无待判定</span><span data-lang="en">No pending decisions</span></li><li><span data-lang="zh-CN">盲评完成</span><span data-lang="en">Judgments complete</span></li><li><span data-lang="zh-CN">Reviewer metadata</span><span data-lang="en">Reviewer metadata</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生权限</span><span data-lang="en">Native Permission</span></h4></div><p><span data-lang="zh-CN">原生 runtime enforcement 仍待目标客户端或外部安装器证明。</span><span data-lang="en">Native runtime enforcement still needs target-client or external-installer proof.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">原生执行</span><span data-lang="en">Native enforcement</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生遥测</span><span data-lang="en">Native Telemetry</span></h4></div><p><span data-lang="zh-CN">真实外部客户端 metadata-only 事件仍未导入。</span><span data-lang="en">Real external-client metadata-only events have not been imported yet.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">外部事件</span><span data-lang="en">External events</span></li></ul></article></div></article>
<article class='panel world-readiness'><div class='world-readiness-head'><div><h3><span data-lang="zh-CN">世界证据</span><span data-lang="en">World Evidence</span></h3><p><span data-lang="zh-CN">世界级证据尚未完成:4 项待补,0 项已接受。</span><span data-lang="en">World-class evidence is not complete: 4 pending, 0 accepted.</span></p></div><span class='world-status'><span data-lang="zh-CN">证据待补</span><span data-lang="en">Evidence pending</span></span></div><div class='evidence-kpis'><article class='evidence-kpi'><span><span data-lang="zh-CN">待补证据</span><span data-lang="en">Pending</span></span><strong>4</strong><small><span data-lang="zh-CN">仍需外部或人工证据接受。</span><span data-lang="en">External or human evidence still needs acceptance.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">已接受</span><span data-lang="en">Accepted</span></span><strong>0</strong><small><span data-lang="zh-CN">已通过 source check 与提交契约。</span><span data-lang="en">Passed source checks and submission contract.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">源检查</span><span data-lang="en">Source Checks</span></span><strong>9 / 19</strong><small><span data-lang="zh-CN">通过数 / 总检查数。</span><span data-lang="en">Passed checks / total checks.</span></small></article></div><div class='evidence-list'><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">提供商留出</span><span data-lang="en">Provider Holdout</span></h4></div><p><span data-lang="zh-CN">缺少真实 provider 模型运行和 token metadata。</span><span data-lang="en">Missing a real provider model run and token metadata.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">提供商实跑</span><span data-lang="en">Provider model run</span></li><li><span data-lang="zh-CN">Token 用量</span><span data-lang="en">Token usage observed</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">人工证据</span><span data-lang="en">Human evidence</span></span><h4><span data-lang="zh-CN">人工盲评</span><span data-lang="en">Human Adjudication</span></h4></div><p><span data-lang="zh-CN">盲评 pair 仍待真实 reviewer 决策。</span><span data-lang="en">Blind-review pairs still need real reviewer decisions.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">无待判定</span><span data-lang="en">No pending decisions</span></li><li><span data-lang="zh-CN">盲评完成</span><span data-lang="en">Judgments complete</span></li><li><span data-lang="zh-CN">Reviewer metadata</span><span data-lang="en">Reviewer metadata</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生权限</span><span data-lang="en">Native Permission</span></h4></div><p><span data-lang="zh-CN">原生 runtime enforcement 仍待目标客户端或外部安装器证明。</span><span data-lang="en">Native runtime enforcement still needs target-client or external-installer proof.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">原生执行</span><span data-lang="en">Native enforcement</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生遥测</span><span data-lang="en">Native Telemetry</span></h4></div><p><span data-lang="zh-CN">真实外部客户端 metadata-only 事件仍未导入。</span><span data-lang="en">Real external-client metadata-only events have not been imported yet.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">外部事件</span><span data-lang="en">External events</span></li><li><span data-lang="zh-CN">采用样本</span><span data-lang="en">Adoption sample</span></li></ul></article></div></article>
</div>
</section>
@@ -940,7 +940,7 @@
<p><span data-lang="zh-CN">让 reviewer 快速确认关键文件、目录和资产分布。</span><span data-lang="en">Lets reviewers confirm key files, directories, and asset distribution quickly.</span></p>
</div>
<div class="two-col">
<figure class="chart-figure" data-chart="asset_donut"><svg viewBox="0 0 430 270" role="img" aria-label="资产分布"><text data-lang="zh-CN" x="20" y="30" class="chart-title">资产分布</text><text data-lang="en" x="20" y="30" class="chart-title">Asset Distribution</text><circle cx="130" cy="130" r="70" fill="none" stroke="#1B365D" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="0.0" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#2D5A8A" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-0.5" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#D0DCE9" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.1" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#E4ECF5" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.6" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#e8e6dc" stroke-width="24" stroke-dasharray="18.6 81.4" stroke-dashoffset="-2.1" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#504e49" stroke-width="24" stroke-dasharray="79.3 20.7" stroke-dashoffset="-20.7" pathLength="100" transform="rotate(-90 130 130)"/><text data-lang="zh-CN" x="130" y="136" text-anchor="middle">452</text><text data-lang="en" x="130" y="136" text-anchor="middle">452 items</text><text data-lang="zh-CN" x="235" y="78">SKILL.md</text><text data-lang="en" x="235" y="78">SKILL.md</text><text data-lang="zh-CN" x="235" y="100">README.md</text><text data-lang="en" x="235" y="100">README.md</text><text data-lang="zh-CN" x="235" y="122">agents/interface.yaml</text><text data-lang="en" x="235" y="122">agents/interface.yaml</text><text data-lang="zh-CN" x="235" y="144">manifest.json</text><text data-lang="en" x="235" y="144">manifest.json</text><text data-lang="zh-CN" x="235" y="166">references</text><text data-lang="en" x="235" y="166">references</text><text data-lang="zh-CN" x="235" y="188">scripts</text><text data-lang="en" x="235" y="188">scripts</text></svg><figcaption><span data-lang="zh-CN">资产分布图展示当前包体的文件和目录重心。</span><span data-lang="en">The asset distribution chart shows where files and directories are concentrated.</span></figcaption></figure>
<figure class="chart-figure" data-chart="asset_donut"><svg viewBox="0 0 430 270" role="img" aria-label="资产分布"><text data-lang="zh-CN" x="20" y="30" class="chart-title">资产分布</text><text data-lang="en" x="20" y="30" class="chart-title">Asset Distribution</text><circle cx="130" cy="130" r="70" fill="none" stroke="#1B365D" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="0.0" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#2D5A8A" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-0.5" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#D0DCE9" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.1" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#E4ECF5" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.6" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#e8e6dc" stroke-width="24" stroke-dasharray="18.5 81.5" stroke-dashoffset="-2.1" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#504e49" stroke-width="24" stroke-dasharray="79.4 20.6" stroke-dashoffset="-20.6" pathLength="100" transform="rotate(-90 130 130)"/><text data-lang="zh-CN" x="130" y="136" text-anchor="middle">453</text><text data-lang="en" x="130" y="136" text-anchor="middle">453 items</text><text data-lang="zh-CN" x="235" y="78">SKILL.md</text><text data-lang="en" x="235" y="78">SKILL.md</text><text data-lang="zh-CN" x="235" y="100">README.md</text><text data-lang="en" x="235" y="100">README.md</text><text data-lang="zh-CN" x="235" y="122">agents/interface.yaml</text><text data-lang="en" x="235" y="122">agents/interface.yaml</text><text data-lang="zh-CN" x="235" y="144">manifest.json</text><text data-lang="en" x="235" y="144">manifest.json</text><text data-lang="zh-CN" x="235" y="166">references</text><text data-lang="en" x="235" y="166">references</text><text data-lang="zh-CN" x="235" y="188">scripts</text><text data-lang="en" x="235" y="188">scripts</text></svg><figcaption><span data-lang="zh-CN">资产分布图展示当前包体的文件和目录重心。</span><span data-lang="en">The asset distribution chart shows where files and directories are concentrated.</span></figcaption></figure>
<table>
<thead><tr><th><span data-lang="zh-CN">路径</span><span data-lang="en">Path</span></th><th><span data-lang="zh-CN">作用</span><span data-lang="en">Role</span></th><th><span data-lang="zh-CN">类型</span><span data-lang="en">Type</span></th></tr></thead>
<tbody><tr><td>SKILL.md</td><td><span data-lang="zh-CN">Skill 入口文件</span><span data-lang="en">Skill entrypoint</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>README.md</td><td><span data-lang="zh-CN">人类可读使用说明</span><span data-lang="en">Human-readable usage guide</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>agents/interface.yaml</td><td><span data-lang="zh-CN">跨平台接口元数据</span><span data-lang="en">Neutral interface metadata</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>manifest.json</td><td><span data-lang="zh-CN">生命周期与打包元数据</span><span data-lang="en">Lifecycle and portability metadata</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>references</td><td><span data-lang="zh-CN">扩展指导与复用资料</span><span data-lang="en">Extended guidance and reusable notes</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>scripts</td><td><span data-lang="zh-CN">确定性脚本或本地工具</span><span data-lang="en">Deterministic helpers or local tooling</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>evals</td><td><span data-lang="zh-CN">触发与质量检查</span><span data-lang="en">Trigger and quality checks</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>reports</td><td><span data-lang="zh-CN">生成的证据与总结报告</span><span data-lang="en">Generated evidence and overview artifacts</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr></tbody>
+47 -46
View File
@@ -411,7 +411,7 @@
"external_pending_count": 3,
"human_pending_count": 1,
"source_check_count": 19,
"source_pass_count": 10,
"source_pass_count": 9,
"conclusion_zh": "世界级证据尚未完成:4 项待补,0 项已接受。",
"conclusion_en": "World-class evidence is not complete: 4 pending, 0 accepted.",
"entries": [
@@ -471,7 +471,8 @@
"summary_zh": "真实外部客户端 metadata-only 事件仍未导入。",
"summary_en": "Real external-client metadata-only events have not been imported yet.",
"blocked_checks": [
"External events"
"External events",
"Adoption sample"
]
}
]
@@ -512,7 +513,7 @@
"path": "scripts",
"label": "Deterministic helpers or local tooling",
"kind": "folder",
"file_count": 149
"file_count": 150
},
{
"path": "evals",
@@ -527,7 +528,7 @@
"file_count": 235
}
],
"file_count": 452,
"file_count": 453,
"folder_count": 4,
"distribution": [
{
@@ -552,7 +553,7 @@
},
{
"label": "scripts",
"value": 149
"value": 150
},
{
"label": "evals",
@@ -682,7 +683,7 @@
"path": "scripts",
"label": "Deterministic helpers or local tooling",
"kind": "folder",
"file_count": 149
"file_count": 150
},
{
"path": "evals",
@@ -1004,13 +1005,13 @@
"ok": true,
"summary": {
"reproducibility_ready": true,
"release_lock_ready": true,
"release_lock_ready": false,
"methodology_complete": true,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"evidence_bundle_sha256": "38a010bc2913be5c7aadd809095c436abf8e566c8c53b8b4a63a821fea6acc98",
"source_contract_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59",
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"evidence_bundle_sha256": "7fbfcb3c47283921ca6bb163600b18448da389c077939157387d8075e9c3867a",
"source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"output_case_count": 5,
"failure_disclosure_count": 3,
"command_count": 23,
@@ -1025,18 +1026,18 @@
"world_class_task_count": 4,
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 10,
"world_class_source_blocked_count": 9,
"world_class_source_pass_count": 9,
"world_class_source_blocked_count": 10,
"public_claim_ready": false,
"public_claim_blocker_count": 4,
"public_claim_blocker_count": 5,
"working_tree_dirty": true,
"changed_file_count": 19,
"source_tree_dirty": false,
"source_changed_file_count": 0,
"changed_file_count": 65,
"source_tree_dirty": true,
"source_changed_file_count": 4,
"generated_tree_dirty": true,
"generated_changed_file_count": 19
"generated_changed_file_count": 61
},
"commit": "ed6960f65dbba0a36c335835f2ac6e8133435ea7",
"commit": "2efe6413f04c9626ba52c554b4dc87baabd0b05b",
"missing_artifacts": [],
"limitations": [
"The git commit and dirty flags are generation-time context; release lock is blocked by source changes, while generated evidence artifacts are tracked separately.",
@@ -1120,9 +1121,9 @@
"failures": []
},
"trust_security": {
"scanned_files": 241,
"script_count": 149,
"internal_module_count": 63,
"scanned_files": 242,
"script_count": 150,
"internal_module_count": 64,
"secret_findings": 0,
"dependency_files": [
"requirements-ci.txt"
@@ -1140,8 +1141,8 @@
"help_smoke_failed_count": 0,
"interactive_script_count": 0,
"package_hash_scope": "source-contract-without-generated-reports",
"package_hash_file_count": 241,
"package_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59"
"package_hash_file_count": 242,
"package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4"
},
"skill_atlas": {
"skill_count": 12,
@@ -1179,8 +1180,8 @@
"trust_level": "local",
"license": "MIT",
"checksums": {
"package_sha256": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59",
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8"
"package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
"compatibility": {
"openai": "pass",
@@ -1211,12 +1212,12 @@
},
"distribution": {
"archive_verified": true,
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"package_verification": "reports/package_verification.json",
"install_simulated": true,
"install_simulation": "reports/install_simulation.json"
},
"generated_at": "2026-06-13"
"generated_at": "2026-06-17"
},
"failures": [],
"warnings": []
@@ -1227,8 +1228,8 @@
"target_count": 4,
"adapter_count": 4,
"archive_present": true,
"archive_sha256": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8",
"archive_entry_count": 688,
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"archive_entry_count": 689,
"failure_count": 0,
"warning_count": 0
},
@@ -1239,7 +1240,7 @@
"ok": true,
"summary": {
"archive_present": true,
"archive_entry_count": 688,
"archive_entry_count": 689,
"archive_extracted": true,
"entrypoint_loaded": true,
"manifest_loaded": true,
@@ -1306,12 +1307,12 @@
{
"field": "archive_sha256",
"from": "",
"to": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8"
"to": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
{
"field": "package_sha256",
"from": "0000000000000000000000000000000000000000000000000000000000000000",
"to": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59"
"to": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4"
}
]
},
@@ -1328,14 +1329,14 @@
"ok": true,
"summary": {
"event_count": 1,
"adoption_sample_count": 1,
"activation_count": 1,
"accepted_count": 1,
"adoption_sample_count": 0,
"activation_count": 0,
"accepted_count": 0,
"edited_count": 0,
"rejected_count": 0,
"missed_count": 0,
"failed_count": 0,
"adoption_rate": 100.0,
"adoption_rate": 0,
"missed_trigger_count": 0,
"wrong_trigger_count": 0,
"bad_output_count": 0,
@@ -1344,7 +1345,7 @@
"review_overdue_count": 0,
"risk_band": "low",
"event_types": {
"skill_activation": 1
"review_event": 1
},
"failure_types": {},
"source_types": {
@@ -1619,7 +1620,7 @@
"status": "external_required",
"category": "external",
"owner": "Browser/Chrome/IDE/provider client integrator",
"current": "external source events 0; adoption samples 1",
"current": "external source events 0; adoption samples 0",
"objective": "Import production metadata-only events from a real external client into the local drift loop.",
"runbook": [
"python3 scripts/telemetry_native_host.py . --write-launcher /tmp/yao-telemetry-host.sh --write-manifest /tmp/yao-telemetry-host.json --allowed-origin chrome-extension://<extension-id>/",
@@ -1672,8 +1673,8 @@
"missing_submission_count": 4,
"invalid_submission_count": 0,
"source_check_count": 19,
"source_pass_count": 10,
"source_blocked_count": 9,
"source_pass_count": 9,
"source_blocked_count": 10,
"submitted_but_pending_count": 0,
"source_accepted_without_valid_submission_count": 0,
"overclaim_guard_active": true,
@@ -2099,7 +2100,7 @@
"status": "pending",
"source_status": "external_required",
"source_accepted": false,
"current": "external source events 0; adoption samples 1",
"current": "external source events 0; adoption samples 0",
"objective": "Import production metadata-only events from a real external client into the local drift loop.",
"runbook": [
"python3 scripts/telemetry_native_host.py . --write-launcher /tmp/yao-telemetry-host.sh --write-manifest /tmp/yao-telemetry-host.json --allowed-origin chrome-extension://<extension-id>/",
@@ -2136,7 +2137,7 @@
],
"observed_state": {
"external_source_events": 0,
"adoption_sample_count": 1,
"adoption_sample_count": 0,
"raw_content_allowed": false,
"risk_band": "low",
"accepted": false
@@ -2157,8 +2158,8 @@
"label": "Adoption sample",
"field": "adoption_sample_count",
"expected": ">0",
"actual": 1,
"status": "pass",
"actual": 0,
"status": "blocked",
"source_accepted": false,
"next_action": "Telemetry must include adoption outcome evidence."
},
@@ -2174,8 +2175,8 @@
}
],
"source_check_count": 3,
"source_pass_count": 2,
"source_blocked_count": 1,
"source_pass_count": 1,
"source_blocked_count": 2,
"submission_state": {
"status": "missing",
"path": "evidence/world_class/submissions/native-client-telemetry.json",
+1
View File
@@ -195,6 +195,7 @@
"scripts/world_class_human_evidence.py",
"scripts/world_class_native_permission_evidence.py",
"scripts/world_class_native_telemetry_evidence.py",
"scripts/world_class_phase_queue.py",
"scripts/world_class_preflight_layout.py",
"scripts/world_class_provider_evidence.py",
"scripts/world_class_repair_checklist.py",
+2 -2
View File
@@ -197,7 +197,7 @@
"key": "trust-security",
"label": "Trust Security",
"status": "pass",
"current": "secrets 0; scripts 149; help failures 0",
"current": "secrets 0; scripts 150; help failures 0",
"target": "Secrets, scripts, dependencies, permissions, and package hash are reviewable",
"evidence": [
{
@@ -285,7 +285,7 @@
"key": "registry-distribution",
"label": "Registry Distribution",
"status": "pass",
"current": "zip entries 688; install failures 0; permission failures 0",
"current": "zip entries 689; install failures 0; permission failures 0",
"target": "Package metadata, archive checksum, package verification, and install simulation pass",
"evidence": [
{
+2 -2
View File
@@ -23,11 +23,11 @@ Generated at: `2026-06-13`
| Human Adjudication | human-required | 0/5 decisions; pending 5 | Real reviewer decisions, blind-review attestation, and integrity fingerprints recorded before claiming output review completion | Record real A/B choices, reviewer metadata, and blind-review attestation, then regenerate adjudication. |
| Benchmark Reproducibility | pass | artifacts 25; missing 0; failures 3 | Public methodology, reproducible commands, required artifacts, and failure disclosure are machine-checkable | Keep the manifest current with every benchmark, package, and release evidence change. |
| Runtime Conformance | pass | 5/5 targets pass | Target package structure, metadata, relative paths, and degradation notes pass | Keep target conformance fixtures updated as platform contracts change. |
| Trust Security | pass | secrets 0; scripts 149; help failures 0 | Secrets, scripts, dependencies, permissions, and package hash are reviewable | Keep high-permission approvals scoped, expiring, and target-mapped. |
| Trust Security | pass | secrets 0; scripts 150; help failures 0 | Secrets, scripts, dependencies, permissions, and package hash are reviewable | Keep high-permission approvals scoped, expiring, and target-mapped. |
| Permission Metadata | pass | 4/4 target probes pass; metadata fallback 4; installer enforcement 4 | Packaged adapters expose explicit permission metadata, residual risks, and installer enforcement evidence when available | Preserve residual-risk notes until real native enforcement exists. |
| Native Permission Enforcement | external-required | native-enforced targets 0; installer-enforced targets 4 | At least one target/client enforces approved permissions at runtime | Integrate a real target-client or external installer runtime guard before claiming native permission enforcement. |
| Skill Atlas | pass | 12 skills; actionable collisions 0 | Workspace catalog, route overlap, stale/owner gaps, drift, and no-route opportunities | Feed real drift data into Atlas once client telemetry is installed. |
| Registry Distribution | pass | zip entries 688; install failures 0; permission failures 0 | Package metadata, archive checksum, package verification, and install simulation pass | Regenerate registry after package verification so checksums stay aligned. |
| Registry Distribution | pass | zip entries 689; install failures 0; permission failures 0 | Package metadata, archive checksum, package verification, and install simulation pass | Regenerate registry after package verification so checksums stay aligned. |
| Review Studio | pass | decision review; warnings 3; score 91 | One page shows gates, evidence paths, blockers, warnings, actions, waivers, and annotations | Resolve human/external warning gates before claiming full release readiness. |
| Telemetry Drift | pass | events 1; risk low; recipes 5 | Local-first metadata-only event contract, aggregate drift report, hook recipes, and import path | Keep raw JSONL out of distributed packages and use aggregate reports for Atlas. |
| Native Client Telemetry | external-required | external source events 0; adoption samples 1 | A real Browser/Chrome/provider client sends production metadata events | Install a real client against the native host and import production metadata-only events. |
+2 -2
View File
@@ -130,7 +130,7 @@
"label": "Trust Security",
"status": "pass",
"objective": "Scripts, dependencies, permissions, secrets, and package hash are reviewable for team distribution.",
"current": "149 scripts; secrets 0; help failures 0",
"current": "150 scripts; secrets 0; help failures 0",
"command": "python3 scripts/yao.py trust .",
"test": "python3 tests/verify_trust_check.py",
"evidence": [
@@ -204,7 +204,7 @@
"label": "Registry Distribution",
"status": "pass",
"objective": "Skill packages are installable, versioned, checksumed, and upgrade-reviewable.",
"current": "archive entries 688; install failures 0",
"current": "archive entries 689; install failures 0",
"command": "python3 scripts/yao.py package . --platform openai --platform claude --platform generic --platform vscode --output-dir dist --zip && python3 scripts/yao.py registry-audit .",
"test": "python3 tests/verify_registry_audit.py",
"evidence": [
+2 -2
View File
@@ -26,9 +26,9 @@ This report maps the Skill OS 2.0 upgrade blueprint to concrete local artifacts,
| Skill IR | `pass` | schema 2.0.0; targets 5 | `python3 scripts/yao.py skill-ir .` | `python3 tests/verify_skill_ir.py` |
| Output Eval Lab | `pass` | 5 cases; delta 100.0; execution 10 | `python3 scripts/yao.py output-exec . && python3 scripts/yao.py output-review .` | `python3 tests/verify_output_eval_lab.py` |
| Runtime Conformance | `pass` | 5/5 targets pass | `python3 scripts/yao.py conformance .` | `python3 tests/verify_conformance_suite.py` |
| Trust Security | `pass` | 149 scripts; secrets 0; help failures 0 | `python3 scripts/yao.py trust .` | `python3 tests/verify_trust_check.py` |
| Trust Security | `pass` | 150 scripts; secrets 0; help failures 0 | `python3 scripts/yao.py trust .` | `python3 tests/verify_trust_check.py` |
| Skill Atlas | `pass` | 12 scanned skills; actionable collisions 0 | `python3 scripts/yao.py skill-atlas --workspace-root .` | `python3 tests/verify_skill_atlas.py` |
| Registry Distribution | `pass` | archive entries 688; install failures 0 | `python3 scripts/yao.py package . --platform openai --platform claude --platform generic --platform vscode --output-dir dist --zip && python3 scripts/yao.py registry-audit .` | `python3 tests/verify_registry_audit.py` |
| Registry Distribution | `pass` | archive entries 689; install failures 0 | `python3 scripts/yao.py package . --platform openai --platform claude --platform generic --platform vscode --output-dir dist --zip && python3 scripts/yao.py registry-audit .` | `python3 tests/verify_registry_audit.py` |
| Review Studio | `pass` | 16 gates; decision review; warnings 3 | `python3 scripts/yao.py review-studio .` | `python3 tests/verify_review_studio.py` |
| Telemetry Drift | `pass` | events 1; recipes 5; risk low | `python3 scripts/yao.py telemetry-hooks . && python3 scripts/yao.py adoption-drift .` | `python3 tests/verify_telemetry_hooks.py` |
+2 -2
View File
@@ -70,12 +70,12 @@
{
"field": "archive_sha256",
"from": "",
"to": "0db54f7880460ee162ea2779554315c225ad912737660379c0c503f068c636e8"
"to": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
{
"field": "package_sha256",
"from": "0000000000000000000000000000000000000000000000000000000000000000",
"to": "6fbdbed9dfdc8d272caa0a6596312fa524796132dfb3c9e9e1a9cbc801729f59"
"to": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4"
}
]
},
+1 -1
View File
@@ -1,7 +1,7 @@
{
"schema_version": "1.0",
"ok": true,
"generated_at": "2026-06-17",
"generated_at": "2026-06-13",
"skill_dir": ".",
"summary": {
"evidence_item_count": 4,
+1 -1
View File
@@ -1,6 +1,6 @@
# World-Class Evidence Preflight
Generated at: `2026-06-17`
Generated at: `2026-06-13`
## Summary
@@ -9,6 +9,7 @@ from typing import Any
from render_world_class_evidence_intake import build_intake
from world_class_evidence_contract import DISALLOWED_REAL_ARTIFACTS
from world_class_phase_queue import build_phase_queue, summarize_phase_queue
from world_class_repair_checklist import build_repair_checklist, summarize_repair_checklist
from world_class_source_checks import build_source_checklist, summarize_source_checklist
from world_class_submission_matrix import build_evidence_matrix, summarize_evidence_matrix
@@ -410,6 +411,7 @@ def build_submission_kit(
source_checklist = build_source_checklist(items)
evidence_matrix = build_evidence_matrix(items, files, artifact_checklist, source_checklist)
repair_checklist = build_repair_checklist(items, files, artifact_checklist, source_checklist, unknown_keys)
phase_queue = build_phase_queue(repair_checklist)
manifest_path = output_dir / "submission_manifest.json"
readme_path = output_dir / "README.md"
output_html = output_html or (output_dir / "index.html")
@@ -428,6 +430,7 @@ def build_submission_kit(
source_summary = summarize_source_checklist(source_checklist)
matrix_summary = summarize_evidence_matrix(evidence_matrix)
repair_summary = summarize_repair_checklist(repair_checklist)
phase_queue_summary = summarize_phase_queue(phase_queue)
ok = not unknown_keys and skipped_count == 0
output_dir_arg = shell_path(output_dir, skill_dir)
requested_key_args = " ".join(f"--evidence-key {shlex.quote(key)}" for key in (evidence_keys or []))
@@ -478,6 +481,7 @@ def build_submission_kit(
**source_summary,
**matrix_summary,
**repair_summary,
**phase_queue_summary,
"handoff_step_count": len(handoff_steps),
"handoff_blocked_count": sum(1 for item in handoff_steps if item["status"] == "blocked"),
"handoff_fix_required_count": sum(1 for item in handoff_steps if item["status"] == "fix-required"),
@@ -492,6 +496,7 @@ def build_submission_kit(
"source_checklist": source_checklist,
"evidence_matrix": evidence_matrix,
"repair_checklist": repair_checklist,
"phase_queue": phase_queue,
"operator_handoff": handoff_steps,
"evidence_items": items,
"commands": commands,
+76
View File
@@ -0,0 +1,76 @@
#!/usr/bin/env python3
"""Build phase-ordered operator queues for world-class evidence collection."""
from collections import defaultdict
from typing import Any
SCRIPT_INTERFACE = "internal-module"
SCRIPT_INTERFACE_REASON = "Imported by prepare_world_class_submission_kit.py to group repair rows into an operator execution queue."
PHASE_LABELS = {
"select-evidence": "Select evidence",
"prepare-draft": "Prepare draft",
"unblock-access": "Unblock access",
"attach-artifacts": "Attach artifacts",
"collect-source": "Collect source",
"repair": "Repair",
}
def _phase_sort_key(row: dict[str, Any]) -> tuple[int, str, str]:
return (
int(row.get("priority", 90) or 90),
str(row.get("evidence_key", "")),
str(row.get("target", "")),
)
def build_phase_queue(repair_rows: list[dict[str, Any]]) -> list[dict[str, Any]]:
"""Group repair rows by execution phase without changing evidence acceptance."""
grouped: dict[str, list[dict[str, Any]]] = defaultdict(list)
for row in sorted(repair_rows, key=_phase_sort_key):
phase = str(row.get("phase", "repair") or "repair")
grouped[phase].append(row)
queue: list[dict[str, Any]] = []
for phase_rows in sorted(grouped.values(), key=lambda rows: _phase_sort_key(rows[0])):
first = phase_rows[0]
phase = str(first.get("phase", "repair") or "repair")
blocked_rows = [row for row in phase_rows if row.get("status") != "ready"]
owners = sorted({str(row.get("owner", "")).strip() for row in phase_rows if str(row.get("owner", "")).strip()})
evidence_keys = sorted(
{str(row.get("evidence_key", "")).strip() for row in phase_rows if str(row.get("evidence_key", "")).strip()}
)
queue.append(
{
"phase": phase,
"label": PHASE_LABELS.get(phase, phase.replace("-", " ").title()),
"priority": int(first.get("priority", 90) or 90),
"status": "blocked" if blocked_rows else "ready",
"blocked_count": len(blocked_rows),
"row_count": len(phase_rows),
"owners": owners,
"evidence_keys": evidence_keys,
"next_action_id": first.get("action_id", ""),
"next_action": first.get("next_action", ""),
"verification_command": first.get("verification_command", ""),
"counts_as_completion": False,
"rows": phase_rows,
}
)
return queue
def summarize_phase_queue(queue: list[dict[str, Any]]) -> dict[str, Any]:
next_item = next((item for item in queue if item.get("status") != "ready"), queue[0] if queue else {})
return {
"phase_queue_count": len(queue),
"phase_queue_blocked_count": sum(1 for item in queue if item.get("status") != "ready"),
"phase_queue_row_count": sum(int(item.get("row_count", 0) or 0) for item in queue),
"phase_queue_next_phase": next_item.get("phase", ""),
"phase_queue_next_action_id": next_item.get("next_action_id", ""),
"phase_queue_next_command": next_item.get("verification_command", ""),
"phase_queue_counts_as_completion": False,
}
@@ -47,6 +47,27 @@ def render_readme(report: dict[str, Any]) -> str:
lines.append(
f"| `{item['step_id']}` | `{item['status']}` | `{command}` | {item['completion_signal']} |"
)
lines.extend(
[
"",
"## Phase Queue",
"",
"This queue groups repair rows by execution phase so operators can clear access, artifact, and source blockers in order. Queue rows are procedural guidance only.",
"",
"| Phase | Status | Rows | Owners | Next action | Verify |",
"| --- | --- | ---: | --- | --- | --- |",
]
)
phase_queue = report.get("phase_queue", [])
if phase_queue:
for item in phase_queue:
owners = ", ".join(str(owner) for owner in item.get("owners", [])) or "n/a"
lines.append(
f"| `{item['phase']}` | `{item['status']}` | `{item['row_count']}` | {owners} | "
f"{item['next_action']} | `{item['verification_command']}` |"
)
else:
lines.append("| `all` | `ready` | `0` | n/a | No phase blockers were generated. | `n/a` |")
lines.extend(
[
"",
@@ -333,6 +354,42 @@ def render_html_repair_checklist(items: list[dict[str, Any]]) -> str:
)
def render_html_phase_queue(items: list[dict[str, Any]]) -> str:
if not items:
return '<p class="muted">No phase queue rows were generated.</p>'
return "".join(
"""
<article class="queue-card {status}">
<header>
<span>#{priority} · {status}</span>
<h3>{label}</h3>
</header>
<dl>
<dt>Phase</dt><dd><code>{phase}</code></dd>
<dt>Rows</dt><dd>{blocked}/{total} blocked</dd>
<dt>Owners</dt><dd>{owners}</dd>
<dt>Evidence</dt><dd>{evidence}</dd>
<dt>Next</dt><dd>{action}</dd>
<dt>Verify</dt><dd><code>{verify}</code></dd>
<dt>Counts</dt><dd>does not count as completion</dd>
</dl>
</article>
""".format(
status=html_text(item.get("status", "")),
priority=html_text(item.get("priority", "")),
label=html_text(item.get("label", "")),
phase=html_text(item.get("phase", "")),
blocked=html_text(item.get("blocked_count", 0)),
total=html_text(item.get("row_count", 0)),
owners=html_text(", ".join(str(owner) for owner in item.get("owners", [])) or "n/a"),
evidence=html_text(", ".join(str(key) for key in item.get("evidence_keys", [])) or "n/a"),
action=html_text(item.get("next_action", "")),
verify=html_text(item.get("verification_command", "")),
)
for item in items
)
def render_html_handoff(items: list[dict[str, Any]]) -> str:
if not items:
return '<p class="muted">No operator handoff steps were generated.</p>'
@@ -423,6 +480,7 @@ def render_html(report: dict[str, Any]) -> str:
evidence_html = "".join(render_html_item(item) for item in report.get("evidence_items", []))
matrix_html = render_html_matrix(report.get("evidence_matrix", []))
repair_html = render_html_repair_checklist(report.get("repair_checklist", []))
phase_queue_html = render_html_phase_queue(report.get("phase_queue", []))
handoff_html = render_html_handoff(report.get("operator_handoff", []))
artifact_html = render_html_artifact_checklist(report.get("artifact_checklist", []))
source_html = render_html_source_checklist(report.get("source_checklist", []))
@@ -458,14 +516,16 @@ def render_html(report: dict[str, Any]) -> str:
.section {{ padding:32px 0; border-bottom:1px solid var(--line); }}
.panel {{ padding:20px; }}
.two-col {{ display:grid; grid-template-columns:minmax(0, .45fr) minmax(0, 1fr); gap:18px; align-items:start; }}
.draft-grid, .evidence-grid, .artifact-grid, .source-grid, .matrix-grid, .repair-grid, .handoff-grid {{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; }}
.draft-card, .evidence-card, .artifact-card, .source-card, .matrix-card, .repair-card, .handoff-card {{ padding:18px; min-width:0; border:1px solid var(--line); border-radius:8px; background:#fff; }}
.draft-grid, .evidence-grid, .artifact-grid, .source-grid, .matrix-grid, .repair-grid, .handoff-grid, .queue-grid {{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; }}
.draft-card, .evidence-card, .artifact-card, .source-card, .matrix-card, .repair-card, .handoff-card, .queue-card {{ padding:18px; min-width:0; border:1px solid var(--line); border-radius:8px; background:#fff; }}
.draft-card.written, .draft-card.exists {{ border-left:4px solid var(--pass); }}
.draft-card.skipped {{ border-left:4px solid var(--warn); }}
.matrix-card.collect-source, .matrix-card.prepare-draft, .matrix-card.fix-artifacts, .matrix-card.fix-draft {{ border-left:4px solid var(--warn); }}
.matrix-card.validate-packet {{ border-left:4px solid var(--pass); }}
.repair-card.blocked {{ border-left:4px solid var(--warn); }}
.repair-card.ready {{ border-left:4px solid var(--pass); }}
.queue-card.blocked {{ border-left:4px solid var(--warn); }}
.queue-card.ready {{ border-left:4px solid var(--pass); }}
.handoff-card.blocked, .handoff-card.fix-required {{ border-left:4px solid var(--warn); }}
.handoff-card.ready {{ border-left:4px solid var(--pass); }}
.evidence-card.awaiting-submission, .evidence-card.fix-submission, .evidence-card.fix-template, .artifact-card.missing, .artifact-card.glob-no-match, .artifact-card.unsafe-path, .artifact-card.raw-content-disallowed {{ border-left:4px solid var(--warn); }}
@@ -485,11 +545,11 @@ def render_html(report: dict[str, Any]) -> str:
.mini-grid li, .runbook-panel li, .notice li {{ overflow-wrap:anywhere; }}
.notice {{ background:var(--soft); border-left:4px solid var(--ink); padding:16px; border-radius:8px; }}
.errors {{ color:var(--warn); }}
@media (max-width:820px) {{ .stats, .two-col, .draft-grid, .evidence-grid, .artifact-grid, .source-grid, .matrix-grid, .repair-grid, .handoff-grid, .mini-grid {{ grid-template-columns:1fr; }} h1 {{ font-size:38px; }} .topbar-inner {{ align-items:flex-start; flex-direction:column; }} }}
@media (max-width:820px) {{ .stats, .two-col, .draft-grid, .evidence-grid, .artifact-grid, .source-grid, .matrix-grid, .repair-grid, .handoff-grid, .queue-grid, .mini-grid {{ grid-template-columns:1fr; }} h1 {{ font-size:38px; }} .topbar-inner {{ align-items:flex-start; flex-direction:column; }} }}
</style>
</head>
<body>
<nav class="topbar"><div class="topbar-inner"><span class="brand">World-Class Kit</span><div class="links"><a href="#workflow">Workflow</a><a href="#handoff">Handoff</a><a href="#matrix">Matrix</a><a href="#repair">Repair</a><a href="#drafts">Drafts</a><a href="#artifacts">Artifacts</a><a href="#source">Source</a><a href="#evidence">Evidence</a><a href="#safety">Safety</a></div></div></nav>
<nav class="topbar"><div class="topbar-inner"><span class="brand">World-Class Kit</span><div class="links"><a href="#workflow">Workflow</a><a href="#handoff">Handoff</a><a href="#queue">Queue</a><a href="#matrix">Matrix</a><a href="#repair">Repair</a><a href="#drafts">Drafts</a><a href="#artifacts">Artifacts</a><a href="#source">Source</a><a href="#evidence">Evidence</a><a href="#safety">Safety</a></div></div></nav>
<main class="shell">
<section class="hero">
<span class="eyebrow">Evidence Intake</span>
@@ -502,6 +562,7 @@ def render_html(report: dict[str, Any]) -> str:
<aside class="panel"><h2>Commands</h2><ul class="commands">{render_html_commands(report['commands'])}</ul></aside>
</section>
<section class="section" id="handoff"><h2>Operator Handoff</h2><p class="muted">These ordered steps make the operator-to-reviewer handoff auditable. They are procedural guardrails and never count as world-class evidence.</p><div class="handoff-grid">{handoff_html}</div></section>
<section class="section" id="queue"><h2>Phase Queue</h2><p class="muted">Repair rows are grouped into execution phases so operators can clear the first blocker before moving to later evidence work. Queue rows remain procedural and never count as accepted evidence.</p><div class="queue-grid">{phase_queue_html}</div></section>
<section class="section" id="matrix"><h2>Evidence Matrix</h2><p class="muted">The matrix separates submission artifact_refs from supporting assets, then combines draft status, source checks, and the next operator action. It is guidance only and never counts as accepted evidence.</p><div class="matrix-grid">{matrix_html}</div></section>
<section class="section" id="repair"><h2>Repair Checklist</h2><p class="muted">Each row names one concrete blocker and the next action required before ledger review. This checklist does not count as completion evidence.</p><div class="repair-grid">{repair_html}</div></section>
<section class="section" id="drafts"><h2>Drafts</h2><div class="draft-grid">{render_html_files(report['files'])}</div></section>
+1
View File
@@ -151,6 +151,7 @@
"scripts/world_class_human_evidence.py",
"scripts/world_class_native_permission_evidence.py",
"scripts/world_class_native_telemetry_evidence.py",
"scripts/world_class_phase_queue.py",
"scripts/world_class_preflight_layout.py",
"scripts/world_class_provider_evidence.py",
"scripts/world_class_repair_checklist.py",
@@ -101,6 +101,13 @@ def main() -> None:
assert kit_payload["summary"]["repair_blocked_count"] == 2, kit_payload["summary"]
assert kit_payload["summary"]["repair_ready_count"] == 0, kit_payload["summary"]
assert kit_payload["summary"]["repair_phase_counts"] == {"collect-source": 2}, kit_payload["summary"]
assert kit_payload["summary"]["phase_queue_count"] == 1, kit_payload["summary"]
assert kit_payload["summary"]["phase_queue_blocked_count"] == 1, kit_payload["summary"]
assert kit_payload["summary"]["phase_queue_row_count"] == 2, kit_payload["summary"]
assert kit_payload["summary"]["phase_queue_next_phase"] == "collect-source", kit_payload["summary"]
assert kit_payload["summary"]["phase_queue_next_action_id"] == "provider-holdout-source-check-model_executed_count", kit_payload["summary"]
assert "output-exec --provider-runner openai" in kit_payload["summary"]["phase_queue_next_command"], kit_payload["summary"]
assert kit_payload["summary"]["phase_queue_counts_as_completion"] is False, kit_payload["summary"]
assert kit_payload["summary"]["next_repair_action_id"] == "provider-holdout-source-check-model_executed_count", kit_payload["summary"]
assert kit_payload["summary"]["next_repair_phase"] == "collect-source", kit_payload["summary"]
assert kit_payload["summary"]["next_repair_owner"] == "operator with provider credentials", kit_payload["summary"]
@@ -151,6 +158,17 @@ def main() -> None:
assert "real credentials" in repair_rows["model_executed_count"]["next_action"], repair_rows
assert "does not satisfy" in repair_rows["token_observed_count"]["blocking_reason"], repair_rows
assert len(kit_payload["phase_queue"]) == 1, kit_payload["phase_queue"]
queue_row = kit_payload["phase_queue"][0]
assert queue_row["phase"] == "collect-source", queue_row
assert queue_row["status"] == "blocked", queue_row
assert queue_row["row_count"] == 2, queue_row
assert queue_row["blocked_count"] == 2, queue_row
assert queue_row["owners"] == ["operator with provider credentials"], queue_row
assert queue_row["evidence_keys"] == ["provider-holdout"], queue_row
assert queue_row["counts_as_completion"] is False, queue_row
assert queue_row["rows"] == kit_payload["repair_checklist"], queue_row
handoff_steps = {item["step_id"]: item for item in kit_payload["operator_handoff"]}
assert list(handoff_steps) == [
"prepare-drafts",
@@ -204,6 +222,7 @@ def main() -> None:
assert kit_manifest["artifact_checklist"] == kit_payload["artifact_checklist"], kit_manifest["artifact_checklist"]
assert kit_manifest["source_checklist"] == kit_payload["source_checklist"], kit_manifest["source_checklist"]
assert kit_manifest["repair_checklist"] == kit_payload["repair_checklist"], kit_manifest["repair_checklist"]
assert kit_manifest["phase_queue"] == kit_payload["phase_queue"], kit_manifest["phase_queue"]
assert kit_manifest["artifacts"]["html"].endswith(
f"tests/{TMP.name}/submission_kit/index.html"
), kit_manifest["artifacts"]
@@ -216,6 +235,8 @@ def main() -> None:
assert "validate intake" in kit_readme, kit_readme
assert "Artifact Checklist" in kit_readme, kit_readme
assert "Evidence Matrix" in kit_readme, kit_readme
assert "Phase Queue" in kit_readme, kit_readme
assert "This queue groups repair rows by execution phase" in kit_readme, kit_readme
assert "Repair Checklist" in kit_readme, kit_readme
assert "Operator Handoff" in kit_readme, kit_readme
assert "Handoff rows are procedural" in kit_readme, kit_readme
@@ -226,6 +247,7 @@ def main() -> None:
assert "`submission-ref`" in kit_readme, kit_readme
assert "`supporting-evidence`" in kit_readme, kit_readme
assert "`collect-source`" in kit_readme, kit_readme
assert "Queue rows are procedural guidance only" in kit_readme, kit_readme
assert "Matrix rows are guidance only" in kit_readme, kit_readme
assert "Repair rows are procedural guidance and do not count as completion evidence." in kit_readme, kit_readme
assert "Source Evidence Snapshot" in kit_readme, kit_readme
@@ -239,6 +261,10 @@ def main() -> None:
assert "provider-holdout" in kit_html, kit_html
assert "Artifact Checklist" in kit_html, kit_html
assert "Evidence Matrix" in kit_html, kit_html
assert "Phase Queue" in kit_html, kit_html
assert "queue-card blocked" in kit_html, kit_html
assert "<dt>Phase</dt><dd><code>collect-source</code></dd>" in kit_html, kit_html
assert "<dt>Rows</dt><dd>2/2 blocked</dd>" in kit_html, kit_html
assert "Repair Checklist" in kit_html, kit_html
assert "<dt>Priority</dt>" in kit_html, kit_html
assert "<dt>Phase</dt>" in kit_html, kit_html