@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,53 @@
|
|
|
1
|
+
import { expect, test } from "bun:test";
|
|
2
|
+
import { bindPRStatus, publishPRStatus } from "../../web/pr-status";
|
|
3
|
+
import type { PRSnapshot } from "../../lib/pr-details";
|
|
4
|
+
|
|
5
|
+
test("PR icons distinguish merge and CI states and share one request per URL", async () => {
|
|
6
|
+
const original = globalThis.fetch;
|
|
7
|
+
let calls = 0;
|
|
8
|
+
const url = "https://github.com/example/repo/pull/985";
|
|
9
|
+
const snapshot: PRSnapshot = { data: { number: 985, title: "PR", url, state: "MERGED", mergedAt: null, mergeable: "UNKNOWN", ci: "成功", checks: [] }, observed_at: null, stale: false, loading: false, error: null };
|
|
10
|
+
globalThis.fetch = (async () => { calls++; return Response.json(snapshot); }) as typeof fetch;
|
|
11
|
+
const a = document.createElement("a"), b = document.createElement("a");
|
|
12
|
+
a.setAttribute("aria-label", "打开任务 PR"); b.setAttribute("aria-label", "打开交付单元 PR"); document.body.append(a, b);
|
|
13
|
+
try {
|
|
14
|
+
bindPRStatus(a, "task", "one", url); bindPRStatus(b, "group", "two", url);
|
|
15
|
+
await new Promise(resolve => setTimeout(resolve, 0));
|
|
16
|
+
expect(calls).toBe(1); expect(a.dataset.prState).toBe("MERGED"); expect(b.dataset.ciState).toBe("成功");
|
|
17
|
+
expect(a.getAttribute("aria-label")).toContain("已合并 · CI 成功");
|
|
18
|
+
publishPRStatus(url, { ...snapshot, data: { ...snapshot.data!, ci: "失败" } }); expect(a.dataset.ciState).toBe("失败");
|
|
19
|
+
publishPRStatus(url, { ...snapshot, data: { ...snapshot.data!, ci: "运行中" } }); expect(b.dataset.ciState).toBe("运行中");
|
|
20
|
+
a.remove(); publishPRStatus(url, snapshot); expect(b.dataset.ciState).toBe("成功");
|
|
21
|
+
} finally { globalThis.fetch = original; a.remove(); b.remove(); }
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
test("an older card response cannot overwrite a newer popover publication", async () => {
|
|
25
|
+
const original = globalThis.fetch;
|
|
26
|
+
const url = "https://github.com/example/repo/pull/986";
|
|
27
|
+
let resolve!: (value: Response) => void;
|
|
28
|
+
globalThis.fetch = (() => new Promise<Response>(done => { resolve = done; })) as typeof fetch;
|
|
29
|
+
const trigger = document.createElement("a"); document.body.append(trigger);
|
|
30
|
+
const latest: PRSnapshot = { data: { number: 986, title: "PR", url, state: "MERGED", mergedAt: null, mergeable: "UNKNOWN", ci: "成功", checks: [] }, observed_at: "2026-11-07T01:00:00Z", stale: false, loading: false, error: null };
|
|
31
|
+
try {
|
|
32
|
+
bindPRStatus(trigger, "task", "one", url);
|
|
33
|
+
publishPRStatus(url, latest);
|
|
34
|
+
resolve(Response.json({ ...latest, observed_at: null, data: { ...latest.data!, state: "OPEN", ci: "失败" } }));
|
|
35
|
+
await new Promise(done => setTimeout(done, 0));
|
|
36
|
+
expect(trigger.dataset.prState).toBe("MERGED"); expect(trigger.dataset.ciState).toBe("成功");
|
|
37
|
+
const next = document.createElement("a"); document.body.append(next);
|
|
38
|
+
bindPRStatus(next, "group", "two", url);
|
|
39
|
+
expect(next.dataset.prState).toBe("MERGED"); next.remove();
|
|
40
|
+
} finally { globalThis.fetch = original; trigger.remove(); }
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
test("out-of-order timestamped PR publications retain the newer observed result", () => {
|
|
44
|
+
const url = "https://github.com/example/repo/pull/987";
|
|
45
|
+
const snapshot: PRSnapshot = { data: { number: 987, title: "PR", url, state: "MERGED", mergedAt: null, mergeable: "UNKNOWN", ci: "成功", checks: [] }, observed_at: "2026-11-07T02:00:00Z", stale: false, loading: false, error: null };
|
|
46
|
+
publishPRStatus(url, snapshot);
|
|
47
|
+
const trigger = document.createElement("a"); document.body.append(trigger);
|
|
48
|
+
try {
|
|
49
|
+
bindPRStatus(trigger, "task", "one", url);
|
|
50
|
+
publishPRStatus(url, { ...snapshot, observed_at: "2026-11-07T01:00:00Z", data: { ...snapshot.data!, state: "OPEN", ci: "失败" } });
|
|
51
|
+
expect(trigger.dataset.prState).toBe("MERGED"); expect(trigger.dataset.ciState).toBe("成功");
|
|
52
|
+
} finally { trigger.remove(); }
|
|
53
|
+
});
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { expect, test } from "bun:test";
|
|
2
|
+
import { createProfileEditor } from "../../web/profile-editor";
|
|
3
|
+
const profile = { model: "gpt-6.1-sol", thinking: "medium" };
|
|
4
|
+
const capabilities = [{ model: "gpt-6.1-sol", thinking: ["medium", "high"] }];
|
|
5
|
+
|
|
6
|
+
test("editor submits a full pair and keeps server failures visible", async () => {
|
|
7
|
+
let received: unknown;
|
|
8
|
+
const editor = createProfileEditor({ capabilities, update: async (...args) => { received = args; throw new Error("Ledger version changed"); } }, "task", "a", profile, profile, null);
|
|
9
|
+
document.body.append(editor);
|
|
10
|
+
(editor.querySelector(".profile-save") as HTMLButtonElement).click();
|
|
11
|
+
await new Promise((resolve) => setTimeout(resolve, 0));
|
|
12
|
+
expect(received).toEqual(["task", "a", profile, false]);
|
|
13
|
+
expect(editor.querySelector('[role="alert"]')?.textContent).toBe("Ledger version changed");
|
|
14
|
+
editor.remove();
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
test("unavailable capabilities disable mutation and frozen profiles have no edit controls", () => {
|
|
18
|
+
const unavailable = createProfileEditor({ capabilities: null, capabilityError: "Catalog unavailable", update: async () => {} }, "task", "a", profile, profile, null);
|
|
19
|
+
expect((unavailable.querySelector(".profile-save") as HTMLButtonElement).disabled).toBe(true);
|
|
20
|
+
expect(unavailable.textContent).toContain("Catalog unavailable");
|
|
21
|
+
const frozen = createProfileEditor({ capabilities, update: async () => {} }, "task", "a", profile, profile, "对话创建请求已提交,须先对账");
|
|
22
|
+
expect(frozen.querySelector("select")).toBeNull();
|
|
23
|
+
expect(frozen.textContent).toContain("须先对账");
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
test("run default inheritance is selected and cleared as one pair", async () => {
|
|
27
|
+
let received: unknown;
|
|
28
|
+
const editor = createProfileEditor({ capabilities, update: async (...args) => { received = args; } }, "task", "a", null, profile, null);
|
|
29
|
+
expect((editor.querySelector('input[type="range"]') as HTMLInputElement).disabled).toBe(true);
|
|
30
|
+
(editor.querySelector(".profile-save") as HTMLButtonElement).click();
|
|
31
|
+
await new Promise((resolve) => setTimeout(resolve, 0));
|
|
32
|
+
expect(received).toEqual(["task", "a", null, false]);
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
test("run profile uses a neutral settings icon trigger", () => {
|
|
36
|
+
const editor = createProfileEditor({ capabilities, update: async () => {} }, "run", "run", profile, profile, null);
|
|
37
|
+
const trigger = editor.querySelector<HTMLElement>(".profile-trigger")!;
|
|
38
|
+
expect(trigger.textContent?.trim()).toBe("");
|
|
39
|
+
expect(trigger.dataset.profileStatus).toBeUndefined();
|
|
40
|
+
expect(trigger.dataset.tooltip).toBe("默认执行配置");
|
|
41
|
+
expect(trigger.querySelector('[data-lucide="settings-2"]')).not.toBeNull();
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
test("profile dropdown uses a model list and discrete thinking slider", async () => {
|
|
45
|
+
let received: unknown;
|
|
46
|
+
const editor = createProfileEditor({ capabilities, update: async (...args) => { received = args; } }, "task", "a", profile, profile, null);
|
|
47
|
+
expect(editor.querySelector("details")?.open).toBe(false);
|
|
48
|
+
expect(editor.querySelectorAll('[aria-haspopup="listbox"]')).toHaveLength(1);
|
|
49
|
+
const slider = editor.querySelector('input[type="range"]') as HTMLInputElement;
|
|
50
|
+
slider.value = "1"; slider.dispatchEvent(new Event("input"));
|
|
51
|
+
expect(slider.getAttribute("aria-valuetext")).toBe("high");
|
|
52
|
+
(editor.querySelector(".profile-save") as HTMLButtonElement).click();
|
|
53
|
+
await new Promise((resolve) => setTimeout(resolve, 0));
|
|
54
|
+
expect(received).toEqual(["task", "a", { model: profile.model, thinking: "high" }, false]);
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
test("inheritance cannot submit a default pair absent from the capability catalog", () => {
|
|
58
|
+
const editor = createProfileEditor({ capabilities: [], update: async () => {} }, "task", "a", null, profile, null);
|
|
59
|
+
expect((editor.querySelector(".profile-save") as HTMLButtonElement).disabled).toBe(true);
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
test("model menu supports keyboard selection and Escape without closing the profile panel", () => {
|
|
63
|
+
const editor = createProfileEditor({ capabilities: [...capabilities, { model: "gpt-6-luna", thinking: ["medium"] }], update: async () => {} }, "task", "a", profile, profile, null);
|
|
64
|
+
document.body.append(editor);
|
|
65
|
+
const details = editor.querySelector("details")!; details.open = true;
|
|
66
|
+
const trigger = editor.querySelector<HTMLButtonElement>('[aria-haspopup="listbox"]')!;
|
|
67
|
+
trigger.click();
|
|
68
|
+
expect(trigger.getAttribute("aria-expanded")).toBe("true");
|
|
69
|
+
const list = editor.querySelector<HTMLElement>('[role="listbox"]')!;
|
|
70
|
+
const selected = list.querySelector<HTMLButtonElement>('[aria-selected="true"]')!;
|
|
71
|
+
selected.dispatchEvent(new window.KeyboardEvent("keydown", { key: "End", bubbles: true }));
|
|
72
|
+
expect(document.activeElement?.textContent).toBe("gpt-6-luna");
|
|
73
|
+
(document.activeElement as HTMLButtonElement).click();
|
|
74
|
+
expect(trigger.textContent).toBe("gpt-6-luna");
|
|
75
|
+
expect(trigger.getAttribute("aria-expanded")).toBe("false");
|
|
76
|
+
trigger.click();
|
|
77
|
+
list.dispatchEvent(new window.KeyboardEvent("keydown", { key: "Escape", bubbles: true }));
|
|
78
|
+
expect(document.activeElement).toBe(trigger);
|
|
79
|
+
expect(details.open).toBe(true);
|
|
80
|
+
editor.remove();
|
|
81
|
+
});
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { afterEach, beforeEach, expect, test } from "bun:test";
|
|
2
|
+
import { attachResourcePopover, closeResourcePopover, refreshResourcePopover, timingText, type ResourceSource } from "../../web/resource-popover";
|
|
3
|
+
import type { View } from "../../web/model";
|
|
4
|
+
const view = { nodes: [{ id: "n", kind: "task", ref_id: "task" }], tasks: [{ id: "task", pr: { url: "https://github.com/example/repo/pull/42" } }], planned_intervals: [{ node_id: "n", start: "2026-11-07T00:00:00Z", end: "2026-11-07T00:10:00Z" }] } as View;
|
|
5
|
+
const source = (): ResourceSource => ({ kind: "task", id: "task", thread: "thread", start: "2026-11-07T00:00:00Z", end: "2026-11-07T00:15:00Z", view, output: () => ({ state: "available", text: "<unsafe>\nFull response", thread_title: "真实标题", thread_id: "thread", turn_id: "turn", message_id: "message", phase: "commentary", message_status: "in_progress", observed_at: null, stale: false }) });
|
|
6
|
+
beforeEach(() => { closeResourcePopover(); document.body.replaceChildren(); });
|
|
7
|
+
afterEach(() => { closeResourcePopover(); document.body.replaceChildren(); });
|
|
8
|
+
test("interactive dialog supports keyboard entry and Escape without reopening or copying the response", async () => {
|
|
9
|
+
const trigger = document.createElement("button"); document.body.append(trigger); attachResourcePopover(trigger, "conversation", source());
|
|
10
|
+
trigger.focus();
|
|
11
|
+
const panel = document.querySelector<HTMLElement>(".resource-popover")!;
|
|
12
|
+
expect(panel.getAttribute("role")).toBe("dialog"); expect(panel.textContent).toContain("真实标题"); expect(panel.querySelector("unsafe")).toBeNull();
|
|
13
|
+
expect([...panel.querySelectorAll("button")].map(b => b.getAttribute("aria-label"))).toEqual(["复制对话 ID", "复制标题"]);
|
|
14
|
+
document.dispatchEvent(new window.KeyboardEvent("keydown", { key: "Tab", bubbles: true }));
|
|
15
|
+
expect(panel.contains(document.activeElement)).toBe(true);
|
|
16
|
+
document.dispatchEvent(new window.KeyboardEvent("keydown", { key: "Escape", bubbles: true }));
|
|
17
|
+
expect(trigger.getAttribute("aria-expanded")).toBe("false"); expect(document.activeElement).toBe(trigger); expect(document.querySelector(".resource-popover")).toBeNull();
|
|
18
|
+
});
|
|
19
|
+
test("stream refresh preserves response scroll and switches to the latest message", () => {
|
|
20
|
+
const s = source(); let output = s.output()!; s.output = () => output;
|
|
21
|
+
const trigger = document.createElement("button"); document.body.append(trigger); attachResourcePopover(trigger, "conversation", s); trigger.focus();
|
|
22
|
+
const body = document.querySelector<HTMLElement>(".resource-body")!; body.scrollTop = 120;
|
|
23
|
+
output = { ...output, text: "new streamed message" }; refreshResourcePopover();
|
|
24
|
+
expect(body.textContent).toContain("new streamed message"); expect(body.scrollTop).toBe(120);
|
|
25
|
+
trigger.remove(); refreshResourcePopover(); expect(document.querySelector(".resource-popover")).toBeNull();
|
|
26
|
+
});
|
|
27
|
+
test("scrolling the popover body does not reposition the floating panel", () => {
|
|
28
|
+
const trigger = document.createElement("button"); document.body.append(trigger);
|
|
29
|
+
let top = 300;
|
|
30
|
+
trigger.getBoundingClientRect = () => ({ top, bottom: top + 24, left: 40, right: 120, width: 80, height: 24, x: 40, y: top, toJSON: () => ({}) }) as DOMRect;
|
|
31
|
+
attachResourcePopover(trigger, "conversation", source()); trigger.focus();
|
|
32
|
+
const panel = document.querySelector<HTMLElement>(".resource-popover")!;
|
|
33
|
+
const positionedTop = panel.style.top;
|
|
34
|
+
top = 500;
|
|
35
|
+
document.querySelector<HTMLElement>(".resource-body")!.dispatchEvent(new Event("scroll", { bubbles: true }));
|
|
36
|
+
expect(panel.style.top).toBe(positionedTop);
|
|
37
|
+
});
|
|
38
|
+
test("elapsed budget includes the entire recorded duration and rejects nonpositive schedules", () => {
|
|
39
|
+
expect(timingText(source())).toContain("用时占比:150%\n超出排期:50%");
|
|
40
|
+
const s = source(); s.view = { ...view, planned_intervals: [] }; expect(timingText(s)).toContain("用时占比:不可用");
|
|
41
|
+
s.start = null; expect(timingText(s)).not.toContain("150%");
|
|
42
|
+
});
|
|
43
|
+
test("a new trigger replaces the previous dialog", () => {
|
|
44
|
+
const a = document.createElement("button"), b = document.createElement("button"); document.body.append(a, b);
|
|
45
|
+
attachResourcePopover(a, "conversation", source()); attachResourcePopover(b, "time", source()); a.focus(); b.focus();
|
|
46
|
+
expect(a.getAttribute("aria-expanded")).toBe("false"); expect(document.querySelectorAll(".resource-popover")).toHaveLength(1);
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
test("hover allows entering the dialog across the gap and closes after leaving both", async () => {
|
|
50
|
+
const trigger = document.createElement("button"); document.body.append(trigger); attachResourcePopover(trigger, "conversation", source());
|
|
51
|
+
trigger.dispatchEvent(new window.PointerEvent("pointerenter", { pointerType: "mouse" }));
|
|
52
|
+
await new Promise(r => setTimeout(r, 270));
|
|
53
|
+
const panel = document.querySelector<HTMLElement>(".resource-popover")!;
|
|
54
|
+
trigger.dispatchEvent(new window.PointerEvent("pointerleave", { pointerType: "mouse" })); panel.dispatchEvent(new window.PointerEvent("pointerenter", { pointerType: "mouse" }));
|
|
55
|
+
await new Promise(r => setTimeout(r, 200)); expect(panel.isConnected).toBe(true);
|
|
56
|
+
panel.dispatchEvent(new window.PointerEvent("pointerleave", { pointerType: "mouse" }));
|
|
57
|
+
await new Promise(r => setTimeout(r, 200)); expect(panel.isConnected).toBe(false);
|
|
58
|
+
});
|
|
59
|
+
|
|
60
|
+
test("copy controls write only their own identity value", async () => {
|
|
61
|
+
const writes: string[] = [];
|
|
62
|
+
const clipboard = Object.getOwnPropertyDescriptor(window.navigator, "clipboard");
|
|
63
|
+
Object.defineProperty(window.navigator, "clipboard", { configurable: true, value: { writeText: async (value: string) => { writes.push(value); } } });
|
|
64
|
+
const previous = Object.getOwnPropertyDescriptor(globalThis, "navigator");
|
|
65
|
+
Object.defineProperty(globalThis, "navigator", { configurable: true, value: window.navigator });
|
|
66
|
+
try {
|
|
67
|
+
const trigger = document.createElement("button"); document.body.append(trigger); attachResourcePopover(trigger, "conversation", source()); trigger.focus();
|
|
68
|
+
const buttons = document.querySelectorAll<HTMLButtonElement>(".resource-popover button"); buttons[0]!.click(); buttons[1]!.click(); await Promise.resolve();
|
|
69
|
+
expect(writes).toEqual(["thread", "真实标题"]); expect(buttons[0]!.dataset.feedback).toBe("已复制");
|
|
70
|
+
} finally {
|
|
71
|
+
if (clipboard) Object.defineProperty(window.navigator, "clipboard", clipboard); else Reflect.deleteProperty(window.navigator, "clipboard");
|
|
72
|
+
if (previous) Object.defineProperty(globalThis, "navigator", previous); else Reflect.deleteProperty(globalThis, "navigator");
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
test("failed PR transport exposes retry without losing its trigger", async () => {
|
|
77
|
+
const original = globalThis.fetch;
|
|
78
|
+
globalThis.fetch = (async () => { throw new Error("network unavailable"); }) as typeof fetch;
|
|
79
|
+
try {
|
|
80
|
+
const trigger = document.createElement("button"); document.body.append(trigger); attachResourcePopover(trigger, "pr", source()); trigger.dispatchEvent(new window.PointerEvent("pointerenter", { pointerType: "mouse" }));
|
|
81
|
+
await new Promise(r => setTimeout(r, 270));
|
|
82
|
+
expect(document.querySelector('.resource-body')?.textContent).toContain("详情加载失败");
|
|
83
|
+
expect(document.querySelector<HTMLButtonElement>('button[data-retry]')?.textContent).toBe("重试");
|
|
84
|
+
expect(trigger.getAttribute("aria-expanded")).toBe("true");
|
|
85
|
+
} finally { globalThis.fetch = original; }
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
test("PR identity renders before the details response", async () => {
|
|
89
|
+
const original = globalThis.fetch;
|
|
90
|
+
let resolve!: (response: Response) => void;
|
|
91
|
+
globalThis.fetch = (() => new Promise<Response>(r => { resolve = r; })) as typeof fetch;
|
|
92
|
+
try {
|
|
93
|
+
const trigger = document.createElement("button"); document.body.append(trigger); attachResourcePopover(trigger, "pr", source()); trigger.dispatchEvent(new window.PointerEvent("pointerenter", { pointerType: "mouse" })); await new Promise(r => setTimeout(r, 270));
|
|
94
|
+
const panel = document.querySelector<HTMLElement>(".resource-popover")!;
|
|
95
|
+
expect(panel.textContent).toContain("#42"); expect(panel.textContent).toContain("https://github.com/example/repo/pull/42");
|
|
96
|
+
expect(panel.getAttribute("aria-busy")).toBe("true"); expect(panel.querySelectorAll(".resource-skeleton").length).toBeGreaterThan(0);
|
|
97
|
+
resolve(new Response(JSON.stringify({ data: { number: 42, title: "PR 标题", url: "https://github.com/example/repo/pull/42", state: "OPEN", mergedAt: null, mergeable: "MERGEABLE", checks: [], ci: "未配置" }, observed_at: null, stale: false, loading: false, error: null })));
|
|
98
|
+
await new Promise(r => setTimeout(r, 0));
|
|
99
|
+
} finally { globalThis.fetch = original; }
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
test("unbound PR shows an immediate empty state without fetching", async () => {
|
|
103
|
+
const original = globalThis.fetch; let calls = 0; globalThis.fetch = (async () => { calls++; throw new Error("must not fetch"); }) as typeof fetch;
|
|
104
|
+
try {
|
|
105
|
+
const unbound = { ...source(), view: { ...view, tasks: [{ id: "task", pr: null }] } as View };
|
|
106
|
+
const trigger = document.createElement("button"); document.body.append(trigger); attachResourcePopover(trigger, "pr", unbound); trigger.focus(); await new Promise(r => setTimeout(r, 0));
|
|
107
|
+
expect(document.querySelector(".resource-body")?.textContent).toContain("尚未关联 PR"); expect(calls).toBe(0);
|
|
108
|
+
} finally { globalThis.fetch = original; }
|
|
109
|
+
});
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { expect, test } from "bun:test";
|
|
2
|
+
import { readFileSync } from "node:fs";
|
|
3
|
+
const css = readFileSync(new URL("../../web/app.css", import.meta.url), "utf8");
|
|
4
|
+
|
|
5
|
+
test("medium layout shares container-derived card tracks across detail states", () => {
|
|
6
|
+
const medium = css.split("@media (min-width: 768px) and (max-width: 1444px) {")[1]!.split("@media (max-width: 767px)")[0]!;
|
|
7
|
+
expect(medium).toContain("container-type: inline-size");
|
|
8
|
+
expect(medium).toContain("round(down, calc((100cqw + 20px) / 263px), 1)");
|
|
9
|
+
expect(medium).toContain("repeat(auto-fill, var(--stable-task-card-width))");
|
|
10
|
+
expect(medium).not.toContain("minmax(243px, 1fr)");
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
test("identity actions follow the project name instead of filling the title row", () => {
|
|
14
|
+
expect(css).toContain(".identity-copy { flex: 0 1 auto; min-width: 0; }");
|
|
15
|
+
expect(css).toContain("text-overflow: ellipsis; white-space: nowrap;");
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
test("mobile theme entry shares the title row centerline", () => {
|
|
19
|
+
expect(css).toContain(".topbar .theme-control { position: absolute; top: 12px; right: 16px; width: 44px; height: 44px; min-height: 44px; }");
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
test("compact header icons use optical rather than box-edge spacing", () => {
|
|
23
|
+
expect(css).toContain(".run-profile-control { flex: 0 0 auto; min-width: 0; margin-left: -1px; }");
|
|
24
|
+
expect(css).toContain("display: inline-flex; align-items: center; justify-content: center; width: 30px;");
|
|
25
|
+
expect(css).toContain("width: 16px; height: 16px; flex: 0 0 16px; transform: translateX(-0.5px);");
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
test("mobile header actions use 44px touch targets and 18px icons", () => {
|
|
29
|
+
expect(css).toContain(".topbar .plan-info-trigger { width: 44px; height: 44px; min-height: 44px; flex: 0 0 44px; margin-left: -8px; }");
|
|
30
|
+
expect(css).toContain(".topbar .theme-control .theme-trigger { width: 44px; height: 44px; min-height: 44px;");
|
|
31
|
+
expect(css).toContain(".run-profile-control { flex: 0 0 44px; width: 44px; margin-left: -8px; }");
|
|
32
|
+
expect(css).toContain("width: 18px; height: 18px; flex: 0 0 18px;");
|
|
33
|
+
});
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { expect, test } from "bun:test";
|
|
2
|
+
import { Window } from "happy-dom";
|
|
3
|
+
import { runClientScript } from "../../lib/service-pages";
|
|
4
|
+
|
|
5
|
+
test("navigation and compatibility warnings stay inside the dashboard", async () => {
|
|
6
|
+
const dom = new Window({
|
|
7
|
+
url: "http://localhost/runs/orchestration-viewer/",
|
|
8
|
+
});
|
|
9
|
+
dom.document.body.innerHTML =
|
|
10
|
+
'<div class="shell"><header><div class="brand-mark" aria-hidden="true"><span>icon</span></div></header><main><div id="connection-notice" hidden></div></main></div>';
|
|
11
|
+
dom.setInterval = (() => setTimeout(() => {}, 0)) as typeof dom.setInterval;
|
|
12
|
+
dom.fetch = async (url) =>
|
|
13
|
+
new dom.Response(
|
|
14
|
+
JSON.stringify(
|
|
15
|
+
url === "api/service"
|
|
16
|
+
? { build_id: "candidate", warning: "兼容性提示" }
|
|
17
|
+
: {},
|
|
18
|
+
),
|
|
19
|
+
{ status: 200 },
|
|
20
|
+
);
|
|
21
|
+
dom.eval(runClientScript);
|
|
22
|
+
await new Promise((resolve) => setTimeout(resolve, 10));
|
|
23
|
+
expect(dom.document.body.children.length).toBe(1);
|
|
24
|
+
const home = dom.document.querySelector("header a");
|
|
25
|
+
expect(home?.getAttribute("href")).toBe("/");
|
|
26
|
+
expect(home?.getAttribute("aria-label")).toBe("全部编排运行");
|
|
27
|
+
expect(home?.getAttribute("aria-hidden")).toBeNull();
|
|
28
|
+
expect(dom.document.querySelector("main .notice")?.textContent).toBe(
|
|
29
|
+
"兼容性提示",
|
|
30
|
+
);
|
|
31
|
+
expect(dom.document.body.textContent).not.toContain("service ensure");
|
|
32
|
+
await dom.happyDOM.close();
|
|
33
|
+
});
|
|
34
|
+
test("lease failures signal the dashboard without adding another banner", async () => {
|
|
35
|
+
const dom = new Window({
|
|
36
|
+
url: "http://localhost/runs/orchestration-viewer/",
|
|
37
|
+
});
|
|
38
|
+
dom.document.body.innerHTML =
|
|
39
|
+
'<div class="shell"><div id="connection-notice">快照提示</div></div>';
|
|
40
|
+
dom.setInterval = (() => setTimeout(() => {}, 0)) as typeof dom.setInterval;
|
|
41
|
+
let expired = false;
|
|
42
|
+
dom.document.addEventListener("service-session", (event) => {
|
|
43
|
+
expired = event instanceof dom.CustomEvent && Boolean(event.detail.expired);
|
|
44
|
+
});
|
|
45
|
+
dom.fetch = async () => new dom.Response("{}", { status: 401 });
|
|
46
|
+
dom.eval(runClientScript);
|
|
47
|
+
await new Promise((resolve) => setTimeout(resolve, 10));
|
|
48
|
+
expect(expired).toBe(true);
|
|
49
|
+
expect(dom.document.body.children.length).toBe(1);
|
|
50
|
+
expect(dom.document.querySelector("#connection-notice")?.textContent).toBe(
|
|
51
|
+
"快照提示",
|
|
52
|
+
);
|
|
53
|
+
await dom.happyDOM.close();
|
|
54
|
+
});
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Window } from "happy-dom";
|
|
2
|
+
|
|
3
|
+
const dom = new Window({ url: "http://localhost/" });
|
|
4
|
+
|
|
5
|
+
Object.assign(globalThis, {
|
|
6
|
+
window: dom,
|
|
7
|
+
document: dom.document,
|
|
8
|
+
HTMLElement: dom.HTMLElement,
|
|
9
|
+
HTMLButtonElement: dom.HTMLButtonElement,
|
|
10
|
+
DOMRect: dom.DOMRect,
|
|
11
|
+
Event: dom.Event,
|
|
12
|
+
Node: dom.Node,
|
|
13
|
+
});
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { afterEach, expect, test } from "bun:test";
|
|
2
|
+
import { atomUrl, groupUrl, installTaskContextMenu, milestoneUrl, taskPRs, taskUrl } from "../../web/task-context-menu";
|
|
3
|
+
import { parseViewerTarget } from "../../lib/service-pages";
|
|
4
|
+
import type { Task, View } from "../../web/model";
|
|
5
|
+
import { parseViewState } from "../../web/view-state";
|
|
6
|
+
const task = { id: "C2", title: "完整任务标题", thread_id: "thread-123", pr: { url: "https://github.com/example/repo/pull/1" } } as Task;
|
|
7
|
+
const view = { tasks: [task], follow_prs: [{ origin_task_id: "C2", pr: { url: "https://github.com/example/repo/pull/2" } }] } as View;
|
|
8
|
+
const group = { id: "G2", title: "交付单元二" };
|
|
9
|
+
let controller: ReturnType<typeof installTaskContextMenu> | undefined;
|
|
10
|
+
afterEach(() => { controller?.destroy(); document.body.replaceChildren(); });
|
|
11
|
+
function setup(value = view, reject = false) {
|
|
12
|
+
controller?.destroy(); document.body.replaceChildren();
|
|
13
|
+
const copied: string[] = [];
|
|
14
|
+
document.body.innerHTML = '<div class="task-card" data-context-task="C2"><button>任务</button></div>';
|
|
15
|
+
controller = installTaskContextMenu({ getData: () => value, writeText: async text => { if (reject) throw Error("denied"); copied.push(text); } });
|
|
16
|
+
const target = document.querySelector<HTMLElement>("[data-context-task]")!;
|
|
17
|
+
const event = new window.MouseEvent("contextmenu", { bubbles: true, cancelable: true, clientX: 30, clientY: 40 });
|
|
18
|
+
target.dispatchEvent(event); expect(event.defaultPrevented).toBe(true); return copied;
|
|
19
|
+
}
|
|
20
|
+
const button = (text: string) => [...document.querySelectorAll<HTMLButtonElement>(".task-context-menu button")].find(item => item.textContent === text)!;
|
|
21
|
+
test("task URL drops credentials, history and filters; restores task details", () => {
|
|
22
|
+
const url = new URL(taskUrl("http://user:secret@localhost:12000/runs/run-a/?plan=old&q=hidden&group=other&zoom=2&ticket=secret#token", "C2"));
|
|
23
|
+
expect(url.pathname).toBe("/runs/run-a/"); expect([...url.searchParams.keys()]).toEqual(["selected", "detail"]); expect(url.username + url.password + url.hash).toBe("");
|
|
24
|
+
const state = parseViewState(url.search); expect(state.selected).toEqual({ kind: "task", id: "C2" }); expect(state.detail).toBe(true); expect(state.plan).toBeNull(); expect(state.query).toBe("");
|
|
25
|
+
});
|
|
26
|
+
test("group URL selects the delivery unit and preserves only canonical detail state", () => {
|
|
27
|
+
const url = new URL(groupUrl("http://user:secret@localhost:12000/runs/run-a/?plan=old&q=hidden#token", group.id));
|
|
28
|
+
expect(url.pathname).toBe("/runs/run-a/");
|
|
29
|
+
expect([...url.searchParams.keys()]).toEqual(["selected", "detail"]);
|
|
30
|
+
expect(parseViewState(url.search).selected).toEqual({ kind: "group", id: group.id });
|
|
31
|
+
});
|
|
32
|
+
test("milestone and atom URLs preserve their focus targets", () => {
|
|
33
|
+
const milestone = new URL(milestoneUrl("http://localhost:12000/runs/run-a/?q=hidden", "core-merge", "group-atom-core-4"));
|
|
34
|
+
expect(parseViewState(milestone.search)).toMatchObject({ selected: { kind: "milestone", id: "core-merge" }, atom: "group-atom-core-4", detail: true });
|
|
35
|
+
const atom = new URL(atomUrl("http://localhost:12000/runs/run-a/", { kind: "task", id: "C2" }, "atom-C2"));
|
|
36
|
+
expect(parseViewState(atom.search)).toMatchObject({ selected: { kind: "task", id: "C2" }, atom: "atom-C2", detail: true });
|
|
37
|
+
});
|
|
38
|
+
test("five copy actions use full title, raw ID and canonical conversation URL", async () => {
|
|
39
|
+
let copied = setup(); expect(document.querySelectorAll('.task-context-menu > [role=menuitem]')).toHaveLength(5);
|
|
40
|
+
button("复制任务名").click(); await Promise.resolve(); expect(copied).toEqual([task.title]);
|
|
41
|
+
copied = setup(); button("复制任务 ID").click(); await Promise.resolve(); expect(copied).toEqual(["C2"]);
|
|
42
|
+
copied = setup(); button("复制对话链接").click(); await Promise.resolve(); expect(copied).toEqual(["codex://threads/thread-123"]);
|
|
43
|
+
});
|
|
44
|
+
test("multiple PRs require explicit selection", async () => {
|
|
45
|
+
const copied = setup(); button("复制 PR 链接 ›").click(); expect(copied).toEqual([]); expect(document.querySelectorAll('.task-context-submenu button')).toHaveLength(2);
|
|
46
|
+
button("https://github.com/example/repo/pull/2").click(); await Promise.resolve(); expect(copied).toEqual(["https://github.com/example/repo/pull/2"]);
|
|
47
|
+
expect(taskPRs(task, { ...view, follow_prs: [...view.follow_prs, { origin_task_id: "C2", pr: task.pr! }] } as View)).toHaveLength(2);
|
|
48
|
+
});
|
|
49
|
+
test("missing resource actions are disabled, copy rejection is visible", async () => {
|
|
50
|
+
setup({ ...view, tasks: [{ ...task, thread_id: null, pr: null }], follow_prs: [] }); expect(document.querySelectorAll('[aria-disabled=true]')).toHaveLength(2); expect(document.querySelector('.task-context-menu')?.textContent).toContain("尚未绑定对话");
|
|
51
|
+
setup(view, true); button("复制任务名").click(); await Promise.resolve(); await Promise.resolve(); expect(document.querySelector('[role=status]')?.textContent).toContain("复制失败");
|
|
52
|
+
});
|
|
53
|
+
test("delivery unit menu copies its stable ID and URL", async () => {
|
|
54
|
+
const copied: string[] = [];
|
|
55
|
+
document.body.innerHTML = '<article data-context-kind="group" data-context-id="G2"><button>交付单元</button></article>';
|
|
56
|
+
controller = installTaskContextMenu({ getData: () => ({ ...view, groups: [group] } as View), writeText: async text => { copied.push(text); } });
|
|
57
|
+
const target = document.querySelector<HTMLElement>("[data-context-kind=group]")!;
|
|
58
|
+
target.dispatchEvent(new window.MouseEvent("contextmenu", { bubbles: true, cancelable: true, clientX: 10, clientY: 10 }));
|
|
59
|
+
expect([...document.querySelectorAll<HTMLButtonElement>(".task-context-menu button")].map(button => button.textContent)).toEqual(["复制交付单元 ID", "复制交付单元链接"]);
|
|
60
|
+
document.querySelector<HTMLButtonElement>(".task-context-menu button")!.click();
|
|
61
|
+
await Promise.resolve();
|
|
62
|
+
expect(copied).toEqual([group.id]);
|
|
63
|
+
});
|
|
64
|
+
test("keyboard opening, navigation and Escape; blank space retains native menu", () => {
|
|
65
|
+
setup(); controller!.close(); const target = document.querySelector('button')!; target.focus();
|
|
66
|
+
target.dispatchEvent(new window.KeyboardEvent("keydown", { key: "F10", shiftKey: true, bubbles: true, cancelable: true })); expect(document.activeElement?.textContent).toBe("复制任务名");
|
|
67
|
+
document.activeElement!.dispatchEvent(new window.KeyboardEvent("keydown", { key: "ArrowDown", bubbles: true })); expect(document.activeElement?.textContent).toBe("复制任务 ID");
|
|
68
|
+
document.activeElement!.dispatchEvent(new window.KeyboardEvent("keydown", { key: "Escape", bubbles: true })); expect(document.querySelector('.task-context-menu')).toBeNull();
|
|
69
|
+
const event = new window.MouseEvent("contextmenu", { bubbles: true, cancelable: true }); document.body.dispatchEvent(event); expect(event.defaultPrevented).toBe(false);
|
|
70
|
+
});
|
|
71
|
+
test("authentication redirects only accept same-service run links and legal view state", () => {
|
|
72
|
+
expect(parseViewerTarget('/runs/run-a/?selected=task%3Atask.v2&detail=1&plan=plan.v2&q=hidden', 'http://localhost', { allowHome: false })?.target).toBe('/runs/run-a/?selected=task%3Atask.v2&detail=1&plan=plan.v2&q=hidden');
|
|
73
|
+
for (const value of ['https://evil.test/runs/run-a/?selected=task:C2', '//evil.test/runs/run-a/?selected=task:C2', '/login?selected=task:C2', '/runs/run-a/../', '/runs/%2e%2e/', '/runs\\run-a/', '/runs/run-a/?selected=other:C2', '/runs/run-a/?selected=task:<script>', 'http://user:pass@localhost/runs/run-a/?selected=task:C2', '/runs/run-a/?ticket=secret', '/runs/run-a/?selected=task:C2&selected=task:C3', '/runs/run-a/?q=%0d%0aLocation:%20https://evil.test']) expect(parseViewerTarget(value, 'http://localhost', { allowHome: false })).toBeNull();
|
|
74
|
+
});
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { describe, expect, test } from "bun:test";
|
|
2
|
+
import { defaultTimelineWindow } from "../../web/timeline-window";
|
|
3
|
+
|
|
4
|
+
describe("dashboard timeline window", () => {
|
|
5
|
+
test("fits a timeline containing only a milestone", () => {
|
|
6
|
+
const window = defaultTimelineWindow([{ start: "2026-10-31T12:00:00.000Z" }]);
|
|
7
|
+
expect(window.start?.getTime()).toBeLessThan(Date.parse("2026-10-31T12:00:00.000Z"));
|
|
8
|
+
expect(window.end?.getTime()).toBeGreaterThan(Date.parse("2026-10-31T12:00:00.000Z"));
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
test("ignores unknown timestamps without losing known entries", () => {
|
|
12
|
+
const window = defaultTimelineWindow([{ start: "not-a-date" }, { start: "2026-10-31T12:00:00.000Z", end: null }]);
|
|
13
|
+
expect(window.start).toBeInstanceOf(Date);
|
|
14
|
+
expect(window.end).toBeInstanceOf(Date);
|
|
15
|
+
});
|
|
16
|
+
});
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { describe, expect, test } from "bun:test";
|
|
2
|
+
import { formatLocalTime, fullLocalTime } from "../../web/time";
|
|
3
|
+
import { renderTimestamp, refreshTimestamps } from "../../web/timestamp";
|
|
4
|
+
import { renderStatusRow } from "../../web/status-row";
|
|
5
|
+
|
|
6
|
+
describe("local timestamps", () => {
|
|
7
|
+
const now = Date.parse("2026-11-05T12:00:00Z");
|
|
8
|
+
test("uses the exact twelve-hour and seven-day boundaries", () => {
|
|
9
|
+
expect(formatLocalTime(new Date(now - 12 * 3600000 + 1).toISOString(), now)).toMatch(/^\d{2}:\d{2}$/);
|
|
10
|
+
expect(formatLocalTime(new Date(now - 12 * 3600000).toISOString(), now)).toBe("12小时前");
|
|
11
|
+
expect(formatLocalTime(new Date(now - 7 * 86400000 + 1).toISOString(), now)).toBe("6天前");
|
|
12
|
+
expect(formatLocalTime(new Date(now - 7 * 86400000).toISOString(), now)).toMatch(/^10月29日 \d{2}:\d{2}$/);
|
|
13
|
+
});
|
|
14
|
+
test("shows absolute dates and seconds without a timezone label", () => {
|
|
15
|
+
expect(fullLocalTime("2026-11-05T10:42:03Z")).toMatch(/^2026\/11\/05 \d{2}:42:03$/);
|
|
16
|
+
});
|
|
17
|
+
test("omits absent times and exposes a full absolute tooltip on focus", () => {
|
|
18
|
+
expect(renderTimestamp(null).textContent).toBe("");
|
|
19
|
+
const row = renderStatusRow({ name: "验收", status: "planned" });
|
|
20
|
+
expect(row.querySelector("time")).toBeNull();
|
|
21
|
+
document.body.replaceChildren(renderTimestamp("2026-11-05T10:42:03Z"));
|
|
22
|
+
const time = document.querySelector("time")!;
|
|
23
|
+
time.focus();
|
|
24
|
+
expect(document.querySelector(".timestamp-tooltip.is-open")?.textContent).toBe(fullLocalTime(time.dateTime));
|
|
25
|
+
expect(document.querySelector(".timestamp-tooltip")?.textContent).toContain("2026");
|
|
26
|
+
time.textContent = "stale";
|
|
27
|
+
refreshTimestamps();
|
|
28
|
+
expect(time.textContent).not.toBe("stale");
|
|
29
|
+
});
|
|
30
|
+
});
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import { beforeEach, expect, test } from "bun:test";
|
|
2
|
+
import { attachTooltip, installTextTooltips } from "../../web/tooltip";
|
|
3
|
+
|
|
4
|
+
const pause = (ms: number) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
5
|
+
function fixture() {
|
|
6
|
+
const trigger = document.createElement("button");
|
|
7
|
+
const outside = document.createElement("button");
|
|
8
|
+
const content = document.createElement("div");
|
|
9
|
+
content.textContent = "依赖状态";
|
|
10
|
+
const tooltip = attachTooltip(trigger, content, "查看依赖");
|
|
11
|
+
document.body.replaceChildren(trigger, tooltip, outside);
|
|
12
|
+
return { trigger, tooltip, outside };
|
|
13
|
+
}
|
|
14
|
+
function pointer(target: HTMLElement, type: string, x = 0, y = 0, pointerType = "touch") {
|
|
15
|
+
target.dispatchEvent(new window.PointerEvent(type, { bubbles: true, pointerType, clientX: x, clientY: y }));
|
|
16
|
+
}
|
|
17
|
+
beforeEach(() => { document.body.replaceChildren(); });
|
|
18
|
+
|
|
19
|
+
test("focus opens immediately; Escape closes only the tooltip and outside click closes it", () => {
|
|
20
|
+
const { trigger, tooltip, outside } = fixture();
|
|
21
|
+
trigger.focus();
|
|
22
|
+
expect(tooltip.hidden).toBe(false);
|
|
23
|
+
expect(trigger.getAttribute("aria-describedby")).toBe(tooltip.id);
|
|
24
|
+
const escape = new window.KeyboardEvent("keydown", { key: "Escape", bubbles: true, cancelable: true });
|
|
25
|
+
trigger.dispatchEvent(escape);
|
|
26
|
+
expect(escape.defaultPrevented).toBe(true);
|
|
27
|
+
expect(tooltip.hidden).toBe(true);
|
|
28
|
+
outside.focus();
|
|
29
|
+
trigger.focus();
|
|
30
|
+
pointer(outside, "pointerdown", 0, 0, "mouse");
|
|
31
|
+
expect(tooltip.hidden).toBe(true);
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
test("hover respects its delay and blur dismisses a focus tooltip", async () => {
|
|
35
|
+
const { trigger, tooltip, outside } = fixture();
|
|
36
|
+
pointer(trigger, "pointerenter", 0, 0, "mouse");
|
|
37
|
+
expect(tooltip.hidden).toBe(true);
|
|
38
|
+
await pause(280);
|
|
39
|
+
expect(tooltip.hidden).toBe(false);
|
|
40
|
+
trigger.focus();
|
|
41
|
+
outside.focus();
|
|
42
|
+
await pause(10);
|
|
43
|
+
expect(tooltip.hidden).toBe(true);
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
test("long press opens after 500ms; movement and release cancel pending presses", async () => {
|
|
47
|
+
const { trigger, tooltip } = fixture();
|
|
48
|
+
pointer(trigger, "pointerdown", 10, 10);
|
|
49
|
+
await pause(540);
|
|
50
|
+
expect(tooltip.hidden).toBe(false);
|
|
51
|
+
pointer(trigger, "pointerup");
|
|
52
|
+
document.dispatchEvent(new window.KeyboardEvent("keydown", { key: "Escape", bubbles: true }));
|
|
53
|
+
pointer(trigger, "pointerdown", 10, 10);
|
|
54
|
+
pointer(trigger, "pointermove", 21, 10);
|
|
55
|
+
await pause(540);
|
|
56
|
+
expect(tooltip.hidden).toBe(true);
|
|
57
|
+
pointer(trigger, "pointerdown", 10, 10);
|
|
58
|
+
pointer(trigger, "pointerup", 10, 10);
|
|
59
|
+
trigger.focus();
|
|
60
|
+
await pause(540);
|
|
61
|
+
expect(tooltip.hidden).toBe(true);
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
test("project text tooltips preserve control IDs and cover disabled and dynamically replaced controls", async () => {
|
|
66
|
+
const button = document.createElement("button"); button.id = "zoom-in"; button.className = "icon-button"; button.dataset.tooltip = "放大";
|
|
67
|
+
document.body.append(button);
|
|
68
|
+
const dispose = installTextTooltips();
|
|
69
|
+
try {
|
|
70
|
+
expect(button.id).toBe("zoom-in");
|
|
71
|
+
document.dispatchEvent(new window.KeyboardEvent("keydown", { key: "Tab", bubbles: true }));
|
|
72
|
+
button.focus();
|
|
73
|
+
expect(document.querySelector(".control-tooltip.is-open")?.textContent).toBe("放大");
|
|
74
|
+
button.dataset.tooltip = "更新后的说明";
|
|
75
|
+
await pause(10);
|
|
76
|
+
expect(document.querySelector(".control-tooltip.is-open")?.textContent).toBe("更新后的说明");
|
|
77
|
+
const disabled = document.createElement("button"); disabled.disabled = true; disabled.className = "icon-button"; disabled.dataset.tooltip = "PR 尚未创建";
|
|
78
|
+
button.replaceWith(disabled); await pause(10);
|
|
79
|
+
expect(document.querySelectorAll(".control-tooltip").length).toBe(1);
|
|
80
|
+
pointer(disabled, "pointerenter", 0, 0, "mouse"); await pause(280);
|
|
81
|
+
expect(document.querySelector(".control-tooltip.is-open")?.textContent).toBe("PR 尚未创建");
|
|
82
|
+
expect(document.querySelector("[title]")).toBeNull();
|
|
83
|
+
} finally { dispose(); }
|
|
84
|
+
});
|
|
85
|
+
|
|
86
|
+
test("ordinary control tooltips do not change an owning aria-expanded state", async () => {
|
|
87
|
+
const trigger = document.createElement("button");
|
|
88
|
+
trigger.className = "icon-button";
|
|
89
|
+
trigger.dataset.tooltip = "查看信息";
|
|
90
|
+
trigger.setAttribute("aria-expanded", "true");
|
|
91
|
+
const outside = document.createElement("button");
|
|
92
|
+
document.body.append(trigger, outside);
|
|
93
|
+
const dispose = installTextTooltips();
|
|
94
|
+
try {
|
|
95
|
+
trigger.focus();
|
|
96
|
+
expect(document.querySelector(".control-tooltip.is-open")).not.toBeNull();
|
|
97
|
+
pointer(outside, "pointerdown", 0, 0, "mouse");
|
|
98
|
+
await pause(10);
|
|
99
|
+
expect(trigger.getAttribute("aria-expanded")).toBe("true");
|
|
100
|
+
} finally { dispose(); }
|
|
101
|
+
});
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
test("plain text never gains a tooltip even if it carries a legacy hint", async () => {
|
|
105
|
+
const output = document.createElement("p"); output.dataset.tooltip = "Agent answer";
|
|
106
|
+
const title = document.createElement("span"); title.dataset.tooltip = "Task title";
|
|
107
|
+
const progress = document.createElement("span"); progress.dataset.tooltip = "1/2";
|
|
108
|
+
const selection = document.createElement("button"); selection.dataset.tooltip = "Select task";
|
|
109
|
+
document.body.append(output, title, progress, selection);
|
|
110
|
+
const dispose = installTextTooltips();
|
|
111
|
+
try {
|
|
112
|
+
output.dataset.tooltip = "Updated answer";
|
|
113
|
+
await pause(10);
|
|
114
|
+
expect(document.querySelector(".control-tooltip")).toBeNull();
|
|
115
|
+
for (const node of [output, title, progress, selection]) {
|
|
116
|
+
expect(node.hasAttribute("aria-describedby")).toBe(false);
|
|
117
|
+
expect(node.classList.contains("dependency-tooltip-anchor")).toBe(false);
|
|
118
|
+
}
|
|
119
|
+
} finally { dispose(); }
|
|
120
|
+
});
|
|
121
|
+
|
|
122
|
+
test("keeps the explicit brand mark hint", () => {
|
|
123
|
+
document.body.innerHTML = '<a class="brand-mark" data-tooltip="全部编排运行" aria-label="全部编排运行"></a>';
|
|
124
|
+
const dispose = installTextTooltips();
|
|
125
|
+
|
|
126
|
+
expect(document.querySelector(".control-tooltip")?.textContent).toBe("全部编排运行");
|
|
127
|
+
|
|
128
|
+
dispose();
|
|
129
|
+
});
|
|
130
|
+
|
|
131
|
+
test("cleans up a control when its tooltip eligibility is removed", async () => {
|
|
132
|
+
const button = document.createElement("button");
|
|
133
|
+
button.className = "icon-button";
|
|
134
|
+
button.dataset.tooltip = "放大";
|
|
135
|
+
document.body.append(button);
|
|
136
|
+
const dispose = installTextTooltips();
|
|
137
|
+
try {
|
|
138
|
+
button.focus();
|
|
139
|
+
expect(button.classList.contains("dependency-tooltip-anchor")).toBe(true);
|
|
140
|
+
expect(button.hasAttribute("aria-describedby")).toBe(true);
|
|
141
|
+
button.removeAttribute("data-tooltip");
|
|
142
|
+
await pause(10);
|
|
143
|
+
expect(document.querySelector(".control-tooltip")).toBeNull();
|
|
144
|
+
expect(button.classList.contains("dependency-tooltip-anchor")).toBe(false);
|
|
145
|
+
expect(button.hasAttribute("aria-describedby")).toBe(false);
|
|
146
|
+
button.dataset.tooltip = "再次显示";
|
|
147
|
+
button.classList.remove("icon-button");
|
|
148
|
+
await pause(10);
|
|
149
|
+
expect(document.querySelector(".control-tooltip")).toBeNull();
|
|
150
|
+
} finally { dispose(); }
|
|
151
|
+
});
|