@blxzer/pactile 0.6.0-beta.2 → 0.6.0-beta.4
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 +93 -84
- package/README.zh-CN.md +90 -81
- package/dist/bin/compat-warning.d.ts +2 -0
- package/dist/bin/compat-warning.d.ts.map +1 -0
- package/dist/bin/compat-warning.js +8 -0
- package/dist/bin/compat-warning.js.map +1 -0
- package/dist/bin/cstl.d.ts +3 -0
- package/dist/bin/cstl.d.ts.map +1 -0
- package/{bin → dist/bin}/cstl.js +2 -3
- package/dist/bin/cstl.js.map +1 -0
- package/dist/bin/pactile.d.ts +3 -0
- package/dist/bin/pactile.d.ts.map +1 -0
- package/dist/bin/pactile.js +4 -0
- package/dist/bin/pactile.js.map +1 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +77 -17
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/capability.d.ts +3 -0
- package/dist/commands/capability.d.ts.map +1 -0
- package/dist/commands/capability.js +129 -0
- package/dist/commands/capability.js.map +1 -0
- package/dist/commands/codex.d.ts.map +1 -1
- package/dist/commands/codex.js +54 -6
- package/dist/commands/codex.js.map +1 -1
- package/dist/commands/context.d.ts +2 -0
- package/dist/commands/context.d.ts.map +1 -1
- package/dist/commands/context.js +367 -41
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/detach.d.ts.map +1 -1
- package/dist/commands/detach.js +5 -4
- package/dist/commands/detach.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +615 -259
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/legacy-task.d.ts +3 -0
- package/dist/commands/legacy-task.d.ts.map +1 -0
- package/dist/commands/legacy-task.js +295 -0
- package/dist/commands/legacy-task.js.map +1 -0
- package/dist/commands/pi.d.ts +3 -2
- package/dist/commands/pi.d.ts.map +1 -1
- package/dist/commands/pi.js +333 -10
- package/dist/commands/pi.js.map +1 -1
- package/dist/commands/session.d.ts.map +1 -1
- package/dist/commands/session.js +148 -24
- package/dist/commands/session.js.map +1 -1
- package/dist/commands/task-schedule.d.ts +17 -0
- package/dist/commands/task-schedule.d.ts.map +1 -0
- package/dist/commands/task-schedule.js +395 -0
- package/dist/commands/task-schedule.js.map +1 -0
- package/dist/commands/task-verify-plan.d.ts +3 -0
- package/dist/commands/task-verify-plan.d.ts.map +1 -0
- package/dist/commands/task-verify-plan.js +503 -0
- package/dist/commands/task-verify-plan.js.map +1 -0
- package/dist/commands/task-worktree-close.d.ts +4 -0
- package/dist/commands/task-worktree-close.d.ts.map +1 -0
- package/dist/commands/task-worktree-close.js +81 -0
- package/dist/commands/task-worktree-close.js.map +1 -0
- package/dist/commands/task.d.ts +3 -0
- package/dist/commands/task.d.ts.map +1 -1
- package/dist/commands/task.js +1373 -184
- package/dist/commands/task.js.map +1 -1
- package/dist/commands/tile-selection.d.ts +3 -0
- package/dist/commands/tile-selection.d.ts.map +1 -0
- package/dist/commands/tile-selection.js +174 -0
- package/dist/commands/tile-selection.js.map +1 -0
- package/dist/commands/update.d.ts +1 -1
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +80 -55
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/worktree.d.ts +4 -0
- package/dist/commands/worktree.d.ts.map +1 -0
- package/dist/commands/worktree.js +198 -0
- package/dist/commands/worktree.js.map +1 -0
- package/dist/configurators/shared.js +1 -1
- package/dist/configurators/shared.js.map +1 -1
- package/dist/core/compat/environment.d.ts +0 -1
- package/dist/core/compat/environment.d.ts.map +1 -1
- package/dist/core/compat/environment.js +1 -9
- package/dist/core/compat/environment.js.map +1 -1
- package/dist/core/pactile/bounded-capabilities.d.ts +127 -0
- package/dist/core/pactile/bounded-capabilities.d.ts.map +1 -0
- package/dist/core/pactile/bounded-capabilities.js +188 -0
- package/dist/core/pactile/bounded-capabilities.js.map +1 -0
- package/dist/core/pactile/index.d.ts +1 -0
- package/dist/core/pactile/index.d.ts.map +1 -1
- package/dist/core/pactile/index.js +1 -0
- package/dist/core/pactile/index.js.map +1 -1
- package/dist/core/task/index.d.ts +4 -2
- package/dist/core/task/index.d.ts.map +1 -1
- package/dist/core/task/index.js +2 -1
- package/dist/core/task/index.js.map +1 -1
- package/dist/core/task/kernel-cli.d.ts +14 -1
- package/dist/core/task/kernel-cli.d.ts.map +1 -1
- package/dist/core/task/kernel-cli.js +128 -0
- package/dist/core/task/kernel-cli.js.map +1 -1
- package/dist/core/task/kernel-contract.d.ts +6 -3
- package/dist/core/task/kernel-contract.d.ts.map +1 -1
- package/dist/core/task/kernel-contract.js +71 -23
- package/dist/core/task/kernel-contract.js.map +1 -1
- package/dist/core/task/kernel-store.d.ts +6 -0
- package/dist/core/task/kernel-store.d.ts.map +1 -1
- package/dist/core/task/kernel-store.js +54 -2
- package/dist/core/task/kernel-store.js.map +1 -1
- package/dist/core/task/legacy-task-migration-reader.d.ts +137 -0
- package/dist/core/task/legacy-task-migration-reader.d.ts.map +1 -0
- package/dist/core/task/legacy-task-migration-reader.js +512 -0
- package/dist/core/task/legacy-task-migration-reader.js.map +1 -0
- package/dist/core/task/legacy-task-migration.d.ts +105 -0
- package/dist/core/task/legacy-task-migration.d.ts.map +1 -0
- package/dist/core/task/legacy-task-migration.js +562 -0
- package/dist/core/task/legacy-task-migration.js.map +1 -0
- package/dist/core/task/legacy-task-overlay-durable-io.d.ts +18 -0
- package/dist/core/task/legacy-task-overlay-durable-io.d.ts.map +1 -0
- package/dist/core/task/legacy-task-overlay-durable-io.js +66 -0
- package/dist/core/task/legacy-task-overlay-durable-io.js.map +1 -0
- package/dist/core/task/legacy-task-reconciliation-reader.d.ts +26 -0
- package/dist/core/task/legacy-task-reconciliation-reader.d.ts.map +1 -0
- package/dist/core/task/legacy-task-reconciliation-reader.js +324 -0
- package/dist/core/task/legacy-task-reconciliation-reader.js.map +1 -0
- package/dist/core/task/legacy-task-v2-import.d.ts +67 -0
- package/dist/core/task/legacy-task-v2-import.d.ts.map +1 -0
- package/dist/core/task/legacy-task-v2-import.js +1046 -0
- package/dist/core/task/legacy-task-v2-import.js.map +1 -0
- package/dist/core/task/project-file-observer.d.ts +46 -0
- package/dist/core/task/project-file-observer.d.ts.map +1 -0
- package/dist/core/task/project-file-observer.js +618 -0
- package/dist/core/task/project-file-observer.js.map +1 -0
- package/dist/core/task/start-authority.d.ts +14 -0
- package/dist/core/task/start-authority.d.ts.map +1 -0
- package/dist/core/task/start-authority.js +146 -0
- package/dist/core/task/start-authority.js.map +1 -0
- package/dist/core/task/strategy.d.ts +24 -0
- package/dist/core/task/strategy.d.ts.map +1 -0
- package/dist/core/task/strategy.js +136 -0
- package/dist/core/task/strategy.js.map +1 -0
- package/dist/core/task/task-candidate-observer.d.ts +111 -0
- package/dist/core/task/task-candidate-observer.d.ts.map +1 -0
- package/dist/core/task/task-candidate-observer.js +762 -0
- package/dist/core/task/task-candidate-observer.js.map +1 -0
- package/dist/core/task/task-kernel-close.d.ts +5 -0
- package/dist/core/task/task-kernel-close.d.ts.map +1 -0
- package/dist/core/task/task-kernel-close.js +367 -0
- package/dist/core/task/task-kernel-close.js.map +1 -0
- package/dist/core/task/task-kernel-dependencies.d.ts +3 -0
- package/dist/core/task/task-kernel-dependencies.d.ts.map +1 -0
- package/dist/core/task/task-kernel-dependencies.js +24 -0
- package/dist/core/task/task-kernel-dependencies.js.map +1 -0
- package/dist/core/task/task-kernel-host.d.ts +5 -0
- package/dist/core/task/task-kernel-host.d.ts.map +1 -0
- package/dist/core/task/task-kernel-host.js +136 -0
- package/dist/core/task/task-kernel-host.js.map +1 -0
- package/dist/core/task/task-kernel-paths.d.ts +19 -0
- package/dist/core/task/task-kernel-paths.d.ts.map +1 -0
- package/dist/core/task/task-kernel-paths.js +237 -0
- package/dist/core/task/task-kernel-paths.js.map +1 -0
- package/dist/core/task/task-kernel-reviews.d.ts +3 -0
- package/dist/core/task/task-kernel-reviews.d.ts.map +1 -0
- package/dist/core/task/task-kernel-reviews.js +100 -0
- package/dist/core/task/task-kernel-reviews.js.map +1 -0
- package/dist/core/task/task-kernel-runs.d.ts +5 -0
- package/dist/core/task/task-kernel-runs.d.ts.map +1 -0
- package/dist/core/task/task-kernel-runs.js +196 -0
- package/dist/core/task/task-kernel-runs.js.map +1 -0
- package/dist/core/task/task-kernel-schema.d.ts +29 -0
- package/dist/core/task/task-kernel-schema.d.ts.map +1 -0
- package/dist/core/task/task-kernel-schema.js +1169 -0
- package/dist/core/task/task-kernel-schema.js.map +1 -0
- package/dist/core/task/task-kernel-store-v2.d.ts +33 -0
- package/dist/core/task/task-kernel-store-v2.d.ts.map +1 -0
- package/dist/core/task/task-kernel-store-v2.js +574 -0
- package/dist/core/task/task-kernel-store-v2.js.map +1 -0
- package/dist/core/task/task-kernel-types.d.ts +585 -0
- package/dist/core/task/task-kernel-types.d.ts.map +1 -0
- package/dist/core/task/task-kernel-types.js +31 -0
- package/dist/core/task/task-kernel-types.js.map +1 -0
- package/dist/core/task/task-kernel-workspaces.d.ts +10 -0
- package/dist/core/task/task-kernel-workspaces.d.ts.map +1 -0
- package/dist/core/task/task-kernel-workspaces.js +250 -0
- package/dist/core/task/task-kernel-workspaces.js.map +1 -0
- package/dist/core/task/task-kernel-write-set.d.ts +3 -0
- package/dist/core/task/task-kernel-write-set.d.ts.map +1 -0
- package/dist/core/task/task-kernel-write-set.js +12 -0
- package/dist/core/task/task-kernel-write-set.js.map +1 -0
- package/dist/core/task/task-kernel.d.ts +19 -0
- package/dist/core/task/task-kernel.d.ts.map +1 -0
- package/dist/core/task/task-kernel.js +17 -0
- package/dist/core/task/task-kernel.js.map +1 -0
- package/dist/core/task/task-pull-request-observer.d.ts +25 -0
- package/dist/core/task/task-pull-request-observer.d.ts.map +1 -0
- package/dist/core/task/task-pull-request-observer.js +187 -0
- package/dist/core/task/task-pull-request-observer.js.map +1 -0
- package/dist/core/task/task-review-evidence.d.ts +27 -0
- package/dist/core/task/task-review-evidence.d.ts.map +1 -0
- package/dist/core/task/task-review-evidence.js +383 -0
- package/dist/core/task/task-review-evidence.js.map +1 -0
- package/dist/migrations/index.d.ts +1 -1
- package/dist/migrations/index.d.ts.map +1 -1
- package/dist/migrations/index.js +5 -3
- package/dist/migrations/index.js.map +1 -1
- package/dist/migrations/manifests/0.6.0-beta.3.json +9 -0
- package/dist/migrations/manifests/0.6.0-beta.4.json +9 -0
- package/dist/pactile/artifacts/documents.d.ts +72 -0
- package/dist/pactile/artifacts/documents.d.ts.map +1 -0
- package/dist/pactile/artifacts/documents.js +406 -0
- package/dist/pactile/artifacts/documents.js.map +1 -0
- package/dist/pactile/artifacts/index.d.ts +6 -0
- package/dist/pactile/artifacts/index.d.ts.map +1 -0
- package/dist/pactile/artifacts/index.js +6 -0
- package/dist/pactile/artifacts/index.js.map +1 -0
- package/dist/pactile/artifacts/projection.d.ts +50 -0
- package/dist/pactile/artifacts/projection.d.ts.map +1 -0
- package/dist/pactile/artifacts/projection.js +139 -0
- package/dist/pactile/artifacts/projection.js.map +1 -0
- package/dist/pactile/artifacts/reader.d.ts +20 -0
- package/dist/pactile/artifacts/reader.d.ts.map +1 -0
- package/dist/pactile/artifacts/reader.js +559 -0
- package/dist/pactile/artifacts/reader.js.map +1 -0
- package/dist/pactile/artifacts/schema.d.ts +4 -0
- package/dist/pactile/artifacts/schema.d.ts.map +1 -0
- package/dist/pactile/artifacts/schema.js +217 -0
- package/dist/pactile/artifacts/schema.js.map +1 -0
- package/dist/pactile/artifacts/types.d.ts +66 -0
- package/dist/pactile/artifacts/types.d.ts.map +1 -0
- package/dist/pactile/artifacts/types.js +45 -0
- package/dist/pactile/artifacts/types.js.map +1 -0
- package/dist/pactile/capabilities/claim.d.ts +3 -0
- package/dist/pactile/capabilities/claim.d.ts.map +1 -0
- package/dist/pactile/capabilities/claim.js +97 -0
- package/dist/pactile/capabilities/claim.js.map +1 -0
- package/dist/pactile/capabilities/command.d.ts +6 -0
- package/dist/pactile/capabilities/command.d.ts.map +1 -0
- package/dist/pactile/capabilities/command.js +253 -0
- package/dist/pactile/capabilities/command.js.map +1 -0
- package/dist/pactile/capabilities/discover.d.ts +6 -0
- package/dist/pactile/capabilities/discover.d.ts.map +1 -0
- package/dist/pactile/capabilities/discover.js +48 -0
- package/dist/pactile/capabilities/discover.js.map +1 -0
- package/dist/pactile/capabilities/node.d.ts +15 -0
- package/dist/pactile/capabilities/node.d.ts.map +1 -0
- package/dist/pactile/capabilities/node.js +292 -0
- package/dist/pactile/capabilities/node.js.map +1 -0
- package/dist/pactile/capabilities/read.d.ts +6 -0
- package/dist/pactile/capabilities/read.d.ts.map +1 -0
- package/dist/pactile/capabilities/read.js +100 -0
- package/dist/pactile/capabilities/read.js.map +1 -0
- package/dist/pactile/capabilities/receipts.d.ts +17 -0
- package/dist/pactile/capabilities/receipts.d.ts.map +1 -0
- package/dist/pactile/capabilities/receipts.js +90 -0
- package/dist/pactile/capabilities/receipts.js.map +1 -0
- package/dist/pactile/capabilities/search.d.ts +6 -0
- package/dist/pactile/capabilities/search.d.ts.map +1 -0
- package/dist/pactile/capabilities/search.js +181 -0
- package/dist/pactile/capabilities/search.js.map +1 -0
- package/dist/pactile/capabilities/shared.d.ts +29 -0
- package/dist/pactile/capabilities/shared.d.ts.map +1 -0
- package/dist/pactile/capabilities/shared.js +134 -0
- package/dist/pactile/capabilities/shared.js.map +1 -0
- package/dist/pactile/capabilities/workspace.d.ts +19 -0
- package/dist/pactile/capabilities/workspace.d.ts.map +1 -0
- package/dist/pactile/capabilities/workspace.js +273 -0
- package/dist/pactile/capabilities/workspace.js.map +1 -0
- package/dist/pactile/codex/bridge.d.ts +105 -2
- package/dist/pactile/codex/bridge.d.ts.map +1 -1
- package/dist/pactile/codex/bridge.js +1266 -92
- package/dist/pactile/codex/bridge.js.map +1 -1
- package/dist/pactile/codex/dispatch-stop-proof.d.ts +43 -0
- package/dist/pactile/codex/dispatch-stop-proof.d.ts.map +1 -0
- package/dist/pactile/codex/dispatch-stop-proof.js +177 -0
- package/dist/pactile/codex/dispatch-stop-proof.js.map +1 -0
- package/dist/pactile/codex/host-stop.d.ts +47 -0
- package/dist/pactile/codex/host-stop.d.ts.map +1 -0
- package/dist/pactile/codex/host-stop.js +344 -0
- package/dist/pactile/codex/host-stop.js.map +1 -0
- package/dist/pactile/coordination/index.d.ts +4 -0
- package/dist/pactile/coordination/index.d.ts.map +1 -0
- package/dist/pactile/coordination/index.js +4 -0
- package/dist/pactile/coordination/index.js.map +1 -0
- package/dist/pactile/coordination/journal.d.ts +10 -0
- package/dist/pactile/coordination/journal.d.ts.map +1 -0
- package/dist/pactile/coordination/journal.js +255 -0
- package/dist/pactile/coordination/journal.js.map +1 -0
- package/dist/pactile/coordination/kernel-resume.d.ts +8 -0
- package/dist/pactile/coordination/kernel-resume.d.ts.map +1 -0
- package/dist/pactile/coordination/kernel-resume.js +87 -0
- package/dist/pactile/coordination/kernel-resume.js.map +1 -0
- package/dist/pactile/coordination/model.d.ts +553 -0
- package/dist/pactile/coordination/model.d.ts.map +1 -0
- package/dist/pactile/coordination/model.js +239 -0
- package/dist/pactile/coordination/model.js.map +1 -0
- package/dist/pactile/coordination/state.d.ts +46 -0
- package/dist/pactile/coordination/state.d.ts.map +1 -0
- package/dist/pactile/coordination/state.js +301 -0
- package/dist/pactile/coordination/state.js.map +1 -0
- package/dist/pactile/coordination/store.d.ts +94 -0
- package/dist/pactile/coordination/store.d.ts.map +1 -0
- package/dist/pactile/coordination/store.js +396 -0
- package/dist/pactile/coordination/store.js.map +1 -0
- package/dist/pactile/index.d.ts +7 -1
- package/dist/pactile/index.d.ts.map +1 -1
- package/dist/pactile/index.js +7 -1
- package/dist/pactile/index.js.map +1 -1
- package/dist/pactile/jev/contracts.d.ts +104 -0
- package/dist/pactile/jev/contracts.d.ts.map +1 -0
- package/dist/pactile/jev/contracts.js +53 -0
- package/dist/pactile/jev/contracts.js.map +1 -0
- package/dist/pactile/jev/decision.d.ts +58 -0
- package/dist/pactile/jev/decision.d.ts.map +1 -0
- package/dist/pactile/jev/decision.js +149 -0
- package/dist/pactile/jev/decision.js.map +1 -0
- package/dist/pactile/jev/http.d.ts +25 -0
- package/dist/pactile/jev/http.d.ts.map +1 -0
- package/dist/pactile/jev/http.js +234 -0
- package/dist/pactile/jev/http.js.map +1 -0
- package/dist/pactile/jev/index.d.ts +8 -0
- package/dist/pactile/jev/index.d.ts.map +1 -0
- package/dist/pactile/jev/index.js +4 -0
- package/dist/pactile/jev/index.js.map +1 -0
- package/dist/pactile/jev/outbound.d.ts +15 -0
- package/dist/pactile/jev/outbound.d.ts.map +1 -0
- package/dist/pactile/jev/outbound.js +264 -0
- package/dist/pactile/jev/outbound.js.map +1 -0
- package/dist/pactile/jev/project-policy.d.ts +10 -0
- package/dist/pactile/jev/project-policy.d.ts.map +1 -0
- package/dist/pactile/jev/project-policy.js +53 -0
- package/dist/pactile/jev/project-policy.js.map +1 -0
- package/dist/pactile/jev/response.d.ts +17 -0
- package/dist/pactile/jev/response.d.ts.map +1 -0
- package/dist/pactile/jev/response.js +280 -0
- package/dist/pactile/jev/response.js.map +1 -0
- package/dist/pactile/jev/scheduler-advice.d.ts +92 -0
- package/dist/pactile/jev/scheduler-advice.d.ts.map +1 -0
- package/dist/pactile/jev/scheduler-advice.js +323 -0
- package/dist/pactile/jev/scheduler-advice.js.map +1 -0
- package/dist/pactile/jev/transport.d.ts +6 -0
- package/dist/pactile/jev/transport.d.ts.map +1 -0
- package/dist/pactile/jev/transport.js +87 -0
- package/dist/pactile/jev/transport.js.map +1 -0
- package/dist/pactile/lifecycle/deferred-live.d.ts +17 -0
- package/dist/pactile/lifecycle/deferred-live.d.ts.map +1 -0
- package/dist/pactile/lifecycle/deferred-live.js +173 -0
- package/dist/pactile/lifecycle/deferred-live.js.map +1 -0
- package/dist/pactile/lifecycle/legacy-import.d.ts +1 -1
- package/dist/pactile/lifecycle/legacy-import.js +3 -3
- package/dist/pactile/lifecycle/legacy-import.js.map +1 -1
- package/dist/pactile/lifecycle/project-files.d.ts.map +1 -1
- package/dist/pactile/lifecycle/project-files.js +1 -0
- package/dist/pactile/lifecycle/project-files.js.map +1 -1
- package/dist/pactile/migration/legacy-task-batch-generation.d.ts +23 -0
- package/dist/pactile/migration/legacy-task-batch-generation.d.ts.map +1 -0
- package/dist/pactile/migration/legacy-task-batch-generation.js +102 -0
- package/dist/pactile/migration/legacy-task-batch-generation.js.map +1 -0
- package/dist/pactile/migration/legacy-task-batch-io.d.ts +9 -0
- package/dist/pactile/migration/legacy-task-batch-io.d.ts.map +1 -0
- package/dist/pactile/migration/legacy-task-batch-io.js +208 -0
- package/dist/pactile/migration/legacy-task-batch-io.js.map +1 -0
- package/dist/pactile/migration/legacy-task-batch-journal.d.ts +6 -0
- package/dist/pactile/migration/legacy-task-batch-journal.d.ts.map +1 -0
- package/dist/pactile/migration/legacy-task-batch-journal.js +121 -0
- package/dist/pactile/migration/legacy-task-batch-journal.js.map +1 -0
- package/dist/pactile/migration/legacy-task-batch-orchestrator.d.ts +18 -0
- package/dist/pactile/migration/legacy-task-batch-orchestrator.d.ts.map +1 -0
- package/dist/pactile/migration/legacy-task-batch-orchestrator.js +634 -0
- package/dist/pactile/migration/legacy-task-batch-orchestrator.js.map +1 -0
- package/dist/pactile/migration/legacy-task-batch-source.d.ts +8 -0
- package/dist/pactile/migration/legacy-task-batch-source.d.ts.map +1 -0
- package/dist/pactile/migration/legacy-task-batch-source.js +158 -0
- package/dist/pactile/migration/legacy-task-batch-source.js.map +1 -0
- package/dist/pactile/migration/legacy-task-batch-types.d.ts +127 -0
- package/dist/pactile/migration/legacy-task-batch-types.d.ts.map +1 -0
- package/dist/pactile/migration/legacy-task-batch-types.js +127 -0
- package/dist/pactile/migration/legacy-task-batch-types.js.map +1 -0
- package/dist/pactile/migration/legacy-task-batch.d.ts +3 -0
- package/dist/pactile/migration/legacy-task-batch.d.ts.map +1 -0
- package/dist/pactile/migration/legacy-task-batch.js +2 -0
- package/dist/pactile/migration/legacy-task-batch.js.map +1 -0
- package/dist/pactile/migration/legacy-task-held-source-reader.d.ts +27 -0
- package/dist/pactile/migration/legacy-task-held-source-reader.d.ts.map +1 -0
- package/dist/pactile/migration/legacy-task-held-source-reader.js +261 -0
- package/dist/pactile/migration/legacy-task-held-source-reader.js.map +1 -0
- package/dist/pactile/migration/legacy-task-reconciliation.d.ts +46 -0
- package/dist/pactile/migration/legacy-task-reconciliation.d.ts.map +1 -0
- package/dist/pactile/migration/legacy-task-reconciliation.js +589 -0
- package/dist/pactile/migration/legacy-task-reconciliation.js.map +1 -0
- package/dist/pactile/migration/legacy-task-update.d.ts +19 -0
- package/dist/pactile/migration/legacy-task-update.d.ts.map +1 -0
- package/dist/pactile/migration/legacy-task-update.js +164 -0
- package/dist/pactile/migration/legacy-task-update.js.map +1 -0
- package/dist/pactile/parallel/batch.d.ts +21 -2
- package/dist/pactile/parallel/batch.d.ts.map +1 -1
- package/dist/pactile/parallel/batch.js +271 -50
- package/dist/pactile/parallel/batch.js.map +1 -1
- package/dist/pactile/parallel/policy.d.ts +1 -1
- package/dist/pactile/parallel/policy.d.ts.map +1 -1
- package/dist/pactile/parallel/policy.js +130 -102
- package/dist/pactile/parallel/policy.js.map +1 -1
- package/dist/pactile/pi/bridge.d.ts +139 -2
- package/dist/pactile/pi/bridge.d.ts.map +1 -1
- package/dist/pactile/pi/bridge.js +1317 -106
- package/dist/pactile/pi/bridge.js.map +1 -1
- package/dist/pactile/pi/rpc.d.ts +23 -4
- package/dist/pactile/pi/rpc.d.ts.map +1 -1
- package/dist/pactile/pi/rpc.js +243 -42
- package/dist/pactile/pi/rpc.js.map +1 -1
- package/dist/pactile/pi/v2-dispatch.d.ts +113 -0
- package/dist/pactile/pi/v2-dispatch.d.ts.map +1 -0
- package/dist/pactile/pi/v2-dispatch.js +919 -0
- package/dist/pactile/pi/v2-dispatch.js.map +1 -0
- package/dist/pactile/projection/planner.js +1 -1
- package/dist/pactile/projection/planner.js.map +1 -1
- package/dist/pactile/registry.d.ts +63 -1
- package/dist/pactile/registry.d.ts.map +1 -1
- package/dist/pactile/registry.js +633 -4
- package/dist/pactile/registry.js.map +1 -1
- package/dist/pactile/retrieval/index.d.ts +1 -0
- package/dist/pactile/retrieval/index.d.ts.map +1 -1
- package/dist/pactile/retrieval/index.js +1 -0
- package/dist/pactile/retrieval/index.js.map +1 -1
- package/dist/pactile/retrieval/jev-planning.d.ts +28 -0
- package/dist/pactile/retrieval/jev-planning.d.ts.map +1 -0
- package/dist/pactile/retrieval/jev-planning.js +96 -0
- package/dist/pactile/retrieval/jev-planning.js.map +1 -0
- package/dist/pactile/review/contract.d.ts +232 -0
- package/dist/pactile/review/contract.d.ts.map +1 -0
- package/dist/pactile/review/contract.js +695 -0
- package/dist/pactile/review/contract.js.map +1 -0
- package/dist/pactile/review/escalation-artifacts.d.ts +41 -0
- package/dist/pactile/review/escalation-artifacts.d.ts.map +1 -0
- package/dist/pactile/review/escalation-artifacts.js +415 -0
- package/dist/pactile/review/escalation-artifacts.js.map +1 -0
- package/dist/pactile/review/escalation-contract.d.ts +115 -0
- package/dist/pactile/review/escalation-contract.d.ts.map +1 -0
- package/dist/pactile/review/escalation-contract.js +151 -0
- package/dist/pactile/review/escalation-contract.js.map +1 -0
- package/dist/pactile/review/escalation-finalize.d.ts +14 -0
- package/dist/pactile/review/escalation-finalize.d.ts.map +1 -0
- package/dist/pactile/review/escalation-finalize.js +319 -0
- package/dist/pactile/review/escalation-finalize.js.map +1 -0
- package/dist/pactile/review/escalation-reply.d.ts +10 -0
- package/dist/pactile/review/escalation-reply.d.ts.map +1 -0
- package/dist/pactile/review/escalation-reply.js +61 -0
- package/dist/pactile/review/escalation-reply.js.map +1 -0
- package/dist/pactile/review/escalation-transport.d.ts +32 -0
- package/dist/pactile/review/escalation-transport.d.ts.map +1 -0
- package/dist/pactile/review/escalation-transport.js +216 -0
- package/dist/pactile/review/escalation-transport.js.map +1 -0
- package/dist/pactile/review/escalation.d.ts +7 -0
- package/dist/pactile/review/escalation.d.ts.map +1 -0
- package/dist/pactile/review/escalation.js +6 -0
- package/dist/pactile/review/escalation.js.map +1 -0
- package/dist/pactile/review/evidence.d.ts +25 -0
- package/dist/pactile/review/evidence.d.ts.map +1 -0
- package/dist/pactile/review/evidence.js +58 -0
- package/dist/pactile/review/evidence.js.map +1 -0
- package/dist/pactile/review/jev-escalation-advice.d.ts +77 -0
- package/dist/pactile/review/jev-escalation-advice.d.ts.map +1 -0
- package/dist/pactile/review/jev-escalation-advice.js +358 -0
- package/dist/pactile/review/jev-escalation-advice.js.map +1 -0
- package/dist/pactile/scheduler/index.d.ts +6 -0
- package/dist/pactile/scheduler/index.d.ts.map +1 -0
- package/dist/pactile/scheduler/index.js +5 -0
- package/dist/pactile/scheduler/index.js.map +1 -0
- package/dist/pactile/scheduler/project-lease-store.d.ts +35 -0
- package/dist/pactile/scheduler/project-lease-store.d.ts.map +1 -0
- package/dist/pactile/scheduler/project-lease-store.js +189 -0
- package/dist/pactile/scheduler/project-lease-store.js.map +1 -0
- package/dist/pactile/scheduler/scheduler.d.ts +91 -0
- package/dist/pactile/scheduler/scheduler.d.ts.map +1 -0
- package/dist/pactile/scheduler/scheduler.js +589 -0
- package/dist/pactile/scheduler/scheduler.js.map +1 -0
- package/dist/pactile/scheduler/task-kernel-admission.d.ts +173 -0
- package/dist/pactile/scheduler/task-kernel-admission.d.ts.map +1 -0
- package/dist/pactile/scheduler/task-kernel-admission.js +1560 -0
- package/dist/pactile/scheduler/task-kernel-admission.js.map +1 -0
- package/dist/pactile/scheduler/task-kernel-wave-dispatch.d.ts +184 -0
- package/dist/pactile/scheduler/task-kernel-wave-dispatch.d.ts.map +1 -0
- package/dist/pactile/scheduler/task-kernel-wave-dispatch.js +952 -0
- package/dist/pactile/scheduler/task-kernel-wave-dispatch.js.map +1 -0
- package/dist/pactile/scheduler/task-map-scheduler.d.ts +116 -0
- package/dist/pactile/scheduler/task-map-scheduler.d.ts.map +1 -0
- package/dist/pactile/scheduler/task-map-scheduler.js +1448 -0
- package/dist/pactile/scheduler/task-map-scheduler.js.map +1 -0
- package/dist/pactile/scheduler/task-run-dispatch-state.d.ts +7 -0
- package/dist/pactile/scheduler/task-run-dispatch-state.d.ts.map +1 -0
- package/dist/pactile/scheduler/task-run-dispatch-state.js +69 -0
- package/dist/pactile/scheduler/task-run-dispatch-state.js.map +1 -0
- package/dist/pactile/task/authorization.d.ts +3 -0
- package/dist/pactile/task/authorization.d.ts.map +1 -0
- package/dist/pactile/task/authorization.js +43 -0
- package/dist/pactile/task/authorization.js.map +1 -0
- package/dist/pactile/task/creation.d.ts +22 -0
- package/dist/pactile/task/creation.d.ts.map +1 -0
- package/dist/pactile/task/creation.js +95 -0
- package/dist/pactile/task/creation.js.map +1 -0
- package/dist/pactile/task/guards.d.ts +1 -4
- package/dist/pactile/task/guards.d.ts.map +1 -1
- package/dist/pactile/task/guards.js +5 -57
- package/dist/pactile/task/guards.js.map +1 -1
- package/dist/pactile/task/session-jev-receipt.d.ts +58 -0
- package/dist/pactile/task/session-jev-receipt.d.ts.map +1 -0
- package/dist/pactile/task/session-jev-receipt.js +375 -0
- package/dist/pactile/task/session-jev-receipt.js.map +1 -0
- package/dist/pactile/task/session-jev.d.ts +7 -0
- package/dist/pactile/task/session-jev.d.ts.map +1 -0
- package/dist/pactile/task/session-jev.js +217 -0
- package/dist/pactile/task/session-jev.js.map +1 -0
- package/dist/pactile/task/session-pack.d.ts.map +1 -1
- package/dist/pactile/task/session-pack.js +155 -16
- package/dist/pactile/task/session-pack.js.map +1 -1
- package/dist/pactile/task/session-retrieval-jev-receipt.d.ts +49 -0
- package/dist/pactile/task/session-retrieval-jev-receipt.d.ts.map +1 -0
- package/dist/pactile/task/session-retrieval-jev-receipt.js +97 -0
- package/dist/pactile/task/session-retrieval-jev-receipt.js.map +1 -0
- package/dist/pactile/task/session-retrieval-jev.d.ts +8 -0
- package/dist/pactile/task/session-retrieval-jev.d.ts.map +1 -0
- package/dist/pactile/task/session-retrieval-jev.js +352 -0
- package/dist/pactile/task/session-retrieval-jev.js.map +1 -0
- package/dist/pactile/task/strategy.d.ts +1 -23
- package/dist/pactile/task/strategy.d.ts.map +1 -1
- package/dist/pactile/task/strategy.js +2 -135
- package/dist/pactile/task/strategy.js.map +1 -1
- package/dist/pactile/tiles/jev-selection.d.ts +44 -0
- package/dist/pactile/tiles/jev-selection.d.ts.map +1 -0
- package/dist/pactile/tiles/jev-selection.js +210 -0
- package/dist/pactile/tiles/jev-selection.js.map +1 -0
- package/dist/pactile/tiles/safe-yaml.d.ts +5 -1
- package/dist/pactile/tiles/safe-yaml.d.ts.map +1 -1
- package/dist/pactile/tiles/safe-yaml.js +8 -8
- package/dist/pactile/tiles/safe-yaml.js.map +1 -1
- package/dist/pactile/tiles/selection-receipts.d.ts +71 -0
- package/dist/pactile/tiles/selection-receipts.d.ts.map +1 -0
- package/dist/pactile/tiles/selection-receipts.js +319 -0
- package/dist/pactile/tiles/selection-receipts.js.map +1 -0
- package/dist/pactile/tiles/selection.d.ts +185 -0
- package/dist/pactile/tiles/selection.d.ts.map +1 -0
- package/dist/pactile/tiles/selection.js +985 -0
- package/dist/pactile/tiles/selection.js.map +1 -0
- package/dist/pactile/verification/git-observer.d.ts +3 -0
- package/dist/pactile/verification/git-observer.d.ts.map +1 -0
- package/dist/pactile/verification/git-observer.js +3 -0
- package/dist/pactile/verification/git-observer.js.map +1 -0
- package/dist/pactile/verification/index.d.ts +11 -0
- package/dist/pactile/verification/index.d.ts.map +1 -0
- package/dist/pactile/verification/index.js +6 -0
- package/dist/pactile/verification/index.js.map +1 -0
- package/dist/pactile/verification/jev-advice.d.ts +78 -0
- package/dist/pactile/verification/jev-advice.d.ts.map +1 -0
- package/dist/pactile/verification/jev-advice.js +397 -0
- package/dist/pactile/verification/jev-advice.js.map +1 -0
- package/dist/pactile/verification/planner.d.ts +15 -0
- package/dist/pactile/verification/planner.d.ts.map +1 -0
- package/dist/pactile/verification/planner.js +412 -0
- package/dist/pactile/verification/planner.js.map +1 -0
- package/dist/pactile/verification/receipt.d.ts +101 -0
- package/dist/pactile/verification/receipt.d.ts.map +1 -0
- package/dist/pactile/verification/receipt.js +400 -0
- package/dist/pactile/verification/receipt.js.map +1 -0
- package/dist/pactile/verification/types.d.ts +72 -0
- package/dist/pactile/verification/types.d.ts.map +1 -0
- package/dist/pactile/verification/types.js +21 -0
- package/dist/pactile/verification/types.js.map +1 -0
- package/dist/pactile/worktree/git-probe.d.ts +32 -0
- package/dist/pactile/worktree/git-probe.d.ts.map +1 -0
- package/dist/pactile/worktree/git-probe.js +336 -0
- package/dist/pactile/worktree/git-probe.js.map +1 -0
- package/dist/pactile/worktree/git-removal.d.ts +3 -0
- package/dist/pactile/worktree/git-removal.d.ts.map +1 -0
- package/dist/pactile/worktree/git-removal.js +11 -0
- package/dist/pactile/worktree/git-removal.js.map +1 -0
- package/dist/pactile/worktree/index.d.ts +2 -0
- package/dist/pactile/worktree/index.d.ts.map +1 -0
- package/dist/pactile/worktree/index.js +2 -0
- package/dist/pactile/worktree/index.js.map +1 -0
- package/dist/pactile/worktree/integration-evidence.d.ts +80 -0
- package/dist/pactile/worktree/integration-evidence.d.ts.map +1 -0
- package/dist/pactile/worktree/integration-evidence.js +166 -0
- package/dist/pactile/worktree/integration-evidence.js.map +1 -0
- package/dist/pactile/worktree/manager-core.d.ts +50 -0
- package/dist/pactile/worktree/manager-core.d.ts.map +1 -0
- package/dist/pactile/worktree/manager-core.js +359 -0
- package/dist/pactile/worktree/manager-core.js.map +1 -0
- package/dist/pactile/worktree/manager-provenance.d.ts +32 -0
- package/dist/pactile/worktree/manager-provenance.d.ts.map +1 -0
- package/dist/pactile/worktree/manager-provenance.js +409 -0
- package/dist/pactile/worktree/manager-provenance.js.map +1 -0
- package/dist/pactile/worktree/manager-types.d.ts +84 -0
- package/dist/pactile/worktree/manager-types.d.ts.map +1 -0
- package/dist/pactile/worktree/manager-types.js +11 -0
- package/dist/pactile/worktree/manager-types.js.map +1 -0
- package/dist/pactile/worktree/manager.d.ts +10 -0
- package/dist/pactile/worktree/manager.d.ts.map +1 -0
- package/dist/pactile/worktree/manager.js +6 -0
- package/dist/pactile/worktree/manager.js.map +1 -0
- package/dist/pactile/worktree/run-workspace-cleanup.d.ts +10 -0
- package/dist/pactile/worktree/run-workspace-cleanup.d.ts.map +1 -0
- package/dist/pactile/worktree/run-workspace-cleanup.js +695 -0
- package/dist/pactile/worktree/run-workspace-cleanup.js.map +1 -0
- package/dist/pactile/worktree/run-workspace-lifecycle.d.ts +65 -0
- package/dist/pactile/worktree/run-workspace-lifecycle.d.ts.map +1 -0
- package/dist/pactile/worktree/run-workspace-lifecycle.js +276 -0
- package/dist/pactile/worktree/run-workspace-lifecycle.js.map +1 -0
- package/dist/templates/common/bundled-skills/pactile-meta/references/customize-local/change-hooks.md +1 -1
- package/dist/templates/common/bundled-skills/pactile-meta/references/local-architecture/generated-files.md +1 -1
- package/dist/templates/common/bundled-skills/pactile-meta/references/platform-files/hooks-and-settings.md +1 -1
- package/dist/templates/common/bundled-skills/pactile-meta/references/platform-files/overview.md +1 -1
- package/dist/templates/common/bundled-skills/pactile-meta/references/platform-files/platform-map.md +1 -1
- package/dist/templates/common/bundled-skills/smart-search-cli/SKILL.md +2 -0
- package/dist/templates/common/skills/brainstorm.md +19 -13
- package/dist/templates/markdown/agents.md +2 -2
- package/dist/templates/markdown/framework/execution-strategy.md.txt +1 -1
- package/dist/templates/markdown/framework/index.md.txt +1 -1
- package/dist/templates/markdown/framework/parallel-first-execution.md.txt +17 -105
- package/dist/templates/markdown/framework/prd-grill-frontier.md.txt +3 -3
- package/dist/templates/markdown/framework/release-boundary.md.txt +9 -10
- package/dist/templates/markdown/framework/retrieval-daily-guide.md.txt +1 -1
- package/dist/templates/pactile/CONTEXT.md +48 -36
- package/dist/templates/pactile/modules/approval-personal/contract.md +12 -24
- package/dist/templates/pactile/modules/close-basic/contract.md +15 -18
- package/dist/templates/pactile/modules/debug-recovery/contract.md +4 -4
- package/dist/templates/pactile/modules/define-basic/contract.md +15 -19
- package/dist/templates/pactile/modules/define-extended/contract.md +3 -3
- package/dist/templates/pactile/modules/execute-agent/contract.md +11 -19
- package/dist/templates/pactile/modules/intake-basic/contract.md +16 -13
- package/dist/templates/pactile/modules/verify-basic/contract.md +11 -20
- package/dist/templates/pactile/tasks/templates/release-execution/design.md +5 -5
- package/dist/templates/pactile/tasks/templates/release-readiness/design.md +6 -6
- package/dist/templates/pactile/tasks/templates/release-readiness/handoff-template.md +8 -2
- package/dist/templates/pactile/workflow.md +37 -41
- package/dist/templates/template-utils.d.ts +1 -2
- package/dist/templates/template-utils.d.ts.map +1 -1
- package/dist/templates/template-utils.js +2 -13
- package/dist/templates/template-utils.js.map +1 -1
- package/dist/types/ai-tools.d.ts +1 -1
- package/dist/types/ai-tools.js +1 -1
- package/dist/utils/manifest-prune.js +1 -1
- package/dist/utils/manifest-prune.js.map +1 -1
- package/dist/utils/p36-upgrade.d.ts +2 -2
- package/dist/utils/p36-upgrade.d.ts.map +1 -1
- package/dist/utils/p36-upgrade.js +2 -10
- package/dist/utils/p36-upgrade.js.map +1 -1
- package/dist/utils/post-update-smoke.js +1 -1
- package/dist/utils/post-update-smoke.js.map +1 -1
- package/dist/utils/readiness.d.ts +2 -2
- package/dist/utils/readiness.js +2 -2
- package/dist/utils/uninstall-scrubbers.js +1 -1
- package/dist/utils/workflow-dir.d.ts +1 -1
- package/dist/utils/workflow-dir.d.ts.map +1 -1
- package/dist/utils/workflow-dir.js +1 -1
- package/dist/utils/workflow-dir.js.map +1 -1
- package/package.json +42 -37
- package/CHANGELOG.md +0 -651
- package/bin/compat-warning.js +0 -11
- package/bin/pactile.js +0 -3
- package/bin/smart-search.js +0 -38
- package/dist/migrations/manifests/0.1.0.json +0 -9
- package/dist/migrations/manifests/0.1.1.json +0 -9
- package/dist/migrations/manifests/0.1.2.json +0 -9
- package/dist/migrations/manifests/0.1.3.json +0 -9
- package/dist/migrations/manifests/0.1.4.json +0 -9
- package/dist/migrations/manifests/0.2.1.json +0 -9
- package/dist/migrations/manifests/0.2.10.json +0 -374
- package/dist/migrations/manifests/0.2.2.json +0 -9
- package/dist/migrations/manifests/0.2.3.json +0 -9
- package/dist/migrations/manifests/0.2.4.json +0 -9
- package/dist/migrations/manifests/0.2.5.json +0 -9
- package/dist/migrations/manifests/0.2.6.json +0 -9
- package/dist/migrations/manifests/0.2.7.json +0 -9
- package/dist/migrations/manifests/0.2.8.json +0 -9
- package/dist/migrations/manifests/0.2.9.json +0 -9
- package/dist/migrations/manifests/0.3.0.json +0 -89
- package/dist/migrations/manifests/0.3.1.json +0 -32
- package/dist/migrations/manifests/0.3.2.json +0 -16
- package/dist/migrations/manifests/0.3.3.json +0 -9
- package/dist/migrations/manifests/0.3.4.json +0 -9
- package/dist/migrations/manifests/0.3.5.json +0 -9
- package/dist/migrations/manifests/0.3.6.json +0 -9
- package/dist/migrations/manifests/0.4.0.json +0 -9
- package/dist/migrations/manifests/0.4.1.json +0 -9
- package/dist/migrations/manifests/0.4.2.json +0 -9
- package/dist/migrations/manifests/0.4.3.json +0 -9
- package/dist/migrations/manifests/0.5.0-beta.0.json +0 -9
- package/dist/migrations/manifests/0.5.0-beta.1.json +0 -9
- package/dist/migrations/manifests/0.5.0-beta.2.json +0 -9
- package/dist/migrations/manifests/0.5.0-beta.3.json +0 -9
- package/dist/migrations/manifests/0.5.0-beta.4.json +0 -9
- package/dist/migrations/manifests/0.5.0-beta.5.json +0 -9
- package/dist/migrations/manifests/0.5.0.json +0 -9
- package/dist/pactile/compat/retired-alternate-client.d.ts +0 -42
- package/dist/pactile/compat/retired-alternate-client.d.ts.map +0 -1
- package/dist/pactile/compat/retired-alternate-client.js +0 -153
- package/dist/pactile/compat/retired-alternate-client.js.map +0 -1
- package/dist/pactile/compat/update-residue.d.ts +0 -4
- package/dist/pactile/compat/update-residue.d.ts.map +0 -1
- package/dist/pactile/compat/update-residue.js +0 -55
- package/dist/pactile/compat/update-residue.js.map +0 -1
- package/dist/utils/cursor-retrieval-env.d.ts +0 -17
- package/dist/utils/cursor-retrieval-env.d.ts.map +0 -1
- package/dist/utils/cursor-retrieval-env.js +0 -19
- package/dist/utils/cursor-retrieval-env.js.map +0 -1
- package/dist/utils/proxy.d.ts +0 -25
- package/dist/utils/proxy.d.ts.map +0 -1
- package/dist/utils/proxy.js +0 -60
- package/dist/utils/proxy.js.map +0 -1
- package/scripts/postinstall.js +0 -6
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-workspace-cleanup.js","sourceRoot":"","sources":["../../../src/pactile/worktree/run-workspace-cleanup.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { type WorktreeIntegrationReceipt } from "./integration-evidence.js";
|
|
2
|
+
import { type RunWorkspaceBinding } from "./manager-types.js";
|
|
3
|
+
import { type TaskKernelMutationResult, type TaskKernelSnapshotV2, type TaskRunV2 } from "../../core/task/task-kernel.js";
|
|
4
|
+
export interface StoredTaskRun {
|
|
5
|
+
kernel: TaskKernelSnapshotV2;
|
|
6
|
+
run: TaskRunV2;
|
|
7
|
+
}
|
|
8
|
+
export declare function readStoredTaskRun(root: string, taskDir: string, runId: string): StoredTaskRun;
|
|
9
|
+
export interface CreateTaskRunWorktreeInput {
|
|
10
|
+
repoRoot: string;
|
|
11
|
+
taskDir: string;
|
|
12
|
+
runId: string;
|
|
13
|
+
branch: string;
|
|
14
|
+
baseRef: string;
|
|
15
|
+
actor: string;
|
|
16
|
+
idempotencyKey: string;
|
|
17
|
+
}
|
|
18
|
+
export declare function createTaskRunWorktree(input: CreateTaskRunWorktreeInput): {
|
|
19
|
+
binding: RunWorkspaceBinding;
|
|
20
|
+
mutation: TaskKernelMutationResult;
|
|
21
|
+
};
|
|
22
|
+
export interface ReconcileTaskRunWorktreeInput {
|
|
23
|
+
repoRoot: string;
|
|
24
|
+
taskDir: string;
|
|
25
|
+
runId: string;
|
|
26
|
+
actor: string;
|
|
27
|
+
idempotencyKey: string;
|
|
28
|
+
}
|
|
29
|
+
export declare function reconcileTaskRunWorktree(input: ReconcileTaskRunWorktreeInput): {
|
|
30
|
+
binding: RunWorkspaceBinding;
|
|
31
|
+
mutation: TaskKernelMutationResult | null;
|
|
32
|
+
};
|
|
33
|
+
export interface AdoptTaskRunWorktreeInput {
|
|
34
|
+
repoRoot: string;
|
|
35
|
+
taskDir: string;
|
|
36
|
+
runId: string;
|
|
37
|
+
canonicalPath: string;
|
|
38
|
+
branch: string;
|
|
39
|
+
baseSha: string;
|
|
40
|
+
authorization: {
|
|
41
|
+
approvedBy: string;
|
|
42
|
+
approvedAt: string;
|
|
43
|
+
evidenceRef: string;
|
|
44
|
+
};
|
|
45
|
+
actor: string;
|
|
46
|
+
idempotencyKey: string;
|
|
47
|
+
}
|
|
48
|
+
export declare function adoptTaskRunWorktree(input: AdoptTaskRunWorktreeInput): {
|
|
49
|
+
binding: RunWorkspaceBinding;
|
|
50
|
+
mutation: TaskKernelMutationResult;
|
|
51
|
+
};
|
|
52
|
+
export interface IntegrateTaskRunWorktreeInput {
|
|
53
|
+
repoRoot: string;
|
|
54
|
+
taskDir: string;
|
|
55
|
+
runId: string;
|
|
56
|
+
targetRef: string;
|
|
57
|
+
actor: string;
|
|
58
|
+
idempotencyKey: string;
|
|
59
|
+
}
|
|
60
|
+
export declare function integrateTaskRunWorktree(input: IntegrateTaskRunWorktreeInput): {
|
|
61
|
+
binding: RunWorkspaceBinding;
|
|
62
|
+
receipt: WorktreeIntegrationReceipt;
|
|
63
|
+
mutation: TaskKernelMutationResult;
|
|
64
|
+
};
|
|
65
|
+
//# sourceMappingURL=run-workspace-lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-workspace-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/pactile/worktree/run-workspace-lifecycle.ts"],"names":[],"mappings":"AAMA,OAAO,EAA6B,KAAK,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvG,OAAO,EAAwB,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGpF,OAAO,EAOL,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EAGzB,KAAK,SAAS,EACf,MAAM,gCAAgC,CAAC;AACxC,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,oBAAoB,CAAC;IAC7B,GAAG,EAAE,SAAS,CAAC;CAChB;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,aAAa,CAM7F;AAuHD,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,GAAG;IACxE,OAAO,EAAE,mBAAmB,CAAC;IAC7B,QAAQ,EAAE,wBAAwB,CAAC;CACpC,CAiCA;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,6BAA6B,GAAG;IAC9E,OAAO,EAAE,mBAAmB,CAAC;IAC7B,QAAQ,EAAE,wBAAwB,GAAG,IAAI,CAAC;CAC3C,CA+CA;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/E,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,GAAG;IACtE,OAAO,EAAE,mBAAmB,CAAC;IAC7B,QAAQ,EAAE,wBAAwB,CAAC;CACpC,CA+BA;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,6BAA6B,GAAG;IAC9E,OAAO,EAAE,mBAAmB,CAAC;IAC7B,OAAO,EAAE,0BAA0B,CAAC;IACpC,QAAQ,EAAE,wBAAwB,CAAC;CACpC,CAiCA"}
|
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
import { adoptRunWorktree, createRunWorktree, inspectRunWorktree, reconcileRunWorktree, } from "./manager-core.js";
|
|
2
|
+
import { verifyWorktreeIntegration } from "./integration-evidence.js";
|
|
3
|
+
import { WorktreeManagerError } from "./manager-types.js";
|
|
4
|
+
import { pathKey, repoIdentity, resolveCommit } from "./git-probe.js";
|
|
5
|
+
import { readAllManagerProvenance } from "./manager-provenance.js";
|
|
6
|
+
import { bindTaskRunWorkspace, fingerprintTaskValue, readTaskKernel, recordTaskRunWorkspaceClaimRefusal, recordTaskRunWorkspaceIntegration, TASK_RUN_WORKSPACE_CLAIM_ERROR_CODES, } from "../../core/task/task-kernel.js";
|
|
7
|
+
export function readStoredTaskRun(root, taskDir, runId) {
|
|
8
|
+
const read = readTaskKernel({ root, taskDir });
|
|
9
|
+
if (read?.kind !== "task-kernel-v2")
|
|
10
|
+
throw new WorktreeManagerError("task-kernel-unavailable", "A valid Task Kernel v2 is required for managed Run worktrees");
|
|
11
|
+
const run = read.kernel.runs.find((item) => item.id === runId);
|
|
12
|
+
if (!run)
|
|
13
|
+
throw new WorktreeManagerError("run-not-found", `Task Kernel has no Run ${runId}`);
|
|
14
|
+
return { kernel: read.kernel, run };
|
|
15
|
+
}
|
|
16
|
+
function rawErrorCode(error) {
|
|
17
|
+
if (typeof error !== "object" || error === null || !("code" in error))
|
|
18
|
+
return null;
|
|
19
|
+
const code = error.code;
|
|
20
|
+
return typeof code === "string" ? code : null;
|
|
21
|
+
}
|
|
22
|
+
function normalizeClaimErrorCode(error) {
|
|
23
|
+
const code = rawErrorCode(error)?.toLowerCase().replaceAll("_", "-");
|
|
24
|
+
return code && TASK_RUN_WORKSPACE_CLAIM_ERROR_CODES.includes(code)
|
|
25
|
+
? code
|
|
26
|
+
: "claim-failed";
|
|
27
|
+
}
|
|
28
|
+
function isRevisionConflict(error) {
|
|
29
|
+
return rawErrorCode(error)?.toUpperCase() === "REVISION_CONFLICT";
|
|
30
|
+
}
|
|
31
|
+
function recordWorkspaceClaimRefusal(input, operation, claimError) {
|
|
32
|
+
const errorCode = normalizeClaimErrorCode(claimError);
|
|
33
|
+
const requestKeyFingerprint = fingerprintTaskValue(input.idempotencyKey);
|
|
34
|
+
const idempotencyKey = `workspace-claim-refused:${fingerprintTaskValue({
|
|
35
|
+
runId: input.runId,
|
|
36
|
+
operation,
|
|
37
|
+
requestKeyFingerprint,
|
|
38
|
+
errorCode,
|
|
39
|
+
})}`;
|
|
40
|
+
const unrecorded = () => new WorktreeManagerError("workspace-claim-refusal-unrecorded", `The ${operation} claim was refused (${errorCode}), but its refusal could not be persisted; reconcile the Run before retrying.`);
|
|
41
|
+
for (let attempt = 0; attempt < 2; attempt++) {
|
|
42
|
+
try {
|
|
43
|
+
const latest = readStoredTaskRun(input.repoRoot, input.taskDir, input.runId);
|
|
44
|
+
recordTaskRunWorkspaceClaimRefusal({
|
|
45
|
+
root: input.repoRoot,
|
|
46
|
+
taskDir: input.taskDir,
|
|
47
|
+
expectedRevision: latest.kernel.revision,
|
|
48
|
+
runId: input.runId,
|
|
49
|
+
operation,
|
|
50
|
+
errorCode,
|
|
51
|
+
actor: input.actor,
|
|
52
|
+
idempotencyKey,
|
|
53
|
+
});
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
if (attempt === 0 && isRevisionConflict(error))
|
|
58
|
+
continue;
|
|
59
|
+
throw unrecorded();
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
throw unrecorded();
|
|
63
|
+
}
|
|
64
|
+
function bindWorkspaceAtLatestRevision(input, binding) {
|
|
65
|
+
const maxAttempts = 3;
|
|
66
|
+
for (let attempt = 0; attempt < maxAttempts; attempt++) {
|
|
67
|
+
const latest = readStoredTaskRun(input.repoRoot, input.taskDir, input.runId);
|
|
68
|
+
try {
|
|
69
|
+
return bindTaskRunWorkspace({
|
|
70
|
+
root: input.repoRoot,
|
|
71
|
+
taskDir: input.taskDir,
|
|
72
|
+
expectedRevision: latest.kernel.revision,
|
|
73
|
+
runId: input.runId,
|
|
74
|
+
workspace: binding,
|
|
75
|
+
actor: input.actor,
|
|
76
|
+
idempotencyKey: input.idempotencyKey,
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
if (!isRevisionConflict(error) || attempt === maxAttempts - 1)
|
|
81
|
+
throw error;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
throw new WorktreeManagerError("workspace-kernel-bind-failed", "Task Kernel revision kept changing while binding the workspace; the checkout is preserved for reconciliation");
|
|
85
|
+
}
|
|
86
|
+
function resolveFrozenRunBase(repoRoot, baseRef, run) {
|
|
87
|
+
if (!run.candidateBaseSha) {
|
|
88
|
+
throw new WorktreeManagerError("candidate-baseline-unavailable", "This Run has no frozen Git baseline; refusing to create a managed Git checkout");
|
|
89
|
+
}
|
|
90
|
+
let requestedBase;
|
|
91
|
+
try {
|
|
92
|
+
requestedBase = resolveCommit(repoRoot, baseRef);
|
|
93
|
+
}
|
|
94
|
+
catch {
|
|
95
|
+
throw new WorktreeManagerError("invalid-ref", "The requested worktree base could not be resolved", null);
|
|
96
|
+
}
|
|
97
|
+
if (requestedBase.toLowerCase() !== run.candidateBaseSha.toLowerCase()) {
|
|
98
|
+
throw new WorktreeManagerError("candidate-baseline-mismatch", "Requested worktree base does not match the Git commit captured when the Run started");
|
|
99
|
+
}
|
|
100
|
+
return run.candidateBaseSha;
|
|
101
|
+
}
|
|
102
|
+
function managerProvenanceMatchesBinding(provenance, binding) {
|
|
103
|
+
const manager = binding.manager;
|
|
104
|
+
return !!provenance && !!manager
|
|
105
|
+
&& provenance.ownerRunId === binding.ownerRunId
|
|
106
|
+
&& provenance.credentialId === manager.credentialId
|
|
107
|
+
&& pathKey(provenance.canonicalPath) === pathKey(binding.canonicalPath)
|
|
108
|
+
&& pathKey(provenance.projectRoot) === pathKey(manager.projectRoot)
|
|
109
|
+
&& pathKey(provenance.commonDir) === pathKey(manager.commonDir)
|
|
110
|
+
&& pathKey(provenance.gitDir) === pathKey(manager.gitDir)
|
|
111
|
+
&& provenance.branch === binding.branch
|
|
112
|
+
&& provenance.baseSha.toLowerCase() === binding.baseSha.toLowerCase()
|
|
113
|
+
&& provenance.writeSet.length === binding.writeSet.length
|
|
114
|
+
&& provenance.writeSet.every((item, index) => item === binding.writeSet[index])
|
|
115
|
+
&& provenance.source === manager.source
|
|
116
|
+
&& provenance.recordedAt === manager.recordedAt;
|
|
117
|
+
}
|
|
118
|
+
export function createTaskRunWorktree(input) {
|
|
119
|
+
const stored = readStoredTaskRun(input.repoRoot, input.taskDir, input.runId);
|
|
120
|
+
if (stored.kernel.runs.at(-1)?.id !== stored.run.id || (stored.run.state !== "waiting" && stored.run.state !== "running")) {
|
|
121
|
+
throw new WorktreeManagerError("run-not-active", "Only the latest waiting or running Run can receive a managed worktree");
|
|
122
|
+
}
|
|
123
|
+
if (stored.run.workspace)
|
|
124
|
+
throw new WorktreeManagerError("workspace-already-bound", "Run already has a workspace binding; inspect it instead of replacing it");
|
|
125
|
+
let binding;
|
|
126
|
+
try {
|
|
127
|
+
const baseSha = resolveFrozenRunBase(input.repoRoot, input.baseRef, stored.run);
|
|
128
|
+
const identity = repoIdentity(input.repoRoot);
|
|
129
|
+
const existingOwner = readAllManagerProvenance(identity).find((item) => item.ownerRunId === input.runId);
|
|
130
|
+
if (existingOwner) {
|
|
131
|
+
throw new WorktreeManagerError("path-exists", "Run already has a preserved manager-owned checkout; use reconcile after verifying the Run credentials", existingOwner.canonicalPath);
|
|
132
|
+
}
|
|
133
|
+
binding = createRunWorktree({
|
|
134
|
+
repoRoot: input.repoRoot,
|
|
135
|
+
runId: input.runId,
|
|
136
|
+
branch: input.branch,
|
|
137
|
+
baseRef: baseSha,
|
|
138
|
+
writeSet: stored.run.writeSetSnapshot,
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
catch (error) {
|
|
142
|
+
recordWorkspaceClaimRefusal(input, "create", error);
|
|
143
|
+
throw error;
|
|
144
|
+
}
|
|
145
|
+
try {
|
|
146
|
+
const mutation = bindWorkspaceAtLatestRevision(input, binding);
|
|
147
|
+
return { binding, mutation };
|
|
148
|
+
}
|
|
149
|
+
catch {
|
|
150
|
+
const failure = new WorktreeManagerError("workspace-kernel-bind-failed", "The created checkout is preserved, but its Task Kernel bind failed; do not dispatch work until it is reconciled", binding.canonicalPath);
|
|
151
|
+
recordWorkspaceClaimRefusal(input, "create", failure);
|
|
152
|
+
throw failure;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
export function reconcileTaskRunWorktree(input) {
|
|
156
|
+
const stored = readStoredTaskRun(input.repoRoot, input.taskDir, input.runId);
|
|
157
|
+
if (stored.kernel.runs.at(-1)?.id !== stored.run.id || (stored.run.state !== "waiting" && stored.run.state !== "running")) {
|
|
158
|
+
throw new WorktreeManagerError("run-not-active", "Only the latest waiting or running Run can reconcile a managed worktree");
|
|
159
|
+
}
|
|
160
|
+
try {
|
|
161
|
+
if (stored.run.writeSetSnapshot.length === 0) {
|
|
162
|
+
throw new WorktreeManagerError("invalid-write-set", "A managed Run workspace requires a non-empty frozen write set");
|
|
163
|
+
}
|
|
164
|
+
if (stored.run.workspace) {
|
|
165
|
+
const provenance = readAllManagerProvenance(repoIdentity(input.repoRoot))
|
|
166
|
+
.find((item) => item.ownerRunId === input.runId);
|
|
167
|
+
if (!managerProvenanceMatchesBinding(provenance, stored.run.workspace)) {
|
|
168
|
+
throw new WorktreeManagerError("manager-provenance-invalid", "Bound Run workspace credentials do not match the persisted manager provenance", stored.run.workspace.canonicalPath);
|
|
169
|
+
}
|
|
170
|
+
const inspection = inspectRunWorktree({
|
|
171
|
+
repoRoot: input.repoRoot,
|
|
172
|
+
runId: input.runId,
|
|
173
|
+
runState: stored.run.state,
|
|
174
|
+
binding: stored.run.workspace,
|
|
175
|
+
});
|
|
176
|
+
if (inspection.issues.some((issue) => issue !== "unintegrated") || !inspection.headSha || inspection.dirty) {
|
|
177
|
+
throw new WorktreeManagerError("post-create-verification-failed", `Bound Run checkout is not safe to reconcile (${inspection.state})`, stored.run.workspace.canonicalPath);
|
|
178
|
+
}
|
|
179
|
+
return { binding: stored.run.workspace, mutation: null };
|
|
180
|
+
}
|
|
181
|
+
const binding = reconcileRunWorktree({
|
|
182
|
+
repoRoot: input.repoRoot,
|
|
183
|
+
runId: input.runId,
|
|
184
|
+
runState: stored.run.state,
|
|
185
|
+
baseSha: stored.run.candidateBaseSha ?? "",
|
|
186
|
+
writeSet: stored.run.writeSetSnapshot,
|
|
187
|
+
});
|
|
188
|
+
const provenance = readAllManagerProvenance(repoIdentity(input.repoRoot))
|
|
189
|
+
.find((item) => item.ownerRunId === input.runId);
|
|
190
|
+
if (!provenance)
|
|
191
|
+
throw new WorktreeManagerError("manager-provenance-invalid", "No manager provenance is available to reconcile this Run");
|
|
192
|
+
let mutation;
|
|
193
|
+
try {
|
|
194
|
+
mutation = bindWorkspaceAtLatestRevision(input, binding);
|
|
195
|
+
}
|
|
196
|
+
catch {
|
|
197
|
+
throw new WorktreeManagerError("workspace-kernel-bind-failed", "The preserved manager checkout could not be rebound to this Run", binding.canonicalPath);
|
|
198
|
+
}
|
|
199
|
+
return { binding, mutation };
|
|
200
|
+
}
|
|
201
|
+
catch (error) {
|
|
202
|
+
recordWorkspaceClaimRefusal(input, "reconcile", error);
|
|
203
|
+
throw error;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
export function adoptTaskRunWorktree(input) {
|
|
207
|
+
const stored = readStoredTaskRun(input.repoRoot, input.taskDir, input.runId);
|
|
208
|
+
if (stored.kernel.runs.at(-1)?.id !== stored.run.id || (stored.run.state !== "waiting" && stored.run.state !== "running")) {
|
|
209
|
+
throw new WorktreeManagerError("run-not-active", "Only the latest waiting or running Run can adopt a managed worktree");
|
|
210
|
+
}
|
|
211
|
+
if (stored.run.workspace)
|
|
212
|
+
throw new WorktreeManagerError("workspace-already-bound", "Run already has a workspace binding; inspect it instead of adopting another path");
|
|
213
|
+
let binding;
|
|
214
|
+
try {
|
|
215
|
+
const baseSha = resolveFrozenRunBase(input.repoRoot, input.baseSha, stored.run);
|
|
216
|
+
binding = adoptRunWorktree({
|
|
217
|
+
repoRoot: input.repoRoot,
|
|
218
|
+
runId: input.runId,
|
|
219
|
+
runState: stored.run.state,
|
|
220
|
+
canonicalPath: input.canonicalPath,
|
|
221
|
+
branch: input.branch,
|
|
222
|
+
baseSha,
|
|
223
|
+
writeSet: stored.run.writeSetSnapshot,
|
|
224
|
+
authorization: input.authorization,
|
|
225
|
+
});
|
|
226
|
+
}
|
|
227
|
+
catch (error) {
|
|
228
|
+
recordWorkspaceClaimRefusal(input, "adopt", error);
|
|
229
|
+
throw error;
|
|
230
|
+
}
|
|
231
|
+
try {
|
|
232
|
+
const mutation = bindWorkspaceAtLatestRevision(input, binding);
|
|
233
|
+
return { binding, mutation };
|
|
234
|
+
}
|
|
235
|
+
catch {
|
|
236
|
+
const failure = new WorktreeManagerError("workspace-kernel-bind-failed", "The adopted checkout is preserved, but its Task Kernel bind failed; do not dispatch work until it is reconciled", binding.canonicalPath);
|
|
237
|
+
recordWorkspaceClaimRefusal(input, "adopt", failure);
|
|
238
|
+
throw failure;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
export function integrateTaskRunWorktree(input) {
|
|
242
|
+
const stored = readStoredTaskRun(input.repoRoot, input.taskDir, input.runId);
|
|
243
|
+
const { workspace, result, candidateSnapshot } = stored.run;
|
|
244
|
+
if (!workspace?.manager || !result || !candidateSnapshot) {
|
|
245
|
+
throw new WorktreeManagerError("workspace-not-manager-owned", "Integration requires a manager-owned workspace and preserved Run candidate/result");
|
|
246
|
+
}
|
|
247
|
+
const verified = verifyWorktreeIntegration({
|
|
248
|
+
repoRoot: input.repoRoot,
|
|
249
|
+
runId: input.runId,
|
|
250
|
+
runState: stored.run.state,
|
|
251
|
+
binding: workspace,
|
|
252
|
+
targetRef: input.targetRef,
|
|
253
|
+
result: {
|
|
254
|
+
runId: input.runId,
|
|
255
|
+
summary: result.summary,
|
|
256
|
+
evidenceRefs: result.evidenceRefs,
|
|
257
|
+
candidateSnapshotId: candidateSnapshot.id,
|
|
258
|
+
candidateFingerprint: candidateSnapshot.fingerprint,
|
|
259
|
+
},
|
|
260
|
+
});
|
|
261
|
+
const receipt = { ...verified.receipt, candidateSnapshotId: candidateSnapshot.id, candidateFingerprint: candidateSnapshot.fingerprint };
|
|
262
|
+
const mutation = recordTaskRunWorkspaceIntegration({
|
|
263
|
+
root: input.repoRoot,
|
|
264
|
+
taskDir: input.taskDir,
|
|
265
|
+
expectedRevision: stored.kernel.revision,
|
|
266
|
+
runId: input.runId,
|
|
267
|
+
receipt,
|
|
268
|
+
actor: input.actor,
|
|
269
|
+
idempotencyKey: input.idempotencyKey,
|
|
270
|
+
});
|
|
271
|
+
const run = mutation.kernel.runs.find((item) => item.id === input.runId);
|
|
272
|
+
if (!run?.workspace)
|
|
273
|
+
throw new WorktreeManagerError("integration-persist-failed", "The verified integration receipt was not present in the returned Task Kernel");
|
|
274
|
+
return { binding: run.workspace, receipt, mutation };
|
|
275
|
+
}
|
|
276
|
+
//# sourceMappingURL=run-workspace-lifecycle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-workspace-lifecycle.js","sourceRoot":"","sources":["../../../src/pactile/worktree/run-workspace-lifecycle.ts"],"names":[],"mappings":"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"}
|
package/dist/templates/common/bundled-skills/pactile-meta/references/customize-local/change-hooks.md
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
|
|
3
3
|
Inspect actual project configuration and host readiness first. A hook file or declaration is not evidence that an event fired. Change only an owned, validated native binding and verify the resulting behavior in a test session.
|
|
4
4
|
|
|
5
|
-
Keep personal host settings and credentials outside Pactile templates.
|
|
5
|
+
Keep personal host settings and credentials outside Pactile templates. Add hook registrations only when the active host integration explicitly supports them.
|
|
@@ -4,4 +4,4 @@ A new `pactile init --codex` prepares canonical framework files under `.pactile/
|
|
|
4
4
|
|
|
5
5
|
`.pactile/spec/`, tasks, workspace notes, and personal host settings are user-owned. `pactile update` reviews modified framework files before replacing them and does not treat a directory's existence as ownership.
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Files from older host integrations may remain in upgraded projects. The active adapter does not refresh them; review the ownership ledger before cleanup.
|
|
@@ -4,4 +4,4 @@ A Pactile project may include a native Codex project binding when the host repor
|
|
|
4
4
|
|
|
5
5
|
Canonical task state lives in `.pactile/`. Check the ownership ledger and current project files before changing any hook or setting. Keep credentials and personal host configuration outside product templates.
|
|
6
6
|
|
|
7
|
-
The active install path does not
|
|
7
|
+
The active install path does not create host hook registries or scripts. Existing host configuration remains outside the managed projection unless an explicit reviewed plan adopts it.
|
package/dist/templates/common/bundled-skills/pactile-meta/references/platform-files/overview.md
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
|
|
3
3
|
Pactile stores canonical workflow, tasks, and runtime state in `.pactile/`. The active adapter projects managed instructions into `AGENTS.md` and shared Skills into `.agents/skills/`. Optional native Codex configuration is projected only when the host reports support and a reviewed plan supplies its binding.
|
|
4
4
|
|
|
5
|
-
Inspect the project's ownership ledger before changing a generated file. Existing user content is not a template to overwrite.
|
|
5
|
+
Inspect the project's ownership ledger before changing a generated file. Existing user content is not a template to overwrite. Files created by older host integrations remain user data unless the ledger proves Pactile ownership.
|
package/dist/templates/common/bundled-skills/pactile-meta/references/platform-files/platform-map.md
CHANGED
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
| --- | --- | --- |
|
|
5
5
|
| Codex desktop | `--codex` | `AGENTS.md`, `.agents/skills/`, and optional native project configuration |
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
The current host integration is Codex. Pactile reports readiness before writing optional native bindings.
|
|
8
8
|
|
|
9
9
|
Check actual files and `pactile capability-smoke --json` before assuming a native hook, MCP server, or plugin is active. `pactile codex` prepares native desktop task requests and records host-reported receipts; project files alone do not dispatch another task.
|
|
@@ -5,6 +5,8 @@ description: CLI-first web research and source retrieval through the local smart
|
|
|
5
5
|
|
|
6
6
|
# Smart Search CLI
|
|
7
7
|
|
|
8
|
+
This workflow requires the separate Smart Search Middleware CLI to be installed and configured on the user's PATH. Pactile does not bundle or install `smart-search`; its prerequisites are managed independently from Pactile's Node.js runtime.
|
|
9
|
+
|
|
8
10
|
Use the local `smart-search` command as the default execution layer for web research. The skill decides routing; the CLI performs the work; JSON or saved files provide evidence.
|
|
9
11
|
|
|
10
12
|
## Default workflow
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
## Non-Negotiable Interview Contract
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Ask only about unresolved **blocking** product decisions that could change the requirements or acceptance criteria. Use repository evidence for factual questions, give a recommendation for each blocking question, and stop asking once no blocking questions remain.
|
|
6
6
|
|
|
7
7
|
Ask the questions one at a time.
|
|
8
8
|
|
|
@@ -40,7 +40,7 @@ Among competing designs that satisfy the acceptance criteria, prefer the one wit
|
|
|
40
40
|
|
|
41
41
|
Use this skill during Phase 1 planning to turn the user's request into clear requirements and planning artifacts.
|
|
42
42
|
|
|
43
|
-
**Agent-capable platforms:** Do **not** use legacy Claude-only grill subagents as a hard gate.
|
|
43
|
+
**Agent-capable platforms:** Do **not** use legacy Claude-only grill subagents as a hard gate. PRD Grill is an optional planning aid; a Lite task with a clear, testable PRD and acceptance criteria may skip it. Regardless of whether Grill runs, resolve blocking open questions with **`pactile-micro-grill`** before treating planning as ready for `design.md` / `implement.md` / `start-execution --check`.
|
|
44
44
|
|
|
45
45
|
## Preconditions
|
|
46
46
|
|
|
@@ -61,7 +61,7 @@ Use a concise title from the user's request. Use a slug without a date prefix. `
|
|
|
61
61
|
| Phase | Name | User questions |
|
|
62
62
|
| --- | --- | --- |
|
|
63
63
|
| **A** | Discovery Before Questions + PRD draft | None until repo evidence is exhausted |
|
|
64
|
-
| **B** | PRD Grill
|
|
64
|
+
| **B** | Optional PRD Grill + Micro-grill for blocking questions | Only blocking business / risk / preference |
|
|
65
65
|
|
|
66
66
|
External facts during Discovery or Research: load `smart-search-cli`; on CLI/doctor failure use an available web tool and persist its exact source under `{TASK}/research/`.
|
|
67
67
|
|
|
@@ -94,11 +94,11 @@ After Discovery, flesh out `prd.md`:
|
|
|
94
94
|
- out of scope
|
|
95
95
|
- open questions (tag **blocking** vs **nice-to-have**)
|
|
96
96
|
|
|
97
|
-
For complex tasks, start `
|
|
97
|
+
For complex tasks, start the `implement.md` skeleton when boundaries are clear from Discovery. Add `design.md` only when Risk/Policy or `verification_profile: architecture` requires it; if boundaries are unclear, resolve blocking questions before drafting the artifacts.
|
|
98
98
|
|
|
99
|
-
## Phase B — PRD Grill pass
|
|
99
|
+
## Phase B — Optional PRD Grill pass
|
|
100
100
|
|
|
101
|
-
|
|
101
|
+
When PRD Grill is selected as useful (often within a triggered `define-extended` path), treat `prd.md` (+ existing `design.md` fragments) as the **only document surface**. Run this checklist; fix the PRD in place (no new subagent). A Lite task with clear, testable PRD and acceptance criteria may skip this pass:
|
|
102
102
|
|
|
103
103
|
| # | Check |
|
|
104
104
|
| --- | --- |
|
|
@@ -119,7 +119,7 @@ Treat `prd.md` (+ existing `design.md` fragments) as the **only document surface
|
|
|
119
119
|
|
|
120
120
|
## Phase B — Micro-grill unresolved
|
|
121
121
|
|
|
122
|
-
|
|
122
|
+
Use the **`pactile-micro-grill` contract** for every **blocking** open question identified during repository evidence, PRD drafting, or an optional PRD Grill pass. This applies whether or not PRD Grill runs:
|
|
123
123
|
|
|
124
124
|
- exactly **one** question per message
|
|
125
125
|
- **Simplified Chinese** for user-facing text
|
|
@@ -165,7 +165,7 @@ Your recommended answer defaults to Occam's Razor: the **minimal sufficient** op
|
|
|
165
165
|
- out of scope
|
|
166
166
|
- open questions that still block planning
|
|
167
167
|
|
|
168
|
-
`design.md` records technical design
|
|
168
|
+
`design.md` records technical design when Risk/Policy or `verification_profile: architecture` requires it:
|
|
169
169
|
|
|
170
170
|
- architecture and boundaries
|
|
171
171
|
- data flow and contracts
|
|
@@ -181,20 +181,26 @@ Your recommended answer defaults to Occam's Razor: the **minimal sufficient** op
|
|
|
181
181
|
- **Development Strategy Contract** (`execution_mode`, `isolation`, …): choose the execution and isolation strategy from the actual scope, then record the approved YAML block in `implement.md`.
|
|
182
182
|
- follow-up checks before `pactile task start-execution --check`
|
|
183
183
|
|
|
184
|
-
Lightweight tasks may have only `prd.md`. Complex tasks must have `prd.md
|
|
184
|
+
Lightweight tasks may have only `prd.md`. Complex tasks must have `prd.md` and `implement.md` before `pactile task start-execution --check`; include `design.md` only when Risk/Policy or `verification_profile: architecture` requires it.
|
|
185
185
|
|
|
186
186
|
`implement.md` is not a replacement for `implement.jsonl`. Use JSONL files only for manifest-style spec and research references when the task needs them.
|
|
187
187
|
|
|
188
|
-
## Completion criteria —
|
|
188
|
+
## Completion criteria — planning ready
|
|
189
189
|
|
|
190
|
-
Planning is ready for execution gate when
|
|
190
|
+
Planning is ready for the execution gate when all baseline criteria hold:
|
|
191
191
|
|
|
192
|
-
- PRD Grill checklist (14 items) satisfied or explicitly N/A with rationale in `prd.md`
|
|
193
192
|
- **No blocking** open questions in `prd.md`
|
|
194
193
|
- Acceptance criteria are testable; out of scope is explicit
|
|
195
|
-
- Complex tasks: `
|
|
194
|
+
- Complex tasks: `implement.md` present; `design.md` only when Risk/Policy or `verification_profile: architecture` requires it
|
|
196
195
|
- User reviewed artifacts or explicitly approved proceeding
|
|
197
196
|
|
|
197
|
+
If PRD Grill ran, also require:
|
|
198
|
+
|
|
199
|
+
- PRD Grill checklist (14 items) satisfied or explicitly N/A with rationale in `prd.md`
|
|
200
|
+
- Stop rule met (**AC 歧义面 = 0**); not measured by question count
|
|
201
|
+
|
|
202
|
+
A Lite path that skips Grill follows the baseline criteria without a Grill-specific checklist requirement.
|
|
203
|
+
|
|
198
204
|
Then proceed to Phase 1.2 Research (if needed), Phase 1.4 `pactile task start-execution --check`, and implementation only after user approval.
|
|
199
205
|
|
|
200
206
|
Do not start implementation until the user approves or asks for implementation.
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
|
|
4
4
|
This project is managed by pactile. Working knowledge is pointers, not a playbook:
|
|
5
5
|
|
|
6
|
-
- `.pactile/framework/index.md` — framework docs (gates,
|
|
7
|
-
- `.pactile/workflow.md` —
|
|
6
|
+
- `.pactile/framework/index.md` — framework docs (lifecycle gates, critical-path scheduling, isolation, retrieval, skills)
|
|
7
|
+
- `.pactile/workflow.md` — Task/Run/Review overview (not runtime SSOT)
|
|
8
8
|
- `docs/` — harness docs
|
|
9
9
|
|
|
10
10
|
User commands: `pactile-continue`, `pactile-finish-work`, `pactile-handoff` (and `pactile-start` when needed).
|
|
@@ -7,7 +7,7 @@ Choose who implements and checks, and where edits happen, before freezing `imple
|
|
|
7
7
|
| `execution_mode` | `inline` for the current task, `worker` for an independent task, or `child-task` for a task with a parent |
|
|
8
8
|
| `isolation` | `main-worktree` or `git-worktree` |
|
|
9
9
|
|
|
10
|
-
Codex desktop planning, Execute, and review tasks use native cross-task messaging with `pactile codex` request/receipt records. Execute requires recorded approval and a project worktree. The desktop task must invoke its native tool; the Node CLI cannot invoke App tools by itself. Pi implementation workers use `pactile pi run` after execution approval. Parent batches can use `pactile parallel run <parent> --manifest <file
|
|
10
|
+
Codex desktop planning, Execute, and review tasks use native cross-task messaging with `pactile codex` request/receipt records. Execute requires recorded approval and a project worktree. The desktop task must invoke its native tool; the Node CLI cannot invoke App tools by itself. Pi implementation workers use `pactile pi run` after execution approval. Parent batches can use `pactile parallel run <parent> --manifest <file>`; the scheduler chooses waves from hard dependencies, expected completion-time savings, and write-set conflicts, without a fixed task-count limit. Overlapping writes run serially unless the exact Task pair has recorded authorization and an integration plan. Parent integration remains serial. Pactile does not dispatch Codex subagents. See `codex-worker-dispatch.md`.
|
|
11
11
|
|
|
12
12
|
The execution strategy is documented in `implement.md`. Review it against the task scope before running `pactile task start-execution <task> --check`; the Node CLI checks the transition without changing approval state.
|
|
13
13
|
|