diff --git a/assets/review-studio.css b/assets/review-studio.css index 1dbb1dfc..20bdd878 100644 --- a/assets/review-studio.css +++ b/assets/review-studio.css @@ -202,6 +202,7 @@ gap: 8px; } .action-command-details, + .action-phase-details, .action-runbook-details, .action-collection-details { border-top: 1px solid var(--line); @@ -210,6 +211,7 @@ gap: 8px; } .action-command-details summary, + .action-phase-details summary, .action-runbook-details summary, .action-collection-details summary { cursor: pointer; @@ -218,6 +220,7 @@ font-weight: 500; } .action-command-details[open] summary, + .action-phase-details[open] summary, .action-runbook-details[open] summary, .action-collection-details[open] summary { margin-bottom: 8px; @@ -289,6 +292,7 @@ min-width: 0; } .action-evidence-checks, + .action-phase-list, .action-command-list, .action-repair-list, .action-runbook-list { @@ -297,6 +301,7 @@ gap: 8px; } .action-evidence-checks, + .action-phase-list, .action-repair-list, .action-command-list { padding: 0; @@ -306,6 +311,7 @@ padding-left: 20px; } .action-evidence-check, + .action-phase-row, .action-repair-row, .action-command-list li { display: grid; @@ -316,19 +322,24 @@ } .action-evidence-check.blocked { border-left: 3px solid var(--warn); padding-left: 8px; } .action-evidence-check.pass { border-left: 3px solid var(--pass); padding-left: 8px; } + .action-phase-row.blocked { border-left: 3px solid var(--warn); padding-left: 8px; } + .action-phase-row.ready { border-left: 3px solid var(--pass); padding-left: 8px; } .action-repair-row.blocked { border-left: 3px solid var(--warn); padding-left: 8px; } .action-repair-row.ready { border-left: 3px solid var(--pass); padding-left: 8px; } .action-evidence-check span, + .action-phase-row span, .action-repair-row span, .action-command-list span { color: var(--ink); font-size: 13px; } + .action-phase-row strong, .action-repair-row strong { color: var(--ink); font-size: 14px; overflow-wrap: anywhere; } + .action-phase-row em, .action-repair-row em { color: var(--muted); font-size: 12px; @@ -337,6 +348,8 @@ } .action-evidence-check code, .action-evidence-check small, + .action-phase-row code, + .action-phase-row small, .action-repair-row code, .action-repair-row small, .action-command-list code, diff --git a/registry/index.json b/registry/index.json index 78a6332d..a5a1b546 100644 --- a/registry/index.json +++ b/registry/index.json @@ -16,7 +16,7 @@ "vscode" ], "package_metadata": "registry/packages/yao-meta-skill.json", - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" } ] } diff --git a/registry/packages/yao-meta-skill.json b/registry/packages/yao-meta-skill.json index 6fdb18cb..2efe37c7 100644 --- a/registry/packages/yao-meta-skill.json +++ b/registry/packages/yao-meta-skill.json @@ -16,7 +16,7 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2" }, "compatibility": { diff --git a/reports/adaptation_proposals.json b/reports/adaptation_proposals.json index 594c30d5..6f631c9a 100644 --- a/reports/adaptation_proposals.json +++ b/reports/adaptation_proposals.json @@ -1,7 +1,7 @@ { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-17", + "generated_at": "2026-06-16T20:46:42Z", "skill_dir": ".", "source_patterns": "reports/user_patterns.json", "pattern_count": 5, diff --git a/reports/adaptation_proposals.md b/reports/adaptation_proposals.md index 974c14dc..0fdead90 100644 --- a/reports/adaptation_proposals.md +++ b/reports/adaptation_proposals.md @@ -1,6 +1,6 @@ # Adaptation Proposals -- Generated at: `2026-06-17` +- Generated at: `2026-06-16T20:46:42Z` - Pattern report: `reports/user_patterns.json` - Proposal only: `true` - Writes repository files: `false` diff --git a/reports/adoption_drift_report.json b/reports/adoption_drift_report.json index 876c5a30..ecffceed 100644 --- a/reports/adoption_drift_report.json +++ b/reports/adoption_drift_report.json @@ -1,7 +1,7 @@ { "ok": true, "schema_version": "2.0", - "generated_at": "2026-06-16T20:30:45Z", + "generated_at": "2026-06-16T20:47:11Z", "skill_dir": ".", "privacy_contract": { "storage": "local-first", diff --git a/reports/architecture_maintainability.json b/reports/architecture_maintainability.json index 36a2cf9f..db54c9f5 100644 --- a/reports/architecture_maintainability.json +++ b/reports/architecture_maintainability.json @@ -4,10 +4,10 @@ "generated_at": "2026-06-13", "skill_dir": ".", "summary": { - "python_file_count": 226, - "script_file_count": 150, + "python_file_count": 227, + "script_file_count": 151, "test_file_count": 76, - "internal_module_count": 66, + "internal_module_count": 67, "cli_script_count": 86, "command_handler_count": 68, "entrypoint_command_handler_count": 18, @@ -48,14 +48,6 @@ "early_watch": false, "recommendation": "Break broad integration assertions into focused verifier helpers when the next behavior change lands." }, - { - "path": "scripts/render_world_class_preflight.py", - "lines": 593, - "kind": "cli-script", - "severity": "pass", - "early_watch": false, - "recommendation": "Watch this file before adding new responsibilities; extract a helper module when one concern dominates." - }, { "path": "scripts/render_skill_overview.py", "lines": 588, @@ -119,6 +111,14 @@ "severity": "pass", "early_watch": false, "recommendation": "Move data loading and large section renderers into focused review_studio_* modules." + }, + { + "path": "scripts/adjudicate_output_review.py", + "lines": 566, + "kind": "cli-script", + "severity": "pass", + "early_watch": false, + "recommendation": "Watch this file before adding new responsibilities; extract a helper module when one concern dominates." } ], "watchlist": [], diff --git a/reports/architecture_maintainability.md b/reports/architecture_maintainability.md index 0012f366..651b320c 100644 --- a/reports/architecture_maintainability.md +++ b/reports/architecture_maintainability.md @@ -5,10 +5,10 @@ Generated at: `2026-06-13` ## Summary - decision: `pass` -- python files: `226` -- scripts: `150` +- python files: `227` +- scripts: `151` - tests: `76` -- internal modules: `66` +- internal modules: `67` - CLI scripts: `86` - Yao CLI command handlers: `68` - entrypoint command handlers: `18` @@ -45,7 +45,6 @@ No near-threshold files found. | `tests/verify_yao_cli.py` | `696` | `test` | `pass` | | `tests/verify_world_class_evidence_intake.py` | `690` | `test` | `pass` | | `tests/verify_output_review_adjudication.py` | `599` | `test` | `pass` | -| `scripts/render_world_class_preflight.py` | `593` | `cli-script` | `pass` | | `scripts/render_skill_overview.py` | `588` | `cli-script` | `pass` | | `scripts/build_skill_atlas.py` | `586` | `cli-script` | `pass` | | `scripts/optimize_description.py` | `585` | `cli-script` | `pass` | @@ -54,6 +53,7 @@ No near-threshold files found. | `scripts/world_class_submission_kit_rendering.py` | `576` | `internal-module` | `pass` | | `scripts/render_evidence_consistency.py` | `571` | `cli-script` | `pass` | | `scripts/render_review_studio.py` | `568` | `cli-script` | `pass` | +| `scripts/adjudicate_output_review.py` | `566` | `cli-script` | `pass` | ## Release Rule diff --git a/reports/benchmark_reproducibility.json b/reports/benchmark_reproducibility.json index 3b1da2c2..1d6d09b1 100644 --- a/reports/benchmark_reproducibility.json +++ b/reports/benchmark_reproducibility.json @@ -3,23 +3,52 @@ "ok": true, "generated_at": "2026-06-17", "skill_dir": ".", - "commit": "7512dc3309bfa95d4fc7e1188d1d4a62bd7c460b", + "commit": "ca23db4296e0216acca9ede65f9b00c3380c1180", "git_status": { "available": true, "dirty": true, - "changed_file_count": 2, + "changed_file_count": 68, "generated_dirty": true, - "generated_changed_file_count": 2, - "source_dirty": false, - "source_changed_file_count": 0, + "generated_changed_file_count": 60, + "source_dirty": true, + "source_changed_file_count": 8, "sample": [ - " M reports/context_budget.json", - " M reports/context_budget_summary.json" + " M assets/review-studio.css", + " M registry/index.json", + " M registry/packages/yao-meta-skill.json", + " M reports/adaptation_proposals.json", + " M reports/adaptation_proposals.md", + " M reports/adoption_drift_report.json", + " M reports/architecture_maintainability.json", + " M reports/architecture_maintainability.md", + " M reports/benchmark_reproducibility.json", + " M reports/benchmark_reproducibility.md", + " M reports/compiled_targets.json", + " M reports/context_budget.json" + ], + "source_sample": [ + " M assets/review-studio.css", + " M scripts/render_world_class_preflight.py", + " M scripts/review_studio_action_evidence.py", + " M scripts/world_class_preflight_layout.py", + " M tests/review_studio_world_class_assertions.py", + " M tests/verify_review_studio.py", + " M tests/verify_world_class_preflight.py", + "?? scripts/world_class_preflight_markdown.py" ], - "source_sample": [], "generated_sample": [ + " M registry/index.json", + " M registry/packages/yao-meta-skill.json", + " M reports/adaptation_proposals.json", + " M reports/adaptation_proposals.md", + " M reports/adoption_drift_report.json", + " M reports/architecture_maintainability.json", + " M reports/architecture_maintainability.md", + " M reports/benchmark_reproducibility.json", + " M reports/benchmark_reproducibility.md", + " M reports/compiled_targets.json", " M reports/context_budget.json", - " M reports/context_budget_summary.json" + " M reports/context_budget.md" ], "generated_dirty_prefixes": [ "dist/", @@ -33,12 +62,12 @@ }, "summary": { "reproducibility_ready": true, - "release_lock_ready": true, + "release_lock_ready": false, "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "3f56502035ddc8b26c0eca9e3e9d2e84013457336b16f4ce3d338b6b0cd96ef6", - "source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "evidence_bundle_sha256": "3ccbc3258857a4494e846fe9e517e1af1b1db24e5e531dfab1eea80411e791ed", + "source_contract_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2", "output_case_count": 5, "failure_disclosure_count": 3, @@ -57,18 +86,19 @@ "world_class_source_pass_count": 10, "world_class_source_blocked_count": 9, "public_claim_ready": false, - "public_claim_blocker_count": 4, + "public_claim_blocker_count": 5, "working_tree_dirty": true, - "changed_file_count": 2, - "source_tree_dirty": false, - "source_changed_file_count": 0, + "changed_file_count": 68, + "source_tree_dirty": true, + "source_changed_file_count": 8, "generated_tree_dirty": true, - "generated_changed_file_count": 2 + "generated_changed_file_count": 60 }, "public_claim": { "ready": false, "scope": "public benchmark or world-class readiness claim", "blockers": [ + "release lock is not clean or commit is unavailable", "provider-backed model holdout evidence is incomplete", "human blind-review adjudication is incomplete", "world-class evidence is not accepted yet (4 open gaps, 4 ledger pending)", @@ -77,12 +107,12 @@ "policy": "Local reproducibility can pass before public claims; public claims require provider evidence, human adjudication, clean release lock, accepted world-class evidence, and complete source checks." }, "release_lock": { - "ready": true, - "commit": "7512dc3309bfa95d4fc7e1188d1d4a62bd7c460b", + "ready": false, + "commit": "ca23db4296e0216acca9ede65f9b00c3380c1180", "status_scope": "generation-time status before this report is written", - "source_changed_file_count": 0, - "generated_changed_file_count": 2, - "reason": "only generated evidence artifacts were dirty at generation time" + "source_changed_file_count": 8, + "generated_changed_file_count": 60, + "reason": "source files were dirty at generation time" }, "evidence_bundle": { "algorithm": "sha256(path,label,exists,artifact_sha256)", @@ -90,7 +120,7 @@ "existing_count": 25, "missing_count": 0, "missing_paths": [], - "sha256": "3f56502035ddc8b26c0eca9e3e9d2e84013457336b16f4ce3d338b6b0cd96ef6" + "sha256": "3ccbc3258857a4494e846fe9e517e1af1b1db24e5e531dfab1eea80411e791ed" }, "methodology": { "path": "reports/benchmark_methodology.md", @@ -163,8 +193,8 @@ "label": "output_execution", "path": "reports/output_execution_runs.json", "exists": true, - "bytes": 7967, - "sha256": "b7cb8dfb5aeeb71b27ed31f63f260f89343f5f83e5ea307fb0268125fcdf2e87" + "bytes": 7965, + "sha256": "ecdad5b8794e10f995f17a718aba409a5a9be36e31e975ada0aa08de0cac56fa" }, { "label": "blind_review", @@ -198,22 +228,22 @@ "label": "trust_report", "path": "reports/security_trust_report.json", "exists": true, - "bytes": 135749, - "sha256": "b1d4729668d1dbf035b593e77dd2a3730e9aa4b3971014d37617ba5e0222df90" + "bytes": 136375, + "sha256": "08c2d3659e8a3a05ddc4be6da0a533970b09f6017efbe508ed311d189fe69726" }, { "label": "python_compatibility", "path": "reports/python_compatibility.json", "exists": true, - "bytes": 29715, - "sha256": "fbfb0331f8230fe0739214a837639983ed608f880af477c71f8f116df74f5a55" + "bytes": 29848, + "sha256": "4dc6cc6e37038493bdd01df3ecc043c90efefc0a4d4932525adc8f4053c1affc" }, { "label": "registry_audit", "path": "reports/registry_audit.json", "exists": true, "bytes": 3183, - "sha256": "0b9a661b8acc68e19895f05ff4b025f6a16f834a3238cb6e53871aa908e34c34" + "sha256": "c5dd375176e01291baf0bbcb1dc5c7eb65a3ce59c4ebcd655c94b91481983380" }, { "label": "package_verification", @@ -227,63 +257,63 @@ "path": "reports/install_simulation.json", "exists": true, "bytes": 8758, - "sha256": "73d46fe333bab7d78e2cb854704e6be0d40ee8eafe2798cfa7b71c2a5a3c9953" + "sha256": "f71d25a6ac3e731412f435fd722b343e616def12c013a07f87e57ea4a7551a96" }, { "label": "skill_os2_audit", "path": "reports/skill_os2_audit.json", "exists": true, "bytes": 14466, - "sha256": "4169e5453ba22f0c45e3f8b12eec08ef99ccd3562680d3721ee73c4eef9806c1" + "sha256": "432b795c6ccc1db3c2815b97220675a7c27facbe9c8334ed0158627b7f2214b7" }, { "label": "world_class_evidence_plan", "path": "reports/world_class_evidence_plan.json", "exists": true, "bytes": 22784, - "sha256": "4193115d881d4f68e61d2729633f88dd91d55d982af3db70691aafeba852f1ba" + "sha256": "d0ab417742950ff5a5f3407f068829217da5c997a6a7c5a5ee59441cb4abfb7f" }, { "label": "world_class_evidence_ledger", "path": "reports/world_class_evidence_ledger.json", "exists": true, "bytes": 26016, - "sha256": "cb66d3284045b5993d25447f011cc70737dc760765ea3a3b7ae653194f0c4ff4" + "sha256": "fc4c3e398ad0de110ae5f37e461d03712716552ce85b44e41e09f4d343a17f0b" }, { "label": "world_class_evidence_intake", "path": "reports/world_class_evidence_intake.json", "exists": true, "bytes": 20646, - "sha256": "002fbf07989a804595fdcb51b6d0c8177dc035a1dc8d084b8294a274d21fbc1b" + "sha256": "1a939bdd1f4a3ee30e05f0b286145f0f3320ba9f1935749806a581737155774a" }, { "label": "world_class_evidence_preflight", "path": "reports/world_class_evidence_preflight.json", "exists": true, - "bytes": 66981, - "sha256": "758807fa5749e0dd46f46d311abfad8af7dd70663e8876569b1a4b8414b42ace" + "bytes": 97462, + "sha256": "d6c13c020987c1b395d8e78cc409fec0784f6746ff77f0ef148abf105b9d6045" }, { "label": "world_class_submission_review", "path": "reports/world_class_submission_review.json", "exists": true, "bytes": 17299, - "sha256": "f5b1e0e44aeb6e1999182d40fca421ab0a66b91154efc7b518e9ed6f6ac20dd2" + "sha256": "b256c40e75283556fc2ab1a0ff3a19834e82d54d4c7a3e7464806c01aab69db7" }, { "label": "world_class_operator_runbook", "path": "reports/world_class_operator_runbook.json", "exists": true, "bytes": 28871, - "sha256": "8da2e2cde3adecec955f7745a4b761edc5af871d1720409cbd4f3b4b4482510e" + "sha256": "3bf99aca0798e86e13a5364aaf8462f23cdb472770671f4bef41ac50abf65c32" }, { "label": "world_class_operator_runbook_markdown", "path": "reports/world_class_operator_runbook.md", "exists": true, "bytes": 17521, - "sha256": "bfac92bc14f3080b9d723f32a4848aa3cfc10d4c3ee2e3844b65153f34c87c0a" + "sha256": "69b7ba66e5e2710438d168e2e9e9c5a6187c9f8dadc6a1e7a0f60e4dc222d679" }, { "label": "world_class_operator_runbook_html", @@ -297,7 +327,7 @@ "path": "reports/world_class_claim_guard.json", "exists": true, "bytes": 18596, - "sha256": "c846ffc8565a40c270e711a58e968b005afd75be6df1a442b020deebe850386f" + "sha256": "abe7f7d60c0025e140373fadaefbed4063f285c140c74b9c7cfb464e354bb526" } ], "missing_artifacts": [], diff --git a/reports/benchmark_reproducibility.md b/reports/benchmark_reproducibility.md index e8a951b9..16dd5576 100644 --- a/reports/benchmark_reproducibility.md +++ b/reports/benchmark_reproducibility.md @@ -1,20 +1,20 @@ # Benchmark Reproducibility Generated at: `2026-06-17` -Commit: `7512dc3309bfa95d4fc7e1188d1d4a62bd7c460b` +Commit: `ca23db4296e0216acca9ede65f9b00c3380c1180` Working tree dirty at generation: `true` -Source tree dirty at generation: `false` +Source tree dirty at generation: `true` Generated evidence dirty at generation: `true` -Evidence bundle SHA256: `3f56502035ddc8b26c0eca9e3e9d2e84013457336b16f4ce3d338b6b0cd96ef6` +Evidence bundle SHA256: `3ccbc3258857a4494e846fe9e517e1af1b1db24e5e531dfab1eea80411e791ed` ## Summary - reproducibility ready: `true` -- release lock ready: `true` +- release lock ready: `false` - methodology complete: `true` - required artifacts: `25` - missing artifacts: `0` -- source contract sha256: `7fa19df8aeba` +- source contract sha256: `453ca3f4c546` - archive sha256: `7db44f059844` - output cases: `5` - disclosed failure cases: `3` @@ -24,10 +24,10 @@ Evidence bundle SHA256: `3f56502035ddc8b26c0eca9e3e9d2e84013457336b16f4ce3d338b6 - world-class ready: `false` - world-class source checks: `10` pass / `19` total; `9` blocked - public claim ready: `false` -- public claim blockers: `4` -- changed files at generation: `2` -- source changed files at generation: `0` -- generated changed files at generation: `2` +- public claim blockers: `5` +- changed files at generation: `68` +- source changed files at generation: `8` +- generated changed files at generation: `60` This report proves local benchmark reproducibility only. It keeps external provider and human-review gaps visible instead of counting them as complete. The git commit and dirty samples are generation-time context; the evidence bundle SHA is the durable anchor for the artifacts listed below. @@ -39,6 +39,7 @@ This report proves local benchmark reproducibility only. It keeps external provi | Blocker | | --- | +| release lock is not clean or commit is unavailable | | provider-backed model holdout evidence is incomplete | | human blind-review adjudication is incomplete | | world-class evidence is not accepted yet (4 open gaps, 4 ledger pending) | @@ -46,15 +47,15 @@ This report proves local benchmark reproducibility only. It keeps external provi ## Release Lock -- ready: `true` -- reason: only generated evidence artifacts were dirty at generation time +- ready: `false` +- reason: source files were dirty at generation time - status scope: generation-time status before this report is written ## Evidence Bundle - algorithm: `sha256(path,label,exists,artifact_sha256)` - artifacts: `25` / `25` -- sha256: `3f56502035ddc8b26c0eca9e3e9d2e84013457336b16f4ce3d338b6b0cd96ef6` +- sha256: `3ccbc3258857a4494e846fe9e517e1af1b1db24e5e531dfab1eea80411e791ed` ## Methodology Sections @@ -76,26 +77,26 @@ This report proves local benchmark reproducibility only. It keeps external provi | output_cases | `evals/output/cases.jsonl` | present | `a6ae96857116` | | output_schema | `evals/output/schema.json` | present | `8ee340c95064` | | output_scorecard | `reports/output_quality_scorecard.json` | present | `0806258a8e08` | -| output_execution | `reports/output_execution_runs.json` | present | `b7cb8dfb5aee` | +| output_execution | `reports/output_execution_runs.json` | present | `ecdad5b8794e` | | blind_review | `reports/output_blind_review_pack.json` | present | `bbe2db8ec277` | | review_adjudication | `reports/output_review_adjudication.json` | present | `91fd88dd9b0f` | | trigger_scorecard | `reports/route_scorecard.json` | present | `c164e83e36d0` | | runtime_conformance | `reports/conformance_matrix.json` | present | `97f9ba949c23` | -| trust_report | `reports/security_trust_report.json` | present | `b1d4729668d1` | -| python_compatibility | `reports/python_compatibility.json` | present | `fbfb0331f823` | -| registry_audit | `reports/registry_audit.json` | present | `0b9a661b8acc` | +| trust_report | `reports/security_trust_report.json` | present | `08c2d3659e8a` | +| python_compatibility | `reports/python_compatibility.json` | present | `4dc6cc6e3703` | +| registry_audit | `reports/registry_audit.json` | present | `c5dd375176e0` | | package_verification | `reports/package_verification.json` | present | `7aa6c25e8154` | -| install_simulation | `reports/install_simulation.json` | present | `73d46fe333ba` | -| skill_os2_audit | `reports/skill_os2_audit.json` | present | `4169e5453ba2` | -| world_class_evidence_plan | `reports/world_class_evidence_plan.json` | present | `4193115d881d` | -| world_class_evidence_ledger | `reports/world_class_evidence_ledger.json` | present | `cb66d3284045` | -| world_class_evidence_intake | `reports/world_class_evidence_intake.json` | present | `002fbf07989a` | -| world_class_evidence_preflight | `reports/world_class_evidence_preflight.json` | present | `758807fa5749` | -| world_class_submission_review | `reports/world_class_submission_review.json` | present | `f5b1e0e44aeb` | -| world_class_operator_runbook | `reports/world_class_operator_runbook.json` | present | `8da2e2cde3ad` | -| world_class_operator_runbook_markdown | `reports/world_class_operator_runbook.md` | present | `bfac92bc14f3` | +| install_simulation | `reports/install_simulation.json` | present | `f71d25a6ac3e` | +| skill_os2_audit | `reports/skill_os2_audit.json` | present | `432b795c6ccc` | +| world_class_evidence_plan | `reports/world_class_evidence_plan.json` | present | `d0ab41774295` | +| world_class_evidence_ledger | `reports/world_class_evidence_ledger.json` | present | `fc4c3e398ad0` | +| world_class_evidence_intake | `reports/world_class_evidence_intake.json` | present | `1a939bdd1f4a` | +| world_class_evidence_preflight | `reports/world_class_evidence_preflight.json` | present | `d6c13c020987` | +| world_class_submission_review | `reports/world_class_submission_review.json` | present | `b256c40e7528` | +| world_class_operator_runbook | `reports/world_class_operator_runbook.json` | present | `3bf99aca0798` | +| world_class_operator_runbook_markdown | `reports/world_class_operator_runbook.md` | present | `69b7ba66e5e2` | | world_class_operator_runbook_html | `reports/world_class_operator_runbook.html` | present | `46b435f98d8a` | -| world_class_claim_guard | `reports/world_class_claim_guard.json` | present | `c846ffc8565a` | +| world_class_claim_guard | `reports/world_class_claim_guard.json` | present | `abe7f7d60c00` | ## Reproduction Commands diff --git a/reports/compiled_targets.json b/reports/compiled_targets.json index d907f3b4..13db711a 100644 --- a/reports/compiled_targets.json +++ b/reports/compiled_targets.json @@ -153,6 +153,7 @@ "scripts/adaptation_report_contracts.py", "scripts/adjudicate_output_review.py", "scripts/apply_adaptation.py", + "scripts/benchmark_release_lock.py", "scripts/build_confusion_matrix.py", "scripts/build_skill_atlas.py", "scripts/build_skill_atlas_layout.py", @@ -279,8 +280,11 @@ "scripts/world_class_human_evidence.py", "scripts/world_class_native_permission_evidence.py", "scripts/world_class_native_telemetry_evidence.py", + "scripts/world_class_phase_queue.py", "scripts/world_class_preflight_layout.py", + "scripts/world_class_preflight_markdown.py", "scripts/world_class_provider_evidence.py", + "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", "scripts/world_class_submission_kit_rendering.py", "scripts/world_class_submission_matrix.py", @@ -352,7 +356,7 @@ ], "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 } @@ -625,7 +629,7 @@ "strategy": "Ship the neutral source tree and expose OpenAI-facing interface metadata as a generated companion file.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -636,7 +640,7 @@ }, "scripts": { "strategy": "Keep scripts as local package resources; expose help-smoke and permission metadata for reviewer approval before execution.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -881,7 +885,7 @@ "strategy": "Ship the neutral source tree and expose OpenAI-facing interface metadata as a generated companion file.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -892,7 +896,7 @@ }, "scripts": { "strategy": "Keep scripts as local package resources; expose help-smoke and permission metadata for reviewer approval before execution.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -1102,6 +1106,7 @@ "scripts/adaptation_report_contracts.py", "scripts/adjudicate_output_review.py", "scripts/apply_adaptation.py", + "scripts/benchmark_release_lock.py", "scripts/build_confusion_matrix.py", "scripts/build_skill_atlas.py", "scripts/build_skill_atlas_layout.py", @@ -1228,8 +1233,11 @@ "scripts/world_class_human_evidence.py", "scripts/world_class_native_permission_evidence.py", "scripts/world_class_native_telemetry_evidence.py", + "scripts/world_class_phase_queue.py", "scripts/world_class_preflight_layout.py", + "scripts/world_class_preflight_markdown.py", "scripts/world_class_provider_evidence.py", + "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", "scripts/world_class_submission_kit_rendering.py", "scripts/world_class_submission_matrix.py", @@ -1301,7 +1309,7 @@ ], "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 } @@ -1574,7 +1582,7 @@ "strategy": "Preserve the source tree directly; write target notes in targets/claude/README.md.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -1585,7 +1593,7 @@ }, "scripts": { "strategy": "Scripts remain local package resources and must be reviewed through trust and permission reports before use.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -1830,7 +1838,7 @@ "strategy": "Preserve the source tree directly; write target notes in targets/claude/README.md.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -1841,7 +1849,7 @@ }, "scripts": { "strategy": "Scripts remain local package resources and must be reviewed through trust and permission reports before use.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -2051,6 +2059,7 @@ "scripts/adaptation_report_contracts.py", "scripts/adjudicate_output_review.py", "scripts/apply_adaptation.py", + "scripts/benchmark_release_lock.py", "scripts/build_confusion_matrix.py", "scripts/build_skill_atlas.py", "scripts/build_skill_atlas_layout.py", @@ -2177,8 +2186,11 @@ "scripts/world_class_human_evidence.py", "scripts/world_class_native_permission_evidence.py", "scripts/world_class_native_telemetry_evidence.py", + "scripts/world_class_phase_queue.py", "scripts/world_class_preflight_layout.py", + "scripts/world_class_preflight_markdown.py", "scripts/world_class_provider_evidence.py", + "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", "scripts/world_class_submission_kit_rendering.py", "scripts/world_class_submission_matrix.py", @@ -2250,7 +2262,7 @@ ], "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 } @@ -2523,7 +2535,7 @@ "strategy": "Preserve references, scripts, assets, evals, reports, and adapter metadata as relative package resources.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -2533,7 +2545,7 @@ }, "scripts": { "strategy": "Expose script and permission metadata for downstream clients or installers to enforce.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -2772,7 +2784,7 @@ "strategy": "Preserve references, scripts, assets, evals, reports, and adapter metadata as relative package resources.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -2782,7 +2794,7 @@ }, "scripts": { "strategy": "Expose script and permission metadata for downstream clients or installers to enforce.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -2984,6 +2996,7 @@ "scripts/adaptation_report_contracts.py", "scripts/adjudicate_output_review.py", "scripts/apply_adaptation.py", + "scripts/benchmark_release_lock.py", "scripts/build_confusion_matrix.py", "scripts/build_skill_atlas.py", "scripts/build_skill_atlas_layout.py", @@ -3110,8 +3123,11 @@ "scripts/world_class_human_evidence.py", "scripts/world_class_native_permission_evidence.py", "scripts/world_class_native_telemetry_evidence.py", + "scripts/world_class_phase_queue.py", "scripts/world_class_preflight_layout.py", + "scripts/world_class_preflight_markdown.py", "scripts/world_class_provider_evidence.py", + "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", "scripts/world_class_submission_kit_rendering.py", "scripts/world_class_submission_matrix.py", @@ -3183,7 +3199,7 @@ ], "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 } @@ -3456,7 +3472,7 @@ "strategy": "Keep optional directories as relative resources next to SKILL.md.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -3467,7 +3483,7 @@ }, "scripts": { "strategy": "Scripts remain local optional resources and should advertise --help when executable.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -3705,7 +3721,7 @@ "strategy": "Keep optional directories as relative resources next to SKILL.md.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -3716,7 +3732,7 @@ }, "scripts": { "strategy": "Scripts remain local optional resources and should advertise --help when executable.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -3917,6 +3933,7 @@ "scripts/adaptation_report_contracts.py", "scripts/adjudicate_output_review.py", "scripts/apply_adaptation.py", + "scripts/benchmark_release_lock.py", "scripts/build_confusion_matrix.py", "scripts/build_skill_atlas.py", "scripts/build_skill_atlas_layout.py", @@ -4043,8 +4060,11 @@ "scripts/world_class_human_evidence.py", "scripts/world_class_native_permission_evidence.py", "scripts/world_class_native_telemetry_evidence.py", + "scripts/world_class_phase_queue.py", "scripts/world_class_preflight_layout.py", + "scripts/world_class_preflight_markdown.py", "scripts/world_class_provider_evidence.py", + "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", "scripts/world_class_submission_kit_rendering.py", "scripts/world_class_submission_matrix.py", @@ -4116,7 +4136,7 @@ ], "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 } @@ -4389,7 +4409,7 @@ "strategy": "Install as project or user scoped skill source, preserving relative references and scripts.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -4400,7 +4420,7 @@ }, "scripts": { "strategy": "Scripts require workspace trust and operator/client approval outside this compiler.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -4642,7 +4662,7 @@ "strategy": "Install as project or user scoped skill source, preserving relative references and scripts.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -4653,7 +4673,7 @@ }, "scripts": { "strategy": "Scripts require workspace trust and operator/client approval outside this compiler.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { diff --git a/reports/context_budget.json b/reports/context_budget.json index ed441444..09f74e6b 100644 --- a/reports/context_budget.json +++ b/reports/context_budget.json @@ -6,16 +6,16 @@ "context_budget_tier": "production", "context_budget_limit": 1000, "skill_body_tokens": 797, - "other_text_tokens": 1115184, + "other_text_tokens": 1118755, "estimated_initial_load_tokens": 990, - "estimated_total_text_tokens": 1115981, - "deferred_resource_tokens": 509352, + "estimated_total_text_tokens": 1119552, + "deferred_resource_tokens": 511351, "deferred_resource_warn_threshold": 120000, "deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 448172, - "file_count": 150 + "estimated_tokens": 450048, + "file_count": 151 }, { "path": "references", @@ -29,15 +29,15 @@ }, { "path": "assets", - "estimated_tokens": 11053, + "estimated_tokens": 11176, "file_count": 4 } ], "large_deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 448172, - "file_count": 150 + "estimated_tokens": 450048, + "file_count": 151 } ], "deferred_resource_governance": { @@ -59,14 +59,14 @@ ], "missing": [], "path": "scripts", - "estimated_tokens": 448172, - "file_count": 150, + "estimated_tokens": 450048, + "file_count": 151, "rationale": "Script resources are deterministic deferred tools, not initial-load prompt context." } ], "summary": "Large deferred resources are indexed and backed by evidence." }, - "relevant_file_count": 706, + "relevant_file_count": 708, "unused_resource_dirs": [], "quality_signal_points": 130, "quality_density": 131.3 diff --git a/reports/context_budget.md b/reports/context_budget.md index 685ab82e..702b4753 100644 --- a/reports/context_budget.md +++ b/reports/context_budget.md @@ -2,7 +2,7 @@ | Target | Path | Tier | Limit | Initial | SKILL | Deferred | Resource Governance | Large Deferred Dirs | Quality Density | Unused Dirs | Status | | --- | --- | --- | ---: | ---: | ---: | ---: | --- | --- | ---: | --- | --- | -| root | `.` | `production` | 1000 | 990 | 797 | 509352 | `governed` | scripts:448172 | 131.3 | - | ok | +| root | `.` | `production` | 1000 | 990 | 797 | 511351 | `governed` | scripts:450048 | 131.3 | - | ok | | complex-release-orchestrator | `examples/complex-release-orchestrator/generated-skill` | `production` | 1000 | 790 | 718 | 1657 | `not-required` | - | 164.6 | - | ok | | governed-incident-command | `examples/governed-incident-command/generated-skill` | `production` | 1000 | 760 | 658 | 1030 | `not-required` | - | 171.1 | - | ok | diff --git a/reports/context_budget_summary.json b/reports/context_budget_summary.json index 0461103f..14b3acc6 100644 --- a/reports/context_budget_summary.json +++ b/reports/context_budget_summary.json @@ -1,5 +1,5 @@ { - "generated_at": "2026-06-17", + "generated_at": "2026-03-31", "targets": [ { "label": "root", @@ -8,12 +8,12 @@ "budget_limit": 1000, "initial_tokens": 990, "skill_body_tokens": 797, - "deferred_resource_tokens": 509352, + "deferred_resource_tokens": 511351, "large_deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 448172, - "file_count": 150 + "estimated_tokens": 450048, + "file_count": 151 } ], "deferred_resource_governance": { @@ -35,8 +35,8 @@ ], "missing": [], "path": "scripts", - "estimated_tokens": 448172, - "file_count": 150, + "estimated_tokens": 450048, + "file_count": 151, "rationale": "Script resources are deterministic deferred tools, not initial-load prompt context." } ], diff --git a/reports/evidence_consistency.json b/reports/evidence_consistency.json index ad14b4d4..9e740a35 100644 --- a/reports/evidence_consistency.json +++ b/reports/evidence_consistency.json @@ -189,12 +189,12 @@ "status": "pass", "expected": { "status": "pass", - "detail": "initial load 990/1000; deferred 509352/120000; top deferred scripts 448172; resource governance governed; quality density 131.3", + "detail": "initial load 990/1000; deferred 511351/120000; top deferred scripts 450048; resource governance governed; quality density 131.3", "evidence": "reports/context_budget.json" }, "actual": { "status": "pass", - "detail": "initial load 990/1000; deferred 509352/120000; top deferred scripts 448172; resource governance governed; quality density 131.3", + "detail": "initial load 990/1000; deferred 511351/120000; top deferred scripts 450048; resource governance governed; quality density 131.3", "evidence": "reports/context_budget.json" }, "paths": [ @@ -207,8 +207,8 @@ "key": "benchmark-release-lock-self-consistency", "label": "Benchmark release lock matches source dirty state", "status": "pass", - "expected": true, - "actual": true, + "expected": false, + "actual": false, "paths": [ "reports/benchmark_reproducibility.json" ], @@ -222,7 +222,7 @@ "actual": { "available": true, "clean": false, - "changed_file_count": 13 + "changed_file_count": 72 }, "paths": [ "reports/benchmark_reproducibility.json" @@ -263,8 +263,8 @@ "key": "overview-benchmark-commit", "label": "overview embeds the benchmark commit", "status": "pass", - "expected": "7512dc3309bfa95d4fc7e1188d1d4a62bd7c460b", - "actual": "7512dc3309bfa95d4fc7e1188d1d4a62bd7c460b", + "expected": "ca23db4296e0216acca9ede65f9b00c3380c1180", + "actual": "ca23db4296e0216acca9ede65f9b00c3380c1180", "paths": [ "reports/benchmark_reproducibility.json", "reports/skill-overview.json" @@ -276,30 +276,30 @@ "label": "overview embeds benchmark summary fields", "status": "pass", "expected": { - "release_lock_ready": true, + "release_lock_ready": false, "required_artifact_count": 25, "missing_artifact_count": 0, - "source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "source_contract_sha256": "84cd24d70b837e28534113083244955a04059041df2cfc5235cf2bd4922ad27a", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2", "world_class_ledger_pending_count": 4, "world_class_source_check_count": 19, - "world_class_source_pass_count": 10, - "world_class_source_blocked_count": 9, + "world_class_source_pass_count": 9, + "world_class_source_blocked_count": 10, "public_claim_ready": false, - "public_claim_blocker_count": 4 + "public_claim_blocker_count": 5 }, "actual": { - "release_lock_ready": true, + "release_lock_ready": false, "required_artifact_count": 25, "missing_artifact_count": 0, - "source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "source_contract_sha256": "84cd24d70b837e28534113083244955a04059041df2cfc5235cf2bd4922ad27a", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2", "world_class_ledger_pending_count": 4, "world_class_source_check_count": 19, - "world_class_source_pass_count": 10, - "world_class_source_blocked_count": 9, + "world_class_source_pass_count": 9, + "world_class_source_blocked_count": 10, "public_claim_ready": false, - "public_claim_blocker_count": 4 + "public_claim_blocker_count": 5 }, "paths": [ "reports/benchmark_reproducibility.json", @@ -313,13 +313,13 @@ "status": "pass", "expected": { "event_count": 1, - "adoption_sample_count": 1, - "activation_count": 1, - "accepted_count": 1, - "adoption_rate": 100.0, + "adoption_sample_count": 0, + "activation_count": 0, + "accepted_count": 0, + "adoption_rate": 0, "risk_band": "low", "event_types": { - "skill_activation": 1 + "review_event": 1 }, "source_types": { "manual": 1 @@ -327,13 +327,13 @@ }, "actual": { "event_count": 1, - "adoption_sample_count": 1, - "activation_count": 1, - "accepted_count": 1, - "adoption_rate": 100.0, + "adoption_sample_count": 0, + "activation_count": 0, + "accepted_count": 0, + "adoption_rate": 0, "risk_band": "low", "event_types": { - "skill_activation": 1 + "review_event": 1 }, "source_types": { "manual": 1 @@ -356,8 +356,8 @@ "human_pending_count": 1, "external_pending_count": 3, "source_check_count": 19, - "source_pass_count": 10, - "source_blocked_count": 9, + "source_pass_count": 9, + "source_blocked_count": 10, "ready_to_claim_world_class": false, "decision": "evidence-pending" }, @@ -368,8 +368,8 @@ "human_pending_count": 1, "external_pending_count": 3, "source_check_count": 19, - "source_pass_count": 10, - "source_blocked_count": 9, + "source_pass_count": 9, + "source_blocked_count": 10, "ready_to_claim_world_class": false, "decision": "evidence-pending" }, @@ -389,7 +389,7 @@ "pending_count": 4, "accepted_count": 0, "source_check_count": 19, - "source_pass_count": 10 + "source_pass_count": 9 }, "actual": { "ready": false, @@ -397,7 +397,7 @@ "pending_count": 4, "accepted_count": 0, "source_check_count": 19, - "source_pass_count": 10 + "source_pass_count": 9 }, "paths": [ "reports/world_class_evidence_ledger.json", @@ -409,8 +409,8 @@ "key": "interpretation-benchmark-commit", "label": "interpretation embeds the benchmark commit", "status": "pass", - "expected": "7512dc3309bfa95d4fc7e1188d1d4a62bd7c460b", - "actual": "7512dc3309bfa95d4fc7e1188d1d4a62bd7c460b", + "expected": "ca23db4296e0216acca9ede65f9b00c3380c1180", + "actual": "ca23db4296e0216acca9ede65f9b00c3380c1180", "paths": [ "reports/benchmark_reproducibility.json", "reports/skill-interpretation.json" @@ -422,30 +422,30 @@ "label": "interpretation embeds benchmark summary fields", "status": "pass", "expected": { - "release_lock_ready": true, + "release_lock_ready": false, "required_artifact_count": 25, "missing_artifact_count": 0, - "source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "source_contract_sha256": "84cd24d70b837e28534113083244955a04059041df2cfc5235cf2bd4922ad27a", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2", "world_class_ledger_pending_count": 4, "world_class_source_check_count": 19, - "world_class_source_pass_count": 10, - "world_class_source_blocked_count": 9, + "world_class_source_pass_count": 9, + "world_class_source_blocked_count": 10, "public_claim_ready": false, - "public_claim_blocker_count": 4 + "public_claim_blocker_count": 5 }, "actual": { - "release_lock_ready": true, + "release_lock_ready": false, "required_artifact_count": 25, "missing_artifact_count": 0, - "source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "source_contract_sha256": "84cd24d70b837e28534113083244955a04059041df2cfc5235cf2bd4922ad27a", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2", "world_class_ledger_pending_count": 4, "world_class_source_check_count": 19, - "world_class_source_pass_count": 10, - "world_class_source_blocked_count": 9, + "world_class_source_pass_count": 9, + "world_class_source_blocked_count": 10, "public_claim_ready": false, - "public_claim_blocker_count": 4 + "public_claim_blocker_count": 5 }, "paths": [ "reports/benchmark_reproducibility.json", @@ -459,13 +459,13 @@ "status": "pass", "expected": { "event_count": 1, - "adoption_sample_count": 1, - "activation_count": 1, - "accepted_count": 1, - "adoption_rate": 100.0, + "adoption_sample_count": 0, + "activation_count": 0, + "accepted_count": 0, + "adoption_rate": 0, "risk_band": "low", "event_types": { - "skill_activation": 1 + "review_event": 1 }, "source_types": { "manual": 1 @@ -473,13 +473,13 @@ }, "actual": { "event_count": 1, - "adoption_sample_count": 1, - "activation_count": 1, - "accepted_count": 1, - "adoption_rate": 100.0, + "adoption_sample_count": 0, + "activation_count": 0, + "accepted_count": 0, + "adoption_rate": 0, "risk_band": "low", "event_types": { - "skill_activation": 1 + "review_event": 1 }, "source_types": { "manual": 1 @@ -502,8 +502,8 @@ "human_pending_count": 1, "external_pending_count": 3, "source_check_count": 19, - "source_pass_count": 10, - "source_blocked_count": 9, + "source_pass_count": 9, + "source_blocked_count": 10, "ready_to_claim_world_class": false, "decision": "evidence-pending" }, @@ -514,8 +514,8 @@ "human_pending_count": 1, "external_pending_count": 3, "source_check_count": 19, - "source_pass_count": 10, - "source_blocked_count": 9, + "source_pass_count": 9, + "source_blocked_count": 10, "ready_to_claim_world_class": false, "decision": "evidence-pending" }, @@ -535,7 +535,7 @@ "pending_count": 4, "accepted_count": 0, "source_check_count": 19, - "source_pass_count": 10 + "source_pass_count": 9 }, "actual": { "ready": false, @@ -543,7 +543,7 @@ "pending_count": 4, "accepted_count": 0, "source_check_count": 19, - "source_pass_count": 10 + "source_pass_count": 9 }, "paths": [ "reports/world_class_evidence_ledger.json", @@ -1342,7 +1342,7 @@ "external_pending_count": 3, "human_pending_count": 1, "source_check_count": 19, - "source_pass_count": 10, + "source_pass_count": 9, "conclusion_zh": "世界级证据尚未完成:4 项待补,0 项已接受。", "conclusion_en": "World-class evidence is not complete: 4 pending, 0 accepted.", "entries": [ @@ -1402,7 +1402,8 @@ "summary_zh": "真实外部客户端 metadata-only 事件仍未导入。", "summary_en": "Real external-client metadata-only events have not been imported yet.", "blocked_checks": [ - "External events" + "External events", + "Adoption sample" ] } ] @@ -1416,7 +1417,7 @@ "external_pending_count": 3, "human_pending_count": 1, "source_check_count": 19, - "source_pass_count": 10, + "source_pass_count": 9, "conclusion_zh": "世界级证据尚未完成:4 项待补,0 项已接受。", "conclusion_en": "World-class evidence is not complete: 4 pending, 0 accepted.", "entries": [ @@ -1476,7 +1477,8 @@ "summary_zh": "真实外部客户端 metadata-only 事件仍未导入。", "summary_en": "Real external-client metadata-only events have not been imported yet.", "blocked_checks": [ - "External events" + "External events", + "Adoption sample" ] } ] @@ -1527,7 +1529,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 150 + "file_count": 151 }, { "path": "evals", @@ -1542,7 +1544,7 @@ "file_count": 235 } ], - "file_count": 453, + "file_count": 454, "folder_count": 4, "distribution": [ { @@ -1567,7 +1569,7 @@ }, { "label": "scripts", - "value": 150 + "value": 151 }, { "label": "evals", @@ -1615,7 +1617,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 150 + "file_count": 151 }, { "path": "evals", @@ -1630,7 +1632,7 @@ "file_count": 235 } ], - "file_count": 453, + "file_count": 454, "folder_count": 4, "distribution": [ { @@ -1655,7 +1657,7 @@ }, { "label": "scripts", - "value": 150 + "value": 151 }, { "label": "evals", @@ -1826,15 +1828,15 @@ "expected": { "world_class_ledger_pending_count": 4, "world_class_source_check_count": 19, - "world_class_source_pass_count": 10, - "world_class_source_blocked_count": 9, + "world_class_source_pass_count": 9, + "world_class_source_blocked_count": 10, "public_claim_ready": false }, "actual": { "world_class_ledger_pending_count": 4, "world_class_source_check_count": 19, - "world_class_source_pass_count": 10, - "world_class_source_blocked_count": 9, + "world_class_source_pass_count": 9, + "world_class_source_blocked_count": 10, "public_claim_ready": false }, "paths": [ @@ -1850,8 +1852,8 @@ "expected": { "pending_count": 4, "source_check_count": 19, - "source_pass_count": 10, - "source_blocked_count": 9, + "source_pass_count": 9, + "source_blocked_count": 10, "ready_to_claim_world_class": false, "preflight_counts_as_evidence": false, "credential_value_exposed": false @@ -1859,8 +1861,8 @@ "actual": { "pending_count": 4, "source_check_count": 19, - "source_pass_count": 10, - "source_blocked_count": 9, + "source_pass_count": 9, + "source_blocked_count": 10, "ready_to_claim_world_class": false, "preflight_counts_as_evidence": false, "credential_value_exposed": false @@ -2114,8 +2116,8 @@ "human_pending_count": 1, "external_pending_count": 3, "source_check_count": 19, - "source_pass_count": 10, - "source_blocked_count": 9, + "source_pass_count": 9, + "source_blocked_count": 10, "plan_keys": [ "human-adjudication", "native-client-telemetry", @@ -2263,8 +2265,8 @@ "human_pending_count": 1, "external_pending_count": 3, "source_check_count": 19, - "source_pass_count": 10, - "source_blocked_count": 9, + "source_pass_count": 9, + "source_blocked_count": 10, "plan_keys": [ "human-adjudication", "native-client-telemetry", @@ -2419,8 +2421,8 @@ "score `91`", "`16` gates", "`3` warnings", - "`64` declared internal modules", - "`86 / 86` CLI help smoke checks passing across `150` scripts", + "`65` declared internal modules", + "`86 / 86` CLI help smoke checks passing across `151` scripts", "`689` zip entries", "archive with `689` entries", "`12` installer permission checks enforced", diff --git a/reports/install_simulation.json b/reports/install_simulation.json index f9afe3b4..c35e725d 100644 --- a/reports/install_simulation.json +++ b/reports/install_simulation.json @@ -8,7 +8,7 @@ "installed_skill_dir": "tests/tmp_review_studio/install-root/simulate-yao-meta-skill/yao-meta-skill", "summary": { "archive_present": true, - "archive_entry_count": 689, + "archive_entry_count": 690, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, diff --git a/reports/output_execution_runs.json b/reports/output_execution_runs.json index 767163cb..37f762a1 100644 --- a/reports/output_execution_runs.json +++ b/reports/output_execution_runs.json @@ -34,7 +34,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.23, + "duration_ms": 30.41, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -62,7 +62,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.04, + "duration_ms": 29.94, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -85,7 +85,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.25, + "duration_ms": 29.11, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -113,7 +113,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.22, + "duration_ms": 29.31, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -136,7 +136,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.07, + "duration_ms": 28.42, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -164,7 +164,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 25.73, + "duration_ms": 31.5, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -187,7 +187,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.03, + "duration_ms": 30.9, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -214,7 +214,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 25.68, + "duration_ms": 29.84, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -237,7 +237,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.14, + "duration_ms": 30.56, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -266,7 +266,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.21, + "duration_ms": 29.37, "provider": "local-output-eval-runner", "model": "", "usage": { diff --git a/reports/output_execution_runs.md b/reports/output_execution_runs.md index 96bc4c3c..8a4bcbed 100644 --- a/reports/output_execution_runs.md +++ b/reports/output_execution_runs.md @@ -23,16 +23,16 @@ Command runner evidence is present. This proves the eval harness executed an ext | Case | Variant | Mode | Model | Duration ms | Tokens | Score | Status | | --- | --- | --- | --- | ---: | ---: | ---: | --- | -| skill-package-contract | baseline | command | local-output-eval-runner | 26.23 | 33 | 0.0 | pass | -| skill-package-contract | with_skill | command | local-output-eval-runner | 26.04 | 73 | 100.0 | pass | -| output-eval-expectation | baseline | command | local-output-eval-runner | 26.25 | 36 | 0.0 | pass | -| output-eval-expectation | with_skill | command | local-output-eval-runner | 26.22 | 80 | 100.0 | pass | -| ir-before-packaging | baseline | command | local-output-eval-runner | 26.07 | 33 | 0.0 | pass | -| ir-before-packaging | with_skill | command | local-output-eval-runner | 25.73 | 80 | 100.0 | pass | -| near-neighbor-boundary | baseline | command | local-output-eval-runner | 26.03 | 36 | 0.0 | pass | -| near-neighbor-boundary | with_skill | command | local-output-eval-runner | 25.68 | 65 | 100.0 | pass | -| file-backed-governed-package | baseline | command | local-output-eval-runner | 26.14 | 37 | 0.0 | pass | -| file-backed-governed-package | with_skill | command | local-output-eval-runner | 26.21 | 98 | 100.0 | pass | +| skill-package-contract | baseline | command | local-output-eval-runner | 30.41 | 33 | 0.0 | pass | +| skill-package-contract | with_skill | command | local-output-eval-runner | 29.94 | 73 | 100.0 | pass | +| output-eval-expectation | baseline | command | local-output-eval-runner | 29.11 | 36 | 0.0 | pass | +| output-eval-expectation | with_skill | command | local-output-eval-runner | 29.31 | 80 | 100.0 | pass | +| ir-before-packaging | baseline | command | local-output-eval-runner | 28.42 | 33 | 0.0 | pass | +| ir-before-packaging | with_skill | command | local-output-eval-runner | 31.5 | 80 | 100.0 | pass | +| near-neighbor-boundary | baseline | command | local-output-eval-runner | 30.9 | 36 | 0.0 | pass | +| near-neighbor-boundary | with_skill | command | local-output-eval-runner | 29.84 | 65 | 100.0 | pass | +| file-backed-governed-package | baseline | command | local-output-eval-runner | 30.56 | 37 | 0.0 | pass | +| file-backed-governed-package | with_skill | command | local-output-eval-runner | 29.37 | 98 | 100.0 | pass | ## Next Fixes diff --git a/reports/python_compatibility.json b/reports/python_compatibility.json index 9de1052d..e2ddc932 100644 --- a/reports/python_compatibility.json +++ b/reports/python_compatibility.json @@ -5,7 +5,7 @@ "root": ".", "summary": { "target_python": "3.11", - "file_count": 229, + "file_count": 230, "issue_count": 0, "syntax_error_count": 0, "fstring_311_violation_count": 0, @@ -838,6 +838,12 @@ "issue_count": 0, "issues": [] }, + { + "path": "scripts/world_class_preflight_markdown.py", + "ok": true, + "issue_count": 0, + "issues": [] + }, { "path": "scripts/world_class_provider_evidence.py", "ok": true, diff --git a/reports/python_compatibility.md b/reports/python_compatibility.md index 333c75f2..2977432f 100644 --- a/reports/python_compatibility.md +++ b/reports/python_compatibility.md @@ -6,7 +6,7 @@ Generated at: `2026-06-13` - decision: `pass` - target python: `3.11` -- files scanned: `229` +- files scanned: `230` - issues: `0` - syntax errors: `0` - f-string 3.11 violations: `0` diff --git a/reports/registry_audit.json b/reports/registry_audit.json index a371143f..201eec31 100644 --- a/reports/registry_audit.json +++ b/reports/registry_audit.json @@ -21,7 +21,7 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2" }, "compatibility": { @@ -78,7 +78,7 @@ "vscode" ], "package_metadata": "registry/packages/yao-meta-skill.json", - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" } ] }, diff --git a/reports/registry_audit.md b/reports/registry_audit.md index 7ee5dc4d..b3699255 100644 --- a/reports/registry_audit.md +++ b/reports/registry_audit.md @@ -6,7 +6,7 @@ - Maturity: `governed` - Owner: `Yao Team` - License: `MIT` -- Package SHA256: `7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4` +- Package SHA256: `453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc` - Archive SHA256: `7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2` - Install simulated: `True` diff --git a/reports/review-studio.html b/reports/review-studio.html index 40c5e655..fc7f9cd6 100644 --- a/reports/review-studio.html +++ b/reports/review-studio.html @@ -209,6 +209,7 @@ gap: 8px; } .action-command-details, + .action-phase-details, .action-runbook-details, .action-collection-details { border-top: 1px solid var(--line); @@ -217,6 +218,7 @@ gap: 8px; } .action-command-details summary, + .action-phase-details summary, .action-runbook-details summary, .action-collection-details summary { cursor: pointer; @@ -225,6 +227,7 @@ font-weight: 500; } .action-command-details[open] summary, + .action-phase-details[open] summary, .action-runbook-details[open] summary, .action-collection-details[open] summary { margin-bottom: 8px; @@ -296,6 +299,7 @@ min-width: 0; } .action-evidence-checks, + .action-phase-list, .action-command-list, .action-repair-list, .action-runbook-list { @@ -304,6 +308,7 @@ gap: 8px; } .action-evidence-checks, + .action-phase-list, .action-repair-list, .action-command-list { padding: 0; @@ -313,6 +318,7 @@ padding-left: 20px; } .action-evidence-check, + .action-phase-row, .action-repair-row, .action-command-list li { display: grid; @@ -323,19 +329,24 @@ } .action-evidence-check.blocked { border-left: 3px solid var(--warn); padding-left: 8px; } .action-evidence-check.pass { border-left: 3px solid var(--pass); padding-left: 8px; } + .action-phase-row.blocked { border-left: 3px solid var(--warn); padding-left: 8px; } + .action-phase-row.ready { border-left: 3px solid var(--pass); padding-left: 8px; } .action-repair-row.blocked { border-left: 3px solid var(--warn); padding-left: 8px; } .action-repair-row.ready { border-left: 3px solid var(--pass); padding-left: 8px; } .action-evidence-check span, + .action-phase-row span, .action-repair-row span, .action-command-list span { color: var(--ink); font-size: 13px; } + .action-phase-row strong, .action-repair-row strong { color: var(--ink); font-size: 14px; overflow-wrap: anywhere; } + .action-phase-row em, .action-repair-row em { color: var(--muted); font-size: 12px; @@ -344,6 +355,8 @@ } .action-evidence-check code, .action-evidence-check small, + .action-phase-row code, + .action-phase-row small, .action-repair-row code, .action-repair-row small, .action-command-list code, @@ -759,12 +772,12 @@

核心指标

-
Skill IR2.0.0

5 targets in platform-neutral contract

Compiler5/5

target contracts compiled from Skill IR

Output Delta100.0

5 cases; 1 file-backed

Exec Runs10

command 10; model 0; recorded 0

Blind A/B5

review pairs hide baseline vs with-skill labels

Review Kit0/5

pending 5; answer key hidden

Review A/B0/5

adjudication decisions; pending 5

Public Claimblocked

4 blockers; local reproducible true

Blueprint21/21

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

Runtime5/5

target conformance pass rate

Perm Probe4/4

0 native; 4 installer-enforced

Trust0

150 scripts scanned; secrets found

Py Compat0

229 files scanned for Python 3.11

Arch Debt0

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

Atlas5

12 scanned skills; route collisions

Driftlow

1 metadata events; 0 missed triggers

Daily Ops5

proposal-review; approval 0; release lock true

Weekly Queue5

curator-review; ready 1; top score 88

Waivers0

0 gates covered; human risk decisions

Intake4/4

0 valid submissions; 0 invalid

Claim Guard0

182 public surfaces scanned

Notes0/0

0 open blocker annotations

Registry1.1.0

5 targets; MIT license

Archivepass

689 zip entries; package verification

Installpass

4 adapters; 12 permissions enforced; 0 permission failures

Upgrademinor

declared minor; 0 breaking changes

+
Skill IR2.0.0

5 targets in platform-neutral contract

Compiler5/5

target contracts compiled from Skill IR

Output Delta100.0

5 cases; 1 file-backed

Exec Runs10

command 10; model 0; recorded 0

Blind A/B5

review pairs hide baseline vs with-skill labels

Review Kit0/5

pending 5; answer key hidden

Review A/B0/5

adjudication decisions; pending 5

Public Claimblocked

5 blockers; local reproducible true

Blueprint21/21

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

Runtime5/5

target conformance pass rate

Perm Probe4/4

0 native; 4 installer-enforced

Trust0

151 scripts scanned; secrets found

Py Compat0

230 files scanned for Python 3.11

Arch Debt0

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

Atlas5

12 scanned skills; route collisions

Driftlow

1 metadata events; 0 missed triggers

Daily Ops5

proposal-review; approval 0; release lock false

Weekly Queue5

curator-review; ready 1; top score 88

Waivers0

0 gates covered; human risk decisions

Intake4/4

0 valid submissions; 0 invalid

Claim Guard0

182 public surfaces scanned

Notes0/0

0 open blocker annotations

Registry1.1.0

5 targets; MIT license

Archivepass

689 zip entries; package verification

Installpass

4 adapters; 12 permissions enforced; 0 permission failures

Upgrademinor

declared minor; 0 breaking changes

审查闸门

-
通过

意图画布

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

reports/intent-confidence.json 证据
通过

触发实验

13 trigger cases; 0 misroutes; 0 ambiguous

reports/route_scorecard.json 证据
关注

输出实验

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

reports/output_quality_scorecard.json 证据
通过

上下文

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

reports/context_budget.json 证据
通过

运行矩阵

5 / 5 targets pass

reports/conformance_matrix.json 证据
通过

信任报告

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

reports/security_trust_report.json 证据
通过

Python 兼容

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

reports/python_compatibility.json 证据
通过

架构维护

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

reports/architecture_maintainability.json 证据
通过

权限批准

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

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

权限探针

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

reports/runtime_permission_probes.json 证据
通过

组合治理

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

reports/skill_atlas.json 证据
通过

运营回路

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

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

人工批准

0 active waivers; 1 warning gates still need reviewer decision

reports/review_waivers.json 证据
关注

世界证据

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

reports/world_class_evidence_ledger.json 证据
通过

注册审计

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

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

发布路线

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

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

意图画布

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

reports/intent-confidence.json 证据
通过

触发实验

13 trigger cases; 0 misroutes; 0 ambiguous

reports/route_scorecard.json 证据
关注

输出实验

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

reports/output_quality_scorecard.json 证据
通过

上下文

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

reports/context_budget.json 证据
通过

运行矩阵

5 / 5 targets pass

reports/conformance_matrix.json 证据
通过

信任报告

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

reports/security_trust_report.json 证据
通过

Python 兼容

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

reports/python_compatibility.json 证据
通过

架构维护

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

reports/architecture_maintainability.json 证据
通过

权限批准

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

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

权限探针

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

reports/runtime_permission_probes.json 证据
通过

组合治理

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

reports/skill_atlas.json 证据
通过

运营回路

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

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

人工批准

0 active waivers; 1 warning gates still need reviewer decision

reports/review_waivers.json 证据
关注

世界证据

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

reports/world_class_evidence_ledger.json 证据
通过

注册审计

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

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

发布路线

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

@@ -779,7 +792,7 @@

修复动作

-
关注

输出实验

补足 output eval 覆盖、execution evidence、blind A/B 和 reviewer adjudication。同步补足盲审声明。

没有输出质量和人工盲评证据时,Skill 只能证明会触发,不能证明输出真的更好且经得起审查。
修复位置
evals/output/cases.jsonl + reports/output_quality_scorecard.md + reports/output_review_kit.html + reports/output_review_adjudication.md + reports/output_review_decisions.json
验证命令
python3 scripts/adjudicate_output_review.py --write-template && python3 scripts/yao.py output-review
关注

人工批准

对保留的 warning 写入 reviewer、理由、范围和到期时间,或修掉 warning。

warning 可以被接受,但必须可审计、会过期,并且不能掩盖 blocker。
修复位置
reports/review_waivers.md
验证命令
python3 scripts/render_review_waivers.py .
关注

世界证据

补齐 provider、真人盲评、原生权限执行和真实客户端遥测证据,或明确本次发布不声明 world-class 完成。

世界级结论必须来自已接受的外部/人工证据;计划、metadata fallback、待评审和本地命令都不能替代完成证据。
修复位置
reports/world_class_operator_runbook.html + reports/world_class_evidence_ledger.md + reports/world_class_evidence_intake.md + reports/world_class_submission_review.md
验证命令
python3 scripts/yao.py world-class-runbook . --submissions-dir evidence/world_class/submissions && python3 scripts/yao.py world-class-ledger . --submissions-dir evidence/world_class/submissions && python3 scripts/yao.py review-studio .

证据采集

以下条目仍需真实外部或人工证据;提交文件、校验命令和阻断检查必须同时闭环。

pending · external

Provider Holdout

model-executed 0; token-observed 0

提交
evidence/world_class/submissions/provider-holdout.json
模板
evidence/world_class/templates/provider-holdout.intake.json
阻断
2 blocked / 1 pass
修复
3 repair rows; counts as completion: false
下一步
Run provider-backed holdout cases with real credentials and commit only aggregate evidence.
阻断检查
  • Provider model runmodel_executed_count: 0 / >0Run provider-backed output-exec with real credentials.
  • Token usage observedtoken_observed_count: 0 / >0Provider execution should return non-estimated token usage.
修复清单
  • #20 · unblock-access · precheckopenai-api-keyoperator with provider credentialsRequired env precheck is missing.Set OPENAI_API_KEY in the operator shell; never commit or print the value.python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checkmodel_executed_countoperator with provider credentialsCurrent value 0 does not satisfy '>0'.Run provider-backed output-exec with real credentials.python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checktoken_observed_countoperator with provider credentialsCurrent value 0 does not satisfy '>0'.Provider execution should return non-estimated token usage.python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
操作命令
  • 准备提交python3 scripts/yao.py world-class-submission-kit . --evidence-key provider-holdout --output-dir evidence/world_class/submissions
  • 校验入口python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions
  • 审查提交python3 scripts/yao.py world-class-submission-review . --submissions-dir evidence/world_class/submissions
  • 刷新台账python3 scripts/yao.py world-class-ledger . --submissions-dir evidence/world_class/submissions
首要步骤
  1. Set OPENAI_API_KEY in the operator shell before running provider evidence; never commit or print the value.
  2. export YAO_OUTPUT_EVAL_MODEL=${YAO_OUTPUT_EVAL_MODEL:-gpt-4.1-mini}
  3. python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60
采集契约
来源要求
  • provider-backed model run
  • observed timing
  • observed token metadata
通过条件
  • reports/output_execution_runs.json summary.model_executed_count > 0
  • reports/output_execution_runs.json summary.timing_observed_count > 0
  • reports/output_execution_runs.json summary.token_observed_count > 0
  • reports/skill_os2_audit.json item provider-holdout status becomes pass
证据资产
  • reports/output_execution_runs.json
  • reports/output_execution_runs.md
  • reports/skill_os2_audit.json
  • evidence/world_class/intake.schema.json
  • evidence/world_class/templates/provider-holdout.intake.json
资产角色

source: world-class-submission-kit; counts as evidence: false; prefill counts as evidence: false

  • submission-ref1 / 1 readyartifact_refs: trueRows marked submission-ref are the aggregate paths expected in artifact_refs.
  • supporting-evidence6 / 6 readyartifact_refs: falseSupporting-evidence rows help reviewers audit the packet but do not all need to be copied into artifact_refs.
隐私边界
  • Do not commit provider credentials or environment dumps.
  • The output execution report records output hashes and aggregate run metadata, not raw provider prompts.
pending · human

Human Adjudication

0/5 decisions; pending 5

提交
evidence/world_class/submissions/human-adjudication.json
模板
evidence/world_class/templates/human-adjudication.intake.json
阻断
5 blocked / 5 pass
修复
6 repair rows; counts as completion: false
下一步
Record real A/B choices, reviewer metadata, and blind-review attestation, then regenerate adjudication.
阻断检查
  • No pending decisionspending_count: 5 / ==0Record a reviewer choice and reason for every pair.
  • Judgments completejudgment_count: 0 / ==pair_countEvery pair needs one valid human judgment.
  • Reviewer metadatareviewer_metadata_present: False / trueRecord reviewer and reviewed_at before adjudication can count.
  • Blind review attestedblind_review_attested: False / trueSet reviewer_attestation only after choices are completed before opening the answer key.
  • Human evidence readyready_for_human_evidence: False / trueComplete all reviewer decisions with metadata and rationale, plus blind-review attestation and integrity fingerprints.
修复清单
  • #20 · unblock-access · precheckhuman-reviewerhuman reviewerRequired human precheck is human-required.Assign a real reviewer identity before claiming human adjudication.python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checkblind_review_attestedhuman reviewerCurrent value False does not satisfy 'true'.Set reviewer_attestation only after choices are completed before opening the answer key.python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checkjudgment_counthuman reviewerCurrent value 0 does not satisfy '==pair_count'.Every pair needs one valid human judgment.python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checkpending_counthuman reviewerCurrent value 5 does not satisfy '==0'.Record a reviewer choice and reason for every pair.python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checkready_for_human_evidencehuman reviewerCurrent value False does not satisfy 'true'.Complete all reviewer decisions with metadata and rationale, plus blind-review attestation and integrity fingerprints.python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checkreviewer_metadata_presenthuman reviewerCurrent value False does not satisfy 'true'.Record reviewer and reviewed_at before adjudication can count.python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
操作命令
  • 准备提交python3 scripts/yao.py world-class-submission-kit . --evidence-key human-adjudication --output-dir evidence/world_class/submissions
  • 校验入口python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions
  • 审查提交python3 scripts/yao.py world-class-submission-review . --submissions-dir evidence/world_class/submissions
  • 刷新台账python3 scripts/yao.py world-class-ledger . --submissions-dir evidence/world_class/submissions
首要步骤
  1. python3 scripts/yao.py output-review-kit --write-template
  2. Open reports/output_review_kit.md and choose A or B for each pair without opening the answer key.
  3. python3 scripts/adjudicate_output_review.py --write-template
采集契约
来源要求
  • real reviewer identity
  • blind A/B decisions
  • answer key unopened until decisions exist
通过条件
  • reports/output_review_adjudication.json summary.pending_count == 0
  • reports/output_review_adjudication.json summary.judgment_count == summary.pair_count
  • reports/output_review_adjudication.json summary.invalid_decision_count == 0
  • reports/output_review_adjudication.json summary.reviewer_metadata_present is true
  • reports/output_review_adjudication.json summary.blind_review_attested is true
  • reports/output_review_adjudication.json review_integrity.blind_pack_sha256 exists and matches reports/output_review_decisions.json
  • reports/output_review_adjudication.json pairs and reviewer_checklist store prompt_sha256, not raw prompt text
  • reports/output_review_adjudication.json summary.ready_for_human_evidence is true
  • reports/skill_os2_audit.json item human-adjudication status becomes pass
证据资产
  • reports/output_blind_review_pack.md
  • reports/output_review_kit.md
  • reports/output_review_decisions.json
  • reports/output_review_adjudication.json
  • reports/output_review_adjudication.md
资产角色

source: world-class-submission-kit; counts as evidence: false; prefill counts as evidence: false

  • submission-ref2 / 2 readyartifact_refs: trueRows marked submission-ref are the aggregate paths expected in artifact_refs.
  • supporting-evidence8 / 8 readyartifact_refs: falseSupporting-evidence rows help reviewers audit the packet but do not all need to be copied into artifact_refs.
隐私边界
  • Reviewer decisions should not include raw user data or private customer detail.
  • Reviewer reasons must be rubric-based and must not include raw user data or private customer detail.
  • The decision importer rejects raw prompt, output, transcript, message, and answer-key fields.
  • The adjudication evidence stores prompt_sha256 instead of raw prompt text.
pending · external

Native Permission Enforcement

native-enforced targets 0; installer-enforced targets 4

提交
evidence/world_class/submissions/native-permission-enforcement.json
模板
evidence/world_class/templates/native-permission-enforcement.intake.json
阻断
1 blocked / 2 pass
修复
2 repair rows; counts as completion: false
下一步
Integrate a real target-client or external installer runtime guard before claiming native permission enforcement.
阻断检查
  • Native enforcementnative_enforcement_count: 0 / >0Collect real target-client or external runtime guard proof.
修复清单
  • #20 · unblock-access · prechecknative-guardtarget client or installer integratorRequired external precheck is external-required.Attach a real target-client or external installer runtime guard; metadata fallback is not enough.python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checknative_enforcement_counttarget client or installer integratorCurrent value 0 does not satisfy '>0'.Collect real target-client or external runtime guard proof.python3 scripts/yao.py runtime-permissions . --package-dir dist && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
操作命令
  • 准备提交python3 scripts/yao.py world-class-submission-kit . --evidence-key native-permission-enforcement --output-dir evidence/world_class/submissions
  • 校验入口python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions
  • 审查提交python3 scripts/yao.py world-class-submission-review . --submissions-dir evidence/world_class/submissions
  • 刷新台账python3 scripts/yao.py world-class-ledger . --submissions-dir evidence/world_class/submissions
首要步骤
  1. Implement or connect a real target client or external installer runtime guard that blocks undeclared network, file_write, or subprocess capabilities.
  2. Update the generated target adapter only when the guard is actually enforced by that target.
  3. python3 scripts/yao.py package . --platform openai --platform claude --platform generic --platform vscode --output-dir dist --zip
采集契约
来源要求
  • real target client or external installer runtime guard
  • native enforcement flag or externally accepted guard proof
  • residual risk retained for fallback targets
通过条件
  • reports/runtime_permission_probes.json summary.native_enforcement_count > 0
  • reports/runtime_permission_probes.json summary.failure_count == 0
  • reports/runtime_permission_probes.json summary.installer_enforcement_pass_count records local installer enforcement but does not replace native evidence
  • reports/skill_os2_audit.json item native-permission-enforcement status becomes pass
证据资产
  • dist/targets/*/adapter.json
  • reports/runtime_permission_probes.json
  • reports/runtime_permission_probes.md
  • reports/install_simulation.json
  • reports/install_simulation.md
资产角色

source: world-class-submission-kit; counts as evidence: false; prefill counts as evidence: false

  • submission-ref2 / 2 readyartifact_refs: trueRows marked submission-ref are the aggregate paths expected in artifact_refs.
  • supporting-evidence11 / 11 readyartifact_refs: falseSupporting-evidence rows help reviewers audit the packet but do not all need to be copied into artifact_refs.
隐私边界
  • Do not mark native_enforcement true for metadata-only fallbacks.
  • Keep residual risks visible for targets that still rely on operator enforcement.
pending · external

Native Client Telemetry

external source events 0; adoption samples 1

提交
evidence/world_class/submissions/native-client-telemetry.json
模板
evidence/world_class/templates/native-client-telemetry.intake.json
阻断
1 blocked / 2 pass
修复
2 repair rows; counts as completion: false
下一步
Install a real client against the native host and import production metadata-only events.
阻断检查
  • External eventsexternal_source_events: 0 / >0Import at least one metadata-only event from a real client.
修复清单
  • #20 · unblock-access · precheckexternal-clientBrowser/Chrome/IDE/provider client integratorRequired external precheck is external-required.Install a real Browser, Chrome, IDE, or provider client that emits metadata-only events.python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checkexternal_source_eventsBrowser/Chrome/IDE/provider client integratorCurrent value 0 does not satisfy '>0'.Import at least one metadata-only event from a real client.python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
操作命令
  • 准备提交python3 scripts/yao.py world-class-submission-kit . --evidence-key native-client-telemetry --output-dir evidence/world_class/submissions
  • 校验入口python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions
  • 审查提交python3 scripts/yao.py world-class-submission-review . --submissions-dir evidence/world_class/submissions
  • 刷新台账python3 scripts/yao.py world-class-ledger . --submissions-dir evidence/world_class/submissions
首要步骤
  1. 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>/
  2. Install the generated native messaging manifest for the real client and send at least one accepted skill_activation or skill_output event.
  3. python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl
采集契约
来源要求
  • real external client source
  • metadata-only event
  • local-first import path
通过条件
  • reports/adoption_drift_report.json summary.source_types.external > 0
  • reports/adoption_drift_report.json summary.adoption_sample_count > 0
  • reports/skill_os2_audit.json item native-client-telemetry status becomes pass
证据资产
  • reports/adoption_drift_report.json
  • reports/adoption_drift_report.md
  • reports/telemetry_hook_recipes.json
  • scripts/telemetry_native_host.py
  • evidence/world_class/intake.schema.json
资产角色

source: world-class-submission-kit; counts as evidence: false; prefill counts as evidence: false

  • submission-ref2 / 2 readyartifact_refs: trueRows marked submission-ref are the aggregate paths expected in artifact_refs.
  • supporting-evidence6 / 6 readyartifact_refs: falseSupporting-evidence rows help reviewers audit the packet but do not all need to be copied into artifact_refs.
隐私边界
  • Telemetry must remain metadata-only and local-first.
  • Do not package reports/telemetry_events.jsonl or any raw prompt, output, transcript, note, or message field.
+
关注

输出实验

补足 output eval 覆盖、execution evidence、blind A/B 和 reviewer adjudication。同步补足盲审声明。

没有输出质量和人工盲评证据时,Skill 只能证明会触发,不能证明输出真的更好且经得起审查。
修复位置
evals/output/cases.jsonl + reports/output_quality_scorecard.md + reports/output_review_kit.html + reports/output_review_adjudication.md + reports/output_review_decisions.json
验证命令
python3 scripts/adjudicate_output_review.py --write-template && python3 scripts/yao.py output-review
关注

人工批准

对保留的 warning 写入 reviewer、理由、范围和到期时间,或修掉 warning。

warning 可以被接受,但必须可审计、会过期,并且不能掩盖 blocker。
修复位置
reports/review_waivers.md
验证命令
python3 scripts/render_review_waivers.py .
关注

世界证据

补齐 provider、真人盲评、原生权限执行和真实客户端遥测证据,或明确本次发布不声明 world-class 完成。

世界级结论必须来自已接受的外部/人工证据;计划、metadata fallback、待评审和本地命令都不能替代完成证据。
修复位置
reports/world_class_operator_runbook.html + reports/world_class_evidence_ledger.md + reports/world_class_evidence_intake.md + reports/world_class_submission_review.md
验证命令
python3 scripts/yao.py world-class-runbook . --submissions-dir evidence/world_class/submissions && python3 scripts/yao.py world-class-ledger . --submissions-dir evidence/world_class/submissions && python3 scripts/yao.py review-studio .

证据采集

以下条目仍需真实外部或人工证据;提交文件、校验命令和阻断检查必须同时闭环。

pending · external

Provider Holdout

model-executed 0; token-observed 0

提交
evidence/world_class/submissions/provider-holdout.json
模板
evidence/world_class/templates/provider-holdout.intake.json
阻断
2 blocked / 1 pass
修复
3 repair rows; counts as completion: false
阶段
2 blocked phases; counts as completion: false
下一步
Run provider-backed holdout cases with real credentials and commit only aggregate evidence.
阻断检查
  • Provider model runmodel_executed_count: 0 / >0Run provider-backed output-exec with real credentials.
  • Token usage observedtoken_observed_count: 0 / >0Provider execution should return non-estimated token usage.
阶段队列
  • #20 · unblock-accessUnblock access1 / 1 blockedowners: operator with provider credentialsevidence: provider-holdoutSet OPENAI_API_KEY in the operator shell; never commit or print the value.python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-sourceCollect source2 / 2 blockedowners: operator with provider credentialsevidence: provider-holdoutRun provider-backed output-exec with real credentials.python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
修复清单
  • #20 · unblock-access · precheckopenai-api-keyoperator with provider credentialsRequired env precheck is missing.Set OPENAI_API_KEY in the operator shell; never commit or print the value.python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checkmodel_executed_countoperator with provider credentialsCurrent value 0 does not satisfy '>0'.Run provider-backed output-exec with real credentials.python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checktoken_observed_countoperator with provider credentialsCurrent value 0 does not satisfy '>0'.Provider execution should return non-estimated token usage.python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
操作命令
  • 准备提交python3 scripts/yao.py world-class-submission-kit . --evidence-key provider-holdout --output-dir evidence/world_class/submissions
  • 校验入口python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions
  • 审查提交python3 scripts/yao.py world-class-submission-review . --submissions-dir evidence/world_class/submissions
  • 刷新台账python3 scripts/yao.py world-class-ledger . --submissions-dir evidence/world_class/submissions
首要步骤
  1. Set OPENAI_API_KEY in the operator shell before running provider evidence; never commit or print the value.
  2. export YAO_OUTPUT_EVAL_MODEL=${YAO_OUTPUT_EVAL_MODEL:-gpt-4.1-mini}
  3. python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60
采集契约
来源要求
  • provider-backed model run
  • observed timing
  • observed token metadata
通过条件
  • reports/output_execution_runs.json summary.model_executed_count > 0
  • reports/output_execution_runs.json summary.timing_observed_count > 0
  • reports/output_execution_runs.json summary.token_observed_count > 0
  • reports/skill_os2_audit.json item provider-holdout status becomes pass
证据资产
  • reports/output_execution_runs.json
  • reports/output_execution_runs.md
  • reports/skill_os2_audit.json
  • evidence/world_class/intake.schema.json
  • evidence/world_class/templates/provider-holdout.intake.json
资产角色

source: world-class-submission-kit; counts as evidence: false; prefill counts as evidence: false

  • submission-ref1 / 1 readyartifact_refs: trueRows marked submission-ref are the aggregate paths expected in artifact_refs.
  • supporting-evidence6 / 6 readyartifact_refs: falseSupporting-evidence rows help reviewers audit the packet but do not all need to be copied into artifact_refs.
隐私边界
  • Do not commit provider credentials or environment dumps.
  • The output execution report records output hashes and aggregate run metadata, not raw provider prompts.
pending · human

Human Adjudication

0/5 decisions; pending 5

提交
evidence/world_class/submissions/human-adjudication.json
模板
evidence/world_class/templates/human-adjudication.intake.json
阻断
5 blocked / 5 pass
修复
6 repair rows; counts as completion: false
阶段
2 blocked phases; counts as completion: false
下一步
Record real A/B choices, reviewer metadata, and blind-review attestation, then regenerate adjudication.
阻断检查
  • No pending decisionspending_count: 5 / ==0Record a reviewer choice and reason for every pair.
  • Judgments completejudgment_count: 0 / ==pair_countEvery pair needs one valid human judgment.
  • Reviewer metadatareviewer_metadata_present: False / trueRecord reviewer and reviewed_at before adjudication can count.
  • Blind review attestedblind_review_attested: False / trueSet reviewer_attestation only after choices are completed before opening the answer key.
  • Human evidence readyready_for_human_evidence: False / trueComplete all reviewer decisions with metadata and rationale, plus blind-review attestation and integrity fingerprints.
阶段队列
  • #20 · unblock-accessUnblock access1 / 1 blockedowners: human reviewerevidence: human-adjudicationAssign a real reviewer identity before claiming human adjudication.python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-sourceCollect source5 / 5 blockedowners: human reviewerevidence: human-adjudicationSet reviewer_attestation only after choices are completed before opening the answer key.python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
修复清单
  • #20 · unblock-access · precheckhuman-reviewerhuman reviewerRequired human precheck is human-required.Assign a real reviewer identity before claiming human adjudication.python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checkblind_review_attestedhuman reviewerCurrent value False does not satisfy 'true'.Set reviewer_attestation only after choices are completed before opening the answer key.python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checkjudgment_counthuman reviewerCurrent value 0 does not satisfy '==pair_count'.Every pair needs one valid human judgment.python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checkpending_counthuman reviewerCurrent value 5 does not satisfy '==0'.Record a reviewer choice and reason for every pair.python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checkready_for_human_evidencehuman reviewerCurrent value False does not satisfy 'true'.Complete all reviewer decisions with metadata and rationale, plus blind-review attestation and integrity fingerprints.python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checkreviewer_metadata_presenthuman reviewerCurrent value False does not satisfy 'true'.Record reviewer and reviewed_at before adjudication can count.python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
操作命令
  • 准备提交python3 scripts/yao.py world-class-submission-kit . --evidence-key human-adjudication --output-dir evidence/world_class/submissions
  • 校验入口python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions
  • 审查提交python3 scripts/yao.py world-class-submission-review . --submissions-dir evidence/world_class/submissions
  • 刷新台账python3 scripts/yao.py world-class-ledger . --submissions-dir evidence/world_class/submissions
首要步骤
  1. python3 scripts/yao.py output-review-kit --write-template
  2. Open reports/output_review_kit.md and choose A or B for each pair without opening the answer key.
  3. python3 scripts/adjudicate_output_review.py --write-template
采集契约
来源要求
  • real reviewer identity
  • blind A/B decisions
  • answer key unopened until decisions exist
通过条件
  • reports/output_review_adjudication.json summary.pending_count == 0
  • reports/output_review_adjudication.json summary.judgment_count == summary.pair_count
  • reports/output_review_adjudication.json summary.invalid_decision_count == 0
  • reports/output_review_adjudication.json summary.reviewer_metadata_present is true
  • reports/output_review_adjudication.json summary.blind_review_attested is true
  • reports/output_review_adjudication.json review_integrity.blind_pack_sha256 exists and matches reports/output_review_decisions.json
  • reports/output_review_adjudication.json pairs and reviewer_checklist store prompt_sha256, not raw prompt text
  • reports/output_review_adjudication.json summary.ready_for_human_evidence is true
  • reports/skill_os2_audit.json item human-adjudication status becomes pass
证据资产
  • reports/output_blind_review_pack.md
  • reports/output_review_kit.md
  • reports/output_review_decisions.json
  • reports/output_review_adjudication.json
  • reports/output_review_adjudication.md
资产角色

source: world-class-submission-kit; counts as evidence: false; prefill counts as evidence: false

  • submission-ref2 / 2 readyartifact_refs: trueRows marked submission-ref are the aggregate paths expected in artifact_refs.
  • supporting-evidence8 / 8 readyartifact_refs: falseSupporting-evidence rows help reviewers audit the packet but do not all need to be copied into artifact_refs.
隐私边界
  • Reviewer decisions should not include raw user data or private customer detail.
  • Reviewer reasons must be rubric-based and must not include raw user data or private customer detail.
  • The decision importer rejects raw prompt, output, transcript, message, and answer-key fields.
  • The adjudication evidence stores prompt_sha256 instead of raw prompt text.
pending · external

Native Permission Enforcement

native-enforced targets 0; installer-enforced targets 4

提交
evidence/world_class/submissions/native-permission-enforcement.json
模板
evidence/world_class/templates/native-permission-enforcement.intake.json
阻断
1 blocked / 2 pass
修复
2 repair rows; counts as completion: false
阶段
2 blocked phases; counts as completion: false
下一步
Integrate a real target-client or external installer runtime guard before claiming native permission enforcement.
阻断检查
  • Native enforcementnative_enforcement_count: 0 / >0Collect real target-client or external runtime guard proof.
阶段队列
  • #20 · unblock-accessUnblock access1 / 1 blockedowners: target client or installer integratorevidence: native-permission-enforcementAttach a real target-client or external installer runtime guard; metadata fallback is not enough.python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-sourceCollect source1 / 1 blockedowners: target client or installer integratorevidence: native-permission-enforcementCollect real target-client or external runtime guard proof.python3 scripts/yao.py runtime-permissions . --package-dir dist && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
修复清单
  • #20 · unblock-access · prechecknative-guardtarget client or installer integratorRequired external precheck is external-required.Attach a real target-client or external installer runtime guard; metadata fallback is not enough.python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checknative_enforcement_counttarget client or installer integratorCurrent value 0 does not satisfy '>0'.Collect real target-client or external runtime guard proof.python3 scripts/yao.py runtime-permissions . --package-dir dist && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
操作命令
  • 准备提交python3 scripts/yao.py world-class-submission-kit . --evidence-key native-permission-enforcement --output-dir evidence/world_class/submissions
  • 校验入口python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions
  • 审查提交python3 scripts/yao.py world-class-submission-review . --submissions-dir evidence/world_class/submissions
  • 刷新台账python3 scripts/yao.py world-class-ledger . --submissions-dir evidence/world_class/submissions
首要步骤
  1. Implement or connect a real target client or external installer runtime guard that blocks undeclared network, file_write, or subprocess capabilities.
  2. Update the generated target adapter only when the guard is actually enforced by that target.
  3. python3 scripts/yao.py package . --platform openai --platform claude --platform generic --platform vscode --output-dir dist --zip
采集契约
来源要求
  • real target client or external installer runtime guard
  • native enforcement flag or externally accepted guard proof
  • residual risk retained for fallback targets
通过条件
  • reports/runtime_permission_probes.json summary.native_enforcement_count > 0
  • reports/runtime_permission_probes.json summary.failure_count == 0
  • reports/runtime_permission_probes.json summary.installer_enforcement_pass_count records local installer enforcement but does not replace native evidence
  • reports/skill_os2_audit.json item native-permission-enforcement status becomes pass
证据资产
  • dist/targets/*/adapter.json
  • reports/runtime_permission_probes.json
  • reports/runtime_permission_probes.md
  • reports/install_simulation.json
  • reports/install_simulation.md
资产角色

source: world-class-submission-kit; counts as evidence: false; prefill counts as evidence: false

  • submission-ref2 / 2 readyartifact_refs: trueRows marked submission-ref are the aggregate paths expected in artifact_refs.
  • supporting-evidence11 / 11 readyartifact_refs: falseSupporting-evidence rows help reviewers audit the packet but do not all need to be copied into artifact_refs.
隐私边界
  • Do not mark native_enforcement true for metadata-only fallbacks.
  • Keep residual risks visible for targets that still rely on operator enforcement.
pending · external

Native Client Telemetry

external source events 0; adoption samples 1

提交
evidence/world_class/submissions/native-client-telemetry.json
模板
evidence/world_class/templates/native-client-telemetry.intake.json
阻断
1 blocked / 2 pass
修复
2 repair rows; counts as completion: false
阶段
2 blocked phases; counts as completion: false
下一步
Install a real client against the native host and import production metadata-only events.
阻断检查
  • External eventsexternal_source_events: 0 / >0Import at least one metadata-only event from a real client.
阶段队列
  • #20 · unblock-accessUnblock access1 / 1 blockedowners: Browser/Chrome/IDE/provider client integratorevidence: native-client-telemetryInstall a real Browser, Chrome, IDE, or provider client that emits metadata-only events.python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-sourceCollect source1 / 1 blockedowners: Browser/Chrome/IDE/provider client integratorevidence: native-client-telemetryImport at least one metadata-only event from a real client.python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
修复清单
  • #20 · unblock-access · precheckexternal-clientBrowser/Chrome/IDE/provider client integratorRequired external precheck is external-required.Install a real Browser, Chrome, IDE, or provider client that emits metadata-only events.python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
  • #40 · collect-source · source-checkexternal_source_eventsBrowser/Chrome/IDE/provider client integratorCurrent value 0 does not satisfy '>0'.Import at least one metadata-only event from a real client.python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
操作命令
  • 准备提交python3 scripts/yao.py world-class-submission-kit . --evidence-key native-client-telemetry --output-dir evidence/world_class/submissions
  • 校验入口python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions
  • 审查提交python3 scripts/yao.py world-class-submission-review . --submissions-dir evidence/world_class/submissions
  • 刷新台账python3 scripts/yao.py world-class-ledger . --submissions-dir evidence/world_class/submissions
首要步骤
  1. 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>/
  2. Install the generated native messaging manifest for the real client and send at least one accepted skill_activation or skill_output event.
  3. python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl
采集契约
来源要求
  • real external client source
  • metadata-only event
  • local-first import path
通过条件
  • reports/adoption_drift_report.json summary.source_types.external > 0
  • reports/adoption_drift_report.json summary.adoption_sample_count > 0
  • reports/skill_os2_audit.json item native-client-telemetry status becomes pass
证据资产
  • reports/adoption_drift_report.json
  • reports/adoption_drift_report.md
  • reports/telemetry_hook_recipes.json
  • scripts/telemetry_native_host.py
  • evidence/world_class/intake.schema.json
资产角色

source: world-class-submission-kit; counts as evidence: false; prefill counts as evidence: false

  • submission-ref2 / 2 readyartifact_refs: trueRows marked submission-ref are the aggregate paths expected in artifact_refs.
  • supporting-evidence6 / 6 readyartifact_refs: falseSupporting-evidence rows help reviewers audit the packet but do not all need to be copied into artifact_refs.
隐私边界
  • Telemetry must remain metadata-only and local-first.
  • Do not package reports/telemetry_events.jsonl or any raw prompt, output, transcript, note, or message field.
@@ -831,17 +844,17 @@
-

上下文

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

+

上下文

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

编译证据

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

-

信任报告

Secret
0
脚本数
150
网络脚本
3
Help 失败
0
包体哈希
7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4
+

信任报告

Secret
0
脚本数
151
网络脚本
3
Help 失败
0
包体哈希
453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc

安全边界

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

-

Python 兼容

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

Python 兼容

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

解释器边界

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

@@ -861,14 +874,14 @@
-

运营回路

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

+

运营回路

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

漂移信号

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

日常运维

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

周度队列

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

日常运维

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

周度队列

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

公开声明

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

声明阻断

+

公开声明

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

声明阻断

diff --git a/reports/review-studio.json b/reports/review-studio.json index d991f9a7..520f5958 100644 --- a/reports/review-studio.json +++ b/reports/review-studio.json @@ -44,7 +44,7 @@ "key": "context-budget", "label": "上下文", "status": "pass", - "detail": "initial load 990/1000; deferred 509352/120000; top deferred scripts 448172; resource governance governed; quality density 131.3", + "detail": "initial load 990/1000; deferred 511351/120000; top deferred scripts 450048; resource governance governed; quality density 131.3", "evidence": "reports/context_budget.json", "link": "context_budget.md" }, @@ -60,7 +60,7 @@ "key": "trust-report", "label": "信任报告", "status": "pass", - "detail": "0 secrets; 150 scripts; 3 network-capable scripts; 0 help smoke failures", + "detail": "0 secrets; 151 scripts; 3 network-capable scripts; 0 help smoke failures", "evidence": "reports/security_trust_report.json", "link": "security_trust_report.md" }, @@ -68,7 +68,7 @@ "key": "python-compat", "label": "Python 兼容", "status": "pass", - "detail": "Python 3.11; 229 files; 0 compatibility issues; 0 syntax; 0 f-string 3.11 hazards", + "detail": "Python 3.11; 230 files; 0 compatibility issues; 0 syntax; 0 f-string 3.11 hazards", "evidence": "reports/python_compatibility.json", "link": "python_compatibility.md" }, @@ -76,7 +76,7 @@ "key": "architecture-maintainability", "label": "架构维护", "status": "pass", - "detail": "226 Python files; 0 hotspots; 0 watchlist files; 2 early watch files; 0 blockers; largest 696 lines; 68 CLI handlers; 18 in entrypoint", + "detail": "227 Python files; 0 hotspots; 0 watchlist files; 2 early watch files; 0 blockers; largest 696 lines; 68 CLI handlers; 18 in entrypoint", "evidence": "reports/architecture_maintainability.json", "link": "architecture_maintainability.md" }, @@ -108,7 +108,7 @@ "key": "operations-loop", "label": "运营回路", "status": "pass", - "detail": "1 metadata events; adoption 100.0; missed 0; bad-output 0; risk low; daily proposals 5; daily decision proposal-review; daily release lock true; weekly queue 5 unique; weekly ready 1; weekly top 88; weekly release lock true", + "detail": "1 metadata events; adoption 100.0; missed 0; bad-output 0; risk low; daily proposals 5; daily decision proposal-review; daily release lock false; weekly queue 5 unique; weekly ready 1; weekly top 88; weekly release lock false", "evidence": "reports/adoption_drift_report.json + reports/skillops/daily + reports/skillops/weekly", "link": "adoption_drift_report.md" }, @@ -575,6 +575,46 @@ ], "repair_blocked_count": 3, "repair_counts_as_completion": false, + "phase_queue": [ + { + "phase": "unblock-access", + "label": "Unblock access", + "priority": 20, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "operator with provider credentials" + ], + "evidence_keys": [ + "provider-holdout" + ], + "next_action_id": "provider-holdout-precheck-openai-api-key", + "next_action": "Set OPENAI_API_KEY in the operator shell; never commit or print the value.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false + }, + { + "phase": "collect-source", + "label": "Collect source", + "priority": 40, + "status": "blocked", + "blocked_count": 2, + "row_count": 2, + "owners": [ + "operator with provider credentials" + ], + "evidence_keys": [ + "provider-holdout" + ], + "next_action_id": "provider-holdout-source-check-model_executed_count", + "next_action": "Run provider-backed output-exec with real credentials.", + "verification_command": "python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false + } + ], + "phase_queue_blocked_count": 2, + "phase_queue_counts_as_completion": false, "commands": [ { "key": "prepare_submission", @@ -793,6 +833,46 @@ ], "repair_blocked_count": 6, "repair_counts_as_completion": false, + "phase_queue": [ + { + "phase": "unblock-access", + "label": "Unblock access", + "priority": 20, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "human reviewer" + ], + "evidence_keys": [ + "human-adjudication" + ], + "next_action_id": "human-adjudication-precheck-human-reviewer", + "next_action": "Assign a real reviewer identity before claiming human adjudication.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false + }, + { + "phase": "collect-source", + "label": "Collect source", + "priority": 40, + "status": "blocked", + "blocked_count": 5, + "row_count": 5, + "owners": [ + "human reviewer" + ], + "evidence_keys": [ + "human-adjudication" + ], + "next_action_id": "human-adjudication-source-check-blind_review_attested", + "next_action": "Set reviewer_attestation only after choices are completed before opening the answer key.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false + } + ], + "phase_queue_blocked_count": 2, + "phase_queue_counts_as_completion": false, "commands": [ { "key": "prepare_submission", @@ -934,6 +1014,46 @@ ], "repair_blocked_count": 2, "repair_counts_as_completion": false, + "phase_queue": [ + { + "phase": "unblock-access", + "label": "Unblock access", + "priority": 20, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "target client or installer integrator" + ], + "evidence_keys": [ + "native-permission-enforcement" + ], + "next_action_id": "native-permission-enforcement-precheck-native-guard", + "next_action": "Attach a real target-client or external installer runtime guard; metadata fallback is not enough.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false + }, + { + "phase": "collect-source", + "label": "Collect source", + "priority": 40, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "target client or installer integrator" + ], + "evidence_keys": [ + "native-permission-enforcement" + ], + "next_action_id": "native-permission-enforcement-source-check-native_enforcement_count", + "next_action": "Collect real target-client or external runtime guard proof.", + "verification_command": "python3 scripts/yao.py runtime-permissions . --package-dir dist && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false + } + ], + "phase_queue_blocked_count": 2, + "phase_queue_counts_as_completion": false, "commands": [ { "key": "prepare_submission", @@ -1068,6 +1188,46 @@ ], "repair_blocked_count": 2, "repair_counts_as_completion": false, + "phase_queue": [ + { + "phase": "unblock-access", + "label": "Unblock access", + "priority": 20, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "Browser/Chrome/IDE/provider client integrator" + ], + "evidence_keys": [ + "native-client-telemetry" + ], + "next_action_id": "native-client-telemetry-precheck-external-client", + "next_action": "Install a real Browser, Chrome, IDE, or provider client that emits metadata-only events.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false + }, + { + "phase": "collect-source", + "label": "Collect source", + "priority": 40, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "Browser/Chrome/IDE/provider client integrator" + ], + "evidence_keys": [ + "native-client-telemetry" + ], + "next_action_id": "native-client-telemetry-source-check-external_source_events", + "next_action": "Import at least one metadata-only event from a real client.", + "verification_command": "python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false + } + ], + "phase_queue_blocked_count": 2, + "phase_queue_counts_as_completion": false, "commands": [ { "key": "prepare_submission", @@ -1711,7 +1871,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 150 + "file_count": 151 }, { "path": "evals", @@ -1726,7 +1886,7 @@ "file_count": 235 } ], - "file_count": 453, + "file_count": 454, "folder_count": 4, "distribution": [ { @@ -1751,7 +1911,7 @@ }, { "label": "scripts", - "value": 150 + "value": 151 }, { "label": "evals", @@ -1881,7 +2041,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 150 + "file_count": 151 }, { "path": "evals", @@ -2203,12 +2363,12 @@ "ok": true, "summary": { "reproducibility_ready": true, - "release_lock_ready": true, + "release_lock_ready": false, "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "3f56502035ddc8b26c0eca9e3e9d2e84013457336b16f4ce3d338b6b0cd96ef6", - "source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "evidence_bundle_sha256": "3ccbc3258857a4494e846fe9e517e1af1b1db24e5e531dfab1eea80411e791ed", + "source_contract_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2", "output_case_count": 5, "failure_disclosure_count": 3, @@ -2227,15 +2387,15 @@ "world_class_source_pass_count": 10, "world_class_source_blocked_count": 9, "public_claim_ready": false, - "public_claim_blocker_count": 4, + "public_claim_blocker_count": 5, "working_tree_dirty": true, - "changed_file_count": 2, - "source_tree_dirty": false, - "source_changed_file_count": 0, + "changed_file_count": 68, + "source_tree_dirty": true, + "source_changed_file_count": 8, "generated_tree_dirty": true, - "generated_changed_file_count": 2 + "generated_changed_file_count": 60 }, - "commit": "7512dc3309bfa95d4fc7e1188d1d4a62bd7c460b", + "commit": "ca23db4296e0216acca9ede65f9b00c3380c1180", "missing_artifacts": [], "limitations": [ "The git commit and dirty flags are generation-time context; release lock is blocked by source changes, while generated evidence artifacts are tracked separately.", @@ -2319,9 +2479,9 @@ "failures": [] }, "trust_security": { - "scanned_files": 242, - "script_count": 150, - "internal_module_count": 64, + "scanned_files": 243, + "script_count": 151, + "internal_module_count": 65, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -2339,8 +2499,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 242, - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "package_hash_file_count": 243, + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" }, "skill_atlas": { "skill_count": 12, @@ -2378,7 +2538,7 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2" }, "compatibility": { @@ -2438,7 +2598,7 @@ "ok": true, "summary": { "archive_present": true, - "archive_entry_count": 689, + "archive_entry_count": 690, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -2510,7 +2670,7 @@ { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "to": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" } ] }, @@ -5024,7 +5184,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.23, + "duration_ms": 30.41, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -5052,7 +5212,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.04, + "duration_ms": 29.94, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -5075,7 +5235,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.25, + "duration_ms": 29.11, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -5103,7 +5263,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.22, + "duration_ms": 29.31, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -5126,7 +5286,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.07, + "duration_ms": 28.42, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -5154,7 +5314,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 25.73, + "duration_ms": 31.5, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -5177,7 +5337,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.03, + "duration_ms": 30.9, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -5204,7 +5364,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 25.68, + "duration_ms": 29.84, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -5227,7 +5387,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.14, + "duration_ms": 30.56, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -5256,7 +5416,7 @@ "execution_mode": "command", "model_executed": false, "command_executed": true, - "duration_ms": 26.21, + "duration_ms": 29.37, "provider": "local-output-eval-runner", "model": "", "usage": { @@ -6037,23 +6197,52 @@ "ok": true, "generated_at": "2026-06-17", "skill_dir": ".", - "commit": "7512dc3309bfa95d4fc7e1188d1d4a62bd7c460b", + "commit": "ca23db4296e0216acca9ede65f9b00c3380c1180", "git_status": { "available": true, "dirty": true, - "changed_file_count": 2, + "changed_file_count": 68, "generated_dirty": true, - "generated_changed_file_count": 2, - "source_dirty": false, - "source_changed_file_count": 0, + "generated_changed_file_count": 60, + "source_dirty": true, + "source_changed_file_count": 8, "sample": [ - " M reports/context_budget.json", - " M reports/context_budget_summary.json" + " M assets/review-studio.css", + " M registry/index.json", + " M registry/packages/yao-meta-skill.json", + " M reports/adaptation_proposals.json", + " M reports/adaptation_proposals.md", + " M reports/adoption_drift_report.json", + " M reports/architecture_maintainability.json", + " M reports/architecture_maintainability.md", + " M reports/benchmark_reproducibility.json", + " M reports/benchmark_reproducibility.md", + " M reports/compiled_targets.json", + " M reports/context_budget.json" + ], + "source_sample": [ + " M assets/review-studio.css", + " M scripts/render_world_class_preflight.py", + " M scripts/review_studio_action_evidence.py", + " M scripts/world_class_preflight_layout.py", + " M tests/review_studio_world_class_assertions.py", + " M tests/verify_review_studio.py", + " M tests/verify_world_class_preflight.py", + "?? scripts/world_class_preflight_markdown.py" ], - "source_sample": [], "generated_sample": [ + " M registry/index.json", + " M registry/packages/yao-meta-skill.json", + " M reports/adaptation_proposals.json", + " M reports/adaptation_proposals.md", + " M reports/adoption_drift_report.json", + " M reports/architecture_maintainability.json", + " M reports/architecture_maintainability.md", + " M reports/benchmark_reproducibility.json", + " M reports/benchmark_reproducibility.md", + " M reports/compiled_targets.json", " M reports/context_budget.json", - " M reports/context_budget_summary.json" + " M reports/context_budget.md" ], "generated_dirty_prefixes": [ "dist/", @@ -6067,12 +6256,12 @@ }, "summary": { "reproducibility_ready": true, - "release_lock_ready": true, + "release_lock_ready": false, "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "3f56502035ddc8b26c0eca9e3e9d2e84013457336b16f4ce3d338b6b0cd96ef6", - "source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "evidence_bundle_sha256": "3ccbc3258857a4494e846fe9e517e1af1b1db24e5e531dfab1eea80411e791ed", + "source_contract_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2", "output_case_count": 5, "failure_disclosure_count": 3, @@ -6091,18 +6280,19 @@ "world_class_source_pass_count": 10, "world_class_source_blocked_count": 9, "public_claim_ready": false, - "public_claim_blocker_count": 4, + "public_claim_blocker_count": 5, "working_tree_dirty": true, - "changed_file_count": 2, - "source_tree_dirty": false, - "source_changed_file_count": 0, + "changed_file_count": 68, + "source_tree_dirty": true, + "source_changed_file_count": 8, "generated_tree_dirty": true, - "generated_changed_file_count": 2 + "generated_changed_file_count": 60 }, "public_claim": { "ready": false, "scope": "public benchmark or world-class readiness claim", "blockers": [ + "release lock is not clean or commit is unavailable", "provider-backed model holdout evidence is incomplete", "human blind-review adjudication is incomplete", "world-class evidence is not accepted yet (4 open gaps, 4 ledger pending)", @@ -6111,12 +6301,12 @@ "policy": "Local reproducibility can pass before public claims; public claims require provider evidence, human adjudication, clean release lock, accepted world-class evidence, and complete source checks." }, "release_lock": { - "ready": true, - "commit": "7512dc3309bfa95d4fc7e1188d1d4a62bd7c460b", + "ready": false, + "commit": "ca23db4296e0216acca9ede65f9b00c3380c1180", "status_scope": "generation-time status before this report is written", - "source_changed_file_count": 0, - "generated_changed_file_count": 2, - "reason": "only generated evidence artifacts were dirty at generation time" + "source_changed_file_count": 8, + "generated_changed_file_count": 60, + "reason": "source files were dirty at generation time" }, "evidence_bundle": { "algorithm": "sha256(path,label,exists,artifact_sha256)", @@ -6124,7 +6314,7 @@ "existing_count": 25, "missing_count": 0, "missing_paths": [], - "sha256": "3f56502035ddc8b26c0eca9e3e9d2e84013457336b16f4ce3d338b6b0cd96ef6" + "sha256": "3ccbc3258857a4494e846fe9e517e1af1b1db24e5e531dfab1eea80411e791ed" }, "methodology": { "path": "reports/benchmark_methodology.md", @@ -6197,8 +6387,8 @@ "label": "output_execution", "path": "reports/output_execution_runs.json", "exists": true, - "bytes": 7967, - "sha256": "b7cb8dfb5aeeb71b27ed31f63f260f89343f5f83e5ea307fb0268125fcdf2e87" + "bytes": 7965, + "sha256": "ecdad5b8794e10f995f17a718aba409a5a9be36e31e975ada0aa08de0cac56fa" }, { "label": "blind_review", @@ -6232,22 +6422,22 @@ "label": "trust_report", "path": "reports/security_trust_report.json", "exists": true, - "bytes": 135749, - "sha256": "b1d4729668d1dbf035b593e77dd2a3730e9aa4b3971014d37617ba5e0222df90" + "bytes": 136375, + "sha256": "08c2d3659e8a3a05ddc4be6da0a533970b09f6017efbe508ed311d189fe69726" }, { "label": "python_compatibility", "path": "reports/python_compatibility.json", "exists": true, - "bytes": 29715, - "sha256": "fbfb0331f8230fe0739214a837639983ed608f880af477c71f8f116df74f5a55" + "bytes": 29848, + "sha256": "4dc6cc6e37038493bdd01df3ecc043c90efefc0a4d4932525adc8f4053c1affc" }, { "label": "registry_audit", "path": "reports/registry_audit.json", "exists": true, "bytes": 3183, - "sha256": "0b9a661b8acc68e19895f05ff4b025f6a16f834a3238cb6e53871aa908e34c34" + "sha256": "c5dd375176e01291baf0bbcb1dc5c7eb65a3ce59c4ebcd655c94b91481983380" }, { "label": "package_verification", @@ -6261,63 +6451,63 @@ "path": "reports/install_simulation.json", "exists": true, "bytes": 8758, - "sha256": "73d46fe333bab7d78e2cb854704e6be0d40ee8eafe2798cfa7b71c2a5a3c9953" + "sha256": "f71d25a6ac3e731412f435fd722b343e616def12c013a07f87e57ea4a7551a96" }, { "label": "skill_os2_audit", "path": "reports/skill_os2_audit.json", "exists": true, "bytes": 14466, - "sha256": "4169e5453ba22f0c45e3f8b12eec08ef99ccd3562680d3721ee73c4eef9806c1" + "sha256": "432b795c6ccc1db3c2815b97220675a7c27facbe9c8334ed0158627b7f2214b7" }, { "label": "world_class_evidence_plan", "path": "reports/world_class_evidence_plan.json", "exists": true, "bytes": 22784, - "sha256": "4193115d881d4f68e61d2729633f88dd91d55d982af3db70691aafeba852f1ba" + "sha256": "d0ab417742950ff5a5f3407f068829217da5c997a6a7c5a5ee59441cb4abfb7f" }, { "label": "world_class_evidence_ledger", "path": "reports/world_class_evidence_ledger.json", "exists": true, "bytes": 26016, - "sha256": "cb66d3284045b5993d25447f011cc70737dc760765ea3a3b7ae653194f0c4ff4" + "sha256": "fc4c3e398ad0de110ae5f37e461d03712716552ce85b44e41e09f4d343a17f0b" }, { "label": "world_class_evidence_intake", "path": "reports/world_class_evidence_intake.json", "exists": true, "bytes": 20646, - "sha256": "002fbf07989a804595fdcb51b6d0c8177dc035a1dc8d084b8294a274d21fbc1b" + "sha256": "1a939bdd1f4a3ee30e05f0b286145f0f3320ba9f1935749806a581737155774a" }, { "label": "world_class_evidence_preflight", "path": "reports/world_class_evidence_preflight.json", "exists": true, - "bytes": 66981, - "sha256": "758807fa5749e0dd46f46d311abfad8af7dd70663e8876569b1a4b8414b42ace" + "bytes": 97462, + "sha256": "d6c13c020987c1b395d8e78cc409fec0784f6746ff77f0ef148abf105b9d6045" }, { "label": "world_class_submission_review", "path": "reports/world_class_submission_review.json", "exists": true, "bytes": 17299, - "sha256": "f5b1e0e44aeb6e1999182d40fca421ab0a66b91154efc7b518e9ed6f6ac20dd2" + "sha256": "b256c40e75283556fc2ab1a0ff3a19834e82d54d4c7a3e7464806c01aab69db7" }, { "label": "world_class_operator_runbook", "path": "reports/world_class_operator_runbook.json", "exists": true, "bytes": 28871, - "sha256": "8da2e2cde3adecec955f7745a4b761edc5af871d1720409cbd4f3b4b4482510e" + "sha256": "3bf99aca0798e86e13a5364aaf8462f23cdb472770671f4bef41ac50abf65c32" }, { "label": "world_class_operator_runbook_markdown", "path": "reports/world_class_operator_runbook.md", "exists": true, "bytes": 17521, - "sha256": "bfac92bc14f3080b9d723f32a4848aa3cfc10d4c3ee2e3844b65153f34c87c0a" + "sha256": "69b7ba66e5e2710438d168e2e9e9c5a6187c9f8dadc6a1e7a0f60e4dc222d679" }, { "label": "world_class_operator_runbook_html", @@ -6331,7 +6521,7 @@ "path": "reports/world_class_claim_guard.json", "exists": true, "bytes": 18596, - "sha256": "c846ffc8565a40c270e711a58e968b005afd75be6df1a442b020deebe850386f" + "sha256": "abe7f7d60c0025e140373fadaefbed4063f285c140c74b9c7cfb464e354bb526" } ], "missing_artifacts": [], @@ -6471,7 +6661,7 @@ "skill_os2_coverage": { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", "summary": { "item_count": 21, @@ -6600,7 +6790,7 @@ "label": "Trust Security", "status": "pass", "objective": "Scripts, dependencies, permissions, secrets, and package hash are reviewable for team distribution.", - "current": "150 scripts; secrets 0; help failures 0", + "current": "151 scripts; secrets 0; help failures 0", "command": "python3 scripts/yao.py trust .", "test": "python3 tests/verify_trust_check.py", "evidence": [ @@ -7434,6 +7624,7 @@ "scripts/adaptation_report_contracts.py", "scripts/adjudicate_output_review.py", "scripts/apply_adaptation.py", + "scripts/benchmark_release_lock.py", "scripts/build_confusion_matrix.py", "scripts/build_skill_atlas.py", "scripts/build_skill_atlas_layout.py", @@ -7560,8 +7751,11 @@ "scripts/world_class_human_evidence.py", "scripts/world_class_native_permission_evidence.py", "scripts/world_class_native_telemetry_evidence.py", + "scripts/world_class_phase_queue.py", "scripts/world_class_preflight_layout.py", + "scripts/world_class_preflight_markdown.py", "scripts/world_class_provider_evidence.py", + "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", "scripts/world_class_submission_kit_rendering.py", "scripts/world_class_submission_matrix.py", @@ -7633,7 +7827,7 @@ ], "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 } @@ -7906,7 +8100,7 @@ "strategy": "Ship the neutral source tree and expose OpenAI-facing interface metadata as a generated companion file.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -7917,7 +8111,7 @@ }, "scripts": { "strategy": "Keep scripts as local package resources; expose help-smoke and permission metadata for reviewer approval before execution.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -8162,7 +8356,7 @@ "strategy": "Ship the neutral source tree and expose OpenAI-facing interface metadata as a generated companion file.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -8173,7 +8367,7 @@ }, "scripts": { "strategy": "Keep scripts as local package resources; expose help-smoke and permission metadata for reviewer approval before execution.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -8383,6 +8577,7 @@ "scripts/adaptation_report_contracts.py", "scripts/adjudicate_output_review.py", "scripts/apply_adaptation.py", + "scripts/benchmark_release_lock.py", "scripts/build_confusion_matrix.py", "scripts/build_skill_atlas.py", "scripts/build_skill_atlas_layout.py", @@ -8509,8 +8704,11 @@ "scripts/world_class_human_evidence.py", "scripts/world_class_native_permission_evidence.py", "scripts/world_class_native_telemetry_evidence.py", + "scripts/world_class_phase_queue.py", "scripts/world_class_preflight_layout.py", + "scripts/world_class_preflight_markdown.py", "scripts/world_class_provider_evidence.py", + "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", "scripts/world_class_submission_kit_rendering.py", "scripts/world_class_submission_matrix.py", @@ -8582,7 +8780,7 @@ ], "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 } @@ -8855,7 +9053,7 @@ "strategy": "Preserve the source tree directly; write target notes in targets/claude/README.md.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -8866,7 +9064,7 @@ }, "scripts": { "strategy": "Scripts remain local package resources and must be reviewed through trust and permission reports before use.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -9111,7 +9309,7 @@ "strategy": "Preserve the source tree directly; write target notes in targets/claude/README.md.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -9122,7 +9320,7 @@ }, "scripts": { "strategy": "Scripts remain local package resources and must be reviewed through trust and permission reports before use.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -9332,6 +9530,7 @@ "scripts/adaptation_report_contracts.py", "scripts/adjudicate_output_review.py", "scripts/apply_adaptation.py", + "scripts/benchmark_release_lock.py", "scripts/build_confusion_matrix.py", "scripts/build_skill_atlas.py", "scripts/build_skill_atlas_layout.py", @@ -9458,8 +9657,11 @@ "scripts/world_class_human_evidence.py", "scripts/world_class_native_permission_evidence.py", "scripts/world_class_native_telemetry_evidence.py", + "scripts/world_class_phase_queue.py", "scripts/world_class_preflight_layout.py", + "scripts/world_class_preflight_markdown.py", "scripts/world_class_provider_evidence.py", + "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", "scripts/world_class_submission_kit_rendering.py", "scripts/world_class_submission_matrix.py", @@ -9531,7 +9733,7 @@ ], "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 } @@ -9804,7 +10006,7 @@ "strategy": "Preserve references, scripts, assets, evals, reports, and adapter metadata as relative package resources.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -9814,7 +10016,7 @@ }, "scripts": { "strategy": "Expose script and permission metadata for downstream clients or installers to enforce.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -10053,7 +10255,7 @@ "strategy": "Preserve references, scripts, assets, evals, reports, and adapter metadata as relative package resources.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -10063,7 +10265,7 @@ }, "scripts": { "strategy": "Expose script and permission metadata for downstream clients or installers to enforce.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -10265,6 +10467,7 @@ "scripts/adaptation_report_contracts.py", "scripts/adjudicate_output_review.py", "scripts/apply_adaptation.py", + "scripts/benchmark_release_lock.py", "scripts/build_confusion_matrix.py", "scripts/build_skill_atlas.py", "scripts/build_skill_atlas_layout.py", @@ -10391,8 +10594,11 @@ "scripts/world_class_human_evidence.py", "scripts/world_class_native_permission_evidence.py", "scripts/world_class_native_telemetry_evidence.py", + "scripts/world_class_phase_queue.py", "scripts/world_class_preflight_layout.py", + "scripts/world_class_preflight_markdown.py", "scripts/world_class_provider_evidence.py", + "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", "scripts/world_class_submission_kit_rendering.py", "scripts/world_class_submission_matrix.py", @@ -10464,7 +10670,7 @@ ], "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 } @@ -10737,7 +10943,7 @@ "strategy": "Keep optional directories as relative resources next to SKILL.md.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -10748,7 +10954,7 @@ }, "scripts": { "strategy": "Scripts remain local optional resources and should advertise --help when executable.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -10986,7 +11192,7 @@ "strategy": "Keep optional directories as relative resources next to SKILL.md.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -10997,7 +11203,7 @@ }, "scripts": { "strategy": "Scripts remain local optional resources and should advertise --help when executable.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -11198,6 +11404,7 @@ "scripts/adaptation_report_contracts.py", "scripts/adjudicate_output_review.py", "scripts/apply_adaptation.py", + "scripts/benchmark_release_lock.py", "scripts/build_confusion_matrix.py", "scripts/build_skill_atlas.py", "scripts/build_skill_atlas_layout.py", @@ -11324,8 +11531,11 @@ "scripts/world_class_human_evidence.py", "scripts/world_class_native_permission_evidence.py", "scripts/world_class_native_telemetry_evidence.py", + "scripts/world_class_phase_queue.py", "scripts/world_class_preflight_layout.py", + "scripts/world_class_preflight_markdown.py", "scripts/world_class_provider_evidence.py", + "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", "scripts/world_class_submission_kit_rendering.py", "scripts/world_class_submission_matrix.py", @@ -11397,7 +11607,7 @@ ], "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 } @@ -11670,7 +11880,7 @@ "strategy": "Install as project or user scoped skill source, preserving relative references and scripts.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -11681,7 +11891,7 @@ }, "scripts": { "strategy": "Scripts require workspace trust and operator/client approval outside this compiler.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -11923,7 +12133,7 @@ "strategy": "Install as project or user scoped skill source, preserving relative references and scripts.", "counts": { "references": 35, - "scripts": 147, + "scripts": 151, "assets": 6, "reports": 43 }, @@ -11934,7 +12144,7 @@ }, "scripts": { "strategy": "Scripts require workspace trust and operator/client approval outside this compiler.", - "script_count": 147, + "script_count": 151, "help_smoke_failed_count": 0 }, "permissions": { @@ -12642,9 +12852,9 @@ "ok": true, "skill_dir": ".", "summary": { - "scanned_files": 242, - "script_count": 150, - "internal_module_count": 64, + "scanned_files": 243, + "script_count": 151, + "internal_module_count": 65, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -12662,8 +12872,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 242, - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "package_hash_file_count": 243, + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" }, "failures": [], "warnings": [], @@ -14548,6 +14758,20 @@ "network_urls": [], "network_hosts": [] }, + { + "path": "scripts/world_class_preflight_markdown.py", + "interface": "internal-module", + "interface_declared": true, + "interface_reason": "Imported by render_world_class_preflight.py to keep Markdown layout separate from preflight data assembly.", + "has_argparse": false, + "has_main_guard": false, + "uses_input": false, + "uses_network": false, + "uses_file_write": false, + "uses_subprocess": false, + "network_urls": [], + "network_hosts": [] + }, { "path": "scripts/world_class_provider_evidence.py", "interface": "internal-module", @@ -14821,7 +15045,7 @@ "checked_count": 86, "passed_count": 86, "failed_count": 0, - "skipped_count": 64, + "skipped_count": 65, "failed_scripts": [], "results": [ { @@ -15878,6 +16102,10 @@ "path": "scripts/world_class_preflight_layout.py", "reason": "internal module" }, + { + "path": "scripts/world_class_preflight_markdown.py", + "reason": "internal module" + }, { "path": "scripts/world_class_provider_evidence.py", "reason": "internal module" @@ -16139,7 +16367,7 @@ "root": ".", "summary": { "target_python": "3.11", - "file_count": 229, + "file_count": 230, "issue_count": 0, "syntax_error_count": 0, "fstring_311_violation_count": 0, @@ -16972,6 +17200,12 @@ "issue_count": 0, "issues": [] }, + { + "path": "scripts/world_class_preflight_markdown.py", + "ok": true, + "issue_count": 0, + "issues": [] + }, { "path": "scripts/world_class_provider_evidence.py", "ok": true, @@ -17543,10 +17777,10 @@ "generated_at": "2026-06-13", "skill_dir": ".", "summary": { - "python_file_count": 226, - "script_file_count": 150, + "python_file_count": 227, + "script_file_count": 151, "test_file_count": 76, - "internal_module_count": 66, + "internal_module_count": 67, "cli_script_count": 86, "command_handler_count": 68, "entrypoint_command_handler_count": 18, @@ -17587,14 +17821,6 @@ "early_watch": false, "recommendation": "Break broad integration assertions into focused verifier helpers when the next behavior change lands." }, - { - "path": "scripts/render_world_class_preflight.py", - "lines": 593, - "kind": "cli-script", - "severity": "pass", - "early_watch": false, - "recommendation": "Watch this file before adding new responsibilities; extract a helper module when one concern dominates." - }, { "path": "scripts/render_skill_overview.py", "lines": 588, @@ -17658,6 +17884,14 @@ "severity": "pass", "early_watch": false, "recommendation": "Move data loading and large section renderers into focused review_studio_* modules." + }, + { + "path": "scripts/adjudicate_output_review.py", + "lines": 566, + "kind": "cli-script", + "severity": "pass", + "early_watch": false, + "recommendation": "Watch this file before adding new responsibilities; extract a helper module when one concern dominates." } ], "watchlist": [], @@ -17694,16 +17928,16 @@ "context_budget_tier": "production", "context_budget_limit": 1000, "skill_body_tokens": 797, - "other_text_tokens": 1115184, + "other_text_tokens": 1118755, "estimated_initial_load_tokens": 990, - "estimated_total_text_tokens": 1115981, - "deferred_resource_tokens": 509352, + "estimated_total_text_tokens": 1119552, + "deferred_resource_tokens": 511351, "deferred_resource_warn_threshold": 120000, "deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 448172, - "file_count": 150 + "estimated_tokens": 450048, + "file_count": 151 }, { "path": "references", @@ -17717,15 +17951,15 @@ }, { "path": "assets", - "estimated_tokens": 11053, + "estimated_tokens": 11176, "file_count": 4 } ], "large_deferred_resource_dirs": [ { "path": "scripts", - "estimated_tokens": 448172, - "file_count": 150 + "estimated_tokens": 450048, + "file_count": 151 } ], "deferred_resource_governance": { @@ -17747,14 +17981,14 @@ ], "missing": [], "path": "scripts", - "estimated_tokens": 448172, - "file_count": 150, + "estimated_tokens": 450048, + "file_count": 151, "rationale": "Script resources are deterministic deferred tools, not initial-load prompt context." } ], "summary": "Large deferred resources are indexed and backed by evidence." }, - "relevant_file_count": 706, + "relevant_file_count": 708, "unused_resource_dirs": [], "quality_signal_points": 130, "quality_density": 131.3 @@ -18751,6 +18985,7 @@ "scripts/world_class_native_telemetry_evidence.py", "scripts/world_class_phase_queue.py", "scripts/world_class_preflight_layout.py", + "scripts/world_class_preflight_markdown.py", "scripts/world_class_provider_evidence.py", "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", @@ -19670,7 +19905,7 @@ "adoption_drift": { "ok": true, "schema_version": "2.0", - "generated_at": "2026-06-16T20:30:45Z", + "generated_at": "2026-06-16T20:47:11Z", "skill_dir": ".", "privacy_contract": { "storage": "local-first", @@ -19767,7 +20002,7 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true, "writes_source_files": false, "auto_patch_enabled": false, @@ -19784,7 +20019,7 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true, "writes_source_files": false, "auto_patch_enabled": false, @@ -20233,7 +20468,7 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true }, "actions": [ @@ -20268,7 +20503,7 @@ "weekly_curator": { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-17", + "generated_at": "2026-06-16T20:46:42Z", "skill_dir": ".", "decision": "curator-review", "week_id": "2026-W25", @@ -20282,7 +20517,7 @@ "top_score": 88, "skill_count": 12, "actionable_portfolio_issue_count": 0, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true, "public_world_class_ready": false, "world_class_pending_count": 4, @@ -20302,7 +20537,7 @@ "top_score": 88, "skill_count": 12, "actionable_portfolio_issue_count": 0, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true, "public_world_class_ready": false, "world_class_pending_count": 4, @@ -20555,7 +20790,7 @@ "no_route_opportunity_count": 0 }, "release_state": { - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true, "public_world_class_ready": false, "world_class_pending_count": 4 @@ -20733,7 +20968,7 @@ "adaptation_proposals": { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-17", + "generated_at": "2026-06-16T20:46:42Z", "skill_dir": ".", "source_patterns": "reports/user_patterns.json", "pattern_count": 5, @@ -21131,7 +21366,7 @@ "world_class_evidence_ledger": { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", "decision": "evidence-pending", "ready_to_claim_world_class": false, @@ -21733,7 +21968,7 @@ "world_class_evidence_intake": { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", "summary": { "schema_present": true, @@ -22158,6 +22393,13 @@ "next_repair_owner": "human reviewer", "next_repair_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", "repair_counts_as_completion": false, + "phase_queue_count": 2, + "phase_queue_blocked_count": 2, + "phase_queue_row_count": 13, + "phase_queue_next_phase": "unblock-access", + "phase_queue_next_action_id": "human-adjudication-precheck-human-reviewer", + "phase_queue_next_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "phase_queue_counts_as_completion": false, "pending_count": 4, "ready_to_claim_world_class": false, "credential_value_exposed": false, @@ -22368,6 +22610,93 @@ "source": "source_checklist", "counts_as_completion": false } + ], + "phase_queue": [ + { + "phase": "unblock-access", + "label": "Unblock access", + "priority": 20, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "operator with provider credentials" + ], + "evidence_keys": [ + "provider-holdout" + ], + "next_action_id": "provider-holdout-precheck-openai-api-key", + "next_action": "Set OPENAI_API_KEY in the operator shell; never commit or print the value.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "provider-holdout-precheck-openai-api-key", + "evidence_key": "provider-holdout", + "repair_type": "precheck", + "target": "openai-api-key", + "phase": "unblock-access", + "priority": 20, + "owner": "operator with provider credentials", + "status": "blocked", + "blocking_reason": "Required env precheck is missing.", + "next_action": "Set OPENAI_API_KEY in the operator shell; never commit or print the value.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + } + ] + }, + { + "phase": "collect-source", + "label": "Collect source", + "priority": 40, + "status": "blocked", + "blocked_count": 2, + "row_count": 2, + "owners": [ + "operator with provider credentials" + ], + "evidence_keys": [ + "provider-holdout" + ], + "next_action_id": "provider-holdout-source-check-model_executed_count", + "next_action": "Run provider-backed output-exec with real credentials.", + "verification_command": "python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "provider-holdout-source-check-model_executed_count", + "evidence_key": "provider-holdout", + "repair_type": "source-check", + "target": "model_executed_count", + "phase": "collect-source", + "priority": 40, + "owner": "operator with provider credentials", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Run provider-backed output-exec with real credentials.", + "verification_command": "python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "provider-holdout-source-check-token_observed_count", + "evidence_key": "provider-holdout", + "repair_type": "source-check", + "target": "token_observed_count", + "phase": "collect-source", + "priority": 40, + "owner": "operator with provider credentials", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Provider execution should return non-estimated token usage.", + "verification_command": "python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + } + ] + } ] }, { @@ -22677,6 +23006,138 @@ "source": "source_checklist", "counts_as_completion": false } + ], + "phase_queue": [ + { + "phase": "unblock-access", + "label": "Unblock access", + "priority": 20, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "human reviewer" + ], + "evidence_keys": [ + "human-adjudication" + ], + "next_action_id": "human-adjudication-precheck-human-reviewer", + "next_action": "Assign a real reviewer identity before claiming human adjudication.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "human-adjudication-precheck-human-reviewer", + "evidence_key": "human-adjudication", + "repair_type": "precheck", + "target": "human-reviewer", + "phase": "unblock-access", + "priority": 20, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Required human precheck is human-required.", + "next_action": "Assign a real reviewer identity before claiming human adjudication.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + } + ] + }, + { + "phase": "collect-source", + "label": "Collect source", + "priority": 40, + "status": "blocked", + "blocked_count": 5, + "row_count": 5, + "owners": [ + "human reviewer" + ], + "evidence_keys": [ + "human-adjudication" + ], + "next_action_id": "human-adjudication-source-check-blind_review_attested", + "next_action": "Set reviewer_attestation only after choices are completed before opening the answer key.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "human-adjudication-source-check-blind_review_attested", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "blind_review_attested", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value False does not satisfy 'true'.", + "next_action": "Set reviewer_attestation only after choices are completed before opening the answer key.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-judgment_count", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "judgment_count", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '==pair_count'.", + "next_action": "Every pair needs one valid human judgment.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-pending_count", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "pending_count", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value 5 does not satisfy '==0'.", + "next_action": "Record a reviewer choice and reason for every pair.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-ready_for_human_evidence", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "ready_for_human_evidence", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value False does not satisfy 'true'.", + "next_action": "Complete all reviewer decisions with metadata and rationale, plus blind-review attestation and integrity fingerprints.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-reviewer_metadata_present", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "reviewer_metadata_present", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value False does not satisfy 'true'.", + "next_action": "Record reviewer and reviewed_at before adjudication can count.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + } + ] + } ] }, { @@ -22843,6 +23304,78 @@ "source": "source_checklist", "counts_as_completion": false } + ], + "phase_queue": [ + { + "phase": "unblock-access", + "label": "Unblock access", + "priority": 20, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "target client or installer integrator" + ], + "evidence_keys": [ + "native-permission-enforcement" + ], + "next_action_id": "native-permission-enforcement-precheck-native-guard", + "next_action": "Attach a real target-client or external installer runtime guard; metadata fallback is not enough.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "native-permission-enforcement-precheck-native-guard", + "evidence_key": "native-permission-enforcement", + "repair_type": "precheck", + "target": "native-guard", + "phase": "unblock-access", + "priority": 20, + "owner": "target client or installer integrator", + "status": "blocked", + "blocking_reason": "Required external precheck is external-required.", + "next_action": "Attach a real target-client or external installer runtime guard; metadata fallback is not enough.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + } + ] + }, + { + "phase": "collect-source", + "label": "Collect source", + "priority": 40, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "target client or installer integrator" + ], + "evidence_keys": [ + "native-permission-enforcement" + ], + "next_action_id": "native-permission-enforcement-source-check-native_enforcement_count", + "next_action": "Collect real target-client or external runtime guard proof.", + "verification_command": "python3 scripts/yao.py runtime-permissions . --package-dir dist && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "native-permission-enforcement-source-check-native_enforcement_count", + "evidence_key": "native-permission-enforcement", + "repair_type": "source-check", + "target": "native_enforcement_count", + "phase": "collect-source", + "priority": 40, + "owner": "target client or installer integrator", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Collect real target-client or external runtime guard proof.", + "verification_command": "python3 scripts/yao.py runtime-permissions . --package-dir dist && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + } + ] + } ] }, { @@ -23008,6 +23541,78 @@ "source": "source_checklist", "counts_as_completion": false } + ], + "phase_queue": [ + { + "phase": "unblock-access", + "label": "Unblock access", + "priority": 20, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "Browser/Chrome/IDE/provider client integrator" + ], + "evidence_keys": [ + "native-client-telemetry" + ], + "next_action_id": "native-client-telemetry-precheck-external-client", + "next_action": "Install a real Browser, Chrome, IDE, or provider client that emits metadata-only events.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "native-client-telemetry-precheck-external-client", + "evidence_key": "native-client-telemetry", + "repair_type": "precheck", + "target": "external-client", + "phase": "unblock-access", + "priority": 20, + "owner": "Browser/Chrome/IDE/provider client integrator", + "status": "blocked", + "blocking_reason": "Required external precheck is external-required.", + "next_action": "Install a real Browser, Chrome, IDE, or provider client that emits metadata-only events.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + } + ] + }, + { + "phase": "collect-source", + "label": "Collect source", + "priority": 40, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "Browser/Chrome/IDE/provider client integrator" + ], + "evidence_keys": [ + "native-client-telemetry" + ], + "next_action_id": "native-client-telemetry-source-check-external_source_events", + "next_action": "Import at least one metadata-only event from a real client.", + "verification_command": "python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "native-client-telemetry-source-check-external_source_events", + "evidence_key": "native-client-telemetry", + "repair_type": "source-check", + "target": "external_source_events", + "phase": "collect-source", + "priority": 40, + "owner": "Browser/Chrome/IDE/provider client integrator", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Import at least one metadata-only event from a real client.", + "verification_command": "python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + } + ] + } ] } ], @@ -23569,6 +24174,255 @@ "counts_as_completion": false } ], + "phase_queue": [ + { + "phase": "unblock-access", + "label": "Unblock access", + "priority": 20, + "status": "blocked", + "blocked_count": 4, + "row_count": 4, + "owners": [ + "Browser/Chrome/IDE/provider client integrator", + "human reviewer", + "operator with provider credentials", + "target client or installer integrator" + ], + "evidence_keys": [ + "human-adjudication", + "native-client-telemetry", + "native-permission-enforcement", + "provider-holdout" + ], + "next_action_id": "human-adjudication-precheck-human-reviewer", + "next_action": "Assign a real reviewer identity before claiming human adjudication.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "human-adjudication-precheck-human-reviewer", + "evidence_key": "human-adjudication", + "repair_type": "precheck", + "target": "human-reviewer", + "phase": "unblock-access", + "priority": 20, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Required human precheck is human-required.", + "next_action": "Assign a real reviewer identity before claiming human adjudication.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + }, + { + "action_id": "native-client-telemetry-precheck-external-client", + "evidence_key": "native-client-telemetry", + "repair_type": "precheck", + "target": "external-client", + "phase": "unblock-access", + "priority": 20, + "owner": "Browser/Chrome/IDE/provider client integrator", + "status": "blocked", + "blocking_reason": "Required external precheck is external-required.", + "next_action": "Install a real Browser, Chrome, IDE, or provider client that emits metadata-only events.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + }, + { + "action_id": "native-permission-enforcement-precheck-native-guard", + "evidence_key": "native-permission-enforcement", + "repair_type": "precheck", + "target": "native-guard", + "phase": "unblock-access", + "priority": 20, + "owner": "target client or installer integrator", + "status": "blocked", + "blocking_reason": "Required external precheck is external-required.", + "next_action": "Attach a real target-client or external installer runtime guard; metadata fallback is not enough.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + }, + { + "action_id": "provider-holdout-precheck-openai-api-key", + "evidence_key": "provider-holdout", + "repair_type": "precheck", + "target": "openai-api-key", + "phase": "unblock-access", + "priority": 20, + "owner": "operator with provider credentials", + "status": "blocked", + "blocking_reason": "Required env precheck is missing.", + "next_action": "Set OPENAI_API_KEY in the operator shell; never commit or print the value.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + } + ] + }, + { + "phase": "collect-source", + "label": "Collect source", + "priority": 40, + "status": "blocked", + "blocked_count": 9, + "row_count": 9, + "owners": [ + "Browser/Chrome/IDE/provider client integrator", + "human reviewer", + "operator with provider credentials", + "target client or installer integrator" + ], + "evidence_keys": [ + "human-adjudication", + "native-client-telemetry", + "native-permission-enforcement", + "provider-holdout" + ], + "next_action_id": "human-adjudication-source-check-blind_review_attested", + "next_action": "Set reviewer_attestation only after choices are completed before opening the answer key.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "human-adjudication-source-check-blind_review_attested", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "blind_review_attested", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value False does not satisfy 'true'.", + "next_action": "Set reviewer_attestation only after choices are completed before opening the answer key.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-judgment_count", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "judgment_count", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '==pair_count'.", + "next_action": "Every pair needs one valid human judgment.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-pending_count", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "pending_count", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value 5 does not satisfy '==0'.", + "next_action": "Record a reviewer choice and reason for every pair.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-ready_for_human_evidence", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "ready_for_human_evidence", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value False does not satisfy 'true'.", + "next_action": "Complete all reviewer decisions with metadata and rationale, plus blind-review attestation and integrity fingerprints.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-reviewer_metadata_present", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "reviewer_metadata_present", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value False does not satisfy 'true'.", + "next_action": "Record reviewer and reviewed_at before adjudication can count.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "native-client-telemetry-source-check-external_source_events", + "evidence_key": "native-client-telemetry", + "repair_type": "source-check", + "target": "external_source_events", + "phase": "collect-source", + "priority": 40, + "owner": "Browser/Chrome/IDE/provider client integrator", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Import at least one metadata-only event from a real client.", + "verification_command": "python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "native-permission-enforcement-source-check-native_enforcement_count", + "evidence_key": "native-permission-enforcement", + "repair_type": "source-check", + "target": "native_enforcement_count", + "phase": "collect-source", + "priority": 40, + "owner": "target client or installer integrator", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Collect real target-client or external runtime guard proof.", + "verification_command": "python3 scripts/yao.py runtime-permissions . --package-dir dist && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "provider-holdout-source-check-model_executed_count", + "evidence_key": "provider-holdout", + "repair_type": "source-check", + "target": "model_executed_count", + "phase": "collect-source", + "priority": 40, + "owner": "operator with provider credentials", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Run provider-backed output-exec with real credentials.", + "verification_command": "python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "provider-holdout-source-check-token_observed_count", + "evidence_key": "provider-holdout", + "repair_type": "source-check", + "target": "token_observed_count", + "phase": "collect-source", + "priority": 40, + "owner": "operator with provider credentials", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Provider execution should return non-estimated token usage.", + "verification_command": "python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + } + ] + } + ], "submissions": { "directory": "evidence/world_class/submissions", "commands": { @@ -23624,7 +24478,7 @@ "world_class_submission_review": { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", "decision": "awaiting-submissions", "ready_to_claim_world_class": false, @@ -24066,7 +24920,7 @@ "world_class_operator_runbook": { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", "summary": { "evidence_item_count": 4, @@ -24675,7 +25529,7 @@ "world_class_claim_guard": { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", "summary": { "ledger_ready_to_claim_world_class": false, @@ -25478,7 +26332,7 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2" }, "compatibility": { @@ -25535,7 +26389,7 @@ "vscode" ], "package_metadata": "registry/packages/yao-meta-skill.json", - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" } ] }, @@ -26224,7 +27078,7 @@ "installed_skill_dir": "tests/tmp_review_studio/install-root/simulate-yao-meta-skill/yao-meta-skill", "summary": { "archive_present": true, - "archive_entry_count": 689, + "archive_entry_count": 690, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -26571,7 +27425,7 @@ { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "to": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" } ] }, diff --git a/reports/review-viewer.json b/reports/review-viewer.json index 9518539e..8571b1da 100644 --- a/reports/review-viewer.json +++ b/reports/review-viewer.json @@ -513,7 +513,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 150 + "file_count": 151 }, { "path": "evals", @@ -528,7 +528,7 @@ "file_count": 235 } ], - "file_count": 453, + "file_count": 454, "folder_count": 4, "distribution": [ { @@ -553,7 +553,7 @@ }, { "label": "scripts", - "value": 150 + "value": 151 }, { "label": "evals", @@ -683,7 +683,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 150 + "file_count": 151 }, { "path": "evals", @@ -1005,12 +1005,12 @@ "ok": true, "summary": { "reproducibility_ready": true, - "release_lock_ready": true, + "release_lock_ready": false, "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "3f56502035ddc8b26c0eca9e3e9d2e84013457336b16f4ce3d338b6b0cd96ef6", - "source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "evidence_bundle_sha256": "3ccbc3258857a4494e846fe9e517e1af1b1db24e5e531dfab1eea80411e791ed", + "source_contract_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2", "output_case_count": 5, "failure_disclosure_count": 3, @@ -1029,15 +1029,15 @@ "world_class_source_pass_count": 10, "world_class_source_blocked_count": 9, "public_claim_ready": false, - "public_claim_blocker_count": 4, + "public_claim_blocker_count": 5, "working_tree_dirty": true, - "changed_file_count": 2, - "source_tree_dirty": false, - "source_changed_file_count": 0, + "changed_file_count": 68, + "source_tree_dirty": true, + "source_changed_file_count": 8, "generated_tree_dirty": true, - "generated_changed_file_count": 2 + "generated_changed_file_count": 60 }, - "commit": "7512dc3309bfa95d4fc7e1188d1d4a62bd7c460b", + "commit": "ca23db4296e0216acca9ede65f9b00c3380c1180", "missing_artifacts": [], "limitations": [ "The git commit and dirty flags are generation-time context; release lock is blocked by source changes, while generated evidence artifacts are tracked separately.", @@ -1121,9 +1121,9 @@ "failures": [] }, "trust_security": { - "scanned_files": 242, - "script_count": 150, - "internal_module_count": 64, + "scanned_files": 243, + "script_count": 151, + "internal_module_count": 65, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -1141,8 +1141,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 242, - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "package_hash_file_count": 243, + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" }, "skill_atlas": { "skill_count": 12, @@ -1180,7 +1180,7 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2" }, "compatibility": { @@ -1240,7 +1240,7 @@ "ok": true, "summary": { "archive_present": true, - "archive_entry_count": 689, + "archive_entry_count": 690, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -1312,7 +1312,7 @@ { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "to": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" } ] }, diff --git a/reports/security_trust_report.json b/reports/security_trust_report.json index 94ac8d20..3e3072ec 100644 --- a/reports/security_trust_report.json +++ b/reports/security_trust_report.json @@ -2,9 +2,9 @@ "ok": true, "skill_dir": ".", "summary": { - "scanned_files": 242, - "script_count": 150, - "internal_module_count": 64, + "scanned_files": 243, + "script_count": 151, + "internal_module_count": 65, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -22,8 +22,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 242, - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "package_hash_file_count": 243, + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" }, "failures": [], "warnings": [], @@ -1908,6 +1908,20 @@ "network_urls": [], "network_hosts": [] }, + { + "path": "scripts/world_class_preflight_markdown.py", + "interface": "internal-module", + "interface_declared": true, + "interface_reason": "Imported by render_world_class_preflight.py to keep Markdown layout separate from preflight data assembly.", + "has_argparse": false, + "has_main_guard": false, + "uses_input": false, + "uses_network": false, + "uses_file_write": false, + "uses_subprocess": false, + "network_urls": [], + "network_hosts": [] + }, { "path": "scripts/world_class_provider_evidence.py", "interface": "internal-module", @@ -2181,7 +2195,7 @@ "checked_count": 86, "passed_count": 86, "failed_count": 0, - "skipped_count": 64, + "skipped_count": 65, "failed_scripts": [], "results": [ { @@ -3238,6 +3252,10 @@ "path": "scripts/world_class_preflight_layout.py", "reason": "internal module" }, + { + "path": "scripts/world_class_preflight_markdown.py", + "reason": "internal module" + }, { "path": "scripts/world_class_provider_evidence.py", "reason": "internal module" diff --git a/reports/security_trust_report.md b/reports/security_trust_report.md index 9303f48e..fe13108d 100644 --- a/reports/security_trust_report.md +++ b/reports/security_trust_report.md @@ -1,9 +1,9 @@ # Security Trust Report - OK: `True` -- Scanned files: `242` -- Scripts: `150` -- Internal script modules: `64` +- Scanned files: `243` +- Scripts: `151` +- Internal script modules: `65` - Secret findings: `0` - Network-capable scripts: `3` - Network policy covered scripts: `3` @@ -15,8 +15,8 @@ - CLI help smoke failures: `0` - Interactive scripts: `0` - Package hash scope: `source-contract-without-generated-reports` -- Package hash files: `242` -- Package SHA256: `7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4` +- Package hash files: `243` +- Package SHA256: `453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc` ## Failures @@ -195,6 +195,7 @@ | scripts/world_class_native_telemetry_evidence.py | internal-module | True | False | False | False | False | False | False | Imported by world_class_evidence_contract.py to validate native client telemetry evidence from metadata event rows. | | scripts/world_class_phase_queue.py | internal-module | True | False | False | False | False | False | False | Imported by prepare_world_class_submission_kit.py to group repair rows into an operator execution queue. | | scripts/world_class_preflight_layout.py | internal-module | True | False | False | False | False | False | False | Imported by render_world_class_preflight.py to keep preflight HTML layout out of data assembly. | +| scripts/world_class_preflight_markdown.py | internal-module | True | False | False | False | False | False | False | Imported by render_world_class_preflight.py to keep Markdown layout separate from preflight data assembly. | | scripts/world_class_provider_evidence.py | internal-module | True | False | False | False | False | False | False | Imported by world_class_evidence_contract.py to validate provider-backed holdout execution evidence from run rows. | | scripts/world_class_repair_checklist.py | internal-module | True | False | False | False | False | False | False | Shared by submission kit generation to turn readiness blockers into actionable repair rows. | | scripts/world_class_source_checks.py | internal-module | True | False | False | False | False | False | False | Imported by world-class evidence reports to keep source-evidence readiness checks consistent. | diff --git a/reports/skill-interpretation.html b/reports/skill-interpretation.html index 251a91ed..128f2bc2 100644 --- a/reports/skill-interpretation.html +++ b/reports/skill-interpretation.html @@ -940,7 +940,7 @@

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

-
资产分布Asset Distribution453项453 itemsSKILL.mdSKILL.mdREADME.mdREADME.mdagents/interface.yamlagents/interface.yamlmanifest.jsonmanifest.jsonreferencesreferencesscriptsscripts
资产分布图展示当前包体的文件和目录重心。The asset distribution chart shows where files and directories are concentrated.
+
资产分布Asset Distribution454项454 itemsSKILL.mdSKILL.mdREADME.mdREADME.mdagents/interface.yamlagents/interface.yamlmanifest.jsonmanifest.jsonreferencesreferencesscriptsscripts
资产分布图展示当前包体的文件和目录重心。The asset distribution chart shows where files and directories are concentrated.
diff --git a/reports/skill-interpretation.json b/reports/skill-interpretation.json index 45c55675..f976ed27 100644 --- a/reports/skill-interpretation.json +++ b/reports/skill-interpretation.json @@ -513,7 +513,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 150 + "file_count": 151 }, { "path": "evals", @@ -528,7 +528,7 @@ "file_count": 235 } ], - "file_count": 453, + "file_count": 454, "folder_count": 4, "distribution": [ { @@ -553,7 +553,7 @@ }, { "label": "scripts", - "value": 150 + "value": 151 }, { "label": "evals", @@ -687,7 +687,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 150 + "file_count": 151 }, { "path": "evals", @@ -1009,12 +1009,12 @@ "ok": true, "summary": { "reproducibility_ready": true, - "release_lock_ready": true, + "release_lock_ready": false, "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "3f56502035ddc8b26c0eca9e3e9d2e84013457336b16f4ce3d338b6b0cd96ef6", - "source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "evidence_bundle_sha256": "3ccbc3258857a4494e846fe9e517e1af1b1db24e5e531dfab1eea80411e791ed", + "source_contract_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2", "output_case_count": 5, "failure_disclosure_count": 3, @@ -1033,15 +1033,15 @@ "world_class_source_pass_count": 10, "world_class_source_blocked_count": 9, "public_claim_ready": false, - "public_claim_blocker_count": 4, + "public_claim_blocker_count": 5, "working_tree_dirty": true, - "changed_file_count": 2, - "source_tree_dirty": false, - "source_changed_file_count": 0, + "changed_file_count": 68, + "source_tree_dirty": true, + "source_changed_file_count": 8, "generated_tree_dirty": true, - "generated_changed_file_count": 2 + "generated_changed_file_count": 60 }, - "commit": "7512dc3309bfa95d4fc7e1188d1d4a62bd7c460b", + "commit": "ca23db4296e0216acca9ede65f9b00c3380c1180", "missing_artifacts": [], "limitations": [ "The git commit and dirty flags are generation-time context; release lock is blocked by source changes, while generated evidence artifacts are tracked separately.", @@ -1125,9 +1125,9 @@ "failures": [] }, "trust_security": { - "scanned_files": 242, - "script_count": 150, - "internal_module_count": 64, + "scanned_files": 243, + "script_count": 151, + "internal_module_count": 65, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -1145,8 +1145,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 242, - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "package_hash_file_count": 243, + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" }, "skill_atlas": { "skill_count": 12, @@ -1184,7 +1184,7 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2" }, "compatibility": { @@ -1244,7 +1244,7 @@ "ok": true, "summary": { "archive_present": true, - "archive_entry_count": 689, + "archive_entry_count": 690, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -1316,7 +1316,7 @@ { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "to": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" } ] }, diff --git a/reports/skill-os-2-review.md b/reports/skill-os-2-review.md index 7cc858d0..998d9fa6 100644 --- a/reports/skill-os-2-review.md +++ b/reports/skill-os-2-review.md @@ -135,7 +135,7 @@ Next move: add real client or installer permission enforcement integration. | Output Eval | `5` cases, with-skill pass rate `100`, baseline pass rate `0`, with file-backed, near-neighbor, boundary coverage, `10` local command-runner execution runs, `0` recorded fixture runs, `0` provider model-executed runs in root release evidence, `10` estimated token counts, provider runner v0 available, `5` blind A/B review pairs, a generated `reports/output_review_decisions.json` template, `0 / 5` reviewer decisions pending, `0` answer keys revealed, and `5` pending answers hidden | | Runtime Conformance | `5 / 5` targets passing | | Target Compiler | `5 / 5` compiled target contracts generated for OpenAI, Claude, generic, Agent Skills compatible, and VS Code / Copilot outputs, including target permission contracts and target-native behavior contracts | -| Trust | `0` secret findings, `1` pinned dependency file, `64` declared internal modules, `3 / 3` network-capable scripts covered by bounded host policy, `86 / 86` CLI help smoke checks passing across `150` scripts, source-contract hash scope explicit | +| Trust | `0` secret findings, `1` pinned dependency file, `65` declared internal modules, `3 / 3` network-capable scripts covered by bounded host policy, `86 / 86` CLI help smoke checks passing across `151` scripts, source-contract hash scope explicit | | Permission Governance | `3 / 3` required high-permission capabilities approved, `0` missing, `0` invalid, `0` expired | | Runtime Permission Probes | `4 / 4` target adapters probed, `0` native-enforcement adapters, `4` explicit metadata fallbacks, `4` residual risks retained for reviewer visibility | | Skill Atlas | `12` scanned skills, `1` actionable root skill, `1` telemetry report, `0` actionable route collisions, `0` actionable owner gaps, `0` actionable stale skills, `0` actionable drift signals, `24` scoped non-actionable issue signals retained for visibility | diff --git a/reports/skill-overview.html b/reports/skill-overview.html index be158927..4796f35e 100644 --- a/reports/skill-overview.html +++ b/reports/skill-overview.html @@ -940,7 +940,7 @@

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

-
资产分布Asset Distribution453项453 itemsSKILL.mdSKILL.mdREADME.mdREADME.mdagents/interface.yamlagents/interface.yamlmanifest.jsonmanifest.jsonreferencesreferencesscriptsscripts
资产分布图展示当前包体的文件和目录重心。The asset distribution chart shows where files and directories are concentrated.
+
资产分布Asset Distribution454项454 itemsSKILL.mdSKILL.mdREADME.mdREADME.mdagents/interface.yamlagents/interface.yamlmanifest.jsonmanifest.jsonreferencesreferencesscriptsscripts
资产分布图展示当前包体的文件和目录重心。The asset distribution chart shows where files and directories are concentrated.
路径Path作用Role类型Type
SKILL.mdSkill 入口文件Skill entrypoint文件file
README.md人类可读使用说明Human-readable usage guide文件file
agents/interface.yaml跨平台接口元数据Neutral interface metadata文件file
manifest.json生命周期与打包元数据Lifecycle and portability metadata文件file
references扩展指导与复用资料Extended guidance and reusable notes目录folder
scripts确定性脚本或本地工具Deterministic helpers or local tooling目录folder
evals触发与质量检查Trigger and quality checks目录folder
reports生成的证据与总结报告Generated evidence and overview artifacts目录folder
diff --git a/reports/skill-overview.json b/reports/skill-overview.json index 70d31c44..7fa377fb 100644 --- a/reports/skill-overview.json +++ b/reports/skill-overview.json @@ -512,7 +512,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 150 + "file_count": 151 }, { "path": "evals", @@ -527,7 +527,7 @@ "file_count": 235 } ], - "file_count": 453, + "file_count": 454, "folder_count": 4, "distribution": [ { @@ -552,7 +552,7 @@ }, { "label": "scripts", - "value": 150 + "value": 151 }, { "label": "evals", @@ -682,7 +682,7 @@ "path": "scripts", "label": "Deterministic helpers or local tooling", "kind": "folder", - "file_count": 150 + "file_count": 151 }, { "path": "evals", @@ -1004,12 +1004,12 @@ "ok": true, "summary": { "reproducibility_ready": true, - "release_lock_ready": true, + "release_lock_ready": false, "methodology_complete": true, "required_artifact_count": 25, "missing_artifact_count": 0, - "evidence_bundle_sha256": "3f56502035ddc8b26c0eca9e3e9d2e84013457336b16f4ce3d338b6b0cd96ef6", - "source_contract_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "evidence_bundle_sha256": "3ccbc3258857a4494e846fe9e517e1af1b1db24e5e531dfab1eea80411e791ed", + "source_contract_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2", "output_case_count": 5, "failure_disclosure_count": 3, @@ -1028,15 +1028,15 @@ "world_class_source_pass_count": 10, "world_class_source_blocked_count": 9, "public_claim_ready": false, - "public_claim_blocker_count": 4, + "public_claim_blocker_count": 5, "working_tree_dirty": true, - "changed_file_count": 2, - "source_tree_dirty": false, - "source_changed_file_count": 0, + "changed_file_count": 68, + "source_tree_dirty": true, + "source_changed_file_count": 8, "generated_tree_dirty": true, - "generated_changed_file_count": 2 + "generated_changed_file_count": 60 }, - "commit": "7512dc3309bfa95d4fc7e1188d1d4a62bd7c460b", + "commit": "ca23db4296e0216acca9ede65f9b00c3380c1180", "missing_artifacts": [], "limitations": [ "The git commit and dirty flags are generation-time context; release lock is blocked by source changes, while generated evidence artifacts are tracked separately.", @@ -1120,9 +1120,9 @@ "failures": [] }, "trust_security": { - "scanned_files": 242, - "script_count": 150, - "internal_module_count": 64, + "scanned_files": 243, + "script_count": 151, + "internal_module_count": 65, "secret_findings": 0, "dependency_files": [ "requirements-ci.txt" @@ -1140,8 +1140,8 @@ "help_smoke_failed_count": 0, "interactive_script_count": 0, "package_hash_scope": "source-contract-without-generated-reports", - "package_hash_file_count": 242, - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "package_hash_file_count": 243, + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" }, "skill_atlas": { "skill_count": 12, @@ -1179,7 +1179,7 @@ "trust_level": "local", "license": "MIT", "checksums": { - "package_sha256": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4", + "package_sha256": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc", "archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2" }, "compatibility": { @@ -1239,7 +1239,7 @@ "ok": true, "summary": { "archive_present": true, - "archive_entry_count": 689, + "archive_entry_count": 690, "archive_extracted": true, "entrypoint_loaded": true, "manifest_loaded": true, @@ -1311,7 +1311,7 @@ { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "to": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" } ] }, diff --git a/reports/skill_atlas.json b/reports/skill_atlas.json index efc9bb35..a0856b09 100644 --- a/reports/skill_atlas.json +++ b/reports/skill_atlas.json @@ -197,6 +197,7 @@ "scripts/world_class_native_telemetry_evidence.py", "scripts/world_class_phase_queue.py", "scripts/world_class_preflight_layout.py", + "scripts/world_class_preflight_markdown.py", "scripts/world_class_provider_evidence.py", "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", diff --git a/reports/skill_os2_audit.json b/reports/skill_os2_audit.json index 1977d87f..3f57b0e3 100644 --- a/reports/skill_os2_audit.json +++ b/reports/skill_os2_audit.json @@ -197,7 +197,7 @@ "key": "trust-security", "label": "Trust Security", "status": "pass", - "current": "secrets 0; scripts 150; help failures 0", + "current": "secrets 0; scripts 151; help failures 0", "target": "Secrets, scripts, dependencies, permissions, and package hash are reviewable", "evidence": [ { diff --git a/reports/skill_os2_audit.md b/reports/skill_os2_audit.md index f5a479d6..117b3fc8 100644 --- a/reports/skill_os2_audit.md +++ b/reports/skill_os2_audit.md @@ -23,7 +23,7 @@ Generated at: `2026-06-13` | Human Adjudication | human-required | 0/5 decisions; pending 5 | Real reviewer decisions, blind-review attestation, and integrity fingerprints recorded before claiming output review completion | Record real A/B choices, reviewer metadata, and blind-review attestation, then regenerate adjudication. | | Benchmark Reproducibility | pass | artifacts 25; missing 0; failures 3 | Public methodology, reproducible commands, required artifacts, and failure disclosure are machine-checkable | Keep the manifest current with every benchmark, package, and release evidence change. | | Runtime Conformance | pass | 5/5 targets pass | Target package structure, metadata, relative paths, and degradation notes pass | Keep target conformance fixtures updated as platform contracts change. | -| Trust Security | pass | secrets 0; scripts 150; 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 151; help failures 0 | Secrets, scripts, dependencies, permissions, and package hash are reviewable | Keep high-permission approvals scoped, expiring, and target-mapped. | | Permission Metadata | pass | 4/4 target probes pass; metadata fallback 4; installer enforcement 4 | Packaged adapters expose explicit permission metadata, residual risks, and installer enforcement evidence when available | Preserve residual-risk notes until real native enforcement exists. | | Native Permission Enforcement | external-required | native-enforced targets 0; installer-enforced targets 4 | At least one target/client enforces approved permissions at runtime | Integrate a real target-client or external installer runtime guard before claiming native permission enforcement. | | Skill Atlas | pass | 12 skills; actionable collisions 0 | Workspace catalog, route overlap, stale/owner gaps, drift, and no-route opportunities | Feed real drift data into Atlas once client telemetry is installed. | diff --git a/reports/skill_os2_coverage.json b/reports/skill_os2_coverage.json index 22aefe68..b9bea48b 100644 --- a/reports/skill_os2_coverage.json +++ b/reports/skill_os2_coverage.json @@ -1,7 +1,7 @@ { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", "summary": { "item_count": 21, @@ -130,7 +130,7 @@ "label": "Trust Security", "status": "pass", "objective": "Scripts, dependencies, permissions, secrets, and package hash are reviewable for team distribution.", - "current": "150 scripts; secrets 0; help failures 0", + "current": "151 scripts; secrets 0; help failures 0", "command": "python3 scripts/yao.py trust .", "test": "python3 tests/verify_trust_check.py", "evidence": [ diff --git a/reports/skill_os2_coverage.md b/reports/skill_os2_coverage.md index 35c0cfac..b9b6b8b7 100644 --- a/reports/skill_os2_coverage.md +++ b/reports/skill_os2_coverage.md @@ -1,6 +1,6 @@ # Skill OS 2.0 Blueprint Coverage -Generated at: `2026-06-13` +Generated at: `2026-06-17` ## Summary @@ -26,7 +26,7 @@ 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` | 150 scripts; secrets 0; help failures 0 | `python3 scripts/yao.py trust .` | `python3 tests/verify_trust_check.py` | +| Trust Security | `pass` | 151 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 689; install failures 0 | `python3 scripts/yao.py package . --platform openai --platform claude --platform generic --platform vscode --output-dir dist --zip && python3 scripts/yao.py registry-audit .` | `python3 tests/verify_registry_audit.py` | | Review Studio | `pass` | 16 gates; decision review; warnings 3 | `python3 scripts/yao.py review-studio .` | `python3 tests/verify_review_studio.py` | diff --git a/reports/skillops/daily/2026-06-16.json b/reports/skillops/daily/2026-06-16.json index 832b6e27..41db97f9 100644 --- a/reports/skillops/daily/2026-06-16.json +++ b/reports/skillops/daily/2026-06-16.json @@ -1,7 +1,7 @@ { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-16T19:29:04Z", + "generated_at": "2026-06-16T20:46:42Z", "skill_dir": ".", "decision": "proposal-review", "source_supplied": false, diff --git a/reports/skillops/daily/2026-06-16.md b/reports/skillops/daily/2026-06-16.md index 17ff75d3..3298bbb4 100644 --- a/reports/skillops/daily/2026-06-16.md +++ b/reports/skillops/daily/2026-06-16.md @@ -1,6 +1,6 @@ # Daily SkillOps Report -Generated at: `2026-06-16T19:29:04Z` +Generated at: `2026-06-16T20:46:42Z` ## Summary diff --git a/reports/skillops/daily/2026-06-17.json b/reports/skillops/daily/2026-06-17.json index 07080fcd..7ee010c4 100644 --- a/reports/skillops/daily/2026-06-17.json +++ b/reports/skillops/daily/2026-06-17.json @@ -14,7 +14,7 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true, "writes_source_files": false, "auto_patch_enabled": false, @@ -31,7 +31,7 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true, "writes_source_files": false, "auto_patch_enabled": false, @@ -480,7 +480,7 @@ "local_blueprint_ready": true, "public_world_class_ready": false, "world_class_pending_count": 4, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true }, "actions": [ diff --git a/reports/skillops/daily/2026-06-17.md b/reports/skillops/daily/2026-06-17.md index 65caad51..5d6c937a 100644 --- a/reports/skillops/daily/2026-06-17.md +++ b/reports/skillops/daily/2026-06-17.md @@ -14,7 +14,7 @@ Generated at: `2026-06-17` - local blueprint ready: `true` - public world-class ready: `false` - world-class pending: `4` -- release lock ready: `true` +- release lock ready: `false` - evidence consistency ok: `true` This report is an operations cockpit for explicit-source SkillOps. It does not scan private logs, write source files, apply patches, or count as world-class external or human evidence. diff --git a/reports/skillops/weekly/2026-W25.json b/reports/skillops/weekly/2026-W25.json index 8f21344c..a791f713 100644 --- a/reports/skillops/weekly/2026-W25.json +++ b/reports/skillops/weekly/2026-W25.json @@ -1,7 +1,7 @@ { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-17", + "generated_at": "2026-06-16T20:46:42Z", "skill_dir": ".", "decision": "curator-review", "week_id": "2026-W25", @@ -15,7 +15,7 @@ "top_score": 88, "skill_count": 12, "actionable_portfolio_issue_count": 0, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true, "public_world_class_ready": false, "world_class_pending_count": 4, @@ -35,7 +35,7 @@ "top_score": 88, "skill_count": 12, "actionable_portfolio_issue_count": 0, - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true, "public_world_class_ready": false, "world_class_pending_count": 4, @@ -288,7 +288,7 @@ "no_route_opportunity_count": 0 }, "release_state": { - "release_lock_ready": true, + "release_lock_ready": false, "evidence_consistency_ok": true, "public_world_class_ready": false, "world_class_pending_count": 4 diff --git a/reports/skillops/weekly/2026-W25.md b/reports/skillops/weekly/2026-W25.md index a52113b7..8c701433 100644 --- a/reports/skillops/weekly/2026-W25.md +++ b/reports/skillops/weekly/2026-W25.md @@ -1,6 +1,6 @@ # Weekly SkillOps Curator Report -Generated at: `2026-06-17` +Generated at: `2026-06-16T20:46:42Z` Week: `2026-W25` ## Summary @@ -13,7 +13,7 @@ Week: `2026-W25` - top_score: `88` - skill_count: `12` - actionable_portfolio_issue_count: `0` -- release_lock_ready: `True` +- release_lock_ready: `False` - evidence_consistency_ok: `True` - public_world_class_ready: `False` - world_class_pending_count: `4` diff --git a/reports/upgrade_check.json b/reports/upgrade_check.json index bc1846f4..9ea63fbf 100644 --- a/reports/upgrade_check.json +++ b/reports/upgrade_check.json @@ -75,7 +75,7 @@ { "field": "package_sha256", "from": "0000000000000000000000000000000000000000000000000000000000000000", - "to": "7fa19df8aebad9a73567ce9519f2d391d3c8f8b9b5a248ee9bc75d5066e219e4" + "to": "453ca3f4c54651bc0edc917049ea0fa28064edca66083769bf11b13f01acb4fc" } ] }, diff --git a/reports/world_class_claim_guard.json b/reports/world_class_claim_guard.json index fe24ca0b..22da9491 100644 --- a/reports/world_class_claim_guard.json +++ b/reports/world_class_claim_guard.json @@ -1,7 +1,7 @@ { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", "summary": { "ledger_ready_to_claim_world_class": false, diff --git a/reports/world_class_claim_guard.md b/reports/world_class_claim_guard.md index 5315b99a..d2d4d668 100644 --- a/reports/world_class_claim_guard.md +++ b/reports/world_class_claim_guard.md @@ -1,6 +1,6 @@ # World-Class Claim Guard -Generated at: `2026-06-13` +Generated at: `2026-06-17` ## Summary diff --git a/reports/world_class_evidence_intake.json b/reports/world_class_evidence_intake.json index 2d99eb6c..09c59584 100644 --- a/reports/world_class_evidence_intake.json +++ b/reports/world_class_evidence_intake.json @@ -1,7 +1,7 @@ { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", "summary": { "schema_present": true, diff --git a/reports/world_class_evidence_intake.md b/reports/world_class_evidence_intake.md index be6ef919..fc622f51 100644 --- a/reports/world_class_evidence_intake.md +++ b/reports/world_class_evidence_intake.md @@ -1,6 +1,6 @@ # World-Class Evidence Intake -Generated at: `2026-06-13` +Generated at: `2026-06-17` ## Summary diff --git a/reports/world_class_evidence_ledger.json b/reports/world_class_evidence_ledger.json index 5628fc25..cab44e97 100644 --- a/reports/world_class_evidence_ledger.json +++ b/reports/world_class_evidence_ledger.json @@ -1,7 +1,7 @@ { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", "decision": "evidence-pending", "ready_to_claim_world_class": false, diff --git a/reports/world_class_evidence_ledger.md b/reports/world_class_evidence_ledger.md index 67e25450..82aa5c4f 100644 --- a/reports/world_class_evidence_ledger.md +++ b/reports/world_class_evidence_ledger.md @@ -1,6 +1,6 @@ # World-Class Evidence Ledger -Generated at: `2026-06-13` +Generated at: `2026-06-17` ## Summary diff --git a/reports/world_class_evidence_plan.json b/reports/world_class_evidence_plan.json index 6614fab9..bbb6e41e 100644 --- a/reports/world_class_evidence_plan.json +++ b/reports/world_class_evidence_plan.json @@ -1,7 +1,7 @@ { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", "summary": { "audit_decision": "continue-iteration", diff --git a/reports/world_class_evidence_plan.md b/reports/world_class_evidence_plan.md index 9477dab5..5b43964f 100644 --- a/reports/world_class_evidence_plan.md +++ b/reports/world_class_evidence_plan.md @@ -1,6 +1,6 @@ # World-Class Evidence Plan -Generated at: `2026-06-13` +Generated at: `2026-06-17` ## Summary diff --git a/reports/world_class_evidence_preflight.html b/reports/world_class_evidence_preflight.html index 3ee18e20..1cdcc21f 100644 --- a/reports/world_class_evidence_preflight.html +++ b/reports/world_class_evidence_preflight.html @@ -21,10 +21,10 @@ h3 { margin:4px 0 10px; font-size:22px; letter-spacing:0; } h4 { margin:0 0 8px; font-size:16px; letter-spacing:0; } .lede { max-width:820px; color:var(--muted); font-size:20px; } - .stats { display:grid; grid-template-columns:repeat(6, minmax(0,1fr)); gap:12px; margin:26px 0 0; } - .stats article, .panel, .evidence-card, .check-row, .repair-row { border:1px solid var(--line); border-radius:8px; background:#fff; } + .stats { display:grid; grid-template-columns:repeat(7, minmax(0,1fr)); gap:12px; margin:26px 0 0; } + .stats article, .panel, .evidence-card, .check-row, .repair-row, .phase-row { border:1px solid var(--line); border-radius:8px; background:#fff; } .stats article { padding:16px; } - .stats span, .muted, .evidence-card header span, .check-row span, .repair-row span { color:var(--muted); } + .stats span, .muted, .evidence-card header span, .check-row span, .repair-row span, .phase-row span { color:var(--muted); } .stats strong { display:block; color:var(--ink); font-size:28px; line-height:1.15; overflow-wrap:anywhere; } .section { padding:32px 0; border-bottom:1px solid var(--line); } .two-col { display:grid; grid-template-columns:minmax(0,.45fr) minmax(0,1fr); gap:18px; align-items:start; } @@ -40,10 +40,12 @@ .role-card p { margin:0 0 8px; } .evidence-grid { display:grid; gap:18px; } .evidence-card { padding:20px; min-width:0; } + .phase-grid { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:14px; margin-bottom:24px; } + .phase-row { padding:18px; min-width:0; } .evidence-card.blocked { border-left:4px solid var(--block); } - .evidence-card.ready-for-human-review, .evidence-card.ready-to-collect, .check-row.human-required, .check-row.external-required, .check-row.missing, .check-row.blocked, .repair-row.blocked { border-left:4px solid var(--warn); } - .evidence-card.ready-for-submission, .check-row.pass, .repair-row.ready { border-left:4px solid var(--pass); } - .meta, .check-row dl, .repair-row dl { display:grid; grid-template-columns:96px minmax(0,1fr); gap:8px 12px; } + .evidence-card.ready-for-human-review, .evidence-card.ready-to-collect, .check-row.human-required, .check-row.external-required, .check-row.missing, .check-row.blocked, .repair-row.blocked, .phase-row.blocked { border-left:4px solid var(--warn); } + .evidence-card.ready-for-submission, .check-row.pass, .repair-row.ready, .phase-row.ready { border-left:4px solid var(--pass); } + .meta, .check-row dl, .repair-row dl, .phase-row dl { display:grid; grid-template-columns:96px minmax(0,1fr); gap:8px 12px; } dt { color:var(--ink); } dd { margin:0; min-width:0; overflow-wrap:anywhere; } code { font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size:13px; overflow-wrap:anywhere; } @@ -56,7 +58,7 @@ .check-section { margin-top:16px; } .notice { background:var(--soft); border-left:4px solid var(--ink); padding:16px; border-radius:8px; } li { overflow-wrap:anywhere; } - @media (max-width:820px) { .stats, .two-col, .check-grid, .repair-grid, .role-grid { grid-template-columns:1fr; } h1 { font-size:38px; } .topbar-inner { align-items:flex-start; flex-direction:column; } } + @media (max-width:820px) { .stats, .two-col, .check-grid, .repair-grid, .role-grid, .phase-grid { grid-template-columns:1fr; } h1 { font-size:38px; } .topbar-inner { align-items:flex-start; flex-direction:column; } } @@ -66,7 +68,7 @@ Evidence Collection

World-Class Evidence Preflight

This operator view shows which external and human evidence is still blocked, which commands prepare editable submission drafts, and why preflight never counts as accepted evidence.

-
Decisioncollection-preflight-blocked
Pending4
Ready1
Blocked3
Source10/19
Repairs13/13
+
Decisioncollection-preflight-blocked
Pending4
Ready1
Blocked3
Source10/19
Repairs13/13
Phases2/2
@@ -99,7 +101,44 @@
-

Evidence Queue

+
+

Phase Queue

+

Repair rows are grouped into execution phases so operators can clear the first blocker before moving to later source collection. Phase queue rows remain procedural and never count as accepted evidence.

+
+
+
+ #20 · blocked +

Unblock access

+
+
+
Phase
unblock-access
+
Rows
4 / 4 blocked
+
Owners
Browser/Chrome/IDE/provider client integrator, human reviewer, operator with provider credentials, target client or installer integrator
+
Evidence
human-adjudication, native-client-telemetry, native-permission-enforcement, provider-holdout
+
Next
Assign a real reviewer identity before claiming human adjudication.
+
Verify
python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
+
Counts
does not count as completion
+
+
+ +
+
+ #40 · blocked +

Collect source

+
+
+
Phase
collect-source
+
Rows
9 / 9 blocked
+
Owners
Browser/Chrome/IDE/provider client integrator, human reviewer, operator with provider credentials, target client or installer integrator
+
Evidence
human-adjudication, native-client-telemetry, native-permission-enforcement, provider-holdout
+
Next
Set reviewer_attestation only after choices are completed before opening the answer key.
+
Verify
python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions
+
Counts
does not count as completion
+
+
+
+

Evidence Queue

+
external · blocked @@ -959,7 +998,8 @@
  • 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>/
  • Install the generated native messaging manifest for the real client and send at least one accepted skill_activation or skill_output event.
  • python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl
  • python3 scripts/yao.py skill-atlas --workspace-root .
  • python3 scripts/yao.py skill-os2-audit . --generated-at <YYYY-MM-DD>
  • Copy evidence/world_class/templates/native-client-telemetry.intake.json to evidence/world_class/submissions/native-client-telemetry.json and fill only real evidence fields.
  • python3 scripts/yao.py world-class-intake . --submissions-dir evidence/world_class/submissions
-
+ +

Safety Boundary

  • Environment variables are displayed only as set or not-set; secret values are never printed.
  • Human-required and external-required states are operator work, not accepted evidence.
  • The world-class ledger remains the only source of truth for ready_to_claim_world_class.
diff --git a/reports/world_class_evidence_preflight.json b/reports/world_class_evidence_preflight.json index 22c57f18..80f304fe 100644 --- a/reports/world_class_evidence_preflight.json +++ b/reports/world_class_evidence_preflight.json @@ -28,6 +28,13 @@ "next_repair_owner": "human reviewer", "next_repair_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", "repair_counts_as_completion": false, + "phase_queue_count": 2, + "phase_queue_blocked_count": 2, + "phase_queue_row_count": 13, + "phase_queue_next_phase": "unblock-access", + "phase_queue_next_action_id": "human-adjudication-precheck-human-reviewer", + "phase_queue_next_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "phase_queue_counts_as_completion": false, "pending_count": 4, "ready_to_claim_world_class": false, "credential_value_exposed": false, @@ -238,6 +245,93 @@ "source": "source_checklist", "counts_as_completion": false } + ], + "phase_queue": [ + { + "phase": "unblock-access", + "label": "Unblock access", + "priority": 20, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "operator with provider credentials" + ], + "evidence_keys": [ + "provider-holdout" + ], + "next_action_id": "provider-holdout-precheck-openai-api-key", + "next_action": "Set OPENAI_API_KEY in the operator shell; never commit or print the value.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "provider-holdout-precheck-openai-api-key", + "evidence_key": "provider-holdout", + "repair_type": "precheck", + "target": "openai-api-key", + "phase": "unblock-access", + "priority": 20, + "owner": "operator with provider credentials", + "status": "blocked", + "blocking_reason": "Required env precheck is missing.", + "next_action": "Set OPENAI_API_KEY in the operator shell; never commit or print the value.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + } + ] + }, + { + "phase": "collect-source", + "label": "Collect source", + "priority": 40, + "status": "blocked", + "blocked_count": 2, + "row_count": 2, + "owners": [ + "operator with provider credentials" + ], + "evidence_keys": [ + "provider-holdout" + ], + "next_action_id": "provider-holdout-source-check-model_executed_count", + "next_action": "Run provider-backed output-exec with real credentials.", + "verification_command": "python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "provider-holdout-source-check-model_executed_count", + "evidence_key": "provider-holdout", + "repair_type": "source-check", + "target": "model_executed_count", + "phase": "collect-source", + "priority": 40, + "owner": "operator with provider credentials", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Run provider-backed output-exec with real credentials.", + "verification_command": "python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "provider-holdout-source-check-token_observed_count", + "evidence_key": "provider-holdout", + "repair_type": "source-check", + "target": "token_observed_count", + "phase": "collect-source", + "priority": 40, + "owner": "operator with provider credentials", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Provider execution should return non-estimated token usage.", + "verification_command": "python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + } + ] + } ] }, { @@ -547,6 +641,138 @@ "source": "source_checklist", "counts_as_completion": false } + ], + "phase_queue": [ + { + "phase": "unblock-access", + "label": "Unblock access", + "priority": 20, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "human reviewer" + ], + "evidence_keys": [ + "human-adjudication" + ], + "next_action_id": "human-adjudication-precheck-human-reviewer", + "next_action": "Assign a real reviewer identity before claiming human adjudication.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "human-adjudication-precheck-human-reviewer", + "evidence_key": "human-adjudication", + "repair_type": "precheck", + "target": "human-reviewer", + "phase": "unblock-access", + "priority": 20, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Required human precheck is human-required.", + "next_action": "Assign a real reviewer identity before claiming human adjudication.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + } + ] + }, + { + "phase": "collect-source", + "label": "Collect source", + "priority": 40, + "status": "blocked", + "blocked_count": 5, + "row_count": 5, + "owners": [ + "human reviewer" + ], + "evidence_keys": [ + "human-adjudication" + ], + "next_action_id": "human-adjudication-source-check-blind_review_attested", + "next_action": "Set reviewer_attestation only after choices are completed before opening the answer key.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "human-adjudication-source-check-blind_review_attested", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "blind_review_attested", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value False does not satisfy 'true'.", + "next_action": "Set reviewer_attestation only after choices are completed before opening the answer key.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-judgment_count", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "judgment_count", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '==pair_count'.", + "next_action": "Every pair needs one valid human judgment.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-pending_count", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "pending_count", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value 5 does not satisfy '==0'.", + "next_action": "Record a reviewer choice and reason for every pair.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-ready_for_human_evidence", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "ready_for_human_evidence", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value False does not satisfy 'true'.", + "next_action": "Complete all reviewer decisions with metadata and rationale, plus blind-review attestation and integrity fingerprints.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-reviewer_metadata_present", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "reviewer_metadata_present", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value False does not satisfy 'true'.", + "next_action": "Record reviewer and reviewed_at before adjudication can count.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + } + ] + } ] }, { @@ -713,6 +939,78 @@ "source": "source_checklist", "counts_as_completion": false } + ], + "phase_queue": [ + { + "phase": "unblock-access", + "label": "Unblock access", + "priority": 20, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "target client or installer integrator" + ], + "evidence_keys": [ + "native-permission-enforcement" + ], + "next_action_id": "native-permission-enforcement-precheck-native-guard", + "next_action": "Attach a real target-client or external installer runtime guard; metadata fallback is not enough.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "native-permission-enforcement-precheck-native-guard", + "evidence_key": "native-permission-enforcement", + "repair_type": "precheck", + "target": "native-guard", + "phase": "unblock-access", + "priority": 20, + "owner": "target client or installer integrator", + "status": "blocked", + "blocking_reason": "Required external precheck is external-required.", + "next_action": "Attach a real target-client or external installer runtime guard; metadata fallback is not enough.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + } + ] + }, + { + "phase": "collect-source", + "label": "Collect source", + "priority": 40, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "target client or installer integrator" + ], + "evidence_keys": [ + "native-permission-enforcement" + ], + "next_action_id": "native-permission-enforcement-source-check-native_enforcement_count", + "next_action": "Collect real target-client or external runtime guard proof.", + "verification_command": "python3 scripts/yao.py runtime-permissions . --package-dir dist && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "native-permission-enforcement-source-check-native_enforcement_count", + "evidence_key": "native-permission-enforcement", + "repair_type": "source-check", + "target": "native_enforcement_count", + "phase": "collect-source", + "priority": 40, + "owner": "target client or installer integrator", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Collect real target-client or external runtime guard proof.", + "verification_command": "python3 scripts/yao.py runtime-permissions . --package-dir dist && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + } + ] + } ] }, { @@ -878,6 +1176,78 @@ "source": "source_checklist", "counts_as_completion": false } + ], + "phase_queue": [ + { + "phase": "unblock-access", + "label": "Unblock access", + "priority": 20, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "Browser/Chrome/IDE/provider client integrator" + ], + "evidence_keys": [ + "native-client-telemetry" + ], + "next_action_id": "native-client-telemetry-precheck-external-client", + "next_action": "Install a real Browser, Chrome, IDE, or provider client that emits metadata-only events.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "native-client-telemetry-precheck-external-client", + "evidence_key": "native-client-telemetry", + "repair_type": "precheck", + "target": "external-client", + "phase": "unblock-access", + "priority": 20, + "owner": "Browser/Chrome/IDE/provider client integrator", + "status": "blocked", + "blocking_reason": "Required external precheck is external-required.", + "next_action": "Install a real Browser, Chrome, IDE, or provider client that emits metadata-only events.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + } + ] + }, + { + "phase": "collect-source", + "label": "Collect source", + "priority": 40, + "status": "blocked", + "blocked_count": 1, + "row_count": 1, + "owners": [ + "Browser/Chrome/IDE/provider client integrator" + ], + "evidence_keys": [ + "native-client-telemetry" + ], + "next_action_id": "native-client-telemetry-source-check-external_source_events", + "next_action": "Import at least one metadata-only event from a real client.", + "verification_command": "python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "native-client-telemetry-source-check-external_source_events", + "evidence_key": "native-client-telemetry", + "repair_type": "source-check", + "target": "external_source_events", + "phase": "collect-source", + "priority": 40, + "owner": "Browser/Chrome/IDE/provider client integrator", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Import at least one metadata-only event from a real client.", + "verification_command": "python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + } + ] + } ] } ], @@ -1439,6 +1809,255 @@ "counts_as_completion": false } ], + "phase_queue": [ + { + "phase": "unblock-access", + "label": "Unblock access", + "priority": 20, + "status": "blocked", + "blocked_count": 4, + "row_count": 4, + "owners": [ + "Browser/Chrome/IDE/provider client integrator", + "human reviewer", + "operator with provider credentials", + "target client or installer integrator" + ], + "evidence_keys": [ + "human-adjudication", + "native-client-telemetry", + "native-permission-enforcement", + "provider-holdout" + ], + "next_action_id": "human-adjudication-precheck-human-reviewer", + "next_action": "Assign a real reviewer identity before claiming human adjudication.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "human-adjudication-precheck-human-reviewer", + "evidence_key": "human-adjudication", + "repair_type": "precheck", + "target": "human-reviewer", + "phase": "unblock-access", + "priority": 20, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Required human precheck is human-required.", + "next_action": "Assign a real reviewer identity before claiming human adjudication.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + }, + { + "action_id": "native-client-telemetry-precheck-external-client", + "evidence_key": "native-client-telemetry", + "repair_type": "precheck", + "target": "external-client", + "phase": "unblock-access", + "priority": 20, + "owner": "Browser/Chrome/IDE/provider client integrator", + "status": "blocked", + "blocking_reason": "Required external precheck is external-required.", + "next_action": "Install a real Browser, Chrome, IDE, or provider client that emits metadata-only events.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + }, + { + "action_id": "native-permission-enforcement-precheck-native-guard", + "evidence_key": "native-permission-enforcement", + "repair_type": "precheck", + "target": "native-guard", + "phase": "unblock-access", + "priority": 20, + "owner": "target client or installer integrator", + "status": "blocked", + "blocking_reason": "Required external precheck is external-required.", + "next_action": "Attach a real target-client or external installer runtime guard; metadata fallback is not enough.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + }, + { + "action_id": "provider-holdout-precheck-openai-api-key", + "evidence_key": "provider-holdout", + "repair_type": "precheck", + "target": "openai-api-key", + "phase": "unblock-access", + "priority": 20, + "owner": "operator with provider credentials", + "status": "blocked", + "blocking_reason": "Required env precheck is missing.", + "next_action": "Set OPENAI_API_KEY in the operator shell; never commit or print the value.", + "verification_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "prechecks", + "counts_as_completion": false + } + ] + }, + { + "phase": "collect-source", + "label": "Collect source", + "priority": 40, + "status": "blocked", + "blocked_count": 9, + "row_count": 9, + "owners": [ + "Browser/Chrome/IDE/provider client integrator", + "human reviewer", + "operator with provider credentials", + "target client or installer integrator" + ], + "evidence_keys": [ + "human-adjudication", + "native-client-telemetry", + "native-permission-enforcement", + "provider-holdout" + ], + "next_action_id": "human-adjudication-source-check-blind_review_attested", + "next_action": "Set reviewer_attestation only after choices are completed before opening the answer key.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "counts_as_completion": false, + "rows": [ + { + "action_id": "human-adjudication-source-check-blind_review_attested", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "blind_review_attested", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value False does not satisfy 'true'.", + "next_action": "Set reviewer_attestation only after choices are completed before opening the answer key.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-judgment_count", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "judgment_count", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '==pair_count'.", + "next_action": "Every pair needs one valid human judgment.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-pending_count", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "pending_count", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value 5 does not satisfy '==0'.", + "next_action": "Record a reviewer choice and reason for every pair.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-ready_for_human_evidence", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "ready_for_human_evidence", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value False does not satisfy 'true'.", + "next_action": "Complete all reviewer decisions with metadata and rationale, plus blind-review attestation and integrity fingerprints.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "human-adjudication-source-check-reviewer_metadata_present", + "evidence_key": "human-adjudication", + "repair_type": "source-check", + "target": "reviewer_metadata_present", + "phase": "collect-source", + "priority": 40, + "owner": "human reviewer", + "status": "blocked", + "blocking_reason": "Current value False does not satisfy 'true'.", + "next_action": "Record reviewer and reviewed_at before adjudication can count.", + "verification_command": "python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "native-client-telemetry-source-check-external_source_events", + "evidence_key": "native-client-telemetry", + "repair_type": "source-check", + "target": "external_source_events", + "phase": "collect-source", + "priority": 40, + "owner": "Browser/Chrome/IDE/provider client integrator", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Import at least one metadata-only event from a real client.", + "verification_command": "python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "native-permission-enforcement-source-check-native_enforcement_count", + "evidence_key": "native-permission-enforcement", + "repair_type": "source-check", + "target": "native_enforcement_count", + "phase": "collect-source", + "priority": 40, + "owner": "target client or installer integrator", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Collect real target-client or external runtime guard proof.", + "verification_command": "python3 scripts/yao.py runtime-permissions . --package-dir dist && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "provider-holdout-source-check-model_executed_count", + "evidence_key": "provider-holdout", + "repair_type": "source-check", + "target": "model_executed_count", + "phase": "collect-source", + "priority": 40, + "owner": "operator with provider credentials", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Run provider-backed output-exec with real credentials.", + "verification_command": "python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + }, + { + "action_id": "provider-holdout-source-check-token_observed_count", + "evidence_key": "provider-holdout", + "repair_type": "source-check", + "target": "token_observed_count", + "phase": "collect-source", + "priority": 40, + "owner": "operator with provider credentials", + "status": "blocked", + "blocking_reason": "Current value 0 does not satisfy '>0'.", + "next_action": "Provider execution should return non-estimated token usage.", + "verification_command": "python3 scripts/yao.py output-exec --provider-runner openai --timeout-seconds 60 && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions", + "source": "source_checklist", + "counts_as_completion": false + } + ] + } + ], "submissions": { "directory": "evidence/world_class/submissions", "commands": { diff --git a/reports/world_class_evidence_preflight.md b/reports/world_class_evidence_preflight.md index 958e56f7..d7343ba0 100644 --- a/reports/world_class_evidence_preflight.md +++ b/reports/world_class_evidence_preflight.md @@ -12,8 +12,12 @@ Generated at: `2026-06-17` - collection blocked: `3` - source checks: `10` pass / `19` total - repair rows: `13` blocked / `13` total +- phase queue: `2` blocked / `2` phases +- phase queue rows: `13` - next repair action: `human-adjudication-precheck-human-reviewer` - next repair owner: `human reviewer` +- next phase: `unblock-access` +- next phase action: `human-adjudication-precheck-human-reviewer` This preflight report checks whether an operator can start collecting the remaining external or human evidence. It never accepts evidence, prints secret values, or changes the world-class ledger. @@ -40,6 +44,15 @@ Generate the submission kit after the real provider, human, native-permission, o `submission-ref` rows are the only checklist rows expected in `artifact_refs`; `supporting-evidence` rows stay available for audit context and reviewer traceability. +## Phase Queue + +Phase queue rows group the same repair checklist into operator execution phases. They are procedural guidance only and do not count as completion evidence. + +| Priority | Phase | Status | Rows | Owners | Evidence | Verify | Next action | +| --- | --- | --- | --- | --- | --- | --- | --- | +| `20` | `unblock-access` | `blocked` | 4 / 4 blocked | Browser/Chrome/IDE/provider client integrator, human reviewer, operator with provider credentials, target client or installer integrator | human-adjudication, native-client-telemetry, native-permission-enforcement, provider-holdout | `python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions` | Assign a real reviewer identity before claiming human adjudication. | +| `40` | `collect-source` | `blocked` | 9 / 9 blocked | Browser/Chrome/IDE/provider client integrator, human reviewer, operator with provider credentials, target client or installer integrator | human-adjudication, native-client-telemetry, native-permission-enforcement, provider-holdout | `python3 scripts/yao.py output-review && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions` | Set reviewer_attestation only after choices are completed before opening the answer key. | + ## Evidence Items | Evidence | Status | Intake | Review | Next action | diff --git a/reports/world_class_operator_runbook.json b/reports/world_class_operator_runbook.json index 7596531a..24e2bd73 100644 --- a/reports/world_class_operator_runbook.json +++ b/reports/world_class_operator_runbook.json @@ -1,7 +1,7 @@ { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", "summary": { "evidence_item_count": 4, diff --git a/reports/world_class_operator_runbook.md b/reports/world_class_operator_runbook.md index 7bcee261..833c4d2e 100644 --- a/reports/world_class_operator_runbook.md +++ b/reports/world_class_operator_runbook.md @@ -1,6 +1,6 @@ # World-Class Operator Runbook -Generated at: `2026-06-13` +Generated at: `2026-06-17` ## Summary diff --git a/reports/world_class_submission_review.json b/reports/world_class_submission_review.json index 70449e25..3c09e53d 100644 --- a/reports/world_class_submission_review.json +++ b/reports/world_class_submission_review.json @@ -1,7 +1,7 @@ { "schema_version": "1.0", "ok": true, - "generated_at": "2026-06-13", + "generated_at": "2026-06-17", "skill_dir": ".", "decision": "awaiting-submissions", "ready_to_claim_world_class": false, diff --git a/reports/world_class_submission_review.md b/reports/world_class_submission_review.md index b54fcbb7..2dda5c01 100644 --- a/reports/world_class_submission_review.md +++ b/reports/world_class_submission_review.md @@ -1,6 +1,6 @@ # World-Class Submission Review -Generated at: `2026-06-13` +Generated at: `2026-06-17` ## Summary diff --git a/scripts/render_world_class_preflight.py b/scripts/render_world_class_preflight.py index 3d3f092f..c248808a 100644 --- a/scripts/render_world_class_preflight.py +++ b/scripts/render_world_class_preflight.py @@ -12,6 +12,8 @@ from render_world_class_evidence_intake import build_intake from render_world_class_evidence_ledger import build_ledger from render_world_class_submission_review import build_submission_review from world_class_evidence_contract import rel_path +from world_class_phase_queue import build_phase_queue, summarize_phase_queue +from world_class_preflight_markdown import render_markdown from world_class_preflight_layout import render_html from world_class_repair_checklist import build_preflight_repair_checklist, summarize_repair_checklist from world_class_source_checks import summarize_source_checklist @@ -286,10 +288,6 @@ def first_next_action(prechecks: list[dict[str, Any]], source_rows: list[dict[st return "Validate intake, refresh the ledger, and run the claim guard." -def md_cell(value: Any) -> str: - return str(value).replace("|", "\\|") - - def build_preflight(skill_dir: Path, generated_at: str, submissions_dir: Path | None = None) -> dict[str, Any]: submissions_dir = submissions_dir or (skill_dir / "evidence" / "world_class" / "submissions") ledger = build_ledger(skill_dir, generated_at, submissions_dir=submissions_dir) @@ -353,13 +351,17 @@ def build_preflight(skill_dir: Path, generated_at: str, submissions_dir: Path | key = str(row.get("evidence_key", "")) repairs_by_key.setdefault(key, []).append(row) for item in items: - item["repair_checklist"] = repairs_by_key.get(str(item.get("evidence_key", "")), []) + item_repair_rows = repairs_by_key.get(str(item.get("evidence_key", "")), []) + item["repair_checklist"] = item_repair_rows + item["phase_queue"] = build_phase_queue(item_repair_rows) precheck_status_counts: dict[str, int] = {} for row in precheck_rows: status = str(row.get("status", "unknown")) precheck_status_counts[status] = precheck_status_counts.get(status, 0) + 1 source_summary = summarize_source_checklist(source_rows) repair_summary = summarize_repair_checklist(repair_checklist) + phase_queue = build_phase_queue(repair_checklist) + phase_queue_summary = summarize_phase_queue(phase_queue) collection_ready_count = sum(1 for item in items if item["status"] in {"ready-to-collect", "ready-for-human-review", "ready-for-submission"}) blocked_count = sum(1 for item in items if item["status"] == "blocked") ready_to_claim = ledger.get("summary", {}).get("ready_to_claim_world_class") is True @@ -375,6 +377,7 @@ def build_preflight(skill_dir: Path, generated_at: str, submissions_dir: Path | "collection_blocked_count": blocked_count, **source_summary, **repair_summary, + **phase_queue_summary, "pending_count": ledger.get("summary", {}).get("pending_count", 0), "ready_to_claim_world_class": ready_to_claim, "credential_value_exposed": False, @@ -393,6 +396,7 @@ def build_preflight(skill_dir: Path, generated_at: str, submissions_dir: Path | "prechecks": precheck_rows, "source_checklist": source_rows, "repair_checklist": repair_checklist, + "phase_queue": phase_queue, "submissions": { "directory": rel_path(submissions_dir, skill_dir), "commands": build_submission_commands(skill_dir, submissions_dir), @@ -419,145 +423,6 @@ def build_preflight(skill_dir: Path, generated_at: str, submissions_dir: Path | } -def render_markdown(report: dict[str, Any]) -> str: - summary = report["summary"] - role_contract = report["submissions"]["artifact_role_contract"] - lines = [ - "# World-Class Evidence Preflight", - "", - f"Generated at: `{report['generated_at']}`", - "", - "## Summary", - "", - f"- decision: `{summary['decision']}`", - f"- ready to claim world-class: `{str(summary['ready_to_claim_world_class']).lower()}`", - f"- preflight counts as evidence: `{str(summary['preflight_counts_as_evidence']).lower()}`", - f"- credential value exposed: `{str(summary['credential_value_exposed']).lower()}`", - f"- collection ready: `{summary['collection_ready_count']}`", - f"- collection blocked: `{summary['collection_blocked_count']}`", - f"- source checks: `{summary['source_pass_count']}` pass / `{summary['source_check_count']}` total", - f"- repair rows: `{summary['repair_blocked_count']}` blocked / `{summary['repair_checklist_count']}` total", - f"- next repair action: `{summary.get('next_repair_action_id', '')}`", - f"- next repair owner: `{summary.get('next_repair_owner', '')}`", - "", - "This preflight report checks whether an operator can start collecting the remaining external or human evidence. It never accepts evidence, prints secret values, or changes the world-class ledger.", - "", - "## Submission Kit Handoff", - "", - f"- submissions directory: `{report['submissions']['directory']}`", - f"- prepare drafts: `{report['submissions']['commands']['prepare_submission']}`", - f"- prepare drafts with artifact SHA prefill: `{report['submissions']['commands']['prepare_prefilled_submission']}`", - f"- validate intake: `{report['submissions']['commands']['validate_intake']}`", - f"- review queue: `{report['submissions']['commands']['submission_review']}`", - f"- refresh ledger: `{report['submissions']['commands']['refresh_ledger']}`", - f"- guard claims: `{report['submissions']['commands']['guard_claim']}`", - f"- drafts count as evidence: `{str(report['submissions']['drafts_count_as_evidence']).lower()}`", - f"- artifact prefill counts as evidence: `{str(report['submissions']['artifact_prefill_counts_as_evidence']).lower()}`", - f"- submission refs ready: `{role_contract['submission_ref_ready_count']}` / `{role_contract['submission_ref_total_count']}`", - f"- supporting evidence ready: `{role_contract['supporting_evidence_ready_count']}` / `{role_contract['supporting_evidence_total_count']}`", - "", - "Generate the submission kit after the real provider, human, native-permission, or native-client work exists. The generated JSON drafts remain `template_only: true` until an operator edits them with real aggregate artifact references and matching SHA-256 digests. The prefill command only inserts local artifact SHA-256 digests; it does not make a draft count as evidence.", - "", - "| Role | Copy to artifact_refs | Ready | Meaning |", - "| --- | --- | --- | --- |", - ] - for role in role_contract.get("roles", []): - if role.get("role") == "submission-ref": - ready = f"{role_contract['submission_ref_ready_count']} / {role_contract['submission_ref_total_count']}" - else: - ready = ( - f"{role_contract['supporting_evidence_ready_count']} / " - f"{role_contract['supporting_evidence_total_count']}" - ) - lines.append( - f"| `{role['role']}` | `{str(role['copy_to_artifact_refs']).lower()}` | `{ready}` | " - f"{md_cell(role['description'])} |" - ) - lines.extend( - [ - "", - "`submission-ref` rows are the only checklist rows expected in `artifact_refs`; `supporting-evidence` rows stay available for audit context and reviewer traceability.", - "", - "## Evidence Items", - "", - "| Evidence | Status | Intake | Review | Next action |", - "| --- | --- | --- | --- | --- |", - ] - ) - for item in report["items"]: - next_action = str(item.get("next_action", "")).replace("|", "\\|") - lines.append( - f"| `{item['evidence_key']}` | `{item['status']}` | `{item['intake_readiness']}` | `{item['review_state']}` | {next_action} |" - ) - lines.extend( - [ - "", - "## Repair Checklist", - "", - "Repair rows convert preflight and source blockers into a prioritized operator queue. They are guidance only and do not count as completion evidence.", - "", - "| Priority | Phase | Owner | Evidence | Type | Target | Status | Verify | Next action |", - "| --- | --- | --- | --- | --- | --- | --- | --- | --- |", - ] - ) - for row in report.get("repair_checklist", []): - lines.append( - f"| `{row.get('priority', '')}` | `{row.get('phase', '')}` | {md_cell(row.get('owner', ''))} | " - f"`{row['evidence_key']}` | `{row['repair_type']}` | `{row['target']}` | " - f"`{row['status']}` | `{md_cell(row.get('verification_command', ''))}` | {md_cell(row['next_action'])} |" - ) - for item in report["items"]: - lines.extend( - [ - "", - f"## {item['label']}", - "", - f"- status: `{item['status']}`", - f"- ledger: `{item['ledger_status']}`", - f"- submission: `{item.get('submission_path') or 'missing'}`", - f"- prepare draft: `{item['commands']['prepare_submission']}`", - f"- prepare draft with artifact SHA prefill: `{item['commands']['prepare_prefilled_submission']}`", - f"- submission refs ready: `{item['submission_kit']['artifact_role_contract']['submission_ref_ready_count']}` / `{item['submission_kit']['artifact_role_contract']['submission_ref_total_count']}`", - f"- supporting evidence ready: `{item['submission_kit']['artifact_role_contract']['supporting_evidence_ready_count']}` / `{item['submission_kit']['artifact_role_contract']['supporting_evidence_total_count']}`", - "", - "### Prechecks", - "", - "| Check | Kind | Current | Status | Next action |", - "| --- | --- | --- | --- | --- |", - ] - ) - for row in item.get("prechecks", []): - action = md_cell(row.get("next_action", "")) - lines.append( - f"| {row['label']} | `{row['kind']}` | `{row['actual']}` | `{row['status']}` | {action} |" - ) - lines.extend( - [ - "", - "### Source Checks", - "", - "| Check | Current | Expected | Status | Next action |", - "| --- | --- | --- | --- | --- |", - ] - ) - for row in item.get("source_checklist", []): - action = md_cell(row.get("next_action", "")) - lines.append( - f"| {row['label']} | `{row['actual']}` | `{row['expected']}` | `{row['status']}` | {action} |" - ) - lines.extend( - [ - "", - "## Boundary", - "", - "- Environment variables are reported only as `set` or `not-set`; values are never printed.", - "- Human-required and external-required states are operator actions, not accepted evidence.", - "- The world-class ledger remains the source of truth for `ready_to_claim_world_class`.", - ] - ) - return "\n".join(lines).rstrip() + "\n" - - def main() -> None: parser = argparse.ArgumentParser(description="Render collection preflight checks for pending world-class evidence.") parser.add_argument("skill_dir", nargs="?", default=".") diff --git a/scripts/review_studio_action_evidence.py b/scripts/review_studio_action_evidence.py index 6e7daf8a..6fc684f9 100644 --- a/scripts/review_studio_action_evidence.py +++ b/scripts/review_studio_action_evidence.py @@ -73,6 +73,30 @@ def compact_artifact_role_contract(contract: dict[str, Any]) -> dict[str, Any]: } +def compact_phase_queue(rows: list[Any]) -> list[dict[str, Any]]: + compact_rows: list[dict[str, Any]] = [] + for row in rows: + if not isinstance(row, dict): + continue + compact_rows.append( + { + "phase": str(row.get("phase", "")), + "label": str(row.get("label", "")), + "priority": int(row.get("priority", 90) or 90), + "status": str(row.get("status", "blocked")), + "blocked_count": int(row.get("blocked_count", 0) or 0), + "row_count": int(row.get("row_count", 0) or 0), + "owners": [str(item) for item in row.get("owners", []) if str(item).strip()], + "evidence_keys": [str(item) for item in row.get("evidence_keys", []) if str(item).strip()], + "next_action_id": str(row.get("next_action_id", "")), + "next_action": str(row.get("next_action", "")), + "verification_command": str(row.get("verification_command", "")), + "counts_as_completion": row.get("counts_as_completion") is True, + } + ) + return compact_rows + + def world_class_action_steps(data: dict[str, Any]) -> list[dict[str, Any]]: ledger = data.get("world_class_evidence_ledger", {}) if isinstance(data, dict) else {} entries = ledger.get("entries", []) if isinstance(ledger, dict) else [] @@ -142,6 +166,9 @@ def world_class_action_steps(data: dict[str, Any]) -> list[dict[str, Any]]: if isinstance(preflight_item.get("submission_kit", {}), dict) else {} ) + phase_queue = compact_phase_queue( + preflight_item.get("phase_queue", []) if isinstance(preflight_item.get("phase_queue", []), list) else [] + ) steps.append( { "key": key, @@ -159,6 +186,9 @@ def world_class_action_steps(data: dict[str, Any]) -> list[dict[str, Any]]: "repair_rows": repair_rows, "repair_blocked_count": sum(1 for row in repair_rows if row.get("status") != "ready"), "repair_counts_as_completion": any(row.get("counts_as_completion") for row in repair_rows), + "phase_queue": phase_queue, + "phase_queue_blocked_count": sum(1 for row in phase_queue if row.get("status") != "ready"), + "phase_queue_counts_as_completion": any(row.get("counts_as_completion") for row in phase_queue), "commands": action_command_rows(checklist.get("commands", {}) if isinstance(checklist.get("commands", {}), dict) else {}), "runbook": [str(item) for item in runbook[:3]], "provenance_requirements": first_text_items( @@ -264,6 +294,21 @@ def render_action_evidence_steps(steps: list[dict[str, Any]]) -> str: f"{html.escape(str(row.get('verification_command', '')))}" "" ) + phase_rows = [] + for row in step.get("phase_queue", []): + phase_rows.append( + "
  • " + f"#{html.escape(str(row.get('priority', '')))} · {html.escape(str(row.get('phase', '')))}" + f"{html.escape(str(row.get('label', '')))}" + f"{html.escape(str(row.get('blocked_count', 0)))} / {html.escape(str(row.get('row_count', 0)))} blocked" + f"owners: {html.escape(', '.join(str(item) for item in row.get('owners', [])) or 'n/a')}" + f"evidence: {html.escape(', '.join(str(item) for item in row.get('evidence_keys', [])) or 'n/a')}" + f"{html.escape(str(row.get('next_action', '')))}" + f"{html.escape(str(row.get('verification_command', '')))}" + "
  • " + ) cards.append( "
    " f"
    阻断
    {html.escape(str(step.get('source_blocked_count', 0)))} blocked / {html.escape(str(step.get('source_pass_count', 0)))} pass
    " f"
    修复
    {html.escape(str(step.get('repair_blocked_count', 0)))} repair rows; counts as completion: {html.escape(str(step.get('repair_counts_as_completion') is True).lower())}
    " + f"
    阶段
    {html.escape(str(step.get('phase_queue_blocked_count', 0)))} blocked phases; counts as completion: {html.escape(str(step.get('phase_queue_counts_as_completion') is True).lower())}
    " f"
    下一步
    {html.escape(str(step.get('next_action', '')))}
    " "
    阻断检查
    " + ( @@ -283,6 +329,13 @@ def render_action_evidence_steps(steps: list[dict[str, Any]]) -> str: else "

    暂无阻断检查。

    " ) + "
    " + "
    阶段队列" + + ( + "
      " + "".join(phase_rows) + "
    " + if phase_rows + else "

    暂无阶段队列。

    " + ) + + "
    " "
    修复清单" + ( "
      " + "".join(repair_rows) + "
    " diff --git a/scripts/world_class_preflight_layout.py b/scripts/world_class_preflight_layout.py index f6204edf..c17fbf40 100644 --- a/scripts/world_class_preflight_layout.py +++ b/scripts/world_class_preflight_layout.py @@ -115,6 +115,42 @@ def render_html_repair_rows(rows: list[dict[str, Any]]) -> str: ) +def render_html_phase_queue(rows: list[dict[str, Any]]) -> str: + if not rows: + return "

    No phase queue rows listed.

    " + return "".join( + """ +
    +
    + #{priority} · {status} +

    {label}

    +
    +
    +
    Phase
    {phase}
    +
    Rows
    {blocked} / {total} blocked
    +
    Owners
    {owners}
    +
    Evidence
    {evidence}
    +
    Next
    {action}
    +
    Verify
    {verify}
    +
    Counts
    does not count as completion
    +
    +
    + """.format( + status=html_text(row.get("status", "")), + priority=html_text(row.get("priority", "")), + label=html_text(row.get("label", "")), + phase=html_text(row.get("phase", "")), + blocked=html_text(row.get("blocked_count", 0)), + total=html_text(row.get("row_count", 0)), + owners=html_text(", ".join(str(owner) for owner in row.get("owners", [])) or "n/a"), + evidence=html_text(", ".join(str(key) for key in row.get("evidence_keys", [])) or "n/a"), + action=html_text(row.get("next_action", "")), + verify=html_text(row.get("verification_command", "")), + ) + for row in rows + ) + + def render_html_artifact_roles(contract: dict[str, Any]) -> str: cards = [] for role in contract.get("roles", []): @@ -200,6 +236,7 @@ def render_html(report: dict[str, Any]) -> str: ("Blocked", summary["collection_blocked_count"]), ("Source", f"{summary['source_pass_count']}/{summary['source_check_count']}"), ("Repairs", f"{summary.get('repair_blocked_count', 0)}/{summary.get('repair_checklist_count', 0)}"), + ("Phases", f"{summary.get('phase_queue_blocked_count', 0)}/{summary.get('phase_queue_count', 0)}"), ] stat_html = "".join( f"
    {html_text(label)}{html_text(value)}
    " @@ -207,6 +244,7 @@ def render_html(report: dict[str, Any]) -> str: ) role_contract = report["submissions"]["artifact_role_contract"] item_cards = "".join(render_html_item(item) for item in report.get("items", [])) + phase_queue_html = render_html_phase_queue(report.get("phase_queue", [])) html = f""" @@ -230,10 +268,10 @@ def render_html(report: dict[str, Any]) -> str: h3 {{ margin:4px 0 10px; font-size:22px; letter-spacing:0; }} h4 {{ margin:0 0 8px; font-size:16px; letter-spacing:0; }} .lede {{ max-width:820px; color:var(--muted); font-size:20px; }} - .stats {{ display:grid; grid-template-columns:repeat(6, minmax(0,1fr)); gap:12px; margin:26px 0 0; }} - .stats article, .panel, .evidence-card, .check-row, .repair-row {{ border:1px solid var(--line); border-radius:8px; background:#fff; }} + .stats {{ display:grid; grid-template-columns:repeat(7, minmax(0,1fr)); gap:12px; margin:26px 0 0; }} + .stats article, .panel, .evidence-card, .check-row, .repair-row, .phase-row {{ border:1px solid var(--line); border-radius:8px; background:#fff; }} .stats article {{ padding:16px; }} - .stats span, .muted, .evidence-card header span, .check-row span, .repair-row span {{ color:var(--muted); }} + .stats span, .muted, .evidence-card header span, .check-row span, .repair-row span, .phase-row span {{ color:var(--muted); }} .stats strong {{ display:block; color:var(--ink); font-size:28px; line-height:1.15; overflow-wrap:anywhere; }} .section {{ padding:32px 0; border-bottom:1px solid var(--line); }} .two-col {{ display:grid; grid-template-columns:minmax(0,.45fr) minmax(0,1fr); gap:18px; align-items:start; }} @@ -249,10 +287,12 @@ def render_html(report: dict[str, Any]) -> str: .role-card p {{ margin:0 0 8px; }} .evidence-grid {{ display:grid; gap:18px; }} .evidence-card {{ padding:20px; min-width:0; }} + .phase-grid {{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:14px; margin-bottom:24px; }} + .phase-row {{ padding:18px; min-width:0; }} .evidence-card.blocked {{ border-left:4px solid var(--block); }} - .evidence-card.ready-for-human-review, .evidence-card.ready-to-collect, .check-row.human-required, .check-row.external-required, .check-row.missing, .check-row.blocked, .repair-row.blocked {{ border-left:4px solid var(--warn); }} - .evidence-card.ready-for-submission, .check-row.pass, .repair-row.ready {{ border-left:4px solid var(--pass); }} - .meta, .check-row dl, .repair-row dl {{ display:grid; grid-template-columns:96px minmax(0,1fr); gap:8px 12px; }} + .evidence-card.ready-for-human-review, .evidence-card.ready-to-collect, .check-row.human-required, .check-row.external-required, .check-row.missing, .check-row.blocked, .repair-row.blocked, .phase-row.blocked {{ border-left:4px solid var(--warn); }} + .evidence-card.ready-for-submission, .check-row.pass, .repair-row.ready, .phase-row.ready {{ border-left:4px solid var(--pass); }} + .meta, .check-row dl, .repair-row dl, .phase-row dl {{ display:grid; grid-template-columns:96px minmax(0,1fr); gap:8px 12px; }} dt {{ color:var(--ink); }} dd {{ margin:0; min-width:0; overflow-wrap:anywhere; }} code {{ font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size:13px; overflow-wrap:anywhere; }} @@ -265,7 +305,7 @@ def render_html(report: dict[str, Any]) -> str: .check-section {{ margin-top:16px; }} .notice {{ background:var(--soft); border-left:4px solid var(--ink); padding:16px; border-radius:8px; }} li {{ overflow-wrap:anywhere; }} - @media (max-width:820px) {{ .stats, .two-col, .check-grid, .repair-grid, .role-grid {{ grid-template-columns:1fr; }} h1 {{ font-size:38px; }} .topbar-inner {{ align-items:flex-start; flex-direction:column; }} }} + @media (max-width:820px) {{ .stats, .two-col, .check-grid, .repair-grid, .role-grid, .phase-grid {{ grid-template-columns:1fr; }} h1 {{ font-size:38px; }} .topbar-inner {{ align-items:flex-start; flex-direction:column; }} }} @@ -292,7 +332,13 @@ def render_html(report: dict[str, Any]) -> str:
    -

    Evidence Queue

    {item_cards}
    +
    +

    Phase Queue

    +

    Repair rows are grouped into execution phases so operators can clear the first blocker before moving to later source collection. Phase queue rows remain procedural and never count as accepted evidence.

    +
    {phase_queue_html}
    +

    Evidence Queue

    +
    {item_cards}
    +

    Safety Boundary

    • Environment variables are displayed only as set or not-set; secret values are never printed.
    • Human-required and external-required states are operator work, not accepted evidence.
    • The world-class ledger remains the only source of truth for ready_to_claim_world_class.
    diff --git a/scripts/world_class_preflight_markdown.py b/scripts/world_class_preflight_markdown.py new file mode 100644 index 00000000..da074e01 --- /dev/null +++ b/scripts/world_class_preflight_markdown.py @@ -0,0 +1,175 @@ +#!/usr/bin/env python3 +"""Markdown renderer for the world-class evidence preflight report.""" + +from typing import Any + + +SCRIPT_INTERFACE = "internal-module" +SCRIPT_INTERFACE_REASON = "Imported by render_world_class_preflight.py to keep Markdown layout separate from preflight data assembly." + + +def md_cell(value: Any) -> str: + return str(value).replace("|", "\\|") + + +def render_markdown(report: dict[str, Any]) -> str: + summary = report["summary"] + role_contract = report["submissions"]["artifact_role_contract"] + lines = [ + "# World-Class Evidence Preflight", + "", + f"Generated at: `{report['generated_at']}`", + "", + "## Summary", + "", + f"- decision: `{summary['decision']}`", + f"- ready to claim world-class: `{str(summary['ready_to_claim_world_class']).lower()}`", + f"- preflight counts as evidence: `{str(summary['preflight_counts_as_evidence']).lower()}`", + f"- credential value exposed: `{str(summary['credential_value_exposed']).lower()}`", + f"- collection ready: `{summary['collection_ready_count']}`", + f"- collection blocked: `{summary['collection_blocked_count']}`", + f"- source checks: `{summary['source_pass_count']}` pass / `{summary['source_check_count']}` total", + f"- repair rows: `{summary['repair_blocked_count']}` blocked / `{summary['repair_checklist_count']}` total", + f"- phase queue: `{summary['phase_queue_blocked_count']}` blocked / `{summary['phase_queue_count']}` phases", + f"- phase queue rows: `{summary['phase_queue_row_count']}`", + f"- next repair action: `{summary.get('next_repair_action_id', '')}`", + f"- next repair owner: `{summary.get('next_repair_owner', '')}`", + f"- next phase: `{summary.get('phase_queue_next_phase', '')}`", + f"- next phase action: `{summary.get('phase_queue_next_action_id', '')}`", + "", + "This preflight report checks whether an operator can start collecting the remaining external or human evidence. It never accepts evidence, prints secret values, or changes the world-class ledger.", + "", + "## Submission Kit Handoff", + "", + f"- submissions directory: `{report['submissions']['directory']}`", + f"- prepare drafts: `{report['submissions']['commands']['prepare_submission']}`", + f"- prepare drafts with artifact SHA prefill: `{report['submissions']['commands']['prepare_prefilled_submission']}`", + f"- validate intake: `{report['submissions']['commands']['validate_intake']}`", + f"- review queue: `{report['submissions']['commands']['submission_review']}`", + f"- refresh ledger: `{report['submissions']['commands']['refresh_ledger']}`", + f"- guard claims: `{report['submissions']['commands']['guard_claim']}`", + f"- drafts count as evidence: `{str(report['submissions']['drafts_count_as_evidence']).lower()}`", + f"- artifact prefill counts as evidence: `{str(report['submissions']['artifact_prefill_counts_as_evidence']).lower()}`", + f"- submission refs ready: `{role_contract['submission_ref_ready_count']}` / `{role_contract['submission_ref_total_count']}`", + f"- supporting evidence ready: `{role_contract['supporting_evidence_ready_count']}` / `{role_contract['supporting_evidence_total_count']}`", + "", + "Generate the submission kit after the real provider, human, native-permission, or native-client work exists. The generated JSON drafts remain `template_only: true` until an operator edits them with real aggregate artifact references and matching SHA-256 digests. The prefill command only inserts local artifact SHA-256 digests; it does not make a draft count as evidence.", + "", + "| Role | Copy to artifact_refs | Ready | Meaning |", + "| --- | --- | --- | --- |", + ] + for role in role_contract.get("roles", []): + if role.get("role") == "submission-ref": + ready = f"{role_contract['submission_ref_ready_count']} / {role_contract['submission_ref_total_count']}" + else: + ready = ( + f"{role_contract['supporting_evidence_ready_count']} / " + f"{role_contract['supporting_evidence_total_count']}" + ) + lines.append( + f"| `{role['role']}` | `{str(role['copy_to_artifact_refs']).lower()}` | `{ready}` | " + f"{md_cell(role['description'])} |" + ) + lines.extend( + [ + "", + "`submission-ref` rows are the only checklist rows expected in `artifact_refs`; `supporting-evidence` rows stay available for audit context and reviewer traceability.", + "", + "## Phase Queue", + "", + "Phase queue rows group the same repair checklist into operator execution phases. They are procedural guidance only and do not count as completion evidence.", + "", + "| Priority | Phase | Status | Rows | Owners | Evidence | Verify | Next action |", + "| --- | --- | --- | --- | --- | --- | --- | --- |", + ] + ) + for row in report.get("phase_queue", []): + owners = ", ".join(str(owner) for owner in row.get("owners", [])) + evidence_keys = ", ".join(str(key) for key in row.get("evidence_keys", [])) + rows = f"{row.get('blocked_count', 0)} / {row.get('row_count', 0)} blocked" + lines.append( + f"| `{row.get('priority', '')}` | `{row.get('phase', '')}` | `{row.get('status', '')}` | " + f"{md_cell(rows)} | {md_cell(owners)} | {md_cell(evidence_keys)} | " + f"`{md_cell(row.get('verification_command', ''))}` | {md_cell(row.get('next_action', ''))} |" + ) + lines.extend( + [ + "", + "## Evidence Items", + "", + "| Evidence | Status | Intake | Review | Next action |", + "| --- | --- | --- | --- | --- |", + ] + ) + for item in report["items"]: + next_action = str(item.get("next_action", "")).replace("|", "\\|") + lines.append( + f"| `{item['evidence_key']}` | `{item['status']}` | `{item['intake_readiness']}` | `{item['review_state']}` | {next_action} |" + ) + lines.extend( + [ + "", + "## Repair Checklist", + "", + "Repair rows convert preflight and source blockers into a prioritized operator queue. They are guidance only and do not count as completion evidence.", + "", + "| Priority | Phase | Owner | Evidence | Type | Target | Status | Verify | Next action |", + "| --- | --- | --- | --- | --- | --- | --- | --- | --- |", + ] + ) + for row in report.get("repair_checklist", []): + lines.append( + f"| `{row.get('priority', '')}` | `{row.get('phase', '')}` | {md_cell(row.get('owner', ''))} | " + f"`{row['evidence_key']}` | `{row['repair_type']}` | `{row['target']}` | " + f"`{row['status']}` | `{md_cell(row.get('verification_command', ''))}` | {md_cell(row['next_action'])} |" + ) + for item in report["items"]: + lines.extend( + [ + "", + f"## {item['label']}", + "", + f"- status: `{item['status']}`", + f"- ledger: `{item['ledger_status']}`", + f"- submission: `{item.get('submission_path') or 'missing'}`", + f"- prepare draft: `{item['commands']['prepare_submission']}`", + f"- prepare draft with artifact SHA prefill: `{item['commands']['prepare_prefilled_submission']}`", + f"- submission refs ready: `{item['submission_kit']['artifact_role_contract']['submission_ref_ready_count']}` / `{item['submission_kit']['artifact_role_contract']['submission_ref_total_count']}`", + f"- supporting evidence ready: `{item['submission_kit']['artifact_role_contract']['supporting_evidence_ready_count']}` / `{item['submission_kit']['artifact_role_contract']['supporting_evidence_total_count']}`", + "", + "### Prechecks", + "", + "| Check | Kind | Current | Status | Next action |", + "| --- | --- | --- | --- | --- |", + ] + ) + for row in item.get("prechecks", []): + action = md_cell(row.get("next_action", "")) + lines.append( + f"| {row['label']} | `{row['kind']}` | `{row['actual']}` | `{row['status']}` | {action} |" + ) + lines.extend( + [ + "", + "### Source Checks", + "", + "| Check | Current | Expected | Status | Next action |", + "| --- | --- | --- | --- | --- |", + ] + ) + for row in item.get("source_checklist", []): + action = md_cell(row.get("next_action", "")) + lines.append( + f"| {row['label']} | `{row['actual']}` | `{row['expected']}` | `{row['status']}` | {action} |" + ) + lines.extend( + [ + "", + "## Boundary", + "", + "- Environment variables are reported only as `set` or `not-set`; values are never printed.", + "- Human-required and external-required states are operator actions, not accepted evidence.", + "- The world-class ledger remains the source of truth for `ready_to_claim_world_class`.", + ] + ) + return "\n".join(lines).rstrip() + "\n" diff --git a/skill-ir/examples/yao-meta-skill.json b/skill-ir/examples/yao-meta-skill.json index e5c1f189..31558701 100644 --- a/skill-ir/examples/yao-meta-skill.json +++ b/skill-ir/examples/yao-meta-skill.json @@ -116,6 +116,7 @@ "scripts/adaptation_report_contracts.py", "scripts/adjudicate_output_review.py", "scripts/apply_adaptation.py", + "scripts/benchmark_release_lock.py", "scripts/build_confusion_matrix.py", "scripts/build_skill_atlas.py", "scripts/build_skill_atlas_layout.py", @@ -242,8 +243,11 @@ "scripts/world_class_human_evidence.py", "scripts/world_class_native_permission_evidence.py", "scripts/world_class_native_telemetry_evidence.py", + "scripts/world_class_phase_queue.py", "scripts/world_class_preflight_layout.py", + "scripts/world_class_preflight_markdown.py", "scripts/world_class_provider_evidence.py", + "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", "scripts/world_class_submission_kit_rendering.py", "scripts/world_class_submission_matrix.py", diff --git a/skill_atlas/catalog.json b/skill_atlas/catalog.json index 52f5224f..0a6af4de 100644 --- a/skill_atlas/catalog.json +++ b/skill_atlas/catalog.json @@ -153,6 +153,7 @@ "scripts/world_class_native_telemetry_evidence.py", "scripts/world_class_phase_queue.py", "scripts/world_class_preflight_layout.py", + "scripts/world_class_preflight_markdown.py", "scripts/world_class_provider_evidence.py", "scripts/world_class_repair_checklist.py", "scripts/world_class_source_checks.py", diff --git a/tests/review_studio_world_class_assertions.py b/tests/review_studio_world_class_assertions.py index ca733aa7..d218c59a 100644 --- a/tests/review_studio_world_class_assertions.py +++ b/tests/review_studio_world_class_assertions.py @@ -51,6 +51,15 @@ def assert_world_class_action(full_payload: dict) -> None: assert provider_action_step["source_blocked_count"] == 2, provider_action_step assert provider_action_step["repair_blocked_count"] == 3, provider_action_step assert provider_action_step["repair_counts_as_completion"] is False, provider_action_step + assert provider_action_step["phase_queue_blocked_count"] == 2, provider_action_step + assert provider_action_step["phase_queue_counts_as_completion"] is False, provider_action_step + provider_phase_queue = {item["phase"]: item for item in provider_action_step["phase_queue"]} + assert set(provider_phase_queue) == {"unblock-access", "collect-source"}, provider_phase_queue + assert provider_phase_queue["unblock-access"]["next_action_id"] == "provider-holdout-precheck-openai-api-key", provider_phase_queue + assert provider_phase_queue["unblock-access"]["row_count"] == 1, provider_phase_queue + assert provider_phase_queue["collect-source"]["row_count"] == 2, provider_phase_queue + assert provider_phase_queue["collect-source"]["counts_as_completion"] is False, provider_phase_queue + assert "operator with provider credentials" in provider_phase_queue["unblock-access"]["owners"], provider_phase_queue assert {item["label"] for item in provider_action_step["blocked_checks"]} == { "Provider model run", "Token usage observed", @@ -91,6 +100,7 @@ def assert_world_class_action(full_payload: dict) -> None: item for item in world_class_action["evidence_steps"] if item["key"] == "human-adjudication" ) assert human_action_step["repair_blocked_count"] >= 2, human_action_step + assert human_action_step["phase_queue_blocked_count"] == 2, human_action_step human_repair_rows = {item["target"]: item for item in human_action_step["repair_rows"]} assert human_repair_rows["human-reviewer"]["repair_type"] == "precheck", human_repair_rows assert human_repair_rows["human-reviewer"]["owner"] == "human reviewer", human_repair_rows diff --git a/tests/verify_review_studio.py b/tests/verify_review_studio.py index 0ea5354a..794a45ad 100644 --- a/tests/verify_review_studio.py +++ b/tests/verify_review_studio.py @@ -334,6 +334,11 @@ def main() -> None: assert "证据采集" in html, html assert "action-evidence-grid" in html, html assert "action-evidence-checks" in html, html + assert "阶段队列" in html, html + assert "action-phase-list" in html, html + assert "action-phase-row blocked" in html, html + assert "#20 · unblock-access" in html, html + assert "#40 · collect-source" in html, html assert "action-repair-list" in html, html assert "action-repair-row blocked" in html, html assert "openai-api-key" in html, html diff --git a/tests/verify_world_class_preflight.py b/tests/verify_world_class_preflight.py index 4b4b53bd..77554d69 100644 --- a/tests/verify_world_class_preflight.py +++ b/tests/verify_world_class_preflight.py @@ -89,6 +89,15 @@ def main() -> None: assert summary["repair_ready_count"] == 0, summary assert summary["repair_phase_counts"]["unblock-access"] >= 1, summary assert summary["repair_phase_counts"]["collect-source"] >= 1, summary + assert summary["phase_queue_count"] == 2, summary + assert summary["phase_queue_blocked_count"] == 2, summary + assert summary["phase_queue_row_count"] == summary["repair_checklist_count"], summary + assert summary["phase_queue_next_phase"] == "unblock-access", summary + assert summary["phase_queue_next_action_id"] == "human-adjudication-precheck-human-reviewer", summary + assert summary["phase_queue_next_command"] == ( + "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions" + ), summary + assert summary["phase_queue_counts_as_completion"] is False, summary assert summary["next_repair_action_id"] == "human-adjudication-precheck-human-reviewer", summary assert summary["next_repair_phase"] == "unblock-access", summary assert summary["next_repair_owner"] == "human reviewer", summary @@ -107,6 +116,19 @@ def main() -> None: "--output-dir evidence/world_class/submissions --prefill-artifacts" ), payload["submissions"] assert payload["submissions"]["artifact_prefill_counts_as_evidence"] is False, payload + phase_queue = payload["phase_queue"] + assert [item["phase"] for item in phase_queue] == ["unblock-access", "collect-source"], phase_queue + assert all(item["counts_as_completion"] is False for item in phase_queue), phase_queue + assert phase_queue[0]["status"] == "blocked", phase_queue + assert phase_queue[0]["blocked_count"] >= 1, phase_queue + assert phase_queue[0]["next_action_id"] == "human-adjudication-precheck-human-reviewer", phase_queue + assert phase_queue[0]["verification_command"] == ( + "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions" + ), phase_queue + assert "human reviewer" in phase_queue[0]["owners"], phase_queue + assert "human-adjudication" in phase_queue[0]["evidence_keys"], phase_queue + assert phase_queue[1]["phase"] == "collect-source", phase_queue + assert phase_queue[1]["row_count"] == summary["source_blocked_count"], phase_queue role_contract = payload["submissions"]["artifact_role_contract"] assert role_contract["role_source"] == "world-class-submission-kit", role_contract assert role_contract["counts_as_evidence"] is False, role_contract @@ -165,6 +187,11 @@ def main() -> None: assert "OPENAI_API_KEY" in proc.stdout, proc.stdout assert "set OPENAI_API_KEY" not in proc.stdout.lower(), proc.stdout provider_repairs = {item["target"]: item for item in provider["repair_checklist"]} + provider_phases = {item["phase"]: item for item in provider["phase_queue"]} + assert set(provider_phases) == {"unblock-access", "collect-source"}, provider_phases + assert provider_phases["unblock-access"]["next_action_id"] == "provider-holdout-precheck-openai-api-key", provider_phases + assert provider_phases["collect-source"]["row_count"] == 2, provider_phases + assert provider_phases["collect-source"]["counts_as_completion"] is False, provider_phases assert provider_repairs["openai-api-key"]["repair_type"] == "precheck", provider_repairs assert provider_repairs["openai-api-key"]["action_id"] == "provider-holdout-precheck-openai-api-key", provider_repairs assert provider_repairs["openai-api-key"]["phase"] == "unblock-access", provider_repairs @@ -206,6 +233,11 @@ def main() -> None: assert "preflight counts as evidence: `false`" in markdown, markdown assert "credential value exposed: `false`" in markdown, markdown assert "Submission Kit Handoff" in markdown, markdown + assert "Phase Queue" in markdown, markdown + assert "Phase queue rows group the same repair checklist into operator execution phases" in markdown, markdown + assert "phase queue: `2` blocked / `2` phases" in markdown, markdown + assert "next phase action: `human-adjudication-precheck-human-reviewer`" in markdown, markdown + assert "| Priority | Phase | Status | Rows | Owners | Evidence | Verify | Next action |" in markdown, markdown assert "Repair Checklist" in markdown, markdown assert "Repair rows convert preflight and source blockers into a prioritized operator queue" in markdown, markdown assert "repair rows:" in markdown, markdown @@ -229,6 +261,11 @@ def main() -> None: html = output_html.read_text(encoding="utf-8") assert "World-Class Evidence Preflight" in html, html assert "World-Class Evidence Preflight" in html, html + assert "Phase Queue" in html, html + assert "phase-row blocked" in html, html + assert "
    Rows
    " in html, html + assert "
    Counts
    " in html, html + assert "does not count as completion" in html, html assert "Evidence Queue" in html, html assert "Submission Kit" in html, html assert "Repair Rows" in html, html @@ -274,6 +311,8 @@ def main() -> None: assert env_payload["summary"]["credential_value_exposed"] is False, env_payload assert env_payload["summary"]["ready_to_claim_world_class"] is False, env_payload assert env_payload["summary"]["repair_checklist_count"] == payload["summary"]["repair_checklist_count"] - 1, env_payload + assert env_payload["summary"]["phase_queue_row_count"] == payload["summary"]["phase_queue_row_count"] - 1, env_payload + assert env_payload["summary"]["phase_queue_count"] == 2, env_payload spaced_dir = TMP / "submission kit spaced" spaced_proc = run_preflight(
    路径Path作用Role类型Type
    SKILL.mdSkill 入口文件Skill entrypoint文件file
    README.md人类可读使用说明Human-readable usage guide文件file
    agents/interface.yaml跨平台接口元数据Neutral interface metadata文件file
    manifest.json生命周期与打包元数据Lifecycle and portability metadata文件file
    references扩展指导与复用资料Extended guidance and reusable notes目录folder
    scripts确定性脚本或本地工具Deterministic helpers or local tooling目录folder
    evals触发与质量检查Trigger and quality checks目录folder
    reports生成的证据与总结报告Generated evidence and overview artifacts目录folder