@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,188 @@
|
|
|
1
|
+
import { test, expect } from "bun:test";
|
|
2
|
+
import { apply } from "../lib/engine";
|
|
3
|
+
import { rmSync } from "node:fs";
|
|
4
|
+
import { fixtureRun, serviceFixture } from "./service-fixture";
|
|
5
|
+
import { retryConversationArchive, retryConversationUnarchive, sweepConversationArchives, type ArchiveProvider } from "../lib/conversation-archive";
|
|
6
|
+
|
|
7
|
+
function fixture() {
|
|
8
|
+
const { root, state } = serviceFixture();
|
|
9
|
+
const { store } = fixtureRun(state.paths.data);
|
|
10
|
+
const ledger = store.read();
|
|
11
|
+
const task = ledger.tasks.find((task: any) => task.thread_id)!;
|
|
12
|
+
store.update(raw => {
|
|
13
|
+
raw.tasks.find((item: any) => item.id === task.id).state = "completed";
|
|
14
|
+
raw.operations = raw.operations.filter((op: any) => !["claimed", "unknown"].includes(op.status));
|
|
15
|
+
raw.notifications = [];
|
|
16
|
+
raw.follow_prs = [];
|
|
17
|
+
});
|
|
18
|
+
return { store, task, cleanup: () => rmSync(root, { recursive: true, force: true }) };
|
|
19
|
+
}
|
|
20
|
+
const success: ArchiveProvider = {
|
|
21
|
+
archive: async () => ({ outcome: "succeeded", evidence_ref: "fixture:archive" }),
|
|
22
|
+
isArchived: async () => true,
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
test("archive persists unknown intent before provider call and closes without changing task state", async () => {
|
|
26
|
+
const f = fixture();
|
|
27
|
+
try {
|
|
28
|
+
const result = await retryConversationArchive(f.store, f.task.id, {
|
|
29
|
+
...success,
|
|
30
|
+
archive: async () => {
|
|
31
|
+
expect(f.store.read().resources.find((r: any) => r.target === f.task.thread_id)?.status).toBe("archive_unknown");
|
|
32
|
+
return { outcome: "succeeded", evidence_ref: "fixture:archive" };
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
expect(result.status).toBe("closed");
|
|
36
|
+
expect(f.store.read().tasks.find((t: any) => t.id === f.task.id).state).toBe("completed");
|
|
37
|
+
let calls = 0;
|
|
38
|
+
await retryConversationArchive(f.store, f.task.id, { ...success, archive: async () => { calls++; return { outcome: "succeeded", evidence_ref: "duplicate" }; } });
|
|
39
|
+
expect(calls).toBe(0);
|
|
40
|
+
} finally { f.cleanup(); }
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
test("definite failure can retry; unknown result reconciles without sending twice", async () => {
|
|
44
|
+
const f = fixture();
|
|
45
|
+
try {
|
|
46
|
+
expect((await retryConversationArchive(f.store, f.task.id, { ...success, archive: async () => ({ outcome: "failed", evidence_ref: "fixture:failed", error: "rejected" }) })).status).toBe("archive_failed");
|
|
47
|
+
expect((await retryConversationArchive(f.store, f.task.id, { ...success, archive: async () => ({ outcome: "unknown", evidence_ref: "fixture:lost", error: "connection lost" }) })).status).toBe("archive_unknown");
|
|
48
|
+
let calls = 0;
|
|
49
|
+
const api: ArchiveProvider = { archive: async () => { calls++; return { outcome: "succeeded", evidence_ref: "unexpected" }; }, isArchived: async () => false };
|
|
50
|
+
expect((await retryConversationArchive(f.store, f.task.id, api)).status).toBe("archive_unknown");
|
|
51
|
+
expect(calls).toBe(0);
|
|
52
|
+
expect((await retryConversationArchive(f.store, f.task.id, { ...api, isArchived: async () => true })).status).toBe("closed");
|
|
53
|
+
expect(calls).toBe(0);
|
|
54
|
+
} finally { f.cleanup(); }
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
test("concurrent archive attempts cannot cross the provider boundary", async () => {
|
|
58
|
+
const f = fixture();
|
|
59
|
+
try {
|
|
60
|
+
let finish!: (value: Awaited<ReturnType<ArchiveProvider["archive"]>>) => void;
|
|
61
|
+
const first = retryConversationArchive(f.store, f.task.id, { ...success, archive: () => new Promise(resolve => { finish = resolve; }) });
|
|
62
|
+
await expect(retryConversationArchive(f.store, f.task.id, success)).rejects.toThrow("already in progress");
|
|
63
|
+
finish({ outcome: "succeeded", evidence_ref: "fixture:done" });
|
|
64
|
+
expect((await first).status).toBe("closed");
|
|
65
|
+
} finally { f.cleanup(); }
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
test("pending active turns can be retried after termination", async () => {
|
|
69
|
+
const f = fixture();
|
|
70
|
+
try {
|
|
71
|
+
let calls = 0;
|
|
72
|
+
const api: ArchiveProvider = { ...success, archive: async () => { calls++; return calls === 1 ? { outcome: "deferred", evidence_ref: "fixture:active" } : { outcome: "succeeded", evidence_ref: "fixture:idle" }; } };
|
|
73
|
+
expect((await retryConversationArchive(f.store, f.task.id, api)).status).toBe("pending");
|
|
74
|
+
await retryConversationArchive(f.store, f.task.id, api);
|
|
75
|
+
expect(calls).toBe(2);
|
|
76
|
+
expect(f.store.read().resources.find((r: any) => r.target === f.task.thread_id).status).toBe("closed");
|
|
77
|
+
} finally { f.cleanup(); }
|
|
78
|
+
});
|
|
79
|
+
|
|
80
|
+
test("unrelated in-flight operations do not block an eligible task", async () => {
|
|
81
|
+
const f = fixture();
|
|
82
|
+
try {
|
|
83
|
+
f.store.update(raw => { raw.operations.push({ id: "other", kind: "dispatch", actor_id: "other", target_id: "other-task", status: "unknown", request: {}, expected_sha: null, receipt_fact_id: null, created_at: new Date().toISOString(), updated_at: new Date().toISOString() } as any); });
|
|
84
|
+
expect((await retryConversationArchive(f.store, f.task.id, success)).status).toBe("closed");
|
|
85
|
+
} finally { f.cleanup(); }
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
test("active tasks cannot archive their conversation", async () => {
|
|
89
|
+
const f = fixture();
|
|
90
|
+
try {
|
|
91
|
+
f.store.update(raw => { raw.tasks.find((t: any) => t.id === f.task.id).state = "running"; });
|
|
92
|
+
await expect(retryConversationArchive(f.store, f.task.id, { ...success, archive: async () => { throw new Error("must not call"); } })).rejects.toMatchObject({ code: "TASK_NOT_TERMINAL" });
|
|
93
|
+
} finally { f.cleanup(); }
|
|
94
|
+
});
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
test("unarchive keeps the terminal task intact and manual restoration survives lifecycle sweeps", async () => {
|
|
98
|
+
const f = fixture();
|
|
99
|
+
try {
|
|
100
|
+
let calls = 0;
|
|
101
|
+
const api: ArchiveProvider = { ...success, unarchive: async () => { calls++; return { outcome: "succeeded", evidence_ref: "fixture:unarchive" }; }, isUnarchived: async () => true };
|
|
102
|
+
await retryConversationArchive(f.store, f.task.id, api);
|
|
103
|
+
const resource = await retryConversationUnarchive(f.store, f.task.id, api);
|
|
104
|
+
expect(resource.status).toBe("active");
|
|
105
|
+
expect(resource.archive_policy).toBe("manual");
|
|
106
|
+
await retryConversationUnarchive(f.store, f.task.id, api);
|
|
107
|
+
expect(calls).toBe(1);
|
|
108
|
+
await sweepConversationArchives(f.store, { ...api, archive: async () => { throw new Error("manual restore must not rearchive"); } });
|
|
109
|
+
expect(f.store.read().resources.find((r: any) => r.id === resource.id).status).toBe("active");
|
|
110
|
+
expect(f.store.read().tasks.find((t: any) => t.id === f.task.id).state).toBe("completed");
|
|
111
|
+
} finally { f.cleanup(); }
|
|
112
|
+
});
|
|
113
|
+
|
|
114
|
+
test("unarchive failure retries; unknown delivery requires positive reconciliation and blocks opposite archive", async () => {
|
|
115
|
+
const f = fixture();
|
|
116
|
+
try {
|
|
117
|
+
await retryConversationArchive(f.store, f.task.id, success);
|
|
118
|
+
const api: ArchiveProvider = { ...success, unarchive: async () => ({ outcome: "failed", evidence_ref: "fixture:rejected" }), isUnarchived: async () => false };
|
|
119
|
+
expect((await retryConversationUnarchive(f.store, f.task.id, api)).status).toBe("unarchive_failed");
|
|
120
|
+
expect((await retryConversationUnarchive(f.store, f.task.id, { ...api, unarchive: async () => ({ outcome: "unknown", evidence_ref: "fixture:lost" }) })).status).toBe("unarchive_unknown");
|
|
121
|
+
await expect(retryConversationArchive(f.store, f.task.id, api)).rejects.toMatchObject({ code: "ARCHIVE_STATE_CONFLICT" });
|
|
122
|
+
const noResend = { ...api, unarchive: async () => { throw new Error("must only reconcile"); } };
|
|
123
|
+
expect((await retryConversationUnarchive(f.store, f.task.id, noResend)).status).toBe("unarchive_unknown");
|
|
124
|
+
expect((await retryConversationUnarchive(f.store, f.task.id, { ...noResend, isUnarchived: async () => true })).status).toBe("active");
|
|
125
|
+
} finally { f.cleanup(); }
|
|
126
|
+
});
|
|
127
|
+
|
|
128
|
+
for (const claimed of [false, true]) {
|
|
129
|
+
test(`archive atomically rejects a notification that wins before intent (claimed=${claimed})`, async () => {
|
|
130
|
+
const f = fixture();
|
|
131
|
+
try {
|
|
132
|
+
const update = f.store.update.bind(f.store);
|
|
133
|
+
let injected = false, archiveCalls = 0;
|
|
134
|
+
f.store.update = ((callback: any) => {
|
|
135
|
+
if (!injected) {
|
|
136
|
+
injected = true;
|
|
137
|
+
update(raw => {
|
|
138
|
+
const sender = raw.tasks.find((task: any) => task.id === "deploy");
|
|
139
|
+
const actor = { role: "task", thread_id: sender.thread_id };
|
|
140
|
+
apply(raw, "task-update", { run_id: raw.orchestration_id, actor, request_id: "racing-notice", expected_revision: raw.revision, payload: { task_id: sender.id, state: "waiting", detail: "Notify before archive intent", notification: { mode: "deliver", recipient: { thread_id: f.task.thread_id } } } });
|
|
141
|
+
if (claimed) apply(raw, "notification-deliver", { run_id: raw.orchestration_id, actor, request_id: "racing-claim", expected_revision: raw.revision, payload: { notification_id: raw.notifications[0].id, delivery_attempt_id: "racing-attempt", outcome: "unknown", provider_receipt: { provider: "codex-app-server", evidence_ref: "fixture:in-flight" } } });
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
return update(callback);
|
|
145
|
+
}) as typeof f.store.update;
|
|
146
|
+
await expect(retryConversationArchive(f.store, f.task.id, { ...success, archive: async () => { archiveCalls++; return { outcome: "succeeded", evidence_ref: "must-not-archive" }; } })).rejects.toMatchObject({ code: "NOTIFICATIONS_PENDING" });
|
|
147
|
+
expect(archiveCalls).toBe(0);
|
|
148
|
+
const ledger = f.store.read();
|
|
149
|
+
expect(ledger.tasks.find((task: any) => task.id === f.task.id).state).toBe("completed");
|
|
150
|
+
expect(ledger.resources.find((resource: any) => resource.target === f.task.thread_id)?.status).not.toBe("archive_unknown");
|
|
151
|
+
expect(ledger.notifications[0].delivery_status).toBe(claimed ? "unknown" : "pending");
|
|
152
|
+
} finally { f.cleanup(); }
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
test("integrated tasks stay ineligible in the view and manual archive path", async () => {
|
|
157
|
+
const f = fixture();
|
|
158
|
+
try {
|
|
159
|
+
const { buildView } = await import("../lib/view");
|
|
160
|
+
f.store.update(raw => { raw.tasks.find((t: any) => t.id === f.task.id).state = "integrated"; });
|
|
161
|
+
expect(buildView(f.store.read()).tasks.find(t => t.id === f.task.id)?.conversation_archive.eligible).toBe(false);
|
|
162
|
+
await expect(retryConversationArchive(f.store, f.task.id, success)).rejects.toMatchObject({ code: "TASK_NOT_TERMINAL" });
|
|
163
|
+
} finally { f.cleanup(); }
|
|
164
|
+
});
|
|
165
|
+
|
|
166
|
+
test("eligible terminal task projects first archive without a conversation resource", async () => {
|
|
167
|
+
const f = fixture();
|
|
168
|
+
try {
|
|
169
|
+
const { buildView } = await import("../lib/view");
|
|
170
|
+
const task = buildView(f.store.read()).tasks.find(t => t.id === f.task.id)!;
|
|
171
|
+
expect(task.conversation_resource).toBeNull();
|
|
172
|
+
expect(task.conversation_archive).toEqual({ eligible: true, reason: null });
|
|
173
|
+
} finally { f.cleanup(); }
|
|
174
|
+
});
|
|
175
|
+
|
|
176
|
+
test("reconciliation and restoration survive lost archive eligibility", async () => {
|
|
177
|
+
const f = fixture();
|
|
178
|
+
try {
|
|
179
|
+
let sends = 0;
|
|
180
|
+
await retryConversationArchive(f.store, f.task.id, { ...success, archive: async () => ({ outcome: "unknown", evidence_ref: "fixture:lost" }) });
|
|
181
|
+
f.store.update(raw => { raw.tasks.find((t: any) => t.id === f.task.id).state = "running"; });
|
|
182
|
+
const api: ArchiveProvider = { ...success, archive: async () => { throw Error("must not resend"); }, unarchive: async () => { sends++; return { outcome: "succeeded", evidence_ref: "fixture:restored" }; }, isUnarchived: async () => true };
|
|
183
|
+
expect((await retryConversationArchive(f.store, f.task.id, api)).status).toBe("closed");
|
|
184
|
+
expect((await retryConversationUnarchive(f.store, f.task.id, api)).status).toBe("active");
|
|
185
|
+
expect(sends).toBe(1);
|
|
186
|
+
expect(f.store.read().tasks.find((t: any) => t.id === f.task.id).state).toBe("running");
|
|
187
|
+
} finally { f.cleanup(); }
|
|
188
|
+
});
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
import { describe, expect, test } from "bun:test";
|
|
2
|
+
import { ConversationOutputs, messageOutput, type ConnectObserver } from "../lib/conversation-output";
|
|
3
|
+
import type { JsonRecord } from "../lib/codex-agent-api";
|
|
4
|
+
const tick = () => new Promise(resolve => setTimeout(resolve, 0));
|
|
5
|
+
const message = (id: string, text: string, phase = "commentary") => ({ turnId: "turn", item: { type: "agentMessage", id, text, phase } });
|
|
6
|
+
function fixture(read: (method: string, params: JsonRecord) => Promise<JsonRecord> = async () => ({ data: [] })) {
|
|
7
|
+
let notify!: (event: JsonRecord) => void;
|
|
8
|
+
let lost!: () => void;
|
|
9
|
+
let closed = 0;
|
|
10
|
+
let connections = 0;
|
|
11
|
+
const connect: ConnectObserver = async (n, c) => { notify = n; lost = c; connections++; return { request: (method, params) => method === "thread/read" ? read(method, params).then(value => ({ ...value, thread: { name: "真实对话标题", ...(value.thread as JsonRecord ?? {}) } })) : read(method, params), close: () => { closed++; c(); } }; };
|
|
12
|
+
const published: unknown[] = [];
|
|
13
|
+
const provider = new ConversationOutputs(s => published.push(s), connect, 20);
|
|
14
|
+
provider.bind([{ id: "a", thread_id: "thread" }, { id: "b", thread_id: "thread" }, { id: "none", thread_id: null }]);
|
|
15
|
+
provider.start();
|
|
16
|
+
return { provider, published, event: (method: string, params: JsonRecord) => notify({ method, params: { threadId: "thread", ...params } }), lost: () => lost(), get connections() { return connections; }, get closed() { return closed; } };
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
describe("conversation output projection", () => {
|
|
20
|
+
test("accepts public commentary/final text only", () => {
|
|
21
|
+
for (const phase of ["commentary", "final_answer"]) expect(messageOutput("thread", message("a", "hello", phase))?.text).toBe("hello");
|
|
22
|
+
for (const type of ["reasoning", "userMessage", "commandExecution", "system"]) expect(messageOutput("thread", { item: { id: "a", type, text: "private" } })).toBeNull();
|
|
23
|
+
expect(messageOutput("thread", message("a", " \n"))).toBeNull();
|
|
24
|
+
});
|
|
25
|
+
test("uses only the actual assistant item timestamp, never the observation time", () => {
|
|
26
|
+
const startedAtMs = Date.parse("2026-11-07T01:02:03Z");
|
|
27
|
+
expect(messageOutput("thread", { ...message("a", "hello"), startedAtMs })?.sent_at).toBe("2026-11-07T01:02:03.000Z");
|
|
28
|
+
expect(messageOutput("thread", message("a", "hello"))?.sent_at).toBeNull();
|
|
29
|
+
expect(messageOutput("thread", { ...message("a", "hello"), startedAtMs: Infinity })?.sent_at).toBeNull();
|
|
30
|
+
});
|
|
31
|
+
test("paginates past tools and whitespace, deduplicates bound threads", async () => {
|
|
32
|
+
const calls: JsonRecord[] = [];
|
|
33
|
+
const f = fixture(async (_m, params) => { if (_m === "thread/read") return {}; calls.push(params); return params.cursor ? { data: [message("latest", "progress"), message("older", "old")] } : { data: [message("blank", " "), { item: { type: "reasoning", text: "hidden" } }], nextCursor: "page2" }; });
|
|
34
|
+
try {
|
|
35
|
+
await tick();
|
|
36
|
+
expect(calls).toHaveLength(2);
|
|
37
|
+
expect(calls[0]).toMatchObject({ sortDirection: "desc", threadId: "thread" });
|
|
38
|
+
const s = f.provider.snapshot();
|
|
39
|
+
expect(s.outputs.a?.text).toBe("progress"); expect(s.outputs.b).toEqual(s.outputs.a);
|
|
40
|
+
expect(s.outputs.none?.state).toBe("no_conversation");
|
|
41
|
+
} finally { f.provider.stop(); }
|
|
42
|
+
});
|
|
43
|
+
test("history without a completion timestamp accepts later deltas for the same item", async () => {
|
|
44
|
+
for (const completion of [{}, { completedAtMs: null }]) {
|
|
45
|
+
const f = fixture(async () => ({ data: [{ ...message("live", "partial"), ...completion }] }));
|
|
46
|
+
try {
|
|
47
|
+
await tick();
|
|
48
|
+
expect(f.provider.snapshot().outputs.a?.message_status).toBe("in_progress");
|
|
49
|
+
f.event("item/agentMessage/delta", { turnId: "turn", itemId: "live", delta: " continued" });
|
|
50
|
+
expect(f.provider.snapshot().outputs.a?.text).toBe("partial continued");
|
|
51
|
+
expect(f.provider.receivedDelta).toBe(true);
|
|
52
|
+
f.event("item/completed", message("live", "complete", "final_answer"));
|
|
53
|
+
f.event("item/agentMessage/delta", { turnId: "turn", itemId: "live", delta: " late" });
|
|
54
|
+
expect(f.provider.snapshot().outputs.a).toMatchObject({ text: "complete", message_status: "completed" });
|
|
55
|
+
} finally { f.provider.stop(); }
|
|
56
|
+
}
|
|
57
|
+
expect(messageOutput("thread", { ...message("saved", "final"), completedAtMs: 0 })?.message_status).toBe("completed");
|
|
58
|
+
});
|
|
59
|
+
test("marks a confirmed completed turn as agent idle", async () => {
|
|
60
|
+
const f = fixture(async (method) => method === "thread/read" ? { thread: { status: { type: "idle" } } } : method === "thread/turns/list" ? { data: [{ id: "latest-turn", status: "completed", items: [] }] } : { data: [{ ...message("done", "finished"), completedAtMs: 1 }] });
|
|
61
|
+
try { await tick(); expect(f.provider.snapshot().outputs.a?.agent_state).toBe("idle");
|
|
62
|
+
expect(f.provider.snapshot().outputs.a?.runtime_turn_id).toBe("latest-turn");
|
|
63
|
+
expect(f.provider.snapshot().outputs.a?.observed_at).toBeTruthy(); } finally { f.provider.stop(); }
|
|
64
|
+
});
|
|
65
|
+
test("idle requires the latest terminated turn, independently of older public text", async () => {
|
|
66
|
+
for (const latest of [null, { id: "latest", status: "inProgress" }, { status: "completed" }, { id: "latest", status: "unknown" }, ...["completed", "failed", "interrupted"].map(status => ({ id: "latest", status }))]) {
|
|
67
|
+
const f = fixture(async method => method === "thread/read" ? { thread: { status: { type: "idle" } } } : method === "thread/turns/list" ? { data: latest ? [latest] : [] } : { data: [{ ...message("old", "older public text"), completedAtMs: 1 }] });
|
|
68
|
+
try {
|
|
69
|
+
await tick();
|
|
70
|
+
const output = f.provider.snapshot().outputs.a!;
|
|
71
|
+
const expected = latest?.id && ["completed", "failed", "interrupted"].includes(latest.status!) ? "idle" : latest?.id && ["inProgress", "started", "running"].includes(latest.status!) ? "active" : "unknown";
|
|
72
|
+
expect(output.agent_state).toBe(expected);
|
|
73
|
+
expect(output.runtime_turn_id).toBe(output.agent_state === "idle" || output.agent_state === "active" ? "latest" : null);
|
|
74
|
+
expect(output.turn_id).toBe("turn");
|
|
75
|
+
} finally { f.provider.stop(); }
|
|
76
|
+
}
|
|
77
|
+
const f = fixture();
|
|
78
|
+
try { await tick(); f.event("thread/status/changed", { status: { type: "idle" } }); expect(f.provider.snapshot().outputs.a?.agent_state).toBe("unknown"); } finally { f.provider.stop(); }
|
|
79
|
+
});
|
|
80
|
+
test("terminal turn events expose idle; obsolete turns and unknown runtime do not", async () => {
|
|
81
|
+
for (const status of ["completed", "interrupted", "failed"]) {
|
|
82
|
+
const f = fixture();
|
|
83
|
+
try {
|
|
84
|
+
await tick();
|
|
85
|
+
f.event("turn/started", { turn: { id: "new", status: "inProgress" } });
|
|
86
|
+
expect(f.provider.snapshot().outputs.a?.agent_state).toBe("active");
|
|
87
|
+
f.event("turn/completed", { turn: { id: "old", status } });
|
|
88
|
+
expect(f.provider.snapshot().outputs.a?.agent_state).toBe("active");
|
|
89
|
+
f.event("turn/completed", { turn: { id: "new", status } });
|
|
90
|
+
expect(f.provider.snapshot().outputs.a?.agent_state).toBe("idle");
|
|
91
|
+
f.event("thread/status/changed", { status: { type: "notLoaded" } });
|
|
92
|
+
expect(f.provider.snapshot().outputs.a?.agent_state).toBe("unknown");
|
|
93
|
+
f.lost();
|
|
94
|
+
expect(f.provider.snapshot().outputs.a?.stale).toBe(true);
|
|
95
|
+
} finally { f.provider.stop(); }
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
test("completed public messages do not prove an idle runtime", async () => {
|
|
99
|
+
for (const type of ["active", "notLoaded", "systemError"]) {
|
|
100
|
+
const f = fixture(async method => method === "thread/read" ? { thread: { status: { type } } } : { data: [{ ...message("done", "final"), completedAtMs: 1 }] });
|
|
101
|
+
try { await tick(); expect(f.provider.snapshot().outputs.a?.agent_state).toBe(type === "active" ? "active" : "unknown"); } finally { f.provider.stop(); }
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
test("confirms idle for an unloaded thread with a terminal latest turn", async () => {
|
|
105
|
+
const f = fixture(async method => method === "thread/read"
|
|
106
|
+
? { thread: { status: { type: "notLoaded" } } }
|
|
107
|
+
: method === "thread/turns/list"
|
|
108
|
+
? { data: [{ id: "latest-turn", status: "completed", items: [] }] }
|
|
109
|
+
: { data: [{ ...message("done", "final"), completedAtMs: 1 }] });
|
|
110
|
+
try {
|
|
111
|
+
await tick();
|
|
112
|
+
expect(f.provider.snapshot().outputs.a).toMatchObject({ agent_state: "idle", runtime_turn_id: "latest-turn" });
|
|
113
|
+
} finally { f.provider.stop(); }
|
|
114
|
+
});
|
|
115
|
+
test("confirms active for an unloaded thread with an in-progress latest turn", async () => {
|
|
116
|
+
const f = fixture(async method => method === "thread/read"
|
|
117
|
+
? { thread: { status: { type: "notLoaded" } } }
|
|
118
|
+
: method === "thread/turns/list"
|
|
119
|
+
? { data: [{ id: "active-turn", status: "inProgress", items: [] }] }
|
|
120
|
+
: { data: [{ ...message("old", "old final"), completedAtMs: 1 }] });
|
|
121
|
+
try {
|
|
122
|
+
await tick();
|
|
123
|
+
expect(f.provider.snapshot().outputs.a).toMatchObject({ agent_state: "active", runtime_turn_id: "active-turn" });
|
|
124
|
+
} finally { f.provider.stop(); }
|
|
125
|
+
});
|
|
126
|
+
test("does not let an unloaded history read overwrite a later active status", async () => {
|
|
127
|
+
const f = fixture(async method => method === "thread/read"
|
|
128
|
+
? { thread: { status: { type: "notLoaded" } } }
|
|
129
|
+
: method === "thread/turns/list"
|
|
130
|
+
? { data: [{ id: "old-turn", status: "completed", items: [] }] }
|
|
131
|
+
: { data: [{ ...message("done", "old final"), completedAtMs: 1 }] });
|
|
132
|
+
try {
|
|
133
|
+
await tick();
|
|
134
|
+
f.event("thread/status/changed", { status: { type: "active" } });
|
|
135
|
+
await tick();
|
|
136
|
+
expect(f.provider.snapshot().outputs.a).toMatchObject({ agent_state: "active", runtime_turn_id: null });
|
|
137
|
+
} finally { f.provider.stop(); }
|
|
138
|
+
});
|
|
139
|
+
test("full turn fallback happens only on an explicit unsupported-method error", async () => {
|
|
140
|
+
const calls: string[] = [];
|
|
141
|
+
const f = fixture(async (method, params) => { if (method === "thread/read") return {}; calls.push(method); if (method === "thread/items/list") throw new Error("method not found"); expect(params.itemsView).toBe("full"); return { data: [{ id: "turn", status: "completed", items: [message("old", "old").item, message("new", "final", "final_answer").item] }] }; });
|
|
142
|
+
try { await tick(); expect(calls).toEqual(["thread/items/list", "thread/turns/list"]); expect(f.provider.snapshot().outputs.a?.text).toBe("final"); } finally { f.provider.stop(); }
|
|
143
|
+
});
|
|
144
|
+
test("streamed text wins over in-flight history; completion replaces deltas and duplicates do not regress", async () => {
|
|
145
|
+
let resolve!: (r: JsonRecord) => void;
|
|
146
|
+
const f = fixture(() => new Promise(r => { resolve = r; }));
|
|
147
|
+
try {
|
|
148
|
+
await tick();
|
|
149
|
+
f.event("item/started", message("live", ""));
|
|
150
|
+
f.event("item/agentMessage/delta", { turnId: "turn", itemId: "live", delta: "working" });
|
|
151
|
+
resolve({ data: [message("old", "old final")] }); await tick();
|
|
152
|
+
expect(f.provider.snapshot().outputs.a).toMatchObject({ text: "working", phase: "commentary", message_status: "in_progress" });
|
|
153
|
+
f.event("item/completed", message("live", "complete", "final_answer"));
|
|
154
|
+
f.event("item/agentMessage/delta", { turnId: "turn", itemId: "live", delta: "duplicate late" });
|
|
155
|
+
f.event("item/started", message("next", "newer"));
|
|
156
|
+
f.event("item/completed", message("live", "complete", "final_answer"));
|
|
157
|
+
expect(f.provider.snapshot().outputs.a?.text).toBe("newer");
|
|
158
|
+
expect(f.provider.receivedDelta).toBe(true);
|
|
159
|
+
} finally { f.provider.stop(); }
|
|
160
|
+
});
|
|
161
|
+
test("rebinding immediately clears text and rejects old requests including remove/re-add", async () => {
|
|
162
|
+
const resolvers: Array<(r: JsonRecord) => void> = [];
|
|
163
|
+
const f = fixture(() => new Promise(r => resolvers.push(r)));
|
|
164
|
+
try {
|
|
165
|
+
await tick();
|
|
166
|
+
f.provider.bind([{ id: "a", thread_id: "replacement" }]);
|
|
167
|
+
expect(f.provider.snapshot().outputs.a).toMatchObject({ thread_id: "replacement", text: null });
|
|
168
|
+
f.provider.bind([{ id: "a", thread_id: "thread" }]);
|
|
169
|
+
resolvers[0]!({ data: [message("old-binding", "must not leak")] }); await tick();
|
|
170
|
+
expect(f.provider.snapshot().outputs.a?.text).toBeNull();
|
|
171
|
+
} finally { f.provider.stop(); resolvers.forEach(r => r({ data: [] })); }
|
|
172
|
+
});
|
|
173
|
+
test("history catch-up updates independently and idle reads do not churn revision", async () => {
|
|
174
|
+
let text = "progress";
|
|
175
|
+
const f = fixture(async () => ({ data: [message(text, text)] }));
|
|
176
|
+
try {
|
|
177
|
+
await tick(); const before = f.provider.snapshot().output_revision;
|
|
178
|
+
await new Promise(r => setTimeout(r, 25)); expect(f.provider.snapshot().output_revision).toBe(before);
|
|
179
|
+
text = "final"; await new Promise(r => setTimeout(r, 25));
|
|
180
|
+
expect(f.provider.snapshot().outputs.a?.text).toBe("final"); expect(f.provider.snapshot().output_revision).toBeGreaterThan(before);
|
|
181
|
+
expect(f.provider.receivedDelta).toBe(false);
|
|
182
|
+
} finally { f.provider.stop(); }
|
|
183
|
+
});
|
|
184
|
+
test("read failure retains successful content with an explicit unavailable marker", async () => {
|
|
185
|
+
let fail = false;
|
|
186
|
+
const f = fixture(async () => { if (fail) throw new Error("access denied"); return { data: [message("a", "saved")] }; });
|
|
187
|
+
try { await tick(); fail = true; await new Promise(r => setTimeout(r, 25)); expect(f.provider.snapshot().outputs.a).toMatchObject({ text: "saved", state: "unavailable", stale: true }); } finally { f.provider.stop(); }
|
|
188
|
+
});
|
|
189
|
+
test("empty conversation differs from read failure and stop closes the observer", async () => {
|
|
190
|
+
const f = fixture(); await tick();
|
|
191
|
+
expect(f.provider.snapshot().outputs.a?.state).toBe("empty");
|
|
192
|
+
f.lost(); expect(f.provider.snapshot().outputs.a?.state).toBe("unavailable");
|
|
193
|
+
f.provider.stop(); const count = f.connections; await tick(); expect(f.connections).toBe(count);
|
|
194
|
+
});
|
|
195
|
+
test("history cannot introduce an unseen older item after native completion", async () => {
|
|
196
|
+
let read = 0;
|
|
197
|
+
const f = fixture(async () => ({ data: read++ ? [message("unseen-old", "old persisted")] : [] }));
|
|
198
|
+
try {
|
|
199
|
+
await tick();
|
|
200
|
+
f.event("item/started", message("live", "partial"));
|
|
201
|
+
f.event("item/completed", message("live", "fresh completed", "final_answer"));
|
|
202
|
+
await new Promise(r => setTimeout(r, 25));
|
|
203
|
+
expect(f.provider.snapshot().outputs.a?.text).toBe("fresh completed");
|
|
204
|
+
} finally { f.provider.stop(); }
|
|
205
|
+
});
|
|
206
|
+
test("unbound thread notifications never enter the snapshot", async () => {
|
|
207
|
+
const f = fixture();
|
|
208
|
+
try { await tick(); f.event("item/completed", { ...message("a", "unrelated"), threadId: "unbound" }); expect(f.provider.snapshot().outputs.a?.state).toBe("empty"); } finally { f.provider.stop(); }
|
|
209
|
+
});
|
|
210
|
+
});
|
|
211
|
+
|
|
212
|
+
test("namespaced task and group bindings share one observer while preserving task aliases", async () => {
|
|
213
|
+
let metadataReads = 0, itemReads = 0;
|
|
214
|
+
const provider = new ConversationOutputs(() => {}, async () => ({ request: async method => { if (method === "thread/read") { metadataReads++; return { thread: { name: "真实主对话" } }; } itemReads++; return { data: [message("latest", "shared reply")] }; }, close() {} }), 10000);
|
|
215
|
+
provider.bind([{ id: "task:same", thread_id: "thread" }, { id: "group:same", thread_id: "thread" }]); provider.start();
|
|
216
|
+
try { await tick(); const outputs = provider.snapshot().outputs; expect(outputs["task:same"]).toEqual(outputs.same); expect(outputs["group:same"]?.text).toBe("shared reply"); expect(outputs["group:same"]?.thread_title).toBe("真实主对话"); expect(metadataReads).toBe(1); expect(itemReads).toBe(1); } finally { provider.stop(); }
|
|
217
|
+
});
|
|
218
|
+
|
|
219
|
+
test("pending title metadata never delays latest message catch-up", async () => {
|
|
220
|
+
let finish!: (value: JsonRecord) => void;
|
|
221
|
+
const provider = new ConversationOutputs(() => {}, async () => ({ request: async method => method === "thread/read" ? new Promise<JsonRecord>(resolve => { finish = resolve; }) : { data: [message("latest", "message without title")] }, close() {} }), 10000);
|
|
222
|
+
provider.bind([{ id: "a", thread_id: "thread" }]); provider.start();
|
|
223
|
+
try { await tick(); expect(provider.snapshot().outputs.a?.text).toBe("message without title"); provider.stop(); finish({ thread: { name: "late title" } }); await tick(); expect(provider.snapshot().outputs.a?.thread_title).toBeNull(); } finally { provider.stop(); }
|
|
224
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { LedgerStore } from "../lib/store";
|
|
2
|
+
|
|
3
|
+
const requestedStage = process.argv[3];
|
|
4
|
+
const ledgerPath = process.argv[2];
|
|
5
|
+
if (!ledgerPath) throw new Error("ledger path is required");
|
|
6
|
+
const store = new LedgerStore(ledgerPath, "test-run", (stage) => {
|
|
7
|
+
if (stage === requestedStage) process.kill(process.pid, "SIGKILL");
|
|
8
|
+
});
|
|
9
|
+
store.update((ledger) => { ledger.revision = 1; });
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { expect, test } from "bun:test";
|
|
2
|
+
import { archiveFixtureScript } from "../lib/demo-archive";
|
|
3
|
+
|
|
4
|
+
test("static archive fixture creates a resource and restores it without changing task state", async () => {
|
|
5
|
+
const fixture = { revision: 1, view: { tasks: [{ id: "scheduler", thread_id: "demo-scheduler", state: "closed", conversation_resource: null }] } };
|
|
6
|
+
const target = {} as { fetch: typeof fetch; demoArchiveCalls: string[] };
|
|
7
|
+
new Function("window", "Response", archiveFixtureScript(JSON.stringify(fixture), "{}", "{}"))(target, Response);
|
|
8
|
+
const operate = async (action: string) => (await target.fetch("api/conversation-archive", {
|
|
9
|
+
method: "POST", body: JSON.stringify({ task_id: "scheduler", action }),
|
|
10
|
+
})).json();
|
|
11
|
+
|
|
12
|
+
expect(await operate("archive")).toMatchObject({ status: "closed", target: "demo-scheduler", error: null });
|
|
13
|
+
expect(await operate("unarchive")).toMatchObject({ status: "active", archive_policy: "manual" });
|
|
14
|
+
expect(await operate("archive")).toMatchObject({ status: "closed", archive_policy: "auto" });
|
|
15
|
+
const state = await (await target.fetch("api/view")).json();
|
|
16
|
+
expect(state.view.tasks[0].state).toBe("closed");
|
|
17
|
+
expect(state.revision).toBe(4);
|
|
18
|
+
expect(target.demoArchiveCalls).toEqual(["scheduler", "scheduler", "scheduler"]);
|
|
19
|
+
});
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { describe, expect, test } from "bun:test";
|
|
2
|
+
import { cpSync, mkdirSync, mkdtempSync, readFileSync, realpathSync, rmSync } from "node:fs";
|
|
3
|
+
import { tmpdir } from "node:os";
|
|
4
|
+
import { join } from "node:path";
|
|
5
|
+
import { createDemoLedger, createPlanningDemoLedger } from "../examples/orchestration-viewer/ledger";
|
|
6
|
+
import { startDashboard } from "../lib/server";
|
|
7
|
+
import { LedgerStore } from "../lib/store";
|
|
8
|
+
import { actualIntervals, buildView } from "../lib/view";
|
|
9
|
+
import { conversationUrl } from "../web/links";
|
|
10
|
+
|
|
11
|
+
describe("dashboard example", () => {
|
|
12
|
+
test("the planning preview does not fabricate execution facts", () => {
|
|
13
|
+
const ledger = createPlanningDemoLedger(Date.parse("2026-10-31T00:00:00.000Z"));
|
|
14
|
+
const view = buildView(ledger) as { execution_phase: string; planned_intervals: unknown[]; actual_intervals: unknown[] };
|
|
15
|
+
expect(view.execution_phase).toBe("planning");
|
|
16
|
+
expect(ledger.events.filter((event) => event.type === "task_started")).toHaveLength(0);
|
|
17
|
+
expect(ledger.tasks.every((task) => task.state === "planned" && task.started_at === null && task.finished_at === null)).toBe(true);
|
|
18
|
+
expect(view.planned_intervals.length).toBeGreaterThan(0);
|
|
19
|
+
expect(view.actual_intervals).toEqual([]);
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
test("uses distinct UUID-shaped Codex conversation addresses", () => {
|
|
23
|
+
const ledger = createDemoLedger();
|
|
24
|
+
const ids = [ledger.control.owner_thread_id, ...ledger.groups.map((group) => group.agent_thread_id), ...ledger.tasks.map((task) => task.thread_id)].filter((id): id is string => id !== null);
|
|
25
|
+
const verification = JSON.parse(readFileSync(join(import.meta.dir, "..", "examples", "orchestration-viewer", "link-verification.json"), "utf8")) as { results: { thread_id: string; navigated: boolean }[] };
|
|
26
|
+
expect(new Set(ids).size).toBe(ids.length);
|
|
27
|
+
expect(verification.results).toHaveLength(ids.length);
|
|
28
|
+
expect(new Set(verification.results.filter((result) => result.navigated).map((result) => result.thread_id))).toEqual(new Set(ids));
|
|
29
|
+
for (const id of ids) {
|
|
30
|
+
const url = new URL(conversationUrl(id)!);
|
|
31
|
+
expect(url.protocol).toBe("codex:");
|
|
32
|
+
expect(url.hostname).toBe("threads");
|
|
33
|
+
expect(url.pathname).toMatch(/^\/[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/);
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
test("uses same-document native conversation links like the working dashboard", () => {
|
|
37
|
+
expect(conversationUrl("01a18bf3-feb7-7d52-98b3-dc25f8549f69")).toBe("codex://threads/01a18bf3-feb7-7d52-98b3-dc25f8549f69");
|
|
38
|
+
expect(conversationUrl(" 01a18bf3-feb7-7d52-98b3-dc25f8549f69 ")).toBe("codex://threads/01a18bf3-feb7-7d52-98b3-dc25f8549f69");
|
|
39
|
+
});
|
|
40
|
+
test("does not build native URLs for synthetic conversation IDs", () => {
|
|
41
|
+
expect(conversationUrl("mock-thread-task-reader")).toBeNull();
|
|
42
|
+
expect(conversationUrl(" mock-thread-search-service ")).toBeNull();
|
|
43
|
+
});
|
|
44
|
+
test("keeps the cut history and post-merge work in the right groups", () => {
|
|
45
|
+
const ledger = createDemoLedger(Date.parse("2026-10-31T00:00:00.000Z"));
|
|
46
|
+
const view = buildView(ledger);
|
|
47
|
+
const intervals = actualIntervals(ledger).filter((interval) => interval.task_id === "dashboard-ui");
|
|
48
|
+
expect(intervals.map((interval) => interval.group_id)).toEqual(["core", "dashboard"]);
|
|
49
|
+
expect(intervals).toHaveLength(2);
|
|
50
|
+
expect(intervals[0]!.end).toBe(intervals[1]!.start);
|
|
51
|
+
expect(ledger.tasks.filter((task) => ["release", "deploy", "verify"].includes(task.id)).map((task) => task.group_id)).toEqual(["core", "core", "core"]);
|
|
52
|
+
expect(ledger.follow_prs).toHaveLength(1);
|
|
53
|
+
expect(ledger.follow_prs[0]!.origin_group_id).toBe("core");
|
|
54
|
+
expect((view.orchestration as { conversation_links_verified: boolean }).conversation_links_verified).toBe(true);
|
|
55
|
+
expect(ledger.events.find((event) => event.type === "link_verification")?.data.evidence_ref).toBe("examples/orchestration-viewer/link-verification.json");
|
|
56
|
+
expect(ledger.tasks.every((task) => task.atoms.length > 0)).toBe(true);
|
|
57
|
+
});
|
|
58
|
+
|
|
59
|
+
test("observed starts respect dependencies and the running limit", () => {
|
|
60
|
+
const reference = Date.parse("2026-10-31T00:00:00.000Z");
|
|
61
|
+
const ledger = createDemoLedger(reference);
|
|
62
|
+
const task = (id: string) => ledger.tasks.find((item) => item.id === id)!;
|
|
63
|
+
expect(Date.parse(task("scheduler").started_at!)).toBeGreaterThanOrEqual(Date.parse(task("model").finished_at!));
|
|
64
|
+
expect(Date.parse(task("scheduler").started_at!)).toBeGreaterThanOrEqual(Date.parse(task("ledger").finished_at!));
|
|
65
|
+
expect(Date.parse(task("release").started_at!)).toBeGreaterThanOrEqual(Date.parse(ledger.facts.find((fact) => fact.id === "parent-merged")!.observed_at));
|
|
66
|
+
expect(Date.parse(task("deploy").started_at!)).toBeGreaterThanOrEqual(Date.parse(task("release").finished_at!));
|
|
67
|
+
const changes = actualIntervals(ledger).filter((interval) => interval.state === "running").flatMap((interval) => [
|
|
68
|
+
{ at: Date.parse(interval.start), delta: 1 },
|
|
69
|
+
{ at: interval.end ? Date.parse(interval.end) : reference, delta: -1 },
|
|
70
|
+
]).sort((a, b) => a.at - b.at || a.delta - b.delta);
|
|
71
|
+
let running = 0;
|
|
72
|
+
for (const change of changes) { running += change.delta; expect(running).toBeLessThanOrEqual(ledger.config.max_running_tasks); }
|
|
73
|
+
expect(running).toBe(0);
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
test("uses the approved Chinese-first display titles without changing machine identity", () => {
|
|
77
|
+
const ledger = createDemoLedger();
|
|
78
|
+
expect(ledger.tasks.map((task) => ({ id: task.id, kind: task.kind, title: task.title }))).toEqual([
|
|
79
|
+
{ id: "model", kind: "contribution", title: "依赖模型与任务图" },
|
|
80
|
+
{ id: "ledger", kind: "contribution", title: "账本持久化与并发控制" },
|
|
81
|
+
{ id: "scheduler", kind: "contribution", title: "调度与 PR 合并协调" },
|
|
82
|
+
{ id: "release", kind: "release", title: "核心能力版本发布" },
|
|
83
|
+
{ id: "deploy", kind: "deployment", title: "运行环境部署与验证" },
|
|
84
|
+
{ id: "verify", kind: "verification", title: "发布后核心能力验证" },
|
|
85
|
+
{ id: "dashboard-ui", kind: "contribution", title: "依赖图与甘特图交互验证" },
|
|
86
|
+
{ id: "server", kind: "contribution", title: "只读视图服务与实时更新" },
|
|
87
|
+
{ id: "integration", kind: "contribution", title: "动态切割端到端验证" },
|
|
88
|
+
{ id: "acceptance", kind: "verification", title: "页面验收与发布核对" },
|
|
89
|
+
]);
|
|
90
|
+
});
|
|
91
|
+
|
|
92
|
+
test("serves the registered example requirements without exposing other files", async () => {
|
|
93
|
+
const root = mkdtempSync(join(realpathSync(tmpdir()), "orchestration-demo-docs-"));
|
|
94
|
+
const ledger = createDemoLedger(Date.parse("2026-10-31T00:00:00.000Z"));
|
|
95
|
+
const store = new LedgerStore(root, ledger.orchestration_id);
|
|
96
|
+
store.create(ledger);
|
|
97
|
+
cpSync(join(import.meta.dir, "..", "examples", "orchestration-viewer", "requirements"), join(store.runPath, "requirements"), { recursive: true });
|
|
98
|
+
const assetsDir = join(root, "assets"); mkdirSync(assetsDir);
|
|
99
|
+
const server = await startDashboard({ root, runId: ledger.orchestration_id, port: 0, assetsDir, demoFrame: true });
|
|
100
|
+
try {
|
|
101
|
+
const base = `http://127.0.0.1:${server.port}/s/${server.token}/`;
|
|
102
|
+
const view = await (await fetch(`${base}api/view`)).json() as { view: { tasks: { id: string }[] } };
|
|
103
|
+
expect(view.view.tasks).toHaveLength(ledger.tasks.length);
|
|
104
|
+
expect(view.view).not.toHaveProperty("is_demo");
|
|
105
|
+
for (const item of [...ledger.groups, ...ledger.tasks]) {
|
|
106
|
+
const type = ledger.groups.some((group) => group.id === item.id) ? "group" : "task";
|
|
107
|
+
const response = await fetch(`${base}api/document/${type}-${item.id}`);
|
|
108
|
+
expect(response.status).toBe(200);
|
|
109
|
+
expect(await response.text()).toContain(item.title);
|
|
110
|
+
}
|
|
111
|
+
expect((await fetch(`${base}api/document/task-unknown`)).status).toBe(404);
|
|
112
|
+
} finally { await server.stop(); rmSync(root, { recursive: true, force: true }); }
|
|
113
|
+
});
|
|
114
|
+
});
|
|
115
|
+
|
|
116
|
+
test("idle/archive example is synthetic and supports real archive reconciliation", async () => {
|
|
117
|
+
const { createIdleArchiveExample } = await import("../examples/orchestration-viewer");
|
|
118
|
+
const { retryConversationArchive } = await import("../lib/conversation-archive");
|
|
119
|
+
const example = createIdleArchiveExample();
|
|
120
|
+
expect(example.ledger.tasks.find(t => t.id === "dashboard-ui")?.state).toBe("agent_idle");
|
|
121
|
+
expect(example.ledger.tasks.every(t => !t.thread_id || t.thread_id.startsWith("example-thread-"))).toBe(true);
|
|
122
|
+
const connection = await example.dashboard.connectObserver(() => {}, () => {});
|
|
123
|
+
const thread = example.ledger.tasks.find(t => t.id === "dashboard-ui")!.thread_id;
|
|
124
|
+
expect(await connection.request("thread/read", {threadId: thread})).toMatchObject({thread: {status: {type: "idle"}}});
|
|
125
|
+
const root = mkdtempSync(join(realpathSync(tmpdir()), "idle-archive-example-test-"));
|
|
126
|
+
try {
|
|
127
|
+
const store = new LedgerStore(root, example.ledger.orchestration_id); store.create(example.ledger);
|
|
128
|
+
for (const taskId of ["model", "ledger"]) {
|
|
129
|
+
const state = store.read().tasks.find((t: any) => t.id === taskId).state;
|
|
130
|
+
expect((await retryConversationArchive(store, taskId, example.dashboard.archiveProvider)).status).toBe("closed");
|
|
131
|
+
expect(store.read().tasks.find((t: any) => t.id === taskId).state).toBe(state);
|
|
132
|
+
}
|
|
133
|
+
} finally { rmSync(root, {recursive: true, force: true}); }
|
|
134
|
+
});
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { expect, test } from "bun:test";
|
|
2
|
+
import { DesktopOutputState } from "../lib/desktop-output-state";
|
|
3
|
+
const agent=(id:string,text:string,completedAtMs:number|null=null)=>({type:"agentMessage",id,text,phase:"commentary",completedAtMs});
|
|
4
|
+
const snapshot=(revision=1)=>({type:"snapshot",revision,conversationState:{turns:[],turnHistory:{history:{islands:[{entries:[{key:"old",value:"old"},{key:"new",value:"new"}]}],entitiesByKey:{new:{turnId:"t2",status:"inProgress",items:[{type:"reasoning",id:"secret",text:"hidden"},agent("a","partial")],completedItemIds:{}},old:{turnId:"t1",status:"completed",items:[agent("old","final",10)]}}}}}});
|
|
5
|
+
const path=["turnHistory","history","entitiesByKey","new","items",1];
|
|
6
|
+
test("follows platform island/item order, ignores private items, and applies contiguous streaming patches",()=>{
|
|
7
|
+
const state=new DesktopOutputState();expect(state.update(snapshot())).toMatchObject({turnId:"t2",item:{id:"a",text:"partial"},complete:false});
|
|
8
|
+
expect(state.update({type:"patches",baseRevision:1,revision:2,patches:[{op:"replace",path:[...path,"text"],value:"partial answer"}]})).toMatchObject({item:{text:"partial answer"},complete:false});
|
|
9
|
+
expect(state.update({type:"patches",baseRevision:2,revision:3,patches:[{op:"replace",path,value:agent("a","complete",20)}]})).toMatchObject({item:{text:"complete"},complete:true});
|
|
10
|
+
expect(state.update({type:"patches",baseRevision:1,revision:2,patches:[]})).toBeNull();
|
|
11
|
+
expect(()=>state.update({type:"patches",baseRevision:4,revision:5,patches:[]})).toThrow("gap");
|
|
12
|
+
expect(state.update(snapshot(6))).toMatchObject({item:{text:"partial"}});
|
|
13
|
+
expect(JSON.stringify(state)).not.toContain("hidden");
|
|
14
|
+
});
|
|
15
|
+
test("rejects unsafe paths and unsupported patches without exposing private updates",()=>{
|
|
16
|
+
const state=new DesktopOutputState();state.update(snapshot());
|
|
17
|
+
expect(()=>state.update({type:"patches",baseRevision:1,revision:2,patches:[{op:"replace",path:["__proto__","polluted"],value:true}]})).toThrow("path");
|
|
18
|
+
expect(state.update({type:"patches",baseRevision:1,revision:3,patches:[{op:"replace",path:[...path.slice(0,-1),0,"text"],value:"new secret"}]})).toMatchObject({item:{text:"partial"}});
|
|
19
|
+
expect(JSON.stringify(state)).not.toContain("new secret");
|
|
20
|
+
});
|