@loomhelm/multi-task-flow 0.0.0-stage → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +162 -2
- package/config.example.json +6 -0
- package/package.json +64 -4
- package/src/build-info.ts +63 -0
- package/src/cli/codex.ts +217 -0
- package/src/cli/flow.ts +31 -0
- package/src/cli/release.ts +117 -0
- package/src/cli/skills.ts +20 -0
- package/src/cli.ts +93 -0
- package/src/client.ts +83 -0
- package/src/codex/LICENSE-CODEX +201 -0
- package/src/codex/README.md +60 -0
- package/src/codex/app-server.ts +260 -0
- package/src/codex/generate-protocol.ts +26 -0
- package/src/codex/index.ts +2 -0
- package/src/codex/protocol.ts +1423 -0
- package/src/config.ts +40 -0
- package/src/dispatch/README.md +7 -0
- package/src/dispatch/index.ts +325 -0
- package/src/git.ts +32 -0
- package/src/index.ts +13 -0
- package/src/orchestration/README.md +3 -0
- package/src/release-tarball.ts +66 -0
- package/src/release.ts +133 -0
- package/src/runtime/files.ts +15 -0
- package/src/runtime/lock.ts +40 -0
- package/src/runtime/process.ts +47 -0
- package/src/runtime-identity.ts +61 -0
- package/src/tasks/ledger.ts +81 -0
- package/src/tasks/model.ts +58 -0
- package/src/toolkit.ts +176 -0
- package/src/version.ts +23 -0
- package/src/workflow/README.md +92 -0
- package/src/workflow/cli.ts +48 -0
- package/src/workflow/index.ts +2 -0
- package/src/workflow/local.ts +162 -0
- package/src/workflow/skills.ts +148 -0
- package/toolkit/AGENTS.md +47 -0
- package/toolkit/artifact-manifest.json +8328 -0
- package/toolkit/package.json +8 -0
- package/toolkit/skills/README.md +50 -0
- package/toolkit/skills/bin/active_long_task_replay_check.ts +4 -0
- package/toolkit/skills/bin/agent_profile_runtime.ts +84 -0
- package/toolkit/skills/bin/agent_vm_migration_check.ts +4 -0
- package/toolkit/skills/bin/browser_policy_replay_check.ts +4 -0
- package/toolkit/skills/bin/check_source_policy.ts +73 -0
- package/toolkit/skills/bin/code_hosting.ts +4 -0
- package/toolkit/skills/bin/compatibility_cli.ts +37 -0
- package/toolkit/skills/bin/compatibility_dispatch.ts +139 -0
- package/toolkit/skills/bin/compatibility_docs.ts +115 -0
- package/toolkit/skills/bin/compatibility_hosting.ts +17 -0
- package/toolkit/skills/bin/compatibility_shared.ts +230 -0
- package/toolkit/skills/bin/compatibility_visual.ts +131 -0
- package/toolkit/skills/bin/compatibility_workspace.ts +24 -0
- package/toolkit/skills/bin/create_reg_cli_report.ts +4 -0
- package/toolkit/skills/bin/flow_continue_replay_check.ts +4 -0
- package/toolkit/skills/bin/flow_receipt.ts +285 -0
- package/toolkit/skills/bin/instruction_architecture_check.ts +6 -0
- package/toolkit/skills/bin/instruction_behavior_replay.ts +4 -0
- package/toolkit/skills/bin/migrate_task_orchestration_to_waves.ts +6 -0
- package/toolkit/skills/bin/modules/checks/architecture.ts +219 -0
- package/toolkit/skills/bin/modules/checks/architecture_acceptance_contracts.ts +137 -0
- package/toolkit/skills/bin/modules/checks/architecture_active_review.ts +79 -0
- package/toolkit/skills/bin/modules/checks/architecture_contract_data.ts +333 -0
- package/toolkit/skills/bin/modules/checks/architecture_contract_helpers.ts +31 -0
- package/toolkit/skills/bin/modules/checks/architecture_contracts.ts +55 -0
- package/toolkit/skills/bin/modules/checks/architecture_markdown.ts +245 -0
- package/toolkit/skills/bin/modules/checks/architecture_review_contracts.ts +284 -0
- package/toolkit/skills/bin/modules/checks/architecture_tracker.ts +172 -0
- package/toolkit/skills/bin/modules/checks/behavior.ts +122 -0
- package/toolkit/skills/bin/modules/checks/browser.ts +108 -0
- package/toolkit/skills/bin/modules/checks/candidate_tree_digest.ts +159 -0
- package/toolkit/skills/bin/modules/checks/conflict.ts +58 -0
- package/toolkit/skills/bin/modules/checks/flow.ts +423 -0
- package/toolkit/skills/bin/modules/checks/flow_cleanup.ts +152 -0
- package/toolkit/skills/bin/modules/checks/flow_release.ts +308 -0
- package/toolkit/skills/bin/modules/checks/flow_release_cards.ts +102 -0
- package/toolkit/skills/bin/modules/checks/flow_release_commands.ts +61 -0
- package/toolkit/skills/bin/modules/checks/flow_release_evidence.ts +400 -0
- package/toolkit/skills/bin/modules/checks/flow_route.ts +151 -0
- package/toolkit/skills/bin/modules/checks/flow_support.ts +256 -0
- package/toolkit/skills/bin/modules/checks/historical.ts +44 -0
- package/toolkit/skills/bin/modules/checks/index.ts +18 -0
- package/toolkit/skills/bin/modules/checks/instruction_behavior.ts +330 -0
- package/toolkit/skills/bin/modules/checks/instruction_behavior_policy.ts +106 -0
- package/toolkit/skills/bin/modules/checks/ownership.ts +183 -0
- package/toolkit/skills/bin/modules/checks/pr.ts +297 -0
- package/toolkit/skills/bin/modules/checks/pr_handoff.ts +200 -0
- package/toolkit/skills/bin/modules/checks/pr_release.ts +13 -0
- package/toolkit/skills/bin/modules/checks/pr_release_cards.ts +268 -0
- package/toolkit/skills/bin/modules/checks/pr_release_command_helpers.ts +42 -0
- package/toolkit/skills/bin/modules/checks/pr_release_commands.ts +87 -0
- package/toolkit/skills/bin/modules/checks/pr_release_evaluate.ts +237 -0
- package/toolkit/skills/bin/modules/checks/pr_release_publish.ts +217 -0
- package/toolkit/skills/bin/modules/checks/pr_release_routes.ts +359 -0
- package/toolkit/skills/bin/modules/checks/pr_release_rules.ts +27 -0
- package/toolkit/skills/bin/modules/checks/pr_release_scan.ts +351 -0
- package/toolkit/skills/bin/modules/checks/pr_release_state.ts +273 -0
- package/toolkit/skills/bin/modules/checks/pr_release_support.ts +262 -0
- package/toolkit/skills/bin/modules/checks/pr_support.ts +112 -0
- package/toolkit/skills/bin/modules/checks/pr_terminal.ts +9 -0
- package/toolkit/skills/bin/modules/checks/pr_terminal_events.ts +180 -0
- package/toolkit/skills/bin/modules/checks/pr_terminal_scan.ts +204 -0
- package/toolkit/skills/bin/modules/checks/pr_terminal_state.ts +113 -0
- package/toolkit/skills/bin/modules/checks/pr_terminal_support.ts +206 -0
- package/toolkit/skills/bin/modules/checks/pr_terminal_task.ts +176 -0
- package/toolkit/skills/bin/modules/checks/release.ts +211 -0
- package/toolkit/skills/bin/modules/checks/replay.ts +336 -0
- package/toolkit/skills/bin/modules/checks/review.ts +174 -0
- package/toolkit/skills/bin/modules/checks/routes.ts +87 -0
- package/toolkit/skills/bin/modules/checks/skills.ts +75 -0
- package/toolkit/skills/bin/modules/checks/spec.ts +272 -0
- package/toolkit/skills/bin/modules/checks/visual.ts +286 -0
- package/toolkit/skills/bin/modules/checks/visual_support.ts +203 -0
- package/toolkit/skills/bin/modules/core/cli.ts +44 -0
- package/toolkit/skills/bin/modules/core/clock.ts +30 -0
- package/toolkit/skills/bin/modules/core/process.ts +400 -0
- package/toolkit/skills/bin/modules/core/process_tree.ts +112 -0
- package/toolkit/skills/bin/modules/core/runtime.ts +2 -0
- package/toolkit/skills/bin/modules/core/security_file.ts +246 -0
- package/toolkit/skills/bin/modules/core/source_policy.ts +21 -0
- package/toolkit/skills/bin/modules/core/utf8.ts +63 -0
- package/toolkit/skills/bin/modules/docs/git.ts +54 -0
- package/toolkit/skills/bin/modules/docs/hardware_ingest.ts +377 -0
- package/toolkit/skills/bin/modules/docs/hardware_locks.ts +181 -0
- package/toolkit/skills/bin/modules/docs/legacy_spec_id.ts +131 -0
- package/toolkit/skills/bin/modules/docs/migration_common.ts +291 -0
- package/toolkit/skills/bin/modules/docs/next_plan.ts +199 -0
- package/toolkit/skills/bin/modules/docs/next_plan_support.ts +245 -0
- package/toolkit/skills/bin/modules/docs/spec_contract.ts +299 -0
- package/toolkit/skills/bin/modules/docs/spec_drift.ts +387 -0
- package/toolkit/skills/bin/modules/docs/spec_drift_helpers.ts +383 -0
- package/toolkit/skills/bin/modules/docs/spec_drift_legacy.ts +376 -0
- package/toolkit/skills/bin/modules/docs/spec_drift_paths.ts +3 -0
- package/toolkit/skills/bin/modules/docs/spec_drift_types.ts +27 -0
- package/toolkit/skills/bin/modules/docs/spec_drift_validation.ts +251 -0
- package/toolkit/skills/bin/modules/docs/spec_migration.ts +191 -0
- package/toolkit/skills/bin/modules/flow/acceptance.ts +373 -0
- package/toolkit/skills/bin/modules/flow/common.ts +139 -0
- package/toolkit/skills/bin/modules/flow/deployment.ts +74 -0
- package/toolkit/skills/bin/modules/flow/fresh-thread-dispatch.ts +147 -0
- package/toolkit/skills/bin/modules/flow/git.ts +194 -0
- package/toolkit/skills/bin/modules/flow/ledger-acceptance.ts +236 -0
- package/toolkit/skills/bin/modules/flow/ledger-attestation.ts +151 -0
- package/toolkit/skills/bin/modules/flow/ledger-convergence.ts +56 -0
- package/toolkit/skills/bin/modules/flow/ledger-lifecycle.ts +205 -0
- package/toolkit/skills/bin/modules/flow/ledger-reopen.ts +187 -0
- package/toolkit/skills/bin/modules/flow/ledger-review.ts +387 -0
- package/toolkit/skills/bin/modules/flow/ledger-terminal.ts +391 -0
- package/toolkit/skills/bin/modules/flow/ledger-validation.ts +158 -0
- package/toolkit/skills/bin/modules/flow/ledger.ts +207 -0
- package/toolkit/skills/bin/modules/flow/process.ts +161 -0
- package/toolkit/skills/bin/modules/flow/profile-attest-discovery.ts +137 -0
- package/toolkit/skills/bin/modules/flow/profile-attest-utils.ts +353 -0
- package/toolkit/skills/bin/modules/flow/profile-attest.ts +316 -0
- package/toolkit/skills/bin/modules/flow/profile-hook.ts +375 -0
- package/toolkit/skills/bin/modules/flow/profile-resolution.ts +118 -0
- package/toolkit/skills/bin/modules/flow/profile-state.ts +286 -0
- package/toolkit/skills/bin/modules/flow/profile-transcript.ts +376 -0
- package/toolkit/skills/bin/modules/flow/receipt-storage.ts +144 -0
- package/toolkit/skills/bin/modules/flow/review-history.ts +69 -0
- package/toolkit/skills/bin/modules/flow/review-ledger.ts +9 -0
- package/toolkit/skills/bin/modules/flow/review-open-guards.ts +119 -0
- package/toolkit/skills/bin/modules/flow/review-profile-policy.ts +290 -0
- package/toolkit/skills/bin/modules/flow/review-profile.ts +148 -0
- package/toolkit/skills/bin/modules/flow/review-query.ts +16 -0
- package/toolkit/skills/bin/modules/flow/review-receipt-integrity.ts +155 -0
- package/toolkit/skills/bin/modules/flow/review-record.ts +270 -0
- package/toolkit/skills/bin/modules/flow/review-repair.ts +150 -0
- package/toolkit/skills/bin/modules/flow/review-result.ts +224 -0
- package/toolkit/skills/bin/modules/flow/review-synthesis.ts +195 -0
- package/toolkit/skills/bin/modules/flow/review-wave-finalize.ts +231 -0
- package/toolkit/skills/bin/modules/flow/review-wave-open.ts +157 -0
- package/toolkit/skills/bin/modules/flow/review-wave-support.ts +23 -0
- package/toolkit/skills/bin/modules/flow/review-wave-utils.ts +35 -0
- package/toolkit/skills/bin/modules/flow/review.ts +369 -0
- package/toolkit/skills/bin/modules/flow/state-policy.ts +61 -0
- package/toolkit/skills/bin/modules/flow/state-review.ts +70 -0
- package/toolkit/skills/bin/modules/flow/state.ts +351 -0
- package/toolkit/skills/bin/modules/flow/storage.ts +228 -0
- package/toolkit/skills/bin/modules/flow/validation-input.ts +28 -0
- package/toolkit/skills/bin/modules/flow/validation.ts +250 -0
- package/toolkit/skills/bin/modules/hosting/backend.ts +266 -0
- package/toolkit/skills/bin/modules/hosting/compatibility_ci.ts +206 -0
- package/toolkit/skills/bin/modules/hosting/compatibility_ci_gitea.ts +77 -0
- package/toolkit/skills/bin/modules/hosting/compatibility_ci_github.ts +175 -0
- package/toolkit/skills/bin/modules/hosting/compatibility_ci_normalize.ts +302 -0
- package/toolkit/skills/bin/modules/hosting/compatibility_ci_policy.ts +219 -0
- package/toolkit/skills/bin/modules/hosting/compatibility_ci_surfaces.ts +257 -0
- package/toolkit/skills/bin/modules/hosting/compatibility_cli.ts +393 -0
- package/toolkit/skills/bin/modules/hosting/compatibility_cli_helpers.ts +188 -0
- package/toolkit/skills/bin/modules/hosting/compatibility_helpers.ts +43 -0
- package/toolkit/skills/bin/modules/hosting/compatibility_pr.ts +115 -0
- package/toolkit/skills/bin/modules/hosting/compatibility_resources.ts +296 -0
- package/toolkit/skills/bin/modules/hosting/pull-request.ts +387 -0
- package/toolkit/skills/bin/modules/hosting/redact.ts +29 -0
- package/toolkit/skills/bin/modules/hosting/remote.ts +129 -0
- package/toolkit/skills/bin/modules/hosting/types.ts +38 -0
- package/toolkit/skills/bin/modules/plan/acceptance.ts +282 -0
- package/toolkit/skills/bin/modules/plan/cli.ts +66 -0
- package/toolkit/skills/bin/modules/plan/contract.ts +1245 -0
- package/toolkit/skills/bin/modules/plan/historical_session.ts +359 -0
- package/toolkit/skills/bin/modules/plan/io.ts +402 -0
- package/toolkit/skills/bin/modules/plan/markdown.ts +135 -0
- package/toolkit/skills/bin/modules/plan/orchestration.ts +11 -0
- package/toolkit/skills/bin/modules/plan/orchestration_base.ts +333 -0
- package/toolkit/skills/bin/modules/plan/orchestration_dependencies.ts +231 -0
- package/toolkit/skills/bin/modules/plan/orchestration_metadata.ts +134 -0
- package/toolkit/skills/bin/modules/plan/orchestration_parser.ts +228 -0
- package/toolkit/skills/bin/modules/plan/orchestration_validation.ts +147 -0
- package/toolkit/skills/bin/modules/plan/parent_identity.ts +15 -0
- package/toolkit/skills/bin/modules/plan/private_snapshot.ts +372 -0
- package/toolkit/skills/bin/modules/plan/projection.ts +4 -0
- package/toolkit/skills/bin/modules/plan/projection_base.ts +220 -0
- package/toolkit/skills/bin/modules/plan/projection_expected.ts +111 -0
- package/toolkit/skills/bin/modules/plan/projection_findings.ts +310 -0
- package/toolkit/skills/bin/modules/plan/projection_render.ts +349 -0
- package/toolkit/skills/bin/modules/plan/review.ts +300 -0
- package/toolkit/skills/bin/modules/plan/task_migration.ts +308 -0
- package/toolkit/skills/bin/modules/plan/text.ts +8 -0
- package/toolkit/skills/bin/modules/visual/casefold.ts +21 -0
- package/toolkit/skills/bin/modules/visual/compare.ts +353 -0
- package/toolkit/skills/bin/modules/visual/document.ts +253 -0
- package/toolkit/skills/bin/modules/visual/document_parse.ts +341 -0
- package/toolkit/skills/bin/modules/visual/gate.ts +380 -0
- package/toolkit/skills/bin/modules/visual/image.ts +182 -0
- package/toolkit/skills/bin/modules/visual/index.ts +11 -0
- package/toolkit/skills/bin/modules/visual/isolation.ts +391 -0
- package/toolkit/skills/bin/modules/visual/native_rename.ts +34 -0
- package/toolkit/skills/bin/modules/visual/paths.ts +312 -0
- package/toolkit/skills/bin/modules/visual/pr_body_gate.ts +368 -0
- package/toolkit/skills/bin/modules/visual/pr_body_gate_contract.ts +106 -0
- package/toolkit/skills/bin/modules/visual/pr_body_gate_markdown.ts +248 -0
- package/toolkit/skills/bin/modules/visual/pr_body_gate_provider.ts +134 -0
- package/toolkit/skills/bin/modules/visual/pr_body_gate_result.ts +21 -0
- package/toolkit/skills/bin/modules/visual/pr_body_gate_tree.ts +36 -0
- package/toolkit/skills/bin/modules/visual/pr_body_gate_update.ts +93 -0
- package/toolkit/skills/bin/modules/visual/report.ts +5 -0
- package/toolkit/skills/bin/modules/visual/report_artifacts.ts +277 -0
- package/toolkit/skills/bin/modules/visual/report_audit.ts +214 -0
- package/toolkit/skills/bin/modules/visual/report_create.ts +321 -0
- package/toolkit/skills/bin/modules/visual/report_runtime.ts +232 -0
- package/toolkit/skills/bin/modules/visual/report_validate.ts +293 -0
- package/toolkit/skills/bin/modules/visual/sandbox_process.ts +126 -0
- package/toolkit/skills/bin/modules/visual/secure_io.ts +486 -0
- package/toolkit/skills/bin/modules/visual/snapshot.ts +134 -0
- package/toolkit/skills/bin/modules/visual/trim.ts +295 -0
- package/toolkit/skills/bin/modules/visual/trusted_directory.ts +42 -0
- package/toolkit/skills/bin/modules/visual/write_all.ts +10 -0
- package/toolkit/skills/bin/modules/workspace/base_alignment.ts +389 -0
- package/toolkit/skills/bin/modules/workspace/base_alignment_actions.ts +318 -0
- package/toolkit/skills/bin/modules/workspace/candidate_context.ts +397 -0
- package/toolkit/skills/bin/modules/workspace/candidate_sandbox.ts +292 -0
- package/toolkit/skills/bin/modules/workspace/closeout_context.ts +161 -0
- package/toolkit/skills/bin/modules/workspace/closeout_context_cli.ts +107 -0
- package/toolkit/skills/bin/modules/workspace/closeout_gate.ts +353 -0
- package/toolkit/skills/bin/modules/workspace/closeout_gate_cli.ts +36 -0
- package/toolkit/skills/bin/modules/workspace/local_merge_closeout_context.ts +112 -0
- package/toolkit/skills/bin/modules/workspace/local_merge_closeout_context_cli.ts +54 -0
- package/toolkit/skills/bin/modules/workspace/local_merge_closeout_gate.ts +257 -0
- package/toolkit/skills/bin/modules/workspace/local_merge_closeout_gate_cli.ts +30 -0
- package/toolkit/skills/bin/modules/workspace/merge_preflight.ts +318 -0
- package/toolkit/skills/bin/modules/workspace/merge_preflight_facts.ts +124 -0
- package/toolkit/skills/bin/modules/workspace/merge_preflight_model.ts +325 -0
- package/toolkit/skills/bin/modules/workspace/port_allocator.ts +115 -0
- package/toolkit/skills/bin/modules/workspace/port_registry.ts +367 -0
- package/toolkit/skills/bin/modules/workspace/port_registry_allocation.ts +130 -0
- package/toolkit/skills/bin/modules/workspace/port_registry_cli.ts +273 -0
- package/toolkit/skills/bin/modules/workspace/port_registry_shared.ts +130 -0
- package/toolkit/skills/bin/modules/workspace/port_registry_store.ts +230 -0
- package/toolkit/skills/bin/modules/workspace/worktree.ts +135 -0
- package/toolkit/skills/bin/multi_task_platform_gate.ts +23 -0
- package/toolkit/skills/bin/native-tests/core/ffi_paths.test.ts +61 -0
- package/toolkit/skills/bin/native-tests/core/native.test.ts +102 -0
- package/toolkit/skills/bin/native-tests/visual/native.test.ts +414 -0
- package/toolkit/skills/bin/native-tests/visual/repair.test.ts +577 -0
- package/toolkit/skills/bin/owner_facing_image_gate.ts +4 -0
- package/toolkit/skills/bin/package.json +1 -0
- package/toolkit/skills/bin/plan-cli.sh +231 -0
- package/toolkit/skills/bin/plan_acceptance_manifest.ts +62 -0
- package/toolkit/skills/bin/plan_bunfig.toml +2 -0
- package/toolkit/skills/bin/plan_contract_check.ts +135 -0
- package/toolkit/skills/bin/plan_review_view.ts +419 -0
- package/toolkit/skills/bin/pr_body_image_contract_check.ts +4 -0
- package/toolkit/skills/bin/pr_skill_replay_check.ts +4 -0
- package/toolkit/skills/bin/reg-cli-report/package-lock.json +1544 -0
- package/toolkit/skills/bin/reg-cli-report/package.json +8 -0
- package/toolkit/skills/bin/release_tracking_replay_check.ts +4 -0
- package/toolkit/skills/bin/repair-thread-history.zsh +373 -0
- package/toolkit/skills/bin/review_profile_policy.ts +107 -0
- package/toolkit/skills/bin/review_proof_replay_check.ts +4 -0
- package/toolkit/skills/bin/skills_index_check.ts +4 -0
- package/toolkit/skills/bin/snapshot_local_image.ts +4 -0
- package/toolkit/skills/bin/spec_contract_check.ts +4 -0
- package/toolkit/skills/bin/test_agent_profile_runtime.ts +1 -0
- package/toolkit/skills/bin/test_agent_profiles.ts +1 -0
- package/toolkit/skills/bin/test_agent_vm_migration_check.ts +1 -0
- package/toolkit/skills/bin/test_code_hosting.ts +1 -0
- package/toolkit/skills/bin/test_create_reg_cli_report.ts +1 -0
- package/toolkit/skills/bin/test_dot_codex_context.ts +1 -0
- package/toolkit/skills/bin/test_flow_continue_replay_check.ts +1 -0
- package/toolkit/skills/bin/test_flow_receipt.ts +1 -0
- package/toolkit/skills/bin/test_instruction_architecture_check.ts +1 -0
- package/toolkit/skills/bin/test_instruction_behavior_replay.ts +1 -0
- package/toolkit/skills/bin/test_owner_facing_image_gate.ts +1 -0
- package/toolkit/skills/bin/test_plan_acceptance_manifest.ts +1 -0
- package/toolkit/skills/bin/test_plan_contract_check.ts +1 -0
- package/toolkit/skills/bin/test_plan_review_view.ts +1 -0
- package/toolkit/skills/bin/test_pr_skill_replay_check.ts +1 -0
- package/toolkit/skills/bin/test_release_tracking_replay_check.ts +1 -0
- package/toolkit/skills/bin/test_skills_index_check.ts +1 -0
- package/toolkit/skills/bin/test_snapshot_local_image.ts +1 -0
- package/toolkit/skills/bin/test_spec_contract_check.ts +1 -0
- package/toolkit/skills/bin/test_visual_evidence_document.ts +1 -0
- package/toolkit/skills/bin/tests/checks/agent_vm.test.ts +41 -0
- package/toolkit/skills/bin/tests/checks/candidate_tree_digest.test.ts +114 -0
- package/toolkit/skills/bin/tests/checks/checks.test.ts +608 -0
- package/toolkit/skills/bin/tests/checks/flow_python_parity.test.ts +41 -0
- package/toolkit/skills/bin/tests/checks/flow_release.test.ts +584 -0
- package/toolkit/skills/bin/tests/checks/flow_release_help.test.ts +103 -0
- package/toolkit/skills/bin/tests/checks/flow_repair.test.ts +214 -0
- package/toolkit/skills/bin/tests/checks/fresh_thread_dispatch.test.ts +68 -0
- package/toolkit/skills/bin/tests/checks/multi-task-flow.test.ts +192 -0
- package/toolkit/skills/bin/tests/checks/pr_replay_policy.test.ts +165 -0
- package/toolkit/skills/bin/tests/core/compatibility.test.ts +94 -0
- package/toolkit/skills/bin/tests/core/core.test.ts +458 -0
- package/toolkit/skills/bin/tests/core/package_scripts.test.ts +13 -0
- package/toolkit/skills/bin/tests/docs/contract_migration.test.ts +199 -0
- package/toolkit/skills/bin/tests/docs/plan_and_hardware.test.ts +210 -0
- package/toolkit/skills/bin/tests/docs/spec_drift.test.ts +279 -0
- package/toolkit/skills/bin/tests/flow/flow.test.ts +477 -0
- package/toolkit/skills/bin/tests/flow/fresh_thread_dispatch.test.ts +211 -0
- package/toolkit/skills/bin/tests/flow/profile.test.ts +519 -0
- package/toolkit/skills/bin/tests/flow/review_profile_policy.test.ts +144 -0
- package/toolkit/skills/bin/tests/hosting/ci_evidence_conflicts.test.ts +279 -0
- package/toolkit/skills/bin/tests/hosting/ci_facts.test.ts +595 -0
- package/toolkit/skills/bin/tests/hosting/ci_rerun.test.ts +188 -0
- package/toolkit/skills/bin/tests/hosting/hosting.test.ts +561 -0
- package/toolkit/skills/bin/tests/hosting/merge_confirmation.test.ts +37 -0
- package/toolkit/skills/bin/tests/hosting/test_helpers.ts +36 -0
- package/toolkit/skills/bin/tests/plan/acceptance.test.ts +202 -0
- package/toolkit/skills/bin/tests/plan/cli.test.ts +39 -0
- package/toolkit/skills/bin/tests/plan/fixtures.ts +29 -0
- package/toolkit/skills/bin/tests/plan/io.test.ts +64 -0
- package/toolkit/skills/bin/tests/plan/isolation.test.ts +31 -0
- package/toolkit/skills/bin/tests/plan/launcher.test.ts +88 -0
- package/toolkit/skills/bin/tests/plan/launcher_race.test.ts +39 -0
- package/toolkit/skills/bin/tests/plan/multi-task-flow.test.ts +38 -0
- package/toolkit/skills/bin/tests/plan/orchestration.test.ts +102 -0
- package/toolkit/skills/bin/tests/plan/review.test.ts +195 -0
- package/toolkit/skills/bin/tests/plan/shell.test.ts +282 -0
- package/toolkit/skills/bin/tests/plan/task_migration.test.ts +160 -0
- package/toolkit/skills/bin/tests/visual/pr_body_gate.test.ts +109 -0
- package/toolkit/skills/bin/tests/visual/report_create.test.ts +134 -0
- package/toolkit/skills/bin/tests/visual/visual.test.ts +598 -0
- package/toolkit/skills/bin/tests/workspace/base_alignment.test.ts +121 -0
- package/toolkit/skills/bin/tests/workspace/fixed_checks.test.ts +30 -0
- package/toolkit/skills/bin/tests/workspace/workspace.test.ts +840 -0
- package/toolkit/skills/bin/visual_evidence_document.ts +4 -0
- package/toolkit/skills/bin/visual_evidence_replay_check.ts +4 -0
- package/toolkit/skills/bun.lock +96 -0
- package/toolkit/skills/catalog.json +803 -0
- package/toolkit/skills/cn-ecommerce-data-collection/SKILL.md +51 -0
- package/toolkit/skills/cn-ecommerce-data-collection/references/data-collection.md +51 -0
- package/toolkit/skills/dev-plan/SKILL.md +112 -0
- package/toolkit/skills/dev-plan/agents/openai.yaml +2 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-direct-review-tier-missing.md +35 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-empirical-acceptance-missing.md +39 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-empirical-acceptance-placeholders.md +40 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-empirical-acceptance-scenarios.md +40 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-fast-track-avoid-open-pr.md +35 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-fast-track-avoid-pr-creation.md +35 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-fast-track-avoid-pr-delivery.md +35 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-fast-track-direct-pr-omitted.md +35 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-fast-track-local-only-delivery.md +35 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-fast-track-no-direct-pr.md +35 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-fast-track-no-pr-delivery.md +35 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-fast-track-no-pr-local.md +35 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-fast-track-pr-acceptance-missing.md +35 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-fast-track-pr-acceptance-split.md +37 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-fast-track-pr-forbidden.md +35 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-fast-track-pr-target-only.md +35 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-fast-track-unlocked.md +35 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-initiative-adr-contracts-duplicate-path.md +46 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-initiative-adr-contracts-duplicate.md +47 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-initiative-adr-contracts-malformed-sha.md +46 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-initiative-adr-contracts-missing.md +45 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-initiative-adr-contracts-trailing-comma.md +46 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-initiative-adr-contracts-unsorted.md +46 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-multi-task-flow-single-task.md +42 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-parallel-pr-overlap.md +45 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-phase-aware-missing-phase.md +41 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-plan-constraint-acceptance.md +38 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-plan-constraint-task-item.md +38 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-plan-provenance-section.md +38 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-plan-provenance-variant.md +38 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-runtime-profile-pair.md +37 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-runtime-profile-reviewer-identity.md +37 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-runtime-strategy-ungated.md +37 -0
- package/toolkit/skills/dev-plan/references/plan-cases/negative-wave-thread-v2-duplicate-contract.md +48 -0
- package/toolkit/skills/dev-plan/references/plan-cases/positive-empirical-acceptance.md +41 -0
- package/toolkit/skills/dev-plan/references/plan-cases/positive-fast-track-aggregate-pr-exclusion.md +41 -0
- package/toolkit/skills/dev-plan/references/plan-cases/positive-fast-track.md +41 -0
- package/toolkit/skills/dev-plan/references/plan-cases/positive-initiative-bootstrap-v5.md +47 -0
- package/toolkit/skills/dev-plan/references/plan-cases/positive-initiative-delivery-v5.md +56 -0
- package/toolkit/skills/dev-plan/references/plan-cases/positive-multi-task-flow.md +50 -0
- package/toolkit/skills/dev-plan/references/plan-cases/positive-parallel-pr.md +48 -0
- package/toolkit/skills/dev-plan/references/plan-cases/positive-phase-aware-direct.md +44 -0
- package/toolkit/skills/dev-plan/references/plan-cases/positive-plan-constraints.md +45 -0
- package/toolkit/skills/dev-plan/references/plan-cases/positive-plan-task-metadata.md +40 -0
- package/toolkit/skills/dev-plan/references/plan-cases/positive-wave-thread-v2.md +57 -0
- package/toolkit/skills/dev-plan/references/replay-cases/CASES.txt +248 -0
- package/toolkit/skills/dev-plan/references/replay-cases/README.md +190 -0
- package/toolkit/skills/dev-plan/references/replay-cases/abstract-development-baseline-combined-phrase.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/abstract-development-baseline.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/acceptance-follow-up-items-only.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/acceptance-notes-only.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/acceptance-tba-only.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/ambiguous-continue-fallback.jsonl +3 -0
- package/toolkit/skills/dev-plan/references/replay-cases/blank-acceptance-bullet.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/checkbox-task-orchestration.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/conflicting-flow-signals-default-fast-track.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/context-dependent-alias-development-baseline.jsonl +1 -0
- package/toolkit/skills/dev-plan/references/replay-cases/context-dependent-remote-head-development-baseline.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/create-plan-md-implementation-steps-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/decision-log-artifact-in-orchestration.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/decision-log-future-work-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/decision-log-job-future-handoffs-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/decision-log-timeline-planning-handoff-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/decision-log-workflow-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/default-fast-track-missing-merge-ready-stop.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/duplicate-task-in-wave.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/explicit-owner-baseline-mismatch-after-flow-answer.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/explicit-owner-baseline-mismatch-after-standalone-flow-restatement.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/explicit-owner-baseline-mismatch-base-equals.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/explicit-owner-baseline-mismatch-base-ref-equals.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/explicit-owner-baseline-mismatch-directional-baseline.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/explicit-owner-baseline-mismatch-english-is.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/explicit-owner-baseline-mismatch-legal-trailing-punct.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/explicit-owner-baseline-mismatch-legal-trailing-semicolon-plain.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/explicit-owner-baseline-mismatch-plain-chinese.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/explicit-owner-baseline-mismatch-plan-page-upload-api-scope-clarification.jsonl +6 -0
- package/toolkit/skills/dev-plan/references/replay-cases/explicit-owner-baseline-mismatch-short-ref.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/explicit-owner-baseline-mismatch-yong-plain-chinese.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/explicit-owner-baseline-mismatch.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/filesystem-path-development-baseline.jsonl +1 -0
- package/toolkit/skills/dev-plan/references/replay-cases/flat-task-orchestration-list.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/flow-decision-baseline-only-outside-section.jsonl +1 -0
- package/toolkit/skills/dev-plan/references/replay-cases/flow-decision-mismatch-lock.jsonl +3 -0
- package/toolkit/skills/dev-plan/references/replay-cases/generate-handoff-log-future-sessions-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/goal-blank-bullet.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/goal-placeholder-detail.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/goal-tba-detail.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/goal-without-detail.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/goals-empty-orchestration-only.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/handoff-log-artifact-in-orchestration.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/handoff-log-future-work-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/handoff-log-history-agent-session-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/handoff-log-pipeline-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/historical-flow-not-locked-before-plan.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/historical-missing-flow-type.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/implement-only-forbidden-copy-spec-task.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/implement-only-forbidden-create-for-tests-task.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/implement-only-forbidden-create-migrated-copy-task.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/implement-only-forbidden-skill-normal-flow.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/implement-only-forbidden-skill-topic-spec.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/implement-only-forbidden-sync-against-existing-task.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/implement-only-forbidden-sync-task-orchestration.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/implement-only-forbidden-task-orchestration.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/implement-only-forbidden-update-existing-spec-task.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/implement-only-forbidden-update-tests-slug-task.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/invalid-flow-type-substring.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/invalid-section-order.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/invalid-task-orchestration-content.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/invalid-user-flow-lock-substring.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/keep-handoff-log-future-sessions-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/missing-development-baseline.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/missing-flow-question.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/missing-goals.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/missing-non-goals.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/missing-task-orchestration-task.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/missing-task-orchestration.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/missing-task-skill-binding.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/mixed-plan-cleanup-create-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/move-plan-md-handoff-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-agent-profile-invalid.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-agent-profile-missing.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-aggregate-missing-final-merge-policy.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-aggregate-missing-initiative-flow.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-aggregate-non-kebab-integration-branch.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-aggregate-policy-outside-flow-decision.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-default-initiative-eligibility-unproven.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-formal-evidence-predeclaration.jsonl +1 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-formal-main-agent-predeclaration.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-initiative-prerequisite-silent-downgrade.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-initiative-with-legacy-fast-alias.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-legacy-profile-text.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-main-agent-profile.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-new-delivery-topology.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-new-mixed-top-level-flow.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-specialist-review-effort.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-specialist-review-profile.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-subagent-contradictory-write.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-subagent-filesystem-write-actions.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-subagent-generic-english-write.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-subagent-generic-implementation-write.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-subagent-git-and-shell-write-commands.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-subagent-git-config-worktree.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-subagent-git-global-options.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-subagent-git-readonly-mixed-commands.jsonl +1 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-subagent-git-write-commands.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-subagent-implementation-multiword.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-subagent-implementing-write.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-subagent-local-write.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-subagent-shared-write-english.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-subagent-shared-write.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-task-agent-alias.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-task-executor-noninitiative.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-ticket-replans-via-executor.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/negative-ticket-replans.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/non-baseline-based-on-docs-text.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/non-goals-blank-bullet.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/non-goals-none-placeholder.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/non-goals-placeholder.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/persisted-plan-artifact-in-orchestration.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/placeholder-acceptance.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/placeholder-development-baseline.jsonl +1 -0
- package/toolkit/skills/dev-plan/references/replay-cases/plan-md-handoff-job-future-sessions-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-agent-profiles.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-default-fast-track-no-flow.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-default-initiative-from-planned-scope.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-default-mainline-concrete-baseline.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-default-mainline-token-ref.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-direct-dev-plan-issue-parser.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-direct-mentions-initiative-non-goal.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-directional-product-wording-no-baseline.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-equivalent-remote-ref-baseline.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-after-flow-answer.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-after-prose-flow-answer.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-after-standalone-flow-restatement.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-base-ref-equals.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-directional-baseline.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-doc-like-ref.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-feature-head.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-legal-trailing-punct-comma-clause.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-legal-trailing-punct.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-legal-trailing-semicolon-plain.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-placeholder-token-ref.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-plain-chinese.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-replace-clause.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-short-ref.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-special-chars.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-topic-prefix.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-trailing-comma-clause.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline-yong-plain-chinese.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-branch-baseline.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-commit-baseline.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-explicit-english-branch-baseline-is.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-fast-track.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-flow-lock-direct-local-merge-skill.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-flow-lock-fast-flow-keyed.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-flow-lock-latest-explicit-user.jsonl +3 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-flow-lock-rui.jsonl +3 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-flow-lock-standalone-normal-punctuation.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-formal-review-sidecar.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-implement-only-add-tests-reference.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-implement-only-parser-reference.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-implement-only-pure.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-implement-only-update-parser-reference.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-large-coupled-default-fast-track.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-legacy-direct-no-topology.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-legacy-direct-with-topology.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-legacy-fast-aggregate.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-legacy-unprofiled-subagent.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-multi-plan-baseline-reset-explicit-dev-plan-with-continue-wording.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-multi-plan-baseline-reset-generic-reask.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-multi-plan-baseline-reset-merge-queue-api.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-multi-plan-baseline-reset-merge-ready.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-multi-plan-baseline-reset-no-dev-plan-token.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-multi-plan-baseline-reset-plan-task-wording.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-multi-plan-baseline-reset-replan-merge-ready-clause.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-multi-plan-baseline-reset-replan-task.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-multi-plan-baseline-reset.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-no-delivery-topology.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-agent-decision-log-api.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-agent-handoff-log-exporter.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-decision-log-entries.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-decision-log-ui.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-future-handoff-log-timeline.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-handoff-log-ui.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-next-session-decision-log-api.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-next-session-decision-log-exporter.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-pending-state-acceptance.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-plan-file-upload-api.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-plan-md-cleanup.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-plan-md-import-review-page.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-plan-md-importer.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-plan-md-planning-ui-import.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-plan-md-user-upload.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-plan-template-decision-log-history.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-plan-template-handoff-log-history.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal-progress-log-ui.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-normal.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-runtime-formal-review.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-scope-clarification-import-page-no-reset.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-scope-clarification-new-plan-file-upload-api-no-reset.jsonl +6 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-scope-clarification-plan-md-no-reset.jsonl +4 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-scope-clarification-plan-page-upload-api-no-reset.jsonl +6 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-skill-binding-fullwidth-comma.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-specialist-review-profiles.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-subagent-commit-history-review.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-subagent-descriptive-implementation-review.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-subagent-git-config-worktree-readonly.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-subagent-git-readonly-commands.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-subagent-git-stash-readonly.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-subagent-indirect-readonly-negation.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-subagent-readonly-negation.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-subagent-review-implementation.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/positive-wave-thread-v2-legacy.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/prepare-handoff-log-next-session-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/read-plan-md-handoff-context-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/redundant-execution-steps.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/skill-binding-mixed-dollar-and-plain.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/skill-binding-no-dollar-prefix.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/summary-blank-bullet.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/unrelated-flow-wording-default-fast-track.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/unrelated-flow-wording.jsonl +3 -0
- package/toolkit/skills/dev-plan/references/replay-cases/update-plan-md-implementation-steps-artifact.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/wave-sequence-jump.jsonl +2 -0
- package/toolkit/skills/dev-plan/references/replay-cases/wave-sequence-repeat.jsonl +2 -0
- package/toolkit/skills/dev-plan/scripts/test_migrate_task_orchestration.ts +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/README.md +36 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0001-compose-adrs-with-topic-specs.md +7 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0002-xp-infra-public-hostname-convention.md +11 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0003-external-fact-delivery-gates.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0003-task-scoped-pr-visual-evidence.md +23 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0004-scope-authority-and-topic-spec-boundaries.md +28 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0005-topic-spec-skill-naming.md +27 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0006-internal-plan-authorization-and-scope-constraints.md +26 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0007-source-managed-component-evidence.md +26 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0008-direct-pr-merge-preflight.md +25 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0009-initiative-child-integration-ci-boundary.md +24 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0010-post-merge-flow-receipt-finality.md +22 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0011-parallel-direct-pr-flow.md +25 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0012-mandatory-local-review-proof.md +23 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0013-review-necessity-tiering.md +21 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0014-direct-review-evidence.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0015-agent-owned-shared-testbox-workspace.md +12 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0016-bind-review-repairs-to-approved-scope.md +19 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0016-pr-lifecycle-workflow-ownership.md +27 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0017-review-readiness-and-runtime-launch.md +39 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0018-v5-bootstrap-integration-ci-activation.md +14 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0019-plan-release-disposition-policy-boundary.md +35 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0020-code-hosting-platform-boundary.md +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0020-empirical-acceptance-review-gate.md +42 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0021-runtime-derived-pre-merge-release-route.md +33 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0022-sandboxed-reg-cli-report-execution.md +31 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0023-dev-plan-release-delivery-scope.md +24 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0024-stop-condition-driven-release-decision.md +28 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0025-native-incus-agent-vm-lifecycle.md +11 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0026-agent-vm-cpu-memory-overselling.md +44 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0027-release-tracker-ownership.md +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0028-wave-thread-coordinator.md +22 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0029-wave-thread-delivery-batches.md +28 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0030-dev-plan-single-source-wave-thread.md +25 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0031-dev-plan-owner-review-projection.md +25 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0032-dev-plan-single-finalization-gate.md +86 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0032-flow-scoped-model-profile-allowlists.md +36 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0032-phase-aware-acceptance-gates.md +41 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0033-bun-typescript-script-runtime.md +41 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0033-empirical-acceptance-and-repair-autonomy.md +31 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0034-bun-cli-launch-boundary.md +36 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0034-priority-aware-review-repair-eligibility.md +16 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0035-task-orchestration-ledger.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0036-task-orchestration-dashboard-experience.md +77 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0037-dev-plan-multi-task-flow-routing.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0038-direct-review-terra-profile.md +27 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0039-fresh-dispatch-title-contract.md +13 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0040-dev-plan-standalone-typescript-finalizer.md +25 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0040-phase-aware-plan-revision-audit.md +35 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0041-contribution-tasks-and-delivery-units.md +7 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0041-task-orchestration-dashboard-experience.md +77 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0042-shared-orchestration-viewer.md +13 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0043-composite-notification-delivery.md +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0043-external-source-viewer.md +16 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0044-multi-task-execution-profile-and-cli-conversation-creation.md +28 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0045-viewer-compatibility-and-maintenance.md +19 -0
- package/toolkit/skills/docs/vendor/dot-codex/adr/0046-native-worktree-desktop-handoff.md +24 -0
- package/toolkit/skills/docs/vendor/dot-codex/agents/issue-tracker.md +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/design/multi-task-flow/dashboard-requirements.md +103 -0
- package/toolkit/skills/docs/vendor/dot-codex/design/multi-task-flow/data-and-scripts.md +297 -0
- package/toolkit/skills/docs/vendor/dot-codex/design/multi-task-flow/dev-plan-bridge.md +41 -0
- package/toolkit/skills/docs/vendor/dot-codex/design/multi-task-flow/execution.md +122 -0
- package/toolkit/skills/docs/vendor/dot-codex/design/multi-task-flow/orchestration.md +106 -0
- package/toolkit/skills/docs/vendor/dot-codex/design/multi-task-flow/plan-revision-and-change-audit.md +99 -0
- package/toolkit/skills/docs/vendor/dot-codex/design/multi-task-flow/shared-viewer.md +129 -0
- package/toolkit/skills/docs/vendor/dot-codex/design/multi-task-flow/web-template.md +161 -0
- package/toolkit/skills/docs/vendor/dot-codex/engineering-workflow.md +261 -0
- package/toolkit/skills/docs/vendor/dot-codex/solutions/README.md +112 -0
- package/toolkit/skills/docs/vendor/dot-codex/solutions/best-practices/project-doc-promotion.md +51 -0
- package/toolkit/skills/docs/vendor/dot-codex/solutions/troubleshooting/private-docker-audit-runtime-snapshot.md +67 -0
- package/toolkit/skills/docs/vendor/dot-codex/solutions/workflow-issues/browser-isolated-context-reuse.md +72 -0
- package/toolkit/skills/docs/vendor/dot-codex/solutions/workflow-issues/deep-skill-thin-adapter.md +56 -0
- package/toolkit/skills/docs/vendor/dot-codex/solutions/workflow-issues/forge-transport-decoupling.md +116 -0
- package/toolkit/skills/docs/vendor/dot-codex/solutions/workflow-issues/git-skill-convergence.md +105 -0
- package/toolkit/skills/docs/vendor/dot-codex/solutions/workflow-issues/gui-tool-escalation-gate.md +55 -0
- package/toolkit/skills/docs/vendor/dot-codex/solutions/workflow-issues/stable-preview-handoff-runtime.md +74 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/2h289-local-merge-cleanup-closeout/HISTORY.md +18 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/2h289-local-merge-cleanup-closeout/IMPLEMENTATION.md +55 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/2h289-local-merge-cleanup-closeout/SPEC.md +137 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/4zciv-pr-skill-diagnosis-thinning/HISTORY.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/4zciv-pr-skill-diagnosis-thinning/IMPLEMENTATION.md +60 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/4zciv-pr-skill-diagnosis-thinning/SPEC.md +142 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/4zciv-pr-skill-diagnosis-thinning/replay/cases.txt +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/4zciv-pr-skill-diagnosis-thinning/replay/negative-dirty-misread-as-approval.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/4zciv-pr-skill-diagnosis-thinning/replay/negative-promised-merge-branch-skipped.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/4zciv-pr-skill-diagnosis-thinning/replay/negative-session-approval-evidence-ignored.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/4zciv-pr-skill-diagnosis-thinning/replay/positive-blocked-with-approval-evidence.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/4zciv-pr-skill-diagnosis-thinning/replay/positive-dirty-conflict-reported.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/5dvcj-dev-plan-default-fast-track-auto-lock/HISTORY.md +16 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/5dvcj-dev-plan-default-fast-track-auto-lock/IMPLEMENTATION.md +37 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/5dvcj-dev-plan-default-fast-track-auto-lock/SPEC.md +58 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/5fsxh-viewport-safe-browser-evidence/HISTORY.md +19 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/5fsxh-viewport-safe-browser-evidence/IMPLEMENTATION.md +72 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/5fsxh-viewport-safe-browser-evidence/SPEC.md +170 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/6s9b8-retire-legacy-service-manager/HISTORY.md +18 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/6s9b8-retire-legacy-service-manager/IMPLEMENTATION.md +56 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/6s9b8-retire-legacy-service-manager/SPEC.md +48 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/7uqp8-mainline-baseline-topic-branch-freshness/HISTORY.md +15 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/7uqp8-mainline-baseline-topic-branch-freshness/IMPLEMENTATION.md +68 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/7uqp8-mainline-baseline-topic-branch-freshness/SPEC.md +166 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/8tmdq-local-chat-image-snapshots/HISTORY.md +19 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/8tmdq-local-chat-image-snapshots/IMPLEMENTATION.md +60 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/8tmdq-local-chat-image-snapshots/SPEC.md +151 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/9878v-shared-ui-visual-evidence-gate/HISTORY.md +69 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/9878v-shared-ui-visual-evidence-gate/IMPLEMENTATION.md +111 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/9878v-shared-ui-visual-evidence-gate/SPEC.md +288 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/9878v-shared-ui-visual-evidence-gate/replay/cases.txt +7 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/9878v-shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-before-ui-demo-check.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/9878v-shared-ui-visual-evidence-gate/replay/negative-mixed-component-then-full-page-storybook.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/9878v-shared-ui-visual-evidence-gate/replay/negative-owner-lock-survives-blocker-before-storybook.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/9878v-shared-ui-visual-evidence-gate/replay/negative-owner-locked-web-demo-replaced-by-storybook.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/9878v-shared-ui-visual-evidence-gate/replay/positive-component-storybook-allowed.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/9878v-shared-ui-visual-evidence-gate/replay/positive-full-page-storybook-fallback-after-no-ui-demo.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/9878v-shared-ui-visual-evidence-gate/replay/positive-user-allows-storybook-after-no-ui-demo.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/README.md +110 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/a4ge9-stable-preview-runtime/HISTORY.md +24 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/a4ge9-stable-preview-runtime/IMPLEMENTATION.md +66 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/a4ge9-stable-preview-runtime/SPEC.md +175 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/active-long-task-ownership-wait-guard/HISTORY.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/active-long-task-ownership-wait-guard/IMPLEMENTATION.md +64 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/active-long-task-ownership-wait-guard/SPEC.md +154 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/active-long-task-ownership-wait-guard/replay/cases.txt +11 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/active-long-task-ownership-wait-guard/replay/negative-019d681b-active-proof-owner-leak.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/active-long-task-ownership-wait-guard/replay/negative-019d686e-live-exec-owner-leak.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/active-long-task-ownership-wait-guard/replay/negative-focused-session-still-live-owner-leak.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/active-long-task-ownership-wait-guard/replay/negative-running-status-alone-owner-leak.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/active-long-task-ownership-wait-guard/replay/positive-continue-with-extra-request.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/active-long-task-ownership-wait-guard/replay/positive-continue-with-new-owner-input.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/active-long-task-ownership-wait-guard/replay/positive-focused-proof-exits-before-user-nudge.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/active-long-task-ownership-wait-guard/replay/positive-promised-session-exited-before-user-nudge.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/active-long-task-ownership-wait-guard/replay/positive-review-promise-does-not-bind-unrelated-live-session.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/active-long-task-ownership-wait-guard/replay/positive-terminal-before-user-nudge.jsonl +7 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/agent-instruction-architecture/HISTORY.md +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/agent-instruction-architecture/IMPLEMENTATION.md +23 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/agent-instruction-architecture/SPEC.md +85 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/agent-instruction-architecture/replay/baseline-gpt-5.6-sol.json +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/agent-instruction-architecture/replay/cases.json +212 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/agent-memory-project-docs/HISTORY.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/agent-memory-project-docs/IMPLEMENTATION.md +66 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/agent-memory-project-docs/SPEC.md +133 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/agent-vm/HISTORY.md +31 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/agent-vm/IMPLEMENTATION.md +144 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/agent-vm/RECLAMATION-DESIGN.md +72 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/agent-vm/RETENTION-DESIGN.md +17 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/agent-vm/SPEC.md +123 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/agent-vm/contracts/cli.md +82 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/ar7tp-storybook-skill-upgrade/HISTORY.md +23 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/ar7tp-storybook-skill-upgrade/IMPLEMENTATION.md +68 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/ar7tp-storybook-skill-upgrade/SPEC.md +165 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/bb5xj-global-solutions-docs-migrate/HISTORY.md +25 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/bb5xj-global-solutions-docs-migrate/IMPLEMENTATION.md +67 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/bb5xj-global-solutions-docs-migrate/SPEC.md +168 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/code-hosting-platform/HISTORY.md +29 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/code-hosting-platform/IMPLEMENTATION.md +38 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/code-hosting-platform/SPEC.md +100 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/cvm-imagegen-skill/HISTORY.md +22 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/cvm-imagegen-skill/IMPLEMENTATION.md +38 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/cvm-imagegen-skill/SPEC.md +180 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dev-plan-default-fast-track-auto-lock/HISTORY.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dev-plan-default-fast-track-auto-lock/IMPLEMENTATION.md +38 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dev-plan-default-fast-track-auto-lock/SPEC.md +68 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dev-plan-flow-lock-options/HISTORY.md +22 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dev-plan-flow-lock-options/IMPLEMENTATION.md +58 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dev-plan-flow-lock-options/SPEC.md +74 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dev-plan-goals-first/HISTORY.md +93 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dev-plan-goals-first/IMPLEMENTATION.md +131 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dev-plan-goals-first/SPEC.md +200 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dev-plan-standalone-typescript-finalizer/HISTORY.md +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dev-plan-standalone-typescript-finalizer/IMPLEMENTATION.md +27 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dev-plan-standalone-typescript-finalizer/SPEC.md +78 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dvc8g-dev-plan-goals-first/HISTORY.md +54 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dvc8g-dev-plan-goals-first/IMPLEMENTATION.md +87 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/dvc8g-dev-plan-goals-first/SPEC.md +171 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/empirical-acceptance-review-gate/HISTORY.md +25 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/empirical-acceptance-review-gate/IMPLEMENTATION.md +43 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/empirical-acceptance-review-gate/SPEC.md +99 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/empirical-acceptance-review-gate/replay/phase-closeout-cases.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/HISTORY.md +111 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/IMPLEMENTATION.md +195 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/SPEC.md +460 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/cases.txt +256 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/flow-continue-cases.txt +48 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-active-gate-closed-out-early.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-active-proof-merged-closeout.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-api-readonly-merge-probe-no-merge.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-assistant-merge-cleanup-dropped-to-ready.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-assistant-merge-only-dropped-to-ready.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-bare-remote-branch-blocked-exemption.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-behind-auth-regression.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-cleanup-anchor-with-no-proof-status.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-cleanup-diagnostic-output-no-proof.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-cleanup-negated-proof.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-cleanup-negated-wont-call.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-cleanup-promise-no-proof.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-cleanup-promised-skill-call.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-cleanup-proof-future-placeholder.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-cleanup-proof-pending.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-cleanup-proof-unchecked.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-cleanup-summary-no-proof.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-delete-branch-without-head-evidence.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-delete-in-or-fallback-after-merge-success.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-delete-wrong-remote-branch.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-earlier-merge-does-not-satisfy-later-intent.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-english-merged-closeout-no-cleanup.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-fast-track-distant-stale-current-head.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-fast-track-later-unknown-current-head.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-fast-track-nonlive-current-head.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-fast-track-stale-pr-fact.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-fast-track-stopped-before-pr.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-fast-track-unknown-current-head.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-flow-continue-release-epoch-missing-disposition.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-flow-continue-release-route-stale.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-flow-continue-route-null-after-adapter-create.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-flow-continue-route-null-after-api-field-create.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-flow-continue-route-null-after-pr-create.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-flow-continue-user-route-evidence.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-gh-api-delete-http-error.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-gh-delete-branch-flag-failed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-legacy-scheduled-tracker-tool-first.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-legacy-scheduled-tracker.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-merge-base-ahead-auto-updated.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-merge-base-blocker-no-menu.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-merge-base-primary-worktree-dirty-blocker-no-menu.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-merge-cleanup-late-rerun-after-positive-proof.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-merge-cleanup-late-skip-after-nonpositive-proof.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-merge-cleanup-nonpositive-proof-skips-cleanup.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-merge-cleanup-step6-reruns-cleanup.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-merge-diagnostic-command-no-merge.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-merge-help-command-no-merge.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-merge-no-remote-branch-delete.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-merge-only-dropped-to-ready.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-merge-proof-auth-regression.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-merged-pr-still-step5c.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-negated-fork-remote-branch-exists.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-no-open-pr-still-step5c.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-no-open-pr-terminal-last-agent-message.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-plain-merge-dropped-to-ready.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-post-merge-uses-pr-card.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-pr-head-nonterminal-result.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-ready-cleanup-combined-intent.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-ready-wording-with-cleanup-anchor.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-actual-sha-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-actual-sha-missing.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-actual-tag-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-api-opaque-label.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-api-pr-mutation-before-route.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-api-unmanaged-label.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-assistant-idempotency-untrusted.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-assistant-identity-override.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-bare-false-evidence.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-blind-rerun-before-discovery.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-compound-label.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-compound-unsafe-rerun.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-conflicting-artifact-sha.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-container-tag-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-context-not-applicable.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-cross-output-identity.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-cross-repo-rerun.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-cross-repo-target-ci-rerun.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-decision-card-missing.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-decision-confirmation-missing.jsonl +11 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-decision-policy-conflict.jsonl +12 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-decision-route-absence.jsonl +11 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-direct-flow-missing-disposition.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-disposition-publication-proof.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-double-rerun-one-call.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-draft-created-at.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-draft-not-published.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-expected-but-not-triggered.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-expected-premerge.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-failed-artifact-record.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-failed-expectation-missing.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-failed-without-live-fact.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-failure-report-incomplete.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-false-but-failed.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-global-flag-unsafe-rerun.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-identity-leaks-across-epoch.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-late-unrelated-idempotency.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-merge-sha-mismatch.jsonl +13 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-merge-sha-missing.jsonl +12 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-metadata-incomplete.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-missing-epoch-heartbeat-rebind.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-mixed-run-failure.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-multi-identity-incomplete.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-multi-surface-incomplete.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-mutation-before-disposition.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-mutation-without-reresolution.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-not-triggered-evidence-missing.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-not-triggered-status-missing.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-opaque-mismatched-rerun.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-published-expectation-missing.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-rerun-flags-before-id.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-rerun-stale-failure.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-rerun-without-failure.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-direct-step5c.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-epoch-reset.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-invalid-policy-pr.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-invalid-policy.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-invalid-target.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-null-after-adapter-pr-create.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-null-after-api-pr-create.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-null-after-epoch-reset.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-null-case-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-null-target-mismatched-facts.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-null-target-without-fact.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-positive-target-no-open-facts.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-target-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-unknown-mutates-pr.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-unknown-step5c.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-route-unmanaged-label.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-running-closed-out.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-same-epoch-expectation-flip.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-same-epoch-heartbeat-identity-conflict.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-same-epoch-identity-conflict.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-sha-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-snapshot-closed-out-early.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-snapshot-package-metadata.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-split-artifacts-one-output.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-split-atomic-identity.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-split-content-conflict.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-stale-epoch-publication.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-stale-evidence.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-status-entirely-omitted.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-stringified-split-identity.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-surfaces-discovered-in-parts.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-tag-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-target-branch-missing.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-target-sha-missing.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-time-invalid.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-time-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-timeout-recovery-missing.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-timeout-running.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-top-level-expectation-conflict.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-unknown-overwrite.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-unrelated-disabled-evidence.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-unresolved-report-fields-missing.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-unresolved-rerun-id.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-unresolved-reruns-cleanup.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-unsafe-reruns.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-url-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-user-expectation-untrusted.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-user-route-evidence.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-version-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-release-workflow-url-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-remote-merge-alias-release-status-missing.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-remote-merge-release-not-applicable.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-result-merged-release-not-applicable.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-safe-align-apply-only-on-failure-branch.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-safe-align-compound-wrong-order.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-safe-align-no-actions.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-safe-align-stash-apply-conflict.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-safe-align-stash-apply-or-true.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-safe-align-stash-not-reapplied.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-safe-align-stash-pop.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-safe-align-stash-without-untracked.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-safe-align-unrelated-earlier-backup.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-serialized-release-handoff.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-structured-remote-merge-release-not-applicable.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-sub-agent-main-polls-ci.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-sub-agent-mismatched-phase.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-sub-agent-mismatched-sha.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-sub-agent-mismatched-wait.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-sub-agent-unbound-launch.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-sub-agent-unrelated-sha.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-sub-agent-unrelated-wait.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-sub-agent-wait-timeout.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-sub-agent-without-card.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-sub-agent-without-disposition.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-sub-agent-without-launch.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-sub-agent-without-sha.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-sub-agent-without-terminal.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-sub-agent-without-wait.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-unguarded-direct-merge.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/negative-unrelated-remote-branch-absence-output.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-api-put-merge-no-cleanup.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-assistant-option-text-no-cleanup-intent.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-automation-after-followup-boundary.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-behind-auto-heal-merge-path.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-cleanup-proof-with-base-blocker.jsonl +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-compound-delete-then-verify.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-delete-refspec.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-delete-with-redirection.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-diagnostic-then-merge-same-command.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-failed-remote-merge-release-not-applicable.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-fast-track-current-head-not-stale.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-fast-track-live-pr-closeout.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-flow-continue-post-merge-same-message.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-flow-continue-post-merge-structured.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-flow-continue-release-route-reresolved.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-flow-switch-local-proof.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-fork-remote-delete-exempt.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-gh-api-delete-after-endpoint.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-gh-merge-cleanup-handoff.jsonl +11 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-git-delete-branch-with-error-word.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-git-push-origin-d-delete.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-guarded-direct-merge.jsonl +11 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-head-branch-plus-char.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-head-branch-prose-punctuation.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-historical-automation-ignored.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-latest-merge-ready-overrides-cleanup.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-local-merge-commit-release-not-applicable.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-local-merge-release-not-applicable.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-merge-base-ahead-decision-menu.jsonl +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-merge-base-decision-menu.jsonl +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-merge-base-linked-worktree-blocker.jsonl +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-merge-base-split-decision-menu.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-merge-cleanup-handoff.jsonl +11 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-merge-cleanup-nonpositive-proof-keeps-cleanup.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-merge-cleanup-release-resumes-pr-merge.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-merge-cleanup-rerun-then-step6-resume.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-merge-cleanup-step6-resumes-pr-merge.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-merge-failed-no-cleanup-required.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-merge-only-merge-no-cleanup.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-merge-proof-writable-convergence.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-merge-ready-stop.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-merge-with-gh-repo-flag.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-multiline-delete-script.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-negated-automation-mention.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-nonflow-metadata-local-proof.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-parallel-release-handoff.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-path-qualified-gh-merge-no-cleanup.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-plain-merge-no-cleanup.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-post-merge-repo-watcher.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-pr-head-ci-card.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-pr-head-defer.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-ptc-structured-tracker-card.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-ptc-tracker-card.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-ready-merge-pr-stop.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-api-readonly-label.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-container-alias-tag.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-container-only-published.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-decision-card-confirmed.jsonl +12 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-decision-card-published.jsonl +13 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-decision-card-single-message.jsonl +12 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-declared-image-name.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-disposition-separation.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-equivalent-sha-blocks.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-failed-no-rerun.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-false-same-epoch-heartbeat.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-github-enterprise.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-idempotent-rerun-published.jsonl +7 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-ignores-other-epoch-surfaces.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-ignores-pr-ci-rerun.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-ignores-pr-head-ci-rerun.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-late-run-id.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-no-managed-route.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-non-ghcr-package.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-not-triggered.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-published-with-metadata.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-readonly-pr-facts.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-repeated-same-epoch.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-route-managed-label.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-split-content-discovery.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-string-discovery.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-string-output-published.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-structured-content-discovery.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-structured-disabled.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-structured-identity.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-success-false-rerun-published.jsonl +7 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-text-wrapper-discovery.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-timeout-incomplete.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-tracker-unavailable.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-unknown-reresolved.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-unknown-unresolved.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-unresolved-resumes-pr-merge.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-v-prefixed-tag.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-workflow-url-before-run-id.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-release-workflow-url-failure-no-run-id.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-remote-branch-not-found-verification.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-safe-align-backup-at-head.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-safe-align-backup-name-without-backup-word.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-safe-align-clean-no-stash-created.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-safe-align-completion-ahead.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-safe-align-force-backup-branch.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-safe-align-later-backup-command.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-safe-align-restores-dirty-untracked.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-safe-align-stash-apply-exit-guard.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-safe-align-stash-apply-fallback-after-index-error.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-safe-align-stash-apply-fallback.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-shell-command-array-merge-no-cleanup.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-shell-script-merge-no-cleanup.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-shell-wrapped-compound-delete.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-shell-wrapped-merge-no-cleanup.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-sub-agent-ci-wait.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-unrelated-automation-update.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fast-track-merge-intent-closeout/replay/positive-unrelated-sidecar-phase-text.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/HISTORY.md +26 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/IMPLEMENTATION.md +77 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/SPEC.md +183 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/cases.txt +47 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-assistant-narration-clears-ui-confirmation.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-chinese-initiative-alias-drift.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-contradictory-permit-base-advance-routed.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-draft-bootstrap-permit-base-advance-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-duplicate-load-skill-argument-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-extra-load-skill-argument-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-flow-switch-after-repair-continue-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-incomplete-permit-base-advance-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-initiative-flow-chinese-alias-drift.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-invalidated-permit-base-advance-routed.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-issued-permit-base-fast-forward-not-resumed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-latest-untrusted-permit-base-advance-routed.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-locked-fast-track-drift-to-local-merge.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-merge-path-review-feedback-needs-auth.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-mixed-visual-status-cannot-clear-confirmation.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-negated-permit-base-advance-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-noncanonical-base-relation-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-noncanonical-live-pr-match-routed.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-noncanonical-python-repair-wave-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-partial-refresh-permit-base-advance-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-pending-ui-confirmation-routed-to-pr-create.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-pr-create-with-convergence-reopen.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-rejected-route-retry-routed.jsonl +7 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-repair-wave-bare-head-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-repair-wave-empty-values-routed.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-repair-wave-sentinel-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-repair-wave-unknown-option-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-same-event-visual-request-and-pr-route.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-shell-repair-wave-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-textual-pr-create-not-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-top-level-convergence-reopen-routed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/negative-untrusted-permit-base-advance-routed.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/positive-canonical-pr-merge-procedure.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/positive-canonical-pr-publication-procedure.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/positive-confirmed-ui-routes-to-pr-create.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/positive-explicit-local-merge-switch.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/positive-generic-continue-stays-initiative.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/positive-generic-merge-stays-fast-track.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/positive-invalidated-permit-base-advance-stays-blocked.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/positive-issued-permit-base-fast-forward-opens-repair-wave.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/positive-issued-permit-base-fast-forward-resumes.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/positive-issued-permit-repair-wave-without-head.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/positive-merge-path-review-feedback-routes-pr-create.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/positive-negated-merge-does-not-resume-repair.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/positive-ordinary-pr-create-without-recovery-facts.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/positive-unchanged-ui-routes-to-pr-create.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/python-oracle.json +304 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/flow-continue-lock-guard/replay/session-019ce28f-bc31-7d02-990f-c9f02c1bf028.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fresh-thread-dispatch/HISTORY.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fresh-thread-dispatch/IMPLEMENTATION.md +28 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/fresh-thread-dispatch/SPEC.md +87 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/git-skill-convergence/HISTORY.md +28 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/git-skill-convergence/IMPLEMENTATION.md +50 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/git-skill-convergence/SPEC.md +174 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/global-port-preview-governance/HISTORY.md +31 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/global-port-preview-governance/IMPLEMENTATION.md +73 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/global-port-preview-governance/SPEC.md +219 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/global-solutions-docs-migrate/HISTORY.md +25 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/global-solutions-docs-migrate/IMPLEMENTATION.md +67 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/global-solutions-docs-migrate/SPEC.md +168 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/gn7xq-gui-escalation-gate/HISTORY.md +12 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/gn7xq-gui-escalation-gate/IMPLEMENTATION.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/gn7xq-gui-escalation-gate/SPEC.md +99 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/gn7xq-gui-escalation-gate/replay/cases.txt +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/gn7xq-gui-escalation-gate/replay/negative-chrome-fallback-after-ego-browser-failed.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/gn7xq-gui-escalation-gate/replay/negative-chrome-fallback-after-ego-browser-unavailable.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/gn7xq-gui-escalation-gate/replay/positive-ego-browser-first.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/gui-escalation-gate/HISTORY.md +12 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/gui-escalation-gate/IMPLEMENTATION.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/gui-escalation-gate/SPEC.md +99 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/gui-escalation-gate/replay/cases.txt +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/gui-escalation-gate/replay/negative-chrome-fallback-after-ego-browser-failed.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/gui-escalation-gate/replay/negative-chrome-fallback-after-ego-browser-unavailable.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/gui-escalation-gate/replay/positive-ego-browser-first.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/hd86w-pr-wait-state-closeout/HISTORY.md +18 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/hd86w-pr-wait-state-closeout/IMPLEMENTATION.md +58 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/hd86w-pr-wait-state-closeout/SPEC.md +110 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/initiative-flow/HISTORY.md +11 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/initiative-flow/IMPLEMENTATION.md +16 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/initiative-flow/SPEC.md +72 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/j4ha2-pr-conflict-auto-heal/HISTORY.md +18 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/j4ha2-pr-conflict-auto-heal/IMPLEMENTATION.md +60 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/j4ha2-pr-conflict-auto-heal/SPEC.md +123 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/j4ha2-pr-conflict-auto-heal/replay/cases.txt +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/j4ha2-pr-conflict-auto-heal/replay/negative-conflict-escalated-to-owner.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/j4ha2-pr-conflict-auto-heal/replay/negative-conflict-hidden-as-ci-absence.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/j4ha2-pr-conflict-auto-heal/replay/positive-conflict-auto-heal-routed.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/j4ha2-pr-conflict-auto-heal/replay/positive-manual-only-no-checks.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/j4ha2-pr-conflict-auto-heal/replay/positive-merge-only-conflict-auto-heal.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/j4ha2-pr-conflict-auto-heal/replay/positive-pull-request-target-conflict-runs.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/k4n8p-dev-plan-flow-lock-options/HISTORY.md +22 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/k4n8p-dev-plan-flow-lock-options/IMPLEMENTATION.md +58 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/k4n8p-dev-plan-flow-lock-options/SPEC.md +70 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/local-chat-image-snapshots/HISTORY.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/local-chat-image-snapshots/IMPLEMENTATION.md +71 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/local-chat-image-snapshots/SPEC.md +196 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/local-chat-image-snapshots/replay/cases.json +74 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/local-merge-cleanup-closeout/HISTORY.md +18 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/local-merge-cleanup-closeout/IMPLEMENTATION.md +55 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/local-merge-cleanup-closeout/SPEC.md +137 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/m3k8q-review-proof-dedupe-wait-guard/HISTORY.md +19 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/m3k8q-review-proof-dedupe-wait-guard/IMPLEMENTATION.md +65 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/m3k8q-review-proof-dedupe-wait-guard/SPEC.md +137 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/m3k8q-review-proof-dedupe-wait-guard/replay/cases.txt +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/m3k8q-review-proof-dedupe-wait-guard/replay/negative-live-proof-duplicate-launch.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/m3k8q-review-proof-dedupe-wait-guard/replay/positive-single-proof-polling.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/mainline-baseline-topic-branch-freshness/HISTORY.md +15 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/mainline-baseline-topic-branch-freshness/IMPLEMENTATION.md +68 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/mainline-baseline-topic-branch-freshness/SPEC.md +166 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/mandatory-local-review-proof/HISTORY.md +17 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/mandatory-local-review-proof/IMPLEMENTATION.md +31 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/mandatory-local-review-proof/SPEC.md +111 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/mcu-agentd-retirement/HISTORY.md +31 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/mcu-agentd-retirement/IMPLEMENTATION.md +61 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/mcu-agentd-retirement/SPEC.md +70 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/HISTORY.md +72 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/IMPLEMENTATION.md +144 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/SCHEMA-CONSTRAINTS.md +87 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/SCHEMA.md +249 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/SPEC.md +363 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/archive-compact.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/bootstrap-ownership.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/card-hover-board-group-time-desktop.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/card-hover-board-group-time-mobile.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/card-hover-board-time-mobile.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/card-hover-conversation-desktop.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/card-hover-pr-desktop.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/card-hover-time-desktop.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/dashboard-desktop.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/dashboard-mobile.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/dependency-status-time.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/detail-viewport-desktop.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/detail-viewport-medium.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/detail-viewport-mobile.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/execution-profile-default.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/execution-profile-desktop.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/execution-profile-menu.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/execution-profile-mobile.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/latest-output-desktop.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/latest-output-hover.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/output-tooltip-boundary.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/plan-warning-desktop.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/plan-warning-mobile.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/responsive-inspector.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/shared-run-mobile.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/shared-runs.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/assets/source-preview.png +0 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/multi-task-flow/native-handoff-compatibility.json +43 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/p6m2r-pr-live-github-truth-source/HISTORY.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/p6m2r-pr-live-github-truth-source/IMPLEMENTATION.md +62 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/p6m2r-pr-live-github-truth-source/SPEC.md +122 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/parallel-pr-flow/HISTORY.md +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/parallel-pr-flow/IMPLEMENTATION.md +16 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/parallel-pr-flow/SPEC.md +41 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pj4fz-pr-post-open-scope-freeze/HISTORY.md +23 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pj4fz-pr-post-open-scope-freeze/IMPLEMENTATION.md +58 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pj4fz-pr-post-open-scope-freeze/SPEC.md +103 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-conflict-auto-heal/HISTORY.md +22 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-conflict-auto-heal/IMPLEMENTATION.md +61 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-conflict-auto-heal/SPEC.md +154 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-conflict-auto-heal/replay/cases.txt +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-conflict-auto-heal/replay/negative-conflict-escalated-to-owner.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-conflict-auto-heal/replay/negative-conflict-hidden-as-ci-absence.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-conflict-auto-heal/replay/positive-conflict-auto-heal-routed.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-conflict-auto-heal/replay/positive-manual-only-no-checks.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-conflict-auto-heal/replay/positive-merge-only-conflict-auto-heal.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-conflict-auto-heal/replay/positive-pull-request-target-conflict-runs.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-convergence-batching/HISTORY.md +61 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-convergence-batching/IMPLEMENTATION.md +106 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-convergence-batching/SPEC.md +244 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-convergence-batching/replay/first-round-parallel-barrier.json +320 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-freshness-gate/HISTORY.md +22 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-freshness-gate/IMPLEMENTATION.md +58 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-freshness-gate/SPEC.md +45 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-live-github-truth-source/HISTORY.md +24 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-live-github-truth-source/IMPLEMENTATION.md +64 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-live-github-truth-source/SPEC.md +168 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-post-open-scope-freeze/HISTORY.md +25 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-post-open-scope-freeze/IMPLEMENTATION.md +59 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-post-open-scope-freeze/SPEC.md +105 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/HISTORY.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/IMPLEMENTATION.md +62 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/SPEC.md +150 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/replay/cases.txt +12 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/replay/negative-dirty-misread-as-approval.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/replay/negative-draft-bootstrap-and-convergence-same-event.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/replay/negative-draft-convergence-before-owner-confirmation.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/replay/negative-draft-direct-gh-convergence-before-owner-confirmation.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/replay/negative-draft-mixed-visual-status-cannot-clear-confirmation.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/replay/negative-draft-render-surface-change-after-confirmation.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/replay/negative-promised-merge-branch-skipped.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/replay/negative-session-approval-evidence-ignored.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/replay/positive-blocked-with-approval-evidence.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/replay/positive-dirty-conflict-reported.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/replay/positive-draft-confirmation-before-convergence.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-skill-diagnosis-thinning/replay/positive-draft-unchanged-feedback-before-convergence.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-wait-state-closeout/HISTORY.md +18 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-wait-state-closeout/IMPLEMENTATION.md +57 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/pr-wait-state-closeout/SPEC.md +110 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/q3wyh-cvm-imagegen-skill/HISTORY.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/q3wyh-cvm-imagegen-skill/IMPLEMENTATION.md +33 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/q3wyh-cvm-imagegen-skill/SPEC.md +151 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/q9r2m-review-proof-ownership/HISTORY.md +19 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/q9r2m-review-proof-ownership/IMPLEMENTATION.md +57 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/q9r2m-review-proof-ownership/SPEC.md +136 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/qyd57-agent-memory-project-docs/HISTORY.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/qyd57-agent-memory-project-docs/IMPLEMENTATION.md +66 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/qyd57-agent-memory-project-docs/SPEC.md +133 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/HISTORY.md +95 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/IMPLEMENTATION.md +176 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/SPEC.md +370 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/cases.txt +199 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/flow-continue-cases.txt +37 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-active-gate-closed-out-early.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-active-proof-merged-closeout.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-api-readonly-merge-probe-no-merge.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-assistant-merge-cleanup-dropped-to-ready.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-assistant-merge-only-dropped-to-ready.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-bare-remote-branch-blocked-exemption.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-behind-auth-regression.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-cleanup-anchor-with-no-proof-status.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-cleanup-diagnostic-output-no-proof.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-cleanup-negated-proof.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-cleanup-negated-wont-call.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-cleanup-promise-no-proof.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-cleanup-promised-skill-call.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-cleanup-proof-future-placeholder.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-cleanup-proof-pending.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-cleanup-proof-unchecked.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-cleanup-summary-no-proof.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-delete-branch-without-head-evidence.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-delete-in-or-fallback-after-merge-success.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-delete-wrong-remote-branch.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-earlier-merge-does-not-satisfy-later-intent.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-english-merged-closeout-no-cleanup.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-gh-api-delete-http-error.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-gh-delete-branch-flag-failed.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-legacy-scheduled-tracker-tool-first.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-legacy-scheduled-tracker.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-merge-base-ahead-auto-updated.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-merge-base-blocker-no-menu.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-merge-base-primary-worktree-dirty-blocker-no-menu.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-merge-cleanup-late-rerun-after-positive-proof.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-merge-cleanup-late-skip-after-nonpositive-proof.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-merge-cleanup-nonpositive-proof-skips-cleanup.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-merge-cleanup-step6-reruns-cleanup.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-merge-diagnostic-command-no-merge.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-merge-help-command-no-merge.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-merge-no-remote-branch-delete.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-merge-only-dropped-to-ready.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-merge-proof-auth-regression.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-negated-fork-remote-branch-exists.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-no-open-pr-still-step5c.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-no-open-pr-terminal-last-agent-message.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-plain-merge-dropped-to-ready.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-post-merge-uses-pr-card.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-pr-head-nonterminal-result.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-ready-cleanup-combined-intent.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-ready-wording-with-cleanup-anchor.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-actual-sha-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-actual-sha-missing.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-actual-tag-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-assistant-idempotency-untrusted.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-assistant-identity-override.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-bare-false-evidence.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-blind-rerun-before-discovery.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-compound-unsafe-rerun.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-conflicting-artifact-sha.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-container-tag-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-context-not-applicable.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-cross-output-identity.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-cross-repo-rerun.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-cross-repo-target-ci-rerun.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-double-rerun-one-call.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-draft-created-at.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-draft-not-published.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-expected-but-not-triggered.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-failed-artifact-record.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-failed-expectation-missing.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-failed-without-live-fact.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-failure-report-incomplete.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-false-but-failed.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-global-flag-unsafe-rerun.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-identity-leaks-across-epoch.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-late-unrelated-idempotency.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-metadata-incomplete.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-missing-epoch-heartbeat-rebind.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-mixed-run-failure.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-multi-identity-incomplete.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-multi-surface-incomplete.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-not-triggered-evidence-missing.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-not-triggered-status-missing.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-opaque-mismatched-rerun.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-published-expectation-missing.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-rerun-flags-before-id.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-rerun-stale-failure.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-rerun-without-failure.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-running-closed-out.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-same-epoch-expectation-flip.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-same-epoch-heartbeat-identity-conflict.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-same-epoch-identity-conflict.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-sha-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-snapshot-closed-out-early.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-snapshot-package-metadata.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-split-artifacts-one-output.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-split-atomic-identity.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-split-content-conflict.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-stale-epoch-publication.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-stale-evidence.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-status-entirely-omitted.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-stringified-split-identity.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-surfaces-discovered-in-parts.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-tag-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-target-branch-missing.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-target-sha-missing.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-time-invalid.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-time-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-timeout-recovery-missing.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-timeout-running.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-top-level-expectation-conflict.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-unrelated-disabled-evidence.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-unresolved-report-fields-missing.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-unresolved-rerun-id.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-unresolved-reruns-cleanup.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-unsafe-reruns.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-url-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-user-expectation-untrusted.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-version-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-release-workflow-url-mismatch.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-remote-merge-alias-release-status-missing.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-remote-merge-release-not-applicable.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-result-merged-release-not-applicable.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-safe-align-apply-only-on-failure-branch.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-safe-align-compound-wrong-order.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-safe-align-no-actions.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-safe-align-stash-apply-conflict.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-safe-align-stash-apply-or-true.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-safe-align-stash-not-reapplied.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-safe-align-stash-pop.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-safe-align-stash-without-untracked.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-safe-align-unrelated-earlier-backup.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-structured-remote-merge-release-not-applicable.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-sub-agent-main-polls-ci.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-sub-agent-mismatched-phase.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-sub-agent-mismatched-sha.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-sub-agent-mismatched-wait.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-sub-agent-unbound-launch.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-sub-agent-unrelated-sha.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-sub-agent-unrelated-wait.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-sub-agent-wait-timeout.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-sub-agent-without-card.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-sub-agent-without-disposition.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-sub-agent-without-launch.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-sub-agent-without-sha.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-sub-agent-without-terminal.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-sub-agent-without-wait.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/negative-unrelated-remote-branch-absence-output.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-api-put-merge-no-cleanup.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-assistant-option-text-no-cleanup-intent.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-automation-after-followup-boundary.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-behind-auto-heal-merge-path.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-cleanup-proof-with-base-blocker.jsonl +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-compound-delete-then-verify.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-delete-refspec.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-delete-with-redirection.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-diagnostic-then-merge-same-command.jsonl +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-failed-remote-merge-release-not-applicable.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-fork-remote-delete-exempt.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-gh-api-delete-after-endpoint.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-gh-merge-cleanup-handoff.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-git-delete-branch-with-error-word.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-git-push-origin-d-delete.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-head-branch-plus-char.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-head-branch-prose-punctuation.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-historical-automation-ignored.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-latest-merge-ready-overrides-cleanup.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-local-merge-commit-release-not-applicable.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-local-merge-release-not-applicable.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-merge-base-ahead-decision-menu.jsonl +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-merge-base-decision-menu.jsonl +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-merge-base-linked-worktree-blocker.jsonl +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-merge-base-split-decision-menu.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-merge-cleanup-handoff.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-merge-cleanup-nonpositive-proof-keeps-cleanup.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-merge-cleanup-release-resumes-pr-merge.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-merge-cleanup-rerun-then-step6-resume.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-merge-cleanup-step6-resumes-pr-merge.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-merge-failed-no-cleanup-required.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-merge-only-merge-no-cleanup.jsonl +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-merge-proof-writable-convergence.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-merge-ready-stop.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-merge-with-gh-repo-flag.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-multiline-delete-script.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-negated-automation-mention.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-path-qualified-gh-merge-no-cleanup.jsonl +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-plain-merge-no-cleanup.jsonl +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-post-merge-repo-watcher.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-pr-head-ci-card.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-pr-head-defer.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-ready-merge-pr-stop.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-container-alias-tag.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-container-only-published.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-declared-image-name.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-equivalent-sha-blocks.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-failed-no-rerun.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-false-same-epoch-heartbeat.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-github-enterprise.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-idempotent-rerun-published.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-ignores-other-epoch-surfaces.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-ignores-pr-ci-rerun.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-ignores-pr-head-ci-rerun.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-late-run-id.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-non-ghcr-package.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-not-triggered.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-published-with-metadata.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-repeated-same-epoch.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-split-content-discovery.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-string-discovery.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-string-output-published.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-structured-content-discovery.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-structured-disabled.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-structured-identity.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-success-false-rerun-published.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-text-wrapper-discovery.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-timeout-incomplete.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-tracker-unavailable.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-unknown-unresolved.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-unresolved-resumes-pr-merge.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-v-prefixed-tag.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-workflow-url-before-run-id.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-release-workflow-url-failure-no-run-id.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-remote-branch-not-found-verification.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-safe-align-backup-at-head.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-safe-align-backup-name-without-backup-word.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-safe-align-clean-no-stash-created.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-safe-align-completion-ahead.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-safe-align-force-backup-branch.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-safe-align-later-backup-command.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-safe-align-restores-dirty-untracked.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-safe-align-stash-apply-exit-guard.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-safe-align-stash-apply-fallback-after-index-error.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-safe-align-stash-apply-fallback.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-shell-command-array-merge-no-cleanup.jsonl +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-shell-script-merge-no-cleanup.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-shell-wrapped-compound-delete.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-shell-wrapped-merge-no-cleanup.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-sub-agent-ci-wait.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-unrelated-automation-update.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/r4m7k-fast-track-merge-intent-closeout/replay/positive-unrelated-sidecar-phase-text.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/release-tracking/HISTORY.md +7 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/release-tracking/IMPLEMENTATION.md +58 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/release-tracking/SPEC.md +78 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/release-tracking/replay/cases.txt +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/release-tracking/replay/manual-recovery-positive.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/release-tracking/replay/tracking-heartbeat-negative.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/release-tracking/replay/unrelated-automation-positive.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/retire-legacy-service-manager/HISTORY.md +18 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/retire-legacy-service-manager/IMPLEMENTATION.md +56 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/retire-legacy-service-manager/SPEC.md +48 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-effort-by-pr-stage/HISTORY.md +24 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-effort-by-pr-stage/IMPLEMENTATION.md +60 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-effort-by-pr-stage/SPEC.md +110 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-proof-dedupe-wait-guard/HISTORY.md +23 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-proof-dedupe-wait-guard/IMPLEMENTATION.md +67 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-proof-dedupe-wait-guard/SPEC.md +62 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-proof-dedupe-wait-guard/replay/cases.txt +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-proof-dedupe-wait-guard/replay/negative-exec-session-wait-misuse.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-proof-dedupe-wait-guard/replay/negative-helper-review-wrapper.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-proof-dedupe-wait-guard/replay/negative-live-proof-duplicate-launch.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-proof-dedupe-wait-guard/replay/negative-non-direct-review-launch.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-proof-dedupe-wait-guard/replay/positive-single-proof-polling.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-proof-ownership/HISTORY.md +22 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-proof-ownership/IMPLEMENTATION.md +60 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/review-proof-ownership/SPEC.md +39 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/s7gvk-pr-freshness-gate/HISTORY.md +18 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/s7gvk-pr-freshness-gate/IMPLEMENTATION.md +56 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/s7gvk-pr-freshness-gate/SPEC.md +140 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-testbox-heavy-validation/HISTORY.md +11 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-testbox-heavy-validation/IMPLEMENTATION.md +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-testbox-heavy-validation/SPEC.md +29 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/HISTORY.md +86 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/IMPLEMENTATION.md +133 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/SPEC.md +80 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/cases.txt +64 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-confirmation-invalidated-by-candidate-change.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-after-owner-approval.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-after-qualified-ui-demo.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-ambiguous-multi-page-route.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-before-ui-demo-check.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-chinese-unrelated-approval.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-conditional-approval.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-conditional-exception-followup.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-conditional-ui-demo-absence-chinese.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-conditional-ui-demo-absence.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-cross-sentence-condition.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-denial-is-page-scoped.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-disallowed-approval.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-disapproved-approval.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-double-negated-ui-demo.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-english-not-yet-approved.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-english-question-about-approval.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-exception-before-route-does-not-leak.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-exception-does-not-leak.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-fallback-without-explicit-exception.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-generic-page-request-does-not-leak.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-long-negation.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-mixed-ui-demo-state.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-multi-page-grant-inherits.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-multiple-owner-locks.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-no-exception-after-component.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-not-authorized.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-not-yet-approved.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-only-after-approval.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-other-page-source-revocation.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-owner-lock-after-component.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-page-absence-does-not-leak.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-page-scoped-authorization.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-page-state-resets-with-component.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-question-about-approval.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-trailing-page-denial.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-unapproved-approval.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-unrelated-approval.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-unrelated-fallback-revocation.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-full-page-storybook-unrelated-release-approval.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-implementation-approval-is-not-visual-confirmation.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-local-pr-before-owner-confirmation.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-mixed-component-then-full-page-storybook.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-mixed-visual-status-cannot-clear-confirmation.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-owner-lock-survives-blocker-before-storybook.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-owner-locked-english-ui-demo-replaced-by-storybook.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-owner-locked-web-demo-replaced-by-storybook.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-same-event-visual-request-and-pr-route.jsonl +1 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/negative-visual-rejection-is-not-acceptance.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-active-spec-page-storybook-exception.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-component-only-page-context.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-component-storybook-allowed.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-full-page-storybook-can-use-grant.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-full-page-storybook-current-approval-supersedes-denial.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-full-page-storybook-owner-lock-is-page-scoped.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-full-page-storybook-owner-lock-revoked.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-full-page-storybook-qualified-ui-demo-unavailable.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-full-page-storybook-with-unqualified-ui-demo.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-legacy-card-is-ignored.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-local-confirmation-before-pr.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-owner-locked-page-component-storybook.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-project-documentation-page-storybook-exception.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-unchanged-visual-evidence-before-pr.jsonl +2 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/shared-ui-visual-evidence-gate/replay/positive-user-allows-storybook-after-no-ui-demo.jsonl +3 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/stable-preview-runtime/HISTORY.md +24 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/stable-preview-runtime/IMPLEMENTATION.md +66 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/stable-preview-runtime/SPEC.md +173 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/storybook-skill-upgrade/HISTORY.md +23 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/storybook-skill-upgrade/IMPLEMENTATION.md +69 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/storybook-skill-upgrade/SPEC.md +189 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/syj6s-pr-convergence-batching/HISTORY.md +27 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/syj6s-pr-convergence-batching/IMPLEMENTATION.md +66 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/syj6s-pr-convergence-batching/SPEC.md +147 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/sz4cs-global-port-preview-governance/HISTORY.md +28 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/sz4cs-global-port-preview-governance/IMPLEMENTATION.md +75 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/sz4cs-global-port-preview-governance/SPEC.md +219 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/topic-spec-model/HISTORY.md +41 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/topic-spec-model/IMPLEMENTATION.md +74 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/topic-spec-model/SPEC.md +58 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/viewport-safe-browser-evidence/HISTORY.md +19 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/viewport-safe-browser-evidence/IMPLEMENTATION.md +72 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/viewport-safe-browser-evidence/SPEC.md +168 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/visual-evidence-whitespace-trim/HISTORY.md +22 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/visual-evidence-whitespace-trim/IMPLEMENTATION.md +63 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/visual-evidence-whitespace-trim/SPEC.md +76 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/vw73w-visual-evidence-whitespace-trim/HISTORY.md +22 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/vw73w-visual-evidence-whitespace-trim/IMPLEMENTATION.md +63 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/vw73w-visual-evidence-whitespace-trim/SPEC.md +76 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/w7yqp-git-skill-convergence/HISTORY.md +28 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/w7yqp-git-skill-convergence/IMPLEMENTATION.md +50 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/w7yqp-git-skill-convergence/SPEC.md +176 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/wave-thread-flow/HISTORY.md +37 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/wave-thread-flow/IMPLEMENTATION.md +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/wave-thread-flow/SPEC.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/weppn-topic-spec-model/HISTORY.md +31 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/weppn-topic-spec-model/IMPLEMENTATION.md +66 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/weppn-topic-spec-model/SPEC.md +178 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/workflow-agent-model-selection/HISTORY.md +29 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/workflow-agent-model-selection/IMPLEMENTATION.md +42 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/workflow-agent-model-selection/SPEC.md +86 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/workflow-execution-receipts/HISTORY.md +69 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/workflow-execution-receipts/IMPLEMENTATION.md +17 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/workflow-execution-receipts/SPEC.md +56 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/workflow-execution-receipts/contracts/review-orchestration-retirement.md +45 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/workflow-execution-receipts/replay/classification-cases.json +62 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/workflow-execution-receipts/replay/convergence-cases.json +22 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/workflow-execution-receipts/replay/review-wave-cases.json +9 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/xp-infra-public-hostname-convention/HISTORY.md +15 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/xp-infra-public-hostname-convention/IMPLEMENTATION.md +26 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/xp-infra-public-hostname-convention/SPEC.md +125 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/y9nrr-review-effort-by-pr-stage/HISTORY.md +21 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/y9nrr-review-effort-by-pr-stage/IMPLEMENTATION.md +60 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/y9nrr-review-effort-by-pr-stage/SPEC.md +108 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/yr954-flow-continue-lock-guard/HISTORY.md +20 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/yr954-flow-continue-lock-guard/IMPLEMENTATION.md +59 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/yr954-flow-continue-lock-guard/SPEC.md +135 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/yr954-flow-continue-lock-guard/replay/cases.txt +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/yr954-flow-continue-lock-guard/replay/negative-locked-fast-track-drift-to-local-merge.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/yr954-flow-continue-lock-guard/replay/negative-merge-path-review-feedback-needs-auth.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/yr954-flow-continue-lock-guard/replay/positive-explicit-local-merge-switch.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/yr954-flow-continue-lock-guard/replay/positive-generic-merge-stays-fast-track.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/yr954-flow-continue-lock-guard/replay/positive-merge-path-review-feedback-routes-pr-create.jsonl +6 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/yr954-flow-continue-lock-guard/replay/session-019ce28f-bc31-7d02-990f-c9f02c1bf028.jsonl +5 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/zmp5f-active-long-task-ownership-wait-guard/HISTORY.md +18 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/zmp5f-active-long-task-ownership-wait-guard/IMPLEMENTATION.md +63 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/zmp5f-active-long-task-ownership-wait-guard/SPEC.md +151 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/zmp5f-active-long-task-ownership-wait-guard/replay/cases.txt +11 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/zmp5f-active-long-task-ownership-wait-guard/replay/negative-019d681b-active-proof-owner-leak.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/zmp5f-active-long-task-ownership-wait-guard/replay/negative-019d686e-live-exec-owner-leak.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/zmp5f-active-long-task-ownership-wait-guard/replay/negative-focused-session-still-live-owner-leak.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/zmp5f-active-long-task-ownership-wait-guard/replay/negative-running-status-alone-owner-leak.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/zmp5f-active-long-task-ownership-wait-guard/replay/positive-continue-with-extra-request.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/zmp5f-active-long-task-ownership-wait-guard/replay/positive-continue-with-new-owner-input.jsonl +4 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/zmp5f-active-long-task-ownership-wait-guard/replay/positive-focused-proof-exits-before-user-nudge.jsonl +10 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/zmp5f-active-long-task-ownership-wait-guard/replay/positive-promised-session-exited-before-user-nudge.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/zmp5f-active-long-task-ownership-wait-guard/replay/positive-review-promise-does-not-bind-unrelated-live-session.jsonl +8 -0
- package/toolkit/skills/docs/vendor/dot-codex/specs/zmp5f-active-long-task-ownership-wait-guard/replay/positive-terminal-before-user-nudge.jsonl +7 -0
- package/toolkit/skills/docs-migrate/SKILL.md +103 -0
- package/toolkit/skills/docs-migrate/agents/openai.yaml +2 -0
- package/toolkit/skills/docs-migrate/references/mode-fixtures.md +53 -0
- package/toolkit/skills/docs-migrate/references/project-docs-mode.md +30 -0
- package/toolkit/skills/docs-migrate/references/solutions-mode.md +175 -0
- package/toolkit/skills/docs-migrate/references/specs-hygiene-mode.md +33 -0
- package/toolkit/skills/docs-migrate/references/specs-mode.md +32 -0
- package/toolkit/skills/docs-migrate/scripts/gen_legacy_spec_id.ts +4 -0
- package/toolkit/skills/docs-migrate/scripts/specs_migrate_guard.ts +4 -0
- package/toolkit/skills/docs-migrate/scripts/test_gen_legacy_spec_id.ts +1 -0
- package/toolkit/skills/docs-migrate/scripts/test_specs_migrate_guard.ts +1 -0
- package/toolkit/skills/dot-codex-development/SKILL.md +48 -0
- package/toolkit/skills/dot-codex-development/agents/openai.yaml +4 -0
- package/toolkit/skills/dot-codex-development/scripts/context.ts +3 -0
- package/toolkit/skills/dot-codex-development/scripts/test_context.ts +1 -0
- package/toolkit/skills/fast-flow/SKILL.md +46 -0
- package/toolkit/skills/find-next-plan/SKILL.md +70 -0
- package/toolkit/skills/find-next-plan/agents/openai.yaml +2 -0
- package/toolkit/skills/find-next-plan/scripts/find_next_plan.ts +4 -0
- package/toolkit/skills/find-next-plan/scripts/test_find_next_plan.ts +1 -0
- package/toolkit/skills/flow-continue/SKILL.md +72 -0
- package/toolkit/skills/fresh-thread-dispatch/SKILL.md +83 -0
- package/toolkit/skills/fresh-thread-dispatch/agents/openai.yaml +4 -0
- package/toolkit/skills/fresh-thread-dispatch/references/handoff-envelope.md +65 -0
- package/toolkit/skills/git-branch/SKILL.md +81 -0
- package/toolkit/skills/git-cleanup/SKILL.md +200 -0
- package/toolkit/skills/git-cleanup/scripts/closeout_context.ts +4 -0
- package/toolkit/skills/git-cleanup/scripts/closeout_gate.ts +4 -0
- package/toolkit/skills/git-cleanup/scripts/local_merge_closeout_context.ts +4 -0
- package/toolkit/skills/git-cleanup/scripts/local_merge_closeout_gate.ts +4 -0
- package/toolkit/skills/git-cleanup/scripts/test_closeout_context.ts +1 -0
- package/toolkit/skills/git-cleanup/scripts/test_closeout_gate.ts +1 -0
- package/toolkit/skills/git-cleanup/scripts/test_local_merge_closeout_context.ts +1 -0
- package/toolkit/skills/git-cleanup/scripts/test_local_merge_closeout_gate.ts +1 -0
- package/toolkit/skills/git-worktree/SKILL.md +99 -0
- package/toolkit/skills/global-port-manager/SKILL.md +190 -0
- package/toolkit/skills/global-port-manager/scripts/port_registry.ts +4 -0
- package/toolkit/skills/global-port-manager/scripts/test_port_registry.ts +1 -0
- package/toolkit/skills/gui-escalation-gate/SKILL.md +106 -0
- package/toolkit/skills/hardware-doc-ingest/SKILL.md +143 -0
- package/toolkit/skills/hardware-doc-ingest/references/docs-index-format.md +34 -0
- package/toolkit/skills/hardware-doc-ingest/scripts/ingest_mineru_extract.ts +4 -0
- package/toolkit/skills/hardware-doc-ingest/scripts/verify_doc_locks.ts +4 -0
- package/toolkit/skills/implement-only-flow/SKILL.md +38 -0
- package/toolkit/skills/kaisoumail-deployment-inventory/SKILL.md +38 -0
- package/toolkit/skills/kaisoumail-deployment-inventory/agents/openai.yaml +7 -0
- package/toolkit/skills/kaisoumail-deployment-inventory/references/current-topology.md +152 -0
- package/toolkit/skills/kaisoumail-deployment-inventory/references/stable-identity.md +32 -0
- package/toolkit/skills/local-merge-flow/SKILL.md +32 -0
- package/toolkit/skills/multi-task-flow/SKILL.md +115 -0
- package/toolkit/skills/multi-task-flow/bun.lock +314 -0
- package/toolkit/skills/multi-task-flow/data/.gitignore +2 -0
- package/toolkit/skills/multi-task-flow/dist/app.css +2 -0
- package/toolkit/skills/multi-task-flow/dist/app.js +1375 -0
- package/toolkit/skills/multi-task-flow/dist/index.html +95 -0
- package/toolkit/skills/multi-task-flow/examples/README.md +11 -0
- package/toolkit/skills/multi-task-flow/examples/ledger-initialization/README.md +5 -0
- package/toolkit/skills/multi-task-flow/examples/ledger-initialization/initial.json +45 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/README.md +22 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/index.ts +64 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/ledger.ts +176 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/link-verification.json +19 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/requirements/group-core.md +11 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/requirements/group-dashboard.md +11 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/requirements/task-acceptance.md +10 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/requirements/task-dashboard-ui.md +10 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/requirements/task-deploy.md +10 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/requirements/task-integration.md +10 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/requirements/task-ledger.md +10 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/requirements/task-model.md +10 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/requirements/task-release.md +10 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/requirements/task-scheduler.md +10 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/requirements/task-server.md +10 -0
- package/toolkit/skills/multi-task-flow/examples/orchestration-viewer/requirements/task-verify.md +10 -0
- package/toolkit/skills/multi-task-flow/examples/single-delivery-unit/README.md +14 -0
- package/toolkit/skills/multi-task-flow/examples/single-delivery-unit/ledger.ts +118 -0
- package/toolkit/skills/multi-task-flow/examples/single-delivery-unit/outputs.ts +37 -0
- package/toolkit/skills/multi-task-flow/lib/codex-agent-api.ts +399 -0
- package/toolkit/skills/multi-task-flow/lib/codex-cli-create.ts +169 -0
- package/toolkit/skills/multi-task-flow/lib/codex-desktop-follower.ts +264 -0
- package/toolkit/skills/multi-task-flow/lib/codex-observer.ts +166 -0
- package/toolkit/skills/multi-task-flow/lib/codex-rpc.ts +257 -0
- package/toolkit/skills/multi-task-flow/lib/codex-socket.ts +181 -0
- package/toolkit/skills/multi-task-flow/lib/codex-subscription.ts +71 -0
- package/toolkit/skills/multi-task-flow/lib/contract.ts +198 -0
- package/toolkit/skills/multi-task-flow/lib/conversation-archive.ts +98 -0
- package/toolkit/skills/multi-task-flow/lib/conversation-eligibility.ts +32 -0
- package/toolkit/skills/multi-task-flow/lib/conversation-history.ts +101 -0
- package/toolkit/skills/multi-task-flow/lib/conversation-output.ts +398 -0
- package/toolkit/skills/multi-task-flow/lib/demo-archive.ts +22 -0
- package/toolkit/skills/multi-task-flow/lib/desktop-handoff.ts +32 -0
- package/toolkit/skills/multi-task-flow/lib/desktop-output-state.ts +177 -0
- package/toolkit/skills/multi-task-flow/lib/engine.ts +5254 -0
- package/toolkit/skills/multi-task-flow/lib/errors.ts +19 -0
- package/toolkit/skills/multi-task-flow/lib/execution-profile.ts +102 -0
- package/toolkit/skills/multi-task-flow/lib/graph.ts +68 -0
- package/toolkit/skills/multi-task-flow/lib/ledger-maintenance.ts +327 -0
- package/toolkit/skills/multi-task-flow/lib/legacy-plan-alias.ts +8 -0
- package/toolkit/skills/multi-task-flow/lib/notification-delivery.ts +119 -0
- package/toolkit/skills/multi-task-flow/lib/package-source.ts +35 -0
- package/toolkit/skills/multi-task-flow/lib/pr-details.ts +47 -0
- package/toolkit/skills/multi-task-flow/lib/preferences.ts +155 -0
- package/toolkit/skills/multi-task-flow/lib/profile-http.ts +101 -0
- package/toolkit/skills/multi-task-flow/lib/profile-migration.ts +12 -0
- package/toolkit/skills/multi-task-flow/lib/profile-mutation.ts +53 -0
- package/toolkit/skills/multi-task-flow/lib/revisions-json.ts +10 -0
- package/toolkit/skills/multi-task-flow/lib/revisions.ts +394 -0
- package/toolkit/skills/multi-task-flow/lib/schema.ts +2389 -0
- package/toolkit/skills/multi-task-flow/lib/server-contract.ts +29 -0
- package/toolkit/skills/multi-task-flow/lib/server-files.ts +117 -0
- package/toolkit/skills/multi-task-flow/lib/server.ts +449 -0
- package/toolkit/skills/multi-task-flow/lib/service-auth.ts +162 -0
- package/toolkit/skills/multi-task-flow/lib/service-compatibility.ts +283 -0
- package/toolkit/skills/multi-task-flow/lib/service-contract.ts +122 -0
- package/toolkit/skills/multi-task-flow/lib/service-http.ts +525 -0
- package/toolkit/skills/multi-task-flow/lib/service-import-recovery.ts +104 -0
- package/toolkit/skills/multi-task-flow/lib/service-import.ts +207 -0
- package/toolkit/skills/multi-task-flow/lib/service-launchd.ts +74 -0
- package/toolkit/skills/multi-task-flow/lib/service-lifecycle.ts +345 -0
- package/toolkit/skills/multi-task-flow/lib/service-log.ts +73 -0
- package/toolkit/skills/multi-task-flow/lib/service-maintenance.ts +288 -0
- package/toolkit/skills/multi-task-flow/lib/service-pages.ts +110 -0
- package/toolkit/skills/multi-task-flow/lib/service-paths.ts +53 -0
- package/toolkit/skills/multi-task-flow/lib/service-release.ts +123 -0
- package/toolkit/skills/multi-task-flow/lib/service-state.ts +153 -0
- package/toolkit/skills/multi-task-flow/lib/service-usage.ts +47 -0
- package/toolkit/skills/multi-task-flow/lib/store-io.ts +133 -0
- package/toolkit/skills/multi-task-flow/lib/store-ledger.ts +34 -0
- package/toolkit/skills/multi-task-flow/lib/store-migration.ts +594 -0
- package/toolkit/skills/multi-task-flow/lib/store.ts +418 -0
- package/toolkit/skills/multi-task-flow/lib/task-runtime.ts +26 -0
- package/toolkit/skills/multi-task-flow/lib/view-atoms.ts +110 -0
- package/toolkit/skills/multi-task-flow/lib/view-warnings.ts +20 -0
- package/toolkit/skills/multi-task-flow/lib/view.ts +917 -0
- package/toolkit/skills/multi-task-flow/package.json +39 -0
- package/toolkit/skills/multi-task-flow/references/shared-viewer.md +60 -0
- package/toolkit/skills/multi-task-flow/scripts/build-service.ts +108 -0
- package/toolkit/skills/multi-task-flow/scripts/build.ts +38 -0
- package/toolkit/skills/multi-task-flow/scripts/catalog-client-skills.ts +54 -0
- package/toolkit/skills/multi-task-flow/scripts/check-client-skills.ts +44 -0
- package/toolkit/skills/multi-task-flow/scripts/check-skills-installation.ts +84 -0
- package/toolkit/skills/multi-task-flow/scripts/demo-static.ts +185 -0
- package/toolkit/skills/multi-task-flow/scripts/diagnose-candidate-sandbox.ts +32 -0
- package/toolkit/skills/multi-task-flow/scripts/import-client-skills.ts +31 -0
- package/toolkit/skills/multi-task-flow/scripts/orchestrate.ts +615 -0
- package/toolkit/skills/multi-task-flow/scripts/package-client-skills.ts +224 -0
- package/toolkit/skills/multi-task-flow/scripts/preview-source.ts +227 -0
- package/toolkit/skills/multi-task-flow/scripts/serve.ts +218 -0
- package/toolkit/skills/multi-task-flow/scripts/service.ts +235 -0
- package/toolkit/skills/multi-task-flow/scripts/test-skills-artifact.ts +27 -0
- package/toolkit/skills/multi-task-flow/scripts/test-skills-native.ts +28 -0
- package/toolkit/skills/multi-task-flow/scripts/test-viewer-source.ts +65 -0
- package/toolkit/skills/multi-task-flow/scripts/verify-service-browser.ts +181 -0
- package/toolkit/skills/multi-task-flow/scripts/verify-service-native.ts +283 -0
- package/toolkit/skills/multi-task-flow/scripts/verify-skills-modules.ts +11 -0
- package/toolkit/skills/multi-task-flow/scripts/viewer-gateway.ts +206 -0
- package/toolkit/skills/multi-task-flow/scripts/viewer-runtime.ts +270 -0
- package/toolkit/skills/multi-task-flow/scripts/viewer-socket.ts +466 -0
- package/toolkit/skills/multi-task-flow/scripts/viewer-worker.ts +150 -0
- package/toolkit/skills/multi-task-flow/tests/browser/README.md +38 -0
- package/toolkit/skills/multi-task-flow/tests/browser/card-width-regression.ts +74 -0
- package/toolkit/skills/multi-task-flow/tests/check-skills-installation.test.ts +45 -0
- package/toolkit/skills/multi-task-flow/tests/codex-cli-create.test.ts +89 -0
- package/toolkit/skills/multi-task-flow/tests/codex-desktop-follower.test.ts +29 -0
- package/toolkit/skills/multi-task-flow/tests/codex-observer.test.ts +25 -0
- package/toolkit/skills/multi-task-flow/tests/codex-subscription.test.ts +38 -0
- package/toolkit/skills/multi-task-flow/tests/codex-thread-create.test.ts +159 -0
- package/toolkit/skills/multi-task-flow/tests/conversation-archive.test.ts +188 -0
- package/toolkit/skills/multi-task-flow/tests/conversation-output.test.ts +224 -0
- package/toolkit/skills/multi-task-flow/tests/crash-worker.ts +9 -0
- package/toolkit/skills/multi-task-flow/tests/demo-archive.test.ts +19 -0
- package/toolkit/skills/multi-task-flow/tests/demo.test.ts +134 -0
- package/toolkit/skills/multi-task-flow/tests/desktop-output-state.test.ts +20 -0
- package/toolkit/skills/multi-task-flow/tests/engine.test.ts +3219 -0
- package/toolkit/skills/multi-task-flow/tests/graph-layout.test.ts +44 -0
- package/toolkit/skills/multi-task-flow/tests/graph-projection.test.ts +203 -0
- package/toolkit/skills/multi-task-flow/tests/graph.test.ts +22 -0
- package/toolkit/skills/multi-task-flow/tests/group-atom-contract.test.ts +118 -0
- package/toolkit/skills/multi-task-flow/tests/increment-worker.ts +6 -0
- package/toolkit/skills/multi-task-flow/tests/maintenance-compatibility.test.ts +299 -0
- package/toolkit/skills/multi-task-flow/tests/migrate.test.ts +476 -0
- package/toolkit/skills/multi-task-flow/tests/notification-delivery.test.ts +289 -0
- package/toolkit/skills/multi-task-flow/tests/notification-reconcile.test.ts +144 -0
- package/toolkit/skills/multi-task-flow/tests/orchestrate.test.ts +769 -0
- package/toolkit/skills/multi-task-flow/tests/output-events.test.ts +36 -0
- package/toolkit/skills/multi-task-flow/tests/phase.test.ts +14 -0
- package/toolkit/skills/multi-task-flow/tests/pr-details.test.ts +30 -0
- package/toolkit/skills/multi-task-flow/tests/preferences.test.ts +60 -0
- package/toolkit/skills/multi-task-flow/tests/revisions.test.ts +333 -0
- package/toolkit/skills/multi-task-flow/tests/schema-validation.test.ts +64 -0
- package/toolkit/skills/multi-task-flow/tests/serve.test.ts +194 -0
- package/toolkit/skills/multi-task-flow/tests/server.test.ts +166 -0
- package/toolkit/skills/multi-task-flow/tests/service-contract.test.ts +208 -0
- package/toolkit/skills/multi-task-flow/tests/service-fixture.ts +81 -0
- package/toolkit/skills/multi-task-flow/tests/service-lifecycle.test.ts +123 -0
- package/toolkit/skills/multi-task-flow/tests/service-release.test.ts +120 -0
- package/toolkit/skills/multi-task-flow/tests/shared-service.test.ts +358 -0
- package/toolkit/skills/multi-task-flow/tests/single-delivery-unit.test.ts +69 -0
- package/toolkit/skills/multi-task-flow/tests/source-preview.test.ts +244 -0
- package/toolkit/skills/multi-task-flow/tests/store.test.ts +219 -0
- package/toolkit/skills/multi-task-flow/tests/task-runtime.test.ts +38 -0
- package/toolkit/skills/multi-task-flow/tests/ui/agent-output.test.ts +86 -0
- package/toolkit/skills/multi-task-flow/tests/ui/cards-accessibility.test.ts +90 -0
- package/toolkit/skills/multi-task-flow/tests/ui/connection-status.test.ts +14 -0
- package/toolkit/skills/multi-task-flow/tests/ui/conversation-control.test.ts +69 -0
- package/toolkit/skills/multi-task-flow/tests/ui/detail-surface.test.ts +245 -0
- package/toolkit/skills/multi-task-flow/tests/ui/details-content.test.ts +283 -0
- package/toolkit/skills/multi-task-flow/tests/ui/graph-controller.test.tsx +83 -0
- package/toolkit/skills/multi-task-flow/tests/ui/group-progress.test.ts +14 -0
- package/toolkit/skills/multi-task-flow/tests/ui/hover-preview.test.ts +198 -0
- package/toolkit/skills/multi-task-flow/tests/ui/navigation.test.ts +29 -0
- package/toolkit/skills/multi-task-flow/tests/ui/pr-status.test.ts +53 -0
- package/toolkit/skills/multi-task-flow/tests/ui/profile-editor.test.ts +81 -0
- package/toolkit/skills/multi-task-flow/tests/ui/resource-popover.test.ts +109 -0
- package/toolkit/skills/multi-task-flow/tests/ui/responsive-width-contract.test.ts +33 -0
- package/toolkit/skills/multi-task-flow/tests/ui/service-navigation.test.ts +54 -0
- package/toolkit/skills/multi-task-flow/tests/ui/setup.ts +13 -0
- package/toolkit/skills/multi-task-flow/tests/ui/task-context-menu.test.ts +74 -0
- package/toolkit/skills/multi-task-flow/tests/ui/timeline-window.test.ts +16 -0
- package/toolkit/skills/multi-task-flow/tests/ui/timestamp.test.ts +30 -0
- package/toolkit/skills/multi-task-flow/tests/ui/tooltip.test.ts +151 -0
- package/toolkit/skills/multi-task-flow/tests/ui-demo.ts +18 -0
- package/toolkit/skills/multi-task-flow/tests/view-state.test.ts +103 -0
- package/toolkit/skills/multi-task-flow/tests/view.test.ts +347 -0
- package/toolkit/skills/multi-task-flow/tests/viewer-runtime.test.ts +117 -0
- package/toolkit/skills/multi-task-flow/tests/viewer-socket.test.ts +119 -0
- package/toolkit/skills/multi-task-flow/web/agent-output.ts +66 -0
- package/toolkit/skills/multi-task-flow/web/app.css +713 -0
- package/toolkit/skills/multi-task-flow/web/app.ts +639 -0
- package/toolkit/skills/multi-task-flow/web/cards.ts +268 -0
- package/toolkit/skills/multi-task-flow/web/conversation-control.ts +77 -0
- package/toolkit/skills/multi-task-flow/web/dependency-tooltip.ts +43 -0
- package/toolkit/skills/multi-task-flow/web/detail-surface.ts +74 -0
- package/toolkit/skills/multi-task-flow/web/details-content.ts +296 -0
- package/toolkit/skills/multi-task-flow/web/execution-range.ts +26 -0
- package/toolkit/skills/multi-task-flow/web/focus.ts +9 -0
- package/toolkit/skills/multi-task-flow/web/graph-layout.ts +89 -0
- package/toolkit/skills/multi-task-flow/web/graph-projection.ts +454 -0
- package/toolkit/skills/multi-task-flow/web/graph-view.tsx +72 -0
- package/toolkit/skills/multi-task-flow/web/graph.ts +101 -0
- package/toolkit/skills/multi-task-flow/web/hover-controller.ts +213 -0
- package/toolkit/skills/multi-task-flow/web/hover-preview.ts +47 -0
- package/toolkit/skills/multi-task-flow/web/index.html +95 -0
- package/toolkit/skills/multi-task-flow/web/interaction-policy.ts +58 -0
- package/toolkit/skills/multi-task-flow/web/labels.ts +71 -0
- package/toolkit/skills/multi-task-flow/web/links.ts +8 -0
- package/toolkit/skills/multi-task-flow/web/model.ts +219 -0
- package/toolkit/skills/multi-task-flow/web/navigation.ts +23 -0
- package/toolkit/skills/multi-task-flow/web/phase.ts +11 -0
- package/toolkit/skills/multi-task-flow/web/pr-status.ts +59 -0
- package/toolkit/skills/multi-task-flow/web/preview-content.ts +69 -0
- package/toolkit/skills/multi-task-flow/web/profile-editor.ts +96 -0
- package/toolkit/skills/multi-task-flow/web/profile-model-menu.ts +38 -0
- package/toolkit/skills/multi-task-flow/web/resource-popover.ts +257 -0
- package/toolkit/skills/multi-task-flow/web/status-row.ts +239 -0
- package/toolkit/skills/multi-task-flow/web/task-context-menu.ts +123 -0
- package/toolkit/skills/multi-task-flow/web/task-state.ts +8 -0
- package/toolkit/skills/multi-task-flow/web/time.ts +23 -0
- package/toolkit/skills/multi-task-flow/web/timeline-window.ts +16 -0
- package/toolkit/skills/multi-task-flow/web/timeline.ts +230 -0
- package/toolkit/skills/multi-task-flow/web/timestamp.ts +29 -0
- package/toolkit/skills/multi-task-flow/web/tooltip.ts +198 -0
- package/toolkit/skills/multi-task-flow/web/unbound-pr-hint.ts +9 -0
- package/toolkit/skills/multi-task-flow/web/view-state.ts +185 -0
- package/toolkit/skills/node_modules/@xyflow/react/index.js +3 -0
- package/toolkit/skills/node_modules/@xyflow/react/package.json +6 -0
- package/toolkit/skills/node_modules/elkjs/index.js +3 -0
- package/toolkit/skills/node_modules/elkjs/package.json +6 -0
- package/toolkit/skills/node_modules/lucide/index.js +3 -0
- package/toolkit/skills/node_modules/lucide/package.json +6 -0
- package/toolkit/skills/node_modules/moment/index.js +3 -0
- package/toolkit/skills/node_modules/moment/package.json +6 -0
- package/toolkit/skills/node_modules/playwright/index.js +3 -0
- package/toolkit/skills/node_modules/playwright/package.json +6 -0
- package/toolkit/skills/node_modules/react/index.js +3 -0
- package/toolkit/skills/node_modules/react/package.json +6 -0
- package/toolkit/skills/node_modules/react-dom/index.js +3 -0
- package/toolkit/skills/node_modules/react-dom/package.json +6 -0
- package/toolkit/skills/node_modules/sharp/index.js +3 -0
- package/toolkit/skills/node_modules/sharp/package.json +6 -0
- package/toolkit/skills/node_modules/vis-data/index.js +3 -0
- package/toolkit/skills/node_modules/vis-data/package.json +6 -0
- package/toolkit/skills/node_modules/vis-timeline/index.js +3 -0
- package/toolkit/skills/node_modules/vis-timeline/package.json +6 -0
- package/toolkit/skills/node_modules/zod/index.js +3 -0
- package/toolkit/skills/node_modules/zod/package.json +6 -0
- package/toolkit/skills/normal-flow/SKILL.md +24 -0
- package/toolkit/skills/package.json +31 -0
- package/toolkit/skills/project-doc-promote/SKILL.md +70 -0
- package/toolkit/skills/project-engineering-workflow/SKILL.md +160 -0
- package/toolkit/skills/project-engineering-workflow/references/active-long-task-short-contract.md +53 -0
- package/toolkit/skills/project-engineering-workflow/references/advisory-review-short-contract.md +19 -0
- package/toolkit/skills/project-engineering-workflow/references/ci-tracking-short-contract.md +73 -0
- package/toolkit/skills/project-engineering-workflow/references/empirical-acceptance-short-contract.md +48 -0
- package/toolkit/skills/project-engineering-workflow/references/execution-receipt-short-contract.md +31 -0
- package/toolkit/skills/project-engineering-workflow/references/pr-diagnosis-short-contract.md +93 -0
- package/toolkit/skills/project-engineering-workflow/references/pr-merge-procedure.md +67 -0
- package/toolkit/skills/project-engineering-workflow/references/pr-publication-procedure.md +39 -0
- package/toolkit/skills/project-engineering-workflow/references/release-planning-short-contract.md +27 -0
- package/toolkit/skills/project-engineering-workflow/references/release-tracking-short-contract.md +49 -0
- package/toolkit/skills/project-engineering-workflow/references/review-proof-short-contract.md +111 -0
- package/toolkit/skills/project-engineering-workflow/scripts/base_alignment_helper.ts +4 -0
- package/toolkit/skills/project-engineering-workflow/scripts/merge_preflight.ts +4 -0
- package/toolkit/skills/project-engineering-workflow/scripts/test_base_alignment_helper.ts +1 -0
- package/toolkit/skills/project-engineering-workflow/scripts/test_merge_preflight.ts +1 -0
- package/toolkit/skills/rust-crate-release/SKILL.md +96 -0
- package/toolkit/skills/rust-crate-release/references/cargo-package-checklist.md +52 -0
- package/toolkit/skills/rust-crate-release/references/release-style.md +33 -0
- package/toolkit/skills/rust-crate-release/templates/workflows/build.yml +44 -0
- package/toolkit/skills/rust-crate-release/templates/workflows/release.yml +40 -0
- package/toolkit/skills/solution-sync/SKILL.md +73 -0
- package/toolkit/skills/solution-sync/agents/openai.yaml +4 -0
- package/toolkit/skills/source-manifest.json +15988 -0
- package/toolkit/skills/spec-sync/SKILL.md +82 -0
- package/toolkit/skills/spec-sync/agents/openai.yaml +4 -0
- package/toolkit/skills/spec-sync/scripts/spec_drift_check.sh +2316 -0
- package/toolkit/skills/spec-sync/scripts/spec_drift_check.ts +4 -0
- package/toolkit/skills/spec-sync/scripts/test_spec_drift_check.ts +1 -0
- package/toolkit/skills/srv-101-ops/SKILL.md +73 -0
- package/toolkit/skills/srv-101-ops/scripts/resolve-target +370 -0
- package/toolkit/skills/storybook-screenshots/SKILL.md +213 -0
- package/toolkit/skills/storybook-screenshots/agents/openai.yaml +4 -0
- package/toolkit/skills/storybook-stories/SKILL.md +251 -0
- package/toolkit/skills/storybook-stories/agents/openai.yaml +4 -0
- package/toolkit/skills/storybook-stories/references/state-coverage.md +76 -0
- package/toolkit/skills/support-manifest.json +61 -0
- package/toolkit/skills/topic-spec/SKILL.md +70 -0
- package/toolkit/skills/topic-spec/agents/openai.yaml +4 -0
- package/toolkit/skills/topic-spec/templates/HISTORY.md +20 -0
- package/toolkit/skills/topic-spec/templates/IMPLEMENTATION.md +32 -0
- package/toolkit/skills/topic-spec/templates/SPEC.md +55 -0
- package/toolkit/skills/topic-spec/templates/contracts/README.md +22 -0
- package/toolkit/skills/topic-spec/templates/contracts/cli.md +33 -0
- package/toolkit/skills/topic-spec/templates/contracts/db.md +23 -0
- package/toolkit/skills/topic-spec/templates/contracts/events.md +27 -0
- package/toolkit/skills/topic-spec/templates/contracts/file-formats.md +21 -0
- package/toolkit/skills/topic-spec/templates/contracts/http-apis.md +35 -0
- package/toolkit/skills/topic-spec/templates/contracts/rpc.md +35 -0
- package/toolkit/skills/topic-spec/templates/legacy/PLAN.md +99 -0
- package/toolkit/skills/topic-spec/templates/topic-spec-README.md +33 -0
- package/toolkit/skills/ui-visual-evidence/SKILL.md +261 -0
- package/toolkit/skills/ui-visual-evidence/agents/openai.yaml +4 -0
- package/toolkit/skills/ui-visual-evidence/replay/cases.json +47 -0
- package/toolkit/skills/ui-visual-evidence/scripts/compare_visual_evidence.ts +4 -0
- package/toolkit/skills/ui-visual-evidence/scripts/pr_body_image_gate.ts +4 -0
- package/toolkit/skills/ui-visual-evidence/scripts/test_compare_visual_evidence.ts +1 -0
- package/toolkit/skills/ui-visual-evidence/scripts/test_pr_body_image_gate.ts +2 -0
- package/toolkit/skills/ui-visual-evidence/scripts/test_trim_whitespace.ts +1 -0
- package/toolkit/skills/ui-visual-evidence/scripts/trim_whitespace.ts +4 -0
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { mkdir, open, readFile, unlink } from 'node:fs/promises';
|
|
2
|
+
import { join } from 'node:path';
|
|
3
|
+
import { randomUUID } from 'node:crypto';
|
|
4
|
+
import { hostname } from 'node:os';
|
|
5
|
+
|
|
6
|
+
export class StateLock {
|
|
7
|
+
private constructor(private path: string, private token: string) {}
|
|
8
|
+
static async acquire(directory: string): Promise<StateLock> {
|
|
9
|
+
await mkdir(directory, { recursive: true, mode: 0o700 });
|
|
10
|
+
const path = join(directory, 'writer.lock');
|
|
11
|
+
const token = randomUUID();
|
|
12
|
+
const file = await open(path, 'wx', 0o600).catch(error => {
|
|
13
|
+
if (error.code === 'EEXIST') throw new Error(`State directory locked: ${path}; inspect owner before explicit recovery`);
|
|
14
|
+
throw error;
|
|
15
|
+
});
|
|
16
|
+
try { await file.writeFile(JSON.stringify({ token, pid: process.pid, hostname: hostname(), createdAt: new Date().toISOString() })); await file.sync(); }
|
|
17
|
+
finally { await file.close(); }
|
|
18
|
+
return new StateLock(path, token);
|
|
19
|
+
}
|
|
20
|
+
/** Explicit repair only: exact token, same host and a demonstrably dead PID. */
|
|
21
|
+
static async recover(directory: string, expectedToken: string): Promise<void> {
|
|
22
|
+
const guardPath = join(directory, 'writer.recovery.lock');
|
|
23
|
+
const guard = await open(guardPath, 'wx', 0o600);
|
|
24
|
+
try {
|
|
25
|
+
const path = join(directory, 'writer.lock');
|
|
26
|
+
const original = await readFile(path, 'utf8');
|
|
27
|
+
const owner = JSON.parse(original);
|
|
28
|
+
if (!expectedToken || owner.token !== expectedToken || owner.hostname !== hostname() || !Number.isSafeInteger(owner.pid) || owner.pid < 1) throw new Error('Lock recovery identity mismatch');
|
|
29
|
+
try { process.kill(owner.pid, 0); throw new Error('Lock owner is alive'); }
|
|
30
|
+
catch (error) { if ((error as NodeJS.ErrnoException).code !== 'ESRCH') throw error; }
|
|
31
|
+
if (await readFile(path, 'utf8') !== original) throw new Error('Lock ownership changed');
|
|
32
|
+
await unlink(path);
|
|
33
|
+
} finally { await guard.close(); await unlink(guardPath); }
|
|
34
|
+
}
|
|
35
|
+
async release(): Promise<void> {
|
|
36
|
+
const owner = JSON.parse(await readFile(this.path, 'utf8'));
|
|
37
|
+
if (owner.token !== this.token) throw new Error('Lock ownership changed');
|
|
38
|
+
await unlink(this.path);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { spawn } from 'node:child_process';
|
|
2
|
+
|
|
3
|
+
export interface ProcessResult { code: number | null; signal: NodeJS.Signals | null; stdout: string; stderr: string }
|
|
4
|
+
export interface ProcessOptions { cwd?: string; timeoutMs?: number; maxOutputBytes?: number; signal?: AbortSignal; env?: NodeJS.ProcessEnv; input?: string | Uint8Array }
|
|
5
|
+
/** Owns only its direct child; no detached services or shell expansion. */
|
|
6
|
+
export function runProcess(command: string, args: readonly string[], options: ProcessOptions = {}): Promise<ProcessResult> {
|
|
7
|
+
const timeout = options.timeoutMs ?? 30_000;
|
|
8
|
+
const limit = options.maxOutputBytes ?? 1024 * 1024;
|
|
9
|
+
if (typeof command !== 'string' || !command.trim() || !Array.isArray(args) || args.some(arg => typeof arg !== 'string')) return Promise.reject(new Error('Invalid process command'));
|
|
10
|
+
if (!Number.isSafeInteger(timeout) || timeout < 1 || timeout > 2_147_483_647 || !Number.isSafeInteger(limit) || limit < 1) return Promise.reject(new Error('Invalid process limits'));
|
|
11
|
+
if (options.signal?.aborted) return Promise.reject(new Error('Process aborted'));
|
|
12
|
+
return new Promise((resolve, reject) => {
|
|
13
|
+
let child: ReturnType<typeof spawn>;
|
|
14
|
+
try {
|
|
15
|
+
child = spawn(command, [...args], { cwd: options.cwd, env: options.env, shell: false, stdio: [options.input === undefined ? 'ignore' : 'pipe', 'pipe', 'pipe'] });
|
|
16
|
+
} catch (error) {
|
|
17
|
+
reject(error);
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
const stdout: Buffer[] = [], stderr: Buffer[] = [];
|
|
21
|
+
let bytes = 0, failure: Error | undefined, escalation: ReturnType<typeof setTimeout> | undefined;
|
|
22
|
+
const stop = (reason: Error) => {
|
|
23
|
+
if (failure) return;
|
|
24
|
+
failure = reason;
|
|
25
|
+
child.kill('SIGTERM');
|
|
26
|
+
// Keep the streams alive until close so callers get a deterministic
|
|
27
|
+
// completion point even when a child exits while it is being stopped.
|
|
28
|
+
escalation = setTimeout(() => child.kill('SIGKILL'), 250);
|
|
29
|
+
};
|
|
30
|
+
const collect = (chunks: Buffer[]) => (chunk: Buffer) => {
|
|
31
|
+
bytes += chunk.length;
|
|
32
|
+
if (bytes > limit) stop(new Error('Process output limit exceeded'));
|
|
33
|
+
else chunks.push(chunk);
|
|
34
|
+
};
|
|
35
|
+
child.stdout!.on('data', collect(stdout)); child.stderr!.on('data', collect(stderr));
|
|
36
|
+
const abort = () => stop(new Error('Process aborted'));
|
|
37
|
+
options.signal?.addEventListener('abort', abort, { once: true });
|
|
38
|
+
const timer = setTimeout(() => stop(new Error('Process timed out')), timeout);
|
|
39
|
+
child.once('error', error => { failure = error; });
|
|
40
|
+
if (child.stdin) { child.stdin.on('error', error => { if ((error as NodeJS.ErrnoException).code !== 'EPIPE') stop(error); }); child.stdin.end(options.input); }
|
|
41
|
+
child.once('close', (code, signal) => {
|
|
42
|
+
clearTimeout(timer); clearTimeout(escalation); options.signal?.removeEventListener('abort', abort);
|
|
43
|
+
if (failure) reject(failure);
|
|
44
|
+
else resolve({ code, signal, stdout: Buffer.concat(stdout).toString('utf8'), stderr: Buffer.concat(stderr).toString('utf8') });
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { identityDigest, validatePackageIdentity, type PackageIdentity } from './release.ts';
|
|
2
|
+
import type { ToolkitArtifactFile, ToolkitArtifactManifest } from './toolkit.ts';
|
|
3
|
+
|
|
4
|
+
export interface RuntimeBuildInfo {
|
|
5
|
+
package_name: string;
|
|
6
|
+
version: string;
|
|
7
|
+
source_sha: string;
|
|
8
|
+
merge_sha: string | null;
|
|
9
|
+
compatibility_line: string;
|
|
10
|
+
skill_version: string;
|
|
11
|
+
build_id: string;
|
|
12
|
+
tarball_digest: string | null;
|
|
13
|
+
contracts: {
|
|
14
|
+
ledger: number;
|
|
15
|
+
api: number;
|
|
16
|
+
frontend: number;
|
|
17
|
+
viewer: number;
|
|
18
|
+
service: string;
|
|
19
|
+
};
|
|
20
|
+
policy: 'loomhelm-manual-v1';
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
function validatedIdentity(artifact: ToolkitArtifactManifest): PackageIdentity {
|
|
24
|
+
const identity = validatePackageIdentity(artifact.identity);
|
|
25
|
+
if (identity.packageName !== artifact.packageName || identity.packageVersion !== artifact.packageVersion || identity.compatibilityLine !== artifact.compatibilityLine || identity.skillVersion !== artifact.skillVersion || identity.sourceSha !== artifact.sourceSha || identity.mergeSha !== artifact.mergeSha || identity.dirty !== artifact.dirty || identity.buildId !== artifact.buildId || identity.tarballDigest !== artifact.tarballDigest || identity.gitTag !== artifact.gitTag) throw new Error('Toolkit artifact identity mismatch');
|
|
26
|
+
const { buildId, ...withoutBuildId } = identity;
|
|
27
|
+
const files = artifact.files as readonly ToolkitArtifactFile[];
|
|
28
|
+
if (identityDigest({ ...withoutBuildId, files }) !== buildId) throw new Error('Toolkit artifact build ID mismatch');
|
|
29
|
+
return identity;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export function buildInfoFromArtifact(artifact: ToolkitArtifactManifest): RuntimeBuildInfo {
|
|
33
|
+
const identity = validatedIdentity(artifact);
|
|
34
|
+
return Object.freeze({
|
|
35
|
+
package_name: identity.packageName,
|
|
36
|
+
version: identity.packageVersion,
|
|
37
|
+
source_sha: identity.sourceSha,
|
|
38
|
+
merge_sha: identity.mergeSha,
|
|
39
|
+
compatibility_line: identity.compatibilityLine,
|
|
40
|
+
skill_version: identity.skillVersion,
|
|
41
|
+
build_id: identity.buildId,
|
|
42
|
+
tarball_digest: identity.tarballDigest,
|
|
43
|
+
contracts: {
|
|
44
|
+
ledger: identity.contracts.ledgerContract,
|
|
45
|
+
api: identity.contracts.apiVersion,
|
|
46
|
+
frontend: identity.contracts.frontendContract,
|
|
47
|
+
viewer: identity.contracts.viewerContract,
|
|
48
|
+
service: identity.contracts.serviceVersion,
|
|
49
|
+
},
|
|
50
|
+
policy: 'loomhelm-manual-v1',
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export function requirePublishableArtifact(artifact: ToolkitArtifactManifest): PackageIdentity {
|
|
55
|
+
const identity = validatedIdentity(artifact);
|
|
56
|
+
if (artifact.dirty) throw new Error('Publication requires a clean toolkit artifact');
|
|
57
|
+
if (identity.mergeSha === null || identity.mergeSha !== artifact.sourceSha) throw new Error('Publication requires artifact merge provenance');
|
|
58
|
+
if (identity.tarballDigest === null) throw new Error('Publication requires tarball provenance');
|
|
59
|
+
if (identity.gitTag !== `multi-task-flow-v${identity.packageVersion}`) throw new Error('Publication requires a matching Git tag provenance');
|
|
60
|
+
return identity;
|
|
61
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { createHash, randomUUID } from 'node:crypto';
|
|
2
|
+
import { readFile } from 'node:fs/promises';
|
|
3
|
+
import { join } from 'node:path';
|
|
4
|
+
import { atomicWrite } from '../runtime/files.ts';
|
|
5
|
+
import { StateLock } from '../runtime/lock.ts';
|
|
6
|
+
import { applyOperation, emptyState, identifier, type Operation, type TaskState } from './model.ts';
|
|
7
|
+
|
|
8
|
+
export interface Receipt { sequence: number; operationId: string; at: string; operation: Operation; previousHash: string; hash: string }
|
|
9
|
+
const genesis = '0'.repeat(64);
|
|
10
|
+
function canonical(value: unknown): string {
|
|
11
|
+
if (Array.isArray(value)) return '[' + value.map(canonical).join(',') + ']';
|
|
12
|
+
if (value && typeof value === 'object') return '{' + Object.keys(value).sort().map(k => JSON.stringify(k) + ':' + canonical((value as Record<string, unknown>)[k])).join(',') + '}';
|
|
13
|
+
return JSON.stringify(value);
|
|
14
|
+
}
|
|
15
|
+
const digest = (value: unknown) => createHash('sha256').update(canonical(value)).digest('hex');
|
|
16
|
+
|
|
17
|
+
/** A single local writer, immutable fact history, atomically replaced file. */
|
|
18
|
+
export class Ledger {
|
|
19
|
+
private receipts: Receipt[] = [];
|
|
20
|
+
private state = emptyState();
|
|
21
|
+
private queue: Promise<unknown> = Promise.resolve();
|
|
22
|
+
private closed = false;
|
|
23
|
+
private constructor(private path: string, private lock: StateLock) {}
|
|
24
|
+
static async open(directory: string): Promise<Ledger> {
|
|
25
|
+
const lock = await StateLock.acquire(directory);
|
|
26
|
+
const ledger = new Ledger(join(directory, 'ledger.json'), lock);
|
|
27
|
+
try {
|
|
28
|
+
let text: string | undefined;
|
|
29
|
+
try { text = await readFile(ledger.path, 'utf8'); } catch (error) { if ((error as NodeJS.ErrnoException).code !== 'ENOENT') throw error; }
|
|
30
|
+
if (text !== undefined) {
|
|
31
|
+
const data = JSON.parse(text);
|
|
32
|
+
if (data.schemaVersion !== 1 || !Array.isArray(data.receipts)) throw new Error('Unsupported or invalid ledger');
|
|
33
|
+
const identities = new Set<string>();
|
|
34
|
+
for (const receipt of data.receipts as Receipt[]) {
|
|
35
|
+
identifier(receipt.operationId);
|
|
36
|
+
const { hash, ...body } = receipt;
|
|
37
|
+
if (receipt.sequence !== ledger.receipts.length + 1 || identities.has(receipt.operationId) || receipt.previousHash !== (ledger.receipts.at(-1)?.hash ?? genesis) || hash !== digest(body) || typeof receipt.at !== 'string' || !Number.isFinite(Date.parse(receipt.at))) throw new Error('Invalid receipt chain');
|
|
38
|
+
applyOperation(ledger.state, receipt.operation, receipt.at);
|
|
39
|
+
ledger.receipts.push(receipt); identities.add(receipt.operationId);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
// An uncertain external side effect is never silently retried.
|
|
43
|
+
for (const run of Object.values(ledger.state.runs)) if (run.status === 'running') {
|
|
44
|
+
await ledger.execute(`recovery.${randomUUID()}`, { type: 'run.finish', runId: run.id, status: 'interrupted', detail: 'Client restarted; reconcile external effects before retry' });
|
|
45
|
+
}
|
|
46
|
+
return ledger;
|
|
47
|
+
} catch (error) { await lock.release(); throw error; }
|
|
48
|
+
}
|
|
49
|
+
snapshot(): TaskState { return structuredClone(this.state); }
|
|
50
|
+
history(): Receipt[] { return structuredClone(this.receipts); }
|
|
51
|
+
execute(operationId: string, operation: Operation): Promise<Receipt> {
|
|
52
|
+
if (this.closed) return Promise.reject(new Error('Ledger closed'));
|
|
53
|
+
// Capture caller input before asynchronous execution.
|
|
54
|
+
const input = JSON.parse(JSON.stringify(operation)) as Operation;
|
|
55
|
+
const action = this.queue.then(async () => {
|
|
56
|
+
identifier(operationId);
|
|
57
|
+
const prior = this.receipts.find(receipt => receipt.operationId === operationId);
|
|
58
|
+
if (prior) {
|
|
59
|
+
if (canonical(prior.operation) !== canonical(input)) throw new Error('Operation identity conflict');
|
|
60
|
+
return structuredClone(prior);
|
|
61
|
+
}
|
|
62
|
+
const at = new Date().toISOString();
|
|
63
|
+
const next = structuredClone(this.state);
|
|
64
|
+
applyOperation(next, input, at);
|
|
65
|
+
const body = { sequence: this.receipts.length + 1, operationId, at, operation: input, previousHash: this.receipts.at(-1)?.hash ?? genesis };
|
|
66
|
+
const receipt = { ...body, hash: digest(body) };
|
|
67
|
+
const receipts = [...this.receipts, receipt];
|
|
68
|
+
await atomicWrite(this.path, { schemaVersion: 1, receipts });
|
|
69
|
+
this.receipts = receipts; this.state = next;
|
|
70
|
+
return structuredClone(receipt);
|
|
71
|
+
});
|
|
72
|
+
this.queue = action.catch(() => {});
|
|
73
|
+
return action;
|
|
74
|
+
}
|
|
75
|
+
async close(): Promise<void> {
|
|
76
|
+
if (this.closed) { await this.queue; return; }
|
|
77
|
+
this.closed = true;
|
|
78
|
+
await this.queue;
|
|
79
|
+
await this.lock.release();
|
|
80
|
+
}
|
|
81
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
export type TaskStatus = 'pending' | 'running' | 'succeeded' | 'failed' | 'blocked' | 'interrupted' | 'cancelled' | 'skipped';
|
|
2
|
+
export interface TaskInput { id: string; goal: string; scope: string; acceptance: string; dependencies: string[]; repository?: string }
|
|
3
|
+
export interface Task extends TaskInput { status: TaskStatus; runIds: string[] }
|
|
4
|
+
export interface Run { id: string; taskId: string; attempt: number; status: TaskStatus; startedAt: string; endedAt?: string; detail?: string }
|
|
5
|
+
export interface TaskState { tasks: Record<string, Task>; runs: Record<string, Run> }
|
|
6
|
+
export type Operation =
|
|
7
|
+
| { type: 'task.create'; task: TaskInput }
|
|
8
|
+
| { type: 'run.start'; taskId: string; runId: string; command?: string[] }
|
|
9
|
+
| { type: 'run.finish'; runId: string; status: 'succeeded' | 'failed' | 'blocked' | 'interrupted'; detail: string }
|
|
10
|
+
| { type: 'task.stop'; taskId: string; status: 'cancelled' | 'skipped'; detail: string };
|
|
11
|
+
export const emptyState = (): TaskState => ({ tasks: Object.create(null), runs: Object.create(null) });
|
|
12
|
+
export function identifier(value: unknown): asserts value is string {
|
|
13
|
+
if (typeof value !== 'string' || !/^[a-zA-Z0-9][a-zA-Z0-9._-]{0,127}$/.test(value) || ['__proto__', 'constructor', 'prototype'].includes(value)) throw new Error('Invalid identity');
|
|
14
|
+
}
|
|
15
|
+
function content(value: unknown): asserts value is string {
|
|
16
|
+
if (typeof value !== 'string' || !value.trim()) throw new Error('Nonempty text required');
|
|
17
|
+
}
|
|
18
|
+
export function applyOperation(state: TaskState, operation: Operation, at: string): void {
|
|
19
|
+
if (!operation || typeof operation !== 'object') throw new Error('Invalid operation');
|
|
20
|
+
switch (operation.type) {
|
|
21
|
+
case 'task.create': {
|
|
22
|
+
const task = operation.task;
|
|
23
|
+
identifier(task.id); content(task.goal); content(task.scope); content(task.acceptance);
|
|
24
|
+
if (task.repository !== undefined) content(task.repository);
|
|
25
|
+
if (state.tasks[task.id]) throw new Error('Task already exists');
|
|
26
|
+
if (!Array.isArray(task.dependencies) || new Set(task.dependencies).size !== task.dependencies.length) throw new Error('Invalid dependencies');
|
|
27
|
+
for (const id of task.dependencies) { identifier(id); if (id === task.id || !state.tasks[id]) throw new Error('Dependency must already exist'); }
|
|
28
|
+
state.tasks[task.id] = { ...task, status: 'pending', runIds: [] };
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
case 'run.start': {
|
|
32
|
+
identifier(operation.taskId); identifier(operation.runId);
|
|
33
|
+
if (operation.command !== undefined && (!Array.isArray(operation.command) || operation.command.length === 0 || operation.command.some(arg => typeof arg !== 'string') || !operation.command[0])) throw new Error('Invalid command');
|
|
34
|
+
const task = state.tasks[operation.taskId];
|
|
35
|
+
if (!task || !['pending', 'failed', 'blocked', 'interrupted'].includes(task.status)) throw new Error('Task cannot start');
|
|
36
|
+
if (state.runs[operation.runId]) throw new Error('Run already exists');
|
|
37
|
+
if (task.dependencies.some(id => state.tasks[id]?.status !== 'succeeded')) throw new Error('Dependencies not satisfied');
|
|
38
|
+
const run: Run = { id: operation.runId, taskId: task.id, attempt: task.runIds.length + 1, status: 'running', startedAt: at };
|
|
39
|
+
state.runs[run.id] = run; task.runIds.push(run.id); task.status = 'running'; return;
|
|
40
|
+
}
|
|
41
|
+
case 'run.finish': {
|
|
42
|
+
identifier(operation.runId); content(operation.detail);
|
|
43
|
+
if (!['succeeded', 'failed', 'blocked', 'interrupted'].includes(operation.status)) throw new Error('Invalid run outcome');
|
|
44
|
+
const run = state.runs[operation.runId];
|
|
45
|
+
if (!run || run.status !== 'running') throw new Error('Run is not active');
|
|
46
|
+
run.status = operation.status; run.endedAt = at; run.detail = operation.detail;
|
|
47
|
+
state.tasks[run.taskId]!.status = operation.status; return;
|
|
48
|
+
}
|
|
49
|
+
case 'task.stop': {
|
|
50
|
+
identifier(operation.taskId); content(operation.detail);
|
|
51
|
+
if (!['cancelled', 'skipped'].includes(operation.status)) throw new Error('Invalid stop status');
|
|
52
|
+
const task = state.tasks[operation.taskId];
|
|
53
|
+
if (!task || ['running', 'succeeded', 'cancelled', 'skipped'].includes(task.status)) throw new Error('Task cannot stop');
|
|
54
|
+
task.status = operation.status; return;
|
|
55
|
+
}
|
|
56
|
+
default: throw new Error('Unknown operation');
|
|
57
|
+
}
|
|
58
|
+
}
|
package/src/toolkit.ts
ADDED
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import { createHash } from 'node:crypto';
|
|
2
|
+
import { access, lstat, readFile, readdir, realpath, stat } from 'node:fs/promises';
|
|
3
|
+
import { constants } from 'node:fs';
|
|
4
|
+
import { delimiter, isAbsolute, relative, resolve, sep } from 'node:path';
|
|
5
|
+
import { homedir } from 'node:os';
|
|
6
|
+
import { fileURLToPath } from 'node:url';
|
|
7
|
+
import { runProcess, type ProcessOptions, type ProcessResult } from './runtime/process.ts';
|
|
8
|
+
import { identityDigest, validatePackageIdentity, type PackageIdentity } from './release.ts';
|
|
9
|
+
|
|
10
|
+
export interface SkillCapabilityReport { name: string; ready: boolean; readinessScope: 'all-declared-scenarios'; resourcesValid: boolean; dependencies: { skill: string; kind: 'skill' | 'command' | 'host'; strength: string; condition: string; available: boolean; code: string }[]; platform: string; arch: string; nativeSupported: boolean; source: string }
|
|
11
|
+
export interface ToolkitResource { path: string; source?: string; sourceSha256?: string; installedSha256?: string }
|
|
12
|
+
export interface ToolkitManifest { schemaVersion: 1; commit: string; skills: string[]; files: ToolkitResource[]; additions?: ToolkitResource[] }
|
|
13
|
+
export interface ToolkitOmittedResource { path: string; reason: string }
|
|
14
|
+
export interface ToolkitArtifactFile { path: string; sha256: string }
|
|
15
|
+
export interface ToolkitDependency { name: string; version: string; path: string; entry: string }
|
|
16
|
+
export interface ToolkitArtifactManifest {
|
|
17
|
+
schemaVersion: 2;
|
|
18
|
+
packageName: string;
|
|
19
|
+
packageVersion: string;
|
|
20
|
+
compatibilityLine: string;
|
|
21
|
+
skillVersion: string;
|
|
22
|
+
sourceCommit: string;
|
|
23
|
+
sourceSha: string;
|
|
24
|
+
mergeSha: string | null;
|
|
25
|
+
candidateSha: string;
|
|
26
|
+
dirty: boolean;
|
|
27
|
+
runtime: 'bun@1.4.4';
|
|
28
|
+
identity: PackageIdentity;
|
|
29
|
+
buildId: string;
|
|
30
|
+
tarballDigest: string | null;
|
|
31
|
+
gitTag: string | null;
|
|
32
|
+
dependenciesBundled: boolean;
|
|
33
|
+
dependencies: ToolkitDependency[];
|
|
34
|
+
omittedResources: ToolkitOmittedResource[];
|
|
35
|
+
files: ToolkitArtifactFile[];
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
function resourceFiles(manifest: ToolkitManifest): ToolkitResource[] {
|
|
39
|
+
return [...manifest.files, ...(manifest.additions ?? [])];
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
function isSafeResourcePath(path: string): boolean {
|
|
43
|
+
return !isAbsolute(path) && !path.split(/[\\/]/).some(part => !part || part === '.' || part === '..');
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
function isSafePackageName(name: string): boolean {
|
|
47
|
+
return /^@?[A-Za-z0-9._-]+(?:\/[A-Za-z0-9._-]+)?$/.test(name);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/** The packaged resources are authoritative; never fall back to a host checkout. */
|
|
51
|
+
export class SkillsRuntime {
|
|
52
|
+
constructor(readonly root = fileURLToPath(new URL('../toolkit/', import.meta.url))) {}
|
|
53
|
+
async manifest(): Promise<ToolkitManifest> {
|
|
54
|
+
const value = JSON.parse(await readFile(resolve(this.root, 'skills/source-manifest.json'), 'utf8')) as ToolkitManifest;
|
|
55
|
+
if (value.schemaVersion !== 1 || typeof value.commit !== 'string' || !Array.isArray(value.skills) || value.skills.length !== 29 || new Set(value.skills).size !== 29 || !Array.isArray(value.files)) throw new Error('Invalid toolkit resource manifest');
|
|
56
|
+
return value;
|
|
57
|
+
}
|
|
58
|
+
async artifact(): Promise<ToolkitArtifactManifest> {
|
|
59
|
+
const value = JSON.parse(await readFile(resolve(this.root, 'artifact-manifest.json'), 'utf8')) as ToolkitArtifactManifest & { identity?: unknown };
|
|
60
|
+
if (value.schemaVersion !== 2 || value.packageName !== '@loomhelm/multi-task-flow' || value.runtime !== 'bun@1.4.4' || typeof value.sourceCommit !== 'string' || !/^[a-f0-9]{40}$/.test(value.sourceCommit) || typeof value.sourceSha !== 'string' || !/^[a-f0-9]{40}$/.test(value.sourceSha) || typeof value.candidateSha !== 'string' || !/^[a-f0-9]{40}$/.test(value.candidateSha) || value.candidateSha !== value.sourceSha || typeof value.dirty !== 'boolean' || value.dependenciesBundled !== true || !Array.isArray(value.dependencies) || value.dependencies.length === 0 || value.dependencies.some(item => !item || !isSafePackageName(item.name) || typeof item.version !== 'string' || item.version.length === 0 || !isSafeResourcePath(item.path) || !isSafeResourcePath(item.entry)) || new Set(value.dependencies.map(item => item.name)).size !== value.dependencies.length || !Array.isArray(value.omittedResources) || value.omittedResources.some(item => !item || typeof item.path !== 'string' || !isSafeResourcePath(item.path) || typeof item.reason !== 'string' || item.reason.length === 0) || new Set(value.omittedResources.map(item => item.path)).size !== value.omittedResources.length || !Array.isArray(value.files) || value.files.some(file => !file || typeof file.path !== 'string' || !isSafeResourcePath(file.path) || !/^[a-f0-9]{64}$/.test(file.sha256)) || new Set(value.files.map(file => file.path)).size !== value.files.length || !value.identity) throw new Error('Invalid toolkit artifact manifest');
|
|
61
|
+
const identity = validatePackageIdentity(value.identity);
|
|
62
|
+
if (identity.packageName !== value.packageName || identity.packageVersion !== value.packageVersion || identity.compatibilityLine !== value.compatibilityLine || identity.skillVersion !== value.skillVersion || identity.sourceSha !== value.sourceSha || identity.mergeSha !== value.mergeSha || identity.dirty !== value.dirty || identity.buildId !== value.buildId || identity.tarballDigest !== value.tarballDigest || identity.gitTag !== value.gitTag) throw new Error('Toolkit artifact identity mismatch');
|
|
63
|
+
const { buildId, ...withoutBuildId } = identity;
|
|
64
|
+
if (identityDigest({ ...withoutBuildId, files: value.files }) !== buildId) throw new Error('Toolkit artifact build ID mismatch');
|
|
65
|
+
for (const dependency of value.dependencies) {
|
|
66
|
+
try {
|
|
67
|
+
const dependencyRoot = resolve(this.root, dependency.path);
|
|
68
|
+
const dependencyManifest = resolve(dependencyRoot, 'package.json');
|
|
69
|
+
if (await realpath(dependencyRoot) !== dependencyRoot || !(await stat(dependencyRoot)).isDirectory() || await realpath(dependencyManifest) !== dependencyManifest || !(await stat(dependencyManifest)).isFile()) throw new Error('Unsafe toolkit dependency: ' + dependency.name);
|
|
70
|
+
const metadata = JSON.parse(await readFile(dependencyManifest, 'utf8')) as { name?: string; version?: string };
|
|
71
|
+
if (metadata.name !== dependency.name || metadata.version !== dependency.version) throw new Error('Toolkit dependency identity mismatch: ' + dependency.name);
|
|
72
|
+
const entry = resolve(dependencyRoot, dependency.entry);
|
|
73
|
+
const entryRel = relative(dependencyRoot, entry);
|
|
74
|
+
if (isAbsolute(entryRel) || entryRel === '..' || entryRel.startsWith(`..${sep}`) || await realpath(entry) !== entry || !(await stat(entry)).isFile()) throw new Error('Unsafe toolkit dependency entry: ' + dependency.name);
|
|
75
|
+
} catch (error) {
|
|
76
|
+
if ((error as NodeJS.ErrnoException).code === 'ENOENT') throw new Error('Missing toolkit dependency: ' + dependency.name);
|
|
77
|
+
throw error;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
const packageManifest = resolve(this.root, '..', 'package.json');
|
|
81
|
+
try {
|
|
82
|
+
const packageMetadata = JSON.parse(await readFile(packageManifest, 'utf8')) as { dependencies?: Record<string, unknown> };
|
|
83
|
+
for (const dependency of value.dependencies) if (packageMetadata.dependencies?.[dependency.name] !== dependency.version) throw new Error('Toolkit package dependency declaration mismatch: ' + dependency.name);
|
|
84
|
+
} catch (error) {
|
|
85
|
+
if ((error as NodeJS.ErrnoException).code !== 'ENOENT') throw error;
|
|
86
|
+
}
|
|
87
|
+
return value;
|
|
88
|
+
}
|
|
89
|
+
private async validateArtifact(): Promise<ToolkitArtifactManifest> {
|
|
90
|
+
const rootStat = await lstat(this.root);
|
|
91
|
+
if (!rootStat.isDirectory() || rootStat.isSymbolicLink()) throw new Error('Unsafe toolkit root');
|
|
92
|
+
const root = await realpath(this.root);
|
|
93
|
+
if (root !== resolve(this.root)) throw new Error('Unsafe toolkit root');
|
|
94
|
+
const artifact = await this.artifact();
|
|
95
|
+
const seen = new Set<string>();
|
|
96
|
+
for (const file of artifact.files) {
|
|
97
|
+
if (!file || typeof file.path !== 'string' || !isSafeResourcePath(file.path) || seen.has(file.path) || !/^[a-f0-9]{64}$/.test(file.sha256)) throw new Error('Invalid resource inventory path');
|
|
98
|
+
seen.add(file.path);
|
|
99
|
+
const target = resolve(root, file.path);
|
|
100
|
+
const rel = relative(root, target);
|
|
101
|
+
if (isAbsolute(rel) || rel === '..' || rel.startsWith(`..${sep}`) || await realpath(target) !== target || !(await stat(target)).isFile()) throw new Error('Unsafe toolkit resource: ' + file.path);
|
|
102
|
+
if (createHash('sha256').update(await readFile(target)).digest('hex') !== file.sha256) throw new Error('Toolkit resource checksum mismatch: ' + file.path);
|
|
103
|
+
}
|
|
104
|
+
const omitted = new Set(artifact.omittedResources.map(item => item.path));
|
|
105
|
+
const actual = new Set<string>();
|
|
106
|
+
const walk = async (relativePath: string): Promise<void> => {
|
|
107
|
+
const directory = resolve(root, relativePath);
|
|
108
|
+
for (const entry of await readdir(directory, { withFileTypes: true })) {
|
|
109
|
+
const child = relativePath ? `${relativePath}/${entry.name}` : entry.name;
|
|
110
|
+
const target = resolve(root, child);
|
|
111
|
+
if (entry.isSymbolicLink()) throw new Error('Unsafe toolkit resource: ' + child);
|
|
112
|
+
if (entry.isDirectory()) { await walk(child); continue; }
|
|
113
|
+
if (!entry.isFile() || await realpath(target) !== target) throw new Error('Unsafe toolkit resource: ' + child);
|
|
114
|
+
actual.add(child);
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
await walk('');
|
|
118
|
+
for (const path of actual) if (!seen.has(path) && !omitted.has(path)) throw new Error('Unlisted toolkit resource: ' + path);
|
|
119
|
+
return artifact;
|
|
120
|
+
}
|
|
121
|
+
async validate(): Promise<ToolkitArtifactManifest> { return this.validateArtifact(); }
|
|
122
|
+
async list(): Promise<{ name: string; path: string; scripts: string[] }[]> {
|
|
123
|
+
const manifest = await this.manifest();
|
|
124
|
+
await this.validateArtifact();
|
|
125
|
+
const resources = resourceFiles(manifest);
|
|
126
|
+
return manifest.skills.map(name => ({ name, path: resolve(this.root, 'skills', name, 'SKILL.md'), scripts: resources.filter(file => file.path.startsWith(`skills/${name}/scripts/`)).map(file => file.path) }));
|
|
127
|
+
}
|
|
128
|
+
async check(name: string, externalRoots = [resolve(homedir(), '.agents/skills'), resolve(process.env.CODEX_HOME ?? resolve(homedir(), '.codex'), 'skills')], advertisedHostCapabilities: readonly string[] = []): Promise<SkillCapabilityReport> {
|
|
129
|
+
const manifest = await this.manifest();
|
|
130
|
+
if (!manifest.skills.includes(name)) throw new Error('Unknown toolkit Skill');
|
|
131
|
+
type Requirement = { strength: string; condition: string };
|
|
132
|
+
const catalog = JSON.parse(await readFile(resolve(this.root, 'skills/catalog.json'), 'utf8')) as { entries: { name: string; externalSkills: (Requirement & { skill: string })[]; externalCommands: (Requirement & { command: string })[]; hostCapabilities: (Requirement & { capability: string })[] }[] };
|
|
133
|
+
const entry = catalog.entries.find(entry => entry.name === name)!;
|
|
134
|
+
const dependencies: SkillCapabilityReport['dependencies'] = await Promise.all(entry.externalSkills.map(async dependency => {
|
|
135
|
+
let available = false;
|
|
136
|
+
for (const root of externalRoots) {
|
|
137
|
+
try { if ((await stat(resolve(root, dependency.skill, 'SKILL.md'))).isFile()) { available = true; break; } }
|
|
138
|
+
catch (error) { if ((error as NodeJS.ErrnoException).code !== 'ENOENT') throw error; }
|
|
139
|
+
}
|
|
140
|
+
return { ...dependency, kind: 'skill' as const, available, code: available ? 'AVAILABLE' : 'HOST_SKILL_UNAVAILABLE' };
|
|
141
|
+
}));
|
|
142
|
+
for (const dependency of entry.externalCommands) {
|
|
143
|
+
let available = false;
|
|
144
|
+
for (const dir of (process.env.PATH ?? '').split(delimiter).filter(dir => isAbsolute(dir))) {
|
|
145
|
+
const path = resolve(dir, dependency.command);
|
|
146
|
+
try { if ((await stat(path)).isFile()) { await access(path, constants.X_OK); available = true; break; } }
|
|
147
|
+
catch (error) { if (!['ENOENT', 'ENOTDIR', 'EACCES'].includes((error as NodeJS.ErrnoException).code ?? '')) throw error; }
|
|
148
|
+
}
|
|
149
|
+
dependencies.push({ skill: dependency.command, kind: 'command', strength: dependency.strength, condition: dependency.condition, available, code: available ? 'AVAILABLE' : 'HOST_COMMAND_UNAVAILABLE' });
|
|
150
|
+
}
|
|
151
|
+
for (const dependency of entry.hostCapabilities) {
|
|
152
|
+
// Only the invoking native host can advertise its actual tools. A socket
|
|
153
|
+
// pathname or a Skill file alone never proves native capability support.
|
|
154
|
+
const available = advertisedHostCapabilities.includes(dependency.capability);
|
|
155
|
+
dependencies.push({ skill: dependency.capability, kind: 'host', strength: dependency.strength, condition: dependency.condition, available, code: available ? 'HOST_ADVERTISED' : 'HOST_CAPABILITY_UNVERIFIED' });
|
|
156
|
+
}
|
|
157
|
+
await this.validateArtifact();
|
|
158
|
+
const nativeSupported = (process.platform === 'darwin' && process.arch === 'arm64') || (process.platform === 'linux' && process.arch === 'x64');
|
|
159
|
+
return { name, ready: nativeSupported && dependencies.every(dependency => dependency.available), readinessScope: 'all-declared-scenarios', resourcesValid: true, dependencies, platform: process.platform, arch: process.arch, nativeSupported, source: manifest.commit };
|
|
160
|
+
}
|
|
161
|
+
async run(script: string, args: readonly string[], options: ProcessOptions = {}): Promise<ProcessResult> {
|
|
162
|
+
const manifest = await this.manifest();
|
|
163
|
+
await this.validateArtifact();
|
|
164
|
+
if (!resourceFiles(manifest).some(file => file.path === script) || !/^(skills\/[^/]+\/scripts|skills\/bin)\/.+/.test(script)) throw new Error('Unknown toolkit script');
|
|
165
|
+
const root = await realpath(this.root);
|
|
166
|
+
const target = await realpath(resolve(root, script));
|
|
167
|
+
const rel = relative(root, target);
|
|
168
|
+
if (isAbsolute(rel) || rel === '..' || rel.startsWith(`..${sep}`) || !(await stat(target)).isFile()) throw new Error('Unsafe toolkit script');
|
|
169
|
+
const firstLine = (await readFile(target, 'utf8')).split('\n', 1)[0]!;
|
|
170
|
+
const executable = script.endsWith('.ts') ? process.execPath : script.endsWith('.sh') ? '/bin/bash' : script.endsWith('.py') ? 'python3' : /^#!.*\bruby\b/.test(firstLine) ? 'ruby' : /^#!.*\b(bash|sh)\b/.test(firstLine) ? '/bin/bash' : undefined;
|
|
171
|
+
if (!executable) throw new Error('Unsupported toolkit script interpreter');
|
|
172
|
+
const env = { ...process.env, ...(options.env ?? {}) };
|
|
173
|
+
if (options.env?.LOOMHELM_TOOLKIT_ROOT === undefined) env.LOOMHELM_TOOLKIT_ROOT = root;
|
|
174
|
+
return runProcess(executable, [...(script.endsWith('.ts') ? ['--no-install'] : executable === '/bin/bash' ? ['-p'] : []), target, ...args], { ...options, cwd: options.cwd ?? root, env });
|
|
175
|
+
}
|
|
176
|
+
}
|
package/src/version.ts
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { buildInfo } from './build-info.ts';
|
|
2
|
+
export { buildInfo };
|
|
3
|
+
export const versionHeader = 'X-Loomhelm-Version';
|
|
4
|
+
export class ProductVersionError extends Error {
|
|
5
|
+
readonly code = 'PRODUCT_VERSION_INCOMPATIBLE';
|
|
6
|
+
constructor() { super('Update the client before reconnecting; local mode and state remain available.'); }
|
|
7
|
+
}
|
|
8
|
+
export async function checkServerVersion(baseUrl: string, fetcher: typeof fetch = fetch): Promise<void> {
|
|
9
|
+
if (buildInfo.version === 'dev') return;
|
|
10
|
+
const response = await fetcher(new URL('/version', baseUrl), { cache: 'no-store', redirect: 'error' });
|
|
11
|
+
const value: unknown = await response.json().catch(() => { throw new ProductVersionError(); });
|
|
12
|
+
if (!response.ok || !value || typeof value !== 'object' || !('version' in value) || !('policy' in value) || value.version !== buildInfo.version || value.policy !== buildInfo.policy) throw new ProductVersionError();
|
|
13
|
+
}
|
|
14
|
+
export async function versionedFetch(baseUrl: string, input: string | URL, init: RequestInit = {}, fetcher: typeof fetch = fetch): Promise<Response> {
|
|
15
|
+
const destination = new URL(input, baseUrl);
|
|
16
|
+
if (destination.origin !== new URL(baseUrl).origin) throw new Error('Cross-origin client request rejected');
|
|
17
|
+
await checkServerVersion(baseUrl, fetcher);
|
|
18
|
+
const headers = new Headers(init.headers);
|
|
19
|
+
headers.set(versionHeader, buildInfo.version);
|
|
20
|
+
const response = await fetcher(destination, { ...init, headers, redirect: 'error' });
|
|
21
|
+
if (response.status === 426) throw new ProductVersionError();
|
|
22
|
+
return response;
|
|
23
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# 局部验证与通用 Skill 目录读取
|
|
2
|
+
|
|
3
|
+
`workflow/index.ts` 仅提供通用 Skills 目录读取和局部验证 API;正式迁入入口由 `SkillsRuntime` 与根 `skills/` 提供。局部验证不代表完整工程交付、PR 就绪或发布完成。`workflow/cli.ts` 是独立机器可读入口,由 Bun 1.4.4 直接调用 TS;现有客户端公共入口不因本模块改变。实现以 `docs/design/client.md` 中的 Skills 和工作流职责为边界,参考已安装 `project-engineering-workflow` 的本地阶段语义。
|
|
4
|
+
|
|
5
|
+
## Skills
|
|
6
|
+
|
|
7
|
+
调用 `loadSkills({ project, user })`,参数直接指向 Skills 目录,例如仓库的 `.agents/skills` 和用户的 `~/.agents/skills`;调用方也可显式传入 `.codex/skills` 等现有目录。模块不推断宿主配置、不写全局技能、不执行 Skill 中的代码。每个目录的直接子目录对应一个 Skill,并支持符号链接安装。缺失根目录视为空目录;权限或其他目录读取错误向上传递。
|
|
8
|
+
|
|
9
|
+
每个 Skill 必须有 `SKILL.md`,frontmatter 包含与目录一致的 `name` 和非空 `description`。名称使用小写字母、数字和短横线;这两个字段支持普通单行、双引号 JSON 字符串或单引号 YAML 字符串,其他正文和字段保持原样。多行 YAML 标量等未支持的语法会给出诊断,不会猜测解释。
|
|
10
|
+
|
|
11
|
+
同名项目 Skill 优先于用户 Skill。项目副本无效或不适用时仍占用该名称,不会静默回退到用户副本。其他正常 Skills 可以继续加载;调用方必须处理 `diagnostics`,或通过 `requireSkill` 确认需要的 Skill 可用。
|
|
12
|
+
|
|
13
|
+
可在 Skill 旁添加可选的 `loomhelm.json`,供客户端检查兼容性;它是客户端独立的机器合同,不要求改写已安装 Skill。示例:
|
|
14
|
+
|
|
15
|
+
```json
|
|
16
|
+
{
|
|
17
|
+
"schemaVersion": 1,
|
|
18
|
+
"version": "1.2.3",
|
|
19
|
+
"scopes": ["project", "user"]
|
|
20
|
+
}
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
清单只允许 `schemaVersion`、`version`、`scopes`;`scopes` 必须声明允许从哪个来源加载,不能用于授予文件或命令执行权限。没有清单或没有 `version` 时版本为 `null`,仍可按名称加载;一旦要求版本范围,未知版本会拒绝。未声明版本的全局 `project-engineering-workflow` 可只读加载,但不能被当作满足某个版本约束。版本不从目录名、frontmatter 或 Git 历史猜测。
|
|
24
|
+
|
|
25
|
+
`requireSkill(catalog, name, { range, scopes })` 检查选中的 Skill。版本支持严格的三段非负整数,以及 `*`、精确版本、`^`、`~` 和空格连接的 `>=`、`<=`、`>`、`<`、`=` 比较式;不支持预发布版本、通配分段和 `||`。`^0.2.3` 的上界为 `0.3.0`,`^0.0.3` 仅接受 `0.0.3`。所有约束都会先完成语法检查。`digest` 是正文与清单原文组成的 SHA-256 指纹,仅作内容身份,不证明可信来源。
|
|
26
|
+
|
|
27
|
+
```ts
|
|
28
|
+
const catalog = await loadSkills({ project: projectSkills, user: userSkills });
|
|
29
|
+
const skill = requireSkill(catalog, 'engineering', {
|
|
30
|
+
range: '>=1.0.0 <2.0.0',
|
|
31
|
+
scopes: ['project', 'user'],
|
|
32
|
+
});
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## 本地阶段
|
|
36
|
+
|
|
37
|
+
`LocalValidation.open(repository, baseRef, flowType)` 完成执行上下文检查:必须有可解析的明确 base、非 `main`/`master` 的命名分支、干净工作区,以及从 base 派生的 HEAD。模块仅检查本地 Git,不 fetch、不变更 remote,也不修改已有改动。
|
|
38
|
+
|
|
39
|
+
| 调用 | 完成的本地阶段 | 下一阶段 |
|
|
40
|
+
| - | - | - |
|
|
41
|
+
| `open` | 执行上下文 | `durable-contracts` |
|
|
42
|
+
| `settleContracts` | 记录 Spec 和 ADR 的适用性结论及文件指纹 | `delivery-slices` |
|
|
43
|
+
| `recordImplementation` | 记录调用方已完成的实现说明 | `validation` |
|
|
44
|
+
| `validate` | 执行显式配置的验证命令并保存结果 | `locally-validated` 或 `validation` |
|
|
45
|
+
| `readiness` | 重新读取 Git 和合同文件,检查结果是否仍适用 | 返回当前门禁 |
|
|
46
|
+
|
|
47
|
+
`settleContracts` 必须分别包含 Spec 和 ADR 的结论:`link` 要求存在的仓库相对文件路径,`not-needed` 要求空路径列表,两者均要求理由。真实路径不能经符号链接逃出仓库。设计决策及批准由调用方负责;模块不创建或替代 Spec/ADR,也不把说明文字当作人工批准。合同变化后必须重新结算合同、记录实现并验证。
|
|
48
|
+
|
|
49
|
+
每条验证包含唯一 `id`、可执行文件 `command` 和字符串数组 `args`,默认是必需验证。命令在仓库根目录通过现有 `runProcess` 执行,禁用隐式 shell 展开。验证默认超时 30 秒、输出上限 1 MiB,可显式调整至最多 1800 秒和 64 MiB。命令本身拥有当前用户权限,调用方须只提交已授权的命令;本模块不是命令沙箱。
|
|
50
|
+
|
|
51
|
+
至少需要一条必需验证。所有必需验证通过、整套验证执行结束且候选未变化,才能进入 `locally-validated`。可选验证失败会保留失败事实,不阻塞必需验证;任何验证造成 Git 状态或合同变化都会阻止就绪。非零退出、超时、输出超限、启动失败与取消都不会被记作通过。取消之后未开始的条目不生成执行收据;完整套件缺失条目时不能就绪。
|
|
52
|
+
|
|
53
|
+
收据包含随机执行身份、命令、仓库、base、HEAD、实际开始与结束时间、退出码、信号、状态、输出与输出摘要。现有进程适配器在超时、取消、输出超限等异常时只返回异常,因此这些收据不声称保留部分 stdout/stderr。状态快照使用深拷贝;单实例拒绝并行变更,每次验证调用都重新运行命令。调用方负责持久保存返回结果、跨实例锁与重启恢复,本模块不伪造持久化或幂等执行保证。
|
|
54
|
+
|
|
55
|
+
`locally-validated` 只表示该模块覆盖的本地阶段已通过,不是远端发布授权、完整 Review Readiness、merge-ready 或 Flow Complete。调用方仍负责项目适用的 Spec 同步、视觉证据、经验验收、审查层级与正式 review/CI 等门禁。`flowType` 保留 `normal`、`fast-track`、`local-merge` 路由身份,但不从中继承 push、PR、merge 或 release 权限。候选 HEAD 变化、工作区变脏或合同指纹变化后,`readiness()` 返回未完成门禁,旧收据保留为历史事实。
|
|
56
|
+
|
|
57
|
+
## 验证入口
|
|
58
|
+
|
|
59
|
+
先在 `clients/typescript/` 下执行 `bun install --frozen-lockfile` 和 `bun --no-install run build`。命令输出 JSON,失败退出码为 1;参数或配置错误输出 JSON 到 stderr,实际验证失败的结果输出到 stdout。
|
|
60
|
+
|
|
61
|
+
```sh
|
|
62
|
+
bun --no-install src/workflow/cli.ts skills /path/to/repo/.agents/skills /path/to/user/.agents/skills
|
|
63
|
+
bun --no-install src/workflow/cli.ts local-verify /path/to/workflow.json
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
`verify` 清单示例:
|
|
67
|
+
|
|
68
|
+
```json
|
|
69
|
+
{
|
|
70
|
+
"schemaVersion": 1,
|
|
71
|
+
"repository": "./repo",
|
|
72
|
+
"base": "HEAD",
|
|
73
|
+
"flowType": "normal",
|
|
74
|
+
"skills": {
|
|
75
|
+
"project": ".agents/skills",
|
|
76
|
+
"user": "/path/to/user/.agents/skills",
|
|
77
|
+
"requirements": [{ "name": "engineering", "range": "^1.0.0", "scopes": ["project", "user"] }]
|
|
78
|
+
},
|
|
79
|
+
"contracts": [
|
|
80
|
+
{ "kind": "spec", "disposition": "link", "reason": "Existing acceptance contract", "paths": ["docs/specs/feature/SPEC.md"] },
|
|
81
|
+
{ "kind": "adr", "disposition": "not-needed", "reason": "No architectural boundary change", "paths": [] }
|
|
82
|
+
],
|
|
83
|
+
"implementation": "Implementation committed and ready for local validation",
|
|
84
|
+
"validations": [
|
|
85
|
+
{ "id": "tests", "command": "bun", "args": ["test", "test/feature.test.ts"], "timeoutMs": 30000 }
|
|
86
|
+
]
|
|
87
|
+
}
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
`repository` 相对于清单所在目录解析,Skills 路径相对于仓库解析;`skills` 可省略。验证命令固定以仓库根目录为工作目录。建议将清单与输出放在仓库外或既有忽略的证据目录,避免验证自身产生未跟踪文件使候选变脏。输出的 `selectedSkills` 保留实际加载的内容、来源、版本与指纹;Skill 检查在执行命令前进行,不声称锁定全局 Skill 文件或检测验证期间的外部变更。
|
|
91
|
+
|
|
92
|
+
行为验证使用 `bun --no-install run test`。`test/workflow.test.ts` 使用临时真实 Git 仓库和真实 Bun 子进程,覆盖 Skills 覆盖与兼容性、阶段顺序、命令结果、取消、合同逃逸、合同漂移、候选污染、HEAD 变化,以及无服务端的 CLI 验证链路。
|