diff --git a/registry/index.json b/registry/index.json index 9bac6583..2f65c55f 100644 --- a/registry/index.json +++ b/registry/index.json @@ -1,6 +1,6 @@ { "schema_version": "2.0", - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "package_count": 1, "packages": [ { @@ -16,7 +16,7 @@ "vscode" ], "package_metadata": "registry/packages/yao-meta-skill.json", - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" } ] } diff --git a/registry/packages/yao-meta-skill.json b/registry/packages/yao-meta-skill.json index 333bcdd9..a935113d 100644 --- a/registry/packages/yao-meta-skill.json +++ b/registry/packages/yao-meta-skill.json @@ -16,8 +16,8 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e" + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365" }, "compatibility": { "openai": "pass", @@ -48,10 +48,10 @@ }, "distribution": { "archive_verified": true, - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "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" } diff --git a/reports/adaptation_proposals.json b/reports/adaptation_proposals.json index 92d2e4db..594c30d5 100644 --- a/reports/adaptation_proposals.json +++ b/reports/adaptation_proposals.json @@ -1,7 +1,7 @@ { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-16T19:29:04Z", + "generated_at": "2026-06-17", "skill_dir": ".", "source_patterns": "reports/user_patterns.json", "pattern_count": 5, diff --git a/reports/adaptation_proposals.md b/reports/adaptation_proposals.md index 9827cce3..974c14dc 100644 --- a/reports/adaptation_proposals.md +++ b/reports/adaptation_proposals.md @@ -1,6 +1,6 @@ # Adaptation Proposals -- Generated at: `2026-06-16T19:29:04Z` +- Generated at: `2026-06-17` - Pattern report: `reports/user_patterns.json` - Proposal only: `true` - Writes repository files: `false` diff --git a/reports/adoption_drift_report.json b/reports/adoption_drift_report.json index 1694e940..a423e3d0 100644 --- a/reports/adoption_drift_report.json +++ b/reports/adoption_drift_report.json @@ -1,7 +1,7 @@ { "ok": true, "schema_version": "2.0", - "generated_at": "2026-06-16T19:29:03Z", + "generated_at": "2026-06-17", "skill_dir": ".", "privacy_contract": { "storage": "local-first", diff --git a/reports/architecture_maintainability.json b/reports/architecture_maintainability.json index d337e57c..b10d2e5b 100644 --- a/reports/architecture_maintainability.json +++ b/reports/architecture_maintainability.json @@ -4,10 +4,10 @@ "generated_at": "2026-06-17", "skill_dir": ".", "summary": { - "python_file_count": 222, - "script_file_count": 147, + "python_file_count": 223, + "script_file_count": 148, "test_file_count": 75, - "internal_module_count": 63, + "internal_module_count": 64, "cli_script_count": 86, "command_handler_count": 68, "entrypoint_command_handler_count": 18, diff --git a/reports/architecture_maintainability.md b/reports/architecture_maintainability.md index b7dbfae9..f69586e3 100644 --- a/reports/architecture_maintainability.md +++ b/reports/architecture_maintainability.md @@ -5,10 +5,10 @@ Generated at: `2026-06-17` ## Summary - decision: `pass` -- python files: `222` -- scripts: `147` +- python files: `223` +- scripts: `148` - tests: `75` -- internal modules: `63` +- internal modules: `64` - CLI scripts: `86` - Yao CLI command handlers: `68` - entrypoint command handlers: `18` diff --git a/reports/benchmark_reproducibility.json b/reports/benchmark_reproducibility.json index 5f99bd58..30633801 100644 --- a/reports/benchmark_reproducibility.json +++ b/reports/benchmark_reproducibility.json @@ -3,24 +3,24 @@ "ok": true, "generated_at": "2026-06-17", "skill_dir": ".", - "commit": "00a8265b81dc32c1716dd5f8981981b164653e53", + "commit": "2241b0e344e896e26a1b8264a797e45665613b8b", "git_status": { "available": true, "dirty": true, - "changed_file_count": 79, + "changed_file_count": 51, "sample": [ - " M evidence/world_class/templates/human-adjudication.intake.json", " M registry/index.json", " M registry/packages/yao-meta-skill.json", " M reports/adaptation_proposals.json", " M reports/adaptation_proposals.md", " 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/context_budget.json" + " M reports/context_budget.json", + " M reports/context_budget.md", + " M reports/context_budget_summary.json" ], "scope": "generation-time status before this report is written" }, @@ -30,9 +30,9 @@ "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "bea191dfcbc87bd2a3c51e8538c3f47732e14d9e0e0f3849fdf99167cd219fe9", - "source_contract_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "evidence_bundle_sha256": "53b40cc3b316af766a9b69286dd55f46ce1dfb41f2d3e2af811d34a3f57c5f61", + "source_contract_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "output_case_count": 5, "failure_disclosure_count": 3, "command_count": 23, @@ -52,7 +52,7 @@ "public_claim_ready": false, "public_claim_blocker_count": 5, "working_tree_dirty": true, - "changed_file_count": 79 + "changed_file_count": 51 }, "public_claim": { "ready": false, @@ -68,7 +68,7 @@ }, "release_lock": { "ready": false, - "commit": "00a8265b81dc32c1716dd5f8981981b164653e53", + "commit": "2241b0e344e896e26a1b8264a797e45665613b8b", "status_scope": "generation-time status before this report is written", "reason": "working tree was dirty at generation time" }, @@ -78,7 +78,7 @@ "existing_count": 25, "missing_count": 0, "missing_paths": [], - "sha256": "bea191dfcbc87bd2a3c51e8538c3f47732e14d9e0e0f3849fdf99167cd219fe9" + "sha256": "53b40cc3b316af766a9b69286dd55f46ce1dfb41f2d3e2af811d34a3f57c5f61" }, "methodology": { "path": "reports/benchmark_methodology.md", @@ -151,8 +151,8 @@ "label": "output_execution", "path": "reports/output_execution_runs.json", "exists": true, - "bytes": 7965, - "sha256": "8d850b60e7fa97cf20e4eae2654b2cda34416d1e97982acaa873bdd1b96d3a0c" + "bytes": 7966, + "sha256": "baf406c10747ebb03a12f0bc74233c3e98cf1715bebfcdb450286ac1b2f5277f" }, { "label": "blind_review", @@ -186,43 +186,43 @@ "label": "trust_report", "path": "reports/security_trust_report.json", "exists": true, - "bytes": 133860, - "sha256": "cbaabbb1b82b870ead3a4ee8c51bcbbef9ef52f09a59c8a04407c20bebbadd4f" + "bytes": 134467, + "sha256": "875af23304269c89191e86f8c41e30cfbf5c9bf9603ae478c03bbc163b2a13ef" }, { "label": "python_compatibility", "path": "reports/python_compatibility.json", "exists": true, - "bytes": 29196, - "sha256": "f8e498d295db139c49e2ea51bd2cbdd52db61fa2b0bd008ef74135601d691895" + "bytes": 29327, + "sha256": "0eeedc1c3ff1fe5e2f9483387e3c56b44dda7eb1b615840afadfb8b55d392787" }, { "label": "registry_audit", "path": "reports/registry_audit.json", "exists": true, "bytes": 3183, - "sha256": "43644bc84a2e950dd68b76cb0c1d2b54994edf65583bbd409bbcc19921c0dc16" + "sha256": "8707b96ff516f0e52201e9b2fa3fbbc59fdfb3046d7d5f534eae47c780563a93" }, { "label": "package_verification", "path": "reports/package_verification.json", "exists": true, "bytes": 19338, - "sha256": "f9c6cdf1a7e033b7d80d13f90577f7ae5a269bf2bbb9165bff16d602d01055b7" + "sha256": "d8595fc2c41a897e607eae7a843bbdc28a2941b04d1e913ac9d2dbae233b7a2a" }, { "label": "install_simulation", "path": "reports/install_simulation.json", "exists": true, - "bytes": 8758, - "sha256": "c91884a915384363d4ea0339de5c9a3e37ede4356ad1069edf0ae6f880366cc7" + "bytes": 8604, + "sha256": "6d808df453177bf76362f218c41dcd7e41d56283b987f07e1e8fe47c1e9f02f5" }, { "label": "skill_os2_audit", "path": "reports/skill_os2_audit.json", "exists": true, "bytes": 14466, - "sha256": "7fe324525008e6c55a1ae245113004de0cc0f267337bc6154fa552bf95997c62" + "sha256": "b1c82626a1611c22c4d4cf3a6caa96a80355e9ecbdaee13a683456e648702406" }, { "label": "world_class_evidence_plan", diff --git a/reports/benchmark_reproducibility.md b/reports/benchmark_reproducibility.md index 240395e8..d38737c3 100644 --- a/reports/benchmark_reproducibility.md +++ b/reports/benchmark_reproducibility.md @@ -1,9 +1,9 @@ # Benchmark Reproducibility Generated at: `2026-06-17` -Commit: `00a8265b81dc32c1716dd5f8981981b164653e53` +Commit: `2241b0e344e896e26a1b8264a797e45665613b8b` Working tree dirty at generation: `true` -Evidence bundle SHA256: `bea191dfcbc87bd2a3c51e8538c3f47732e14d9e0e0f3849fdf99167cd219fe9` +Evidence bundle SHA256: `53b40cc3b316af766a9b69286dd55f46ce1dfb41f2d3e2af811d34a3f57c5f61` ## Summary @@ -12,8 +12,8 @@ Evidence bundle SHA256: `bea191dfcbc87bd2a3c51e8538c3f47732e14d9e0e0f3849fdf9916 - methodology complete: `true` - required artifacts: `25` - missing artifacts: `0` -- source contract sha256: `275f46e4ef0c` -- archive sha256: `563d37a1085a` +- source contract sha256: `6beb1e623996` +- archive sha256: `992401b48ffe` - output cases: `5` - disclosed failure cases: `3` - reproduction commands: `23` @@ -23,7 +23,7 @@ Evidence bundle SHA256: `bea191dfcbc87bd2a3c51e8538c3f47732e14d9e0e0f3849fdf9916 - world-class source checks: `9` pass / `19` total; `10` blocked - public claim ready: `false` - public claim blockers: `5` -- changed files at generation: `79` +- changed files at generation: `51` 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 is generation-time context; the evidence bundle SHA is the durable anchor for the artifacts listed below. @@ -51,7 +51,7 @@ This report proves local benchmark reproducibility only. It keeps external provi - algorithm: `sha256(path,label,exists,artifact_sha256)` - artifacts: `25` / `25` -- sha256: `bea191dfcbc87bd2a3c51e8538c3f47732e14d9e0e0f3849fdf99167cd219fe9` +- sha256: `53b40cc3b316af766a9b69286dd55f46ce1dfb41f2d3e2af811d34a3f57c5f61` ## Methodology Sections @@ -73,17 +73,17 @@ 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 | `8d850b60e7fa` | +| output_execution | `reports/output_execution_runs.json` | present | `baf406c10747` | | 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 | `cbaabbb1b82b` | -| python_compatibility | `reports/python_compatibility.json` | present | `f8e498d295db` | -| registry_audit | `reports/registry_audit.json` | present | `43644bc84a2e` | -| package_verification | `reports/package_verification.json` | present | `f9c6cdf1a7e0` | -| install_simulation | `reports/install_simulation.json` | present | `c91884a91538` | -| skill_os2_audit | `reports/skill_os2_audit.json` | present | `7fe324525008` | +| trust_report | `reports/security_trust_report.json` | present | `875af2330426` | +| python_compatibility | `reports/python_compatibility.json` | present | `0eeedc1c3ff1` | +| registry_audit | `reports/registry_audit.json` | present | `8707b96ff516` | +| package_verification | `reports/package_verification.json` | present | `d8595fc2c41a` | +| install_simulation | `reports/install_simulation.json` | present | `6d808df45317` | +| skill_os2_audit | `reports/skill_os2_audit.json` | present | `b1c82626a161` | | 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` | diff --git a/reports/context_budget.json b/reports/context_budget.json index 1179fda0..35b74c5a 100644 --- a/reports/context_budget.json +++ b/reports/context_budget.json @@ -6,16 +6,16 @@ "context_budget_tier": "production", "context_budget_limit": 1000, "skill_body_tokens": 797, - "other_text_tokens": 1102555, + "other_text_tokens": 1105271, "estimated_initial_load_tokens": 990, - "estimated_total_text_tokens": 1103352, - "deferred_resource_tokens": 501441, + "estimated_total_text_tokens": 1106068, + "deferred_resource_tokens": 503641, "deferred_resource_warn_threshold": 120000, "deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 440411, - "file_count": 147 + "estimated_tokens": 442611, + "file_count": 148 }, { "path": "references", @@ -36,8 +36,8 @@ "large_deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 440411, - "file_count": 147 + "estimated_tokens": 442611, + "file_count": 148 } ], "deferred_resource_governance": { @@ -59,14 +59,14 @@ ], "missing": [], "path": "scripts", - "estimated_tokens": 440411, - "file_count": 147, + "estimated_tokens": 442611, + "file_count": 148, "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": 698, + "relevant_file_count": 700, "unused_resource_dirs": [], "quality_signal_points": 130, "quality_density": 131.3 diff --git a/reports/context_budget.md b/reports/context_budget.md index 08939928..99c82eec 100644 --- a/reports/context_budget.md +++ b/reports/context_budget.md @@ -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 | 501441 | `governed` | scripts:440411 | 131.3 | - | ok | +| root | `.` | `production` | 1000 | 990 | 797 | 503641 | `governed` | scripts:442611 | 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 | diff --git a/reports/context_budget_summary.json b/reports/context_budget_summary.json index 5a2f95cc..01993340 100644 --- a/reports/context_budget_summary.json +++ b/reports/context_budget_summary.json @@ -8,12 +8,12 @@ "budget_limit": 1000, "initial_tokens": 990, "skill_body_tokens": 797, - "deferred_resource_tokens": 501441, + "deferred_resource_tokens": 503641, "large_deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 440411, - "file_count": 147 + "estimated_tokens": 442611, + "file_count": 148 } ], "deferred_resource_governance": { @@ -35,8 +35,8 @@ ], "missing": [], "path": "scripts", - "estimated_tokens": 440411, - "file_count": 147, + "estimated_tokens": 442611, + "file_count": 148, "rationale": "Script resources are deterministic deferred tools, not initial-load prompt context." } ], diff --git a/reports/evidence_consistency.json b/reports/evidence_consistency.json index a6080287..87e3c4a0 100644 --- a/reports/evidence_consistency.json +++ b/reports/evidence_consistency.json @@ -189,12 +189,12 @@ "status": "pass", "expected": { "status": "pass", - "detail": "initial load 990/1000; deferred 501441/120000; top deferred scripts 440411; resource governance governed; quality density 131.3", + "detail": "initial load 990/1000; deferred 503641/120000; top deferred scripts 442611; resource governance governed; quality density 131.3", "evidence": "reports/context_budget.json" }, "actual": { "status": "pass", - "detail": "initial load 990/1000; deferred 501441/120000; top deferred scripts 440411; resource governance governed; quality density 131.3", + "detail": "initial load 990/1000; deferred 503641/120000; top deferred scripts 442611; resource governance governed; quality density 131.3", "evidence": "reports/context_budget.json" }, "paths": [ @@ -222,7 +222,7 @@ "actual": { "available": true, "clean": false, - "changed_file_count": 79 + "changed_file_count": 52 }, "paths": [ "reports/benchmark_reproducibility.json" @@ -263,8 +263,8 @@ "key": "overview-benchmark-commit", "label": "overview embeds the benchmark commit", "status": "pass", - "expected": "00a8265b81dc32c1716dd5f8981981b164653e53", - "actual": "00a8265b81dc32c1716dd5f8981981b164653e53", + "expected": "2241b0e344e896e26a1b8264a797e45665613b8b", + "actual": "2241b0e344e896e26a1b8264a797e45665613b8b", "paths": [ "reports/benchmark_reproducibility.json", "reports/skill-overview.json" @@ -279,8 +279,8 @@ "release_lock_ready": false, "required_artifact_count": 25, "missing_artifact_count": 0, - "source_contract_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "source_contract_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "world_class_ledger_pending_count": 4, "world_class_source_check_count": 19, "world_class_source_pass_count": 9, @@ -292,8 +292,8 @@ "release_lock_ready": false, "required_artifact_count": 25, "missing_artifact_count": 0, - "source_contract_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "source_contract_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "world_class_ledger_pending_count": 4, "world_class_source_check_count": 19, "world_class_source_pass_count": 9, @@ -409,8 +409,8 @@ "key": "interpretation-benchmark-commit", "label": "interpretation embeds the benchmark commit", "status": "pass", - "expected": "00a8265b81dc32c1716dd5f8981981b164653e53", - "actual": "00a8265b81dc32c1716dd5f8981981b164653e53", + "expected": "2241b0e344e896e26a1b8264a797e45665613b8b", + "actual": "2241b0e344e896e26a1b8264a797e45665613b8b", "paths": [ "reports/benchmark_reproducibility.json", "reports/skill-interpretation.json" @@ -425,8 +425,8 @@ "release_lock_ready": false, "required_artifact_count": 25, "missing_artifact_count": 0, - "source_contract_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "source_contract_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "world_class_ledger_pending_count": 4, "world_class_source_check_count": 19, "world_class_source_pass_count": 9, @@ -438,8 +438,8 @@ "release_lock_ready": false, "required_artifact_count": 25, "missing_artifact_count": 0, - "source_contract_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "source_contract_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "world_class_ledger_pending_count": 4, "world_class_source_check_count": 19, "world_class_source_pass_count": 9, @@ -1529,7 +1529,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 147 + "file_count": 148 }, { "path": "evals", @@ -1544,7 +1544,7 @@ "file_count": 235 } ], - "file_count": 450, + "file_count": 451, "folder_count": 4, "distribution": [ { @@ -1569,7 +1569,7 @@ }, { "label": "scripts", - "value": 147 + "value": 148 }, { "label": "evals", @@ -1617,7 +1617,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 147 + "file_count": 148 }, { "path": "evals", @@ -1632,7 +1632,7 @@ "file_count": 235 } ], - "file_count": 450, + "file_count": 451, "folder_count": 4, "distribution": [ { @@ -1657,7 +1657,7 @@ }, { "label": "scripts", - "value": 147 + "value": 148 }, { "label": "evals", @@ -2421,10 +2421,10 @@ "score `91`", "`16` gates", "`3` warnings", - "`61` declared internal modules", - "`86 / 86` CLI help smoke checks passing across `147` scripts", - "`685` zip entries", - "archive with `685` entries", + "`62` declared internal modules", + "`86 / 86` CLI help smoke checks passing across `148` scripts", + "`686` zip entries", + "archive with `686` entries", "`12` installer permission checks enforced", "`0` permission failures", "`25` required artifacts", diff --git a/reports/install_simulation.json b/reports/install_simulation.json index 8545fa71..9f2bb1db 100644 --- a/reports/install_simulation.json +++ b/reports/install_simulation.json @@ -1,14 +1,14 @@ { "ok": true, "schema_version": "2.0", - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", - "package_dir": "tests/tmp_review_studio/dist", - "install_root": "tests/tmp_review_studio/install-root/simulate-yao-meta-skill", - "installed_skill_dir": "tests/tmp_review_studio/install-root/simulate-yao-meta-skill/yao-meta-skill", + "package_dir": "dist", + "install_root": "dist/install-simulation/simulate-yao-meta-skill", + "installed_skill_dir": "dist/install-simulation/simulate-yao-meta-skill/yao-meta-skill", "summary": { "archive_present": true, - "archive_entry_count": 685, + "archive_entry_count": 686, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -26,7 +26,7 @@ { "id": "archive-present", "status": "pass", - "detail": "Package archive exists: tests/tmp_review_studio/dist/yao-meta-skill.zip" + "detail": "Package archive exists: dist/yao-meta-skill.zip" }, { "id": "archive-safe-paths", @@ -272,9 +272,9 @@ "failures": [], "warnings": [], "artifacts": { - "archive": "tests/tmp_review_studio/dist/yao-meta-skill.zip", - "package_manifest": "tests/tmp_review_studio/dist/manifest.json", - "json": "tests/tmp_review_studio/install_simulation.json", - "markdown": "tests/tmp_review_studio/install_simulation.md" + "archive": "dist/yao-meta-skill.zip", + "package_manifest": "dist/manifest.json", + "json": "reports/install_simulation.json", + "markdown": "reports/install_simulation.md" } } diff --git a/reports/install_simulation.md b/reports/install_simulation.md index b0d16dae..6750e007 100644 --- a/reports/install_simulation.md +++ b/reports/install_simulation.md @@ -1,7 +1,7 @@ # Install Simulation - OK: `True` -- Package directory: `tests/tmp_review_studio/dist` +- Package directory: `dist` - Archive extracted: `True` - Entrypoint loaded: `True` - Manifest loaded: `True` @@ -16,7 +16,7 @@ | Check | Status | Detail | | --- | --- | --- | -| `archive-present` | `pass` | Package archive exists: tests/tmp_review_studio/dist/yao-meta-skill.zip | +| `archive-present` | `pass` | Package archive exists: dist/yao-meta-skill.zip | | `archive-safe-paths` | `pass` | Archive has no absolute or parent-traversal entries | | `single-top-level` | `pass` | Archive top-level directory is yao-meta-skill | | `entrypoint-load` | `pass` | Installed SKILL.md frontmatter is readable | diff --git a/reports/output_execution_runs.json b/reports/output_execution_runs.json index 16216763..d14a8f0e 100644 --- a/reports/output_execution_runs.json +++ b/reports/output_execution_runs.json @@ -34,7 +34,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.41, + "duration_ms": 26.64, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -62,7 +62,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.38, + "duration_ms": 25.53, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -85,7 +85,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 27.15, + "duration_ms": 25.6, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -113,7 +113,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.5, + "duration_ms": 27.48, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -136,7 +136,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.64, + "duration_ms": 28.04, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -164,7 +164,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.63, + "duration_ms": 25.52, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -187,7 +187,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.14, + "duration_ms": 25.73, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -214,7 +214,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.29, + "duration_ms": 35.71, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -237,7 +237,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.5, + "duration_ms": 29.02, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -266,7 +266,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 25.89, + "duration_ms": 27.32, "provider": "local-output-eval-runner", "model": "", "usage": { diff --git a/reports/output_execution_runs.md b/reports/output_execution_runs.md index b0f750be..e6e8f3ab 100644 --- a/reports/output_execution_runs.md +++ b/reports/output_execution_runs.md @@ -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 | 26.41 | 33 | 0.0 | pass | -| skill-package-contract | with_skill | command | local-output-eval-runner | 26.38 | 73 | 100.0 | pass | -| output-eval-expectation | baseline | command | local-output-eval-runner | 27.15 | 36 | 0.0 | pass | -| output-eval-expectation | with_skill | command | local-output-eval-runner | 26.5 | 80 | 100.0 | pass | -| ir-before-packaging | baseline | command | local-output-eval-runner | 26.64 | 33 | 0.0 | pass | -| ir-before-packaging | with_skill | command | local-output-eval-runner | 26.63 | 80 | 100.0 | pass | -| near-neighbor-boundary | baseline | command | local-output-eval-runner | 26.14 | 36 | 0.0 | pass | -| near-neighbor-boundary | with_skill | command | local-output-eval-runner | 26.29 | 65 | 100.0 | pass | -| file-backed-governed-package | baseline | command | local-output-eval-runner | 26.5 | 37 | 0.0 | pass | -| file-backed-governed-package | with_skill | command | local-output-eval-runner | 25.89 | 98 | 100.0 | pass | +| skill-package-contract | baseline | command | local-output-eval-runner | 26.64 | 33 | 0.0 | pass | +| skill-package-contract | with_skill | command | local-output-eval-runner | 25.53 | 73 | 100.0 | pass | +| output-eval-expectation | baseline | command | local-output-eval-runner | 25.6 | 36 | 0.0 | pass | +| output-eval-expectation | with_skill | command | local-output-eval-runner | 27.48 | 80 | 100.0 | pass | +| ir-before-packaging | baseline | command | local-output-eval-runner | 28.04 | 33 | 0.0 | pass | +| ir-before-packaging | with_skill | command | local-output-eval-runner | 25.52 | 80 | 100.0 | pass | +| near-neighbor-boundary | baseline | command | local-output-eval-runner | 25.73 | 36 | 0.0 | pass | +| near-neighbor-boundary | with_skill | command | local-output-eval-runner | 35.71 | 65 | 100.0 | pass | +| file-backed-governed-package | baseline | command | local-output-eval-runner | 29.02 | 37 | 0.0 | pass | +| file-backed-governed-package | with_skill | command | local-output-eval-runner | 27.32 | 98 | 100.0 | pass | ## Next Fixes diff --git a/reports/package_verification.json b/reports/package_verification.json index 5a3ef36c..cbf8bbef 100644 --- a/reports/package_verification.json +++ b/reports/package_verification.json @@ -8,8 +8,8 @@ "target_count": 4, "adapter_count": 4, "archive_present": true, - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", - "archive_entry_count": 685, + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", + "archive_entry_count": 686, "failure_count": 0, "warning_count": 0 }, diff --git a/reports/package_verification.md b/reports/package_verification.md index 3b333e0e..2ef6d62c 100644 --- a/reports/package_verification.md +++ b/reports/package_verification.md @@ -4,7 +4,7 @@ - Package directory: `dist` - Targets: `4 / 4` adapters present - Archive present: `True` -- Archive SHA256: `563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e` +- Archive SHA256: `992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365` - Failures: `0` - Warnings: `0` diff --git a/reports/python_compatibility.json b/reports/python_compatibility.json index 354e558e..30e1a7a1 100644 --- a/reports/python_compatibility.json +++ b/reports/python_compatibility.json @@ -5,7 +5,7 @@ "root": ".", "summary": { "target_python": "3.11", - "file_count": 225, + "file_count": 226, "issue_count": 0, "syntax_error_count": 0, "fstring_311_violation_count": 0, @@ -832,6 +832,12 @@ "issue_count": 0, "issues": [] }, + { + "path": "scripts/world_class_repair_checklist.py", + "ok": true, + "issue_count": 0, + "issues": [] + }, { "path": "scripts/world_class_source_checks.py", "ok": true, diff --git a/reports/python_compatibility.md b/reports/python_compatibility.md index 64ae5ed9..9fa98038 100644 --- a/reports/python_compatibility.md +++ b/reports/python_compatibility.md @@ -6,7 +6,7 @@ Generated at: `2026-06-17` - decision: `pass` - target python: `3.11` -- files scanned: `225` +- files scanned: `226` - issues: `0` - syntax errors: `0` - f-string 3.11 violations: `0` diff --git a/reports/registry_audit.json b/reports/registry_audit.json index 27746923..678ff2fa 100644 --- a/reports/registry_audit.json +++ b/reports/registry_audit.json @@ -21,8 +21,8 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e" + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365" }, "compatibility": { "openai": "pass", @@ -53,16 +53,16 @@ }, "distribution": { "archive_verified": true, - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "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" }, "index": { "schema_version": "2.0", - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "package_count": 1, "packages": [ { @@ -78,7 +78,7 @@ "vscode" ], "package_metadata": "registry/packages/yao-meta-skill.json", - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" } ] }, diff --git a/reports/registry_audit.md b/reports/registry_audit.md index 2d457cda..a1f1065a 100644 --- a/reports/registry_audit.md +++ b/reports/registry_audit.md @@ -6,8 +6,8 @@ - Maturity: `governed` - Owner: `Yao Team` - License: `MIT` -- Package SHA256: `275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8` -- Archive SHA256: `563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e` +- Package SHA256: `6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e` +- Archive SHA256: `992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365` - Install simulated: `True` ## Compatibility diff --git a/reports/review-studio.html b/reports/review-studio.html index b3523093..c514a265 100644 --- a/reports/review-studio.html +++ b/reports/review-studio.html @@ -740,12 +740,12 @@

核心指标

-
Skill IR2.0.0

5 targets in platform-neutral contract

Compiler5/5

target contracts compiled from Skill IR

Output Delta100.0

5 cases; 1 file-backed

Exec Runs10

command 10; model 0; recorded 0

Blind A/B5

review pairs hide baseline vs with-skill labels

Review Kit0/5

pending 5; answer key hidden

Review A/B0/5

adjudication decisions; pending 5

Public Claimblocked

5 blockers; local reproducible true

Blueprint21/21

2.0 coverage; extensions partial 0, planned 0; evidence pending 4

Runtime5/5

target conformance pass rate

Perm Probe4/4

0 native; 4 installer-enforced

Trust0

147 scripts scanned; secrets found

Py Compat0

225 files scanned for Python 3.11

Arch Debt0

696 largest lines; 0 watchlist; 3 early; 68 CLI handlers; 18 in entrypoint

Atlas5

12 scanned skills; route collisions

Driftlow

1 metadata events; 0 missed triggers

Daily Ops5

proposal-review; approval 0; release lock true

Weekly Queue5

curator-review; ready 1; top score 88

Waivers0

0 gates covered; human risk decisions

Intake4/4

0 valid submissions; 0 invalid

Claim Guard0

182 public surfaces scanned

Notes0/0

0 open blocker annotations

Registry1.1.0

5 targets; MIT license

Archivepass

685 zip entries; package verification

Installpass

4 adapters; 12 permissions enforced; 0 permission failures

Upgrademinor

declared minor; 0 breaking changes

+
Skill IR2.0.0

5 targets in platform-neutral contract

Compiler5/5

target contracts compiled from Skill IR

Output Delta100.0

5 cases; 1 file-backed

Exec Runs10

command 10; model 0; recorded 0

Blind A/B5

review pairs hide baseline vs with-skill labels

Review Kit0/5

pending 5; answer key hidden

Review A/B0/5

adjudication decisions; pending 5

Public Claimblocked

5 blockers; local reproducible true

Blueprint21/21

2.0 coverage; extensions partial 0, planned 0; evidence pending 4

Runtime5/5

target conformance pass rate

Perm Probe4/4

0 native; 4 installer-enforced

Trust0

148 scripts scanned; secrets found

Py Compat0

226 files scanned for Python 3.11

Arch Debt0

696 largest lines; 0 watchlist; 2 early; 68 CLI handlers; 18 in entrypoint

Atlas5

12 scanned skills; route collisions

Driftlow

1 metadata events; 0 missed triggers

Daily Ops5

proposal-review; approval 0; release lock false

Weekly Queue5

curator-review; ready 1; top score 88

Waivers0

0 gates covered; human risk decisions

Intake4/4

0 valid submissions; 0 invalid

Claim Guard0

182 public surfaces scanned

Notes0/0

0 open blocker annotations

Registry1.1.0

5 targets; MIT license

Archivepass

686 zip entries; package verification

Installpass

4 adapters; 12 permissions enforced; 0 permission failures

Upgrademinor

declared minor; 0 breaking changes

审查闸门

-
通过

意图画布

intent confidence 100/100; Intent is clear enough to package the first routeable version.

reports/intent-confidence.json 证据
通过

触发实验

13 trigger cases; 0 misroutes; 0 ambiguous

reports/route_scorecard.json 证据
关注

输出实验

5/5 cases; with-skill 100.0; baseline 0.0; file-backed 1; near-neighbor 1; blind A/B 5; exec 10; command 10; model 0; recorded 0; reviewed 0/5; review pending 5

reports/output_quality_scorecard.json 证据
通过

上下文

initial load 990/1000; deferred 501441/120000; top deferred scripts 440411; resource governance governed; quality density 131.3

reports/context_budget.json 证据
通过

运行矩阵

5 / 5 targets pass

reports/conformance_matrix.json 证据
通过

信任报告

0 secrets; 147 scripts; 3 network-capable scripts; 0 help smoke failures

reports/security_trust_report.json 证据
通过

Python 兼容

Python 3.11; 225 files; 0 compatibility issues; 0 syntax; 0 f-string 3.11 hazards

reports/python_compatibility.json 证据
通过

架构维护

222 Python files; 0 hotspots; 0 watchlist files; 3 early watch files; 0 blockers; largest 696 lines; 68 CLI handlers; 18 in entrypoint

reports/architecture_maintainability.json 证据
通过

权限批准

3/3 permissions approved; gaps 0; required file_write, network, subprocess

reports/security_trust_report.json + security/permission_policy.json 证据
通过

权限探针

4/4 targets probed; native 0; metadata fallback 4; installer 4; residual risks 4

reports/runtime_permission_probes.json 证据
通过

组合治理

12 skills, 1 actionable; 0 actionable route collisions; 0 actionable owner gaps; 0 actionable stale; 0 actionable drift; 24 scoped non-actionable issues

reports/skill_atlas.json 证据
通过

运营回路

1 metadata events; adoption 0; missed 0; bad-output 0; risk low; daily proposals 5; daily decision proposal-review; daily release lock true; weekly queue 5 unique; weekly ready 1; weekly top 88; weekly release lock false

reports/adoption_drift_report.json + reports/skillops/daily + reports/skillops/weekly 证据
关注

人工批准

0 active waivers; 1 warning gates still need reviewer decision

reports/review_waivers.json 证据
关注

世界证据

4 pending world-class evidence entries; 1 human pending; 3 external pending; source checks 9/19 pass; 10 blocked; overclaim guard true

reports/world_class_evidence_ledger.json 证据
通过

注册审计

yao-meta-skill 1.1.0; 6/6 compatibility entries pass; install pass with 4 adapters; installer permissions 12 enforced / 0 failures

reports/registry_audit.json + reports/install_simulation.json 证据
通过

发布路线

0 promote; 3 keep current; 0 blocked; upgrade minor declared / minor recommended

reports/promotion_decisions.json + reports/upgrade_check.json + docs/migration-v2.md 证据
+
通过

意图画布

intent confidence 100/100; Intent is clear enough to package the first routeable version.

reports/intent-confidence.json 证据
通过

触发实验

13 trigger cases; 0 misroutes; 0 ambiguous

reports/route_scorecard.json 证据
关注

输出实验

5/5 cases; with-skill 100.0; baseline 0.0; file-backed 1; near-neighbor 1; blind A/B 5; exec 10; command 10; model 0; recorded 0; reviewed 0/5; review pending 5

reports/output_quality_scorecard.json 证据
通过

上下文

initial load 990/1000; deferred 503641/120000; top deferred scripts 442611; resource governance governed; quality density 131.3

reports/context_budget.json 证据
通过

运行矩阵

5 / 5 targets pass

reports/conformance_matrix.json 证据
通过

信任报告

0 secrets; 148 scripts; 3 network-capable scripts; 0 help smoke failures

reports/security_trust_report.json 证据
通过

Python 兼容

Python 3.11; 226 files; 0 compatibility issues; 0 syntax; 0 f-string 3.11 hazards

reports/python_compatibility.json 证据
通过

架构维护

223 Python files; 0 hotspots; 0 watchlist files; 2 early watch files; 0 blockers; largest 696 lines; 68 CLI handlers; 18 in entrypoint

reports/architecture_maintainability.json 证据
通过

权限批准

3/3 permissions approved; gaps 0; required file_write, network, subprocess

reports/security_trust_report.json + security/permission_policy.json 证据
通过

权限探针

4/4 targets probed; native 0; metadata fallback 4; installer 4; residual risks 4

reports/runtime_permission_probes.json 证据
通过

组合治理

12 skills, 1 actionable; 0 actionable route collisions; 0 actionable owner gaps; 0 actionable stale; 0 actionable drift; 24 scoped non-actionable issues

reports/skill_atlas.json 证据
通过

运营回路

1 metadata events; adoption 0; missed 0; bad-output 0; risk low; daily proposals 5; daily decision proposal-review; daily release lock false; weekly queue 5 unique; weekly ready 1; weekly top 88; weekly release lock false

reports/adoption_drift_report.json + reports/skillops/daily + reports/skillops/weekly 证据
关注

人工批准

0 active waivers; 1 warning gates still need reviewer decision

reports/review_waivers.json 证据
关注

世界证据

4 pending world-class evidence entries; 1 human pending; 3 external pending; source checks 9/19 pass; 10 blocked; overclaim guard true

reports/world_class_evidence_ledger.json 证据
通过

注册审计

yao-meta-skill 1.1.0; 6/6 compatibility entries pass; install pass with 4 adapters; installer permissions 12 enforced / 0 failures

reports/registry_audit.json + reports/install_simulation.json 证据
通过

发布路线

0 promote; 3 keep current; 0 blocked; upgrade minor declared / minor recommended

@@ -812,17 +812,17 @@
-

上下文

initial load 990/1000; deferred 501441/120000; top deferred scripts 440411; resource governance governed; quality density 131.3

+

上下文

initial load 990/1000; deferred 503641/120000; top deferred scripts 442611; resource governance governed; quality density 131.3

编译证据

Review reports/compiled_targets.md before packaging to inspect target adapter modes, generated files, preserved semantics, warnings, and unsupported features.

-

信任报告

Secret
0
脚本数
147
网络脚本
3
Help 失败
0
包体哈希
275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8
+

信任报告

Secret
0
脚本数
148
网络脚本
3
Help 失败
0
包体哈希
6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e

安全边界

高风险 secret、远程 inline execution、缺失依赖策略或无法解释的脚本接口应阻断 governed release。

-

Python 兼容

目标 Python
3.11
文件数
225
问题数
0
语法错误
0
F-string 3.11
0
+

Python 兼容

目标 Python
3.11
文件数
226
问题数
0
语法错误
0
F-string 3.11
0

解释器边界

CI 和发布审查以 Python 3.11 兼容为底线;本地更高版本允许的新语法不能绕过兼容门禁。

@@ -842,13 +842,13 @@
-

运营回路

1 metadata events; adoption 0; missed 0; bad-output 0; risk low; daily proposals 5; daily decision proposal-review; daily release lock true; weekly queue 5 unique; weekly ready 1; weekly top 88; weekly release lock false

+

运营回路

1 metadata events; adoption 0; missed 0; bad-output 0; risk low; daily proposals 5; daily decision proposal-review; daily release lock false; weekly queue 5 unique; weekly ready 1; weekly top 88; weekly release lock false

漂移信号

事件数
1
采用率
0
漏触发
0
Bad Output Count
0
风险带
low
-

日常运维

决策
proposal-review
提案数
5
Approval Count
0
Pending Review Count
0
发布锁
世界级
Writes Source Files
Auto Patch Enabled
+

日常运维

决策
proposal-review
提案数
5
Approval Count
0
Pending Review Count
0
发布锁
世界级
Writes Source Files
Auto Patch Enabled

周度队列

决策
curator-review
Week Id
2026-W25
日报数
2
唯一机会
5
待批准复核
1
提案复核
4
Top Score
88
发布锁
Writes Source Files
Auto Patch Enabled
@@ -903,12 +903,12 @@

注册审计

yao-meta-skill 1.1.0; 6/6 compatibility entries pass; install pass with 4 adapters; installer permissions 12 enforced / 0 failures

-

包体元数据

名称
yao-meta-skill
版本
1.1.0
Maturity
governed
Owner
Yao Team
License
MIT
信任级别
local
目标平台
openai, claude, generic, agent-skills-compatible, vscode
兼容通过
6/6
归档哈希
563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e
+

包体元数据

名称
yao-meta-skill
版本
1.1.0
Maturity
governed
Owner
Yao Team
License
MIT
信任级别
local
目标平台
openai, claude, generic, agent-skills-compatible, vscode
兼容通过
6/6
归档哈希
992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365

发布路线

0 promote; 3 keep current; 0 blocked; upgrade minor declared / minor recommended

-

包体验证

目标数
4
Adapter
4
归档存在
Zip 条目
685
失败数
0
警告数
0
归档哈希
563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e
+

包体验证

目标数
4
Adapter
4
归档存在
Zip 条目
686
失败数
0
警告数
0
归档哈希
992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365
diff --git a/reports/review-studio.json b/reports/review-studio.json index ce7ffb0a..934e07dd 100644 --- a/reports/review-studio.json +++ b/reports/review-studio.json @@ -44,7 +44,7 @@ "key": "context-budget", "label": "上下文", "status": "pass", - "detail": "initial load 990/1000; deferred 501441/120000; top deferred scripts 440411; resource governance governed; quality density 131.3", + "detail": "initial load 990/1000; deferred 503641/120000; top deferred scripts 442611; resource governance governed; quality density 131.3", "evidence": "reports/context_budget.json", "link": "context_budget.md" }, @@ -60,7 +60,7 @@ "key": "trust-report", "label": "信任报告", "status": "pass", - "detail": "0 secrets; 147 scripts; 3 network-capable scripts; 0 help smoke failures", + "detail": "0 secrets; 148 scripts; 3 network-capable scripts; 0 help smoke failures", "evidence": "reports/security_trust_report.json", "link": "security_trust_report.md" }, @@ -68,7 +68,7 @@ "key": "python-compat", "label": "Python 兼容", "status": "pass", - "detail": "Python 3.11; 225 files; 0 compatibility issues; 0 syntax; 0 f-string 3.11 hazards", + "detail": "Python 3.11; 226 files; 0 compatibility issues; 0 syntax; 0 f-string 3.11 hazards", "evidence": "reports/python_compatibility.json", "link": "python_compatibility.md" }, @@ -76,7 +76,7 @@ "key": "architecture-maintainability", "label": "架构维护", "status": "pass", - "detail": "222 Python files; 0 hotspots; 0 watchlist files; 3 early watch files; 0 blockers; largest 696 lines; 68 CLI handlers; 18 in entrypoint", + "detail": "223 Python files; 0 hotspots; 0 watchlist files; 2 early watch files; 0 blockers; largest 696 lines; 68 CLI handlers; 18 in entrypoint", "evidence": "reports/architecture_maintainability.json", "link": "architecture_maintainability.md" }, @@ -108,7 +108,7 @@ "key": "operations-loop", "label": "运营回路", "status": "pass", - "detail": "1 metadata events; adoption 0; missed 0; bad-output 0; risk low; daily proposals 5; daily decision proposal-review; daily release lock true; weekly queue 5 unique; weekly ready 1; weekly top 88; weekly release lock false", + "detail": "1 metadata events; adoption 0; missed 0; bad-output 0; risk low; daily proposals 5; daily decision proposal-review; daily release lock false; weekly queue 5 unique; weekly ready 1; weekly top 88; weekly release lock false", "evidence": "reports/adoption_drift_report.json + reports/skillops/daily + reports/skillops/weekly", "link": "adoption_drift_report.md" }, @@ -1515,7 +1515,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 147 + "file_count": 148 }, { "path": "evals", @@ -1530,7 +1530,7 @@ "file_count": 235 } ], - "file_count": 450, + "file_count": 451, "folder_count": 4, "distribution": [ { @@ -1555,7 +1555,7 @@ }, { "label": "scripts", - "value": 147 + "value": 148 }, { "label": "evals", @@ -1685,7 +1685,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 147 + "file_count": 148 }, { "path": "evals", @@ -2011,9 +2011,9 @@ "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "bea191dfcbc87bd2a3c51e8538c3f47732e14d9e0e0f3849fdf99167cd219fe9", - "source_contract_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "evidence_bundle_sha256": "53b40cc3b316af766a9b69286dd55f46ce1dfb41f2d3e2af811d34a3f57c5f61", + "source_contract_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "output_case_count": 5, "failure_disclosure_count": 3, "command_count": 23, @@ -2033,9 +2033,9 @@ "public_claim_ready": false, "public_claim_blocker_count": 5, "working_tree_dirty": true, - "changed_file_count": 79 + "changed_file_count": 51 }, - "commit": "00a8265b81dc32c1716dd5f8981981b164653e53", + "commit": "2241b0e344e896e26a1b8264a797e45665613b8b", "missing_artifacts": [], "limitations": [ "The git commit and dirty flag are generation-time context; the evidence bundle hash is the durable artifact anchor inside a committed report.", @@ -2119,9 +2119,9 @@ "failures": [] }, "trust_security": { - "scanned_files": 239, - "script_count": 147, - "internal_module_count": 61, + "scanned_files": 240, + "script_count": 148, + "internal_module_count": 62, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -2139,8 +2139,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 239, - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "package_hash_file_count": 240, + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" }, "skill_atlas": { "skill_count": 12, @@ -2178,8 +2178,8 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e" + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365" }, "compatibility": { "openai": "pass", @@ -2210,12 +2210,12 @@ }, "distribution": { "archive_verified": true, - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "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": [] @@ -2226,8 +2226,8 @@ "target_count": 4, "adapter_count": 4, "archive_present": true, - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", - "archive_entry_count": 685, + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", + "archive_entry_count": 686, "failure_count": 0, "warning_count": 0 }, @@ -2238,7 +2238,7 @@ "ok": true, "summary": { "archive_present": true, - "archive_entry_count": 685, + "archive_entry_count": 686, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -2305,12 +2305,12 @@ { "field": "archive_sha256", "from": "", - "to": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e" + "to": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365" }, { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "to": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" } ] }, @@ -4824,7 +4824,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.41, + "duration_ms": 26.64, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4852,7 +4852,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.38, + "duration_ms": 25.53, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4875,7 +4875,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 27.15, + "duration_ms": 25.6, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4903,7 +4903,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.5, + "duration_ms": 27.48, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4926,7 +4926,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.64, + "duration_ms": 28.04, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4954,7 +4954,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.63, + "duration_ms": 25.52, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4977,7 +4977,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.14, + "duration_ms": 25.73, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -5004,7 +5004,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.29, + "duration_ms": 35.71, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -5027,7 +5027,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.5, + "duration_ms": 29.02, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -5056,7 +5056,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 25.89, + "duration_ms": 27.32, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -5837,24 +5837,24 @@ "ok": true, "generated_at": "2026-06-17", "skill_dir": ".", - "commit": "00a8265b81dc32c1716dd5f8981981b164653e53", + "commit": "2241b0e344e896e26a1b8264a797e45665613b8b", "git_status": { "available": true, "dirty": true, - "changed_file_count": 79, + "changed_file_count": 51, "sample": [ - " M evidence/world_class/templates/human-adjudication.intake.json", " M registry/index.json", " M registry/packages/yao-meta-skill.json", " M reports/adaptation_proposals.json", " M reports/adaptation_proposals.md", " 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/context_budget.json" + " M reports/context_budget.json", + " M reports/context_budget.md", + " M reports/context_budget_summary.json" ], "scope": "generation-time status before this report is written" }, @@ -5864,9 +5864,9 @@ "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "bea191dfcbc87bd2a3c51e8538c3f47732e14d9e0e0f3849fdf99167cd219fe9", - "source_contract_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "evidence_bundle_sha256": "53b40cc3b316af766a9b69286dd55f46ce1dfb41f2d3e2af811d34a3f57c5f61", + "source_contract_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "output_case_count": 5, "failure_disclosure_count": 3, "command_count": 23, @@ -5886,7 +5886,7 @@ "public_claim_ready": false, "public_claim_blocker_count": 5, "working_tree_dirty": true, - "changed_file_count": 79 + "changed_file_count": 51 }, "public_claim": { "ready": false, @@ -5902,7 +5902,7 @@ }, "release_lock": { "ready": false, - "commit": "00a8265b81dc32c1716dd5f8981981b164653e53", + "commit": "2241b0e344e896e26a1b8264a797e45665613b8b", "status_scope": "generation-time status before this report is written", "reason": "working tree was dirty at generation time" }, @@ -5912,7 +5912,7 @@ "existing_count": 25, "missing_count": 0, "missing_paths": [], - "sha256": "bea191dfcbc87bd2a3c51e8538c3f47732e14d9e0e0f3849fdf99167cd219fe9" + "sha256": "53b40cc3b316af766a9b69286dd55f46ce1dfb41f2d3e2af811d34a3f57c5f61" }, "methodology": { "path": "reports/benchmark_methodology.md", @@ -5985,8 +5985,8 @@ "label": "output_execution", "path": "reports/output_execution_runs.json", "exists": true, - "bytes": 7965, - "sha256": "8d850b60e7fa97cf20e4eae2654b2cda34416d1e97982acaa873bdd1b96d3a0c" + "bytes": 7966, + "sha256": "baf406c10747ebb03a12f0bc74233c3e98cf1715bebfcdb450286ac1b2f5277f" }, { "label": "blind_review", @@ -6020,43 +6020,43 @@ "label": "trust_report", "path": "reports/security_trust_report.json", "exists": true, - "bytes": 133860, - "sha256": "cbaabbb1b82b870ead3a4ee8c51bcbbef9ef52f09a59c8a04407c20bebbadd4f" + "bytes": 134467, + "sha256": "875af23304269c89191e86f8c41e30cfbf5c9bf9603ae478c03bbc163b2a13ef" }, { "label": "python_compatibility", "path": "reports/python_compatibility.json", "exists": true, - "bytes": 29196, - "sha256": "f8e498d295db139c49e2ea51bd2cbdd52db61fa2b0bd008ef74135601d691895" + "bytes": 29327, + "sha256": "0eeedc1c3ff1fe5e2f9483387e3c56b44dda7eb1b615840afadfb8b55d392787" }, { "label": "registry_audit", "path": "reports/registry_audit.json", "exists": true, "bytes": 3183, - "sha256": "43644bc84a2e950dd68b76cb0c1d2b54994edf65583bbd409bbcc19921c0dc16" + "sha256": "8707b96ff516f0e52201e9b2fa3fbbc59fdfb3046d7d5f534eae47c780563a93" }, { "label": "package_verification", "path": "reports/package_verification.json", "exists": true, "bytes": 19338, - "sha256": "f9c6cdf1a7e033b7d80d13f90577f7ae5a269bf2bbb9165bff16d602d01055b7" + "sha256": "d8595fc2c41a897e607eae7a843bbdc28a2941b04d1e913ac9d2dbae233b7a2a" }, { "label": "install_simulation", "path": "reports/install_simulation.json", "exists": true, - "bytes": 8758, - "sha256": "c91884a915384363d4ea0339de5c9a3e37ede4356ad1069edf0ae6f880366cc7" + "bytes": 8604, + "sha256": "6d808df453177bf76362f218c41dcd7e41d56283b987f07e1e8fe47c1e9f02f5" }, { "label": "skill_os2_audit", "path": "reports/skill_os2_audit.json", "exists": true, "bytes": 14466, - "sha256": "7fe324525008e6c55a1ae245113004de0cc0f267337bc6154fa552bf95997c62" + "sha256": "b1c82626a1611c22c4d4cf3a6caa96a80355e9ecbdaee13a683456e648702406" }, { "label": "world_class_evidence_plan", @@ -6388,7 +6388,7 @@ "label": "Trust Security", "status": "pass", "objective": "Scripts, dependencies, permissions, secrets, and package hash are reviewable for team distribution.", - "current": "147 scripts; secrets 0; help failures 0", + "current": "148 scripts; secrets 0; help failures 0", "command": "python3 scripts/yao.py trust .", "test": "python3 tests/verify_trust_check.py", "evidence": [ @@ -6462,7 +6462,7 @@ "label": "Registry Distribution", "status": "pass", "objective": "Skill packages are installable, versioned, checksumed, and upgrade-reviewable.", - "current": "archive entries 685; install failures 0", + "current": "archive entries 686; 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": [ @@ -12029,7 +12029,7 @@ "schema_version": "1.0", "ok": true, "skill_dir": ".", - "package_dir": "tests/tmp_review_studio/dist", + "package_dir": "dist", "expected_capabilities": [ "file_write", "network", @@ -12069,7 +12069,7 @@ { "target": "openai", "status": "pass", - "adapter": "tests/tmp_review_studio/dist/targets/openai/adapter.json", + "adapter": "dist/targets/openai/adapter.json", "permission_model": "metadata-only", "native_enforcement": false, "metadata_fallback_explicit": true, @@ -12166,7 +12166,7 @@ { "target": "claude", "status": "pass", - "adapter": "tests/tmp_review_studio/dist/targets/claude/adapter.json", + "adapter": "dist/targets/claude/adapter.json", "permission_model": "neutral-source-plus-adapter", "native_enforcement": false, "metadata_fallback_explicit": true, @@ -12248,7 +12248,7 @@ { "target": "generic", "status": "pass", - "adapter": "tests/tmp_review_studio/dist/targets/generic/adapter.json", + "adapter": "dist/targets/generic/adapter.json", "permission_model": "agent-skills-compatible-metadata", "native_enforcement": false, "metadata_fallback_explicit": true, @@ -12330,7 +12330,7 @@ { "target": "vscode", "status": "pass", - "adapter": "tests/tmp_review_studio/dist/targets/vscode/adapter.json", + "adapter": "dist/targets/vscode/adapter.json", "permission_model": "vscode-workspace-trust-plus-metadata", "native_enforcement": false, "metadata_fallback_explicit": true, @@ -12420,9 +12420,9 @@ "ok": true, "skill_dir": ".", "summary": { - "scanned_files": 239, - "script_count": 147, - "internal_module_count": 61, + "scanned_files": 240, + "script_count": 148, + "internal_module_count": 62, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -12440,8 +12440,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 239, - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "package_hash_file_count": 240, + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" }, "failures": [], "warnings": [], @@ -14312,6 +14312,20 @@ "network_urls": [], "network_hosts": [] }, + { + "path": "scripts/world_class_repair_checklist.py", + "interface": "internal-module", + "interface_declared": true, + "interface_reason": "Shared by submission kit generation to turn readiness blockers into actionable repair rows.", + "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_source_checks.py", "interface": "internal-module", @@ -14557,7 +14571,7 @@ "checked_count": 86, "passed_count": 86, "failed_count": 0, - "skipped_count": 61, + "skipped_count": 62, "failed_scripts": [], "results": [ { @@ -15610,6 +15624,10 @@ "path": "scripts/world_class_provider_evidence.py", "reason": "internal module" }, + { + "path": "scripts/world_class_repair_checklist.py", + "reason": "internal module" + }, { "path": "scripts/world_class_source_checks.py", "reason": "internal module" @@ -15862,7 +15880,7 @@ "root": ".", "summary": { "target_python": "3.11", - "file_count": 225, + "file_count": 226, "issue_count": 0, "syntax_error_count": 0, "fstring_311_violation_count": 0, @@ -16689,6 +16707,12 @@ "issue_count": 0, "issues": [] }, + { + "path": "scripts/world_class_repair_checklist.py", + "ok": true, + "issue_count": 0, + "issues": [] + }, { "path": "scripts/world_class_source_checks.py", "ok": true, @@ -17242,10 +17266,10 @@ "generated_at": "2026-06-17", "skill_dir": ".", "summary": { - "python_file_count": 222, - "script_file_count": 147, + "python_file_count": 223, + "script_file_count": 148, "test_file_count": 75, - "internal_module_count": 63, + "internal_module_count": 64, "cli_script_count": 86, "command_handler_count": 68, "entrypoint_command_handler_count": 18, @@ -17256,7 +17280,7 @@ "block_line_threshold": 1500, "largest_file_lines": 696, "watchlist_count": 0, - "early_watchlist_count": 3, + "early_watchlist_count": 2, "hotspot_count": 0, "blocker_count": 0, "decision": "pass" @@ -17280,10 +17304,10 @@ }, { "path": "tests/verify_output_review_adjudication.py", - "lines": 621, + "lines": 599, "kind": "test", "severity": "pass", - "early_watch": true, + "early_watch": false, "recommendation": "Break broad integration assertions into focused verifier helpers when the next behavior change lands." }, { @@ -17376,14 +17400,6 @@ "severity": "pass", "early_watch": true, "recommendation": "Break broad integration assertions into focused verifier helpers when the next behavior change lands." - }, - { - "path": "tests/verify_output_review_adjudication.py", - "lines": 621, - "kind": "test", - "severity": "pass", - "early_watch": true, - "recommendation": "Break broad integration assertions into focused verifier helpers when the next behavior change lands." } ], "hotspots": [], @@ -17401,16 +17417,16 @@ "context_budget_tier": "production", "context_budget_limit": 1000, "skill_body_tokens": 797, - "other_text_tokens": 1102555, + "other_text_tokens": 1105271, "estimated_initial_load_tokens": 990, - "estimated_total_text_tokens": 1103352, - "deferred_resource_tokens": 501441, + "estimated_total_text_tokens": 1106068, + "deferred_resource_tokens": 503641, "deferred_resource_warn_threshold": 120000, "deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 440411, - "file_count": 147 + "estimated_tokens": 442611, + "file_count": 148 }, { "path": "references", @@ -17431,8 +17447,8 @@ "large_deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 440411, - "file_count": 147 + "estimated_tokens": 442611, + "file_count": 148 } ], "deferred_resource_governance": { @@ -17454,14 +17470,14 @@ ], "missing": [], "path": "scripts", - "estimated_tokens": 440411, - "file_count": 147, + "estimated_tokens": 442611, + "file_count": 148, "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": 698, + "relevant_file_count": 700, "unused_resource_dirs": [], "quality_signal_points": 130, "quality_density": 131.3 @@ -18305,7 +18321,7 @@ }, "catalog": { "workspace_root": ".", - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skills": [ { "name": "yao-meta-skill", @@ -18457,6 +18473,7 @@ "scripts/world_class_native_telemetry_evidence.py", "scripts/world_class_preflight_layout.py", "scripts/world_class_provider_evidence.py", + "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", "scripts/world_class_submission_kit_rendering.py", "scripts/world_class_submission_matrix.py", @@ -18542,8 +18559,8 @@ "report": "reports/adoption_drift_report.json", "risk_band": "low", "event_count": 1, - "adoption_sample_count": 1, - "adoption_rate": 100.0, + "adoption_sample_count": 0, + "adoption_rate": 0, "candidate_count": 0 } }, @@ -19206,7 +19223,7 @@ "name": "incident-command-governor", "path": "examples/governed-incident-command/generated-skill", "reason": "review overdue by cadence monthly", - "age_days": 74, + "age_days": 78, "allowed_days": 31, "actionable": false, "scope": "example" @@ -19374,7 +19391,7 @@ "adoption_drift": { "ok": true, "schema_version": "2.0", - "generated_at": "2026-06-16T19:29:03Z", + "generated_at": "2026-06-17", "skill_dir": ".", "privacy_contract": { "storage": "local-first", @@ -19471,7 +19488,7 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true, "writes_source_files": false, "auto_patch_enabled": false, @@ -19488,7 +19505,7 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true, "writes_source_files": false, "auto_patch_enabled": false, @@ -19937,7 +19954,7 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true }, "actions": [ @@ -19972,7 +19989,7 @@ "weekly_curator": { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-16T19:29:04Z", + "generated_at": "2026-06-17", "skill_dir": ".", "decision": "curator-review", "week_id": "2026-W25", @@ -20437,7 +20454,7 @@ "adaptation_proposals": { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-16T19:29:04Z", + "generated_at": "2026-06-17", "skill_dir": ".", "source_patterns": "reports/user_patterns.json", "pattern_count": 5, @@ -24771,8 +24788,8 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e" + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365" }, "compatibility": { "openai": "pass", @@ -24803,16 +24820,16 @@ }, "distribution": { "archive_verified": true, - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "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" }, "index": { "schema_version": "2.0", - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "package_count": 1, "packages": [ { @@ -24828,7 +24845,7 @@ "vscode" ], "package_metadata": "registry/packages/yao-meta-skill.json", - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" } ] }, @@ -24851,8 +24868,8 @@ "target_count": 4, "adapter_count": 4, "archive_present": true, - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", - "archive_entry_count": 685, + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", + "archive_entry_count": 686, "failure_count": 0, "warning_count": 0 }, @@ -25510,14 +25527,14 @@ "install_simulation": { "ok": true, "schema_version": "2.0", - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", - "package_dir": "tests/tmp_review_studio/dist", - "install_root": "tests/tmp_review_studio/install-root/simulate-yao-meta-skill", - "installed_skill_dir": "tests/tmp_review_studio/install-root/simulate-yao-meta-skill/yao-meta-skill", + "package_dir": "dist", + "install_root": "dist/install-simulation/simulate-yao-meta-skill", + "installed_skill_dir": "dist/install-simulation/simulate-yao-meta-skill/yao-meta-skill", "summary": { "archive_present": true, - "archive_entry_count": 685, + "archive_entry_count": 686, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -25535,7 +25552,7 @@ { "id": "archive-present", "status": "pass", - "detail": "Package archive exists: tests/tmp_review_studio/dist/yao-meta-skill.zip" + "detail": "Package archive exists: dist/yao-meta-skill.zip" }, { "id": "archive-safe-paths", @@ -25781,16 +25798,16 @@ "failures": [], "warnings": [], "artifacts": { - "archive": "tests/tmp_review_studio/dist/yao-meta-skill.zip", - "package_manifest": "tests/tmp_review_studio/dist/manifest.json", - "json": "tests/tmp_review_studio/install_simulation.json", - "markdown": "tests/tmp_review_studio/install_simulation.md" + "archive": "dist/yao-meta-skill.zip", + "package_manifest": "dist/manifest.json", + "json": "reports/install_simulation.json", + "markdown": "reports/install_simulation.md" } }, "upgrade_check": { "ok": true, "schema_version": "2.0", - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "previous": { "name": "yao-meta-skill", "version": "1.0.0", @@ -25859,12 +25876,12 @@ { "field": "archive_sha256", "from": "", - "to": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e" + "to": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365" }, { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "to": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" } ] }, @@ -25879,8 +25896,8 @@ "artifacts": { "previous_package": "registry/examples/yao-meta-skill-1.0.0.json", "current_package": "reports/registry_audit.json", - "json": "tests/tmp_review_studio/upgrade_check.json", - "markdown": "tests/tmp_review_studio/upgrade_check.md" + "json": "reports/upgrade_check.json", + "markdown": "reports/upgrade_check.md" } }, "manifest": { diff --git a/reports/review-viewer.json b/reports/review-viewer.json index f1e808ca..d5e7fcfa 100644 --- a/reports/review-viewer.json +++ b/reports/review-viewer.json @@ -514,7 +514,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 147 + "file_count": 148 }, { "path": "evals", @@ -529,7 +529,7 @@ "file_count": 235 } ], - "file_count": 450, + "file_count": 451, "folder_count": 4, "distribution": [ { @@ -554,7 +554,7 @@ }, { "label": "scripts", - "value": 147 + "value": 148 }, { "label": "evals", @@ -684,7 +684,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 147 + "file_count": 148 }, { "path": "evals", @@ -1010,9 +1010,9 @@ "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "bea191dfcbc87bd2a3c51e8538c3f47732e14d9e0e0f3849fdf99167cd219fe9", - "source_contract_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "evidence_bundle_sha256": "53b40cc3b316af766a9b69286dd55f46ce1dfb41f2d3e2af811d34a3f57c5f61", + "source_contract_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "output_case_count": 5, "failure_disclosure_count": 3, "command_count": 23, @@ -1032,9 +1032,9 @@ "public_claim_ready": false, "public_claim_blocker_count": 5, "working_tree_dirty": true, - "changed_file_count": 79 + "changed_file_count": 51 }, - "commit": "00a8265b81dc32c1716dd5f8981981b164653e53", + "commit": "2241b0e344e896e26a1b8264a797e45665613b8b", "missing_artifacts": [], "limitations": [ "The git commit and dirty flag are generation-time context; the evidence bundle hash is the durable artifact anchor inside a committed report.", @@ -1118,9 +1118,9 @@ "failures": [] }, "trust_security": { - "scanned_files": 239, - "script_count": 147, - "internal_module_count": 61, + "scanned_files": 240, + "script_count": 148, + "internal_module_count": 62, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -1138,8 +1138,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 239, - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "package_hash_file_count": 240, + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" }, "skill_atlas": { "skill_count": 12, @@ -1177,8 +1177,8 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e" + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365" }, "compatibility": { "openai": "pass", @@ -1209,12 +1209,12 @@ }, "distribution": { "archive_verified": true, - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "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": [] @@ -1225,8 +1225,8 @@ "target_count": 4, "adapter_count": 4, "archive_present": true, - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", - "archive_entry_count": 685, + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", + "archive_entry_count": 686, "failure_count": 0, "warning_count": 0 }, @@ -1237,7 +1237,7 @@ "ok": true, "summary": { "archive_present": true, - "archive_entry_count": 685, + "archive_entry_count": 686, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -1304,12 +1304,12 @@ { "field": "archive_sha256", "from": "", - "to": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e" + "to": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365" }, { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "to": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" } ] }, diff --git a/reports/runtime_permission_probes.json b/reports/runtime_permission_probes.json index 59c9a1a4..9c2ffd6e 100644 --- a/reports/runtime_permission_probes.json +++ b/reports/runtime_permission_probes.json @@ -2,7 +2,7 @@ "schema_version": "1.0", "ok": true, "skill_dir": ".", - "package_dir": "tests/tmp_review_studio/dist", + "package_dir": "dist", "expected_capabilities": [ "file_write", "network", @@ -42,7 +42,7 @@ { "target": "openai", "status": "pass", - "adapter": "tests/tmp_review_studio/dist/targets/openai/adapter.json", + "adapter": "dist/targets/openai/adapter.json", "permission_model": "metadata-only", "native_enforcement": false, "metadata_fallback_explicit": true, @@ -139,7 +139,7 @@ { "target": "claude", "status": "pass", - "adapter": "tests/tmp_review_studio/dist/targets/claude/adapter.json", + "adapter": "dist/targets/claude/adapter.json", "permission_model": "neutral-source-plus-adapter", "native_enforcement": false, "metadata_fallback_explicit": true, @@ -221,7 +221,7 @@ { "target": "generic", "status": "pass", - "adapter": "tests/tmp_review_studio/dist/targets/generic/adapter.json", + "adapter": "dist/targets/generic/adapter.json", "permission_model": "agent-skills-compatible-metadata", "native_enforcement": false, "metadata_fallback_explicit": true, @@ -303,7 +303,7 @@ { "target": "vscode", "status": "pass", - "adapter": "tests/tmp_review_studio/dist/targets/vscode/adapter.json", + "adapter": "dist/targets/vscode/adapter.json", "permission_model": "vscode-workspace-trust-plus-metadata", "native_enforcement": false, "metadata_fallback_explicit": true, diff --git a/reports/security_trust_report.json b/reports/security_trust_report.json index cc1ca1dc..42bccdd5 100644 --- a/reports/security_trust_report.json +++ b/reports/security_trust_report.json @@ -2,9 +2,9 @@ "ok": true, "skill_dir": ".", "summary": { - "scanned_files": 239, - "script_count": 147, - "internal_module_count": 61, + "scanned_files": 240, + "script_count": 148, + "internal_module_count": 62, "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": 239, - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "package_hash_file_count": 240, + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" }, "failures": [], "warnings": [], @@ -1894,6 +1894,20 @@ "network_urls": [], "network_hosts": [] }, + { + "path": "scripts/world_class_repair_checklist.py", + "interface": "internal-module", + "interface_declared": true, + "interface_reason": "Shared by submission kit generation to turn readiness blockers into actionable repair rows.", + "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_source_checks.py", "interface": "internal-module", @@ -2139,7 +2153,7 @@ "checked_count": 86, "passed_count": 86, "failed_count": 0, - "skipped_count": 61, + "skipped_count": 62, "failed_scripts": [], "results": [ { @@ -3192,6 +3206,10 @@ "path": "scripts/world_class_provider_evidence.py", "reason": "internal module" }, + { + "path": "scripts/world_class_repair_checklist.py", + "reason": "internal module" + }, { "path": "scripts/world_class_source_checks.py", "reason": "internal module" diff --git a/reports/security_trust_report.md b/reports/security_trust_report.md index 7c7ac9d2..78072d36 100644 --- a/reports/security_trust_report.md +++ b/reports/security_trust_report.md @@ -1,9 +1,9 @@ # Security Trust Report - OK: `True` -- Scanned files: `239` -- Scripts: `147` -- Internal script modules: `61` +- Scanned files: `240` +- Scripts: `148` +- Internal script modules: `62` - 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: `239` -- Package SHA256: `275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8` +- Package hash files: `240` +- Package SHA256: `6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e` ## Failures @@ -194,6 +194,7 @@ | 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_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. | | scripts/world_class_source_checks.py | internal-module | True | False | False | False | False | False | False | Imported by world-class evidence reports to keep source-evidence readiness checks consistent. | | scripts/world_class_submission_kit_rendering.py | internal-module | True | False | False | False | False | False | False | Shared renderer for world-class submission kit Markdown and HTML artifacts. | | scripts/world_class_submission_matrix.py | internal-module | True | False | False | False | False | False | False | Shared by submission kit rendering to summarize draft, artifact, and source-check readiness. | diff --git a/reports/skill-interpretation.html b/reports/skill-interpretation.html index b35a3815..2b366b6e 100644 --- a/reports/skill-interpretation.html +++ b/reports/skill-interpretation.html @@ -940,7 +940,7 @@

让 reviewer 快速确认关键文件、目录和资产分布。Lets reviewers confirm key files, directories, and asset distribution quickly.

-
资产分布Asset Distribution450项450 itemsSKILL.mdSKILL.mdREADME.mdREADME.mdagents/interface.yamlagents/interface.yamlmanifest.jsonmanifest.jsonreferencesreferencesscriptsscripts
资产分布图展示当前包体的文件和目录重心。The asset distribution chart shows where files and directories are concentrated.
+
资产分布Asset Distribution451项451 itemsSKILL.mdSKILL.mdREADME.mdREADME.mdagents/interface.yamlagents/interface.yamlmanifest.jsonmanifest.jsonreferencesreferencesscriptsscripts
资产分布图展示当前包体的文件和目录重心。The asset distribution chart shows where files and directories are concentrated.
diff --git a/reports/skill-interpretation.json b/reports/skill-interpretation.json index 059ad33e..f57bb3ce 100644 --- a/reports/skill-interpretation.json +++ b/reports/skill-interpretation.json @@ -514,7 +514,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 147 + "file_count": 148 }, { "path": "evals", @@ -529,7 +529,7 @@ "file_count": 235 } ], - "file_count": 450, + "file_count": 451, "folder_count": 4, "distribution": [ { @@ -554,7 +554,7 @@ }, { "label": "scripts", - "value": 147 + "value": 148 }, { "label": "evals", @@ -688,7 +688,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 147 + "file_count": 148 }, { "path": "evals", @@ -1014,9 +1014,9 @@ "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "bea191dfcbc87bd2a3c51e8538c3f47732e14d9e0e0f3849fdf99167cd219fe9", - "source_contract_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "evidence_bundle_sha256": "53b40cc3b316af766a9b69286dd55f46ce1dfb41f2d3e2af811d34a3f57c5f61", + "source_contract_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "output_case_count": 5, "failure_disclosure_count": 3, "command_count": 23, @@ -1036,9 +1036,9 @@ "public_claim_ready": false, "public_claim_blocker_count": 5, "working_tree_dirty": true, - "changed_file_count": 79 + "changed_file_count": 51 }, - "commit": "00a8265b81dc32c1716dd5f8981981b164653e53", + "commit": "2241b0e344e896e26a1b8264a797e45665613b8b", "missing_artifacts": [], "limitations": [ "The git commit and dirty flag are generation-time context; the evidence bundle hash is the durable artifact anchor inside a committed report.", @@ -1122,9 +1122,9 @@ "failures": [] }, "trust_security": { - "scanned_files": 239, - "script_count": 147, - "internal_module_count": 61, + "scanned_files": 240, + "script_count": 148, + "internal_module_count": 62, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -1142,8 +1142,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 239, - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "package_hash_file_count": 240, + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" }, "skill_atlas": { "skill_count": 12, @@ -1181,8 +1181,8 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e" + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365" }, "compatibility": { "openai": "pass", @@ -1213,12 +1213,12 @@ }, "distribution": { "archive_verified": true, - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "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": [] @@ -1229,8 +1229,8 @@ "target_count": 4, "adapter_count": 4, "archive_present": true, - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", - "archive_entry_count": 685, + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", + "archive_entry_count": 686, "failure_count": 0, "warning_count": 0 }, @@ -1241,7 +1241,7 @@ "ok": true, "summary": { "archive_present": true, - "archive_entry_count": 685, + "archive_entry_count": 686, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -1308,12 +1308,12 @@ { "field": "archive_sha256", "from": "", - "to": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e" + "to": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365" }, { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "to": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" } ] }, diff --git a/reports/skill-os-2-review.md b/reports/skill-os-2-review.md index f612345c..2e99ce82 100644 --- a/reports/skill-os-2-review.md +++ b/reports/skill-os-2-review.md @@ -28,6 +28,7 @@ Yao Meta Skill is no longer only a Meta Skill factory. The current working tree - World-Class Native Permission Evidence Guard v0 so native-permission submissions must reconcile runtime probe summary counts with target rows, require at least one native-enforced target row, and keep installer permission checks failure-free. - World-Class Native Telemetry Evidence Guard v0 so native-client-telemetry submissions must reconcile adoption summary counts with external metadata event rows and keep hook recipes metadata-only without claiming native auto-capture. - World-Class Submission Matrix v0 so the submission kit exposes a single operator-facing matrix for draft status, artifact readiness, source-check blockers, and the next action without counting matrix rows as completion evidence. +- World-Class Repair Checklist v0 so the submission kit turns every draft, artifact, and source-check blocker into machine-readable repair rows without counting repair guidance as completion evidence. - World-Class Submission Artifact Roles v0 so submission kits distinguish `submission-ref` rows that belong in `artifact_refs` from supporting audit assets, reducing operator ambiguity without accepting evidence. - World-Class Submission Kit Rendering v0 so Markdown and HTML kit presentation lives in a dedicated internal renderer, keeping the CLI focused on evidence assembly and file emission. - Benchmark Reproducibility v0 that turns public benchmark methodology, required artifacts, failure disclosure, and reproduction commands into machine-checkable release evidence. @@ -58,7 +59,7 @@ Yao Meta Skill is no longer only a Meta Skill factory. The current working tree - Provider Output Eval Runner v0 so `python3 scripts/yao.py output-exec --provider-runner openai` can collect real provider-backed model evidence through a reviewed OpenAI Responses API compatible runner instead of ad hoc shell glue. - Weekly SkillOps Curator v0 so daily SkillOps opportunities, Skill Atlas portfolio signals, release-lock state, and world-class evidence gaps roll up into a proposal-only weekly maintenance queue without source-file writes. -This is still not the final world-class state. Target-native behavior contracts are now explicit, VS Code / Copilot package metadata is auditable, local output-eval command execution is wired, blind-review answers remain hidden until valid decisions exist, a provider-backed output runner exists, installer-level permission coverage is now locally enforced during install simulation and local install sync, opt-in `yao.py` CLI telemetry can capture metadata-only real run signals, external clients can now emit one validated metadata-only event into a local spool, hook recipes now make Browser/Chrome/VS Code/wrapper/provider-adapter integration commands auditable, a Browser/Chrome Native Messaging host can receive length-prefixed metadata events and generate a local launcher plus manifest, validated external JSONL imports can bring those non-CLI client signals into the same drift loop, and Skill Atlas now consumes aggregate drift reports. World-class intake now rejects non-canonical submission filenames and nested raw content or credential-like fields before ledger review. The submission kit now gives operators a matrix that ties each pending world-class evidence key to its draft, artifact readiness, source blockers, and next action. Review Studio keeps pending human adjudication and pending world-class evidence visible as warnings instead of treating them as a clean pass. Deeper provider-native execution transforms, installed platform-native client telemetry implementations, provider-native installer integration, real provider holdout runs, real human adjudication decisions, accepted external evidence, and native runtime permission enforcement remain open. +This is still not the final world-class state. Target-native behavior contracts are now explicit, VS Code / Copilot package metadata is auditable, local output-eval command execution is wired, blind-review answers remain hidden until valid decisions exist, a provider-backed output runner exists, installer-level permission coverage is now locally enforced during install simulation and local install sync, opt-in `yao.py` CLI telemetry can capture metadata-only real run signals, external clients can now emit one validated metadata-only event into a local spool, hook recipes now make Browser/Chrome/VS Code/wrapper/provider-adapter integration commands auditable, a Browser/Chrome Native Messaging host can receive length-prefixed metadata events and generate a local launcher plus manifest, validated external JSONL imports can bring those non-CLI client signals into the same drift loop, and Skill Atlas now consumes aggregate drift reports. World-class intake now rejects non-canonical submission filenames and nested raw content or credential-like fields before ledger review. The submission kit now gives operators a matrix and repair checklist that tie each pending world-class evidence key to its draft, artifact readiness, source blockers, and next action. Review Studio keeps pending human adjudication and pending world-class evidence visible as warnings instead of treating them as a clean pass. Deeper provider-native execution transforms, installed platform-native client telemetry implementations, provider-native installer integration, real provider holdout runs, real human adjudication decisions, accepted external evidence, and native runtime permission enforcement remain open. ## Coverage Matrix @@ -73,7 +74,7 @@ This is still not the final world-class state. Target-native behavior contracts | World-Class Evidence Plan | `scripts/render_world_class_evidence_plan.py`, `reports/world_class_evidence_plan.md`, `tests/verify_world_class_evidence_plan.py` | v0 landed | | World-Class Evidence Ledger | `scripts/render_world_class_evidence_ledger.py`, `reports/world_class_evidence_ledger.md`, `tests/verify_world_class_evidence_ledger.py` | v0 landed | | World-Class Evidence Intake | `scripts/world_class_evidence_contract.py`, `scripts/world_class_human_evidence.py`, `scripts/output_review_privacy.py`, `scripts/world_class_provider_evidence.py`, `scripts/world_class_native_permission_evidence.py`, `scripts/world_class_native_telemetry_evidence.py`, `scripts/render_world_class_evidence_intake.py`, `evidence/world_class/intake.schema.json`, `tests/verify_world_class_evidence_intake.py` with canonical filename, source-artifact validation, recursive human decision privacy and answer-key validation, provider run-row validation, native permission target-row validation, native telemetry event-row validation, nested raw-field rejection, and real-submission answer-key leakage rejection | v0 landed | -| World-Class Submission Kit | `scripts/prepare_world_class_submission_kit.py`, `scripts/world_class_submission_matrix.py`, `scripts/world_class_submission_kit_rendering.py`, `tests/verify_world_class_submission_kit.py` with draft, artifact, source-check, next-action matrix evidence, and separated Markdown/HTML rendering | v0 landed | +| World-Class Submission Kit | `scripts/prepare_world_class_submission_kit.py`, `scripts/world_class_submission_matrix.py`, `scripts/world_class_repair_checklist.py`, `scripts/world_class_submission_kit_rendering.py`, `tests/verify_world_class_submission_kit.py` with draft, artifact, source-check, next-action matrix evidence, machine-readable repair rows, and separated Markdown/HTML rendering | v0 landed | | Runtime Conformance | `scripts/run_conformance_suite.py`, `reports/conformance_matrix.md` | v0 landed | | Trust & Security | `scripts/trust_check.py`, `reports/security_trust_report.md`, `security/*.md` | v0 landed | | Review Studio 2.0 | `scripts/render_review_studio.py`, `reports/review-studio.html`, `reports/review-studio.json` with per-warning `review_actions` | v0 landed | @@ -133,13 +134,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, `61` declared internal modules, `3 / 3` network-capable scripts covered by bounded host policy, `86 / 86` CLI help smoke checks passing across `147` scripts, source-contract hash scope explicit | +| Trust | `0` secret findings, `1` pinned dependency file, `62` declared internal modules, `3 / 3` network-capable scripts covered by bounded host policy, `86 / 86` CLI help smoke checks passing across `148` 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, `685` zip entries, `0` failures, `0` warnings | -| Install Simulation | archive with `685` 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, `686` zip entries, `0` failures, `0` warnings | +| Install Simulation | archive with `686` 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 | diff --git a/reports/skill-overview.html b/reports/skill-overview.html index d7af7de3..3ef14565 100644 --- a/reports/skill-overview.html +++ b/reports/skill-overview.html @@ -940,7 +940,7 @@

让 reviewer 快速确认关键文件、目录和资产分布。Lets reviewers confirm key files, directories, and asset distribution quickly.

-
资产分布Asset Distribution450项450 itemsSKILL.mdSKILL.mdREADME.mdREADME.mdagents/interface.yamlagents/interface.yamlmanifest.jsonmanifest.jsonreferencesreferencesscriptsscripts
资产分布图展示当前包体的文件和目录重心。The asset distribution chart shows where files and directories are concentrated.
+
资产分布Asset Distribution451项451 itemsSKILL.mdSKILL.mdREADME.mdREADME.mdagents/interface.yamlagents/interface.yamlmanifest.jsonmanifest.jsonreferencesreferencesscriptsscripts
资产分布图展示当前包体的文件和目录重心。The asset distribution chart shows where files and directories are concentrated.
路径Path作用Role类型Type
SKILL.mdSkill 入口文件Skill entrypoint文件file
README.md人类可读使用说明Human-readable usage guide文件file
agents/interface.yaml跨平台接口元数据Neutral interface metadata文件file
manifest.json生命周期与打包元数据Lifecycle and portability metadata文件file
references扩展指导与复用资料Extended guidance and reusable notes目录folder
scripts确定性脚本或本地工具Deterministic helpers or local tooling目录folder
evals触发与质量检查Trigger and quality checks目录folder
reports生成的证据与总结报告Generated evidence and overview artifacts目录folder
diff --git a/reports/skill-overview.json b/reports/skill-overview.json index 1b47edbb..76821d69 100644 --- a/reports/skill-overview.json +++ b/reports/skill-overview.json @@ -513,7 +513,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 147 + "file_count": 148 }, { "path": "evals", @@ -528,7 +528,7 @@ "file_count": 235 } ], - "file_count": 450, + "file_count": 451, "folder_count": 4, "distribution": [ { @@ -553,7 +553,7 @@ }, { "label": "scripts", - "value": 147 + "value": 148 }, { "label": "evals", @@ -683,7 +683,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 147 + "file_count": 148 }, { "path": "evals", @@ -1009,9 +1009,9 @@ "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "bea191dfcbc87bd2a3c51e8538c3f47732e14d9e0e0f3849fdf99167cd219fe9", - "source_contract_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "evidence_bundle_sha256": "53b40cc3b316af766a9b69286dd55f46ce1dfb41f2d3e2af811d34a3f57c5f61", + "source_contract_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "output_case_count": 5, "failure_disclosure_count": 3, "command_count": 23, @@ -1031,9 +1031,9 @@ "public_claim_ready": false, "public_claim_blocker_count": 5, "working_tree_dirty": true, - "changed_file_count": 79 + "changed_file_count": 51 }, - "commit": "00a8265b81dc32c1716dd5f8981981b164653e53", + "commit": "2241b0e344e896e26a1b8264a797e45665613b8b", "missing_artifacts": [], "limitations": [ "The git commit and dirty flag are generation-time context; the evidence bundle hash is the durable artifact anchor inside a committed report.", @@ -1117,9 +1117,9 @@ "failures": [] }, "trust_security": { - "scanned_files": 239, - "script_count": 147, - "internal_module_count": 61, + "scanned_files": 240, + "script_count": 148, + "internal_module_count": 62, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -1137,8 +1137,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 239, - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "package_hash_file_count": 240, + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" }, "skill_atlas": { "skill_count": 12, @@ -1176,8 +1176,8 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8", - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e" + "package_sha256": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365" }, "compatibility": { "openai": "pass", @@ -1208,12 +1208,12 @@ }, "distribution": { "archive_verified": true, - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", "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": [] @@ -1224,8 +1224,8 @@ "target_count": 4, "adapter_count": 4, "archive_present": true, - "archive_sha256": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e", - "archive_entry_count": 685, + "archive_sha256": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365", + "archive_entry_count": 686, "failure_count": 0, "warning_count": 0 }, @@ -1236,7 +1236,7 @@ "ok": true, "summary": { "archive_present": true, - "archive_entry_count": 685, + "archive_entry_count": 686, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -1303,12 +1303,12 @@ { "field": "archive_sha256", "from": "", - "to": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e" + "to": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365" }, { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "to": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" } ] }, diff --git a/reports/skill_atlas.json b/reports/skill_atlas.json index 831ab79e..a057c482 100644 --- a/reports/skill_atlas.json +++ b/reports/skill_atlas.json @@ -44,7 +44,7 @@ }, "catalog": { "workspace_root": ".", - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skills": [ { "name": "yao-meta-skill", @@ -196,6 +196,7 @@ "scripts/world_class_native_telemetry_evidence.py", "scripts/world_class_preflight_layout.py", "scripts/world_class_provider_evidence.py", + "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", "scripts/world_class_submission_kit_rendering.py", "scripts/world_class_submission_matrix.py", @@ -281,8 +282,8 @@ "report": "reports/adoption_drift_report.json", "risk_band": "low", "event_count": 1, - "adoption_sample_count": 1, - "adoption_rate": 100.0, + "adoption_sample_count": 0, + "adoption_rate": 0, "candidate_count": 0 } }, @@ -945,7 +946,7 @@ "name": "incident-command-governor", "path": "examples/governed-incident-command/generated-skill", "reason": "review overdue by cadence monthly", - "age_days": 74, + "age_days": 78, "allowed_days": 31, "actionable": false, "scope": "example" diff --git a/reports/skill_os2_audit.json b/reports/skill_os2_audit.json index a4708b80..8d244cf6 100644 --- a/reports/skill_os2_audit.json +++ b/reports/skill_os2_audit.json @@ -197,7 +197,7 @@ "key": "trust-security", "label": "Trust Security", "status": "pass", - "current": "secrets 0; scripts 147; help failures 0", + "current": "secrets 0; scripts 148; 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 685; install failures 0; permission failures 0", + "current": "zip entries 686; install failures 0; permission failures 0", "target": "Package metadata, archive checksum, package verification, and install simulation pass", "evidence": [ { @@ -307,7 +307,7 @@ "key": "review-studio", "label": "Review Studio", "status": "pass", - "current": "decision review; warnings 3; score 91", + "current": "decision review; warnings 4; score 89", "target": "One page shows gates, evidence paths, blockers, warnings, actions, waivers, and annotations", "evidence": [ { diff --git a/reports/skill_os2_audit.md b/reports/skill_os2_audit.md index 0e782ab0..3d0afcae 100644 --- a/reports/skill_os2_audit.md +++ b/reports/skill_os2_audit.md @@ -23,12 +23,12 @@ Generated at: `2026-06-17` | 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 147; 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 148; 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 685; 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. | +| Registry Distribution | pass | zip entries 686; 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 4; score 89 | 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 0 | A real Browser/Chrome/provider client sends production metadata events | Install a real client against the native host and import production metadata-only events. | diff --git a/reports/skill_os2_coverage.json b/reports/skill_os2_coverage.json index 4e26b87f..305aeec1 100644 --- a/reports/skill_os2_coverage.json +++ b/reports/skill_os2_coverage.json @@ -130,7 +130,7 @@ "label": "Trust Security", "status": "pass", "objective": "Scripts, dependencies, permissions, secrets, and package hash are reviewable for team distribution.", - "current": "147 scripts; secrets 0; help failures 0", + "current": "148 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 685; install failures 0", + "current": "archive entries 686; 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": [ diff --git a/reports/skill_os2_coverage.md b/reports/skill_os2_coverage.md index ea862aaa..989e8735 100644 --- a/reports/skill_os2_coverage.md +++ b/reports/skill_os2_coverage.md @@ -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` | 147 scripts; secrets 0; help failures 0 | `python3 scripts/yao.py trust .` | `python3 tests/verify_trust_check.py` | +| Trust Security | `pass` | 148 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 685; 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 686; 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` | diff --git a/reports/skillops/daily/2026-06-17.json b/reports/skillops/daily/2026-06-17.json index 07080fcd..7ee010c4 100644 --- a/reports/skillops/daily/2026-06-17.json +++ b/reports/skillops/daily/2026-06-17.json @@ -14,7 +14,7 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true, "writes_source_files": false, "auto_patch_enabled": false, @@ -31,7 +31,7 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true, "writes_source_files": false, "auto_patch_enabled": false, @@ -480,7 +480,7 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true }, "actions": [ diff --git a/reports/skillops/daily/2026-06-17.md b/reports/skillops/daily/2026-06-17.md index 65caad51..5d6c937a 100644 --- a/reports/skillops/daily/2026-06-17.md +++ b/reports/skillops/daily/2026-06-17.md @@ -14,7 +14,7 @@ Generated at: `2026-06-17` - local blueprint ready: `true` - public world-class ready: `false` - world-class pending: `4` -- release lock ready: `true` +- release lock ready: `false` - evidence consistency ok: `true` This report is an operations cockpit for explicit-source SkillOps. It does not scan private logs, write source files, apply patches, or count as world-class external or human evidence. diff --git a/reports/skillops/weekly/2026-W25.json b/reports/skillops/weekly/2026-W25.json index dd7c37d9..8c1ed2f4 100644 --- a/reports/skillops/weekly/2026-W25.json +++ b/reports/skillops/weekly/2026-W25.json @@ -1,7 +1,7 @@ { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-16T19:29:04Z", + "generated_at": "2026-06-17", "skill_dir": ".", "decision": "curator-review", "week_id": "2026-W25", diff --git a/reports/skillops/weekly/2026-W25.md b/reports/skillops/weekly/2026-W25.md index 318764f4..e8b03e0e 100644 --- a/reports/skillops/weekly/2026-W25.md +++ b/reports/skillops/weekly/2026-W25.md @@ -1,6 +1,6 @@ # Weekly SkillOps Curator Report -Generated at: `2026-06-16T19:29:04Z` +Generated at: `2026-06-17` Week: `2026-W25` ## Summary diff --git a/reports/upgrade_check.json b/reports/upgrade_check.json index 46587f8f..a5180c7e 100644 --- a/reports/upgrade_check.json +++ b/reports/upgrade_check.json @@ -1,7 +1,7 @@ { "ok": true, "schema_version": "2.0", - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "previous": { "name": "yao-meta-skill", "version": "1.0.0", @@ -70,12 +70,12 @@ { "field": "archive_sha256", "from": "", - "to": "563d37a1085a9b598bca7b132da6c50c1233864855591085b260d4d4bb312a3e" + "to": "992401b48ffe5354fc67d493a44a5f6a2e93adf22d26b28d3ad291f5db813365" }, { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "275f46e4ef0c891b835b3d54dc5579f0abe9597877bd253b3b71b8608dd1f0b8" + "to": "6beb1e623996dc21a8b040d894e12a81fc4c70cc82641887f71c19933e34617e" } ] }, @@ -90,7 +90,7 @@ "artifacts": { "previous_package": "registry/examples/yao-meta-skill-1.0.0.json", "current_package": "reports/registry_audit.json", - "json": "tests/tmp_review_studio/upgrade_check.json", - "markdown": "tests/tmp_review_studio/upgrade_check.md" + "json": "reports/upgrade_check.json", + "markdown": "reports/upgrade_check.md" } } diff --git a/scripts/prepare_world_class_submission_kit.py b/scripts/prepare_world_class_submission_kit.py index bc462f11..b7107385 100644 --- a/scripts/prepare_world_class_submission_kit.py +++ b/scripts/prepare_world_class_submission_kit.py @@ -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_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 from world_class_submission_kit_rendering import render_html, render_readme @@ -408,6 +409,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) manifest_path = output_dir / "submission_manifest.json" readme_path = output_dir / "README.md" output_html = output_html or (output_dir / "index.html") @@ -425,6 +427,7 @@ def build_submission_kit( supporting_artifact_ready_count = sum(1 for item in supporting_rows if item.get("artifact_ref_ready")) source_summary = summarize_source_checklist(source_checklist) matrix_summary = summarize_evidence_matrix(evidence_matrix) + repair_summary = summarize_repair_checklist(repair_checklist) 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 [])) @@ -474,6 +477,7 @@ def build_submission_kit( "artifact_ref_unfilled_count": unfilled_artifact_ref_count, **source_summary, **matrix_summary, + **repair_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"), @@ -487,6 +491,7 @@ def build_submission_kit( "artifact_checklist": artifact_checklist, "source_checklist": source_checklist, "evidence_matrix": evidence_matrix, + "repair_checklist": repair_checklist, "operator_handoff": handoff_steps, "evidence_items": items, "commands": commands, diff --git a/scripts/world_class_repair_checklist.py b/scripts/world_class_repair_checklist.py new file mode 100644 index 00000000..b243c0d2 --- /dev/null +++ b/scripts/world_class_repair_checklist.py @@ -0,0 +1,154 @@ +#!/usr/bin/env python3 +"""Build machine-readable repair checklists for world-class submission kits.""" + +from collections import defaultdict +from typing import Any + + +SCRIPT_INTERFACE = "internal-module" +SCRIPT_INTERFACE_REASON = "Shared by submission kit generation to turn readiness blockers into actionable repair rows." + + +def _by_key(rows: list[dict[str, Any]], key_name: str = "evidence_key") -> dict[str, list[dict[str, Any]]]: + grouped: dict[str, list[dict[str, Any]]] = defaultdict(list) + for row in rows: + key = str(row.get(key_name, "")).strip() + if key: + grouped[key].append(row) + return dict(grouped) + + +def _repair_row( + *, + evidence_key: str, + repair_type: str, + target: str, + status: str, + blocking_reason: str, + next_action: str, + source: str, +) -> dict[str, Any]: + return { + "evidence_key": evidence_key, + "repair_type": repair_type, + "target": target, + "status": status, + "blocking_reason": blocking_reason, + "next_action": next_action, + "source": source, + "counts_as_completion": False, + } + + +def build_repair_checklist( + evidence_items: list[dict[str, Any]], + files: list[dict[str, Any]], + artifact_checklist: list[dict[str, Any]], + source_checklist: list[dict[str, Any]], + unknown_keys: list[str], +) -> list[dict[str, Any]]: + """Return concrete repair rows for every draft, artifact, and source blocker.""" + files_by_key = _by_key(files) + artifacts_by_key = _by_key(artifact_checklist) + sources_by_key = _by_key(source_checklist) + rows: list[dict[str, Any]] = [] + known_keys = [str(item.get("evidence_key", "")).strip() for item in evidence_items] + + for key in known_keys: + if not key: + continue + draft_rows = files_by_key.get(key, []) + if not draft_rows: + rows.append( + _repair_row( + evidence_key=key, + repair_type="draft", + target=key, + status="blocked", + blocking_reason="Submission draft was not generated.", + next_action="Run the submission kit command again for this evidence key.", + source="files", + ) + ) + for draft in draft_rows: + draft_status = str(draft.get("status", "")).strip() + if draft_status not in {"written", "exists"}: + target = str(draft.get("output_path") or draft.get("template_path") or key) + errors = draft.get("errors", []) + error_text = "; ".join(str(error) for error in errors) if isinstance(errors, list) else "" + rows.append( + _repair_row( + evidence_key=key, + repair_type="draft", + target=target, + status="blocked", + blocking_reason=error_text or f"Draft status is {draft_status or 'unknown'}.", + next_action="Fix template generation before asking for ledger review.", + source="files", + ) + ) + + for artifact in artifacts_by_key.get(key, []): + if artifact.get("artifact_ref_ready"): + continue + target = str(artifact.get("path") or artifact.get("source_pattern") or key) + artifact_status = str(artifact.get("status", "missing")) + role = str(artifact.get("artifact_role", "supporting-evidence")) + if artifact.get("concrete_reference_required"): + action = "Replace the glob with concrete files, then reference the generated SHA-256 digests." + elif artifact.get("submission_ref_required"): + action = "Create the required submission artifact or update artifact_refs to a concrete existing aggregate file." + else: + action = "Add the supporting artifact if it is needed for reviewer audit." + rows.append( + _repair_row( + evidence_key=key, + repair_type="artifact", + target=target, + status="blocked", + blocking_reason=f"{role} artifact is {artifact_status}.", + next_action=action, + source="artifact_checklist", + ) + ) + + for source in sources_by_key.get(key, []): + if source.get("status") == "pass": + continue + field = str(source.get("field") or source.get("label") or key) + rows.append( + _repair_row( + evidence_key=key, + repair_type="source-check", + target=field, + status="blocked", + blocking_reason=f"Current value {source.get('actual')!r} does not satisfy {source.get('expected')!r}.", + next_action=str(source.get("next_action") or "Collect the required source evidence."), + source="source_checklist", + ) + ) + + for key in unknown_keys: + rows.append( + _repair_row( + evidence_key=key, + repair_type="unknown-key", + target=key, + status="blocked", + blocking_reason="Requested evidence key is not present in the operator checklist.", + next_action="Use one of the evidence keys listed by world-class-intake.", + source="unknown_evidence_keys", + ) + ) + + return rows + + +def summarize_repair_checklist(rows: list[dict[str, Any]]) -> dict[str, Any]: + blocked_count = sum(1 for row in rows if row.get("status") != "ready") + return { + "repair_checklist_count": len(rows), + "repair_blocked_count": blocked_count, + "repair_ready_count": len(rows) - blocked_count, + "repair_counts_as_completion": False, + } diff --git a/scripts/world_class_submission_kit_rendering.py b/scripts/world_class_submission_kit_rendering.py index 1ad4ea39..97a17614 100644 --- a/scripts/world_class_submission_kit_rendering.py +++ b/scripts/world_class_submission_kit_rendering.py @@ -78,6 +78,26 @@ def render_readme(report: dict[str, Any]) -> str: f"`{item.get('supporting_artifact_ready_count', 0)}/{item.get('supporting_artifact_total_count', 0)}` | " f"`{item['source_pass_count']}/{item['source_check_count']}` | {item['next_action']} |" ) + lines.extend( + [ + "", + "## Repair Checklist", + "", + "This checklist turns every draft, artifact, and source blocker into a concrete repair row. Repair rows are procedural guidance and do not count as completion evidence.", + "", + "| Evidence | Type | Target | Status | Next action |", + "| --- | --- | --- | --- | --- |", + ] + ) + repair_rows = report.get("repair_checklist", []) + if repair_rows: + for item in repair_rows: + lines.append( + f"| `{item['evidence_key']}` | `{item['repair_type']}` | `{item['target']}` | " + f"`{item['status']}` | {item['next_action']} |" + ) + else: + lines.append("| `all` | `none` | `n/a` | `ready` | No repair rows were generated. |") lines.extend(["", "## Execution Runbook", ""]) for item in report.get("evidence_items", []): must_collect = item.get("must_collect", {}) if isinstance(item.get("must_collect", {}), dict) else {} @@ -276,6 +296,35 @@ def render_html_matrix(items: list[dict[str, Any]]) -> str: ) +def render_html_repair_checklist(items: list[dict[str, Any]]) -> str: + if not items: + return '

No repair rows were generated.

' + return "".join( + """ +
+
+ {key} · {repair_type} +

{target}

+
+
+
Status
{status}
+
Reason
{reason}
+
Action
{action}
+
Evidence
does not count as completion
+
+
+ """.format( + status=html_text(item.get("status", "")), + key=html_text(item.get("evidence_key", "")), + repair_type=html_text(item.get("repair_type", "")), + target=html_text(item.get("target", "")), + reason=html_text(item.get("blocking_reason", "")), + action=html_text(item.get("next_action", "")), + ) + for item in items + ) + + def render_html_handoff(items: list[dict[str, Any]]) -> str: if not items: return '

No operator handoff steps were generated.

' @@ -365,6 +414,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", [])) 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", [])) @@ -400,12 +450,14 @@ 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, .handoff-grid {{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; }} - .draft-card, .evidence-card, .artifact-card, .source-card, .matrix-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 {{ 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-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); }} .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); }} @@ -425,11 +477,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, .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, .mini-grid {{ grid-template-columns:1fr; }} h1 {{ font-size:38px; }} .topbar-inner {{ align-items:flex-start; flex-direction:column; }} }} - +
Evidence Intake @@ -443,6 +495,7 @@ def render_html(report: dict[str, Any]) -> str:

Operator Handoff

These ordered steps make the operator-to-reviewer handoff auditable. They are procedural guardrails and never count as world-class evidence.

{handoff_html}

Evidence Matrix

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.

{matrix_html}
+

Repair Checklist

Each row names one concrete blocker and the next action required before ledger review. This checklist does not count as completion evidence.

{repair_html}

Drafts

{render_html_files(report['files'])}

Artifact Checklist

Rows marked submission-ref are the paths expected in artifact_refs. Supporting-evidence rows help reviewers audit the packet but do not all need to be copied into the submission. Glob patterns are expanded for operator convenience only.

{artifact_html}

Source Evidence Snapshot

This section shows current aggregate source checks. It explains remaining blockers without changing the ledger.

{source_html}
diff --git a/skill_atlas/catalog.json b/skill_atlas/catalog.json index 55ab35dc..b54b7164 100644 --- a/skill_atlas/catalog.json +++ b/skill_atlas/catalog.json @@ -1,6 +1,6 @@ { "workspace_root": ".", - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skills": [ { "name": "yao-meta-skill", @@ -152,6 +152,7 @@ "scripts/world_class_native_telemetry_evidence.py", "scripts/world_class_preflight_layout.py", "scripts/world_class_provider_evidence.py", + "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", "scripts/world_class_submission_kit_rendering.py", "scripts/world_class_submission_matrix.py", @@ -237,8 +238,8 @@ "report": "reports/adoption_drift_report.json", "risk_band": "low", "event_count": 1, - "adoption_sample_count": 1, - "adoption_rate": 100.0, + "adoption_sample_count": 0, + "adoption_rate": 0, "candidate_count": 0 } }, diff --git a/skill_atlas/stale_skills.json b/skill_atlas/stale_skills.json index 6602e829..a81adcc3 100644 --- a/skill_atlas/stale_skills.json +++ b/skill_atlas/stale_skills.json @@ -24,7 +24,7 @@ "name": "incident-command-governor", "path": "examples/governed-incident-command/generated-skill", "reason": "review overdue by cadence monthly", - "age_days": 74, + "age_days": 78, "allowed_days": 31, "actionable": false, "scope": "example" diff --git a/tests/verify_world_class_submission_kit.py b/tests/verify_world_class_submission_kit.py index cda5ea40..8e92cad0 100644 --- a/tests/verify_world_class_submission_kit.py +++ b/tests/verify_world_class_submission_kit.py @@ -97,6 +97,10 @@ def main() -> None: assert kit_payload["summary"]["evidence_matrix_supporting_artifact_count"] >= 1, kit_payload["summary"] assert kit_payload["summary"]["evidence_matrix_supporting_artifact_ready_count"] >= 1, kit_payload["summary"] assert kit_payload["summary"]["evidence_matrix_counts_as_completion"] == 0, kit_payload["summary"] + assert kit_payload["summary"]["repair_checklist_count"] == 2, kit_payload["summary"] + 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_counts_as_completion"] is False, kit_payload["summary"] assert kit_payload["summary"]["handoff_step_count"] == 7, kit_payload["summary"] assert kit_payload["summary"]["handoff_blocked_count"] == 1, kit_payload["summary"] assert kit_payload["summary"]["handoff_fix_required_count"] == 0, kit_payload["summary"] @@ -127,6 +131,14 @@ def main() -> None: assert matrix_row["counts_as_completion"] is False, matrix_row assert "real credentials" in matrix_row["next_action"], matrix_row + repair_rows = {item["target"]: item for item in kit_payload["repair_checklist"]} + assert set(repair_rows) == {"model_executed_count", "token_observed_count"}, repair_rows + assert repair_rows["model_executed_count"]["repair_type"] == "source-check", repair_rows + assert repair_rows["model_executed_count"]["status"] == "blocked", repair_rows + assert repair_rows["model_executed_count"]["counts_as_completion"] is False, repair_rows + 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 + handoff_steps = {item["step_id"]: item for item in kit_payload["operator_handoff"]} assert list(handoff_steps) == [ "prepare-drafts", @@ -179,6 +191,7 @@ def main() -> None: assert kit_manifest["summary"]["artifact_ref_prefill_count"] == 0, kit_manifest["summary"] 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["artifacts"]["html"].endswith( f"tests/{TMP.name}/submission_kit/index.html" ), kit_manifest["artifacts"] @@ -191,6 +204,7 @@ 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 "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 assert "ledger_reviewed_at" in kit_readme, kit_readme @@ -201,7 +215,9 @@ def main() -> None: assert "`supporting-evidence`" in kit_readme, kit_readme assert "`collect-source`" 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 + assert "model_executed_count" in kit_readme, kit_readme assert "reports/output_execution_runs.json" in kit_readme, kit_readme assert "Provider model run" in kit_readme, kit_readme @@ -211,10 +227,12 @@ 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 "Repair Checklist" in kit_html, kit_html assert "Operator Handoff" in kit_html, kit_html assert "handoff-card blocked" in kit_html, kit_html assert "does not count as completion" in kit_html, kit_html assert "matrix-card collect-source" in kit_html, kit_html + assert "repair-card blocked" in kit_html, kit_html assert ( f"
Submission refs
{matrix_row['submission_ref_ready_count']}/{matrix_row['submission_ref_total_count']} ready
" in kit_html @@ -226,6 +244,7 @@ def main() -> None: assert "
Source
1/3 pass
" in kit_html, kit_html assert "Source Evidence Snapshot" in kit_html, kit_html assert "
Field
model_executed_count
" in kit_html, kit_html + assert "

model_executed_count

" in kit_html, kit_html assert "
Current
0
" in kit_html, kit_html assert "
Expected
>0
" in kit_html, kit_html assert "World-Class Evidence Submission Kit" in kit_html, kit_html diff --git a/tests/verify_yao_cli_world_class.py b/tests/verify_yao_cli_world_class.py index be65e3a5..f2646ac2 100644 --- a/tests/verify_yao_cli_world_class.py +++ b/tests/verify_yao_cli_world_class.py @@ -111,6 +111,12 @@ def main() -> None: assert kit_payload["summary"]["decision"] == "submission-kit-ready", world_class_submission_kit_result assert kit_payload["summary"]["written_count"] == 1, world_class_submission_kit_result assert kit_payload["summary"]["drafts_count_as_evidence"] is False, world_class_submission_kit_result + assert kit_payload["summary"]["repair_checklist_count"] == 2, world_class_submission_kit_result + assert kit_payload["summary"]["repair_counts_as_completion"] is False, world_class_submission_kit_result + assert {item["target"] for item in kit_payload["repair_checklist"]} == { + "model_executed_count", + "token_observed_count", + }, world_class_submission_kit_result assert kit_payload["artifacts"]["html"].endswith("tests/tmp_yao_cli_world_class/world_class_submission_kit.html"), world_class_submission_kit_result assert (TMP / "world_class_submission_kit" / "provider-holdout.json").exists(), world_class_submission_kit_result assert (TMP / "world_class_submission_kit" / "submission_manifest.json").exists(), world_class_submission_kit_result
路径Path作用Role类型Type
SKILL.mdSkill 入口文件Skill entrypoint文件file
README.md人类可读使用说明Human-readable usage guide文件file
agents/interface.yaml跨平台接口元数据Neutral interface metadata文件file
manifest.json生命周期与打包元数据Lifecycle and portability metadata文件file
references扩展指导与复用资料Extended guidance and reusable notes目录folder
scripts确定性脚本或本地工具Deterministic helpers or local tooling目录folder
evals触发与质量检查Trigger and quality checks目录folder
reports生成的证据与总结报告Generated evidence and overview artifacts目录folder