@slope-dev/slope 1.64.1 → 2.0.0
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 +4 -0
- package/dist/cli/commands/agent.d.ts +3 -3
- package/dist/cli/commands/agent.d.ts.map +1 -1
- package/dist/cli/commands/agent.js +20 -12
- package/dist/cli/commands/agent.js.map +1 -1
- package/dist/cli/commands/auto-card.d.ts +2 -1
- package/dist/cli/commands/auto-card.d.ts.map +1 -1
- package/dist/cli/commands/auto-card.js +7 -7
- package/dist/cli/commands/auto-card.js.map +1 -1
- package/dist/cli/commands/briefing.d.ts.map +1 -1
- package/dist/cli/commands/briefing.js +16 -9
- package/dist/cli/commands/briefing.js.map +1 -1
- package/dist/cli/commands/claim.d.ts.map +1 -1
- package/dist/cli/commands/claim.js +6 -4
- package/dist/cli/commands/claim.js.map +1 -1
- package/dist/cli/commands/commit-ready.d.ts.map +1 -1
- package/dist/cli/commands/commit-ready.js.map +1 -1
- package/dist/cli/commands/context.d.ts.map +1 -1
- package/dist/cli/commands/context.js +2 -1
- package/dist/cli/commands/context.js.map +1 -1
- package/dist/cli/commands/dashboard.d.ts.map +1 -1
- package/dist/cli/commands/dashboard.js +3 -3
- package/dist/cli/commands/dashboard.js.map +1 -1
- package/dist/cli/commands/distill.d.ts.map +1 -1
- package/dist/cli/commands/distill.js +8 -20
- package/dist/cli/commands/distill.js.map +1 -1
- package/dist/cli/commands/enrich.d.ts.map +1 -1
- package/dist/cli/commands/enrich.js +2 -1
- package/dist/cli/commands/enrich.js.map +1 -1
- package/dist/cli/commands/escalate.d.ts.map +1 -1
- package/dist/cli/commands/escalate.js +11 -3
- package/dist/cli/commands/escalate.js.map +1 -1
- package/dist/cli/commands/extract.d.ts.map +1 -1
- package/dist/cli/commands/extract.js +20 -6
- package/dist/cli/commands/extract.js.map +1 -1
- package/dist/cli/commands/gate.d.ts.map +1 -1
- package/dist/cli/commands/gate.js +10 -7
- package/dist/cli/commands/gate.js.map +1 -1
- package/dist/cli/commands/index-cmd.d.ts.map +1 -1
- package/dist/cli/commands/index-cmd.js +2 -1
- package/dist/cli/commands/index-cmd.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +26 -12
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/initiative.d.ts.map +1 -1
- package/dist/cli/commands/initiative.js +9 -8
- package/dist/cli/commands/initiative.js.map +1 -1
- package/dist/cli/commands/inspirations.js +5 -5
- package/dist/cli/commands/inspirations.js.map +1 -1
- package/dist/cli/commands/interview.d.ts.map +1 -1
- package/dist/cli/commands/interview.js +2 -2
- package/dist/cli/commands/interview.js.map +1 -1
- package/dist/cli/commands/issue.d.ts.map +1 -1
- package/dist/cli/commands/issue.js +6 -9
- package/dist/cli/commands/issue.js.map +1 -1
- package/dist/cli/commands/map.d.ts +1 -1
- package/dist/cli/commands/map.d.ts.map +1 -1
- package/dist/cli/commands/map.js +34 -10
- package/dist/cli/commands/map.js.map +1 -1
- package/dist/cli/commands/next.js +2 -2
- package/dist/cli/commands/next.js.map +1 -1
- package/dist/cli/commands/now.d.ts +2 -2
- package/dist/cli/commands/now.d.ts.map +1 -1
- package/dist/cli/commands/now.js +23 -15
- package/dist/cli/commands/now.js.map +1 -1
- package/dist/cli/commands/pr.d.ts +3 -3
- package/dist/cli/commands/pr.d.ts.map +1 -1
- package/dist/cli/commands/pr.js +9 -8
- package/dist/cli/commands/pr.js.map +1 -1
- package/dist/cli/commands/prep.d.ts.map +1 -1
- package/dist/cli/commands/prep.js +2 -1
- package/dist/cli/commands/prep.js.map +1 -1
- package/dist/cli/commands/release.d.ts.map +1 -1
- package/dist/cli/commands/release.js +9 -11
- package/dist/cli/commands/release.js.map +1 -1
- package/dist/cli/commands/retro.d.ts +1 -1
- package/dist/cli/commands/retro.d.ts.map +1 -1
- package/dist/cli/commands/retro.js +35 -11
- package/dist/cli/commands/retro.js.map +1 -1
- package/dist/cli/commands/review-packet.d.ts +2 -2
- package/dist/cli/commands/review-packet.d.ts.map +1 -1
- package/dist/cli/commands/review-packet.js +3 -3
- package/dist/cli/commands/review-packet.js.map +1 -1
- package/dist/cli/commands/review-run.d.ts +3 -2
- package/dist/cli/commands/review-run.d.ts.map +1 -1
- package/dist/cli/commands/review-run.js +4 -4
- package/dist/cli/commands/review-run.js.map +1 -1
- package/dist/cli/commands/review-state.d.ts.map +1 -1
- package/dist/cli/commands/review-state.js +57 -30
- package/dist/cli/commands/review-state.js.map +1 -1
- package/dist/cli/commands/review.js +6 -6
- package/dist/cli/commands/review.js.map +1 -1
- package/dist/cli/commands/roadmap.d.ts.map +1 -1
- package/dist/cli/commands/roadmap.js +138 -78
- package/dist/cli/commands/roadmap.js.map +1 -1
- package/dist/cli/commands/session.d.ts.map +1 -1
- package/dist/cli/commands/session.js +47 -16
- package/dist/cli/commands/session.js.map +1 -1
- package/dist/cli/commands/sprint-plan.d.ts.map +1 -1
- package/dist/cli/commands/sprint-plan.js +10 -8
- package/dist/cli/commands/sprint-plan.js.map +1 -1
- package/dist/cli/commands/sprint.d.ts.map +1 -1
- package/dist/cli/commands/sprint.js +253 -38
- package/dist/cli/commands/sprint.js.map +1 -1
- package/dist/cli/commands/standup.d.ts.map +1 -1
- package/dist/cli/commands/standup.js +9 -4
- package/dist/cli/commands/standup.js.map +1 -1
- package/dist/cli/commands/start.js +2 -2
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/commands/stats.d.ts +4 -4
- package/dist/cli/commands/stats.d.ts.map +1 -1
- package/dist/cli/commands/stats.js +5 -5
- package/dist/cli/commands/stats.js.map +1 -1
- package/dist/cli/commands/status.d.ts +1 -1
- package/dist/cli/commands/status.d.ts.map +1 -1
- package/dist/cli/commands/status.js +12 -8
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/commands/store.d.ts +37 -0
- package/dist/cli/commands/store.d.ts.map +1 -1
- package/dist/cli/commands/store.js +262 -12
- package/dist/cli/commands/store.js.map +1 -1
- package/dist/cli/commands/ticket.d.ts.map +1 -1
- package/dist/cli/commands/ticket.js +4 -4
- package/dist/cli/commands/ticket.js.map +1 -1
- package/dist/cli/commands/tournament.d.ts.map +1 -1
- package/dist/cli/commands/tournament.js +7 -6
- package/dist/cli/commands/tournament.js.map +1 -1
- package/dist/cli/commands/validate.d.ts +4 -3
- package/dist/cli/commands/validate.d.ts.map +1 -1
- package/dist/cli/commands/validate.js +37 -10
- package/dist/cli/commands/validate.js.map +1 -1
- package/dist/cli/commands/version.d.ts +1 -1
- package/dist/cli/commands/version.d.ts.map +1 -1
- package/dist/cli/commands/version.js +13 -10
- package/dist/cli/commands/version.js.map +1 -1
- package/dist/cli/commands/worktree.d.ts.map +1 -1
- package/dist/cli/commands/worktree.js +36 -31
- package/dist/cli/commands/worktree.js.map +1 -1
- package/dist/cli/guards/claim-required.d.ts.map +1 -1
- package/dist/cli/guards/claim-required.js +2 -3
- package/dist/cli/guards/claim-required.js.map +1 -1
- package/dist/cli/guards/compaction.d.ts.map +1 -1
- package/dist/cli/guards/git-utils.d.ts +5 -0
- package/dist/cli/guards/git-utils.d.ts.map +1 -1
- package/dist/cli/guards/git-utils.js +36 -8
- package/dist/cli/guards/git-utils.js.map +1 -1
- package/dist/cli/guards/hazard.d.ts.map +1 -1
- package/dist/cli/guards/hazard.js +8 -7
- package/dist/cli/guards/hazard.js.map +1 -1
- package/dist/cli/guards/next-action.d.ts +5 -5
- package/dist/cli/guards/next-action.d.ts.map +1 -1
- package/dist/cli/guards/next-action.js +8 -8
- package/dist/cli/guards/next-action.js.map +1 -1
- package/dist/cli/guards/phase-boundary.d.ts.map +1 -1
- package/dist/cli/guards/phase-boundary.js +24 -14
- package/dist/cli/guards/phase-boundary.js.map +1 -1
- package/dist/cli/guards/post-hole-enforcement.d.ts.map +1 -1
- package/dist/cli/guards/post-hole-enforcement.js +9 -8
- package/dist/cli/guards/post-hole-enforcement.js.map +1 -1
- package/dist/cli/guards/post-push.d.ts.map +1 -1
- package/dist/cli/guards/post-push.js +7 -3
- package/dist/cli/guards/post-push.js.map +1 -1
- package/dist/cli/guards/review-stale.d.ts.map +1 -1
- package/dist/cli/guards/review-stale.js +6 -4
- package/dist/cli/guards/review-stale.js.map +1 -1
- package/dist/cli/guards/review-tier.d.ts.map +1 -1
- package/dist/cli/guards/review-tier.js +6 -7
- package/dist/cli/guards/review-tier.js.map +1 -1
- package/dist/cli/guards/roadmap-edit-shipped.d.ts.map +1 -1
- package/dist/cli/guards/roadmap-edit-shipped.js +34 -21
- package/dist/cli/guards/roadmap-edit-shipped.js.map +1 -1
- package/dist/cli/guards/scope-drift.d.ts.map +1 -1
- package/dist/cli/guards/scope-drift.js +2 -1
- package/dist/cli/guards/scope-drift.js.map +1 -1
- package/dist/cli/guards/session-briefing.d.ts.map +1 -1
- package/dist/cli/guards/session-briefing.js +34 -13
- package/dist/cli/guards/session-briefing.js.map +1 -1
- package/dist/cli/guards/sprint-completion.d.ts.map +1 -1
- package/dist/cli/guards/sprint-completion.js +32 -16
- package/dist/cli/guards/sprint-completion.js.map +1 -1
- package/dist/cli/guards/stop-check.d.ts.map +1 -1
- package/dist/cli/guards/stop-check.js +8 -10
- package/dist/cli/guards/stop-check.js.map +1 -1
- package/dist/cli/guards/transcript.d.ts.map +1 -1
- package/dist/cli/guards/transcript.js +2 -1
- package/dist/cli/guards/transcript.js.map +1 -1
- package/dist/cli/guards/workflow-step-gate.d.ts.map +1 -1
- package/dist/cli/guards/workflow-step-gate.js +25 -28
- package/dist/cli/guards/workflow-step-gate.js.map +1 -1
- package/dist/cli/guards/worktree-check.d.ts.map +1 -1
- package/dist/cli/guards/worktree-check.js +38 -13
- package/dist/cli/guards/worktree-check.js.map +1 -1
- package/dist/cli/hooks-config.d.ts.map +1 -1
- package/dist/cli/hooks-config.js +6 -4
- package/dist/cli/hooks-config.js.map +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/loop/executor.d.ts +1 -0
- package/dist/cli/loop/executor.d.ts.map +1 -1
- package/dist/cli/loop/executor.js +20 -13
- package/dist/cli/loop/executor.js.map +1 -1
- package/dist/cli/loop/pr-lifecycle.d.ts +2 -1
- package/dist/cli/loop/pr-lifecycle.d.ts.map +1 -1
- package/dist/cli/loop/pr-lifecycle.js +14 -8
- package/dist/cli/loop/pr-lifecycle.js.map +1 -1
- package/dist/cli/loop/worktree.d.ts.map +1 -1
- package/dist/cli/loop/worktree.js +1 -48
- package/dist/cli/loop/worktree.js.map +1 -1
- package/dist/cli/pr-closeout.d.ts +3 -2
- package/dist/cli/pr-closeout.d.ts.map +1 -1
- package/dist/cli/pr-closeout.js +14 -6
- package/dist/cli/pr-closeout.js.map +1 -1
- package/dist/cli/pr-review-state.d.ts +8 -7
- package/dist/cli/pr-review-state.d.ts.map +1 -1
- package/dist/cli/pr-review-state.js +3 -2
- package/dist/cli/pr-review-state.js.map +1 -1
- package/dist/cli/pre-sprint-reality.d.ts +4 -4
- package/dist/cli/pre-sprint-reality.d.ts.map +1 -1
- package/dist/cli/pre-sprint-reality.js +9 -2
- package/dist/cli/pre-sprint-reality.js.map +1 -1
- package/dist/cli/registries/api-registry.d.ts +2 -2
- package/dist/cli/registries/api-registry.d.ts.map +1 -1
- package/dist/cli/registries/api-registry.js +1 -1
- package/dist/cli/registries/api-registry.js.map +1 -1
- package/dist/cli/registries/file-registry.d.ts +3 -3
- package/dist/cli/registries/file-registry.d.ts.map +1 -1
- package/dist/cli/registries/file-registry.js +12 -2
- package/dist/cli/registries/file-registry.js.map +1 -1
- package/dist/cli/registries/index.d.ts +1 -1
- package/dist/cli/registries/index.d.ts.map +1 -1
- package/dist/cli/registries/index.js +2 -2
- package/dist/cli/registries/index.js.map +1 -1
- package/dist/cli/registry.d.ts.map +1 -1
- package/dist/cli/registry.js +4 -0
- package/dist/cli/registry.js.map +1 -1
- package/dist/cli/reviewer-agents.d.ts +2 -1
- package/dist/cli/reviewer-agents.d.ts.map +1 -1
- package/dist/cli/reviewer-agents.js.map +1 -1
- package/dist/cli/roadmap-source-migration.d.ts.map +1 -1
- package/dist/cli/roadmap-source-migration.js +15 -13
- package/dist/cli/roadmap-source-migration.js.map +1 -1
- package/dist/cli/roadmap-source-store.d.ts +4 -4
- package/dist/cli/roadmap-source-store.d.ts.map +1 -1
- package/dist/cli/roadmap-source-store.js +38 -32
- package/dist/cli/roadmap-source-store.js.map +1 -1
- package/dist/cli/session-heartbeat.d.ts +12 -0
- package/dist/cli/session-heartbeat.d.ts.map +1 -0
- package/dist/cli/session-heartbeat.js +46 -0
- package/dist/cli/session-heartbeat.js.map +1 -0
- package/dist/cli/session-scope.d.ts.map +1 -1
- package/dist/cli/session-scope.js +4 -16
- package/dist/cli/session-scope.js.map +1 -1
- package/dist/cli/session-state.js +5 -5
- package/dist/cli/session-state.js.map +1 -1
- package/dist/cli/sprint-inference.d.ts +5 -5
- package/dist/cli/sprint-inference.d.ts.map +1 -1
- package/dist/cli/sprint-inference.js +63 -33
- package/dist/cli/sprint-inference.js.map +1 -1
- package/dist/cli/sprint-resume.d.ts +7 -7
- package/dist/cli/sprint-resume.d.ts.map +1 -1
- package/dist/cli/sprint-resume.js +43 -21
- package/dist/cli/sprint-resume.js.map +1 -1
- package/dist/cli/sprint-rollover.d.ts +19 -19
- package/dist/cli/sprint-rollover.d.ts.map +1 -1
- package/dist/cli/sprint-rollover.js +116 -69
- package/dist/cli/sprint-rollover.js.map +1 -1
- package/dist/cli/sprint-state.d.ts +8 -6
- package/dist/cli/sprint-state.d.ts.map +1 -1
- package/dist/cli/sprint-state.js +39 -12
- package/dist/cli/sprint-state.js.map +1 -1
- package/dist/cli/store.d.ts.map +1 -1
- package/dist/cli/store.js +5 -3
- package/dist/cli/store.js.map +1 -1
- package/dist/cli/workflow-closeout.d.ts +11 -0
- package/dist/cli/workflow-closeout.d.ts.map +1 -0
- package/dist/cli/workflow-closeout.js +30 -0
- package/dist/cli/workflow-closeout.js.map +1 -0
- package/dist/cli/workflow-resync.d.ts +13 -9
- package/dist/cli/workflow-resync.d.ts.map +1 -1
- package/dist/cli/workflow-resync.js +75 -22
- package/dist/cli/workflow-resync.js.map +1 -1
- package/dist/core/advisor.d.ts.map +1 -1
- package/dist/core/advisor.js +5 -2
- package/dist/core/advisor.js.map +1 -1
- package/dist/core/analytics.d.ts +2 -2
- package/dist/core/analytics.d.ts.map +1 -1
- package/dist/core/analytics.js +4 -3
- package/dist/core/analytics.js.map +1 -1
- package/dist/core/analyzers/git.d.ts +3 -2
- package/dist/core/analyzers/git.d.ts.map +1 -1
- package/dist/core/analyzers/git.js +6 -5
- package/dist/core/analyzers/git.js.map +1 -1
- package/dist/core/briefing.d.ts +6 -5
- package/dist/core/briefing.d.ts.map +1 -1
- package/dist/core/briefing.js +52 -36
- package/dist/core/briefing.js.map +1 -1
- package/dist/core/builder.d.ts +3 -1
- package/dist/core/builder.d.ts.map +1 -1
- package/dist/core/builder.js +6 -4
- package/dist/core/builder.js.map +1 -1
- package/dist/core/config.d.ts +2 -1
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +26 -6
- package/dist/core/config.js.map +1 -1
- package/dist/core/dashboard.d.ts +2 -2
- package/dist/core/dashboard.d.ts.map +1 -1
- package/dist/core/dashboard.js +2 -1
- package/dist/core/dashboard.js.map +1 -1
- package/dist/core/deferred.d.ts +7 -6
- package/dist/core/deferred.d.ts.map +1 -1
- package/dist/core/deferred.js +30 -7
- package/dist/core/deferred.js.map +1 -1
- package/dist/core/enrich.d.ts +1 -1
- package/dist/core/escalation.d.ts +2 -1
- package/dist/core/escalation.d.ts.map +1 -1
- package/dist/core/escalation.js +3 -1
- package/dist/core/escalation.js.map +1 -1
- package/dist/core/event-ingestion.d.ts.map +1 -1
- package/dist/core/event-ingestion.js +8 -3
- package/dist/core/event-ingestion.js.map +1 -1
- package/dist/core/findings.d.ts +6 -4
- package/dist/core/findings.d.ts.map +1 -1
- package/dist/core/findings.js +30 -7
- package/dist/core/findings.js.map +1 -1
- package/dist/core/formatter.d.ts +2 -1
- package/dist/core/formatter.d.ts.map +1 -1
- package/dist/core/formatter.js.map +1 -1
- package/dist/core/generators/roadmap.js +2 -2
- package/dist/core/generators/roadmap.js.map +1 -1
- package/dist/core/index.d.ts +8 -5
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +4 -2
- package/dist/core/index.js.map +1 -1
- package/dist/core/initiative.d.ts +5 -4
- package/dist/core/initiative.d.ts.map +1 -1
- package/dist/core/initiative.js +39 -11
- package/dist/core/initiative.js.map +1 -1
- package/dist/core/inspirations.d.ts +4 -3
- package/dist/core/inspirations.d.ts.map +1 -1
- package/dist/core/inspirations.js +19 -4
- package/dist/core/inspirations.js.map +1 -1
- package/dist/core/interview-engine.d.ts +2 -1
- package/dist/core/interview-engine.d.ts.map +1 -1
- package/dist/core/interview-engine.js +26 -17
- package/dist/core/interview-engine.js.map +1 -1
- package/dist/core/interview-steps.d.ts.map +1 -1
- package/dist/core/interview-steps.js +7 -6
- package/dist/core/interview-steps.js.map +1 -1
- package/dist/core/interview.d.ts +2 -1
- package/dist/core/interview.d.ts.map +1 -1
- package/dist/core/interview.js +13 -7
- package/dist/core/interview.js.map +1 -1
- package/dist/core/issue-scout.d.ts +2 -1
- package/dist/core/issue-scout.d.ts.map +1 -1
- package/dist/core/issue-scout.js.map +1 -1
- package/dist/core/loader.d.ts +4 -4
- package/dist/core/loader.d.ts.map +1 -1
- package/dist/core/loader.js +71 -33
- package/dist/core/loader.js.map +1 -1
- package/dist/core/memory.d.ts.map +1 -1
- package/dist/core/memory.js +16 -6
- package/dist/core/memory.js.map +1 -1
- package/dist/core/org.d.ts +1 -1
- package/dist/core/org.d.ts.map +1 -1
- package/dist/core/org.js +2 -1
- package/dist/core/org.js.map +1 -1
- package/dist/core/pipeline.d.ts +1 -1
- package/dist/core/pipeline.d.ts.map +1 -1
- package/dist/core/pipeline.js +10 -6
- package/dist/core/pipeline.js.map +1 -1
- package/dist/core/player.d.ts.map +1 -1
- package/dist/core/player.js +2 -1
- package/dist/core/player.js.map +1 -1
- package/dist/core/prep.d.ts +3 -3
- package/dist/core/registry.d.ts +6 -2
- package/dist/core/registry.d.ts.map +1 -1
- package/dist/core/registry.js +2 -1
- package/dist/core/registry.js.map +1 -1
- package/dist/core/repo-state-scope.d.ts +27 -0
- package/dist/core/repo-state-scope.d.ts.map +1 -0
- package/dist/core/repo-state-scope.js +105 -0
- package/dist/core/repo-state-scope.js.map +1 -0
- package/dist/core/report.d.ts +1 -1
- package/dist/core/report.d.ts.map +1 -1
- package/dist/core/report.js +2 -1
- package/dist/core/report.js.map +1 -1
- package/dist/core/retro.d.ts +3 -2
- package/dist/core/retro.d.ts.map +1 -1
- package/dist/core/retro.js +6 -3
- package/dist/core/retro.js.map +1 -1
- package/dist/core/roadmap-focus.d.ts +8 -7
- package/dist/core/roadmap-focus.d.ts.map +1 -1
- package/dist/core/roadmap-focus.js +45 -34
- package/dist/core/roadmap-focus.js.map +1 -1
- package/dist/core/roadmap-migration.d.ts +2 -1
- package/dist/core/roadmap-migration.d.ts.map +1 -1
- package/dist/core/roadmap-migration.js +110 -51
- package/dist/core/roadmap-migration.js.map +1 -1
- package/dist/core/roadmap-source-patch.d.ts +2 -1
- package/dist/core/roadmap-source-patch.d.ts.map +1 -1
- package/dist/core/roadmap-source-patch.js +9 -4
- package/dist/core/roadmap-source-patch.js.map +1 -1
- package/dist/core/roadmap-sources.d.ts +2 -1
- package/dist/core/roadmap-sources.d.ts.map +1 -1
- package/dist/core/roadmap-sources.js +38 -26
- package/dist/core/roadmap-sources.js.map +1 -1
- package/dist/core/roadmap.d.ts +22 -16
- package/dist/core/roadmap.d.ts.map +1 -1
- package/dist/core/roadmap.js +152 -84
- package/dist/core/roadmap.js.map +1 -1
- package/dist/core/session-branch.d.ts +17 -0
- package/dist/core/session-branch.d.ts.map +1 -0
- package/dist/core/session-branch.js +85 -0
- package/dist/core/session-branch.js.map +1 -0
- package/dist/core/sprint-id.d.ts +13 -5
- package/dist/core/sprint-id.d.ts.map +1 -1
- package/dist/core/sprint-id.js +16 -0
- package/dist/core/sprint-id.js.map +1 -1
- package/dist/core/standup.d.ts +2 -1
- package/dist/core/standup.d.ts.map +1 -1
- package/dist/core/standup.js.map +1 -1
- package/dist/core/store.d.ts +16 -8
- package/dist/core/store.d.ts.map +1 -1
- package/dist/core/store.js +34 -0
- package/dist/core/store.js.map +1 -1
- package/dist/core/tournament.d.ts.map +1 -1
- package/dist/core/tournament.js +4 -3
- package/dist/core/tournament.js.map +1 -1
- package/dist/core/types.d.ts +9 -7
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/validation.d.ts +2 -1
- package/dist/core/validation.d.ts.map +1 -1
- package/dist/core/validation.js +2 -1
- package/dist/core/validation.js.map +1 -1
- package/dist/core/webhooks.d.ts +3 -2
- package/dist/core/webhooks.d.ts.map +1 -1
- package/dist/core/webhooks.js +9 -2
- package/dist/core/webhooks.js.map +1 -1
- package/dist/core/workflow-loader.d.ts.map +1 -1
- package/dist/core/workflow-loader.js +2 -1
- package/dist/core/workflow-loader.js.map +1 -1
- package/dist/mcp/index.d.ts +5 -1
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +97 -59
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/index.test.js +14 -3
- package/dist/mcp/index.test.js.map +1 -1
- package/dist/mcp/registry.d.ts +1 -1
- package/dist/mcp/registry.d.ts.map +1 -1
- package/dist/mcp/registry.js +36 -28
- package/dist/mcp/registry.js.map +1 -1
- package/dist/store/index.d.ts +13 -11
- package/dist/store/index.d.ts.map +1 -1
- package/dist/store/index.js +217 -36
- package/dist/store/index.js.map +1 -1
- package/dist/store-pg/index.d.ts +18 -12
- package/dist/store-pg/index.d.ts.map +1 -1
- package/dist/store-pg/index.js +124 -38
- package/dist/store-pg/index.js.map +1 -1
- package/package.json +1 -1
- package/templates/codex/plugins/slope/.codex-plugin/plugin.json +1 -1
|
@@ -2,7 +2,7 @@ import { execSync } from 'node:child_process';
|
|
|
2
2
|
import { existsSync, readFileSync, writeFileSync } from 'node:fs';
|
|
3
3
|
import { homedir } from 'node:os';
|
|
4
4
|
import { isAbsolute, join, resolve } from 'node:path';
|
|
5
|
-
import { formatSprintNumber,
|
|
5
|
+
import { findRoadmapSprint, formatSprintNumber, parseRoadmap, roadmapSprintKey, sprintIdKey, sprintIdsEqual, } from '../../core/index.js';
|
|
6
6
|
import { loadConfig } from '../config.js';
|
|
7
7
|
import { loadPrReviewState } from '../pr-review-state.js';
|
|
8
8
|
import { loadSprintState, loadSprintStateResult, mutateSprintState, updateGate, isSprintComplete, pendingGates } from '../sprint-state.js';
|
|
@@ -35,8 +35,8 @@ function checkStaleness(sprint, cwd) {
|
|
|
35
35
|
const branch = currentBranch(cwd);
|
|
36
36
|
if (branch) {
|
|
37
37
|
const branchSprint = inferSprintFromBranch(cwd);
|
|
38
|
-
if (branchSprint !== null && branchSprint
|
|
39
|
-
return `Warning: sprint-state is for Sprint ${formatSprintNumber(sprint)} but branch "${branch}" suggests Sprint ${
|
|
38
|
+
if (branchSprint !== null && !sprintIdsEqual(branchSprint, sprint)) {
|
|
39
|
+
return `Warning: sprint-state is for Sprint ${formatSprintNumber(sprint)} but branch "${branch}" suggests Sprint ${branchSprint}. Use audited sprint rollover; do not reset away the prior state.`;
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
42
|
// No sprint number in branch name — can't verify, don't warn
|
|
@@ -73,7 +73,7 @@ function handlePreToolUse(input, cwd) {
|
|
|
73
73
|
lineageError = error.message;
|
|
74
74
|
}
|
|
75
75
|
const branchSprint = inferSprintFromBranch(guardCwd);
|
|
76
|
-
if (branchSprint !== null && branchSprint
|
|
76
|
+
if (branchSprint !== null && !sprintIdsEqual(branchSprint, state.sprint)) {
|
|
77
77
|
let recovery;
|
|
78
78
|
try {
|
|
79
79
|
const assessment = inspectSprintRollover(guardCwd, { from: state.sprint, to: branchSprint });
|
|
@@ -99,7 +99,7 @@ function handlePreToolUse(input, cwd) {
|
|
|
99
99
|
decision: 'deny',
|
|
100
100
|
blockReason: [
|
|
101
101
|
'SLOPE sprint-completion: branch and sprint-state disagree; refusing automatic rebind.',
|
|
102
|
-
`State: Sprint ${formatSprintNumber(state.sprint)}; branch suggests Sprint ${
|
|
102
|
+
`State: Sprint ${formatSprintNumber(state.sprint)}; branch suggests Sprint ${branchSprint}.`,
|
|
103
103
|
...recovery,
|
|
104
104
|
].join('\n'),
|
|
105
105
|
};
|
|
@@ -433,20 +433,36 @@ function handleValidateSuccess(input, cwd) {
|
|
|
433
433
|
const raw = JSON.parse(readFileSync(roadmapPath, 'utf8'));
|
|
434
434
|
if (!raw || !Array.isArray(raw.sprints))
|
|
435
435
|
return {};
|
|
436
|
-
const
|
|
436
|
+
const parsed = parseRoadmap(raw).roadmap;
|
|
437
|
+
if (!parsed)
|
|
438
|
+
return {};
|
|
439
|
+
const parsedSprint = findRoadmapSprint(parsed, state.sprint);
|
|
440
|
+
if (!parsedSprint)
|
|
441
|
+
return {};
|
|
442
|
+
const sprintKey = roadmapSprintKey(parsed, parsedSprint);
|
|
443
|
+
const sprintIndex = parsed.sprints.indexOf(parsedSprint);
|
|
444
|
+
const sprint = raw.sprints[sprintIndex];
|
|
437
445
|
if (!sprint || sprint.status === 'complete')
|
|
438
446
|
return {};
|
|
439
447
|
sprint.status = 'complete';
|
|
440
448
|
// Also update phase status if all sprints in a phase are now complete
|
|
441
449
|
if (Array.isArray(raw.phases)) {
|
|
442
|
-
for (
|
|
443
|
-
|
|
450
|
+
for (let phaseIndex = 0; phaseIndex < parsed.phases.length; phaseIndex++) {
|
|
451
|
+
const parsedPhase = parsed.phases[phaseIndex];
|
|
452
|
+
const phaseKeys = (parsedPhase.sprint_keys ?? parsedPhase.sprints.map(String))
|
|
453
|
+
.map(id => findRoadmapSprint(parsed, id))
|
|
454
|
+
.filter((row) => row !== undefined)
|
|
455
|
+
.map(row => roadmapSprintKey(parsed, row));
|
|
456
|
+
if (!phaseKeys.includes(sprintKey))
|
|
444
457
|
continue;
|
|
445
|
-
const allComplete =
|
|
446
|
-
const
|
|
447
|
-
|
|
458
|
+
const allComplete = phaseKeys.every(key => {
|
|
459
|
+
const row = findRoadmapSprint(parsed, key);
|
|
460
|
+
if (!row)
|
|
461
|
+
return false;
|
|
462
|
+
return raw.sprints[parsed.sprints.indexOf(row)]?.status === 'complete';
|
|
448
463
|
});
|
|
449
|
-
|
|
464
|
+
const phase = raw.phases[phaseIndex];
|
|
465
|
+
if (allComplete && phase?.status !== 'complete') {
|
|
450
466
|
phase.status = 'complete';
|
|
451
467
|
}
|
|
452
468
|
}
|
|
@@ -461,14 +477,14 @@ function handleValidateSuccess(input, cwd) {
|
|
|
461
477
|
function reviewTargetSprint(segment, cwd) {
|
|
462
478
|
const selector = segment.match(/--sprint(?:=|\s+)(S?\d+(?:\.\d+)?)/i)?.[1];
|
|
463
479
|
if (selector)
|
|
464
|
-
return
|
|
480
|
+
return sprintIdKey(selector);
|
|
465
481
|
const pathMatch = segment.match(/\bslope\s+review\s+(?:"([^"]+)"|'([^']+)'|([^\s;&|]+))/);
|
|
466
482
|
const path = pathMatch?.[1] ?? pathMatch?.[2] ?? pathMatch?.[3];
|
|
467
483
|
if (!path || path.startsWith('-'))
|
|
468
484
|
return null;
|
|
469
485
|
try {
|
|
470
486
|
const raw = JSON.parse(readFileSync(isAbsolute(path) ? path : resolve(cwd, path), 'utf8'));
|
|
471
|
-
return
|
|
487
|
+
return sprintIdKey(String(raw.sprint_number ?? ''));
|
|
472
488
|
}
|
|
473
489
|
catch {
|
|
474
490
|
return null;
|
|
@@ -484,7 +500,7 @@ function handleReviewCompletion(input, cwd, segment) {
|
|
|
484
500
|
if (!state)
|
|
485
501
|
return {};
|
|
486
502
|
const targetSprint = reviewTargetSprint(segment, cwd);
|
|
487
|
-
if (targetSprint != null && targetSprint
|
|
503
|
+
if (targetSprint != null && !sprintIdsEqual(targetSprint, state.sprint)) {
|
|
488
504
|
return {
|
|
489
505
|
context: `SLOPE: Historical Sprint ${formatSprintNumber(targetSprint)} review generated — active Sprint ${formatSprintNumber(state.sprint)} review gate unchanged.`,
|
|
490
506
|
};
|
|
@@ -507,7 +523,7 @@ function handleReviewCompletion(input, cwd, segment) {
|
|
|
507
523
|
function missingPrReviewWarning(cwd, sprint) {
|
|
508
524
|
const branch = currentBranch(cwd);
|
|
509
525
|
const reviews = loadPrReviewState(cwd).reviews;
|
|
510
|
-
const matching = reviews.filter(review => review.sprint
|
|
526
|
+
const matching = reviews.filter(review => (review.sprint !== undefined && sprintIdsEqual(review.sprint, sprint))
|
|
511
527
|
|| (branch && review.branch === branch));
|
|
512
528
|
const closeoutPending = matching.find(review => review.status === 'reviewed' && review.closeout_status !== 'settled');
|
|
513
529
|
if (closeoutPending) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sprint-completion.js","sourceRoot":"","sources":["../../../src/cli/guards/sprint-completion.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sprint-completion.js","sourceRoot":"","sources":["../../../src/cli/guards/sprint-completion.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stop-check.d.ts","sourceRoot":"","sources":["../../../src/cli/guards/stop-check.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAyDlE,wBAAsB,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"stop-check.d.ts","sourceRoot":"","sources":["../../../src/cli/guards/stop-check.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAyDlE,wBAAsB,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAqKzF"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { execSync } from 'node:child_process';
|
|
2
2
|
import { existsSync, readFileSync, writeFileSync } from 'node:fs';
|
|
3
3
|
import { join } from 'node:path';
|
|
4
|
-
import { headIsOnMain, loadBaseline, removeBaseline } from './git-utils.js';
|
|
4
|
+
import { headIsOnMain, loadBaseline, parseGitStatusPorcelain, removeBaseline } from './git-utils.js';
|
|
5
5
|
import { resolveStore } from '../store.js';
|
|
6
6
|
import { resetWorktreeCheckState } from './worktree-check.js';
|
|
7
7
|
/**
|
|
@@ -80,20 +80,18 @@ export async function stopCheckGuard(_input, cwd) {
|
|
|
80
80
|
const warningIssues = [];
|
|
81
81
|
// Check for uncommitted changes (excluding gitignored files)
|
|
82
82
|
try {
|
|
83
|
-
const status = execSync('git status --porcelain', { cwd: gitDir, encoding: 'utf8', stdio: ['ignore', 'pipe', 'ignore'] })
|
|
84
|
-
|
|
85
|
-
|
|
83
|
+
const status = execSync('git status --porcelain=v1', { cwd: gitDir, encoding: 'utf8', stdio: ['ignore', 'pipe', 'ignore'] });
|
|
84
|
+
const entries = parseGitStatusPorcelain(status);
|
|
85
|
+
if (entries.length > 0) {
|
|
86
86
|
// Separate untracked (??) from modified/staged/deleted
|
|
87
87
|
const untrackedPaths = [];
|
|
88
88
|
const modifiedPaths = [];
|
|
89
|
-
for (const
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
if (statusCode === '??') {
|
|
93
|
-
untrackedPaths.push(path);
|
|
89
|
+
for (const entry of entries) {
|
|
90
|
+
if (entry.status === '??') {
|
|
91
|
+
untrackedPaths.push(entry.path);
|
|
94
92
|
}
|
|
95
93
|
else {
|
|
96
|
-
modifiedPaths.push(path);
|
|
94
|
+
modifiedPaths.push(entry.path);
|
|
97
95
|
}
|
|
98
96
|
}
|
|
99
97
|
// Filter out gitignored files from both lists
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stop-check.js","sourceRoot":"","sources":["../../../src/cli/guards/stop-check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"stop-check.js","sourceRoot":"","sources":["../../../src/cli/guards/stop-check.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcript.d.ts","sourceRoot":"","sources":["../../../src/cli/guards/transcript.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"transcript.d.ts","sourceRoot":"","sources":["../../../src/cli/guards/transcript.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AA2ClE;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CA2CzF"}
|
|
@@ -2,6 +2,7 @@ import { join } from 'node:path';
|
|
|
2
2
|
import { appendTurn } from '../../core/transcript.js';
|
|
3
3
|
import { loadConfig } from '../config.js';
|
|
4
4
|
import { resolveStore } from '../store.js';
|
|
5
|
+
import { reconcileSessionHeartbeat } from '../session-heartbeat.js';
|
|
5
6
|
/**
|
|
6
7
|
* Summarize tool_input params into a short string for the transcript.
|
|
7
8
|
*/
|
|
@@ -80,7 +81,7 @@ export async function transcriptGuard(input, cwd) {
|
|
|
80
81
|
try {
|
|
81
82
|
const store = await resolveStore(cwd);
|
|
82
83
|
try {
|
|
83
|
-
await store
|
|
84
|
+
await reconcileSessionHeartbeat(store, input.session_id, cwd);
|
|
84
85
|
}
|
|
85
86
|
finally {
|
|
86
87
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcript.js","sourceRoot":"","sources":["../../../src/cli/guards/transcript.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"transcript.js","sourceRoot":"","sources":["../../../src/cli/guards/transcript.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-step-gate.d.ts","sourceRoot":"","sources":["../../../src/cli/guards/workflow-step-gate.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAkC,MAAM,qBAAqB,CAAC;AAOlG;;;;GAIG;AACH,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"workflow-step-gate.d.ts","sourceRoot":"","sources":["../../../src/cli/guards/workflow-step-gate.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAkC,MAAM,qBAAqB,CAAC;AAOlG;;;;GAIG;AACH,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAgE/F"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { existsSync, realpathSync } from 'node:fs';
|
|
2
|
-
import { dirname, isAbsolute,
|
|
3
|
-
import {
|
|
2
|
+
import { dirname, isAbsolute, relative, resolve, sep } from 'node:path';
|
|
3
|
+
import { loadWorkflow, resolveRepoStatePath, sprintIdKey } from '../../core/index.js';
|
|
4
4
|
import { loadConfig } from '../config.js';
|
|
5
5
|
import { SqliteSlopeStore } from '../../store/index.js';
|
|
6
6
|
import { inferSprintContext } from '../sprint-inference.js';
|
|
@@ -18,7 +18,7 @@ export async function workflowStepGateGuard(input, cwd) {
|
|
|
18
18
|
if (targetPath && !isWithinRepo(cwd, targetPath))
|
|
19
19
|
return {};
|
|
20
20
|
const config = loadConfig(cwd);
|
|
21
|
-
const storePath =
|
|
21
|
+
const storePath = resolveRepoStatePath(cwd, config.store_path ?? '.slope/slope.db');
|
|
22
22
|
if (!existsSync(storePath))
|
|
23
23
|
return {};
|
|
24
24
|
// Note: opens SQLite on every invocation — heavier than file-based guards.
|
|
@@ -57,6 +57,7 @@ export async function workflowStepGateGuard(input, cwd) {
|
|
|
57
57
|
return {
|
|
58
58
|
decision: 'deny',
|
|
59
59
|
blockReason: [
|
|
60
|
+
`SLOPE workflow-step-gate: blocked by execution ${exec.id} for ${sprintLabelForExecution(exec)} (${exec.workflow_name}).`,
|
|
60
61
|
`SLOPE workflow-step-gate: Current step "${exec.current_step}" (phase: ${exec.current_phase}) is type "${stepType}", not "agent_work".`,
|
|
61
62
|
`File edits are only allowed during agent_work steps.`,
|
|
62
63
|
`Complete the current ${stepType} step first via \`slope sprint run\` or workflow MCP tools.`,
|
|
@@ -89,41 +90,38 @@ function isWithinRepo(cwd, path) {
|
|
|
89
90
|
}
|
|
90
91
|
}
|
|
91
92
|
function selectWorkflowExecution(active, input, cwd, config) {
|
|
92
|
-
const
|
|
93
|
+
const sprintLabel = sprintLabelForContext(cwd, config);
|
|
93
94
|
const sessionId = input.session_id?.trim();
|
|
94
|
-
if (
|
|
95
|
-
const
|
|
95
|
+
if (sprintLabel) {
|
|
96
|
+
const sprintExecutions = active.filter(exec => executionMatchesSprint(exec, sprintLabel));
|
|
97
|
+
const bySessionAndSprint = sessionId
|
|
98
|
+
? sprintExecutions.find(exec => exec.session_id === sessionId)
|
|
99
|
+
: undefined;
|
|
96
100
|
if (bySessionAndSprint)
|
|
97
101
|
return bySessionAndSprint;
|
|
102
|
+
return sprintExecutions.length === 1 ? sprintExecutions[0] : null;
|
|
98
103
|
}
|
|
99
|
-
|
|
100
|
-
const
|
|
101
|
-
if (
|
|
102
|
-
return
|
|
104
|
+
if (sessionId) {
|
|
105
|
+
const sessionExecutions = active.filter(exec => exec.session_id === sessionId);
|
|
106
|
+
if (sessionExecutions.length === 1)
|
|
107
|
+
return sessionExecutions[0];
|
|
103
108
|
}
|
|
104
|
-
if (sessionId && sprintLabels.length === 0) {
|
|
105
|
-
const bySession = active.find(exec => exec.session_id === sessionId);
|
|
106
|
-
if (bySession)
|
|
107
|
-
return bySession;
|
|
108
|
-
}
|
|
109
|
-
if (sprintLabels.length > 0)
|
|
110
|
-
return null;
|
|
111
109
|
return active.length === 1 ? active[0] : null;
|
|
112
110
|
}
|
|
113
|
-
function
|
|
114
|
-
|
|
115
|
-
const branchSprint = inferSprintFromBranch(cwd);
|
|
116
|
-
if (branchSprint !== null)
|
|
117
|
-
labels.add(formatSprintLabel(branchSprint));
|
|
111
|
+
function sprintLabelForContext(cwd, config) {
|
|
112
|
+
let inferred = null;
|
|
118
113
|
try {
|
|
119
|
-
|
|
120
|
-
if (inferred.source
|
|
121
|
-
|
|
114
|
+
inferred = inferSprintContext(cwd, config);
|
|
115
|
+
if (inferred.source === 'sprint-state' || inferred.source === 'config')
|
|
116
|
+
return inferred.label;
|
|
122
117
|
}
|
|
123
118
|
catch {
|
|
124
119
|
// Sprint inference is advisory for this guard; ambiguity should fail open.
|
|
125
120
|
}
|
|
126
|
-
|
|
121
|
+
const branchSprint = inferSprintFromBranch(cwd);
|
|
122
|
+
if (branchSprint !== null)
|
|
123
|
+
return `S${branchSprint}`;
|
|
124
|
+
return inferred && inferred.source !== 'initial' ? inferred.label : null;
|
|
127
125
|
}
|
|
128
126
|
function executionMatchesSprint(exec, label) {
|
|
129
127
|
return sprintIdsMatch(sprintLabelForExecution(exec), label);
|
|
@@ -136,8 +134,7 @@ function sprintIdsMatch(left, right) {
|
|
|
136
134
|
function normalizeSprintLabel(value) {
|
|
137
135
|
if (!value)
|
|
138
136
|
return null;
|
|
139
|
-
|
|
140
|
-
return parsed === null ? value.trim().toUpperCase() : formatSprintLabel(parsed).toUpperCase();
|
|
137
|
+
return sprintIdKey(value);
|
|
141
138
|
}
|
|
142
139
|
function noMatchingExecutionContext(active) {
|
|
143
140
|
if (active.length === 1) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-step-gate.js","sourceRoot":"","sources":["../../../src/cli/guards/workflow-step-gate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"workflow-step-gate.js","sourceRoot":"","sources":["../../../src/cli/guards/workflow-step-gate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree-check.d.ts","sourceRoot":"","sources":["../../../src/cli/guards/worktree-check.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"worktree-check.d.ts","sourceRoot":"","sources":["../../../src/cli/guards/worktree-check.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAyBlE,oDAAoD;AACpD,wBAAgB,uBAAuB,CAAC,SAAS,SAAK,GAAG,IAAI,CAK5D;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAyI5F"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { execFileSync } from 'node:child_process';
|
|
2
|
-
import { existsSync, writeFileSync, mkdirSync, unlinkSync } from 'node:fs';
|
|
3
|
-
import { isAbsolute, join, relative, resolve } from 'node:path';
|
|
2
|
+
import { existsSync, realpathSync, writeFileSync, mkdirSync, unlinkSync } from 'node:fs';
|
|
3
|
+
import { basename, dirname, isAbsolute, join, relative, resolve } from 'node:path';
|
|
4
4
|
import { tmpdir } from 'node:os';
|
|
5
5
|
import { createHash } from 'node:crypto';
|
|
6
6
|
import { STALE_SESSION_THRESHOLD_MS } from '../../core/constants.js';
|
|
@@ -85,8 +85,6 @@ export async function worktreeCheckGuard(input, cwd) {
|
|
|
85
85
|
return {};
|
|
86
86
|
}
|
|
87
87
|
try {
|
|
88
|
-
// Clean stale sessions first to reduce false positives
|
|
89
|
-
await store.cleanStaleSessions(STALE_SESSION_THRESHOLD_MS);
|
|
90
88
|
// Inspect existing sessions BEFORE registering. Registering first meant a
|
|
91
89
|
// session that was about to be denied still got written as
|
|
92
90
|
// `role: primary` on the launch-dir branch, leaving a phantom primary that
|
|
@@ -94,9 +92,20 @@ export async function worktreeCheckGuard(input, cwd) {
|
|
|
94
92
|
let active = await store.getActiveSessions();
|
|
95
93
|
const existing = active.find(s => s.session_id === sessionId);
|
|
96
94
|
const currentSwarmId = existing?.swarm_id;
|
|
95
|
+
let registeredWorktrees;
|
|
96
|
+
const primaryCheckout = canonicalPath(cwd);
|
|
97
|
+
const hasRegisteredWorktree = (worktreePath) => {
|
|
98
|
+
if (!worktreePath)
|
|
99
|
+
return false;
|
|
100
|
+
const candidate = canonicalPath(worktreePath);
|
|
101
|
+
if (candidate === primaryCheckout)
|
|
102
|
+
return false;
|
|
103
|
+
registeredWorktrees ??= listGitWorktreeInfo(cwd);
|
|
104
|
+
return registeredWorktrees.some(worktree => canonicalPath(worktree.path) === candidate);
|
|
105
|
+
};
|
|
97
106
|
// An already-registered worktree session is isolated by definition, even
|
|
98
107
|
// when the hook payload still reports the launch directory (GH #630, #631).
|
|
99
|
-
if (existing?.worktree_path) {
|
|
108
|
+
if (hasRegisteredWorktree(existing?.worktree_path)) {
|
|
100
109
|
writeFileSync(sentinel, new Date().toISOString());
|
|
101
110
|
return {};
|
|
102
111
|
}
|
|
@@ -105,7 +114,7 @@ export async function worktreeCheckGuard(input, cwd) {
|
|
|
105
114
|
const others = active.filter(s => s.session_id !== sessionId);
|
|
106
115
|
const now = Date.now();
|
|
107
116
|
const conflicting = others.filter(s => !isStaleSession(s, now) &&
|
|
108
|
-
!s.worktree_path &&
|
|
117
|
+
!hasRegisteredWorktree(s.worktree_path) &&
|
|
109
118
|
!(currentSwarmId && s.swarm_id === currentSwarmId));
|
|
110
119
|
if (conflicting.length > 0) {
|
|
111
120
|
// The hook payload's cwd is the session's *launch* directory. A session
|
|
@@ -117,7 +126,7 @@ export async function worktreeCheckGuard(input, cwd) {
|
|
|
117
126
|
// session is already isolated. Trust where the work actually lands
|
|
118
127
|
// (GH #630, #631). Checked here rather than earlier so the common pass
|
|
119
128
|
// path spawns no extra git processes.
|
|
120
|
-
const worktrees = listGitWorktreeInfo(cwd);
|
|
129
|
+
const worktrees = registeredWorktrees ?? listGitWorktreeInfo(cwd);
|
|
121
130
|
const targetWorktree = resolveTargetWorktree(input, cwd, worktrees);
|
|
122
131
|
if (targetWorktree) {
|
|
123
132
|
await reconcileWorktreeSession(input, cwd, sessionId, targetWorktree);
|
|
@@ -125,7 +134,7 @@ export async function worktreeCheckGuard(input, cwd) {
|
|
|
125
134
|
return {};
|
|
126
135
|
}
|
|
127
136
|
const sessionList = conflicting
|
|
128
|
-
.map(s => ` - ${s.session_id}
|
|
137
|
+
.map(s => ` - ${s.session_id} ${s.ide} (current branch: ${branch ?? '-'})`)
|
|
129
138
|
.join('\n');
|
|
130
139
|
const existingWorktreeGuidance = formatExistingWorktreeGuidance(cwd, input, conflicting, branch, worktrees);
|
|
131
140
|
// Do NOT write sentinel — denied sessions should re-check next invocation
|
|
@@ -401,11 +410,24 @@ function extractFilePath(input) {
|
|
|
401
410
|
return undefined;
|
|
402
411
|
}
|
|
403
412
|
function pathContains(root, filePath) {
|
|
404
|
-
const absoluteFile = isAbsolute(filePath) ? filePath : resolve(filePath);
|
|
405
|
-
const
|
|
406
|
-
const rel = relative(absoluteRoot, absoluteFile);
|
|
413
|
+
const absoluteFile = isAbsolute(filePath) ? canonicalPath(filePath) : canonicalPath(resolve(filePath));
|
|
414
|
+
const rel = relative(canonicalPath(root), absoluteFile);
|
|
407
415
|
return rel === '' || (!!rel && !rel.startsWith('..') && !isAbsolute(rel));
|
|
408
416
|
}
|
|
417
|
+
function canonicalPath(path) {
|
|
418
|
+
let existing = resolve(path);
|
|
419
|
+
const tail = [];
|
|
420
|
+
while (!existsSync(existing) && dirname(existing) !== existing) {
|
|
421
|
+
tail.unshift(basename(existing));
|
|
422
|
+
existing = dirname(existing);
|
|
423
|
+
}
|
|
424
|
+
try {
|
|
425
|
+
return join(realpathSync(existing), ...tail);
|
|
426
|
+
}
|
|
427
|
+
catch {
|
|
428
|
+
return resolve(path);
|
|
429
|
+
}
|
|
430
|
+
}
|
|
409
431
|
/**
|
|
410
432
|
* Resolve the worktree that a tool call's target path belongs to, if any.
|
|
411
433
|
*
|
|
@@ -420,7 +442,7 @@ function resolveTargetWorktree(input, cwd, worktrees) {
|
|
|
420
442
|
if (!filePath || !isAbsolute(filePath))
|
|
421
443
|
return null;
|
|
422
444
|
for (const worktree of worktrees) {
|
|
423
|
-
if (
|
|
445
|
+
if (canonicalPath(worktree.path) === canonicalPath(cwd))
|
|
424
446
|
continue;
|
|
425
447
|
if (pathContains(worktree.path, filePath))
|
|
426
448
|
return worktree.path;
|
|
@@ -485,6 +507,9 @@ function listGitWorktreeInfo(cwd) {
|
|
|
485
507
|
else if (current && line.startsWith('branch ')) {
|
|
486
508
|
current.branch = line.slice('branch '.length).replace(/^refs\/heads\//, '').trim();
|
|
487
509
|
}
|
|
510
|
+
else if (current && line.startsWith('prunable')) {
|
|
511
|
+
current.prunable = true;
|
|
512
|
+
}
|
|
488
513
|
else if (line === '' && current) {
|
|
489
514
|
worktrees.push(current);
|
|
490
515
|
current = null;
|
|
@@ -492,7 +517,7 @@ function listGitWorktreeInfo(cwd) {
|
|
|
492
517
|
}
|
|
493
518
|
if (current)
|
|
494
519
|
worktrees.push(current);
|
|
495
|
-
return worktrees.filter(wt => wt.path);
|
|
520
|
+
return worktrees.filter(wt => wt.path && !wt.prunable && existsSync(wt.path));
|
|
496
521
|
}
|
|
497
522
|
catch {
|
|
498
523
|
return [];
|