diff --git a/registry/index.json b/registry/index.json index f888bcd..84e7b03 100644 --- a/registry/index.json +++ b/registry/index.json @@ -16,7 +16,7 @@ "vscode" ], "package_metadata": "registry/packages/yao-meta-skill.json", - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" } ] } diff --git a/registry/packages/yao-meta-skill.json b/registry/packages/yao-meta-skill.json index 4476f55..5428787 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": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2" + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3" }, "compatibility": { "openai": "pass", @@ -48,7 +48,7 @@ }, "distribution": { "archive_verified": true, - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "package_verification": "reports/package_verification.json", "install_simulated": true, "install_simulation": "reports/install_simulation.json" diff --git a/reports/architecture_maintainability.json b/reports/architecture_maintainability.json index 5483228..bd0b8e2 100644 --- a/reports/architecture_maintainability.json +++ b/reports/architecture_maintainability.json @@ -4,10 +4,10 @@ "generated_at": "2026-06-16", "skill_dir": ".", "summary": { - "python_file_count": 200, - "script_file_count": 129, + "python_file_count": 201, + "script_file_count": 130, "test_file_count": 71, - "internal_module_count": 46, + "internal_module_count": 47, "cli_script_count": 85, "command_handler_count": 68, "entrypoint_command_handler_count": 18, @@ -16,7 +16,7 @@ "watch_line_threshold": 720, "block_line_threshold": 1500, "largest_file_lines": 852, - "watchlist_count": 4, + "watchlist_count": 3, "hotspot_count": 0, "blocker_count": 0, "decision": "pass" @@ -36,13 +36,6 @@ "severity": "pass", "recommendation": "Break broad integration assertions into focused verifier helpers when the next behavior change lands." }, - { - "path": "scripts/compile_skill.py", - "lines": 723, - "kind": "cli-script", - "severity": "pass", - "recommendation": "Watch this file before adding new responsibilities; extract a helper module when one concern dominates." - }, { "path": "scripts/optimize_description.py", "lines": 723, @@ -105,6 +98,13 @@ "kind": "cli-script", "severity": "pass", "recommendation": "Watch this file before adding new responsibilities; extract a helper module when one concern dominates." + }, + { + "path": "scripts/render_review_studio.py", + "lines": 647, + "kind": "cli-script", + "severity": "pass", + "recommendation": "Move data loading and large section renderers into focused review_studio_* modules." } ], "watchlist": [ @@ -122,13 +122,6 @@ "severity": "pass", "recommendation": "Break broad integration assertions into focused verifier helpers when the next behavior change lands." }, - { - "path": "scripts/compile_skill.py", - "lines": 723, - "kind": "cli-script", - "severity": "pass", - "recommendation": "Watch this file before adding new responsibilities; extract a helper module when one concern dominates." - }, { "path": "scripts/optimize_description.py", "lines": 723, diff --git a/reports/architecture_maintainability.md b/reports/architecture_maintainability.md index f253dad..0017216 100644 --- a/reports/architecture_maintainability.md +++ b/reports/architecture_maintainability.md @@ -5,17 +5,17 @@ Generated at: `2026-06-16` ## Summary - decision: `pass` -- python files: `200` -- scripts: `129` +- python files: `201` +- scripts: `130` - tests: `71` -- internal modules: `46` +- internal modules: `47` - CLI scripts: `85` - Yao CLI command handlers: `68` - entrypoint command handlers: `18` - command modules: `6` - largest file lines: `852` - watch threshold lines: `720` -- watchlist: `4` +- watchlist: `3` - hotspots: `0` - blockers: `0` @@ -31,7 +31,6 @@ No file-size hotspots found. | --- | ---: | --- | --- | | `tests/verify_review_studio.py` | `852` | `test` | Break broad integration assertions into focused verifier helpers when the next behavior change lands. | | `tests/verify_yao_cli.py` | `787` | `test` | Break broad integration assertions into focused verifier helpers when the next behavior change lands. | -| `scripts/compile_skill.py` | `723` | `cli-script` | Watch this file before adding new responsibilities; extract a helper module when one concern dominates. | | `scripts/optimize_description.py` | `723` | `cli-script` | Watch this file before adding new responsibilities; extract a helper module when one concern dominates. | ## Largest Files @@ -40,7 +39,6 @@ No file-size hotspots found. | --- | ---: | --- | --- | | `tests/verify_review_studio.py` | `852` | `test` | `pass` | | `tests/verify_yao_cli.py` | `787` | `test` | `pass` | -| `scripts/compile_skill.py` | `723` | `cli-script` | `pass` | | `scripts/optimize_description.py` | `723` | `cli-script` | `pass` | | `scripts/trust_check.py` | `714` | `internal-module` | `pass` | | `scripts/review_studio_gates.py` | `707` | `internal-module` | `pass` | @@ -50,6 +48,7 @@ No file-size hotspots found. | `scripts/skill_report_model.py` | `665` | `internal-module` | `pass` | | `tests/verify_world_class_evidence_intake.py` | `660` | `test` | `pass` | | `scripts/render_skill_os2_coverage.py` | `649` | `cli-script` | `pass` | +| `scripts/render_review_studio.py` | `647` | `cli-script` | `pass` | ## Release Rule diff --git a/reports/benchmark_reproducibility.json b/reports/benchmark_reproducibility.json index 774e13c..7eeb1bf 100644 --- a/reports/benchmark_reproducibility.json +++ b/reports/benchmark_reproducibility.json @@ -3,23 +3,36 @@ "ok": true, "generated_at": "2026-06-16", "skill_dir": ".", - "commit": "3e48ee1ad2cd05e58d5cf8e0f83af38530bdcda5", + "commit": "e0b66672f74cf628097355fd84a72af165f2440c", "git_status": { "available": true, - "dirty": false, - "changed_file_count": 0, - "sample": [], + "dirty": true, + "changed_file_count": 44, + "sample": [ + " M registry/index.json", + " M registry/packages/yao-meta-skill.json", + " 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.md", + " M reports/context_budget_summary.json", + " M reports/evidence_consistency.json", + " M reports/evidence_consistency.md", + " M reports/install_simulation.json" + ], "scope": "generation-time status before this report is written" }, "summary": { "reproducibility_ready": true, - "release_lock_ready": true, + "release_lock_ready": false, "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "f2becbf9a38c367c7fcb7448588bd418190838100942f7f75ea01b3f94e28b44", - "source_contract_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "evidence_bundle_sha256": "0e40cccb8f5de72083a28e8853b3fc884d2e7d96fefba5ce4a259cb6c3d566fb", + "source_contract_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "output_case_count": 5, "failure_disclosure_count": 3, "command_count": 23, @@ -37,14 +50,15 @@ "world_class_source_pass_count": 6, "world_class_source_blocked_count": 7, "public_claim_ready": false, - "public_claim_blocker_count": 4, - "working_tree_dirty": false, - "changed_file_count": 0 + "public_claim_blocker_count": 5, + "working_tree_dirty": true, + "changed_file_count": 44 }, "public_claim": { "ready": false, "scope": "public benchmark or world-class readiness claim", "blockers": [ + "release lock is not clean or commit is unavailable", "provider-backed model holdout evidence is incomplete", "human blind-review adjudication is incomplete", "world-class evidence is not accepted yet (4 open gaps, 4 ledger pending)", @@ -53,10 +67,10 @@ "policy": "Local reproducibility can pass before public claims; public claims require provider evidence, human adjudication, clean release lock, accepted world-class evidence, and complete source checks." }, "release_lock": { - "ready": true, - "commit": "3e48ee1ad2cd05e58d5cf8e0f83af38530bdcda5", + "ready": false, + "commit": "e0b66672f74cf628097355fd84a72af165f2440c", "status_scope": "generation-time status before this report is written", - "reason": "clean generation-time HEAD" + "reason": "working tree was dirty at generation time" }, "evidence_bundle": { "algorithm": "sha256(path,label,exists,artifact_sha256)", @@ -64,7 +78,7 @@ "existing_count": 25, "missing_count": 0, "missing_paths": [], - "sha256": "f2becbf9a38c367c7fcb7448588bd418190838100942f7f75ea01b3f94e28b44" + "sha256": "0e40cccb8f5de72083a28e8853b3fc884d2e7d96fefba5ce4a259cb6c3d566fb" }, "methodology": { "path": "reports/benchmark_methodology.md", @@ -137,8 +151,8 @@ "label": "output_execution", "path": "reports/output_execution_runs.json", "exists": true, - "bytes": 7967, - "sha256": "63796b27de1dcb8113559266e51221568b288d4d219681ec67e632e19379e227" + "bytes": 7966, + "sha256": "c11a575d231035c3ece411b402384e92703769ec146ed1ac0af76c73dd2ed28f" }, { "label": "blind_review", @@ -172,43 +186,43 @@ "label": "trust_report", "path": "reports/security_trust_report.json", "exists": true, - "bytes": 122795, - "sha256": "67eb112d62b9451b946da19c2450856514b7adb72370de8d7b37d5542f417b73" + "bytes": 123371, + "sha256": "33f8c904a6b85e7141452a15b101590300a5863f958b62d922d29d084400efce" }, { "label": "python_compatibility", "path": "reports/python_compatibility.json", "exists": true, - "bytes": 26363, - "sha256": "d16c0856acb6e722afee0354bb098b19ef8d276dcad00403fcccea6666d9a56b" + "bytes": 26487, + "sha256": "28cfd0264fda6ea6ceba911faa094003b2b0c0f6baf257e93dd36123e9ce918a" }, { "label": "registry_audit", "path": "reports/registry_audit.json", "exists": true, "bytes": 3183, - "sha256": "993abbb8ce9a36635468948ff961d5630b59ad89fb39eca34b36f4081c2e8539" + "sha256": "31b2d0371a2ac9c1c84517c1b286ef10c8768499aa77b977dde48c06783cf54e" }, { "label": "package_verification", "path": "reports/package_verification.json", "exists": true, "bytes": 19338, - "sha256": "88424a253c20166b6803b6ac3bdacd89c5c945a6fe693bcd1c13dafca2c8e148" + "sha256": "2805955a86d5bcac055e809fe094a43dd58c436e61f845fe4969d3e939a589b2" }, { "label": "install_simulation", "path": "reports/install_simulation.json", "exists": true, "bytes": 8604, - "sha256": "1164b24a460e27dae8d2c58f3eb7bedb0199367e05323573e559f49a922e7492" + "sha256": "736678ef798a0c21e7a25da7c2865f6c314093f7955a73ff853264e5dc001648" }, { "label": "skill_os2_audit", "path": "reports/skill_os2_audit.json", "exists": true, "bytes": 14310, - "sha256": "8699abf06379ffde0baa0d0316557fad330246f2c514c338e6f3f11a0dc7a806" + "sha256": "56d96bdccbfca7e4f98aaaabc67dccbd4260aec127c43977cf48a819365f9bf1" }, { "label": "world_class_evidence_plan", diff --git a/reports/benchmark_reproducibility.md b/reports/benchmark_reproducibility.md index acc8038..d0483c4 100644 --- a/reports/benchmark_reproducibility.md +++ b/reports/benchmark_reproducibility.md @@ -1,19 +1,19 @@ # Benchmark Reproducibility Generated at: `2026-06-16` -Commit: `3e48ee1ad2cd05e58d5cf8e0f83af38530bdcda5` -Working tree dirty at generation: `false` -Evidence bundle SHA256: `f2becbf9a38c367c7fcb7448588bd418190838100942f7f75ea01b3f94e28b44` +Commit: `e0b66672f74cf628097355fd84a72af165f2440c` +Working tree dirty at generation: `true` +Evidence bundle SHA256: `0e40cccb8f5de72083a28e8853b3fc884d2e7d96fefba5ce4a259cb6c3d566fb` ## Summary - reproducibility ready: `true` -- release lock ready: `true` +- release lock ready: `false` - methodology complete: `true` - required artifacts: `25` - missing artifacts: `0` -- source contract sha256: `70e1edf36e5f` -- archive sha256: `2f0203f197ad` +- source contract sha256: `e30f37d1ae30` +- archive sha256: `a96372e32dc1` - output cases: `5` - disclosed failure cases: `3` - reproduction commands: `23` @@ -22,8 +22,8 @@ Evidence bundle SHA256: `f2becbf9a38c367c7fcb7448588bd418190838100942f7f75ea01b3 - world-class ready: `false` - world-class source checks: `6` pass / `13` total; `7` blocked - public claim ready: `false` -- public claim blockers: `4` -- changed files at generation: `0` +- public claim blockers: `5` +- changed files at generation: `44` 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. @@ -35,6 +35,7 @@ This report proves local benchmark reproducibility only. It keeps external provi | Blocker | | --- | +| release lock is not clean or commit is unavailable | | provider-backed model holdout evidence is incomplete | | human blind-review adjudication is incomplete | | world-class evidence is not accepted yet (4 open gaps, 4 ledger pending) | @@ -42,15 +43,15 @@ This report proves local benchmark reproducibility only. It keeps external provi ## Release Lock -- ready: `true` -- reason: clean generation-time HEAD +- ready: `false` +- reason: working tree was dirty at generation time - status scope: generation-time status before this report is written ## Evidence Bundle - algorithm: `sha256(path,label,exists,artifact_sha256)` - artifacts: `25` / `25` -- sha256: `f2becbf9a38c367c7fcb7448588bd418190838100942f7f75ea01b3f94e28b44` +- sha256: `0e40cccb8f5de72083a28e8853b3fc884d2e7d96fefba5ce4a259cb6c3d566fb` ## Methodology Sections @@ -72,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 | `63796b27de1d` | +| output_execution | `reports/output_execution_runs.json` | present | `c11a575d2310` | | blind_review | `reports/output_blind_review_pack.json` | present | `bbe2db8ec277` | | review_adjudication | `reports/output_review_adjudication.json` | present | `bb8c72a9291e` | | trigger_scorecard | `reports/route_scorecard.json` | present | `c164e83e36d0` | | runtime_conformance | `reports/conformance_matrix.json` | present | `97f9ba949c23` | -| trust_report | `reports/security_trust_report.json` | present | `67eb112d62b9` | -| python_compatibility | `reports/python_compatibility.json` | present | `d16c0856acb6` | -| registry_audit | `reports/registry_audit.json` | present | `993abbb8ce9a` | -| package_verification | `reports/package_verification.json` | present | `88424a253c20` | -| install_simulation | `reports/install_simulation.json` | present | `1164b24a460e` | -| skill_os2_audit | `reports/skill_os2_audit.json` | present | `8699abf06379` | +| trust_report | `reports/security_trust_report.json` | present | `33f8c904a6b8` | +| python_compatibility | `reports/python_compatibility.json` | present | `28cfd0264fda` | +| registry_audit | `reports/registry_audit.json` | present | `31b2d0371a2a` | +| package_verification | `reports/package_verification.json` | present | `2805955a86d5` | +| install_simulation | `reports/install_simulation.json` | present | `736678ef798a` | +| skill_os2_audit | `reports/skill_os2_audit.json` | present | `56d96bdccbfc` | | world_class_evidence_plan | `reports/world_class_evidence_plan.json` | present | `130161495dc4` | | world_class_evidence_ledger | `reports/world_class_evidence_ledger.json` | present | `b8976c340da4` | | world_class_evidence_intake | `reports/world_class_evidence_intake.json` | present | `7f502f722ff1` | diff --git a/reports/context_budget.json b/reports/context_budget.json index 6980c5e..5b67d5c 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": 1052140, + "other_text_tokens": 1052541, "estimated_initial_load_tokens": 990, - "estimated_total_text_tokens": 1052937, - "deferred_resource_tokens": 487152, + "estimated_total_text_tokens": 1053338, + "deferred_resource_tokens": 487219, "deferred_resource_warn_threshold": 120000, "deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 427054, - "file_count": 129 + "estimated_tokens": 427121, + "file_count": 130 }, { "path": "references", @@ -36,8 +36,8 @@ "large_deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 427054, - "file_count": 129 + "estimated_tokens": 427121, + "file_count": 130 } ], "deferred_resource_governance": { @@ -59,14 +59,14 @@ ], "missing": [], "path": "scripts", - "estimated_tokens": 427054, - "file_count": 129, + "estimated_tokens": 427121, + "file_count": 130, "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": 646, + "relevant_file_count": 648, "unused_resource_dirs": [], "quality_signal_points": 130, "quality_density": 131.3 diff --git a/reports/context_budget.md b/reports/context_budget.md index 868b7ed..d6c893f 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 | 487152 | `governed` | scripts:427054 | 131.3 | - | ok | +| root | `.` | `production` | 1000 | 990 | 797 | 487219 | `governed` | scripts:427121 | 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 4e6e8cd..29dbdd0 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": 487152, + "deferred_resource_tokens": 487219, "large_deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 427054, - "file_count": 129 + "estimated_tokens": 427121, + "file_count": 130 } ], "deferred_resource_governance": { @@ -35,8 +35,8 @@ ], "missing": [], "path": "scripts", - "estimated_tokens": 427054, - "file_count": 129, + "estimated_tokens": 427121, + "file_count": 130, "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 b01823f..37de991 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 487152/120000; top deferred scripts 427054; resource governance governed; quality density 131.3", + "detail": "initial load 990/1000; deferred 487219/120000; top deferred scripts 427121; resource governance governed; quality density 131.3", "evidence": "reports/context_budget.json" }, "actual": { "status": "pass", - "detail": "initial load 990/1000; deferred 487152/120000; top deferred scripts 427054; resource governance governed; quality density 131.3", + "detail": "initial load 990/1000; deferred 487219/120000; top deferred scripts 427121; resource governance governed; quality density 131.3", "evidence": "reports/context_budget.json" }, "paths": [ @@ -207,8 +207,8 @@ "key": "benchmark-release-lock-self-consistency", "label": "Benchmark release lock matches git dirty state", "status": "pass", - "expected": true, - "actual": true, + "expected": false, + "actual": false, "paths": [ "reports/benchmark_reproducibility.json" ], @@ -248,8 +248,8 @@ "key": "overview-benchmark-commit", "label": "overview embeds the benchmark commit", "status": "pass", - "expected": "3e48ee1ad2cd05e58d5cf8e0f83af38530bdcda5", - "actual": "3e48ee1ad2cd05e58d5cf8e0f83af38530bdcda5", + "expected": "e0b66672f74cf628097355fd84a72af165f2440c", + "actual": "e0b66672f74cf628097355fd84a72af165f2440c", "paths": [ "reports/benchmark_reproducibility.json", "reports/skill-overview.json" @@ -261,30 +261,30 @@ "label": "overview embeds benchmark summary fields", "status": "pass", "expected": { - "release_lock_ready": true, + "release_lock_ready": false, "required_artifact_count": 25, "missing_artifact_count": 0, - "source_contract_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "source_contract_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "world_class_ledger_pending_count": 4, "world_class_source_check_count": 13, "world_class_source_pass_count": 6, "world_class_source_blocked_count": 7, "public_claim_ready": false, - "public_claim_blocker_count": 4 + "public_claim_blocker_count": 5 }, "actual": { - "release_lock_ready": true, + "release_lock_ready": false, "required_artifact_count": 25, "missing_artifact_count": 0, - "source_contract_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "source_contract_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "world_class_ledger_pending_count": 4, "world_class_source_check_count": 13, "world_class_source_pass_count": 6, "world_class_source_blocked_count": 7, "public_claim_ready": false, - "public_claim_blocker_count": 4 + "public_claim_blocker_count": 5 }, "paths": [ "reports/benchmark_reproducibility.json", @@ -394,8 +394,8 @@ "key": "interpretation-benchmark-commit", "label": "interpretation embeds the benchmark commit", "status": "pass", - "expected": "3e48ee1ad2cd05e58d5cf8e0f83af38530bdcda5", - "actual": "3e48ee1ad2cd05e58d5cf8e0f83af38530bdcda5", + "expected": "e0b66672f74cf628097355fd84a72af165f2440c", + "actual": "e0b66672f74cf628097355fd84a72af165f2440c", "paths": [ "reports/benchmark_reproducibility.json", "reports/skill-interpretation.json" @@ -407,30 +407,30 @@ "label": "interpretation embeds benchmark summary fields", "status": "pass", "expected": { - "release_lock_ready": true, + "release_lock_ready": false, "required_artifact_count": 25, "missing_artifact_count": 0, - "source_contract_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "source_contract_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "world_class_ledger_pending_count": 4, "world_class_source_check_count": 13, "world_class_source_pass_count": 6, "world_class_source_blocked_count": 7, "public_claim_ready": false, - "public_claim_blocker_count": 4 + "public_claim_blocker_count": 5 }, "actual": { - "release_lock_ready": true, + "release_lock_ready": false, "required_artifact_count": 25, "missing_artifact_count": 0, - "source_contract_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "source_contract_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "world_class_ledger_pending_count": 4, "world_class_source_check_count": 13, "world_class_source_pass_count": 6, "world_class_source_blocked_count": 7, "public_claim_ready": false, - "public_claim_blocker_count": 4 + "public_claim_blocker_count": 5 }, "paths": [ "reports/benchmark_reproducibility.json", @@ -1512,7 +1512,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 129 + "file_count": 130 }, { "path": "evals", @@ -1527,7 +1527,7 @@ "file_count": 229 } ], - "file_count": 426, + "file_count": 427, "folder_count": 4, "distribution": [ { @@ -1552,7 +1552,7 @@ }, { "label": "scripts", - "value": 129 + "value": 130 }, { "label": "evals", @@ -1600,7 +1600,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 129 + "file_count": 130 }, { "path": "evals", @@ -1615,7 +1615,7 @@ "file_count": 229 } ], - "file_count": 426, + "file_count": 427, "folder_count": 4, "distribution": [ { @@ -1640,7 +1640,7 @@ }, { "label": "scripts", - "value": 129 + "value": 130 }, { "label": "evals", @@ -2404,10 +2404,10 @@ "score `91`", "`16` gates", "`3` warnings", - "`43` declared internal modules", - "`86 / 86` CLI help smoke checks passing across `129` scripts", - "`656` zip entries", - "archive with `656` entries", + "`44` declared internal modules", + "`86 / 86` CLI help smoke checks passing across `130` scripts", + "`657` zip entries", + "archive with `657` 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 1122e5a..de0b5d5 100644 --- a/reports/install_simulation.json +++ b/reports/install_simulation.json @@ -8,7 +8,7 @@ "installed_skill_dir": "dist/install-simulation/simulate-yao-meta-skill/yao-meta-skill", "summary": { "archive_present": true, - "archive_entry_count": 656, + "archive_entry_count": 657, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, diff --git a/reports/output_execution_runs.json b/reports/output_execution_runs.json index 21bc97c..bce2914 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": 29.06, + "duration_ms": 31.58, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -62,7 +62,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 28.86, + "duration_ms": 32.31, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -85,7 +85,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 29.99, + "duration_ms": 32.4, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -113,7 +113,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 29.47, + "duration_ms": 32.32, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -136,7 +136,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 29.12, + "duration_ms": 32.69, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -164,7 +164,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 30.35, + "duration_ms": 32.71, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -187,7 +187,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 33.41, + "duration_ms": 31.58, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -214,7 +214,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 30.91, + "duration_ms": 31.42, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -237,7 +237,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 29.39, + "duration_ms": 32.28, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -266,7 +266,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 29.09, + "duration_ms": 31.74, "provider": "local-output-eval-runner", "model": "", "usage": { diff --git a/reports/output_execution_runs.md b/reports/output_execution_runs.md index 41ae67a..e71d2b8 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 | 29.06 | 33 | 0.0 | pass | -| skill-package-contract | with_skill | command | local-output-eval-runner | 28.86 | 73 | 100.0 | pass | -| output-eval-expectation | baseline | command | local-output-eval-runner | 29.99 | 36 | 0.0 | pass | -| output-eval-expectation | with_skill | command | local-output-eval-runner | 29.47 | 80 | 100.0 | pass | -| ir-before-packaging | baseline | command | local-output-eval-runner | 29.12 | 33 | 0.0 | pass | -| ir-before-packaging | with_skill | command | local-output-eval-runner | 30.35 | 80 | 100.0 | pass | -| near-neighbor-boundary | baseline | command | local-output-eval-runner | 33.41 | 36 | 0.0 | pass | -| near-neighbor-boundary | with_skill | command | local-output-eval-runner | 30.91 | 65 | 100.0 | pass | -| file-backed-governed-package | baseline | command | local-output-eval-runner | 29.39 | 37 | 0.0 | pass | -| file-backed-governed-package | with_skill | command | local-output-eval-runner | 29.09 | 98 | 100.0 | pass | +| skill-package-contract | baseline | command | local-output-eval-runner | 31.58 | 33 | 0.0 | pass | +| skill-package-contract | with_skill | command | local-output-eval-runner | 32.31 | 73 | 100.0 | pass | +| output-eval-expectation | baseline | command | local-output-eval-runner | 32.4 | 36 | 0.0 | pass | +| output-eval-expectation | with_skill | command | local-output-eval-runner | 32.32 | 80 | 100.0 | pass | +| ir-before-packaging | baseline | command | local-output-eval-runner | 32.69 | 33 | 0.0 | pass | +| ir-before-packaging | with_skill | command | local-output-eval-runner | 32.71 | 80 | 100.0 | pass | +| near-neighbor-boundary | baseline | command | local-output-eval-runner | 31.58 | 36 | 0.0 | pass | +| near-neighbor-boundary | with_skill | command | local-output-eval-runner | 31.42 | 65 | 100.0 | pass | +| file-backed-governed-package | baseline | command | local-output-eval-runner | 32.28 | 37 | 0.0 | pass | +| file-backed-governed-package | with_skill | command | local-output-eval-runner | 31.74 | 98 | 100.0 | pass | ## Next Fixes diff --git a/reports/package_verification.json b/reports/package_verification.json index 827f879..9fde19b 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": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", - "archive_entry_count": 656, + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", + "archive_entry_count": 657, "failure_count": 0, "warning_count": 0 }, diff --git a/reports/package_verification.md b/reports/package_verification.md index a82ab84..94f45e1 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: `2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2` +- Archive SHA256: `a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3` - Failures: `0` - Warnings: `0` diff --git a/reports/python_compatibility.json b/reports/python_compatibility.json index c7ad640..a389570 100644 --- a/reports/python_compatibility.json +++ b/reports/python_compatibility.json @@ -5,7 +5,7 @@ "root": ".", "summary": { "target_python": "3.11", - "file_count": 203, + "file_count": 204, "issue_count": 0, "syntax_error_count": 0, "fstring_311_violation_count": 0, @@ -94,6 +94,12 @@ "issue_count": 0, "issues": [] }, + { + "path": "scripts/compile_skill_targets.py", + "ok": true, + "issue_count": 0, + "issues": [] + }, { "path": "scripts/context_sizer.py", "ok": true, diff --git a/reports/python_compatibility.md b/reports/python_compatibility.md index d2e0e05..3d5a3b3 100644 --- a/reports/python_compatibility.md +++ b/reports/python_compatibility.md @@ -6,7 +6,7 @@ Generated at: `2026-06-16` - decision: `pass` - target python: `3.11` -- files scanned: `203` +- files scanned: `204` - issues: `0` - syntax errors: `0` - f-string 3.11 violations: `0` diff --git a/reports/registry_audit.json b/reports/registry_audit.json index dc7f811..f9a856e 100644 --- a/reports/registry_audit.json +++ b/reports/registry_audit.json @@ -21,8 +21,8 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2" + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3" }, "compatibility": { "openai": "pass", @@ -53,7 +53,7 @@ }, "distribution": { "archive_verified": true, - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "package_verification": "reports/package_verification.json", "install_simulated": true, "install_simulation": "reports/install_simulation.json" @@ -78,7 +78,7 @@ "vscode" ], "package_metadata": "registry/packages/yao-meta-skill.json", - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" } ] }, diff --git a/reports/registry_audit.md b/reports/registry_audit.md index 5aa08f6..0e7a646 100644 --- a/reports/registry_audit.md +++ b/reports/registry_audit.md @@ -6,8 +6,8 @@ - Maturity: `governed` - Owner: `Yao Team` - License: `MIT` -- Package SHA256: `70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873` -- Archive SHA256: `2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2` +- Package SHA256: `e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565` +- Archive SHA256: `a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3` - Install simulated: `True` ## Compatibility diff --git a/reports/review-studio.html b/reports/review-studio.html index aa027bc..c6d624d 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

4 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

129 scripts scanned; secrets found

Py Compat0

203 files scanned for Python 3.11

Arch Debt0

852 largest lines; 4 watchlist; 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

180 public surfaces scanned

Notes0/0

0 open blocker annotations

Registry1.1.0

5 targets; MIT license

Archivepass

656 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

Blueprint20/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

130 scripts scanned; secrets found

Py Compat0

204 files scanned for Python 3.11

Arch Debt0

852 largest lines; 3 watchlist; 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

180 public surfaces scanned

Notes0/0

0 open blocker annotations

Registry1.1.0

5 targets; MIT license

Archivepass

657 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 487152/120000; top deferred scripts 427054; resource governance governed; quality density 131.3

reports/context_budget.json 证据
通过

运行矩阵

5 / 5 targets pass

reports/conformance_matrix.json 证据
通过

信任报告

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

reports/security_trust_report.json 证据
通过

Python 兼容

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

reports/python_compatibility.json 证据
通过

架构维护

200 Python files; 0 hotspots; 4 watchlist files; 0 blockers; largest 852 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 true

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 6/13 pass; 7 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 487219/120000; top deferred scripts 427121; resource governance governed; quality density 131.3

reports/context_budget.json 证据
通过

运行矩阵

5 / 5 targets pass

reports/conformance_matrix.json 证据
通过

信任报告

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

reports/security_trust_report.json 证据
通过

Python 兼容

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

reports/python_compatibility.json 证据
通过

架构维护

201 Python files; 0 hotspots; 3 watchlist files; 0 blockers; largest 852 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 6/13 pass; 7 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 487152/120000; top deferred scripts 427054; resource governance governed; quality density 131.3

+

上下文

initial load 990/1000; deferred 487219/120000; top deferred scripts 427121; 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
脚本数
129
网络脚本
3
Help 失败
0
包体哈希
70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873
+

信任报告

Secret
0
脚本数
130
网络脚本
3
Help 失败
0
包体哈希
e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565

安全边界

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

-

Python 兼容

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

Python 兼容

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

解释器边界

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

@@ -842,14 +842,14 @@
-

运营回路

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 true

+

运营回路

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
-

周度队列

决策
curator-review
Week Id
2026-W25
日报数
1
唯一机会
5
待批准复核
1
提案复核
4
Top Score
88
发布锁
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
日报数
1
唯一机会
5
待批准复核
1
提案复核
4
Top Score
88
发布锁
Writes Source Files
Auto Patch Enabled
@@ -877,13 +877,13 @@
-

蓝图覆盖

项目数
21
模块数
8
建议 PR
13
通过数
21
Warn Count
0
缺失数
0
Extension Track Count
4
Extension Covered Count
4
Extension Partial Count
0
Extension Planned Count
0
Adaptive Extension Ready
本地蓝图
世界级
待补证据
4
+

蓝图覆盖

项目数
21
模块数
8
建议 PR
13
通过数
20
Warn Count
1
缺失数
0
Extension Track Count
4
Extension Covered Count
4
Extension Partial Count
0
Extension Planned Count
0
Adaptive Extension Ready
本地蓝图
世界级
待补证据
4

覆盖边界

蓝图覆盖只证明 2.0 模块、建议 PR、脚本、报告和测试在本地闭环;public world-class 仍以 world-class evidence ledger 的真人和外部证据为准。

-

公开声明

本地复现
发布锁
可公开声明
声明阻断
4
Provider 证据
人审完成
世界级就绪
-

声明阻断

+

公开声明

本地复现
发布锁
可公开声明
声明阻断
5
Provider 证据
人审完成
世界级就绪
+

声明阻断

@@ -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
归档哈希
2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2
+

包体元数据

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

发布路线

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

-

包体验证

目标数
4
Adapter
4
归档存在
Zip 条目
656
失败数
0
警告数
0
归档哈希
2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2
+

包体验证

目标数
4
Adapter
4
归档存在
Zip 条目
657
失败数
0
警告数
0
归档哈希
a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3
diff --git a/reports/review-studio.json b/reports/review-studio.json index b7da6a0..5453f32 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 487152/120000; top deferred scripts 427054; resource governance governed; quality density 131.3", + "detail": "initial load 990/1000; deferred 487219/120000; top deferred scripts 427121; 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; 129 scripts; 3 network-capable scripts; 0 help smoke failures", + "detail": "0 secrets; 130 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; 203 files; 0 compatibility issues; 0 syntax; 0 f-string 3.11 hazards", + "detail": "Python 3.11; 204 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": "200 Python files; 0 hotspots; 4 watchlist files; 0 blockers; largest 852 lines; 68 CLI handlers; 18 in entrypoint", + "detail": "201 Python files; 0 hotspots; 3 watchlist files; 0 blockers; largest 852 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 true", + "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" }, @@ -1484,7 +1484,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 129 + "file_count": 130 }, { "path": "evals", @@ -1499,7 +1499,7 @@ "file_count": 229 } ], - "file_count": 426, + "file_count": 427, "folder_count": 4, "distribution": [ { @@ -1524,7 +1524,7 @@ }, { "label": "scripts", - "value": 129 + "value": 130 }, { "label": "evals", @@ -1654,7 +1654,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 129 + "file_count": 130 }, { "path": "evals", @@ -1968,13 +1968,13 @@ "ok": true, "summary": { "reproducibility_ready": true, - "release_lock_ready": true, + "release_lock_ready": false, "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "f2becbf9a38c367c7fcb7448588bd418190838100942f7f75ea01b3f94e28b44", - "source_contract_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "evidence_bundle_sha256": "0e40cccb8f5de72083a28e8853b3fc884d2e7d96fefba5ce4a259cb6c3d566fb", + "source_contract_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "output_case_count": 5, "failure_disclosure_count": 3, "command_count": 23, @@ -1992,11 +1992,11 @@ "world_class_source_pass_count": 6, "world_class_source_blocked_count": 7, "public_claim_ready": false, - "public_claim_blocker_count": 4, - "working_tree_dirty": false, - "changed_file_count": 0 + "public_claim_blocker_count": 5, + "working_tree_dirty": true, + "changed_file_count": 44 }, - "commit": "3e48ee1ad2cd05e58d5cf8e0f83af38530bdcda5", + "commit": "e0b66672f74cf628097355fd84a72af165f2440c", "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.", @@ -2080,9 +2080,9 @@ "failures": [] }, "trust_security": { - "scanned_files": 220, - "script_count": 129, - "internal_module_count": 43, + "scanned_files": 221, + "script_count": 130, + "internal_module_count": 44, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -2100,8 +2100,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 220, - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "package_hash_file_count": 221, + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" }, "skill_atlas": { "skill_count": 12, @@ -2139,8 +2139,8 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2" + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3" }, "compatibility": { "openai": "pass", @@ -2171,7 +2171,7 @@ }, "distribution": { "archive_verified": true, - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "package_verification": "reports/package_verification.json", "install_simulated": true, "install_simulation": "reports/install_simulation.json" @@ -2187,8 +2187,8 @@ "target_count": 4, "adapter_count": 4, "archive_present": true, - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", - "archive_entry_count": 656, + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", + "archive_entry_count": 657, "failure_count": 0, "warning_count": 0 }, @@ -2199,7 +2199,7 @@ "ok": true, "summary": { "archive_present": true, - "archive_entry_count": 656, + "archive_entry_count": 657, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -2266,12 +2266,12 @@ { "field": "archive_sha256", "from": "", - "to": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2" + "to": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3" }, { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "to": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" } ] }, @@ -4688,7 +4688,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 29.06, + "duration_ms": 31.58, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4716,7 +4716,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 28.86, + "duration_ms": 32.31, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4739,7 +4739,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 29.99, + "duration_ms": 32.4, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4767,7 +4767,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 29.47, + "duration_ms": 32.32, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4790,7 +4790,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 29.12, + "duration_ms": 32.69, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4818,7 +4818,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 30.35, + "duration_ms": 32.71, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4841,7 +4841,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 33.41, + "duration_ms": 31.58, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4868,7 +4868,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 30.91, + "duration_ms": 31.42, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4891,7 +4891,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 29.39, + "duration_ms": 32.28, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -4920,7 +4920,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 29.09, + "duration_ms": 31.74, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -5646,23 +5646,36 @@ "ok": true, "generated_at": "2026-06-16", "skill_dir": ".", - "commit": "3e48ee1ad2cd05e58d5cf8e0f83af38530bdcda5", + "commit": "e0b66672f74cf628097355fd84a72af165f2440c", "git_status": { "available": true, - "dirty": false, - "changed_file_count": 0, - "sample": [], + "dirty": true, + "changed_file_count": 44, + "sample": [ + " M registry/index.json", + " M registry/packages/yao-meta-skill.json", + " 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.md", + " M reports/context_budget_summary.json", + " M reports/evidence_consistency.json", + " M reports/evidence_consistency.md", + " M reports/install_simulation.json" + ], "scope": "generation-time status before this report is written" }, "summary": { "reproducibility_ready": true, - "release_lock_ready": true, + "release_lock_ready": false, "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "f2becbf9a38c367c7fcb7448588bd418190838100942f7f75ea01b3f94e28b44", - "source_contract_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "evidence_bundle_sha256": "0e40cccb8f5de72083a28e8853b3fc884d2e7d96fefba5ce4a259cb6c3d566fb", + "source_contract_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "output_case_count": 5, "failure_disclosure_count": 3, "command_count": 23, @@ -5680,14 +5693,15 @@ "world_class_source_pass_count": 6, "world_class_source_blocked_count": 7, "public_claim_ready": false, - "public_claim_blocker_count": 4, - "working_tree_dirty": false, - "changed_file_count": 0 + "public_claim_blocker_count": 5, + "working_tree_dirty": true, + "changed_file_count": 44 }, "public_claim": { "ready": false, "scope": "public benchmark or world-class readiness claim", "blockers": [ + "release lock is not clean or commit is unavailable", "provider-backed model holdout evidence is incomplete", "human blind-review adjudication is incomplete", "world-class evidence is not accepted yet (4 open gaps, 4 ledger pending)", @@ -5696,10 +5710,10 @@ "policy": "Local reproducibility can pass before public claims; public claims require provider evidence, human adjudication, clean release lock, accepted world-class evidence, and complete source checks." }, "release_lock": { - "ready": true, - "commit": "3e48ee1ad2cd05e58d5cf8e0f83af38530bdcda5", + "ready": false, + "commit": "e0b66672f74cf628097355fd84a72af165f2440c", "status_scope": "generation-time status before this report is written", - "reason": "clean generation-time HEAD" + "reason": "working tree was dirty at generation time" }, "evidence_bundle": { "algorithm": "sha256(path,label,exists,artifact_sha256)", @@ -5707,7 +5721,7 @@ "existing_count": 25, "missing_count": 0, "missing_paths": [], - "sha256": "f2becbf9a38c367c7fcb7448588bd418190838100942f7f75ea01b3f94e28b44" + "sha256": "0e40cccb8f5de72083a28e8853b3fc884d2e7d96fefba5ce4a259cb6c3d566fb" }, "methodology": { "path": "reports/benchmark_methodology.md", @@ -5780,8 +5794,8 @@ "label": "output_execution", "path": "reports/output_execution_runs.json", "exists": true, - "bytes": 7967, - "sha256": "63796b27de1dcb8113559266e51221568b288d4d219681ec67e632e19379e227" + "bytes": 7966, + "sha256": "c11a575d231035c3ece411b402384e92703769ec146ed1ac0af76c73dd2ed28f" }, { "label": "blind_review", @@ -5815,43 +5829,43 @@ "label": "trust_report", "path": "reports/security_trust_report.json", "exists": true, - "bytes": 122795, - "sha256": "67eb112d62b9451b946da19c2450856514b7adb72370de8d7b37d5542f417b73" + "bytes": 123371, + "sha256": "33f8c904a6b85e7141452a15b101590300a5863f958b62d922d29d084400efce" }, { "label": "python_compatibility", "path": "reports/python_compatibility.json", "exists": true, - "bytes": 26363, - "sha256": "d16c0856acb6e722afee0354bb098b19ef8d276dcad00403fcccea6666d9a56b" + "bytes": 26487, + "sha256": "28cfd0264fda6ea6ceba911faa094003b2b0c0f6baf257e93dd36123e9ce918a" }, { "label": "registry_audit", "path": "reports/registry_audit.json", "exists": true, "bytes": 3183, - "sha256": "993abbb8ce9a36635468948ff961d5630b59ad89fb39eca34b36f4081c2e8539" + "sha256": "31b2d0371a2ac9c1c84517c1b286ef10c8768499aa77b977dde48c06783cf54e" }, { "label": "package_verification", "path": "reports/package_verification.json", "exists": true, "bytes": 19338, - "sha256": "88424a253c20166b6803b6ac3bdacd89c5c945a6fe693bcd1c13dafca2c8e148" + "sha256": "2805955a86d5bcac055e809fe094a43dd58c436e61f845fe4969d3e939a589b2" }, { "label": "install_simulation", "path": "reports/install_simulation.json", "exists": true, "bytes": 8604, - "sha256": "1164b24a460e27dae8d2c58f3eb7bedb0199367e05323573e559f49a922e7492" + "sha256": "736678ef798a0c21e7a25da7c2865f6c314093f7955a73ff853264e5dc001648" }, { "label": "skill_os2_audit", "path": "reports/skill_os2_audit.json", "exists": true, "bytes": 14310, - "sha256": "8699abf06379ffde0baa0d0316557fad330246f2c514c338e6f3f11a0dc7a806" + "sha256": "56d96bdccbfca7e4f98aaaabc67dccbd4260aec127c43977cf48a819365f9bf1" }, { "label": "world_class_evidence_plan", @@ -6060,22 +6074,22 @@ "item_count": 21, "module_count": 8, "recommended_pr_count": 13, - "pass_count": 21, - "warn_count": 0, + "pass_count": 20, + "warn_count": 1, "missing_count": 0, "extension_track_count": 4, "extension_partial_count": 0, "extension_planned_count": 0, "extension_covered_count": 4, "adaptive_extension_ready": true, - "local_blueprint_ready": true, + "local_blueprint_ready": false, "public_world_class_ready": false, "world_class_evidence_pending_count": 4, - "decision": "local-blueprint-covered-evidence-pending" + "decision": "continue-implementation" }, "status_counts": { - "pass": 21, - "warn": 0, + "pass": 20, + "warn": 1, "missing": 0 }, "extension_status_counts": { @@ -6183,7 +6197,7 @@ "label": "Trust Security", "status": "pass", "objective": "Scripts, dependencies, permissions, secrets, and package hash are reviewable for team distribution.", - "current": "129 scripts; secrets 0; help failures 0", + "current": "130 scripts; secrets 0; help failures 0", "command": "python3 scripts/yao.py trust .", "test": "python3 tests/verify_trust_check.py", "evidence": [ @@ -6257,7 +6271,7 @@ "label": "Registry Distribution", "status": "pass", "objective": "Skill packages are installable, versioned, checksumed, and upgrade-reviewable.", - "current": "archive entries 656; install failures 0", + "current": "archive entries 657; 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": [ @@ -6664,7 +6678,7 @@ "key": "evidence-consistency", "category": "recommended-pr", "label": "Evidence Consistency", - "status": "pass", + "status": "warn", "objective": "Recommended Skill OS 2.0 implementation PR from the upgrade plan.", "current": "35 consistency checks", "command": "make ci-test", @@ -12070,9 +12084,9 @@ "ok": true, "skill_dir": ".", "summary": { - "scanned_files": 220, - "script_count": 129, - "internal_module_count": 43, + "scanned_files": 221, + "script_count": 130, + "internal_module_count": 44, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -12090,8 +12104,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 220, - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "package_hash_file_count": 221, + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" }, "failures": [], "warnings": [], @@ -12228,6 +12242,20 @@ "network_urls": [], "network_hosts": [] }, + { + "path": "scripts/compile_skill_targets.py", + "interface": "internal-module", + "interface_declared": true, + "interface_reason": "Imported by compile_skill for target platform model and contract builders.", + "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/context_sizer.py", "interface": "cli", @@ -13955,7 +13983,7 @@ "checked_count": 86, "passed_count": 86, "failed_count": 0, - "skipped_count": 43, + "skipped_count": 44, "failed_scripts": [], "results": [ { @@ -14824,6 +14852,10 @@ "path": "scripts/build_skill_atlas_layout.py", "reason": "internal module" }, + { + "path": "scripts/compile_skill_targets.py", + "reason": "internal module" + }, { "path": "scripts/evidence_consistency_artifact_roles.py", "reason": "internal module" @@ -15187,7 +15219,7 @@ "root": ".", "summary": { "target_python": "3.11", - "file_count": 203, + "file_count": 204, "issue_count": 0, "syntax_error_count": 0, "fstring_311_violation_count": 0, @@ -15276,6 +15308,12 @@ "issue_count": 0, "issues": [] }, + { + "path": "scripts/compile_skill_targets.py", + "ok": true, + "issue_count": 0, + "issues": [] + }, { "path": "scripts/context_sizer.py", "ok": true, @@ -16435,10 +16473,10 @@ "generated_at": "2026-06-16", "skill_dir": ".", "summary": { - "python_file_count": 200, - "script_file_count": 129, + "python_file_count": 201, + "script_file_count": 130, "test_file_count": 71, - "internal_module_count": 46, + "internal_module_count": 47, "cli_script_count": 85, "command_handler_count": 68, "entrypoint_command_handler_count": 18, @@ -16447,7 +16485,7 @@ "watch_line_threshold": 720, "block_line_threshold": 1500, "largest_file_lines": 852, - "watchlist_count": 4, + "watchlist_count": 3, "hotspot_count": 0, "blocker_count": 0, "decision": "pass" @@ -16467,13 +16505,6 @@ "severity": "pass", "recommendation": "Break broad integration assertions into focused verifier helpers when the next behavior change lands." }, - { - "path": "scripts/compile_skill.py", - "lines": 723, - "kind": "cli-script", - "severity": "pass", - "recommendation": "Watch this file before adding new responsibilities; extract a helper module when one concern dominates." - }, { "path": "scripts/optimize_description.py", "lines": 723, @@ -16536,6 +16567,13 @@ "kind": "cli-script", "severity": "pass", "recommendation": "Watch this file before adding new responsibilities; extract a helper module when one concern dominates." + }, + { + "path": "scripts/render_review_studio.py", + "lines": 647, + "kind": "cli-script", + "severity": "pass", + "recommendation": "Move data loading and large section renderers into focused review_studio_* modules." } ], "watchlist": [ @@ -16553,13 +16591,6 @@ "severity": "pass", "recommendation": "Break broad integration assertions into focused verifier helpers when the next behavior change lands." }, - { - "path": "scripts/compile_skill.py", - "lines": 723, - "kind": "cli-script", - "severity": "pass", - "recommendation": "Watch this file before adding new responsibilities; extract a helper module when one concern dominates." - }, { "path": "scripts/optimize_description.py", "lines": 723, @@ -16583,16 +16614,16 @@ "context_budget_tier": "production", "context_budget_limit": 1000, "skill_body_tokens": 797, - "other_text_tokens": 1052140, + "other_text_tokens": 1052541, "estimated_initial_load_tokens": 990, - "estimated_total_text_tokens": 1052937, - "deferred_resource_tokens": 487152, + "estimated_total_text_tokens": 1053338, + "deferred_resource_tokens": 487219, "deferred_resource_warn_threshold": 120000, "deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 427054, - "file_count": 129 + "estimated_tokens": 427121, + "file_count": 130 }, { "path": "references", @@ -16613,8 +16644,8 @@ "large_deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 427054, - "file_count": 129 + "estimated_tokens": 427121, + "file_count": 130 } ], "deferred_resource_governance": { @@ -16636,14 +16667,14 @@ ], "missing": [], "path": "scripts", - "estimated_tokens": 427054, - "file_count": 129, + "estimated_tokens": 427121, + "file_count": 130, "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": 646, + "relevant_file_count": 648, "unused_resource_dirs": [], "quality_signal_points": 130, "quality_density": 131.3 @@ -17516,6 +17547,7 @@ "scripts/ci_test.py", "scripts/collect_feedback.py", "scripts/compile_skill.py", + "scripts/compile_skill_targets.py", "scripts/context_sizer.py", "scripts/create_iteration_snapshot.py", "scripts/cross_packager.py", @@ -18634,8 +18666,8 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, - "evidence_consistency_ok": true, + "release_lock_ready": false, + "evidence_consistency_ok": false, "writes_source_files": false, "auto_patch_enabled": false, "failure_count": 0, @@ -18651,8 +18683,8 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, - "evidence_consistency_ok": true, + "release_lock_ready": false, + "evidence_consistency_ok": false, "writes_source_files": false, "auto_patch_enabled": false, "failure_count": 0 @@ -19100,8 +19132,8 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, - "evidence_consistency_ok": true + "release_lock_ready": false, + "evidence_consistency_ok": false }, "actions": [ { @@ -19113,6 +19145,11 @@ "key": "close-world-class-evidence", "priority": "high", "action": "Collect accepted external or human evidence for the pending world-class ledger entries." + }, + { + "key": "refresh-evidence-consistency", + "priority": "high", + "action": "Regenerate evidence-consistency before using this report for release decisions." } ], "failures": [], @@ -19149,8 +19186,8 @@ "top_score": 88, "skill_count": 12, "actionable_portfolio_issue_count": 0, - "release_lock_ready": true, - "evidence_consistency_ok": true, + "release_lock_ready": false, + "evidence_consistency_ok": false, "public_world_class_ready": false, "world_class_pending_count": 4, "writes_source_files": false, @@ -19169,8 +19206,8 @@ "top_score": 88, "skill_count": 12, "actionable_portfolio_issue_count": 0, - "release_lock_ready": true, - "evidence_consistency_ok": true, + "release_lock_ready": false, + "evidence_consistency_ok": false, "public_world_class_ready": false, "world_class_pending_count": 4, "writes_source_files": false, @@ -19421,8 +19458,8 @@ "no_route_opportunity_count": 0 }, "release_state": { - "release_lock_ready": true, - "evidence_consistency_ok": true, + "release_lock_ready": false, + "evidence_consistency_ok": false, "public_world_class_ready": false, "world_class_pending_count": 4 }, @@ -19436,6 +19473,11 @@ "key": "close-world-class-evidence", "priority": "high", "action": "Collect accepted external or human evidence for pending world-class ledger entries before public claims." + }, + { + "key": "refresh-evidence-consistency", + "priority": "high", + "action": "Regenerate evidence consistency before using this curator report for release decisions." } ], "failures": [], @@ -23531,8 +23573,8 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2" + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3" }, "compatibility": { "openai": "pass", @@ -23563,7 +23605,7 @@ }, "distribution": { "archive_verified": true, - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "package_verification": "reports/package_verification.json", "install_simulated": true, "install_simulation": "reports/install_simulation.json" @@ -23588,7 +23630,7 @@ "vscode" ], "package_metadata": "registry/packages/yao-meta-skill.json", - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" } ] }, @@ -23611,8 +23653,8 @@ "target_count": 4, "adapter_count": 4, "archive_present": true, - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", - "archive_entry_count": 656, + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", + "archive_entry_count": 657, "failure_count": 0, "warning_count": 0 }, @@ -24277,7 +24319,7 @@ "installed_skill_dir": "dist/install-simulation/simulate-yao-meta-skill/yao-meta-skill", "summary": { "archive_present": true, - "archive_entry_count": 656, + "archive_entry_count": 657, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -24619,12 +24661,12 @@ { "field": "archive_sha256", "from": "", - "to": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2" + "to": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3" }, { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "to": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" } ] }, diff --git a/reports/review-viewer.json b/reports/review-viewer.json index f2da851..cb428a4 100644 --- a/reports/review-viewer.json +++ b/reports/review-viewer.json @@ -513,7 +513,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 129 + "file_count": 130 }, { "path": "evals", @@ -528,7 +528,7 @@ "file_count": 229 } ], - "file_count": 426, + "file_count": 427, "folder_count": 4, "distribution": [ { @@ -553,7 +553,7 @@ }, { "label": "scripts", - "value": 129 + "value": 130 }, { "label": "evals", @@ -683,7 +683,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 129 + "file_count": 130 }, { "path": "evals", @@ -997,13 +997,13 @@ "ok": true, "summary": { "reproducibility_ready": true, - "release_lock_ready": true, + "release_lock_ready": false, "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "f2becbf9a38c367c7fcb7448588bd418190838100942f7f75ea01b3f94e28b44", - "source_contract_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "evidence_bundle_sha256": "0e40cccb8f5de72083a28e8853b3fc884d2e7d96fefba5ce4a259cb6c3d566fb", + "source_contract_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "output_case_count": 5, "failure_disclosure_count": 3, "command_count": 23, @@ -1021,11 +1021,11 @@ "world_class_source_pass_count": 6, "world_class_source_blocked_count": 7, "public_claim_ready": false, - "public_claim_blocker_count": 4, - "working_tree_dirty": false, - "changed_file_count": 0 + "public_claim_blocker_count": 5, + "working_tree_dirty": true, + "changed_file_count": 44 }, - "commit": "3e48ee1ad2cd05e58d5cf8e0f83af38530bdcda5", + "commit": "e0b66672f74cf628097355fd84a72af165f2440c", "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.", @@ -1109,9 +1109,9 @@ "failures": [] }, "trust_security": { - "scanned_files": 220, - "script_count": 129, - "internal_module_count": 43, + "scanned_files": 221, + "script_count": 130, + "internal_module_count": 44, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -1129,8 +1129,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 220, - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "package_hash_file_count": 221, + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" }, "skill_atlas": { "skill_count": 12, @@ -1168,8 +1168,8 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2" + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3" }, "compatibility": { "openai": "pass", @@ -1200,7 +1200,7 @@ }, "distribution": { "archive_verified": true, - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "package_verification": "reports/package_verification.json", "install_simulated": true, "install_simulation": "reports/install_simulation.json" @@ -1216,8 +1216,8 @@ "target_count": 4, "adapter_count": 4, "archive_present": true, - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", - "archive_entry_count": 656, + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", + "archive_entry_count": 657, "failure_count": 0, "warning_count": 0 }, @@ -1228,7 +1228,7 @@ "ok": true, "summary": { "archive_present": true, - "archive_entry_count": 656, + "archive_entry_count": 657, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -1295,12 +1295,12 @@ { "field": "archive_sha256", "from": "", - "to": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2" + "to": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3" }, { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "to": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" } ] }, diff --git a/reports/security_trust_report.json b/reports/security_trust_report.json index 58d87f8..4ae8f02 100644 --- a/reports/security_trust_report.json +++ b/reports/security_trust_report.json @@ -2,9 +2,9 @@ "ok": true, "skill_dir": ".", "summary": { - "scanned_files": 220, - "script_count": 129, - "internal_module_count": 43, + "scanned_files": 221, + "script_count": 130, + "internal_module_count": 44, "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": 220, - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "package_hash_file_count": 221, + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" }, "failures": [], "warnings": [], @@ -160,6 +160,20 @@ "network_urls": [], "network_hosts": [] }, + { + "path": "scripts/compile_skill_targets.py", + "interface": "internal-module", + "interface_declared": true, + "interface_reason": "Imported by compile_skill for target platform model and contract builders.", + "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/context_sizer.py", "interface": "cli", @@ -1887,7 +1901,7 @@ "checked_count": 86, "passed_count": 86, "failed_count": 0, - "skipped_count": 43, + "skipped_count": 44, "failed_scripts": [], "results": [ { @@ -2756,6 +2770,10 @@ "path": "scripts/build_skill_atlas_layout.py", "reason": "internal module" }, + { + "path": "scripts/compile_skill_targets.py", + "reason": "internal module" + }, { "path": "scripts/evidence_consistency_artifact_roles.py", "reason": "internal module" diff --git a/reports/security_trust_report.md b/reports/security_trust_report.md index 400717d..5412f2d 100644 --- a/reports/security_trust_report.md +++ b/reports/security_trust_report.md @@ -1,9 +1,9 @@ # Security Trust Report - OK: `True` -- Scanned files: `220` -- Scripts: `129` -- Internal script modules: `43` +- Scanned files: `221` +- Scripts: `130` +- Internal script modules: `44` - 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: `220` -- Package SHA256: `70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873` +- Package hash files: `221` +- Package SHA256: `e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565` ## Failures @@ -71,6 +71,7 @@ | scripts/ci_test.py | cli | False | True | True | False | False | True | True | Default CLI classification; add SCRIPT_INTERFACE for internal modules. | | scripts/collect_feedback.py | cli | False | True | True | False | False | True | False | Default CLI classification; add SCRIPT_INTERFACE for internal modules. | | scripts/compile_skill.py | cli | False | True | True | False | False | True | False | Default CLI classification; add SCRIPT_INTERFACE for internal modules. | +| scripts/compile_skill_targets.py | internal-module | True | False | False | False | False | False | False | Imported by compile_skill for target platform model and contract builders. | | scripts/context_sizer.py | cli | False | True | True | False | False | False | False | Default CLI classification; add SCRIPT_INTERFACE for internal modules. | | scripts/create_iteration_snapshot.py | cli | False | True | True | False | False | True | False | Default CLI classification; add SCRIPT_INTERFACE for internal modules. | | scripts/cross_packager.py | cli | False | True | True | False | False | True | False | Default CLI classification; add SCRIPT_INTERFACE for internal modules. | diff --git a/reports/skill-interpretation.html b/reports/skill-interpretation.html index 6c3f43a..49864a0 100644 --- a/reports/skill-interpretation.html +++ b/reports/skill-interpretation.html @@ -921,7 +921,7 @@

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

-
资产分布Asset Distribution426项426 itemsSKILL.mdSKILL.mdREADME.mdREADME.mdagents/interface.yamlagents/interface.yamlmanifest.jsonmanifest.jsonreferencesreferencesscriptsscripts
资产分布图展示当前包体的文件和目录重心。The asset distribution chart shows where files and directories are concentrated.
+
资产分布Asset Distribution427项427 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 e7ea00a..682ce6b 100644 --- a/reports/skill-interpretation.json +++ b/reports/skill-interpretation.json @@ -513,7 +513,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 129 + "file_count": 130 }, { "path": "evals", @@ -528,7 +528,7 @@ "file_count": 229 } ], - "file_count": 426, + "file_count": 427, "folder_count": 4, "distribution": [ { @@ -553,7 +553,7 @@ }, { "label": "scripts", - "value": 129 + "value": 130 }, { "label": "evals", @@ -687,7 +687,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 129 + "file_count": 130 }, { "path": "evals", @@ -1001,13 +1001,13 @@ "ok": true, "summary": { "reproducibility_ready": true, - "release_lock_ready": true, + "release_lock_ready": false, "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "f2becbf9a38c367c7fcb7448588bd418190838100942f7f75ea01b3f94e28b44", - "source_contract_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "evidence_bundle_sha256": "0e40cccb8f5de72083a28e8853b3fc884d2e7d96fefba5ce4a259cb6c3d566fb", + "source_contract_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "output_case_count": 5, "failure_disclosure_count": 3, "command_count": 23, @@ -1025,11 +1025,11 @@ "world_class_source_pass_count": 6, "world_class_source_blocked_count": 7, "public_claim_ready": false, - "public_claim_blocker_count": 4, - "working_tree_dirty": false, - "changed_file_count": 0 + "public_claim_blocker_count": 5, + "working_tree_dirty": true, + "changed_file_count": 44 }, - "commit": "3e48ee1ad2cd05e58d5cf8e0f83af38530bdcda5", + "commit": "e0b66672f74cf628097355fd84a72af165f2440c", "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.", @@ -1113,9 +1113,9 @@ "failures": [] }, "trust_security": { - "scanned_files": 220, - "script_count": 129, - "internal_module_count": 43, + "scanned_files": 221, + "script_count": 130, + "internal_module_count": 44, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -1133,8 +1133,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 220, - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "package_hash_file_count": 221, + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" }, "skill_atlas": { "skill_count": 12, @@ -1172,8 +1172,8 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2" + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3" }, "compatibility": { "openai": "pass", @@ -1204,7 +1204,7 @@ }, "distribution": { "archive_verified": true, - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "package_verification": "reports/package_verification.json", "install_simulated": true, "install_simulation": "reports/install_simulation.json" @@ -1220,8 +1220,8 @@ "target_count": 4, "adapter_count": 4, "archive_present": true, - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", - "archive_entry_count": 656, + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", + "archive_entry_count": 657, "failure_count": 0, "warning_count": 0 }, @@ -1232,7 +1232,7 @@ "ok": true, "summary": { "archive_present": true, - "archive_entry_count": 656, + "archive_entry_count": 657, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -1299,12 +1299,12 @@ { "field": "archive_sha256", "from": "", - "to": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2" + "to": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3" }, { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "to": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" } ] }, diff --git a/reports/skill-os-2-review.md b/reports/skill-os-2-review.md index 7397fe9..139adb3 100644 --- a/reports/skill-os-2-review.md +++ b/reports/skill-os-2-review.md @@ -59,7 +59,7 @@ This is still not the final world-class state. Target-native behavior contracts | 2.0 Area | Current Evidence | Status | | --- | --- | --- | | Skill IR | `skill-ir/schema.json`, `skill-ir/examples/yao-meta-skill.json`, `scripts/export_skill_ir.py` | v0 landed | -| Target Compiler | `scripts/compile_skill.py`, `reports/compiled_targets.md`, `tests/verify_compile_skill.py` | v0 landed | +| Target Compiler | `scripts/compile_skill.py`, `scripts/compile_skill_targets.py`, `reports/compiled_targets.md`, `tests/verify_compile_skill.py` | v0 landed | | Output Eval Lab | `evals/output/cases.jsonl`, `scripts/run_output_eval.py`, `scripts/run_output_execution.py`, `scripts/local_output_eval_runner.py`, `scripts/provider_output_eval_runner.py`, `scripts/import_output_review_decisions.py`, `scripts/adjudicate_output_review.py`, `reports/output_quality_scorecard.md`, `reports/output_execution_runs.md`, `reports/output_blind_review_pack.md`, `reports/output_blind_answer_key.json`, `reports/output_review_decisions.json`, `reports/output_review_adjudication.md` | v0 landed | | Benchmark methodology | `reports/benchmark_methodology.md` | v0 landed | | Benchmark Reproducibility | `scripts/render_benchmark_reproducibility.py`, `reports/benchmark_reproducibility.md`, `tests/verify_benchmark_reproducibility.py` | v0 landed | @@ -86,13 +86,13 @@ This is still not the final world-class state. Target-native behavior contracts | Runtime Permission Probes | `scripts/probe_runtime_permissions.py`, `reports/runtime_permission_probes.md`, `tests/verify_runtime_permission_probes.py`, `tests/verify_review_studio.py` | v0 landed | | Atlas Scope Policy | `skill_atlas/policy.json`, `scripts/build_skill_atlas.py`, `tests/verify_skill_atlas.py` | v0 landed | | Compiler from IR | Packager consumes compiled target contracts for compiler provenance, generated files, adapter modes, permissions, preserved semantics, warnings, and unsupported features | v0 landed | -| Target Native Contracts | `scripts/compile_skill.py`, `scripts/cross_packager.py`, `reports/compiled_targets.md`, adapter snapshots, and generated target outputs carry native surface, activation policy, resource/script strategy, permission enforcement, install scope, review artifacts, fallback behavior, and unsupported native features | v0 landed | +| Target Native Contracts | `scripts/compile_skill.py`, `scripts/compile_skill_targets.py`, `scripts/cross_packager.py`, `reports/compiled_targets.md`, adapter snapshots, and generated target outputs carry native surface, activation policy, resource/script strategy, permission enforcement, install scope, review artifacts, fallback behavior, and unsupported native features | v0 landed | ## Top Findings ### 1. Target-native behavior contracts are landed, but provider execution is still shallow -`scripts/compile_skill.py` now reads Skill IR and emits target-specific contracts for OpenAI, Claude, generic, Agent Skills compatible, and VS Code / Copilot outputs. The packager embeds `compiler`, `compiled_contract`, `permission_contract`, `target_permission_contract`, `target_native_contract`, `target_transform`, warnings, and unsupported-feature notes in each adapter. The native contract makes the target surface, activation policy, resource strategy, script strategy, permission enforcement mode, install scope, review artifacts, fallback behavior, and unsupported native features reviewable instead of implicit. +`scripts/compile_skill.py` now reads Skill IR and emits target-specific contracts for OpenAI, Claude, generic, Agent Skills compatible, and VS Code / Copilot outputs, with target platform models and contract builders isolated in `scripts/compile_skill_targets.py`. The packager embeds `compiler`, `compiled_contract`, `permission_contract`, `target_permission_contract`, `target_native_contract`, `target_transform`, warnings, and unsupported-feature notes in each adapter. The native contract makes the target surface, activation policy, resource strategy, script strategy, permission enforcement mode, install scope, review artifacts, fallback behavior, and unsupported native features reviewable instead of implicit. Next move: deepen provider-native execution transforms so OpenAI, Claude, VS Code/Copilot, and generic packages can express and verify behavior through real client or installer capabilities, not only auditable contracts and fallback notes. @@ -127,13 +127,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, `43` declared internal modules, `3 / 3` network-capable scripts covered by bounded host policy, `86 / 86` CLI help smoke checks passing across `129` scripts, source-contract hash scope explicit | +| Trust | `0` secret findings, `1` pinned dependency file, `44` declared internal modules, `3 / 3` network-capable scripts covered by bounded host policy, `86 / 86` CLI help smoke checks passing across `130` 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, `656` zip entries, `0` failures, `0` warnings | -| Install Simulation | archive with `656` 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, `657` zip entries, `0` failures, `0` warnings | +| Install Simulation | archive with `657` 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 c198f12..0fdbff9 100644 --- a/reports/skill-overview.html +++ b/reports/skill-overview.html @@ -921,7 +921,7 @@

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

-
资产分布Asset Distribution426项426 itemsSKILL.mdSKILL.mdREADME.mdREADME.mdagents/interface.yamlagents/interface.yamlmanifest.jsonmanifest.jsonreferencesreferencesscriptsscripts
资产分布图展示当前包体的文件和目录重心。The asset distribution chart shows where files and directories are concentrated.
+
资产分布Asset Distribution427项427 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 7e2f5c3..fff7d9a 100644 --- a/reports/skill-overview.json +++ b/reports/skill-overview.json @@ -512,7 +512,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 129 + "file_count": 130 }, { "path": "evals", @@ -527,7 +527,7 @@ "file_count": 229 } ], - "file_count": 426, + "file_count": 427, "folder_count": 4, "distribution": [ { @@ -552,7 +552,7 @@ }, { "label": "scripts", - "value": 129 + "value": 130 }, { "label": "evals", @@ -682,7 +682,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 129 + "file_count": 130 }, { "path": "evals", @@ -996,13 +996,13 @@ "ok": true, "summary": { "reproducibility_ready": true, - "release_lock_ready": true, + "release_lock_ready": false, "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "f2becbf9a38c367c7fcb7448588bd418190838100942f7f75ea01b3f94e28b44", - "source_contract_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "evidence_bundle_sha256": "0e40cccb8f5de72083a28e8853b3fc884d2e7d96fefba5ce4a259cb6c3d566fb", + "source_contract_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "output_case_count": 5, "failure_disclosure_count": 3, "command_count": 23, @@ -1020,11 +1020,11 @@ "world_class_source_pass_count": 6, "world_class_source_blocked_count": 7, "public_claim_ready": false, - "public_claim_blocker_count": 4, - "working_tree_dirty": false, - "changed_file_count": 0 + "public_claim_blocker_count": 5, + "working_tree_dirty": true, + "changed_file_count": 44 }, - "commit": "3e48ee1ad2cd05e58d5cf8e0f83af38530bdcda5", + "commit": "e0b66672f74cf628097355fd84a72af165f2440c", "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.", @@ -1108,9 +1108,9 @@ "failures": [] }, "trust_security": { - "scanned_files": 220, - "script_count": 129, - "internal_module_count": 43, + "scanned_files": 221, + "script_count": 130, + "internal_module_count": 44, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -1128,8 +1128,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 220, - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "package_hash_file_count": 221, + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" }, "skill_atlas": { "skill_count": 12, @@ -1167,8 +1167,8 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873", - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2" + "package_sha256": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3" }, "compatibility": { "openai": "pass", @@ -1199,7 +1199,7 @@ }, "distribution": { "archive_verified": true, - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", "package_verification": "reports/package_verification.json", "install_simulated": true, "install_simulation": "reports/install_simulation.json" @@ -1215,8 +1215,8 @@ "target_count": 4, "adapter_count": 4, "archive_present": true, - "archive_sha256": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2", - "archive_entry_count": 656, + "archive_sha256": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3", + "archive_entry_count": 657, "failure_count": 0, "warning_count": 0 }, @@ -1227,7 +1227,7 @@ "ok": true, "summary": { "archive_present": true, - "archive_entry_count": 656, + "archive_entry_count": 657, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -1294,12 +1294,12 @@ { "field": "archive_sha256", "from": "", - "to": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2" + "to": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3" }, { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "to": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" } ] }, diff --git a/reports/skill_atlas.json b/reports/skill_atlas.json index 358dc6f..9c9d826 100644 --- a/reports/skill_atlas.json +++ b/reports/skill_atlas.json @@ -73,6 +73,7 @@ "scripts/ci_test.py", "scripts/collect_feedback.py", "scripts/compile_skill.py", + "scripts/compile_skill_targets.py", "scripts/context_sizer.py", "scripts/create_iteration_snapshot.py", "scripts/cross_packager.py", diff --git a/reports/skill_os2_audit.json b/reports/skill_os2_audit.json index 693219d..f3200fd 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 129; help failures 0", + "current": "secrets 0; scripts 130; 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 656; install failures 0; permission failures 0", + "current": "zip entries 657; install failures 0; permission failures 0", "target": "Package metadata, archive checksum, package verification, and install simulation pass", "evidence": [ { diff --git a/reports/skill_os2_audit.md b/reports/skill_os2_audit.md index e85fa5d..63e3474 100644 --- a/reports/skill_os2_audit.md +++ b/reports/skill_os2_audit.md @@ -23,11 +23,11 @@ Generated at: `2026-06-16` | Human Adjudication | human-required | 0/5 decisions; pending 5 | Real reviewer decisions recorded before claiming output review completion | Record real A/B choices in the decision template, 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 129; 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 130; 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 656; install failures 0; permission failures 0 | Package metadata, archive checksum, package verification, and install simulation pass | Regenerate registry after package verification so checksums stay aligned. | +| Registry Distribution | pass | zip entries 657; install failures 0; permission failures 0 | Package metadata, archive checksum, package verification, and install simulation pass | Regenerate registry after package verification so checksums stay aligned. | | Review Studio | pass | decision review; warnings 3; score 91 | One page shows gates, evidence paths, blockers, warnings, actions, waivers, and annotations | Resolve human/external warning gates before claiming full release readiness. | | Telemetry Drift | pass | events 1; risk low; recipes 5 | Local-first metadata-only event contract, aggregate drift report, hook recipes, and import path | Keep raw JSONL out of distributed packages and use aggregate reports for Atlas. | | Native Client Telemetry | external-required | external source events 0; adoption samples 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 619c0e5..a3f27f2 100644 --- a/reports/skill_os2_coverage.json +++ b/reports/skill_os2_coverage.json @@ -7,22 +7,22 @@ "item_count": 21, "module_count": 8, "recommended_pr_count": 13, - "pass_count": 21, - "warn_count": 0, + "pass_count": 20, + "warn_count": 1, "missing_count": 0, "extension_track_count": 4, "extension_partial_count": 0, "extension_planned_count": 0, "extension_covered_count": 4, "adaptive_extension_ready": true, - "local_blueprint_ready": true, + "local_blueprint_ready": false, "public_world_class_ready": false, "world_class_evidence_pending_count": 4, - "decision": "local-blueprint-covered-evidence-pending" + "decision": "continue-implementation" }, "status_counts": { - "pass": 21, - "warn": 0, + "pass": 20, + "warn": 1, "missing": 0 }, "extension_status_counts": { @@ -130,7 +130,7 @@ "label": "Trust Security", "status": "pass", "objective": "Scripts, dependencies, permissions, secrets, and package hash are reviewable for team distribution.", - "current": "129 scripts; secrets 0; help failures 0", + "current": "130 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 656; install failures 0", + "current": "archive entries 657; 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": [ @@ -611,7 +611,7 @@ "key": "evidence-consistency", "category": "recommended-pr", "label": "Evidence Consistency", - "status": "pass", + "status": "warn", "objective": "Recommended Skill OS 2.0 implementation PR from the upgrade plan.", "current": "35 consistency checks", "command": "make ci-test", diff --git a/reports/skill_os2_coverage.md b/reports/skill_os2_coverage.md index e8e9cf3..3343f9a 100644 --- a/reports/skill_os2_coverage.md +++ b/reports/skill_os2_coverage.md @@ -4,12 +4,12 @@ Generated at: `2026-06-16` ## Summary -- decision: `local-blueprint-covered-evidence-pending` -- local blueprint ready: `true` +- decision: `continue-implementation` +- local blueprint ready: `false` - public world-class ready: `false` -- pass: `21` / `21` +- pass: `20` / `21` - missing: `0` -- warn: `0` +- warn: `1` - reference extensions: `4` - extension covered: `4` - extension partial: `0` @@ -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` | 129 scripts; secrets 0; help failures 0 | `python3 scripts/yao.py trust .` | `python3 tests/verify_trust_check.py` | +| Trust Security | `pass` | 130 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 656; 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 657; 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` | @@ -48,7 +48,7 @@ This report maps the Skill OS 2.0 upgrade blueprint to concrete local artifacts, | Registry Package Format | `pass` | registry ok True | `make ci-test` | `tests/verify_registry_audit.py` | | Review Studio 2.0 | `pass` | 16 review gates | `make ci-test` | `tests/verify_review_studio.py` | | Migration V2 Docs | `pass` | migration guide present | `make ci-test` | `docs review` | -| Evidence Consistency | `pass` | 35 consistency checks | `make ci-test` | `tests/verify_evidence_consistency.py` | +| Evidence Consistency | `warn` | 35 consistency checks | `make ci-test` | `tests/verify_evidence_consistency.py` | ## Reference Extension Tracks @@ -213,7 +213,7 @@ These extension tracks come from the user-supplied 2.0 reference plan. They are ### Evidence Consistency - objective: Recommended Skill OS 2.0 implementation PR from the upgrade plan. -- status: `pass` +- status: `warn` - existing evidence: `scripts/render_evidence_consistency.py`, `reports/evidence_consistency.json`, `tests/verify_evidence_consistency.py` - next action: Keep this item covered as the implementation evolves. diff --git a/reports/skillops/daily/2026-06-16.json b/reports/skillops/daily/2026-06-16.json index a35cbc8..4ad68d9 100644 --- a/reports/skillops/daily/2026-06-16.json +++ b/reports/skillops/daily/2026-06-16.json @@ -14,8 +14,8 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, - "evidence_consistency_ok": true, + "release_lock_ready": false, + "evidence_consistency_ok": false, "writes_source_files": false, "auto_patch_enabled": false, "failure_count": 0, @@ -31,8 +31,8 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, - "evidence_consistency_ok": true, + "release_lock_ready": false, + "evidence_consistency_ok": false, "writes_source_files": false, "auto_patch_enabled": false, "failure_count": 0 @@ -480,8 +480,8 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, - "evidence_consistency_ok": true + "release_lock_ready": false, + "evidence_consistency_ok": false }, "actions": [ { @@ -493,6 +493,11 @@ "key": "close-world-class-evidence", "priority": "high", "action": "Collect accepted external or human evidence for the pending world-class ledger entries." + }, + { + "key": "refresh-evidence-consistency", + "priority": "high", + "action": "Regenerate evidence-consistency before using this report for release decisions." } ], "failures": [], diff --git a/reports/skillops/daily/2026-06-16.md b/reports/skillops/daily/2026-06-16.md index 105c41c..03950c3 100644 --- a/reports/skillops/daily/2026-06-16.md +++ b/reports/skillops/daily/2026-06-16.md @@ -14,8 +14,8 @@ Generated at: `2026-06-16` - local blueprint ready: `true` - public world-class ready: `false` - world-class pending: `4` -- release lock ready: `true` -- evidence consistency ok: `true` +- release lock ready: `false` +- evidence consistency ok: `false` 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. @@ -35,6 +35,7 @@ This report is an operations cockpit for explicit-source SkillOps. It does not s - `high` Review proposal-only adaptation items before preparing any approval ledger entry. - `high` Collect accepted external or human evidence for the pending world-class ledger entries. +- `high` Regenerate evidence-consistency before using this report for release decisions. ## Opportunities diff --git a/reports/skillops/weekly/2026-W25.json b/reports/skillops/weekly/2026-W25.json index 998d23e..f88d378 100644 --- a/reports/skillops/weekly/2026-W25.json +++ b/reports/skillops/weekly/2026-W25.json @@ -15,8 +15,8 @@ "top_score": 88, "skill_count": 12, "actionable_portfolio_issue_count": 0, - "release_lock_ready": true, - "evidence_consistency_ok": true, + "release_lock_ready": false, + "evidence_consistency_ok": false, "public_world_class_ready": false, "world_class_pending_count": 4, "writes_source_files": false, @@ -35,8 +35,8 @@ "top_score": 88, "skill_count": 12, "actionable_portfolio_issue_count": 0, - "release_lock_ready": true, - "evidence_consistency_ok": true, + "release_lock_ready": false, + "evidence_consistency_ok": false, "public_world_class_ready": false, "world_class_pending_count": 4, "writes_source_files": false, @@ -287,8 +287,8 @@ "no_route_opportunity_count": 0 }, "release_state": { - "release_lock_ready": true, - "evidence_consistency_ok": true, + "release_lock_ready": false, + "evidence_consistency_ok": false, "public_world_class_ready": false, "world_class_pending_count": 4 }, @@ -302,6 +302,11 @@ "key": "close-world-class-evidence", "priority": "high", "action": "Collect accepted external or human evidence for pending world-class ledger entries before public claims." + }, + { + "key": "refresh-evidence-consistency", + "priority": "high", + "action": "Regenerate evidence consistency before using this curator report for release decisions." } ], "failures": [], diff --git a/reports/skillops/weekly/2026-W25.md b/reports/skillops/weekly/2026-W25.md index 4d75fc3..0d56ed2 100644 --- a/reports/skillops/weekly/2026-W25.md +++ b/reports/skillops/weekly/2026-W25.md @@ -13,8 +13,8 @@ Week: `2026-W25` - top_score: `88` - skill_count: `12` - actionable_portfolio_issue_count: `0` -- release_lock_ready: `True` -- evidence_consistency_ok: `True` +- release_lock_ready: `False` +- evidence_consistency_ok: `False` - public_world_class_ready: `False` - world_class_pending_count: `4` @@ -34,6 +34,7 @@ This report is a weekly curator cockpit for generated SkillOps evidence. It does - `high` Review the top ready-for-approval SkillOps opportunities before preparing any approval ledger entry. - `high` Collect accepted external or human evidence for pending world-class ledger entries before public claims. +- `high` Regenerate evidence consistency before using this curator report for release decisions. ## Curator Queue diff --git a/reports/upgrade_check.json b/reports/upgrade_check.json index b5ab2b6..4c89ccf 100644 --- a/reports/upgrade_check.json +++ b/reports/upgrade_check.json @@ -70,12 +70,12 @@ { "field": "archive_sha256", "from": "", - "to": "2f0203f197ad84b5a9d3ef630e836fab2f1040aa02629e6f524fd2851d785ed2" + "to": "a96372e32dc1407f1bf71b63c330e9e39a40e52ee15afb7d89c1e0da470a3cd3" }, { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "70e1edf36e5f4f18d60fedb0314a09e79ffdce2c6fd5fa7fb9f8968281f7d873" + "to": "e30f37d1ae301f3d696a70e1fed375ba2e0bb2cfc26a1484c202143842817565" } ] }, diff --git a/scripts/compile_skill.py b/scripts/compile_skill.py index 4f653c4..997e722 100644 --- a/scripts/compile_skill.py +++ b/scripts/compile_skill.py @@ -11,6 +11,7 @@ except ImportError: # pragma: no cover yaml = None from skill_ir_paths import find_skill_ir as find_skill_ir_document +from compile_skill_targets import TARGET_TRANSFORMS, target_native_contract, target_permission_contract ROOT = Path(__file__).resolve().parent.parent @@ -18,92 +19,6 @@ COMPILER_SCHEMA_VERSION = "1.0" COMPILER_NAME = "yao-skill-ir-compiler" -TARGET_TRANSFORMS: dict[str, dict[str, Any]] = { - "openai": { - "adapter_mode": "metadata-adapter", - "generated_files": ["targets/openai/adapter.json", "targets/openai/agents/openai.yaml"], - "metadata_mapping": { - "display_name": "targets/openai/agents/openai.yaml::interface.display_name", - "default_prompt": "targets/openai/agents/openai.yaml::interface.default_prompt", - "activation": "targets/openai/agents/openai.yaml::compatibility.activation_mode", - "execution": "targets/openai/agents/openai.yaml::compatibility.execution_context", - "trust": "targets/openai/agents/openai.yaml::compatibility.trust_level", - "permissions": "targets/openai/agents/openai.yaml::compatibility.permission_contract", - "degradation": "targets/openai/agents/openai.yaml::compatibility.degradation_strategy", - }, - "preserved_semantics": ["trigger", "workflow-counts", "resources", "eval-plan", "risk", "governance", "runtime", "trust", "permissions"], - "unsupported_features": ["client-native script permission prompts are represented as permission contract metadata"], - }, - "claude": { - "adapter_mode": "neutral-source-plus-adapter", - "generated_files": ["targets/claude/adapter.json", "targets/claude/README.md"], - "metadata_mapping": { - "display_name": "targets/claude/adapter.json::display_name", - "default_prompt": "targets/claude/adapter.json::default_prompt", - "activation": "targets/claude/adapter.json::activation_mode", - "execution": "targets/claude/adapter.json::execution_context", - "trust": "targets/claude/adapter.json::trust_level", - "permissions": "targets/claude/adapter.json::target_permission_contract", - "degradation": "targets/claude/adapter.json::degradation_strategy", - }, - "preserved_semantics": ["trigger", "workflow-counts", "resources", "eval-plan", "risk", "governance", "runtime", "trust", "permissions"], - "unsupported_features": ["vendor-native metadata fields are carried as adapter JSON and README notes"], - }, - "generic": { - "adapter_mode": "agent-skills-compatible", - "generated_files": ["targets/generic/adapter.json"], - "metadata_mapping": { - "display_name": "targets/generic/adapter.json::display_name", - "default_prompt": "targets/generic/adapter.json::default_prompt", - "activation": "targets/generic/adapter.json::activation_mode", - "execution": "targets/generic/adapter.json::execution_context", - "trust": "targets/generic/adapter.json::trust_level", - "permissions": "targets/generic/adapter.json::target_permission_contract", - "degradation": "targets/generic/adapter.json::degradation_strategy", - }, - "preserved_semantics": ["trigger", "workflow-counts", "resources", "eval-plan", "risk", "governance", "runtime", "trust", "permissions"], - "unsupported_features": [], - }, - "agent-skills-compatible": { - "adapter_mode": "neutral-agent-skills-source", - "generated_files": ["SKILL.md", "agents/interface.yaml"], - "metadata_mapping": { - "name": "SKILL.md::frontmatter.name", - "description": "SKILL.md::frontmatter.description", - "interface": "agents/interface.yaml", - "manifest": "manifest.json", - }, - "preserved_semantics": ["trigger", "workflow", "resources", "eval-plan", "risk", "governance", "runtime", "trust", "permissions"], - "unsupported_features": [], - }, - "agent-skills": { - "adapter_mode": "neutral-agent-skills-source", - "generated_files": ["SKILL.md", "agents/interface.yaml"], - "metadata_mapping": { - "name": "SKILL.md::frontmatter.name", - "description": "SKILL.md::frontmatter.description", - "interface": "agents/interface.yaml", - "manifest": "manifest.json", - }, - "preserved_semantics": ["trigger", "workflow", "resources", "eval-plan", "risk", "governance", "runtime", "trust", "permissions"], - "unsupported_features": [], - }, - "vscode": { - "adapter_mode": "vscode-agent-skills-adapter", - "generated_files": ["targets/vscode/adapter.json", "targets/vscode/README.md"], - "metadata_mapping": { - "name": "folder-name-and-SKILL.md::frontmatter.name", - "description": "SKILL.md::frontmatter.description", - "interface": "agents/interface.yaml", - "permissions": "targets/vscode/adapter.json::target_permission_contract", - "install_scope": "targets/vscode/README.md", - }, - "preserved_semantics": ["trigger", "workflow", "resources", "eval-plan", "risk", "governance", "runtime", "trust", "permissions"], - "unsupported_features": ["VS Code installation scope is documented but not installed by this compiler"], - }, -} - - def display_path(path: Path, root: Path = ROOT) -> str: try: return str(path.resolve().relative_to(root.resolve())) @@ -237,197 +152,6 @@ def permission_contract(skill_dir: Path) -> dict[str, Any]: } -TARGET_PERMISSION_MODELS = { - "openai": { - "model": "metadata-only", - "native_enforcement": False, - "representation": "targets/openai/agents/openai.yaml::compatibility.permission_contract plus adapter.json", - "operator_note": "OpenAI target carries permission metadata for reviewer visibility; host enforcement remains outside the package.", - }, - "claude": { - "model": "neutral-source-plus-adapter", - "native_enforcement": False, - "representation": "targets/claude/adapter.json::target_permission_contract and README notes", - "operator_note": "Claude-compatible package keeps permission intent in adapter metadata for install review.", - }, - "generic": { - "model": "agent-skills-compatible-metadata", - "native_enforcement": False, - "representation": "targets/generic/adapter.json::target_permission_contract", - "operator_note": "Generic target exposes permission metadata for downstream clients to enforce or review.", - }, - "vscode": { - "model": "vscode-workspace-trust-plus-metadata", - "native_enforcement": False, - "representation": "targets/vscode/adapter.json::target_permission_contract and targets/vscode/README.md install notes", - "operator_note": "VS Code target relies on project or user skill installation plus VS Code workspace trust; Yao preserves permission metadata for reviewer and installer checks.", - }, -} - - -TARGET_NATIVE_MODELS = { - "openai": { - "native_surface": "OpenAI-style interface metadata plus neutral Agent Skills source", - "activation_policy": "Use frontmatter description for catalog routing and targets/openai/agents/openai.yaml for display name, default prompt, and compatibility metadata.", - "resource_strategy": "Ship the neutral source tree and expose OpenAI-facing interface metadata as a generated companion file.", - "script_strategy": "Keep scripts as local package resources; expose help-smoke and permission metadata for reviewer approval before execution.", - "permission_enforcement": "metadata-only", - "install_scope": "plugin or skill package consumer", - "review_artifacts": ["targets/openai/agents/openai.yaml", "targets/openai/adapter.json", "reports/review-studio.html"], - "fallback_behavior": "If OpenAI-native metadata is ignored, the package remains readable as neutral Agent Skills source.", - "unsupported_native_features": [ - "client-native permission prompts", - "provider-executed scripts", - ], - }, - "claude": { - "native_surface": "Claude-compatible neutral source folder with adapter notes", - "activation_policy": "Use SKILL.md frontmatter description as the primary activation contract and adapter.json for review metadata.", - "resource_strategy": "Preserve the source tree directly; write target notes in targets/claude/README.md.", - "script_strategy": "Scripts remain local package resources and must be reviewed through trust and permission reports before use.", - "permission_enforcement": "metadata-fallback", - "install_scope": "user or project skill directory", - "review_artifacts": ["targets/claude/README.md", "targets/claude/adapter.json", "reports/review-studio.html"], - "fallback_behavior": "If Claude-specific metadata is not consumed, SKILL.md and references remain the source of truth.", - "unsupported_native_features": [ - "vendor-native permission enforcement", - "provider-specific execution transforms", - ], - }, - "generic": { - "native_surface": "Agent Skills compatible neutral package", - "activation_policy": "Use SKILL.md name and description; consumers decide automatic or manual activation.", - "resource_strategy": "Preserve references, scripts, assets, evals, reports, and adapter metadata as relative package resources.", - "script_strategy": "Expose script and permission metadata for downstream clients or installers to enforce.", - "permission_enforcement": "consumer-enforced-or-metadata-only", - "install_scope": "generic Agent Skills compatible root", - "review_artifacts": ["targets/generic/adapter.json", "reports/review-studio.html"], - "fallback_behavior": "Neutral source is the runtime fallback.", - "unsupported_native_features": [], - }, - "agent-skills-compatible": { - "native_surface": "Agent Skills standard source tree", - "activation_policy": "Use SKILL.md frontmatter name and description for progressive disclosure.", - "resource_strategy": "Keep optional directories as relative resources next to SKILL.md.", - "script_strategy": "Scripts remain local optional resources and should advertise --help when executable.", - "permission_enforcement": "consumer-enforced-or-metadata-only", - "install_scope": "Agent Skills source root", - "review_artifacts": ["SKILL.md", "agents/interface.yaml", "reports/review-studio.html"], - "fallback_behavior": "The source tree itself is the target artifact.", - "unsupported_native_features": [], - }, - "agent-skills": { - "native_surface": "Agent Skills standard source tree", - "activation_policy": "Use SKILL.md frontmatter name and description for progressive disclosure.", - "resource_strategy": "Keep optional directories as relative resources next to SKILL.md.", - "script_strategy": "Scripts remain local optional resources and should advertise --help when executable.", - "permission_enforcement": "consumer-enforced-or-metadata-only", - "install_scope": "Agent Skills source root", - "review_artifacts": ["SKILL.md", "agents/interface.yaml", "reports/review-studio.html"], - "fallback_behavior": "The source tree itself is the target artifact.", - "unsupported_native_features": [], - }, - "vscode": { - "native_surface": "VS Code/Copilot Agent Skills project or user scope", - "activation_policy": "Use folder name plus SKILL.md name/description; keep description under platform limits.", - "resource_strategy": "Install as project or user scoped skill source, preserving relative references and scripts.", - "script_strategy": "Scripts require workspace trust and operator/client approval outside this compiler.", - "permission_enforcement": "client-or-workspace-trust", - "install_scope": "VS Code user or project skills directory", - "review_artifacts": ["SKILL.md", "agents/interface.yaml", "reports/review-studio.html"], - "fallback_behavior": "If VS Code scope is not installed, use the neutral Agent Skills source.", - "unsupported_native_features": [ - "automatic VS Code installation", - ], - }, -} - - -def target_permission_contract(target: str, permissions: dict[str, Any]) -> dict[str, Any]: - model = TARGET_PERMISSION_MODELS.get( - target, - { - "model": "metadata-only", - "native_enforcement": False, - "representation": "adapter metadata", - "operator_note": "Permission semantics are preserved as metadata for reviewer visibility.", - }, - ) - return { - "schema_version": "1.0", - "target": target, - "permission_model": model["model"], - "native_enforcement": model["native_enforcement"], - "representation": model["representation"], - "review_required": bool(permissions.get("review_required")), - "declared_capabilities": permissions.get("declared_capabilities", []), - "capability_counts": { - name: item.get("script_count", 0) - for name, item in permissions.get("capabilities", {}).items() - }, - "evidence": permissions.get("source", ""), - "operator_note": model["operator_note"], - } - - -def target_native_contract( - target: str, - profile: dict[str, Any], - contract: dict[str, Any], - target_permissions: dict[str, Any], -) -> dict[str, Any]: - model = TARGET_NATIVE_MODELS.get( - target, - { - "native_surface": "adapter metadata", - "activation_policy": "Carry activation semantics as metadata for the target consumer.", - "resource_strategy": "Preserve neutral package resources.", - "script_strategy": "Expose script metadata for reviewer visibility.", - "permission_enforcement": "metadata-only", - "install_scope": "target consumer", - "review_artifacts": ["adapter.json", "reports/review-studio.html"], - "fallback_behavior": "Use neutral source package.", - "unsupported_native_features": [], - }, - ) - return { - "schema_version": "1.0", - "target": target, - "native_surface": model["native_surface"], - "activation": { - "policy": model["activation_policy"], - "trigger_description": contract.get("trigger", {}).get("description", ""), - "manual_activation_supported": True, - "automatic_activation_note": "Depends on the target client route/catalog implementation.", - }, - "resources": { - "strategy": model["resource_strategy"], - "counts": contract.get("resources", {}).get("counts", {}), - "generated_files": profile.get("generated_files", []), - }, - "scripts": { - "strategy": model["script_strategy"], - "script_count": contract.get("resources", {}).get("counts", {}).get("scripts", 0), - "help_smoke_failed_count": contract.get("permissions", {}).get("help_smoke", {}).get("failed_count", 0), - }, - "permissions": { - "enforcement": model["permission_enforcement"], - "native_enforcement": bool(target_permissions.get("native_enforcement")), - "declared_capabilities": target_permissions.get("declared_capabilities", []), - "review_required": bool(target_permissions.get("review_required")), - }, - "review": { - "artifacts": model["review_artifacts"], - "fallback_behavior": model["fallback_behavior"], - "unsupported_native_features": [ - *model.get("unsupported_native_features", []), - *profile.get("unsupported_features", []), - ], - }, - "install_scope": model["install_scope"], - } - - def load_sources(skill_dir: Path) -> dict[str, Any]: skill_dir = skill_dir.resolve() frontmatter = read_frontmatter(skill_dir / "SKILL.md") diff --git a/scripts/compile_skill_targets.py b/scripts/compile_skill_targets.py new file mode 100644 index 0000000..414740f --- /dev/null +++ b/scripts/compile_skill_targets.py @@ -0,0 +1,282 @@ +from typing import Any + + +SCRIPT_INTERFACE = "internal-module" +SCRIPT_INTERFACE_REASON = "Imported by compile_skill for target platform model and contract builders." + + +TARGET_TRANSFORMS: dict[str, dict[str, Any]] = { + "openai": { + "adapter_mode": "metadata-adapter", + "generated_files": ["targets/openai/adapter.json", "targets/openai/agents/openai.yaml"], + "metadata_mapping": { + "display_name": "targets/openai/agents/openai.yaml::interface.display_name", + "default_prompt": "targets/openai/agents/openai.yaml::interface.default_prompt", + "activation": "targets/openai/agents/openai.yaml::compatibility.activation_mode", + "execution": "targets/openai/agents/openai.yaml::compatibility.execution_context", + "trust": "targets/openai/agents/openai.yaml::compatibility.trust_level", + "permissions": "targets/openai/agents/openai.yaml::compatibility.permission_contract", + "degradation": "targets/openai/agents/openai.yaml::compatibility.degradation_strategy", + }, + "preserved_semantics": ["trigger", "workflow-counts", "resources", "eval-plan", "risk", "governance", "runtime", "trust", "permissions"], + "unsupported_features": ["client-native script permission prompts are represented as permission contract metadata"], + }, + "claude": { + "adapter_mode": "neutral-source-plus-adapter", + "generated_files": ["targets/claude/adapter.json", "targets/claude/README.md"], + "metadata_mapping": { + "display_name": "targets/claude/adapter.json::display_name", + "default_prompt": "targets/claude/adapter.json::default_prompt", + "activation": "targets/claude/adapter.json::activation_mode", + "execution": "targets/claude/adapter.json::execution_context", + "trust": "targets/claude/adapter.json::trust_level", + "permissions": "targets/claude/adapter.json::target_permission_contract", + "degradation": "targets/claude/adapter.json::degradation_strategy", + }, + "preserved_semantics": ["trigger", "workflow-counts", "resources", "eval-plan", "risk", "governance", "runtime", "trust", "permissions"], + "unsupported_features": ["vendor-native metadata fields are carried as adapter JSON and README notes"], + }, + "generic": { + "adapter_mode": "agent-skills-compatible", + "generated_files": ["targets/generic/adapter.json"], + "metadata_mapping": { + "display_name": "targets/generic/adapter.json::display_name", + "default_prompt": "targets/generic/adapter.json::default_prompt", + "activation": "targets/generic/adapter.json::activation_mode", + "execution": "targets/generic/adapter.json::execution_context", + "trust": "targets/generic/adapter.json::trust_level", + "permissions": "targets/generic/adapter.json::target_permission_contract", + "degradation": "targets/generic/adapter.json::degradation_strategy", + }, + "preserved_semantics": ["trigger", "workflow-counts", "resources", "eval-plan", "risk", "governance", "runtime", "trust", "permissions"], + "unsupported_features": [], + }, + "agent-skills-compatible": { + "adapter_mode": "neutral-agent-skills-source", + "generated_files": ["SKILL.md", "agents/interface.yaml"], + "metadata_mapping": { + "name": "SKILL.md::frontmatter.name", + "description": "SKILL.md::frontmatter.description", + "interface": "agents/interface.yaml", + "manifest": "manifest.json", + }, + "preserved_semantics": ["trigger", "workflow", "resources", "eval-plan", "risk", "governance", "runtime", "trust", "permissions"], + "unsupported_features": [], + }, + "agent-skills": { + "adapter_mode": "neutral-agent-skills-source", + "generated_files": ["SKILL.md", "agents/interface.yaml"], + "metadata_mapping": { + "name": "SKILL.md::frontmatter.name", + "description": "SKILL.md::frontmatter.description", + "interface": "agents/interface.yaml", + "manifest": "manifest.json", + }, + "preserved_semantics": ["trigger", "workflow", "resources", "eval-plan", "risk", "governance", "runtime", "trust", "permissions"], + "unsupported_features": [], + }, + "vscode": { + "adapter_mode": "vscode-agent-skills-adapter", + "generated_files": ["targets/vscode/adapter.json", "targets/vscode/README.md"], + "metadata_mapping": { + "name": "folder-name-and-SKILL.md::frontmatter.name", + "description": "SKILL.md::frontmatter.description", + "interface": "agents/interface.yaml", + "permissions": "targets/vscode/adapter.json::target_permission_contract", + "install_scope": "targets/vscode/README.md", + }, + "preserved_semantics": ["trigger", "workflow", "resources", "eval-plan", "risk", "governance", "runtime", "trust", "permissions"], + "unsupported_features": ["VS Code installation scope is documented but not installed by this compiler"], + }, +} + + +TARGET_PERMISSION_MODELS = { + "openai": { + "model": "metadata-only", + "native_enforcement": False, + "representation": "targets/openai/agents/openai.yaml::compatibility.permission_contract plus adapter.json", + "operator_note": "OpenAI target carries permission metadata for reviewer visibility; host enforcement remains outside the package.", + }, + "claude": { + "model": "neutral-source-plus-adapter", + "native_enforcement": False, + "representation": "targets/claude/adapter.json::target_permission_contract and README notes", + "operator_note": "Claude-compatible package keeps permission intent in adapter metadata for install review.", + }, + "generic": { + "model": "agent-skills-compatible-metadata", + "native_enforcement": False, + "representation": "targets/generic/adapter.json::target_permission_contract", + "operator_note": "Generic target exposes permission metadata for downstream clients to enforce or review.", + }, + "vscode": { + "model": "vscode-workspace-trust-plus-metadata", + "native_enforcement": False, + "representation": "targets/vscode/adapter.json::target_permission_contract and targets/vscode/README.md install notes", + "operator_note": "VS Code target relies on project or user skill installation plus VS Code workspace trust; Yao preserves permission metadata for reviewer and installer checks.", + }, +} + + +TARGET_NATIVE_MODELS = { + "openai": { + "native_surface": "OpenAI-style interface metadata plus neutral Agent Skills source", + "activation_policy": "Use frontmatter description for catalog routing and targets/openai/agents/openai.yaml for display name, default prompt, and compatibility metadata.", + "resource_strategy": "Ship the neutral source tree and expose OpenAI-facing interface metadata as a generated companion file.", + "script_strategy": "Keep scripts as local package resources; expose help-smoke and permission metadata for reviewer approval before execution.", + "permission_enforcement": "metadata-only", + "install_scope": "plugin or skill package consumer", + "review_artifacts": ["targets/openai/agents/openai.yaml", "targets/openai/adapter.json", "reports/review-studio.html"], + "fallback_behavior": "If OpenAI-native metadata is ignored, the package remains readable as neutral Agent Skills source.", + "unsupported_native_features": [ + "client-native permission prompts", + "provider-executed scripts", + ], + }, + "claude": { + "native_surface": "Claude-compatible neutral source folder with adapter notes", + "activation_policy": "Use SKILL.md frontmatter description as the primary activation contract and adapter.json for review metadata.", + "resource_strategy": "Preserve the source tree directly; write target notes in targets/claude/README.md.", + "script_strategy": "Scripts remain local package resources and must be reviewed through trust and permission reports before use.", + "permission_enforcement": "metadata-fallback", + "install_scope": "user or project skill directory", + "review_artifacts": ["targets/claude/README.md", "targets/claude/adapter.json", "reports/review-studio.html"], + "fallback_behavior": "If Claude-specific metadata is not consumed, SKILL.md and references remain the source of truth.", + "unsupported_native_features": [ + "vendor-native permission enforcement", + "provider-specific execution transforms", + ], + }, + "generic": { + "native_surface": "Agent Skills compatible neutral package", + "activation_policy": "Use SKILL.md name and description; consumers decide automatic or manual activation.", + "resource_strategy": "Preserve references, scripts, assets, evals, reports, and adapter metadata as relative package resources.", + "script_strategy": "Expose script and permission metadata for downstream clients or installers to enforce.", + "permission_enforcement": "consumer-enforced-or-metadata-only", + "install_scope": "generic Agent Skills compatible root", + "review_artifacts": ["targets/generic/adapter.json", "reports/review-studio.html"], + "fallback_behavior": "Neutral source is the runtime fallback.", + "unsupported_native_features": [], + }, + "agent-skills-compatible": { + "native_surface": "Agent Skills standard source tree", + "activation_policy": "Use SKILL.md frontmatter name and description for progressive disclosure.", + "resource_strategy": "Keep optional directories as relative resources next to SKILL.md.", + "script_strategy": "Scripts remain local optional resources and should advertise --help when executable.", + "permission_enforcement": "consumer-enforced-or-metadata-only", + "install_scope": "Agent Skills source root", + "review_artifacts": ["SKILL.md", "agents/interface.yaml", "reports/review-studio.html"], + "fallback_behavior": "The source tree itself is the target artifact.", + "unsupported_native_features": [], + }, + "agent-skills": { + "native_surface": "Agent Skills standard source tree", + "activation_policy": "Use SKILL.md frontmatter name and description for progressive disclosure.", + "resource_strategy": "Keep optional directories as relative resources next to SKILL.md.", + "script_strategy": "Scripts remain local optional resources and should advertise --help when executable.", + "permission_enforcement": "consumer-enforced-or-metadata-only", + "install_scope": "Agent Skills source root", + "review_artifacts": ["SKILL.md", "agents/interface.yaml", "reports/review-studio.html"], + "fallback_behavior": "The source tree itself is the target artifact.", + "unsupported_native_features": [], + }, + "vscode": { + "native_surface": "VS Code/Copilot Agent Skills project or user scope", + "activation_policy": "Use folder name plus SKILL.md name/description; keep description under platform limits.", + "resource_strategy": "Install as project or user scoped skill source, preserving relative references and scripts.", + "script_strategy": "Scripts require workspace trust and operator/client approval outside this compiler.", + "permission_enforcement": "client-or-workspace-trust", + "install_scope": "VS Code user or project skills directory", + "review_artifacts": ["SKILL.md", "agents/interface.yaml", "reports/review-studio.html"], + "fallback_behavior": "If VS Code scope is not installed, use the neutral Agent Skills source.", + "unsupported_native_features": [ + "automatic VS Code installation", + ], + }, +} + + +def target_permission_contract(target: str, permissions: dict[str, Any]) -> dict[str, Any]: + model = TARGET_PERMISSION_MODELS.get( + target, + { + "model": "metadata-only", + "native_enforcement": False, + "representation": "adapter metadata", + "operator_note": "Permission semantics are preserved as metadata for reviewer visibility.", + }, + ) + return { + "schema_version": "1.0", + "target": target, + "permission_model": model["model"], + "native_enforcement": model["native_enforcement"], + "representation": model["representation"], + "review_required": bool(permissions.get("review_required")), + "declared_capabilities": permissions.get("declared_capabilities", []), + "capability_counts": { + name: item.get("script_count", 0) + for name, item in permissions.get("capabilities", {}).items() + }, + "evidence": permissions.get("source", ""), + "operator_note": model["operator_note"], + } + + +def target_native_contract( + target: str, + profile: dict[str, Any], + contract: dict[str, Any], + target_permissions: dict[str, Any], +) -> dict[str, Any]: + model = TARGET_NATIVE_MODELS.get( + target, + { + "native_surface": "adapter metadata", + "activation_policy": "Carry activation semantics as metadata for the target consumer.", + "resource_strategy": "Preserve neutral package resources.", + "script_strategy": "Expose script metadata for reviewer visibility.", + "permission_enforcement": "metadata-only", + "install_scope": "target consumer", + "review_artifacts": ["adapter.json", "reports/review-studio.html"], + "fallback_behavior": "Use neutral source package.", + "unsupported_native_features": [], + }, + ) + return { + "schema_version": "1.0", + "target": target, + "native_surface": model["native_surface"], + "activation": { + "policy": model["activation_policy"], + "trigger_description": contract.get("trigger", {}).get("description", ""), + "manual_activation_supported": True, + "automatic_activation_note": "Depends on the target client route/catalog implementation.", + }, + "resources": { + "strategy": model["resource_strategy"], + "counts": contract.get("resources", {}).get("counts", {}), + "generated_files": profile.get("generated_files", []), + }, + "scripts": { + "strategy": model["script_strategy"], + "script_count": contract.get("resources", {}).get("counts", {}).get("scripts", 0), + "help_smoke_failed_count": contract.get("permissions", {}).get("help_smoke", {}).get("failed_count", 0), + }, + "permissions": { + "enforcement": model["permission_enforcement"], + "native_enforcement": bool(target_permissions.get("native_enforcement")), + "declared_capabilities": target_permissions.get("declared_capabilities", []), + "review_required": bool(target_permissions.get("review_required")), + }, + "review": { + "artifacts": model["review_artifacts"], + "fallback_behavior": model["fallback_behavior"], + "unsupported_native_features": [ + *model.get("unsupported_native_features", []), + *profile.get("unsupported_features", []), + ], + }, + "install_scope": model["install_scope"], + } diff --git a/skill_atlas/catalog.json b/skill_atlas/catalog.json index d2395b3..3e4ec3b 100644 --- a/skill_atlas/catalog.json +++ b/skill_atlas/catalog.json @@ -29,6 +29,7 @@ "scripts/ci_test.py", "scripts/collect_feedback.py", "scripts/compile_skill.py", + "scripts/compile_skill_targets.py", "scripts/context_sizer.py", "scripts/create_iteration_snapshot.py", "scripts/cross_packager.py", diff --git a/tests/verify_trust_check.py b/tests/verify_trust_check.py index 2f55b63..0312d69 100644 --- a/tests/verify_trust_check.py +++ b/tests/verify_trust_check.py @@ -96,6 +96,7 @@ def main() -> None: script_map = {item["path"]: item for item in payload["scripts"]} for internal_module in [ "scripts/build_skill_atlas_layout.py", + "scripts/compile_skill_targets.py", "scripts/review_studio_formatting.py", "scripts/review_studio_gates.py", "scripts/review_studio_layout.py", @@ -128,6 +129,7 @@ def main() -> None: assert script_map[internal_module]["interface_declared"], script_map[internal_module] warning_text = "\n".join(payload["warnings"]) assert "build_skill_atlas_layout.py" not in warning_text, payload["warnings"] + assert "compile_skill_targets.py" not in warning_text, payload["warnings"] assert "review_studio_formatting.py" not in warning_text, payload["warnings"] assert "review_studio_gates.py" not in warning_text, payload["warnings"] assert "review_studio_layout.py" not in warning_text, payload["warnings"]
路径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