feat: add world-class submission kit
This commit is contained in:
@@ -24,6 +24,7 @@ tests/tmp_baseline_compare.*
|
||||
reports/release_snapshots/
|
||||
reports/telemetry_events.jsonl
|
||||
.yao/
|
||||
evidence/world_class/submission-kit/
|
||||
evidence/world_class/submissions/
|
||||
|
||||
# Local business-skill experiments belong outside this meta-skill repo unless promoted intentionally.
|
||||
|
||||
@@ -143,6 +143,7 @@ python3 scripts/yao.py package-verify . --package-dir dist --require-zip
|
||||
python3 scripts/yao.py install-simulate . --package-dir dist
|
||||
python3 scripts/yao.py upgrade-check . --previous-package-json registry/examples/yao-meta-skill-1.0.0.json
|
||||
python3 scripts/yao.py world-class-evidence .
|
||||
python3 scripts/yao.py world-class-submission-kit . --output-dir /tmp/yao-world-class-submission-kit
|
||||
python3 scripts/yao.py world-class-ledger .
|
||||
python3 scripts/yao.py world-class-intake .
|
||||
python3 scripts/yao.py world-class-claim-guard .
|
||||
|
||||
@@ -7,6 +7,7 @@ The templates in `templates/` are review aids only. They do not count as accepte
|
||||
Run:
|
||||
|
||||
```bash
|
||||
python3 scripts/yao.py world-class-submission-kit . --output-dir /tmp/yao-world-class-submission-kit
|
||||
python3 scripts/yao.py world-class-intake .
|
||||
```
|
||||
|
||||
@@ -20,4 +21,6 @@ The intake validator checks:
|
||||
|
||||
The generated intake report also includes an `operator_checklist` for each pending evidence item. Use it to find the template path, target submission path, preparation command, validation command, required provenance, success checks, and privacy boundary before asking a reviewer or external operator to submit evidence.
|
||||
|
||||
The submission kit command creates editable JSON drafts plus a local README for an external operator or human reviewer. Those drafts keep `template_only: true` and do not count as evidence until the real run or review exists, the packet is edited truthfully, and `world-class-intake` validates it.
|
||||
|
||||
Accepted intake means "ready for ledger review", not "world-class complete". The ledger remains the source of truth for `ready_to_claim_world_class`.
|
||||
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"schema_version": "2.0",
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"package_count": 1,
|
||||
"packages": [
|
||||
{
|
||||
@@ -16,7 +16,7 @@
|
||||
"vscode"
|
||||
],
|
||||
"package_metadata": "registry/packages/yao-meta-skill.json",
|
||||
"package_sha256": "0b47fb8b2db508e32d5aafd5c46bd008dc23493c1ff909427686609e9f99d5a9"
|
||||
"package_sha256": "4871c36233a53615c8e19c1c59449af60e732fff2d389742ca510422d7cbac75"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -16,8 +16,8 @@
|
||||
"trust_level": "local",
|
||||
"license": "MIT",
|
||||
"checksums": {
|
||||
"package_sha256": "0b47fb8b2db508e32d5aafd5c46bd008dc23493c1ff909427686609e9f99d5a9",
|
||||
"archive_sha256": "934b2967ff56afa5d725b9c129d4fc1e280854d85aa09783ffdb1b6b3108346d"
|
||||
"package_sha256": "4871c36233a53615c8e19c1c59449af60e732fff2d389742ca510422d7cbac75",
|
||||
"archive_sha256": "fe47e53a7a89918ef2d7ae53c1e62a6b73da0bd80904d5a157c71a2758c8004e"
|
||||
},
|
||||
"compatibility": {
|
||||
"openai": "pass",
|
||||
@@ -48,10 +48,10 @@
|
||||
},
|
||||
"distribution": {
|
||||
"archive_verified": true,
|
||||
"archive_sha256": "934b2967ff56afa5d725b9c129d4fc1e280854d85aa09783ffdb1b6b3108346d",
|
||||
"archive_sha256": "fe47e53a7a89918ef2d7ae53c1e62a6b73da0bd80904d5a157c71a2758c8004e",
|
||||
"package_verification": "reports/package_verification.json",
|
||||
"install_simulated": true,
|
||||
"install_simulation": "reports/install_simulation.json"
|
||||
},
|
||||
"generated_at": "2026-06-14"
|
||||
"generated_at": "2026-06-13"
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"ok": true,
|
||||
"schema_version": "2.0",
|
||||
"generated_at": "2026-06-13T22:00:20Z",
|
||||
"generated_at": "2026-06-13T22:21:26Z",
|
||||
"skill_dir": ".",
|
||||
"privacy_contract": {
|
||||
"storage": "local-first",
|
||||
@@ -25,14 +25,14 @@
|
||||
},
|
||||
"summary": {
|
||||
"event_count": 1,
|
||||
"adoption_sample_count": 0,
|
||||
"activation_count": 0,
|
||||
"accepted_count": 0,
|
||||
"adoption_sample_count": 1,
|
||||
"activation_count": 1,
|
||||
"accepted_count": 1,
|
||||
"edited_count": 0,
|
||||
"rejected_count": 0,
|
||||
"missed_count": 0,
|
||||
"failed_count": 0,
|
||||
"adoption_rate": 0,
|
||||
"adoption_rate": 100.0,
|
||||
"missed_trigger_count": 0,
|
||||
"wrong_trigger_count": 0,
|
||||
"bad_output_count": 0,
|
||||
@@ -41,7 +41,7 @@
|
||||
"review_overdue_count": 0,
|
||||
"risk_band": "low",
|
||||
"event_types": {
|
||||
"review_event": 1
|
||||
"skill_activation": 1
|
||||
},
|
||||
"failure_types": {},
|
||||
"source_types": {
|
||||
@@ -53,31 +53,31 @@
|
||||
{
|
||||
"skill": "yao-meta-skill",
|
||||
"events": 1,
|
||||
"adoption_events": 0,
|
||||
"accepted": 0,
|
||||
"adoption_events": 1,
|
||||
"accepted": 1,
|
||||
"edited": 0,
|
||||
"rejected": 0,
|
||||
"missed": 0,
|
||||
"adoption_rate": 0
|
||||
"adoption_rate": 100.0
|
||||
}
|
||||
],
|
||||
"next_iteration_candidates": [],
|
||||
"recent_events": [
|
||||
{
|
||||
"command": "unknown",
|
||||
"event": "review_event",
|
||||
"event": "skill_activation",
|
||||
"skill": "yao-meta-skill",
|
||||
"source": "manual",
|
||||
"version": "1.1.0",
|
||||
"activation_type": "manual",
|
||||
"outcome": "reviewed",
|
||||
"activation_type": "explicit",
|
||||
"outcome": "accepted",
|
||||
"failure_type": "none",
|
||||
"timestamp": "2026-06-13T12:00:00Z"
|
||||
"timestamp": "2026-06-13T10:00:00Z"
|
||||
}
|
||||
],
|
||||
"failures": [],
|
||||
"artifacts": {
|
||||
"events_jsonl": "reports/telemetry_events.jsonl",
|
||||
"events_jsonl": "tests/tmp_review_studio/telemetry_events.jsonl",
|
||||
"json": "reports/adoption_drift_report.json",
|
||||
"markdown": "reports/adoption_drift_report.md"
|
||||
}
|
||||
|
||||
@@ -5,9 +5,9 @@ Local-first, metadata-only telemetry for skill operations. Raw prompts, outputs,
|
||||
## Summary
|
||||
|
||||
- Events: `1`
|
||||
- Adoption samples: `0`
|
||||
- Activation events: `0`
|
||||
- Adoption rate: `0`
|
||||
- Adoption samples: `1`
|
||||
- Activation events: `1`
|
||||
- Adoption rate: `100.0`
|
||||
- Missed trigger signals: `0`
|
||||
- Bad output signals: `0`
|
||||
- Script error signals: `0`
|
||||
@@ -25,7 +25,7 @@ Local-first, metadata-only telemetry for skill operations. Raw prompts, outputs,
|
||||
|
||||
| Skill | Events | Adoption Samples | Accepted | Edited | Rejected | Missed | Adoption Rate |
|
||||
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
|
||||
| `yao-meta-skill` | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
|
||||
| `yao-meta-skill` | 1 | 1 | 1 | 0 | 0 | 0 | 100.0 |
|
||||
|
||||
## Next Iteration Candidates
|
||||
|
||||
@@ -33,4 +33,4 @@ Local-first, metadata-only telemetry for skill operations. Raw prompts, outputs,
|
||||
|
||||
## Recent Metadata Events
|
||||
|
||||
- `2026-06-13T12:00:00Z` `yao-meta-skill` event=`review_event` source=`manual` command=`unknown` activation=`manual` outcome=`reviewed` failure=`none`
|
||||
- `2026-06-13T10:00:00Z` `yao-meta-skill` event=`skill_activation` source=`manual` command=`unknown` activation=`explicit` outcome=`accepted` failure=`none`
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"python_file_count": 146,
|
||||
"script_file_count": 90,
|
||||
"python_file_count": 147,
|
||||
"script_file_count": 91,
|
||||
"test_file_count": 56,
|
||||
"internal_module_count": 19,
|
||||
"cli_script_count": 72,
|
||||
"cli_script_count": 73,
|
||||
"command_handler_count": 33,
|
||||
"warn_line_threshold": 900,
|
||||
"block_line_threshold": 1500,
|
||||
@@ -27,14 +27,14 @@
|
||||
},
|
||||
{
|
||||
"path": "tests/verify_yao_cli.py",
|
||||
"lines": 850,
|
||||
"lines": 871,
|
||||
"kind": "test",
|
||||
"severity": "pass",
|
||||
"recommendation": "Break broad integration assertions into focused verifier helpers when the next behavior change lands."
|
||||
},
|
||||
{
|
||||
"path": "scripts/yao.py",
|
||||
"lines": 839,
|
||||
"lines": 840,
|
||||
"kind": "cli-script",
|
||||
"severity": "pass",
|
||||
"recommendation": "Split command handlers by domain while keeping scripts/yao.py as the thin CLI orchestrator."
|
||||
@@ -69,7 +69,7 @@
|
||||
},
|
||||
{
|
||||
"path": "scripts/yao_cli_parser.py",
|
||||
"lines": 692,
|
||||
"lines": 703,
|
||||
"kind": "internal-module",
|
||||
"severity": "pass",
|
||||
"recommendation": "Watch this file before adding new responsibilities; extract a helper module when one concern dominates."
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
# Architecture Maintainability
|
||||
|
||||
Generated at: `2026-06-14`
|
||||
Generated at: `2026-06-13`
|
||||
|
||||
## Summary
|
||||
|
||||
- decision: `pass`
|
||||
- python files: `146`
|
||||
- scripts: `90`
|
||||
- python files: `147`
|
||||
- scripts: `91`
|
||||
- tests: `56`
|
||||
- internal modules: `19`
|
||||
- CLI scripts: `72`
|
||||
- CLI scripts: `73`
|
||||
- Yao CLI command handlers: `33`
|
||||
- largest file lines: `899`
|
||||
- hotspots: `0`
|
||||
@@ -26,13 +26,13 @@ No file-size hotspots found.
|
||||
| File | Lines | Kind | Severity |
|
||||
| --- | ---: | --- | --- |
|
||||
| `scripts/render_review_studio.py` | `899` | `cli-script` | `pass` |
|
||||
| `tests/verify_yao_cli.py` | `850` | `test` | `pass` |
|
||||
| `scripts/yao.py` | `839` | `cli-script` | `pass` |
|
||||
| `tests/verify_yao_cli.py` | `871` | `test` | `pass` |
|
||||
| `scripts/yao.py` | `840` | `cli-script` | `pass` |
|
||||
| `scripts/skill_report_model.py` | `782` | `internal-module` | `pass` |
|
||||
| `scripts/compile_skill.py` | `734` | `cli-script` | `pass` |
|
||||
| `scripts/optimize_description.py` | `723` | `cli-script` | `pass` |
|
||||
| `scripts/trust_check.py` | `714` | `internal-module` | `pass` |
|
||||
| `scripts/yao_cli_parser.py` | `692` | `internal-module` | `pass` |
|
||||
| `scripts/yao_cli_parser.py` | `703` | `internal-module` | `pass` |
|
||||
| `scripts/render_review_viewer.py` | `685` | `cli-script` | `pass` |
|
||||
| `scripts/build_skill_atlas.py` | `674` | `cli-script` | `pass` |
|
||||
| `scripts/skill_report_layout.py` | `653` | `internal-module` | `pass` |
|
||||
|
||||
@@ -3,12 +3,15 @@
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-14",
|
||||
"skill_dir": ".",
|
||||
"commit": "c5e7b05faae8536b420c5120c1d3a59456c96e51",
|
||||
"commit": "b540f580b373cb9c0f575b687fb82c5a16748a5d",
|
||||
"git_status": {
|
||||
"available": true,
|
||||
"dirty": true,
|
||||
"changed_file_count": 30,
|
||||
"changed_file_count": 48,
|
||||
"sample": [
|
||||
" M .gitignore",
|
||||
" M README.md",
|
||||
" M evidence/world_class/README.md",
|
||||
" M registry/index.json",
|
||||
" M registry/packages/yao-meta-skill.json",
|
||||
" M reports/adoption_drift_report.json",
|
||||
@@ -16,11 +19,8 @@
|
||||
" M reports/architecture_maintainability.md",
|
||||
" M reports/benchmark_reproducibility.json",
|
||||
" M reports/benchmark_reproducibility.md",
|
||||
" M reports/context_budget.json",
|
||||
" M reports/output_execution_runs.json",
|
||||
" M reports/output_execution_runs.md",
|
||||
" M reports/package_verification.json",
|
||||
" M reports/package_verification.md"
|
||||
" M reports/compiled_targets.json",
|
||||
" M reports/context_budget.json"
|
||||
]
|
||||
},
|
||||
"summary": {
|
||||
@@ -42,7 +42,7 @@
|
||||
"world_class_task_count": 4,
|
||||
"world_class_ledger_pending_count": 4,
|
||||
"working_tree_dirty": true,
|
||||
"changed_file_count": 30
|
||||
"changed_file_count": 48
|
||||
},
|
||||
"methodology": {
|
||||
"path": "reports/benchmark_methodology.md",
|
||||
@@ -115,8 +115,8 @@
|
||||
"label": "output_execution",
|
||||
"path": "reports/output_execution_runs.json",
|
||||
"exists": true,
|
||||
"bytes": 7965,
|
||||
"sha256": "917751088ebd5af0581461f73cf28c4b192a91bb1352d7c981b2e3bdb12ce48f"
|
||||
"bytes": 7966,
|
||||
"sha256": "9456b0729b322d3f9fdf6f0929c0010d649df94eccc9597f4e0f67115dc8ea1b"
|
||||
},
|
||||
{
|
||||
"label": "blind_review",
|
||||
@@ -150,43 +150,43 @@
|
||||
"label": "trust_report",
|
||||
"path": "reports/security_trust_report.json",
|
||||
"exists": true,
|
||||
"bytes": 92549,
|
||||
"sha256": "5680f911b5b589d63c8e83ef2c2edabdff004d6634bc6d475f2efd76256071ab"
|
||||
"bytes": 93677,
|
||||
"sha256": "2aa9f4b0a7e2ca36d7f8e87e76bbc224bb23f9962f86d2c0f2b3cefd7deca221"
|
||||
},
|
||||
{
|
||||
"label": "python_compatibility",
|
||||
"path": "reports/python_compatibility.json",
|
||||
"exists": true,
|
||||
"bytes": 19427,
|
||||
"sha256": "809d07d66de33719b160b1a20d3bc86c546b3a69051cc662c840e5d16e10f5b8"
|
||||
"bytes": 19564,
|
||||
"sha256": "bbab01ebaa5b6986b0a3bfcf9825b15efdea5b98377a126fb0708e9fa67d2acb"
|
||||
},
|
||||
{
|
||||
"label": "registry_audit",
|
||||
"path": "reports/registry_audit.json",
|
||||
"exists": true,
|
||||
"bytes": 3183,
|
||||
"sha256": "9934a175c3db29c7e2d182cdd68aa3b04da28d0dff7606c98dc8bc5cb209425b"
|
||||
"sha256": "69f9f9f4663e291275c0c50caa86aac68d2579f9e02abf3f6dc9e03b64a77557"
|
||||
},
|
||||
{
|
||||
"label": "package_verification",
|
||||
"path": "reports/package_verification.json",
|
||||
"exists": true,
|
||||
"bytes": 19325,
|
||||
"sha256": "51a8e785a233726c2988004db5437c5678e58ed36f4b5ab312942245e385cf11"
|
||||
"sha256": "c8ab851a6f715e866a7b5fca04de075692027d77bc81d4d68e425c5d2dd2a7de"
|
||||
},
|
||||
{
|
||||
"label": "install_simulation",
|
||||
"path": "reports/install_simulation.json",
|
||||
"exists": true,
|
||||
"bytes": 8557,
|
||||
"sha256": "5e6e501706588c0eb431d71af38c4789c40991acca4531f667acb6a0610a70c3"
|
||||
"bytes": 8758,
|
||||
"sha256": "a88a496f58a591e3f81f552347de64e56dd9269bb775121e6bf0fafab795707f"
|
||||
},
|
||||
{
|
||||
"label": "skill_os2_audit",
|
||||
"path": "reports/skill_os2_audit.json",
|
||||
"exists": true,
|
||||
"bytes": 13946,
|
||||
"sha256": "ed1be043898a5550be37c93b3d8723dbaf2d537af3005a8a6476ec6d0d266318"
|
||||
"sha256": "91945bad2dcd8f6a165b1c896932a61ee64f43bfc9cca2091f3a921ef7817c0c"
|
||||
},
|
||||
{
|
||||
"label": "world_class_evidence_plan",
|
||||
@@ -206,8 +206,8 @@
|
||||
"label": "world_class_evidence_intake",
|
||||
"path": "reports/world_class_evidence_intake.json",
|
||||
"exists": true,
|
||||
"bytes": 12523,
|
||||
"sha256": "6eae947a6e2f3721a8c616b58795554fe6cd778be62c6e6c34833563582a505d"
|
||||
"bytes": 12369,
|
||||
"sha256": "465f8d915a869ad536c2d71ba26dc536b82ba64e6e98013e8dbd0efd1bb92883"
|
||||
},
|
||||
{
|
||||
"label": "world_class_claim_guard",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Benchmark Reproducibility
|
||||
|
||||
Generated at: `2026-06-14`
|
||||
Commit: `c5e7b05faae8536b420c5120c1d3a59456c96e51`
|
||||
Commit: `b540f580b373cb9c0f575b687fb82c5a16748a5d`
|
||||
Working tree dirty at generation: `true`
|
||||
|
||||
## Summary
|
||||
@@ -16,7 +16,7 @@ Working tree dirty at generation: `true`
|
||||
- provider evidence complete: `false`
|
||||
- human review complete: `false`
|
||||
- world-class ready: `false`
|
||||
- changed files at generation: `30`
|
||||
- changed files at generation: `48`
|
||||
|
||||
This report proves local benchmark reproducibility only. It keeps external provider and human-review gaps visible instead of counting them as complete.
|
||||
|
||||
@@ -40,20 +40,20 @@ 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 | `917751088ebd` |
|
||||
| output_execution | `reports/output_execution_runs.json` | present | `9456b0729b32` |
|
||||
| blind_review | `reports/output_blind_review_pack.json` | present | `bbe2db8ec277` |
|
||||
| review_adjudication | `reports/output_review_adjudication.json` | present | `5765254c4309` |
|
||||
| trigger_scorecard | `reports/route_scorecard.json` | present | `c164e83e36d0` |
|
||||
| runtime_conformance | `reports/conformance_matrix.json` | present | `8251329e663d` |
|
||||
| trust_report | `reports/security_trust_report.json` | present | `5680f911b5b5` |
|
||||
| python_compatibility | `reports/python_compatibility.json` | present | `809d07d66de3` |
|
||||
| registry_audit | `reports/registry_audit.json` | present | `9934a175c3db` |
|
||||
| package_verification | `reports/package_verification.json` | present | `51a8e785a233` |
|
||||
| install_simulation | `reports/install_simulation.json` | present | `5e6e50170658` |
|
||||
| skill_os2_audit | `reports/skill_os2_audit.json` | present | `ed1be043898a` |
|
||||
| trust_report | `reports/security_trust_report.json` | present | `2aa9f4b0a7e2` |
|
||||
| python_compatibility | `reports/python_compatibility.json` | present | `bbab01ebaa5b` |
|
||||
| registry_audit | `reports/registry_audit.json` | present | `69f9f9f4663e` |
|
||||
| package_verification | `reports/package_verification.json` | present | `c8ab851a6f71` |
|
||||
| install_simulation | `reports/install_simulation.json` | present | `a88a496f58a5` |
|
||||
| skill_os2_audit | `reports/skill_os2_audit.json` | present | `91945bad2dcd` |
|
||||
| world_class_evidence_plan | `reports/world_class_evidence_plan.json` | present | `ed1274b7c18c` |
|
||||
| world_class_evidence_ledger | `reports/world_class_evidence_ledger.json` | present | `e6dfdb22dc9f` |
|
||||
| world_class_evidence_intake | `reports/world_class_evidence_intake.json` | present | `6eae947a6e2f` |
|
||||
| world_class_evidence_intake | `reports/world_class_evidence_intake.json` | present | `465f8d915a86` |
|
||||
| world_class_claim_guard | `reports/world_class_claim_guard.json` | present | `608c954d1af9` |
|
||||
|
||||
## Reproduction Commands
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"target_count": 5,
|
||||
@@ -166,6 +166,7 @@
|
||||
"scripts/lint_skill.py",
|
||||
"scripts/local_output_eval_runner.py",
|
||||
"scripts/optimize_description.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/provider_output_eval_runner.py",
|
||||
@@ -223,8 +224,7 @@
|
||||
"scripts/skill_report_model.py",
|
||||
"scripts/sync_local_install.py",
|
||||
"scripts/telemetry_native_host.py",
|
||||
"scripts/trigger_eval.py",
|
||||
"scripts/trust_check.py"
|
||||
"scripts/trigger_eval.py"
|
||||
],
|
||||
"assets": [
|
||||
"templates/basic_skill.md.j2",
|
||||
@@ -383,7 +383,7 @@
|
||||
},
|
||||
"file_write": {
|
||||
"required": true,
|
||||
"script_count": 60,
|
||||
"script_count": 61,
|
||||
"scripts": [
|
||||
"scripts/adjudicate_output_review.py",
|
||||
"scripts/build_confusion_matrix.py",
|
||||
@@ -399,6 +399,7 @@
|
||||
"scripts/github_benchmark_scan.py",
|
||||
"scripts/import_telemetry_events.py",
|
||||
"scripts/init_skill.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/python_compat_check.py",
|
||||
@@ -483,14 +484,14 @@
|
||||
},
|
||||
"help_smoke": {
|
||||
"enabled": true,
|
||||
"checked_count": 73,
|
||||
"checked_count": 74,
|
||||
"failed_count": 0,
|
||||
"failed_scripts": []
|
||||
},
|
||||
"trust_summary": {
|
||||
"secret_findings": 0,
|
||||
"network_script_count": 3,
|
||||
"file_write_script_count": 60,
|
||||
"file_write_script_count": 61,
|
||||
"subprocess_script_count": 9,
|
||||
"interactive_script_count": 0,
|
||||
"help_smoke_failed_count": 0
|
||||
@@ -512,7 +513,7 @@
|
||||
],
|
||||
"capability_counts": {
|
||||
"network": 3,
|
||||
"file_write": 60,
|
||||
"file_write": 61,
|
||||
"subprocess": 9,
|
||||
"interactive": 0
|
||||
},
|
||||
@@ -625,7 +626,7 @@
|
||||
},
|
||||
"file_write": {
|
||||
"required": true,
|
||||
"script_count": 60,
|
||||
"script_count": 61,
|
||||
"scripts": [
|
||||
"scripts/adjudicate_output_review.py",
|
||||
"scripts/build_confusion_matrix.py",
|
||||
@@ -641,6 +642,7 @@
|
||||
"scripts/github_benchmark_scan.py",
|
||||
"scripts/import_telemetry_events.py",
|
||||
"scripts/init_skill.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/python_compat_check.py",
|
||||
@@ -725,14 +727,14 @@
|
||||
},
|
||||
"help_smoke": {
|
||||
"enabled": true,
|
||||
"checked_count": 73,
|
||||
"checked_count": 74,
|
||||
"failed_count": 0,
|
||||
"failed_scripts": []
|
||||
},
|
||||
"trust_summary": {
|
||||
"secret_findings": 0,
|
||||
"network_script_count": 3,
|
||||
"file_write_script_count": 60,
|
||||
"file_write_script_count": 61,
|
||||
"subprocess_script_count": 9,
|
||||
"interactive_script_count": 0,
|
||||
"help_smoke_failed_count": 0
|
||||
@@ -752,7 +754,7 @@
|
||||
],
|
||||
"capability_counts": {
|
||||
"network": 3,
|
||||
"file_write": 60,
|
||||
"file_write": 61,
|
||||
"subprocess": 9,
|
||||
"interactive": 0
|
||||
},
|
||||
@@ -1007,6 +1009,7 @@
|
||||
"scripts/lint_skill.py",
|
||||
"scripts/local_output_eval_runner.py",
|
||||
"scripts/optimize_description.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/provider_output_eval_runner.py",
|
||||
@@ -1064,8 +1067,7 @@
|
||||
"scripts/skill_report_model.py",
|
||||
"scripts/sync_local_install.py",
|
||||
"scripts/telemetry_native_host.py",
|
||||
"scripts/trigger_eval.py",
|
||||
"scripts/trust_check.py"
|
||||
"scripts/trigger_eval.py"
|
||||
],
|
||||
"assets": [
|
||||
"templates/basic_skill.md.j2",
|
||||
@@ -1224,7 +1226,7 @@
|
||||
},
|
||||
"file_write": {
|
||||
"required": true,
|
||||
"script_count": 60,
|
||||
"script_count": 61,
|
||||
"scripts": [
|
||||
"scripts/adjudicate_output_review.py",
|
||||
"scripts/build_confusion_matrix.py",
|
||||
@@ -1240,6 +1242,7 @@
|
||||
"scripts/github_benchmark_scan.py",
|
||||
"scripts/import_telemetry_events.py",
|
||||
"scripts/init_skill.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/python_compat_check.py",
|
||||
@@ -1324,14 +1327,14 @@
|
||||
},
|
||||
"help_smoke": {
|
||||
"enabled": true,
|
||||
"checked_count": 73,
|
||||
"checked_count": 74,
|
||||
"failed_count": 0,
|
||||
"failed_scripts": []
|
||||
},
|
||||
"trust_summary": {
|
||||
"secret_findings": 0,
|
||||
"network_script_count": 3,
|
||||
"file_write_script_count": 60,
|
||||
"file_write_script_count": 61,
|
||||
"subprocess_script_count": 9,
|
||||
"interactive_script_count": 0,
|
||||
"help_smoke_failed_count": 0
|
||||
@@ -1353,7 +1356,7 @@
|
||||
],
|
||||
"capability_counts": {
|
||||
"network": 3,
|
||||
"file_write": 60,
|
||||
"file_write": 61,
|
||||
"subprocess": 9,
|
||||
"interactive": 0
|
||||
},
|
||||
@@ -1466,7 +1469,7 @@
|
||||
},
|
||||
"file_write": {
|
||||
"required": true,
|
||||
"script_count": 60,
|
||||
"script_count": 61,
|
||||
"scripts": [
|
||||
"scripts/adjudicate_output_review.py",
|
||||
"scripts/build_confusion_matrix.py",
|
||||
@@ -1482,6 +1485,7 @@
|
||||
"scripts/github_benchmark_scan.py",
|
||||
"scripts/import_telemetry_events.py",
|
||||
"scripts/init_skill.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/python_compat_check.py",
|
||||
@@ -1566,14 +1570,14 @@
|
||||
},
|
||||
"help_smoke": {
|
||||
"enabled": true,
|
||||
"checked_count": 73,
|
||||
"checked_count": 74,
|
||||
"failed_count": 0,
|
||||
"failed_scripts": []
|
||||
},
|
||||
"trust_summary": {
|
||||
"secret_findings": 0,
|
||||
"network_script_count": 3,
|
||||
"file_write_script_count": 60,
|
||||
"file_write_script_count": 61,
|
||||
"subprocess_script_count": 9,
|
||||
"interactive_script_count": 0,
|
||||
"help_smoke_failed_count": 0
|
||||
@@ -1593,7 +1597,7 @@
|
||||
],
|
||||
"capability_counts": {
|
||||
"network": 3,
|
||||
"file_write": 60,
|
||||
"file_write": 61,
|
||||
"subprocess": 9,
|
||||
"interactive": 0
|
||||
},
|
||||
@@ -1848,6 +1852,7 @@
|
||||
"scripts/lint_skill.py",
|
||||
"scripts/local_output_eval_runner.py",
|
||||
"scripts/optimize_description.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/provider_output_eval_runner.py",
|
||||
@@ -1905,8 +1910,7 @@
|
||||
"scripts/skill_report_model.py",
|
||||
"scripts/sync_local_install.py",
|
||||
"scripts/telemetry_native_host.py",
|
||||
"scripts/trigger_eval.py",
|
||||
"scripts/trust_check.py"
|
||||
"scripts/trigger_eval.py"
|
||||
],
|
||||
"assets": [
|
||||
"templates/basic_skill.md.j2",
|
||||
@@ -2065,7 +2069,7 @@
|
||||
},
|
||||
"file_write": {
|
||||
"required": true,
|
||||
"script_count": 60,
|
||||
"script_count": 61,
|
||||
"scripts": [
|
||||
"scripts/adjudicate_output_review.py",
|
||||
"scripts/build_confusion_matrix.py",
|
||||
@@ -2081,6 +2085,7 @@
|
||||
"scripts/github_benchmark_scan.py",
|
||||
"scripts/import_telemetry_events.py",
|
||||
"scripts/init_skill.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/python_compat_check.py",
|
||||
@@ -2165,14 +2170,14 @@
|
||||
},
|
||||
"help_smoke": {
|
||||
"enabled": true,
|
||||
"checked_count": 73,
|
||||
"checked_count": 74,
|
||||
"failed_count": 0,
|
||||
"failed_scripts": []
|
||||
},
|
||||
"trust_summary": {
|
||||
"secret_findings": 0,
|
||||
"network_script_count": 3,
|
||||
"file_write_script_count": 60,
|
||||
"file_write_script_count": 61,
|
||||
"subprocess_script_count": 9,
|
||||
"interactive_script_count": 0,
|
||||
"help_smoke_failed_count": 0
|
||||
@@ -2194,7 +2199,7 @@
|
||||
],
|
||||
"capability_counts": {
|
||||
"network": 3,
|
||||
"file_write": 60,
|
||||
"file_write": 61,
|
||||
"subprocess": 9,
|
||||
"interactive": 0
|
||||
},
|
||||
@@ -2300,7 +2305,7 @@
|
||||
},
|
||||
"file_write": {
|
||||
"required": true,
|
||||
"script_count": 60,
|
||||
"script_count": 61,
|
||||
"scripts": [
|
||||
"scripts/adjudicate_output_review.py",
|
||||
"scripts/build_confusion_matrix.py",
|
||||
@@ -2316,6 +2321,7 @@
|
||||
"scripts/github_benchmark_scan.py",
|
||||
"scripts/import_telemetry_events.py",
|
||||
"scripts/init_skill.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/python_compat_check.py",
|
||||
@@ -2400,14 +2406,14 @@
|
||||
},
|
||||
"help_smoke": {
|
||||
"enabled": true,
|
||||
"checked_count": 73,
|
||||
"checked_count": 74,
|
||||
"failed_count": 0,
|
||||
"failed_scripts": []
|
||||
},
|
||||
"trust_summary": {
|
||||
"secret_findings": 0,
|
||||
"network_script_count": 3,
|
||||
"file_write_script_count": 60,
|
||||
"file_write_script_count": 61,
|
||||
"subprocess_script_count": 9,
|
||||
"interactive_script_count": 0,
|
||||
"help_smoke_failed_count": 0
|
||||
@@ -2427,7 +2433,7 @@
|
||||
],
|
||||
"capability_counts": {
|
||||
"network": 3,
|
||||
"file_write": 60,
|
||||
"file_write": 61,
|
||||
"subprocess": 9,
|
||||
"interactive": 0
|
||||
},
|
||||
@@ -2673,6 +2679,7 @@
|
||||
"scripts/lint_skill.py",
|
||||
"scripts/local_output_eval_runner.py",
|
||||
"scripts/optimize_description.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/provider_output_eval_runner.py",
|
||||
@@ -2730,8 +2737,7 @@
|
||||
"scripts/skill_report_model.py",
|
||||
"scripts/sync_local_install.py",
|
||||
"scripts/telemetry_native_host.py",
|
||||
"scripts/trigger_eval.py",
|
||||
"scripts/trust_check.py"
|
||||
"scripts/trigger_eval.py"
|
||||
],
|
||||
"assets": [
|
||||
"templates/basic_skill.md.j2",
|
||||
@@ -2890,7 +2896,7 @@
|
||||
},
|
||||
"file_write": {
|
||||
"required": true,
|
||||
"script_count": 60,
|
||||
"script_count": 61,
|
||||
"scripts": [
|
||||
"scripts/adjudicate_output_review.py",
|
||||
"scripts/build_confusion_matrix.py",
|
||||
@@ -2906,6 +2912,7 @@
|
||||
"scripts/github_benchmark_scan.py",
|
||||
"scripts/import_telemetry_events.py",
|
||||
"scripts/init_skill.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/python_compat_check.py",
|
||||
@@ -2990,14 +2997,14 @@
|
||||
},
|
||||
"help_smoke": {
|
||||
"enabled": true,
|
||||
"checked_count": 73,
|
||||
"checked_count": 74,
|
||||
"failed_count": 0,
|
||||
"failed_scripts": []
|
||||
},
|
||||
"trust_summary": {
|
||||
"secret_findings": 0,
|
||||
"network_script_count": 3,
|
||||
"file_write_script_count": 60,
|
||||
"file_write_script_count": 61,
|
||||
"subprocess_script_count": 9,
|
||||
"interactive_script_count": 0,
|
||||
"help_smoke_failed_count": 0
|
||||
@@ -3019,7 +3026,7 @@
|
||||
],
|
||||
"capability_counts": {
|
||||
"network": 3,
|
||||
"file_write": 60,
|
||||
"file_write": 61,
|
||||
"subprocess": 9,
|
||||
"interactive": 0
|
||||
},
|
||||
@@ -3125,7 +3132,7 @@
|
||||
},
|
||||
"file_write": {
|
||||
"required": true,
|
||||
"script_count": 60,
|
||||
"script_count": 61,
|
||||
"scripts": [
|
||||
"scripts/adjudicate_output_review.py",
|
||||
"scripts/build_confusion_matrix.py",
|
||||
@@ -3141,6 +3148,7 @@
|
||||
"scripts/github_benchmark_scan.py",
|
||||
"scripts/import_telemetry_events.py",
|
||||
"scripts/init_skill.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/python_compat_check.py",
|
||||
@@ -3225,14 +3233,14 @@
|
||||
},
|
||||
"help_smoke": {
|
||||
"enabled": true,
|
||||
"checked_count": 73,
|
||||
"checked_count": 74,
|
||||
"failed_count": 0,
|
||||
"failed_scripts": []
|
||||
},
|
||||
"trust_summary": {
|
||||
"secret_findings": 0,
|
||||
"network_script_count": 3,
|
||||
"file_write_script_count": 60,
|
||||
"file_write_script_count": 61,
|
||||
"subprocess_script_count": 9,
|
||||
"interactive_script_count": 0,
|
||||
"help_smoke_failed_count": 0
|
||||
@@ -3252,7 +3260,7 @@
|
||||
],
|
||||
"capability_counts": {
|
||||
"network": 3,
|
||||
"file_write": 60,
|
||||
"file_write": 61,
|
||||
"subprocess": 9,
|
||||
"interactive": 0
|
||||
},
|
||||
@@ -3498,6 +3506,7 @@
|
||||
"scripts/lint_skill.py",
|
||||
"scripts/local_output_eval_runner.py",
|
||||
"scripts/optimize_description.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/provider_output_eval_runner.py",
|
||||
@@ -3555,8 +3564,7 @@
|
||||
"scripts/skill_report_model.py",
|
||||
"scripts/sync_local_install.py",
|
||||
"scripts/telemetry_native_host.py",
|
||||
"scripts/trigger_eval.py",
|
||||
"scripts/trust_check.py"
|
||||
"scripts/trigger_eval.py"
|
||||
],
|
||||
"assets": [
|
||||
"templates/basic_skill.md.j2",
|
||||
@@ -3715,7 +3723,7 @@
|
||||
},
|
||||
"file_write": {
|
||||
"required": true,
|
||||
"script_count": 60,
|
||||
"script_count": 61,
|
||||
"scripts": [
|
||||
"scripts/adjudicate_output_review.py",
|
||||
"scripts/build_confusion_matrix.py",
|
||||
@@ -3731,6 +3739,7 @@
|
||||
"scripts/github_benchmark_scan.py",
|
||||
"scripts/import_telemetry_events.py",
|
||||
"scripts/init_skill.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/python_compat_check.py",
|
||||
@@ -3815,14 +3824,14 @@
|
||||
},
|
||||
"help_smoke": {
|
||||
"enabled": true,
|
||||
"checked_count": 73,
|
||||
"checked_count": 74,
|
||||
"failed_count": 0,
|
||||
"failed_scripts": []
|
||||
},
|
||||
"trust_summary": {
|
||||
"secret_findings": 0,
|
||||
"network_script_count": 3,
|
||||
"file_write_script_count": 60,
|
||||
"file_write_script_count": 61,
|
||||
"subprocess_script_count": 9,
|
||||
"interactive_script_count": 0,
|
||||
"help_smoke_failed_count": 0
|
||||
@@ -3844,7 +3853,7 @@
|
||||
],
|
||||
"capability_counts": {
|
||||
"network": 3,
|
||||
"file_write": 60,
|
||||
"file_write": 61,
|
||||
"subprocess": 9,
|
||||
"interactive": 0
|
||||
},
|
||||
@@ -3954,7 +3963,7 @@
|
||||
},
|
||||
"file_write": {
|
||||
"required": true,
|
||||
"script_count": 60,
|
||||
"script_count": 61,
|
||||
"scripts": [
|
||||
"scripts/adjudicate_output_review.py",
|
||||
"scripts/build_confusion_matrix.py",
|
||||
@@ -3970,6 +3979,7 @@
|
||||
"scripts/github_benchmark_scan.py",
|
||||
"scripts/import_telemetry_events.py",
|
||||
"scripts/init_skill.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/python_compat_check.py",
|
||||
@@ -4054,14 +4064,14 @@
|
||||
},
|
||||
"help_smoke": {
|
||||
"enabled": true,
|
||||
"checked_count": 73,
|
||||
"checked_count": 74,
|
||||
"failed_count": 0,
|
||||
"failed_scripts": []
|
||||
},
|
||||
"trust_summary": {
|
||||
"secret_findings": 0,
|
||||
"network_script_count": 3,
|
||||
"file_write_script_count": 60,
|
||||
"file_write_script_count": 61,
|
||||
"subprocess_script_count": 9,
|
||||
"interactive_script_count": 0,
|
||||
"help_smoke_failed_count": 0
|
||||
@@ -4081,7 +4091,7 @@
|
||||
],
|
||||
"capability_counts": {
|
||||
"network": 3,
|
||||
"file_write": 60,
|
||||
"file_write": 61,
|
||||
"subprocess": 9,
|
||||
"interactive": 0
|
||||
},
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
"context_budget_tier": "production",
|
||||
"context_budget_limit": 1000,
|
||||
"skill_body_tokens": 751,
|
||||
"other_text_tokens": 1113302,
|
||||
"other_text_tokens": 1117887,
|
||||
"estimated_initial_load_tokens": 944,
|
||||
"estimated_total_text_tokens": 1114053,
|
||||
"relevant_file_count": 479,
|
||||
"estimated_total_text_tokens": 1118638,
|
||||
"relevant_file_count": 480,
|
||||
"unused_resource_dirs": [],
|
||||
"quality_signal_points": 130,
|
||||
"quality_density": 137.7
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
{
|
||||
"ok": true,
|
||||
"schema_version": "2.0",
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"skill_dir": ".",
|
||||
"package_dir": "dist",
|
||||
"install_root": "[temporary-install-root]",
|
||||
"installed_skill_dir": "[temporary-install-root]/yao-meta-skill",
|
||||
"package_dir": "tests/tmp_review_studio/dist",
|
||||
"install_root": "tests/tmp_review_studio/install-root/simulate-yao-meta-skill",
|
||||
"installed_skill_dir": "tests/tmp_review_studio/install-root/simulate-yao-meta-skill/yao-meta-skill",
|
||||
"summary": {
|
||||
"archive_present": true,
|
||||
"archive_entry_count": 558,
|
||||
"archive_entry_count": 559,
|
||||
"archive_extracted": true,
|
||||
"entrypoint_loaded": true,
|
||||
"manifest_loaded": true,
|
||||
@@ -18,7 +18,7 @@
|
||||
"installer_permission_failure_count": 0,
|
||||
"permission_target_count": 4,
|
||||
"permission_capability_count": 3,
|
||||
"install_root_is_temp": true,
|
||||
"install_root_is_temp": false,
|
||||
"failure_count": 0,
|
||||
"warning_count": 0
|
||||
},
|
||||
@@ -26,7 +26,7 @@
|
||||
{
|
||||
"id": "archive-present",
|
||||
"status": "pass",
|
||||
"detail": "Package archive exists: dist/yao-meta-skill.zip"
|
||||
"detail": "Package archive exists: tests/tmp_review_studio/dist/yao-meta-skill.zip"
|
||||
},
|
||||
{
|
||||
"id": "archive-safe-paths",
|
||||
@@ -272,9 +272,9 @@
|
||||
"failures": [],
|
||||
"warnings": [],
|
||||
"artifacts": {
|
||||
"archive": "dist/yao-meta-skill.zip",
|
||||
"package_manifest": "dist/manifest.json",
|
||||
"json": "reports/install_simulation.json",
|
||||
"markdown": "reports/install_simulation.md"
|
||||
"archive": "tests/tmp_review_studio/dist/yao-meta-skill.zip",
|
||||
"package_manifest": "tests/tmp_review_studio/dist/manifest.json",
|
||||
"json": "tests/tmp_review_studio/install_simulation.json",
|
||||
"markdown": "tests/tmp_review_studio/install_simulation.md"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Install Simulation
|
||||
|
||||
- OK: `True`
|
||||
- Package directory: `dist`
|
||||
- Package directory: `tests/tmp_review_studio/dist`
|
||||
- Archive extracted: `True`
|
||||
- Entrypoint loaded: `True`
|
||||
- Manifest loaded: `True`
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
| Check | Status | Detail |
|
||||
| --- | --- | --- |
|
||||
| `archive-present` | `pass` | Package archive exists: dist/yao-meta-skill.zip |
|
||||
| `archive-present` | `pass` | Package archive exists: tests/tmp_review_studio/dist/yao-meta-skill.zip |
|
||||
| `archive-safe-paths` | `pass` | Archive has no absolute or parent-traversal entries |
|
||||
| `single-top-level` | `pass` | Archive top-level directory is yao-meta-skill |
|
||||
| `entrypoint-load` | `pass` | Installed SKILL.md frontmatter is readable |
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 29.8,
|
||||
"duration_ms": 32.47,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -62,7 +62,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 28.94,
|
||||
"duration_ms": 33.17,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -85,7 +85,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 29.0,
|
||||
"duration_ms": 32.51,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -113,7 +113,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 39.86,
|
||||
"duration_ms": 31.11,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -136,7 +136,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 32.86,
|
||||
"duration_ms": 32.82,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -164,7 +164,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 30.43,
|
||||
"duration_ms": 29.65,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -187,7 +187,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 30.14,
|
||||
"duration_ms": 27.97,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -214,7 +214,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 29.46,
|
||||
"duration_ms": 28.12,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -237,7 +237,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 31.25,
|
||||
"duration_ms": 28.34,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
@@ -266,7 +266,7 @@
|
||||
"execution_mode": "command",
|
||||
"model_executed": false,
|
||||
"command_executed": true,
|
||||
"duration_ms": 29.63,
|
||||
"duration_ms": 28.07,
|
||||
"provider": "local-output-eval-runner",
|
||||
"model": "",
|
||||
"usage": {
|
||||
|
||||
@@ -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.8 | 33 | 0.0 | pass |
|
||||
| skill-package-contract | with_skill | command | local-output-eval-runner | 28.94 | 73 | 100.0 | pass |
|
||||
| output-eval-expectation | baseline | command | local-output-eval-runner | 29.0 | 36 | 0.0 | pass |
|
||||
| output-eval-expectation | with_skill | command | local-output-eval-runner | 39.86 | 80 | 100.0 | pass |
|
||||
| ir-before-packaging | baseline | command | local-output-eval-runner | 32.86 | 33 | 0.0 | pass |
|
||||
| ir-before-packaging | with_skill | command | local-output-eval-runner | 30.43 | 80 | 100.0 | pass |
|
||||
| near-neighbor-boundary | baseline | command | local-output-eval-runner | 30.14 | 36 | 0.0 | pass |
|
||||
| near-neighbor-boundary | with_skill | command | local-output-eval-runner | 29.46 | 65 | 100.0 | pass |
|
||||
| file-backed-governed-package | baseline | command | local-output-eval-runner | 31.25 | 37 | 0.0 | pass |
|
||||
| file-backed-governed-package | with_skill | command | local-output-eval-runner | 29.63 | 98 | 100.0 | pass |
|
||||
| skill-package-contract | baseline | command | local-output-eval-runner | 32.47 | 33 | 0.0 | pass |
|
||||
| skill-package-contract | with_skill | command | local-output-eval-runner | 33.17 | 73 | 100.0 | pass |
|
||||
| output-eval-expectation | baseline | command | local-output-eval-runner | 32.51 | 36 | 0.0 | pass |
|
||||
| output-eval-expectation | with_skill | command | local-output-eval-runner | 31.11 | 80 | 100.0 | pass |
|
||||
| ir-before-packaging | baseline | command | local-output-eval-runner | 32.82 | 33 | 0.0 | pass |
|
||||
| ir-before-packaging | with_skill | command | local-output-eval-runner | 29.65 | 80 | 100.0 | pass |
|
||||
| near-neighbor-boundary | baseline | command | local-output-eval-runner | 27.97 | 36 | 0.0 | pass |
|
||||
| near-neighbor-boundary | with_skill | command | local-output-eval-runner | 28.12 | 65 | 100.0 | pass |
|
||||
| file-backed-governed-package | baseline | command | local-output-eval-runner | 28.34 | 37 | 0.0 | pass |
|
||||
| file-backed-governed-package | with_skill | command | local-output-eval-runner | 28.07 | 98 | 100.0 | pass |
|
||||
|
||||
## Next Fixes
|
||||
|
||||
|
||||
@@ -8,8 +8,8 @@
|
||||
"target_count": 4,
|
||||
"adapter_count": 4,
|
||||
"archive_present": true,
|
||||
"archive_sha256": "934b2967ff56afa5d725b9c129d4fc1e280854d85aa09783ffdb1b6b3108346d",
|
||||
"archive_entry_count": 558,
|
||||
"archive_sha256": "fe47e53a7a89918ef2d7ae53c1e62a6b73da0bd80904d5a157c71a2758c8004e",
|
||||
"archive_entry_count": 559,
|
||||
"failure_count": 0,
|
||||
"warning_count": 0
|
||||
},
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
- Package directory: `dist`
|
||||
- Targets: `4 / 4` adapters present
|
||||
- Archive present: `True`
|
||||
- Archive SHA256: `934b2967ff56afa5d725b9c129d4fc1e280854d85aa09783ffdb1b6b3108346d`
|
||||
- Archive SHA256: `fe47e53a7a89918ef2d7ae53c1e62a6b73da0bd80904d5a157c71a2758c8004e`
|
||||
- Failures: `0`
|
||||
- Warnings: `0`
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"root": ".",
|
||||
"summary": {
|
||||
"target_python": "3.11",
|
||||
"file_count": 149,
|
||||
"file_count": 150,
|
||||
"issue_count": 0,
|
||||
"syntax_error_count": 0,
|
||||
"fstring_311_violation_count": 0,
|
||||
@@ -166,6 +166,12 @@
|
||||
"issue_count": 0,
|
||||
"issues": []
|
||||
},
|
||||
{
|
||||
"path": "scripts/prepare_world_class_submission_kit.py",
|
||||
"ok": true,
|
||||
"issue_count": 0,
|
||||
"issues": []
|
||||
},
|
||||
{
|
||||
"path": "scripts/probe_runtime_permissions.py",
|
||||
"ok": true,
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Python Compatibility
|
||||
|
||||
Generated at: `2026-06-14`
|
||||
Generated at: `2026-06-13`
|
||||
|
||||
## Summary
|
||||
|
||||
- decision: `pass`
|
||||
- target python: `3.11`
|
||||
- files scanned: `149`
|
||||
- files scanned: `150`
|
||||
- issues: `0`
|
||||
- syntax errors: `0`
|
||||
- f-string 3.11 violations: `0`
|
||||
|
||||
@@ -21,8 +21,8 @@
|
||||
"trust_level": "local",
|
||||
"license": "MIT",
|
||||
"checksums": {
|
||||
"package_sha256": "0b47fb8b2db508e32d5aafd5c46bd008dc23493c1ff909427686609e9f99d5a9",
|
||||
"archive_sha256": "934b2967ff56afa5d725b9c129d4fc1e280854d85aa09783ffdb1b6b3108346d"
|
||||
"package_sha256": "4871c36233a53615c8e19c1c59449af60e732fff2d389742ca510422d7cbac75",
|
||||
"archive_sha256": "fe47e53a7a89918ef2d7ae53c1e62a6b73da0bd80904d5a157c71a2758c8004e"
|
||||
},
|
||||
"compatibility": {
|
||||
"openai": "pass",
|
||||
@@ -53,16 +53,16 @@
|
||||
},
|
||||
"distribution": {
|
||||
"archive_verified": true,
|
||||
"archive_sha256": "934b2967ff56afa5d725b9c129d4fc1e280854d85aa09783ffdb1b6b3108346d",
|
||||
"archive_sha256": "fe47e53a7a89918ef2d7ae53c1e62a6b73da0bd80904d5a157c71a2758c8004e",
|
||||
"package_verification": "reports/package_verification.json",
|
||||
"install_simulated": true,
|
||||
"install_simulation": "reports/install_simulation.json"
|
||||
},
|
||||
"generated_at": "2026-06-14"
|
||||
"generated_at": "2026-06-13"
|
||||
},
|
||||
"index": {
|
||||
"schema_version": "2.0",
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"package_count": 1,
|
||||
"packages": [
|
||||
{
|
||||
@@ -78,7 +78,7 @@
|
||||
"vscode"
|
||||
],
|
||||
"package_metadata": "registry/packages/yao-meta-skill.json",
|
||||
"package_sha256": "0b47fb8b2db508e32d5aafd5c46bd008dc23493c1ff909427686609e9f99d5a9"
|
||||
"package_sha256": "4871c36233a53615c8e19c1c59449af60e732fff2d389742ca510422d7cbac75"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
- Maturity: `governed`
|
||||
- Owner: `Yao Team`
|
||||
- License: `MIT`
|
||||
- Package SHA256: `0b47fb8b2db508e32d5aafd5c46bd008dc23493c1ff909427686609e9f99d5a9`
|
||||
- Archive SHA256: `934b2967ff56afa5d725b9c129d4fc1e280854d85aa09783ffdb1b6b3108346d`
|
||||
- Package SHA256: `4871c36233a53615c8e19c1c59449af60e732fff2d389742ca510422d7cbac75`
|
||||
- Archive SHA256: `fe47e53a7a89918ef2d7ae53c1e62a6b73da0bd80904d5a157c71a2758c8004e`
|
||||
- Install simulated: `True`
|
||||
|
||||
## Compatibility
|
||||
|
||||
+10
-10
File diff suppressed because one or more lines are too long
+200
-158
File diff suppressed because it is too large
Load Diff
@@ -2,7 +2,7 @@
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"skill_dir": ".",
|
||||
"source": "reports/review_annotations_input.json",
|
||||
"source": "tests/tmp_review_studio/empty_review_annotations_input.json",
|
||||
"summary": {
|
||||
"annotation_count": 0,
|
||||
"open_count": 0,
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"skill_dir": ".",
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"summary": {
|
||||
"waiver_count": 0,
|
||||
"active_count": 0,
|
||||
@@ -52,7 +52,7 @@
|
||||
"Reviewer links output_review_adjudication or output_execution evidence."
|
||||
],
|
||||
"suggested_evidence": "reports/output_review_adjudication.md",
|
||||
"suggested_command": "python3 scripts/yao.py review-waivers . --add-waiver --gate-key output-lab --reviewer \"<reviewer>\" --reason \"Output Lab has pending human/provider evidence; accepted only for this bounded review scope.\" --expires-at 2027-06-14 --evidence reports/output_review_adjudication.md",
|
||||
"suggested_command": "python3 scripts/yao.py review-waivers . --add-waiver --gate-key output-lab --reviewer \"<reviewer>\" --reason \"Output Lab has pending human/provider evidence; accepted only for this bounded review scope.\" --expires-at 2027-06-13 --evidence reports/output_review_adjudication.md",
|
||||
"world_class_boundary": "Does not count as provider, human, or public world-class completion evidence."
|
||||
},
|
||||
{
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
- waiver allowed: `true`
|
||||
- risk: review pending 5; model-executed 0; output failures 0
|
||||
- evidence: `reports/output_review_adjudication.md`
|
||||
- verification: `python3 scripts/yao.py review-waivers . --add-waiver --gate-key output-lab --reviewer "<reviewer>" --reason "Output Lab has pending human/provider evidence; accepted only for this bounded review scope." --expires-at 2027-06-14 --evidence reports/output_review_adjudication.md`
|
||||
- verification: `python3 scripts/yao.py review-waivers . --add-waiver --gate-key output-lab --reviewer "<reviewer>" --reason "Output Lab has pending human/provider evidence; accepted only for this bounded review scope." --expires-at 2027-06-13 --evidence reports/output_review_adjudication.md`
|
||||
- world-class boundary: Does not count as provider, human, or public world-class completion evidence.
|
||||
|
||||
#### Required Review
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"skill_dir": ".",
|
||||
"package_dir": "dist",
|
||||
"package_dir": "tests/tmp_review_studio/dist",
|
||||
"expected_capabilities": [
|
||||
"file_write",
|
||||
"network",
|
||||
@@ -22,7 +22,7 @@
|
||||
{
|
||||
"target": "openai",
|
||||
"status": "pass",
|
||||
"adapter": "dist/targets/openai/adapter.json",
|
||||
"adapter": "tests/tmp_review_studio/dist/targets/openai/adapter.json",
|
||||
"permission_model": "metadata-only",
|
||||
"native_enforcement": false,
|
||||
"metadata_fallback_explicit": true,
|
||||
@@ -107,7 +107,7 @@
|
||||
{
|
||||
"target": "claude",
|
||||
"status": "pass",
|
||||
"adapter": "dist/targets/claude/adapter.json",
|
||||
"adapter": "tests/tmp_review_studio/dist/targets/claude/adapter.json",
|
||||
"permission_model": "neutral-source-plus-adapter",
|
||||
"native_enforcement": false,
|
||||
"metadata_fallback_explicit": true,
|
||||
@@ -177,7 +177,7 @@
|
||||
{
|
||||
"target": "generic",
|
||||
"status": "pass",
|
||||
"adapter": "dist/targets/generic/adapter.json",
|
||||
"adapter": "tests/tmp_review_studio/dist/targets/generic/adapter.json",
|
||||
"permission_model": "agent-skills-compatible-metadata",
|
||||
"native_enforcement": false,
|
||||
"metadata_fallback_explicit": true,
|
||||
@@ -247,7 +247,7 @@
|
||||
{
|
||||
"target": "vscode",
|
||||
"status": "pass",
|
||||
"adapter": "dist/targets/vscode/adapter.json",
|
||||
"adapter": "tests/tmp_review_studio/dist/targets/vscode/adapter.json",
|
||||
"permission_model": "vscode-workspace-trust-plus-metadata",
|
||||
"native_enforcement": false,
|
||||
"metadata_fallback_explicit": true,
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
"ok": true,
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"scanned_files": 174,
|
||||
"script_count": 90,
|
||||
"scanned_files": 175,
|
||||
"script_count": 91,
|
||||
"internal_module_count": 17,
|
||||
"secret_findings": 0,
|
||||
"dependency_files": [
|
||||
@@ -12,18 +12,18 @@
|
||||
"network_script_count": 3,
|
||||
"network_policy_covered_count": 3,
|
||||
"network_policy_missing_count": 0,
|
||||
"file_write_script_count": 60,
|
||||
"file_write_script_count": 61,
|
||||
"permission_required_count": 3,
|
||||
"permission_approved_count": 3,
|
||||
"permission_missing_count": 0,
|
||||
"permission_invalid_count": 0,
|
||||
"permission_expired_count": 0,
|
||||
"help_smoke_checked_count": 73,
|
||||
"help_smoke_checked_count": 74,
|
||||
"help_smoke_failed_count": 0,
|
||||
"interactive_script_count": 0,
|
||||
"package_hash_scope": "source-contract-without-generated-reports",
|
||||
"package_hash_file_count": 174,
|
||||
"package_sha256": "0b47fb8b2db508e32d5aafd5c46bd008dc23493c1ff909427686609e9f99d5a9"
|
||||
"package_hash_file_count": 175,
|
||||
"package_sha256": "4871c36233a53615c8e19c1c59449af60e732fff2d389742ca510422d7cbac75"
|
||||
},
|
||||
"failures": [],
|
||||
"warnings": [],
|
||||
@@ -332,6 +332,20 @@
|
||||
"network_urls": [],
|
||||
"network_hosts": []
|
||||
},
|
||||
{
|
||||
"path": "scripts/prepare_world_class_submission_kit.py",
|
||||
"interface": "cli",
|
||||
"interface_declared": true,
|
||||
"interface_reason": "Prepares editable world-class evidence intake packets without counting drafts as accepted evidence.",
|
||||
"has_argparse": true,
|
||||
"has_main_guard": true,
|
||||
"uses_input": false,
|
||||
"uses_network": false,
|
||||
"uses_file_write": true,
|
||||
"uses_subprocess": false,
|
||||
"network_urls": [],
|
||||
"network_hosts": []
|
||||
},
|
||||
{
|
||||
"path": "scripts/probe_runtime_permissions.py",
|
||||
"interface": "cli",
|
||||
@@ -1337,9 +1351,9 @@
|
||||
"help_smoke": {
|
||||
"enabled": true,
|
||||
"timeout_seconds": 5.0,
|
||||
"candidate_count": 73,
|
||||
"checked_count": 73,
|
||||
"passed_count": 73,
|
||||
"candidate_count": 74,
|
||||
"checked_count": 74,
|
||||
"passed_count": 74,
|
||||
"failed_count": 0,
|
||||
"skipped_count": 17,
|
||||
"failed_scripts": [],
|
||||
@@ -1554,6 +1568,16 @@
|
||||
"stdout_excerpt": "usage: optimize_description.py [-h] --description-file DESCRIPTION_FILE\n [--baseline-description-file BASELINE_DESCRIPTION_FILE]\n --dev-cases DEV_CASES\n ",
|
||||
"stderr_excerpt": ""
|
||||
},
|
||||
{
|
||||
"path": "scripts/prepare_world_class_submission_kit.py",
|
||||
"command": "python3 scripts/prepare_world_class_submission_kit.py --help",
|
||||
"returncode": 0,
|
||||
"timed_out": false,
|
||||
"passed": true,
|
||||
"has_help_text": true,
|
||||
"stdout_excerpt": "usage: prepare_world_class_submission_kit.py [-h] [--output-dir OUTPUT_DIR]\n [--evidence-key EVIDENCE_KEY]\n [--overwrite]\n ",
|
||||
"stderr_excerpt": ""
|
||||
},
|
||||
{
|
||||
"path": "scripts/probe_runtime_permissions.py",
|
||||
"command": "python3 scripts/probe_runtime_permissions.py --help",
|
||||
@@ -2212,6 +2236,7 @@
|
||||
"scripts/github_benchmark_scan.py",
|
||||
"scripts/import_telemetry_events.py",
|
||||
"scripts/init_skill.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/python_compat_check.py",
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
# Security Trust Report
|
||||
|
||||
- OK: `True`
|
||||
- Scanned files: `174`
|
||||
- Scripts: `90`
|
||||
- Scanned files: `175`
|
||||
- Scripts: `91`
|
||||
- Internal script modules: `17`
|
||||
- Secret findings: `0`
|
||||
- Network-capable scripts: `3`
|
||||
- Network policy covered scripts: `3`
|
||||
- Network policy missing scripts: `0`
|
||||
- File-write scripts: `60`
|
||||
- File-write scripts: `61`
|
||||
- Permission approvals: `3 / 3`
|
||||
- Permission approval gaps: `0`
|
||||
- CLI help smoke checked: `73`
|
||||
- CLI help smoke checked: `74`
|
||||
- CLI help smoke failures: `0`
|
||||
- Interactive scripts: `0`
|
||||
- Package hash scope: `source-contract-without-generated-reports`
|
||||
- Package hash files: `174`
|
||||
- Package SHA256: `0b47fb8b2db508e32d5aafd5c46bd008dc23493c1ff909427686609e9f99d5a9`
|
||||
- Package hash files: `175`
|
||||
- Package SHA256: `4871c36233a53615c8e19c1c59449af60e732fff2d389742ca510422d7cbac75`
|
||||
|
||||
## Failures
|
||||
|
||||
@@ -54,8 +54,8 @@
|
||||
|
||||
- Enabled: `True`
|
||||
- Timeout seconds: `5.0`
|
||||
- Checked scripts: `73`
|
||||
- Passed scripts: `73`
|
||||
- Checked scripts: `74`
|
||||
- Passed scripts: `74`
|
||||
- Failed scripts: `none`
|
||||
|
||||
## Script Surface
|
||||
@@ -83,6 +83,7 @@
|
||||
| scripts/lint_skill.py | cli | False | True | True | False | False | False | False | Default CLI classification; add SCRIPT_INTERFACE for internal modules. |
|
||||
| scripts/local_output_eval_runner.py | cli | False | True | True | False | False | False | False | Default CLI classification; add SCRIPT_INTERFACE for internal modules. |
|
||||
| scripts/optimize_description.py | cli | False | True | True | False | False | False | False | Default CLI classification; add SCRIPT_INTERFACE for internal modules. |
|
||||
| scripts/prepare_world_class_submission_kit.py | cli | True | True | True | False | False | True | False | Prepares editable world-class evidence intake packets without counting drafts as accepted evidence. |
|
||||
| scripts/probe_runtime_permissions.py | cli | False | True | True | False | False | True | False | Default CLI classification; add SCRIPT_INTERFACE for internal modules. |
|
||||
| scripts/promotion_checker.py | cli | False | True | True | False | False | True | False | Default CLI classification; add SCRIPT_INTERFACE for internal modules. |
|
||||
| scripts/provider_output_eval_runner.py | cli | False | True | True | False | True | False | False | Default CLI classification; add SCRIPT_INTERFACE for internal modules. |
|
||||
|
||||
@@ -771,7 +771,7 @@
|
||||
<p><span data-lang="zh-CN">让 reviewer 快速确认关键文件、目录和资产分布。</span><span data-lang="en">Lets reviewers confirm key files, directories, and asset distribution quickly.</span></p>
|
||||
</div>
|
||||
<div class="two-col">
|
||||
<figure class="chart-figure" data-chart="asset_donut"><svg viewBox="0 0 430 270" role="img" aria-label="资产分布"><text x="20" y="30" class="chart-title">资产分布</text><circle cx="130" cy="130" r="70" fill="none" stroke="#1B365D" stroke-width="24" stroke-dasharray="0.8 99.2" stroke-dashoffset="0.0" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#2D5A8A" stroke-width="24" stroke-dasharray="0.8 99.2" stroke-dashoffset="-0.8" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#D0DCE9" stroke-width="24" stroke-dasharray="0.8 99.2" stroke-dashoffset="-1.6" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#E4ECF5" stroke-width="24" stroke-dasharray="0.8 99.2" stroke-dashoffset="-2.4" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#e8e6dc" stroke-width="24" stroke-dasharray="25.4 74.6" stroke-dashoffset="-3.2" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#504e49" stroke-width="24" stroke-dasharray="71.4 28.6" stroke-dashoffset="-28.6" pathLength="100" transform="rotate(-90 130 130)"/><text x="130" y="136" text-anchor="middle">349项</text><text x="235" y="78">SKILL.md</text><text x="235" y="100">README.md</text><text x="235" y="122">agents/interface.yaml</text><text x="235" y="144">manifest.json</text><text x="235" y="166">references</text><text x="235" y="188">scripts</text></svg><figcaption>资产分布图展示当前包体的文件和目录重心。</figcaption></figure>
|
||||
<figure class="chart-figure" data-chart="asset_donut"><svg viewBox="0 0 430 270" role="img" aria-label="资产分布"><text x="20" y="30" class="chart-title">资产分布</text><circle cx="130" cy="130" r="70" fill="none" stroke="#1B365D" stroke-width="24" stroke-dasharray="0.8 99.2" stroke-dashoffset="0.0" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#2D5A8A" stroke-width="24" stroke-dasharray="0.8 99.2" stroke-dashoffset="-0.8" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#D0DCE9" stroke-width="24" stroke-dasharray="0.8 99.2" stroke-dashoffset="-1.6" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#E4ECF5" stroke-width="24" stroke-dasharray="0.8 99.2" stroke-dashoffset="-2.4" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#e8e6dc" stroke-width="24" stroke-dasharray="25.2 74.8" stroke-dashoffset="-3.1" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#504e49" stroke-width="24" stroke-dasharray="71.7 28.3" stroke-dashoffset="-28.3" pathLength="100" transform="rotate(-90 130 130)"/><text x="130" y="136" text-anchor="middle">350项</text><text x="235" y="78">SKILL.md</text><text x="235" y="100">README.md</text><text x="235" y="122">agents/interface.yaml</text><text x="235" y="144">manifest.json</text><text x="235" y="166">references</text><text x="235" y="188">scripts</text></svg><figcaption>资产分布图展示当前包体的文件和目录重心。</figcaption></figure>
|
||||
<table>
|
||||
<thead><tr><th><span data-lang="zh-CN">路径</span><span data-lang="en">Path</span></th><th><span data-lang="zh-CN">作用</span><span data-lang="en">Role</span></th><th><span data-lang="zh-CN">类型</span><span data-lang="en">Type</span></th></tr></thead>
|
||||
<tbody><tr><td>SKILL.md</td><td><span data-lang="zh-CN">Skill 入口文件</span><span data-lang="en">Skill entrypoint</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>README.md</td><td><span data-lang="zh-CN">人类可读使用说明</span><span data-lang="en">Human-readable usage guide</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>agents/interface.yaml</td><td><span data-lang="zh-CN">跨平台接口元数据</span><span data-lang="en">Neutral interface metadata</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>manifest.json</td><td><span data-lang="zh-CN">生命周期与打包元数据</span><span data-lang="en">Lifecycle and portability metadata</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>references</td><td><span data-lang="zh-CN">扩展指导与复用资料</span><span data-lang="en">Extended guidance and reusable notes</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>scripts</td><td><span data-lang="zh-CN">确定性脚本或本地工具</span><span data-lang="en">Deterministic helpers or local tooling</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>evals</td><td><span data-lang="zh-CN">触发与质量检查</span><span data-lang="en">Trigger and quality checks</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>reports</td><td><span data-lang="zh-CN">生成的证据与总结报告</span><span data-lang="en">Generated evidence and overview artifacts</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr></tbody>
|
||||
|
||||
+29
-29
@@ -436,7 +436,7 @@
|
||||
"path": "scripts",
|
||||
"label": "Deterministic helpers or local tooling",
|
||||
"kind": "folder",
|
||||
"file_count": 90
|
||||
"file_count": 91
|
||||
},
|
||||
{
|
||||
"path": "evals",
|
||||
@@ -451,7 +451,7 @@
|
||||
"file_count": 195
|
||||
}
|
||||
],
|
||||
"file_count": 349,
|
||||
"file_count": 350,
|
||||
"folder_count": 4,
|
||||
"distribution": [
|
||||
{
|
||||
@@ -476,7 +476,7 @@
|
||||
},
|
||||
{
|
||||
"label": "scripts",
|
||||
"value": 90
|
||||
"value": 91
|
||||
},
|
||||
{
|
||||
"label": "evals",
|
||||
@@ -605,7 +605,7 @@
|
||||
"path": "scripts",
|
||||
"label": "Deterministic helpers or local tooling",
|
||||
"kind": "folder",
|
||||
"file_count": 90
|
||||
"file_count": 91
|
||||
},
|
||||
{
|
||||
"path": "evals",
|
||||
@@ -909,9 +909,9 @@
|
||||
"world_class_task_count": 4,
|
||||
"world_class_ledger_pending_count": 4,
|
||||
"working_tree_dirty": true,
|
||||
"changed_file_count": 30
|
||||
"changed_file_count": 54
|
||||
},
|
||||
"commit": "c5e7b05faae8536b420c5120c1d3a59456c96e51",
|
||||
"commit": "b540f580b373cb9c0f575b687fb82c5a16748a5d",
|
||||
"missing_artifacts": [],
|
||||
"limitations": [
|
||||
"Local command-runner evidence is reproducible but does not replace provider-backed model holdout evidence.",
|
||||
@@ -986,8 +986,8 @@
|
||||
"failures": []
|
||||
},
|
||||
"trust_security": {
|
||||
"scanned_files": 174,
|
||||
"script_count": 90,
|
||||
"scanned_files": 175,
|
||||
"script_count": 91,
|
||||
"internal_module_count": 17,
|
||||
"secret_findings": 0,
|
||||
"dependency_files": [
|
||||
@@ -996,18 +996,18 @@
|
||||
"network_script_count": 3,
|
||||
"network_policy_covered_count": 3,
|
||||
"network_policy_missing_count": 0,
|
||||
"file_write_script_count": 60,
|
||||
"file_write_script_count": 61,
|
||||
"permission_required_count": 3,
|
||||
"permission_approved_count": 3,
|
||||
"permission_missing_count": 0,
|
||||
"permission_invalid_count": 0,
|
||||
"permission_expired_count": 0,
|
||||
"help_smoke_checked_count": 73,
|
||||
"help_smoke_checked_count": 74,
|
||||
"help_smoke_failed_count": 0,
|
||||
"interactive_script_count": 0,
|
||||
"package_hash_scope": "source-contract-without-generated-reports",
|
||||
"package_hash_file_count": 174,
|
||||
"package_sha256": "0b47fb8b2db508e32d5aafd5c46bd008dc23493c1ff909427686609e9f99d5a9"
|
||||
"package_hash_file_count": 175,
|
||||
"package_sha256": "d799ec85c035b6335ea1e262b980d630ec05cd07448239cf97a34540eb4c2bac"
|
||||
},
|
||||
"skill_atlas": {
|
||||
"skill_count": 12,
|
||||
@@ -1045,8 +1045,8 @@
|
||||
"trust_level": "local",
|
||||
"license": "MIT",
|
||||
"checksums": {
|
||||
"package_sha256": "0b47fb8b2db508e32d5aafd5c46bd008dc23493c1ff909427686609e9f99d5a9",
|
||||
"archive_sha256": "934b2967ff56afa5d725b9c129d4fc1e280854d85aa09783ffdb1b6b3108346d"
|
||||
"package_sha256": "d799ec85c035b6335ea1e262b980d630ec05cd07448239cf97a34540eb4c2bac",
|
||||
"archive_sha256": "fe47e53a7a89918ef2d7ae53c1e62a6b73da0bd80904d5a157c71a2758c8004e"
|
||||
},
|
||||
"compatibility": {
|
||||
"openai": "pass",
|
||||
@@ -1077,7 +1077,7 @@
|
||||
},
|
||||
"distribution": {
|
||||
"archive_verified": true,
|
||||
"archive_sha256": "934b2967ff56afa5d725b9c129d4fc1e280854d85aa09783ffdb1b6b3108346d",
|
||||
"archive_sha256": "fe47e53a7a89918ef2d7ae53c1e62a6b73da0bd80904d5a157c71a2758c8004e",
|
||||
"package_verification": "reports/package_verification.json",
|
||||
"install_simulated": true,
|
||||
"install_simulation": "reports/install_simulation.json"
|
||||
@@ -1093,8 +1093,8 @@
|
||||
"target_count": 4,
|
||||
"adapter_count": 4,
|
||||
"archive_present": true,
|
||||
"archive_sha256": "934b2967ff56afa5d725b9c129d4fc1e280854d85aa09783ffdb1b6b3108346d",
|
||||
"archive_entry_count": 558,
|
||||
"archive_sha256": "fe47e53a7a89918ef2d7ae53c1e62a6b73da0bd80904d5a157c71a2758c8004e",
|
||||
"archive_entry_count": 559,
|
||||
"failure_count": 0,
|
||||
"warning_count": 0
|
||||
},
|
||||
@@ -1105,7 +1105,7 @@
|
||||
"ok": true,
|
||||
"summary": {
|
||||
"archive_present": true,
|
||||
"archive_entry_count": 558,
|
||||
"archive_entry_count": 559,
|
||||
"archive_extracted": true,
|
||||
"entrypoint_loaded": true,
|
||||
"manifest_loaded": true,
|
||||
@@ -1115,7 +1115,7 @@
|
||||
"installer_permission_failure_count": 0,
|
||||
"permission_target_count": 4,
|
||||
"permission_capability_count": 3,
|
||||
"install_root_is_temp": true,
|
||||
"install_root_is_temp": false,
|
||||
"failure_count": 0,
|
||||
"warning_count": 0
|
||||
},
|
||||
@@ -1172,12 +1172,12 @@
|
||||
{
|
||||
"field": "archive_sha256",
|
||||
"from": "",
|
||||
"to": "934b2967ff56afa5d725b9c129d4fc1e280854d85aa09783ffdb1b6b3108346d"
|
||||
"to": "fe47e53a7a89918ef2d7ae53c1e62a6b73da0bd80904d5a157c71a2758c8004e"
|
||||
},
|
||||
{
|
||||
"field": "package_sha256",
|
||||
"from": "0000000000000000000000000000000000000000000000000000000000000000",
|
||||
"to": "0b47fb8b2db508e32d5aafd5c46bd008dc23493c1ff909427686609e9f99d5a9"
|
||||
"to": "d799ec85c035b6335ea1e262b980d630ec05cd07448239cf97a34540eb4c2bac"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -1194,14 +1194,14 @@
|
||||
"ok": true,
|
||||
"summary": {
|
||||
"event_count": 1,
|
||||
"adoption_sample_count": 0,
|
||||
"activation_count": 0,
|
||||
"accepted_count": 0,
|
||||
"adoption_sample_count": 1,
|
||||
"activation_count": 1,
|
||||
"accepted_count": 1,
|
||||
"edited_count": 0,
|
||||
"rejected_count": 0,
|
||||
"missed_count": 0,
|
||||
"failed_count": 0,
|
||||
"adoption_rate": 0,
|
||||
"adoption_rate": 100.0,
|
||||
"missed_trigger_count": 0,
|
||||
"wrong_trigger_count": 0,
|
||||
"bad_output_count": 0,
|
||||
@@ -1210,7 +1210,7 @@
|
||||
"review_overdue_count": 0,
|
||||
"risk_band": "low",
|
||||
"event_types": {
|
||||
"review_event": 1
|
||||
"skill_activation": 1
|
||||
},
|
||||
"failure_types": {},
|
||||
"source_types": {
|
||||
@@ -1423,7 +1423,7 @@
|
||||
"status": "external_required",
|
||||
"category": "external",
|
||||
"owner": "Browser/Chrome/IDE/provider client integrator",
|
||||
"current": "external source events 0; adoption samples 0",
|
||||
"current": "external source events 0; adoption samples 1",
|
||||
"objective": "Import production metadata-only events from a real external client into the local drift loop.",
|
||||
"runbook": [
|
||||
"python3 scripts/telemetry_native_host.py . --write-launcher /tmp/yao-telemetry-host.sh --write-manifest /tmp/yao-telemetry-host.json --allowed-origin chrome-extension://<extension-id>/",
|
||||
@@ -1655,7 +1655,7 @@
|
||||
"owner": "Browser/Chrome/IDE/provider client integrator",
|
||||
"status": "pending",
|
||||
"source_status": "external_required",
|
||||
"current": "external source events 0; adoption samples 0",
|
||||
"current": "external source events 0; adoption samples 1",
|
||||
"objective": "Import production metadata-only events from a real external client into the local drift loop.",
|
||||
"provenance_requirements": [
|
||||
"real external client source",
|
||||
@@ -1683,7 +1683,7 @@
|
||||
],
|
||||
"observed_state": {
|
||||
"external_source_events": 0,
|
||||
"adoption_sample_count": 0,
|
||||
"adoption_sample_count": 1,
|
||||
"raw_content_allowed": false,
|
||||
"risk_band": "low",
|
||||
"accepted": false
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
},
|
||||
"catalog": {
|
||||
"workspace_root": ".",
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"skills": [
|
||||
{
|
||||
"name": "yao-meta-skill",
|
||||
@@ -85,6 +85,7 @@
|
||||
"scripts/lint_skill.py",
|
||||
"scripts/local_output_eval_runner.py",
|
||||
"scripts/optimize_description.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/provider_output_eval_runner.py",
|
||||
@@ -217,8 +218,8 @@
|
||||
"report": "reports/adoption_drift_report.json",
|
||||
"risk_band": "low",
|
||||
"event_count": 1,
|
||||
"adoption_sample_count": 0,
|
||||
"adoption_rate": 0,
|
||||
"adoption_sample_count": 1,
|
||||
"adoption_rate": 100.0,
|
||||
"candidate_count": 0
|
||||
}
|
||||
},
|
||||
@@ -881,7 +882,7 @@
|
||||
"name": "incident-command-governor",
|
||||
"path": "examples/governed-incident-command/generated-skill",
|
||||
"reason": "review overdue by cadence monthly",
|
||||
"age_days": 75,
|
||||
"age_days": 74,
|
||||
"allowed_days": 31,
|
||||
"actionable": false,
|
||||
"scope": "example"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"item_count": 15,
|
||||
@@ -197,7 +197,7 @@
|
||||
"key": "trust-security",
|
||||
"label": "Trust Security",
|
||||
"status": "pass",
|
||||
"current": "secrets 0; scripts 90; help failures 0",
|
||||
"current": "secrets 0; scripts 91; help failures 0",
|
||||
"target": "Secrets, scripts, dependencies, permissions, and package hash are reviewable",
|
||||
"evidence": [
|
||||
{
|
||||
@@ -281,7 +281,7 @@
|
||||
"key": "registry-distribution",
|
||||
"label": "Registry Distribution",
|
||||
"status": "pass",
|
||||
"current": "zip entries 558; install failures 0; permission failures 0",
|
||||
"current": "zip entries 559; install failures 0; permission failures 0",
|
||||
"target": "Package metadata, archive checksum, package verification, and install simulation pass",
|
||||
"evidence": [
|
||||
{
|
||||
@@ -347,7 +347,7 @@
|
||||
"key": "native-client-telemetry",
|
||||
"label": "Native Client Telemetry",
|
||||
"status": "external_required",
|
||||
"current": "external source events 0; adoption samples 0",
|
||||
"current": "external source events 0; adoption samples 1",
|
||||
"target": "A real Browser/Chrome/provider client sends production metadata events",
|
||||
"evidence": [
|
||||
{
|
||||
@@ -425,7 +425,7 @@
|
||||
"key": "native-client-telemetry",
|
||||
"label": "Native Client Telemetry",
|
||||
"status": "external_required",
|
||||
"current": "external source events 0; adoption samples 0",
|
||||
"current": "external source events 0; adoption samples 1",
|
||||
"target": "A real Browser/Chrome/provider client sends production metadata events",
|
||||
"evidence": [
|
||||
{
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Skill OS 2.0 Audit
|
||||
|
||||
Generated at: `2026-06-14`
|
||||
Generated at: `2026-06-13`
|
||||
|
||||
## Summary
|
||||
|
||||
@@ -23,14 +23,14 @@ Generated at: `2026-06-14`
|
||||
| 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 20; 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 90; 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 91; 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 | Packaged adapters expose explicit permission metadata and residual risks | Preserve residual-risk notes until real native enforcement exists. |
|
||||
| Native Permission Enforcement | external-required | native-enforced targets 0 | At least one target/client enforces approved permissions at runtime | Integrate a real client or 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 558; 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 559; 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. |
|
||||
| Native Client Telemetry | external-required | external source events 0; adoption samples 1 | A real Browser/Chrome/provider client sends production metadata events | Install a real client against the native host and import production metadata-only events. |
|
||||
|
||||
## Open Highest-Leverage Gaps
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"item_count": 20,
|
||||
@@ -122,7 +122,7 @@
|
||||
"label": "Trust Security",
|
||||
"status": "pass",
|
||||
"objective": "Scripts, dependencies, permissions, secrets, and package hash are reviewable for team distribution.",
|
||||
"current": "90 scripts; secrets 0; help failures 0",
|
||||
"current": "91 scripts; secrets 0; help failures 0",
|
||||
"command": "python3 scripts/yao.py trust .",
|
||||
"test": "python3 tests/verify_trust_check.py",
|
||||
"evidence": [
|
||||
@@ -196,7 +196,7 @@
|
||||
"label": "Registry Distribution",
|
||||
"status": "pass",
|
||||
"objective": "Skill packages are installable, versioned, checksumed, and upgrade-reviewable.",
|
||||
"current": "archive entries 558; install failures 0",
|
||||
"current": "archive entries 559; 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": [
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Skill OS 2.0 Blueprint Coverage
|
||||
|
||||
Generated at: `2026-06-14`
|
||||
Generated at: `2026-06-13`
|
||||
|
||||
## Summary
|
||||
|
||||
@@ -21,9 +21,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` | 90 scripts; secrets 0; help failures 0 | `python3 scripts/yao.py trust .` | `python3 tests/verify_trust_check.py` |
|
||||
| Trust Security | `pass` | 91 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 558; 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 559; 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` |
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"ok": true,
|
||||
"schema_version": "2.0",
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"previous": {
|
||||
"name": "yao-meta-skill",
|
||||
"version": "1.0.0",
|
||||
@@ -70,12 +70,12 @@
|
||||
{
|
||||
"field": "archive_sha256",
|
||||
"from": "",
|
||||
"to": "934b2967ff56afa5d725b9c129d4fc1e280854d85aa09783ffdb1b6b3108346d"
|
||||
"to": "fe47e53a7a89918ef2d7ae53c1e62a6b73da0bd80904d5a157c71a2758c8004e"
|
||||
},
|
||||
{
|
||||
"field": "package_sha256",
|
||||
"from": "0000000000000000000000000000000000000000000000000000000000000000",
|
||||
"to": "0b47fb8b2db508e32d5aafd5c46bd008dc23493c1ff909427686609e9f99d5a9"
|
||||
"to": "4871c36233a53615c8e19c1c59449af60e732fff2d389742ca510422d7cbac75"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -90,7 +90,7 @@
|
||||
"artifacts": {
|
||||
"previous_package": "registry/examples/yao-meta-skill-1.0.0.json",
|
||||
"current_package": "reports/registry_audit.json",
|
||||
"json": "reports/upgrade_check.json",
|
||||
"markdown": "reports/upgrade_check.md"
|
||||
"json": "tests/tmp_review_studio/upgrade_check.json",
|
||||
"markdown": "tests/tmp_review_studio/upgrade_check.md"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"ledger_ready_to_claim_world_class": false,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# World-Class Claim Guard
|
||||
|
||||
Generated at: `2026-06-14`
|
||||
Generated at: `2026-06-13`
|
||||
|
||||
## Summary
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"schema_present": true,
|
||||
@@ -64,7 +64,7 @@
|
||||
"template_path": "evidence/world_class/templates/provider-holdout.intake.json",
|
||||
"submission_path": "evidence/world_class/submissions/provider-holdout.json",
|
||||
"commands": {
|
||||
"prepare_submission": "mkdir -p evidence/world_class/submissions && cp evidence/world_class/templates/provider-holdout.intake.json evidence/world_class/submissions/provider-holdout.json",
|
||||
"prepare_submission": "python3 scripts/yao.py world-class-submission-kit . --evidence-key provider-holdout --output-dir evidence/world_class/submissions",
|
||||
"validate_intake": "python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions",
|
||||
"refresh_ledger": "python3 scripts/yao.py world-class-ledger .",
|
||||
"guard_claim": "python3 scripts/yao.py world-class-claim-guard ."
|
||||
@@ -115,7 +115,7 @@
|
||||
"template_path": "evidence/world_class/templates/human-adjudication.intake.json",
|
||||
"submission_path": "evidence/world_class/submissions/human-adjudication.json",
|
||||
"commands": {
|
||||
"prepare_submission": "mkdir -p evidence/world_class/submissions && cp evidence/world_class/templates/human-adjudication.intake.json evidence/world_class/submissions/human-adjudication.json",
|
||||
"prepare_submission": "python3 scripts/yao.py world-class-submission-kit . --evidence-key human-adjudication --output-dir evidence/world_class/submissions",
|
||||
"validate_intake": "python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions",
|
||||
"refresh_ledger": "python3 scripts/yao.py world-class-ledger .",
|
||||
"guard_claim": "python3 scripts/yao.py world-class-claim-guard ."
|
||||
@@ -167,7 +167,7 @@
|
||||
"template_path": "evidence/world_class/templates/native-permission-enforcement.intake.json",
|
||||
"submission_path": "evidence/world_class/submissions/native-permission-enforcement.json",
|
||||
"commands": {
|
||||
"prepare_submission": "mkdir -p evidence/world_class/submissions && cp evidence/world_class/templates/native-permission-enforcement.intake.json evidence/world_class/submissions/native-permission-enforcement.json",
|
||||
"prepare_submission": "python3 scripts/yao.py world-class-submission-kit . --evidence-key native-permission-enforcement --output-dir evidence/world_class/submissions",
|
||||
"validate_intake": "python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions",
|
||||
"refresh_ledger": "python3 scripts/yao.py world-class-ledger .",
|
||||
"guard_claim": "python3 scripts/yao.py world-class-claim-guard ."
|
||||
@@ -218,7 +218,7 @@
|
||||
"template_path": "evidence/world_class/templates/native-client-telemetry.intake.json",
|
||||
"submission_path": "evidence/world_class/submissions/native-client-telemetry.json",
|
||||
"commands": {
|
||||
"prepare_submission": "mkdir -p evidence/world_class/submissions && cp evidence/world_class/templates/native-client-telemetry.intake.json evidence/world_class/submissions/native-client-telemetry.json",
|
||||
"prepare_submission": "python3 scripts/yao.py world-class-submission-kit . --evidence-key native-client-telemetry --output-dir evidence/world_class/submissions",
|
||||
"validate_intake": "python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions",
|
||||
"refresh_ledger": "python3 scripts/yao.py world-class-ledger .",
|
||||
"guard_claim": "python3 scripts/yao.py world-class-claim-guard ."
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# World-Class Evidence Intake
|
||||
|
||||
Generated at: `2026-06-14`
|
||||
Generated at: `2026-06-13`
|
||||
|
||||
## Summary
|
||||
|
||||
@@ -51,7 +51,7 @@ This report validates the intake contract for human and external evidence. A val
|
||||
|
||||
#### Commands
|
||||
|
||||
- prepare_submission: `mkdir -p evidence/world_class/submissions && cp evidence/world_class/templates/provider-holdout.intake.json evidence/world_class/submissions/provider-holdout.json`
|
||||
- prepare_submission: `python3 scripts/yao.py world-class-submission-kit . --evidence-key provider-holdout --output-dir evidence/world_class/submissions`
|
||||
- validate_intake: `python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions`
|
||||
- refresh_ledger: `python3 scripts/yao.py world-class-ledger .`
|
||||
- guard_claim: `python3 scripts/yao.py world-class-claim-guard .`
|
||||
@@ -89,7 +89,7 @@ This report validates the intake contract for human and external evidence. A val
|
||||
|
||||
#### Commands
|
||||
|
||||
- prepare_submission: `mkdir -p evidence/world_class/submissions && cp evidence/world_class/templates/human-adjudication.intake.json evidence/world_class/submissions/human-adjudication.json`
|
||||
- prepare_submission: `python3 scripts/yao.py world-class-submission-kit . --evidence-key human-adjudication --output-dir evidence/world_class/submissions`
|
||||
- validate_intake: `python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions`
|
||||
- refresh_ledger: `python3 scripts/yao.py world-class-ledger .`
|
||||
- guard_claim: `python3 scripts/yao.py world-class-claim-guard .`
|
||||
@@ -128,7 +128,7 @@ This report validates the intake contract for human and external evidence. A val
|
||||
|
||||
#### Commands
|
||||
|
||||
- prepare_submission: `mkdir -p evidence/world_class/submissions && cp evidence/world_class/templates/native-permission-enforcement.intake.json evidence/world_class/submissions/native-permission-enforcement.json`
|
||||
- prepare_submission: `python3 scripts/yao.py world-class-submission-kit . --evidence-key native-permission-enforcement --output-dir evidence/world_class/submissions`
|
||||
- validate_intake: `python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions`
|
||||
- refresh_ledger: `python3 scripts/yao.py world-class-ledger .`
|
||||
- guard_claim: `python3 scripts/yao.py world-class-claim-guard .`
|
||||
@@ -166,7 +166,7 @@ This report validates the intake contract for human and external evidence. A val
|
||||
|
||||
#### Commands
|
||||
|
||||
- prepare_submission: `mkdir -p evidence/world_class/submissions && cp evidence/world_class/templates/native-client-telemetry.intake.json evidence/world_class/submissions/native-client-telemetry.json`
|
||||
- prepare_submission: `python3 scripts/yao.py world-class-submission-kit . --evidence-key native-client-telemetry --output-dir evidence/world_class/submissions`
|
||||
- validate_intake: `python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions`
|
||||
- refresh_ledger: `python3 scripts/yao.py world-class-ledger .`
|
||||
- guard_claim: `python3 scripts/yao.py world-class-claim-guard .`
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"ledger_entry_count": 4,
|
||||
@@ -194,7 +194,7 @@
|
||||
"owner": "Browser/Chrome/IDE/provider client integrator",
|
||||
"status": "pending",
|
||||
"source_status": "external_required",
|
||||
"current": "external source events 0; adoption samples 0",
|
||||
"current": "external source events 0; adoption samples 1",
|
||||
"objective": "Import production metadata-only events from a real external client into the local drift loop.",
|
||||
"provenance_requirements": [
|
||||
"real external client source",
|
||||
@@ -222,7 +222,7 @@
|
||||
],
|
||||
"observed_state": {
|
||||
"external_source_events": 0,
|
||||
"adoption_sample_count": 0,
|
||||
"adoption_sample_count": 1,
|
||||
"raw_content_allowed": false,
|
||||
"risk_band": "low",
|
||||
"accepted": false
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# World-Class Evidence Ledger
|
||||
|
||||
Generated at: `2026-06-14`
|
||||
Generated at: `2026-06-13`
|
||||
|
||||
## Summary
|
||||
|
||||
@@ -25,7 +25,7 @@ This ledger records the current evidence state. It does not treat planned work,
|
||||
| `provider-holdout` | `pending` | `missing` | `external` | model-executed 0; token-observed 0 | Run provider-backed holdout cases with real credentials and commit only aggregate evidence. |
|
||||
| `human-adjudication` | `pending` | `missing` | `human` | 0/5 decisions; pending 5 | Record real A/B choices in the decision template, then regenerate adjudication. |
|
||||
| `native-permission-enforcement` | `pending` | `missing` | `external` | native-enforced targets 0 | Integrate a real client or installer runtime guard before claiming native permission enforcement. |
|
||||
| `native-client-telemetry` | `pending` | `missing` | `external` | external source events 0; adoption samples 0 | Install a real client against the native host and import production metadata-only events. |
|
||||
| `native-client-telemetry` | `pending` | `missing` | `external` | external source events 0; adoption samples 1 | Install a real client against the native host and import production metadata-only events. |
|
||||
|
||||
## Provider Holdout
|
||||
|
||||
@@ -105,7 +105,7 @@ This ledger records the current evidence state. It does not treat planned work,
|
||||
|
||||
- objective: Import production metadata-only events from a real external client into the local drift loop.
|
||||
- source status: `external_required`
|
||||
- observed state: `{"external_source_events": 0, "adoption_sample_count": 0, "raw_content_allowed": false, "risk_band": "low", "accepted": false}`
|
||||
- observed state: `{"external_source_events": 0, "adoption_sample_count": 1, "raw_content_allowed": false, "risk_band": "low", "accepted": false}`
|
||||
- submission state: `{"status": "missing", "path": "evidence/world_class/submissions/native-client-telemetry.json", "artifact_ref_count": 0, "attested_real_evidence": false, "privacy_contract_satisfied": false, "ledger_counts_as_completion": false}`
|
||||
|
||||
### Provenance Requirements
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"schema_version": "1.0",
|
||||
"ok": true,
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"skill_dir": ".",
|
||||
"summary": {
|
||||
"audit_decision": "continue-iteration",
|
||||
@@ -132,7 +132,7 @@
|
||||
"status": "external_required",
|
||||
"category": "external",
|
||||
"owner": "Browser/Chrome/IDE/provider client integrator",
|
||||
"current": "external source events 0; adoption samples 0",
|
||||
"current": "external source events 0; adoption samples 1",
|
||||
"objective": "Import production metadata-only events from a real external client into the local drift loop.",
|
||||
"runbook": [
|
||||
"python3 scripts/telemetry_native_host.py . --write-launcher /tmp/yao-telemetry-host.sh --write-manifest /tmp/yao-telemetry-host.json --allowed-origin chrome-extension://<extension-id>/",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# World-Class Evidence Plan
|
||||
|
||||
Generated at: `2026-06-14`
|
||||
Generated at: `2026-06-13`
|
||||
|
||||
## Summary
|
||||
|
||||
@@ -20,7 +20,7 @@ This report is an execution plan for the remaining world-class evidence gaps. It
|
||||
| `provider-holdout` | `external_required` | `external` | operator with provider credentials | model-executed 0; token-observed 0 |
|
||||
| `human-adjudication` | `human_required` | `human` | human reviewer | 0/5 decisions; pending 5 |
|
||||
| `native-permission-enforcement` | `external_required` | `external` | target client or installer integrator | native-enforced targets 0 |
|
||||
| `native-client-telemetry` | `external_required` | `external` | Browser/Chrome/IDE/provider client integrator | external source events 0; adoption samples 0 |
|
||||
| `native-client-telemetry` | `external_required` | `external` | Browser/Chrome/IDE/provider client integrator | external source events 0; adoption samples 1 |
|
||||
|
||||
## Provider Holdout
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@ SAFE_ENV_KEYS = (
|
||||
"TERM",
|
||||
"TMP",
|
||||
"TMPDIR",
|
||||
"TZ",
|
||||
)
|
||||
DEFAULT_TARGETS = [
|
||||
"eval",
|
||||
|
||||
@@ -0,0 +1,218 @@
|
||||
#!/usr/bin/env python3
|
||||
import argparse
|
||||
import json
|
||||
import shutil
|
||||
from datetime import date
|
||||
from pathlib import Path
|
||||
from typing import Any
|
||||
|
||||
from render_world_class_evidence_intake import build_intake
|
||||
|
||||
|
||||
ROOT = Path(__file__).resolve().parent.parent
|
||||
SCRIPT_INTERFACE = "cli"
|
||||
SCRIPT_INTERFACE_REASON = "Prepares editable world-class evidence intake packets without counting drafts as accepted evidence."
|
||||
|
||||
|
||||
def rel_path(path: Path, root: Path) -> str:
|
||||
try:
|
||||
return str(path.resolve().relative_to(root.resolve()))
|
||||
except ValueError:
|
||||
return str(path.resolve())
|
||||
|
||||
|
||||
def write_json(path: Path, payload: dict[str, Any]) -> None:
|
||||
path.parent.mkdir(parents=True, exist_ok=True)
|
||||
path.write_text(json.dumps(payload, ensure_ascii=False, indent=2) + "\n", encoding="utf-8")
|
||||
|
||||
|
||||
def requested_checklist_items(intake: dict[str, Any], evidence_keys: list[str]) -> list[dict[str, Any]]:
|
||||
items = intake.get("operator_checklist", [])
|
||||
if not evidence_keys:
|
||||
return items
|
||||
requested = set(evidence_keys)
|
||||
return [item for item in items if item.get("evidence_key") in requested]
|
||||
|
||||
|
||||
def template_result_by_key(intake: dict[str, Any]) -> dict[str, dict[str, Any]]:
|
||||
return {str(item.get("evidence_key")): item for item in intake.get("templates", [])}
|
||||
|
||||
|
||||
def copy_template(
|
||||
skill_dir: Path,
|
||||
output_dir: Path,
|
||||
item: dict[str, Any],
|
||||
template_results: dict[str, dict[str, Any]],
|
||||
overwrite: bool,
|
||||
) -> dict[str, Any]:
|
||||
key = str(item.get("evidence_key", ""))
|
||||
template_result = template_results.get(key, {})
|
||||
template_path = skill_dir / str(item.get("template_path", ""))
|
||||
output_path = output_dir / f"{key}.json"
|
||||
errors: list[str] = []
|
||||
|
||||
if template_result.get("status") != "pass":
|
||||
errors.append("template failed intake validation")
|
||||
if not template_path.exists():
|
||||
errors.append("template file is missing")
|
||||
|
||||
if errors:
|
||||
return {
|
||||
"evidence_key": key,
|
||||
"status": "skipped",
|
||||
"template_path": rel_path(template_path, skill_dir),
|
||||
"output_path": rel_path(output_path, skill_dir),
|
||||
"errors": errors,
|
||||
}
|
||||
|
||||
if output_path.exists() and not overwrite:
|
||||
return {
|
||||
"evidence_key": key,
|
||||
"status": "exists",
|
||||
"template_path": rel_path(template_path, skill_dir),
|
||||
"output_path": rel_path(output_path, skill_dir),
|
||||
"errors": [],
|
||||
}
|
||||
|
||||
output_path.parent.mkdir(parents=True, exist_ok=True)
|
||||
shutil.copyfile(template_path, output_path)
|
||||
return {
|
||||
"evidence_key": key,
|
||||
"status": "written",
|
||||
"template_path": rel_path(template_path, skill_dir),
|
||||
"output_path": rel_path(output_path, skill_dir),
|
||||
"errors": [],
|
||||
}
|
||||
|
||||
|
||||
def render_readme(report: dict[str, Any]) -> str:
|
||||
commands = report["commands"]
|
||||
lines = [
|
||||
"# World-Class Evidence Submission Kit",
|
||||
"",
|
||||
f"Generated at: `{report['generated_at']}`",
|
||||
"",
|
||||
"This kit contains editable drafts for human and external evidence packets. Drafts are not accepted evidence.",
|
||||
"",
|
||||
"## Workflow",
|
||||
"",
|
||||
"1. Run the real provider, human review, native permission, or native client telemetry work first.",
|
||||
"2. Edit the matching JSON draft with only aggregate artifact references and provenance metadata.",
|
||||
"3. Set `template_only` to `false` only after real evidence exists.",
|
||||
"4. Set attestation booleans truthfully; do not include credentials, raw prompts, raw outputs, transcripts, notes, or private user content.",
|
||||
"5. Validate the packet before asking the ledger reviewer to accept it.",
|
||||
"",
|
||||
"## Commands",
|
||||
"",
|
||||
f"- validate intake: `{commands['validate_intake']}`",
|
||||
f"- refresh ledger: `{commands['refresh_ledger']}`",
|
||||
f"- guard public claims: `{commands['guard_claim']}`",
|
||||
"",
|
||||
"## Drafts",
|
||||
"",
|
||||
"| Evidence | Draft | Status |",
|
||||
"| --- | --- | --- |",
|
||||
]
|
||||
for item in report["files"]:
|
||||
lines.append(f"| `{item['evidence_key']}` | `{item['output_path']}` | `{item['status']}` |")
|
||||
lines.extend(
|
||||
[
|
||||
"",
|
||||
"## Anti-Overclaim",
|
||||
"",
|
||||
"- This kit never marks ledger evidence as accepted.",
|
||||
"- Planned work, metadata fallback, pending review, and local command-runner output remain non-evidence.",
|
||||
"- A valid intake packet means ready for ledger review, not world-class completion.",
|
||||
]
|
||||
)
|
||||
return "\n".join(lines).rstrip() + "\n"
|
||||
|
||||
|
||||
def build_submission_kit(
|
||||
skill_dir: Path,
|
||||
output_dir: Path,
|
||||
generated_at: str,
|
||||
evidence_keys: list[str] | None = None,
|
||||
overwrite: bool = False,
|
||||
) -> dict[str, Any]:
|
||||
intake = build_intake(skill_dir, generated_at, submissions_dir=output_dir)
|
||||
items = requested_checklist_items(intake, evidence_keys or [])
|
||||
valid_keys = {str(item.get("evidence_key")) for item in intake.get("operator_checklist", [])}
|
||||
unknown_keys = sorted(set(evidence_keys or []) - valid_keys)
|
||||
template_results = template_result_by_key(intake)
|
||||
files = [copy_template(skill_dir, output_dir, item, template_results, overwrite) for item in items]
|
||||
manifest_path = output_dir / "submission_manifest.json"
|
||||
readme_path = output_dir / "README.md"
|
||||
written_count = sum(1 for item in files if item["status"] == "written")
|
||||
existing_count = sum(1 for item in files if item["status"] == "exists")
|
||||
skipped_count = sum(1 for item in files if item["status"] == "skipped")
|
||||
ok = not unknown_keys and skipped_count == 0
|
||||
report = {
|
||||
"schema_version": "1.0",
|
||||
"ok": ok,
|
||||
"generated_at": generated_at,
|
||||
"skill_dir": rel_path(skill_dir, ROOT),
|
||||
"output_dir": rel_path(output_dir, skill_dir),
|
||||
"summary": {
|
||||
"requested_count": len(items) + len(unknown_keys),
|
||||
"prepared_count": len(files),
|
||||
"written_count": written_count,
|
||||
"existing_count": existing_count,
|
||||
"skipped_count": skipped_count,
|
||||
"unknown_key_count": len(unknown_keys),
|
||||
"drafts_count_as_evidence": False,
|
||||
"ledger_counts_submission_as_completion": False,
|
||||
"decision": "submission-kit-ready" if ok else "fix-submission-kit",
|
||||
},
|
||||
"unknown_evidence_keys": unknown_keys,
|
||||
"files": files,
|
||||
"commands": {
|
||||
"validate_intake": f"python3 scripts/yao.py world-class-intake . --submissions-dir {rel_path(output_dir, skill_dir)}",
|
||||
"refresh_ledger": f"python3 scripts/yao.py world-class-ledger . --submissions-dir {rel_path(output_dir, skill_dir)}",
|
||||
"guard_claim": "python3 scripts/yao.py world-class-claim-guard .",
|
||||
},
|
||||
"safety": {
|
||||
"template_only_drafts": True,
|
||||
"real_evidence_required_before_template_only_false": True,
|
||||
"raw_content_allowed": False,
|
||||
"credentials_allowed": False,
|
||||
"drafts_count_as_evidence": False,
|
||||
},
|
||||
"artifacts": {
|
||||
"manifest": rel_path(manifest_path, skill_dir),
|
||||
"readme": rel_path(readme_path, skill_dir),
|
||||
},
|
||||
}
|
||||
output_dir.mkdir(parents=True, exist_ok=True)
|
||||
write_json(manifest_path, report)
|
||||
readme_path.write_text(render_readme(report), encoding="utf-8")
|
||||
return report
|
||||
|
||||
|
||||
def main() -> None:
|
||||
parser = argparse.ArgumentParser(description="Prepare editable world-class evidence submission drafts.")
|
||||
parser.add_argument("skill_dir", nargs="?", default=".")
|
||||
parser.add_argument("--output-dir", default="evidence/world_class/submission-kit")
|
||||
parser.add_argument("--evidence-key", action="append", default=[])
|
||||
parser.add_argument("--overwrite", action="store_true")
|
||||
parser.add_argument("--generated-at", default=date.today().isoformat())
|
||||
args = parser.parse_args()
|
||||
|
||||
skill_dir = Path(args.skill_dir).resolve()
|
||||
output_dir = Path(args.output_dir)
|
||||
if not output_dir.is_absolute():
|
||||
output_dir = skill_dir / output_dir
|
||||
report = build_submission_kit(
|
||||
skill_dir,
|
||||
output_dir.resolve(),
|
||||
args.generated_at,
|
||||
evidence_keys=args.evidence_key,
|
||||
overwrite=args.overwrite,
|
||||
)
|
||||
print(json.dumps(report, ensure_ascii=False, indent=2))
|
||||
if not report["ok"]:
|
||||
raise SystemExit(2)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
@@ -179,7 +179,8 @@ def template_paths(skill_dir: Path, keys: list[str]) -> dict[str, Path]:
|
||||
def submission_paths(submissions_dir: Path) -> list[Path]:
|
||||
if not submissions_dir.exists():
|
||||
return []
|
||||
return sorted(path for path in submissions_dir.glob("*.json") if path.is_file())
|
||||
ignored_names = {"submission_manifest.json"}
|
||||
return sorted(path for path in submissions_dir.glob("*.json") if path.is_file() and path.name not in ignored_names)
|
||||
|
||||
|
||||
def find_entry(entries: list[dict[str, Any]], key: str) -> dict[str, Any] | None:
|
||||
@@ -250,8 +251,8 @@ def build_operator_checklist(
|
||||
"submission_path": rel_path(submission_path, skill_dir),
|
||||
"commands": {
|
||||
"prepare_submission": (
|
||||
f"mkdir -p {shell_path(submission_path.parent, skill_dir)} && "
|
||||
f"cp {shell_path(template_path, skill_dir)} {shell_path(submission_path, skill_dir)}"
|
||||
"python3 scripts/yao.py world-class-submission-kit . "
|
||||
f"--evidence-key {shlex.quote(key)} --output-dir {shell_path(submission_path.parent, skill_dir)}"
|
||||
),
|
||||
"validate_intake": f"python3 scripts/yao.py world-class-intake . --submissions-dir {submissions_dir_arg}",
|
||||
"refresh_ledger": "python3 scripts/yao.py world-class-ledger .",
|
||||
|
||||
@@ -34,6 +34,7 @@ from yao_cli_report_commands import (
|
||||
command_world_class_evidence,
|
||||
command_world_class_intake,
|
||||
command_world_class_ledger,
|
||||
command_world_class_submission_kit,
|
||||
)
|
||||
from yao_cli_runtime import ROOT, run_script
|
||||
from yao_cli_telemetry import add_telemetry_args, maybe_record_cli_event
|
||||
|
||||
@@ -208,6 +208,17 @@ def build_parser(command_handlers: dict[str, Callable[[argparse.Namespace], int]
|
||||
world_class_intake_cmd.add_argument("--generated-at")
|
||||
world_class_intake_cmd.set_defaults(func=_handler(command_handlers, "command_world_class_intake"))
|
||||
|
||||
world_class_submission_kit_cmd = subparsers.add_parser(
|
||||
"world-class-submission-kit",
|
||||
help="Prepare editable world-class evidence submission drafts.",
|
||||
)
|
||||
world_class_submission_kit_cmd.add_argument("skill_dir", nargs="?", default=".")
|
||||
world_class_submission_kit_cmd.add_argument("--output-dir")
|
||||
world_class_submission_kit_cmd.add_argument("--evidence-key", action="append", default=[])
|
||||
world_class_submission_kit_cmd.add_argument("--overwrite", action="store_true")
|
||||
world_class_submission_kit_cmd.add_argument("--generated-at")
|
||||
world_class_submission_kit_cmd.set_defaults(func=_handler(command_handlers, "command_world_class_submission_kit"))
|
||||
|
||||
world_class_claim_guard_cmd = subparsers.add_parser(
|
||||
"world-class-claim-guard",
|
||||
help="Scan public claim surfaces for premature world-class completion claims.",
|
||||
|
||||
@@ -77,6 +77,19 @@ def command_world_class_intake(args: argparse.Namespace) -> int:
|
||||
return emit_result(run_script("render_world_class_evidence_intake.py", cmd))
|
||||
|
||||
|
||||
def command_world_class_submission_kit(args: argparse.Namespace) -> int:
|
||||
cmd = [resolved_skill_dir(args)]
|
||||
if args.output_dir:
|
||||
cmd.extend(["--output-dir", args.output_dir])
|
||||
for key in args.evidence_key:
|
||||
cmd.extend(["--evidence-key", key])
|
||||
if args.overwrite:
|
||||
cmd.append("--overwrite")
|
||||
if args.generated_at:
|
||||
cmd.extend(["--generated-at", args.generated_at])
|
||||
return emit_result(run_script("prepare_world_class_submission_kit.py", cmd))
|
||||
|
||||
|
||||
def command_world_class_claim_guard(args: argparse.Namespace) -> int:
|
||||
cmd = [resolved_skill_dir(args)]
|
||||
for surface in args.claim_surface:
|
||||
|
||||
@@ -129,6 +129,7 @@
|
||||
"scripts/lint_skill.py",
|
||||
"scripts/local_output_eval_runner.py",
|
||||
"scripts/optimize_description.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/provider_output_eval_runner.py",
|
||||
@@ -186,8 +187,7 @@
|
||||
"scripts/skill_report_model.py",
|
||||
"scripts/sync_local_install.py",
|
||||
"scripts/telemetry_native_host.py",
|
||||
"scripts/trigger_eval.py",
|
||||
"scripts/trust_check.py"
|
||||
"scripts/trigger_eval.py"
|
||||
],
|
||||
"assets": [
|
||||
"templates/basic_skill.md.j2",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"workspace_root": ".",
|
||||
"generated_at": "2026-06-14",
|
||||
"generated_at": "2026-06-13",
|
||||
"skills": [
|
||||
{
|
||||
"name": "yao-meta-skill",
|
||||
@@ -41,6 +41,7 @@
|
||||
"scripts/lint_skill.py",
|
||||
"scripts/local_output_eval_runner.py",
|
||||
"scripts/optimize_description.py",
|
||||
"scripts/prepare_world_class_submission_kit.py",
|
||||
"scripts/probe_runtime_permissions.py",
|
||||
"scripts/promotion_checker.py",
|
||||
"scripts/provider_output_eval_runner.py",
|
||||
@@ -173,8 +174,8 @@
|
||||
"report": "reports/adoption_drift_report.json",
|
||||
"risk_band": "low",
|
||||
"event_count": 1,
|
||||
"adoption_sample_count": 0,
|
||||
"adoption_rate": 0,
|
||||
"adoption_sample_count": 1,
|
||||
"adoption_rate": 100.0,
|
||||
"candidate_count": 0
|
||||
}
|
||||
},
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
"name": "incident-command-governor",
|
||||
"path": "examples/governed-incident-command/generated-skill",
|
||||
"reason": "review overdue by cadence monthly",
|
||||
"age_days": 75,
|
||||
"age_days": 74,
|
||||
"allowed_days": 31,
|
||||
"actionable": false,
|
||||
"scope": "example"
|
||||
|
||||
@@ -8,6 +8,7 @@ from pathlib import Path
|
||||
|
||||
ROOT = Path(__file__).resolve().parent.parent
|
||||
SCRIPT = ROOT / "scripts" / "render_world_class_evidence_intake.py"
|
||||
KIT_SCRIPT = ROOT / "scripts" / "prepare_world_class_submission_kit.py"
|
||||
TMP = ROOT / "tests" / "tmp_world_class_evidence_intake"
|
||||
|
||||
|
||||
@@ -29,6 +30,23 @@ def run_intake(*extra: str) -> dict:
|
||||
return json.loads(proc.stdout)
|
||||
|
||||
|
||||
def run_kit(*extra: str) -> subprocess.CompletedProcess[str]:
|
||||
return subprocess.run(
|
||||
[
|
||||
sys.executable,
|
||||
str(KIT_SCRIPT),
|
||||
str(ROOT),
|
||||
"--generated-at",
|
||||
"2026-06-14",
|
||||
*extra,
|
||||
],
|
||||
cwd=ROOT,
|
||||
capture_output=True,
|
||||
text=True,
|
||||
check=True,
|
||||
)
|
||||
|
||||
|
||||
def provider_submission(*, valid: bool) -> dict:
|
||||
return {
|
||||
"schema_version": "1.0",
|
||||
@@ -113,7 +131,10 @@ def main() -> None:
|
||||
assert checklist["provider-holdout"]["readiness"] == "awaiting-submission", checklist["provider-holdout"]
|
||||
assert checklist["provider-holdout"]["template_path"] == "evidence/world_class/templates/provider-holdout.intake.json", checklist["provider-holdout"]
|
||||
assert checklist["provider-holdout"]["submission_path"] == "evidence/world_class/submissions/provider-holdout.json", checklist["provider-holdout"]
|
||||
assert "cp evidence/world_class/templates/provider-holdout.intake.json" in checklist["provider-holdout"]["commands"]["prepare_submission"], checklist["provider-holdout"]
|
||||
assert checklist["provider-holdout"]["commands"]["prepare_submission"] == (
|
||||
"python3 scripts/yao.py world-class-submission-kit . "
|
||||
"--evidence-key provider-holdout --output-dir evidence/world_class/submissions"
|
||||
), checklist["provider-holdout"]
|
||||
assert checklist["provider-holdout"]["commands"]["validate_intake"] == "python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions", checklist["provider-holdout"]
|
||||
assert "provider-backed model run" in checklist["provider-holdout"]["must_collect"]["provenance_requirements"], checklist["provider-holdout"]
|
||||
assert "reports/output_execution_runs.json summary.model_executed_count > 0" in checklist["provider-holdout"]["must_collect"]["success_checks"], checklist["provider-holdout"]
|
||||
@@ -124,9 +145,41 @@ def main() -> None:
|
||||
assert "Operator Checklist" in markdown, markdown
|
||||
assert "operator checklist: `0` ready / `4` total" in markdown, markdown
|
||||
assert "`evidence/world_class/submissions/provider-holdout.json`" in markdown, markdown
|
||||
assert "`python3 scripts/yao.py world-class-submission-kit . --evidence-key provider-holdout --output-dir evidence/world_class/submissions`" in markdown, markdown
|
||||
assert "`python3 scripts/yao.py world-class-ledger .`" in markdown, markdown
|
||||
assert "Templates and planned work do not count as accepted evidence." in markdown, markdown
|
||||
|
||||
kit_dir = TMP / "submission_kit"
|
||||
kit_proc = run_kit("--output-dir", str(kit_dir), "--evidence-key", "provider-holdout")
|
||||
kit_payload = json.loads(kit_proc.stdout)
|
||||
assert kit_payload["ok"] is True, kit_payload
|
||||
assert kit_payload["summary"]["decision"] == "submission-kit-ready", kit_payload["summary"]
|
||||
assert kit_payload["summary"]["requested_count"] == 1, kit_payload["summary"]
|
||||
assert kit_payload["summary"]["written_count"] == 1, kit_payload["summary"]
|
||||
assert kit_payload["summary"]["drafts_count_as_evidence"] is False, kit_payload["summary"]
|
||||
assert kit_payload["safety"]["template_only_drafts"] is True, kit_payload["safety"]
|
||||
assert kit_payload["safety"]["raw_content_allowed"] is False, kit_payload["safety"]
|
||||
assert kit_payload["files"][0]["output_path"].endswith("tests/tmp_world_class_evidence_intake/submission_kit/provider-holdout.json"), kit_payload["files"]
|
||||
kit_draft = json.loads((kit_dir / "provider-holdout.json").read_text(encoding="utf-8"))
|
||||
assert kit_draft["template_only"] is True, kit_draft
|
||||
assert kit_draft["attestation"]["real_external_or_human_evidence"] is False, kit_draft
|
||||
kit_manifest = json.loads((kit_dir / "submission_manifest.json").read_text(encoding="utf-8"))
|
||||
assert kit_manifest["summary"]["ledger_counts_submission_as_completion"] is False, kit_manifest["summary"]
|
||||
kit_readme = (kit_dir / "README.md").read_text(encoding="utf-8")
|
||||
assert "Drafts are not accepted evidence." in kit_readme, kit_readme
|
||||
assert "validate intake" in kit_readme, kit_readme
|
||||
draft_intake = run_intake("--submissions-dir", str(kit_dir))
|
||||
assert draft_intake["ok"] is False, draft_intake
|
||||
assert draft_intake["summary"]["submission_count"] == 1, draft_intake["summary"]
|
||||
assert draft_intake["summary"]["invalid_submission_count"] == 1, draft_intake["summary"]
|
||||
assert draft_intake["submissions"][0]["evidence_key"] == "provider-holdout", draft_intake["submissions"]
|
||||
assert all(item["evidence_key"] != "unknown" for item in draft_intake["submissions"]), draft_intake["submissions"]
|
||||
|
||||
existing_proc = run_kit("--output-dir", str(kit_dir), "--evidence-key", "provider-holdout")
|
||||
existing_payload = json.loads(existing_proc.stdout)
|
||||
assert existing_payload["summary"]["existing_count"] == 1, existing_payload["summary"]
|
||||
assert existing_payload["files"][0]["status"] == "exists", existing_payload["files"]
|
||||
|
||||
valid_dir = TMP / "valid_submissions"
|
||||
valid_dir.mkdir()
|
||||
(valid_dir / "provider-holdout.json").write_text(
|
||||
|
||||
+22
-1
@@ -85,6 +85,7 @@ def main() -> None:
|
||||
assert "world-class-evidence" in parser_help, parser_help
|
||||
assert "world-class-ledger" in parser_help, parser_help
|
||||
assert "world-class-intake" in parser_help, parser_help
|
||||
assert "world-class-submission-kit" in parser_help, parser_help
|
||||
assert "world-class-claim-guard" in parser_help, parser_help
|
||||
assert "benchmark-reproducibility" in parser_help, parser_help
|
||||
assert "telemetry-import" in parser_help, parser_help
|
||||
@@ -270,9 +271,29 @@ def main() -> None:
|
||||
item for item in world_class_intake_result["payload"]["operator_checklist"] if item["evidence_key"] == "provider-holdout"
|
||||
)
|
||||
assert provider_checklist["readiness"] == "awaiting-submission", provider_checklist
|
||||
assert "cp evidence/world_class/templates/provider-holdout.intake.json" in provider_checklist["commands"]["prepare_submission"], provider_checklist
|
||||
assert provider_checklist["commands"]["prepare_submission"] == (
|
||||
"python3 scripts/yao.py world-class-submission-kit . "
|
||||
"--evidence-key provider-holdout --output-dir evidence/world_class/submissions"
|
||||
), provider_checklist
|
||||
assert world_class_ledger_result["payload"]["summary"]["ready_to_claim_world_class"] is False, world_class_ledger_result
|
||||
|
||||
world_class_submission_kit_result = run(
|
||||
"world-class-submission-kit",
|
||||
str(ROOT),
|
||||
"--output-dir",
|
||||
str(tmp_root / "world_class_submission_kit"),
|
||||
"--evidence-key",
|
||||
"provider-holdout",
|
||||
"--generated-at",
|
||||
"2026-06-14",
|
||||
)
|
||||
assert world_class_submission_kit_result["ok"], world_class_submission_kit_result
|
||||
assert world_class_submission_kit_result["payload"]["summary"]["decision"] == "submission-kit-ready", world_class_submission_kit_result
|
||||
assert world_class_submission_kit_result["payload"]["summary"]["written_count"] == 1, world_class_submission_kit_result
|
||||
assert world_class_submission_kit_result["payload"]["summary"]["drafts_count_as_evidence"] is False, world_class_submission_kit_result
|
||||
assert (tmp_root / "world_class_submission_kit" / "provider-holdout.json").exists(), world_class_submission_kit_result
|
||||
assert (tmp_root / "world_class_submission_kit" / "submission_manifest.json").exists(), world_class_submission_kit_result
|
||||
|
||||
world_class_claim_guard_result = run(
|
||||
"world-class-claim-guard",
|
||||
str(ROOT),
|
||||
|
||||
Reference in New Issue
Block a user