commandmate 0.45.1 → 0.46.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/app-build-manifest.json +319 -315
- package/.next/app-path-routes-manifest.json +15 -15
- package/.next/build-manifest.json +5 -5
- package/.next/prerender-manifest.json +3 -3
- package/.next/react-loadable-manifest.json +4 -4
- package/.next/required-server-files.json +1 -1
- package/.next/server/app/_not-found/page.js +1 -1
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/api/agents/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/agents/versions/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/app/release-notes/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/app/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/app/update-check/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/capabilities/route.js +1 -1
- package/.next/server/app/api/capabilities/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/daily-summary/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/daily-summary/status/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/external-apps/[id]/health/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/external-apps/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/external-apps/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/fs/browse/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/fs/recent-paths/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/hooks/agent-event/route.js.nft.json +1 -1
- package/.next/server/app/api/hooks/agent-event/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/hooks/claude-done/route.js +9 -9
- package/.next/server/app/api/hooks/claude-done/route.js.nft.json +1 -1
- package/.next/server/app/api/hooks/claude-done/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/hooks/permission-request/route.js.nft.json +1 -1
- package/.next/server/app/api/hooks/permission-request/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/metrics/vibe/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/ollama/models/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/push/escalation/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/push/subscriptions/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/push/vapid/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/relays/[relayId]/cancel/route.js.nft.json +1 -1
- package/.next/server/app/api/relays/[relayId]/cancel/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/relays/route.js.nft.json +1 -1
- package/.next/server/app/api/relays/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/remote/pair/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/clone/[jobId]/route.js +1 -1
- package/.next/server/app/api/repositories/clone/[jobId]/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/clone/[jobId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/clone/route.js +1 -1
- package/.next/server/app/api/repositories/clone/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/clone/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/excluded/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/restore/route.js +1 -1
- package/.next/server/app/api/repositories/restore/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/restore/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/route.js +1 -1
- package/.next/server/app/api/repositories/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/scan/route.js +1 -1
- package/.next/server/app/api/repositories/scan/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/scan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/sync/route.js +1 -1
- package/.next/server/app/api/repositories/sync/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/sync/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/validate-path/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/settings/default-agents/route.js.nft.json +1 -1
- package/.next/server/app/api/settings/default-agents/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/settings/default-surface-mode/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/sidebar/group-order/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/installations/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/operations/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/reindex/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/slash-commands/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/tasks/[taskId]/cancel/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/tasks/[taskId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/templates/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/templates/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/verification/runs/[runId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/verification/runs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/auto-yes/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/auto-yes/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/auto-yes/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/capture/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/capture/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/clear-composer/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/clear-composer/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/clear-composer/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/cli-reference/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/cli-tool/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js +3 -3
- package/.next/server/app/api/worktrees/[id]/cmate/schedules/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/current-output/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/current-output/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/current-output/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/direct-input/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/direct-input/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/direct-input/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/env/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/route.js +3 -3
- package/.next/server/app/api/worktrees/[id]/execution-logs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/files/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branch/create/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branch/delete/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branches/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/checkout/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/commit/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/diff/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/fetch/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/log/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/pull/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/push/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/reset/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/revert/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stage/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/staged/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/apply/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/pop/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/push/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/status/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/unstage/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/working-diff/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/instances/notes/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/instances/opencode/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/instances/opencode/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/interrupt/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/interrupt/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/kill-session/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/kill-session/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/kill-session/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/[filename]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/route.js +9 -9
- package/.next/server/app/api/worktrees/[id]/logs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/marp-render/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/messages/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/diff/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/session/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/share/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/prompt-response/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/prompt-response/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/prompt-response/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/resolve-target/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/respond/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/respond/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/respond/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js +3 -3
- package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/active/route.js +3 -3
- package/.next/server/app/api/worktrees/[id]/schedules/active/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/route.js +3 -3
- package/.next/server/app/api/worktrees/[id]/schedules/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/search/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/send/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/send/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/send/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/slash-commands/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/special-keys/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/special-keys/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/special-keys/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tasks/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/terminal/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/terminal/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/history/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/todos/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/upload/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/config/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/viewed/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/apply-default-agents/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/route.js +1 -1
- package/.next/server/app/api/worktrees/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -1
- package/.next/server/app/login/page.js +1 -1
- package/.next/server/app/login/page.js.nft.json +1 -1
- package/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
- package/.next/server/app/more/page.js +1 -1
- package/.next/server/app/more/page.js.nft.json +1 -1
- package/.next/server/app/more/page_client-reference-manifest.js +1 -1
- package/.next/server/app/offline/page.js +1 -1
- package/.next/server/app/offline/page.js.nft.json +1 -1
- package/.next/server/app/offline/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page.js +1 -1
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/proxy/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/repositories/page.js +2 -2
- package/.next/server/app/repositories/page.js.nft.json +1 -1
- package/.next/server/app/repositories/page_client-reference-manifest.js +1 -1
- package/.next/server/app/review/page.js +1 -1
- package/.next/server/app/review/page.js.nft.json +1 -1
- package/.next/server/app/review/page_client-reference-manifest.js +1 -1
- package/.next/server/app/sessions/page.js +1 -1
- package/.next/server/app/sessions/page.js.nft.json +1 -1
- package/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
- package/.next/server/app/skills/[skillId]/page.js +1 -1
- package/.next/server/app/skills/[skillId]/page.js.nft.json +1 -1
- package/.next/server/app/skills/[skillId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/skills/installed/page.js +1 -1
- package/.next/server/app/skills/installed/page.js.nft.json +1 -1
- package/.next/server/app/skills/installed/page_client-reference-manifest.js +1 -1
- package/.next/server/app/skills/page.js +1 -1
- package/.next/server/app/skills/page.js.nft.json +1 -1
- package/.next/server/app/skills/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/files/[...path]/page.js +1 -1
- package/.next/server/app/worktrees/[id]/files/[...path]/page.js.nft.json +1 -1
- package/.next/server/app/worktrees/[id]/files/[...path]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/page.js +12 -9
- package/.next/server/app/worktrees/[id]/page.js.nft.json +1 -1
- package/.next/server/app/worktrees/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/terminal/page.js +1 -1
- package/.next/server/app/worktrees/[id]/terminal/page.js.nft.json +1 -1
- package/.next/server/app/worktrees/[id]/terminal/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +15 -15
- package/.next/server/chunks/1341.js +1 -1
- package/.next/server/chunks/1501.js +2 -2
- package/.next/server/chunks/1559.js +1 -1
- package/.next/server/chunks/2119.js +1 -1
- package/.next/server/chunks/2283.js +15 -13
- package/.next/server/chunks/2404.js +4 -4
- package/.next/server/chunks/2445.js +1 -1
- package/.next/server/chunks/2460.js +1 -1
- package/.next/server/chunks/2560.js +1 -1
- package/.next/server/chunks/2908.js +1 -1
- package/.next/server/chunks/2984.js +25 -0
- package/.next/server/chunks/3543.js +1 -1
- package/.next/server/chunks/3945.js +1 -1
- package/.next/server/chunks/4072.js +15 -0
- package/.next/server/chunks/4207.js +1 -1
- package/.next/server/chunks/4718.js +3 -3
- package/.next/server/chunks/4837.js +3 -3
- package/.next/server/chunks/5209.js +1 -1
- package/.next/server/chunks/5292.js +2 -2
- package/.next/server/chunks/5845.js +1 -1
- package/.next/server/chunks/6130.js +1 -1
- package/.next/server/chunks/6345.js +1 -0
- package/.next/server/chunks/6401.js +1 -1
- package/.next/server/chunks/6722.js +1 -0
- package/.next/server/chunks/8098.js +1 -1
- package/.next/server/chunks/8356.js +1 -1
- package/.next/server/chunks/8581.js +25 -29
- package/.next/server/chunks/8728.js +2 -2
- package/.next/server/chunks/8791.js +1 -1
- package/.next/server/chunks/8800.js +4 -4
- package/.next/server/chunks/8918.js +5 -5
- package/.next/server/chunks/9390.js +1 -1
- package/.next/server/chunks/9627.js +2 -1
- package/.next/server/chunks/9731.js +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-manifest.json +5 -5
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/pages/_error.js +2 -2
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/{2407-86890b00eeecf391.js → 2407-9703c569370b8a9d.js} +1 -1
- package/.next/static/chunks/{2619-a305ad4810f1393a.js → 2619-04bc32f026a0d946.js} +1 -1
- package/.next/static/chunks/2717.1583400c272dc1d9.js +1 -0
- package/.next/static/chunks/2770-db80aedf6384d594.js +1 -0
- package/.next/static/chunks/2863-6a07ec82fb52f4dd.js +1 -0
- package/.next/static/chunks/3201-c01f1feed69020e6.js +1 -0
- package/.next/static/chunks/4768-ad6f82f034f21eae.js +1 -0
- package/.next/static/chunks/5371-0dc947683e46e78c.js +1 -0
- package/.next/static/chunks/5794-4eee51ff1e878aa6.js +1 -0
- package/.next/static/chunks/5927-54315d21f323e204.js +1 -0
- package/.next/static/chunks/602-25e45a2422d2a3ea.js +1 -0
- package/.next/static/chunks/6606-02ddc006686a6b7d.js +1 -0
- package/.next/static/chunks/6654-f3534f35f16644bc.js +1 -0
- package/.next/static/chunks/7730-011e137be64403ae.js +1 -0
- package/.next/static/chunks/8165-263172c17ae8e8c3.js +1 -0
- package/.next/static/chunks/{8407-9a72e6f07c5d5458.js → 8407-155f84e5ba05f1d5.js} +1 -1
- package/.next/static/chunks/8606-cf6bdbff44a764cf.js +1 -0
- package/.next/static/chunks/934-a37509667baa86ee.js +1 -0
- package/.next/static/chunks/9465-e5a351baa941f31b.js +1 -0
- package/.next/static/chunks/app/layout-3e357690446cd2da.js +1 -0
- package/.next/static/chunks/app/repositories/page-71f5a5ac29b0370d.js +1 -0
- package/.next/static/chunks/app/review/page-e2fd4a590646a2d8.js +1 -0
- package/.next/static/chunks/app/sessions/page-9859ed61e93e6890.js +1 -0
- package/.next/static/chunks/app/skills/[skillId]/page-52ba58712faf3378.js +1 -0
- package/.next/static/chunks/app/worktrees/[id]/page-effbf0796881dd5a.js +1 -0
- package/.next/static/chunks/app/worktrees/[id]/terminal/{page-c601f3b3ece6557e.js → page-373ea37b16d930c7.js} +1 -1
- package/.next/static/chunks/{webpack-ee3ccbe378c4aa06.js → webpack-468b7b33030234b3.js} +1 -1
- package/.next/static/css/743f79ff19ab91e9.css +1 -0
- package/.next/trace +13 -13
- package/dist/cli/commands/wait.d.ts.map +1 -1
- package/dist/cli/commands/wait.js +6 -1
- package/dist/cli/types/api-responses.d.ts +8 -6
- package/dist/cli/types/api-responses.d.ts.map +1 -1
- package/dist/lib/polling/auto-yes-suppression-reason.d.ts +13 -1
- package/dist/lib/polling/auto-yes-suppression-reason.d.ts.map +1 -1
- package/dist/lib/polling/auto-yes-suppression-reason.js +3 -0
- package/dist/server/locales/en/worktree.json +46 -16
- package/dist/server/locales/ja/worktree.json +46 -16
- package/dist/server/src/config/activity-bar-config.js +56 -9
- package/dist/server/src/lib/assistant-response-saver.js +13 -0
- package/dist/server/src/lib/auto-yes-poller.js +252 -54
- package/dist/server/src/lib/conversation-logger.js +14 -2
- package/dist/server/src/lib/db/chat-db.js +2 -1
- package/dist/server/src/lib/history/user-turn-recorder.js +14 -0
- package/dist/server/src/lib/hooks/sources/antigravity/history.js +28 -0
- package/dist/server/src/lib/hooks/sources/claude/history.js +7 -0
- package/dist/server/src/lib/hooks/sources/codex/history.js +7 -0
- package/dist/server/src/lib/hooks/sources/command-code/history.js +7 -0
- package/dist/server/src/lib/hooks/sources/transcript-history.js +34 -0
- package/dist/server/src/lib/log-manager.js +7 -2
- package/dist/server/src/lib/polling/auto-yes-enter-fallback-state.js +22 -3
- package/dist/server/src/lib/polling/auto-yes-poller-state.js +234 -0
- package/dist/server/src/lib/polling/auto-yes-suppression-reason.js +3 -0
- package/dist/server/src/lib/polling/pending-scraped-response.js +119 -3
- package/dist/server/src/lib/polling/poller-owner.js +110 -0
- package/dist/server/src/lib/polling/prompt-dedup-state.js +26 -7
- package/dist/server/src/lib/polling/prompt-dedup.js +50 -22
- package/dist/server/src/lib/polling/response-checker.js +212 -36
- package/dist/server/src/lib/polling/response-dedup.js +112 -20
- package/dist/server/src/lib/polling/response-poller-core.js +178 -38
- package/dist/server/src/lib/polling/structured-history-gate.js +20 -1
- package/dist/server/src/lib/prompt-answer-sender.js +59 -12
- package/dist/server/src/lib/realtime/terminal-broadcast.js +14 -0
- package/dist/server/src/lib/session/chat-turn-progress.js +57 -6
- package/dist/server/src/lib/session/current-output-builder.js +19 -0
- package/dist/server/src/lib/session/next-action-helper.js +2 -15
- package/dist/server/src/lib/session/worktree-session-reconcile.js +83 -10
- package/dist/server/src/lib/timer-manager.js +7 -0
- package/dist/server/src/lib/tmux/tmux.js +24 -2
- package/dist/server/src/lib/verification/env-clean-gate.js +41 -0
- package/dist/server/src/lib/verification/gate-runner.js +17 -11
- package/dist/server/src/lib/verification/scope-gate.js +169 -3
- package/dist/server/src/types/sidebar.js +1 -0
- package/docs/en/architecture.md +26 -14
- package/docs/en/user-guide/webapp-guide.md +31 -18
- package/package.json +1 -1
- package/release-notes/0.46.0.json +110 -0
- package/release-notes/0.46.1.json +40 -0
- package/.next/server/chunks/1674.js +0 -15
- package/.next/server/chunks/5625.js +0 -25
- package/.next/server/chunks/6927.js +0 -1
- package/.next/server/chunks/9355.js +0 -1
- package/.next/static/chunks/1642-0f1bf8fb8161e10a.js +0 -1
- package/.next/static/chunks/2770-827a64760bab8a3a.js +0 -1
- package/.next/static/chunks/3922.0bc2e4e168d2b522.js +0 -1
- package/.next/static/chunks/4727-4c69d1aa4118cc09.js +0 -1
- package/.next/static/chunks/4768-fc0aa1d0891cac08.js +0 -1
- package/.next/static/chunks/5371-af1c2b68e983da61.js +0 -1
- package/.next/static/chunks/5521-c358c31f60e5e689.js +0 -1
- package/.next/static/chunks/6192-a67df090838b9aad.js +0 -1
- package/.next/static/chunks/6322-f1b30ed0ee43518f.js +0 -1
- package/.next/static/chunks/6654-ac431270fac1a283.js +0 -1
- package/.next/static/chunks/8165-3525fb42f1b4976e.js +0 -1
- package/.next/static/chunks/8318-01e7d1e5ad0a15a3.js +0 -1
- package/.next/static/chunks/8606-79c36d4c204bbd38.js +0 -1
- package/.next/static/chunks/9619-6c17a271f7f98fbb.js +0 -1
- package/.next/static/chunks/998-2eb5883186abd0bd.js +0 -1
- package/.next/static/chunks/app/layout-eaa6365f8f942e88.js +0 -1
- package/.next/static/chunks/app/repositories/page-6f7511f4ac8449e2.js +0 -1
- package/.next/static/chunks/app/review/page-95f749caae382f46.js +0 -1
- package/.next/static/chunks/app/sessions/page-ebfed2c80e916fb8.js +0 -1
- package/.next/static/chunks/app/skills/[skillId]/page-e4b14031f946c007.js +0 -1
- package/.next/static/chunks/app/worktrees/[id]/page-3372b78fde232b1f.js +0 -1
- package/.next/static/css/6faeb04a0b6819d4.css +0 -1
- /package/.next/static/{vYIpFRCU_Mt0wtG8F_3-6 → QxDf7lm-JJkWoj-TyWiSB}/_buildManifest.js +0 -0
- /package/.next/static/{vYIpFRCU_Mt0wtG8F_3-6 → QxDf7lm-JJkWoj-TyWiSB}/_ssgManifest.js +0 -0
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
## タスク
|
|
4
4
|
${a.goal}`}},49987:(a,b,c)=>{c.d(b,{H:()=>l,Iq:()=>i,M:()=>k,xL:()=>o});var d=c(29021),e=c(21820),f=c(33873),g=c(55511);let h=(0,c(72626).h)("lib/verification/machine-lock"),i="locks",j="owner";function k(a,b){return(0,f.join)(b,`${a}.lock`)}function l(a=process.env){let b=a.CM_VERIFY_LOCK_ROOT;return b&&""!==b.trim()?b:(0,f.join)((0,e.homedir)(),".commandmate",i)}function m(a){try{let b=JSON.parse((0,d.readFileSync)((0,f.join)(a,j),"utf8"));if("number"!=typeof b.pid||"string"!=typeof b.token)return null;return{pid:b.pid,host:"string"==typeof b.host?b.host:"",token:b.token,acquiredAt:"number"==typeof b.acquiredAt?b.acquiredAt:0}}catch{return null}}function n(a){return a?`pid ${a.pid} on ${a.host||"unknown host"}`:null}async function o(a,b){let c=b.root??l(),i=b.pollIntervalMs??250,o=k(a,c),p=Date.now(),q=p+Math.max(0,b.timeoutMs),r=(0,g.randomUUID)();(0,d.mkdirSync)(c,{recursive:!0});let s=new Set;for(;;){if(b.shouldAbandon?.())return{acquired:!1,waitedMs:Date.now()-p,heldBy:n(m(o)),abandoned:!0};if(function(a,b){try{(0,d.mkdirSync)(a)}catch(a){if("EEXIST"===a.code)return!1;throw a}return(0,d.writeFileSync)((0,f.join)(a,j),JSON.stringify(b),{encoding:"utf8"}),!0}(o,{pid:process.pid,host:(0,e.hostname)(),token:r,acquiredAt:Date.now()}))return{acquired:!0,waitedMs:Date.now()-p,handle:{name:a,path:o,release:()=>{let a=m(o);if(!a||a.token===r)try{(0,d.rmSync)(o,{recursive:!0,force:!0})}catch(a){h.warn("machine-lock-release-failed",{lockPath:o,error:a instanceof Error?a.message:String(a)})}}}};let c=m(o);if(c&&!s.has(c.token)&&function(a){if(a.host!==(0,e.hostname)())return!1;try{return process.kill(a.pid,0),!1}catch(a){return"ESRCH"===a.code}}(c)){s.add(c.token);let a=m(o);if(a&&a.token===c.token)try{(0,d.rmSync)(o,{recursive:!0,force:!0}),h.warn("machine-lock-broken-stale",{lockPath:o,pid:c.pid})}catch{}continue}let g=Date.now();if(g>=q)return{acquired:!1,waitedMs:g-p,heldBy:n(c)};await function(a){return new Promise(b=>setTimeout(b,a))}(Math.min(i,q-g))}}},53604:(a,b,c)=>{c.d(b,{Cr:()=>k,L8:()=>i});var d=c(55511),e=c(29021),f=c(21820),g=c(33873);let h=(0,c(72626).h)("lib/verification/worktree-index"),i="worktree-index";function j(a,b){try{return(0,e.readFileSync)((0,g.join)(a,b),"utf8").trim()}catch{return null}}function k(a,b={}){let c=b.root??function(a=process.env){let b=a.CM_VERIFY_WORKTREE_INDEX_ROOT;return b&&""!==b.trim()?b:(0,g.join)((0,f.homedir)(),".commandmate",i)}();try{(0,e.mkdirSync)(c,{recursive:!0});let b=new Set;for(let d of(0,e.readdirSync)(c))if(/^\d+$/.test(d)){if(j(c,d)===a)return Number(d);b.add(Number(d))}for(let d=0;d<1024;d++)if(!b.has(d)&&function(a,b,c){try{return(0,e.writeFileSync)((0,g.join)(a,String(b)),`${c}
|
|
5
|
-
`,{encoding:"utf8",flag:"wx"}),!0}catch(d){if("EEXIST"!==d.code)throw d;return j(a,String(b))===c}}(c,d,a))return d;h.warn("worktree-index-exhausted",{worktreeId:a,root:c})}catch(b){h.warn("worktree-index-unavailable",{worktreeId:a,root:c,error:b instanceof Error?b.message:String(b)})}return Number.parseInt((0,d.createHash)("sha256").update(a).digest("hex").slice(0,8),16)%1024}},74985:(a,b,c)=>{c.d(b,{Uq:()=>n,uT:()=>
|
|
6
|
-
${function(a){let b=[];for(let c of a.probes){let a=k.J6[c.probeId];if("unknown"===c.status){b.push(` ${c.probeId} UNKNOWN (${a}): ${c.reason??"no reason recorded"}`);continue}if("clean"===c.status){let d=c.ignoredAdded.length>0?` (${c.ignoredAdded.length} addition(s) attributed to another worktree)`:"";b.push(` ${c.probeId} clean (${a})${d}`),b.push(...
|
|
5
|
+
`,{encoding:"utf8",flag:"wx"}),!0}catch(d){if("EEXIST"!==d.code)throw d;return j(a,String(b))===c}}(c,d,a))return d;h.warn("worktree-index-exhausted",{worktreeId:a,root:c})}catch(b){h.warn("worktree-index-unavailable",{worktreeId:a,root:c,error:b instanceof Error?b.message:String(b)})}return Number.parseInt((0,d.createHash)("sha256").update(a).digest("hex").slice(0,8),16)%1024}},74985:(a,b,c)=>{c.d(b,{Uq:()=>n,uT:()=>G,vQ:()=>w});var d=c(79646),e=c(29021),f=c(33873),g=c(88807),h=c(73753),i=c(40964),j=c(15194),k=c(77142),l=c(90384);let m=`options.requireEnvClean (${l.aT})`;function n(a,b){let c=[];return b?.options.requireEnvClean&&c.push(m),a&&!0===a.success.requireEnvClean&&c.push("success.requireEnvClean (task contract)"),{required:c.length>0,sources:c}}function o(a,b){let c=(0,i.NN)(a);if(!c)return"unattributed";let d=c.rest;return d===b||d.startsWith(`${b}-`)?"self":"other"}function p(a,b){if(!a)return"unattributed";let c=(0,f.resolve)(b),d=(0,f.resolve)(a);if(d===c||d.startsWith(c+f.sep))return"self";let e=(0,f.dirname)(c);return d!==e&&d.startsWith(e+f.sep)?"other":"unattributed"}let q=a=>{try{process.kill(a,0)}catch(a){if("EPERM"!==a.code)return null}if("linux"===process.platform)try{return(0,e.readlinkSync)(`/proc/${a}/cwd`)}catch{return null}try{let b=(0,d.execFileSync)("lsof",["-a","-d","cwd","-p",String(a),"-F","n"],{encoding:"utf8",timeout:5e3,stdio:["ignore","pipe","ignore"]}).split("\n").find(a=>a.startsWith("n"));return b?b.slice(1):null}catch{return null}},r=/^\.commandmate-demo-vitest-([1-9]\d*)$/,s=/^\.zcompdump(?:\.[A-Za-z0-9._-]+\.[1-9]\d*)?$/,t=a=>{try{return process.kill(a,0),!0}catch(a){return"EPERM"===a.code}};function u(a){let b=r.exec(a);if(!b)return null;let c=Number(b[1]);return Number.isSafeInteger(c)?c:null}function v(a,b,c,d){switch(a){case"tmux-sessions":return o(b.key,c.worktreeId);case"listeners":return p(b.anchor,c.worktreePath);case"home-entries":return function(a,b,c=q){let d=u(a);return null===d?"unattributed":"other"===p(c(d),b)?"other":"unattributed"}(b.key,c.worktreePath,d);default:return"unattributed"}}function w(a,b,c={namespace:(0,i.s4)(),legacyAliasOf:a=>{let b=(0,i.NN)(a);if(b)try{let c=(0,i.mf)(b.cliToolId,b.rest);return c!==a?c:void 0}catch{return}},repositoryOf:a=>{try{return(0,h.getWorktreeById)((0,g.getDbInstance)(),a)?.repositoryPath||null}catch{return null}}},d=t){return{...a,taskSession:function(a){if(!(0,j.hR)(a.cliToolId))return null;try{return(0,i.mf)(a.cliToolId,a.worktreeId,a.instanceId??void 0)}catch{return null}}(b),otherServerSessions:function(a,b){if(null===b.namespace)return null;let c=a.probes["tmux-sessions"];return c&&"ok"===c.status?c.entries.map(a=>a.key).filter(a=>x(a,b)):[]}(a,c),otherRepositorySessions:function(a,b,c){if(null===c.namespace||!c.repositoryOf)return null;let d=c.repositoryOf(b);if(!d)return null;let e=a.probes["tmux-sessions"];return e&&"ok"===e.status?e.entries.map(a=>a.key).filter(a=>{if("other"!==o(a,b)||x(a,c))return!1;let e=(0,i.NN)(a);if(!e)return!1;let f=function(a,b){let c=b.repositoryOf;if(!c)return null;let d=new Set,e=a.indexOf("-");for(;;){let b=c(-1===e?a:a.slice(0,e));if(b&&d.add(b),-1===e)break;e=a.indexOf("-",e+1)}return 1===d.size?[...d][0]:null}(e.rest,c);return null!==f&&f!==d}):[]}(a,b.worktreeId,c),deadDemoVitestEntries:function(a,b=t){let c=a.probes["home-entries"];return c&&"ok"===c.status?c.entries.map(a=>a.key).filter(a=>{let c=u(a);return null!==c&&!b(c)}):[]}(a,d)}}function x(a,b){let c;if(null===b.namespace)return!1;let d=(0,i.NN)(a);if(!d)return!1;if(null!==d.namespace)return d.namespace!==b.namespace;try{c=(0,i.Ze)(b.namespace,d.cliToolId,d.rest)}catch{return!0}return b.legacyAliasOf(c)!==a}function y(a,b){return{key:a.key,detail:a.detail,owner:b}}function z(a,b){let c=b.slice(0,25),d=b.length-c.length,e=c.map(b=>{let c=b.detail?` ${b.detail}`:"";return` ${a} ${b.key}${c} [${b.owner}]`});return d>0&&e.push(` ... and ${d} more`),e}function A(a){return a.map(a=>{let b=a.detail?` ${a.detail}`:"";return` + ${a.key}${b} [task session, excused]`})}function B(a){return a.map(a=>` \xb7 - ${a.key} (ignored: another CommandMate server's session, recorded at task start)`)}function C(a){return a.map(a=>` \xb7 - ${a.key} (ignored: a worktree of another repository on this server, recorded at task start)`)}function D(a){return a.map(a=>` \xb7 - ${a.key} (ignored: its pid was already dead at task start — a leftover swept by the demo-video tests)`)}function E(a){if(0===a.length)return[];let b=a.map(a=>a.key).join(", ");return[` ignored (options.envCleanIgnoreHomeEntries): ${b}`]}function F(a){if(0===a.length)return[];let b=a.map(a=>a.key).join(", ");return[` ignored (built-in): ${b}`]}async function G(a){var b;let c,d=Date.now(),e=(a,b,c)=>({status:a,exitCode:c,startedAt:d,durationMs:Date.now()-d,logTail:b});if(!a.baseline)return e("error",function(a,b){let c=a?`task ${a}`:"this run",d=b.length>0?b.join(" and "):"nothing";return`${l.Q5}: UNKNOWN — no baseline snapshot exists for ${c}, so nothing can be compared. This is NOT "the environment is unchanged": no measurement was taken. A baseline is recorded when the task is created (\`send --contract\`) and only while the gate is switched on (currently: ${d}). Switch it on, then re-send the task.`+(a?"":" To re-verify this worktree's contract task (this run is not attached to a task), run `commandmate verify <worktree> --task <id>`.")}(a.taskId,a.sources),null);let f=a.capture??(()=>(0,k._8)({worktreeId:a.worktreeId}));try{c=await f()}catch(a){return e("error",`${l.Q5}: UNKNOWN — the current snapshot could not be taken: ${a instanceof Error?a.message:String(a)}`,null)}let g=function(a,b,c,d={}){let e=function(a){if(!("taskSession"in a))return;let b=a.taskSession;return"string"==typeof b&&""!==b?b:null}(a),f=function(a){let b=a.otherServerSessions;return Array.isArray(b)?new Set(b.filter(a=>"string"==typeof a)):new Set}(a),g=function(a){let b=a.otherRepositorySessions;return Array.isArray(b)?new Set(b.filter(a=>"string"==typeof a)):new Set}(a),h=function(a){let b=a.deadDemoVitestEntries;return Array.isArray(b)?new Set(b.filter(a=>"string"==typeof a&&null!==u(a))):new Set}(a),i=new Set(d.ignoreHomeEntries??[]),j=d.resolvePidCwd??q,l=k.I1.map(d=>{let k=a.probes[d],l=b.probes[d];if(!k||"ok"!==k.status)return{probeId:d,status:"unknown",reason:`baseline probe unavailable: ${k?.reason??"not recorded"}`,added:[],ignoredAdded:[],taskSessionAdded:[],removed:[],removedByOtherServer:[],removedByOtherRepository:[],removedStaleDemoVitest:[],ignoredByConfig:[],ignoredBuiltIn:[]};if(!l||"ok"!==l.status)return{probeId:d,status:"unknown",reason:`current probe unavailable: ${l?.reason??"not recorded"}`,added:[],ignoredAdded:[],taskSessionAdded:[],removed:[],removedByOtherServer:[],removedByOtherRepository:[],removedStaleDemoVitest:[],ignoredByConfig:[],ignoredBuiltIn:[]};let m=new Set(k.entries.map(a=>a.key)),n=new Set(l.entries.map(a=>a.key)),o=a=>"home-entries"===d&&i.has(a.key),p=a=>{var b;return"home-entries"===d&&(b=a.key,s.test(b))},q=[],r=[],t=[],u=[],w=[];for(let a of l.entries){if(m.has(a.key))continue;let b=v(d,a,c,j);if(o(a)){u.push(y(a,b));continue}if(p(a)){w.push(y(a,b));continue}if("tmux-sessions"===d&&e&&a.key===e){t.push(y(a,b));continue}("other"===b?r:q).push(y(a,b))}let x="tmux-sessions"===d&&l.entries.some(a=>m.has(a.key)||null!==e&&a.key===e),z=[],A=[],B=[],C=[];for(let a of k.entries){if(n.has(a.key))continue;let b=y(a,v(d,a,c,j));o(a)?u.push(b):p(a)?w.push(b):x&&"self"!==b.owner&&f.has(a.key)?A.push(b):x&&"other"===b.owner&&g.has(a.key)?B.push(b):"home-entries"===d&&h.has(a.key)?C.push(b):z.push(b)}return{probeId:d,status:q.length+z.length>0?"violated":"clean",reason:null,added:q,ignoredAdded:r,taskSessionAdded:t,removed:z,removedByOtherServer:A,removedByOtherRepository:B,removedStaleDemoVitest:C,ignoredByConfig:u,ignoredBuiltIn:w}});return{status:l.some(a=>"violated"===a.status)?"violated":l.some(a=>"unknown"===a.status)?"unknown":"clean",taskSession:e,probes:l}}(a.baseline,c,a,{ignoreHomeEntries:a.ignoreHomeEntries,resolvePidCwd:a.resolvePidCwd}),h=`${l.Q5}: baseline=${new Date(a.baseline.capturedAt).toISOString()} status=${g.status} task-session=${void 0===(b=g.taskSession)?"unrecorded (baseline predates #2472; nothing excused)":null===b?"unresolved (nothing excused)":b}`,i=`${h}
|
|
6
|
+
${function(a){let b=[];for(let c of a.probes){let a=k.J6[c.probeId];if("unknown"===c.status){b.push(` ${c.probeId} UNKNOWN (${a}): ${c.reason??"no reason recorded"}`);continue}if("clean"===c.status){let d=c.ignoredAdded.length>0?` (${c.ignoredAdded.length} addition(s) attributed to another worktree)`:"";b.push(` ${c.probeId} clean (${a})${d}`),b.push(...A(c.taskSessionAdded)),b.push(...B(c.removedByOtherServer)),b.push(...C(c.removedByOtherRepository)),b.push(...D(c.removedStaleDemoVitest)),b.push(...E(c.ignoredByConfig)),b.push(...F(c.ignoredBuiltIn)),b.push(...function(a){if(0===a.length)return[];let b=a.map(a=>a.key).join(", ");return[` ignored (attributed to another worktree): ${b}`]}(c.ignoredAdded));continue}for(let d of(b.push(` ${c.probeId} VIOLATED (${a}): +${c.added.length} -${c.removed.length}`),b.push(...z("+",c.added)),b.push(...z("-",c.removed)),b.push(...A(c.taskSessionAdded)),b.push(...B(c.removedByOtherServer)),b.push(...C(c.removedByOtherRepository)),b.push(...D(c.removedStaleDemoVitest)),b.push(...E(c.ignoredByConfig)),b.push(...F(c.ignoredBuiltIn)),c.ignoredAdded))b.push(` \xb7 ${d.key} (ignored: belongs to another worktree)`)}return b.join("\n")}(g)}`;return"clean"===g.status?e("passed",i,0):"unknown"===g.status?e("error",`${i}
|
|
7
7
|
UNKNOWN is not a pass: at least one probe could not be compared, so the environment was not measured.`,null):e("failed",`${i}
|
|
8
8
|
Anything listed under "+" was started or created during this task and left behind — stop it by PID and remove it. The one exception is a "+" line marked "task session, excused": that is the agent session this delegation itself started, it is not counted, and it must be left running. Anything under "-" existed when the task started and is now gone — it was killed or deleted; restart or restore it. Never stop a process by pattern (\`pkill -f\`): it takes every process whose command line matches, which is how the production server was stopped in #1739.`,1)}},77142:(a,b,c)=>{c.d(b,{I1:()=>m,J6:()=>n,_8:()=>B,dV:()=>F,g9:()=>G});var d=c(79646),e=c(29021),f=c(21820),g=c(33873),h=c(87447),i=c(72626),j=c(49987),k=c(53604);let l=(0,i.h)("lib/verification/env-snapshot"),m=["listeners","tmux-sessions","home-entries","commandmate-entries"],n={listeners:"CommandMate TCP listeners","tmux-sessions":"mcbd-* tmux sessions","home-entries":"$HOME entries","commandmate-entries":"~/.commandmate entries"},o={run:function(a,b){return new Promise(c=>{(0,d.execFile)(a,b,{timeout:5e3,maxBuffer:4194304,encoding:"utf8"},(b,d,e)=>b?"number"!=typeof b.code||b.killed?void c({code:null,stdout:d,stderr:e,failure:b.killed?`${a} exceeded 5000ms and was terminated`:`${a} could not be run: ${b.message}`}):void c({code:b.code,stdout:d,stderr:e,failure:null}):void c({code:0,stdout:d,stderr:e,failure:null}))})},readDir:a=>(0,e.readdirSync)(a),homeDir:()=>(0,f.homedir)()},p=/commandmate|dist\/server\/server\.js|next-server|next (dev|start)|server\.ts/i,q=new Set(["node","nodejs","bun","tsx","ts-node","npx","next"]),r=/^(commandmate(\.js)?|next-server)$/i;function s(a){let b=[],c=null;for(let d of a.split("\n")){if(""===d)continue;let a=d[0],e=d.slice(1);if("p"===a){let a=Number(e);if(!Number.isInteger(a)){c=null;continue}c={pid:a,fields:new Map},b.push(c);continue}if(!c)continue;let f=c.fields.get(a);f?f.push(e):c.fields.set(a,[e])}return b}function t(a){return{status:"unavailable",entries:[],reason:a}}function u(a){let b=new Map;for(let c of a)b.has(c.key)||b.set(c.key,c);return{status:"ok",entries:[...b.values()].sort((a,b)=>a.key<b.key?-1:+(a.key>b.key)),reason:null}}async function v(a){let b=await a.run("lsof",["-nP","-iTCP","-sTCP:LISTEN","-F","pcn"]);if(null!==b.failure)return t(b.failure);if(0!==b.code&&1!==b.code)return t(`lsof exited ${b.code}: ${b.stderr.trim()||"no diagnostic output"}`);let c=s(b.stdout);if(0===c.length)return u([]);let d=await a.run("ps",["-A","-o","pid=,command="]);if(null!==d.failure||0!==d.code)return t(d.failure??`ps exited ${d.code}: ${d.stderr.trim()||"no diagnostic output"}`);let e=function(a){let b=new Map;for(let c of a.split("\n")){let a=/^\s*(\d+)\s+(.*)$/.exec(c);a&&b.set(Number(a[1]),a[2].trim())}return b}(d.stdout),f=c.filter(a=>{let b=e.get(a.pid);return void 0!==b&&function(a){if(!p.test(a))return!1;let[b,...c]=a.trim().split(/\s+/);if(!b)return!1;let d=(0,g.basename)(b);if(r.test(d))return!0;if(!q.has(d.toLowerCase()))return!1;let e=[d,...c.filter(a=>!a.startsWith("-"))];return e.some((a,b)=>!!(b>0&&function(a){let b=(0,g.basename)(a);return/(^|\/)dist\/server\/server\.js$/.test(a)||"server.ts"===b||/^commandmate(\.js)?$/i.test(b)}(a))||"next"===(0,g.basename)(a)&&/^(dev|start)$/.test(e[b+1]??""))}(b)});if(0===f.length)return u([]);let h=new Map,i=f.map(a=>String(a.pid)),j=await a.run("lsof",["-a","-d","cwd","-p",i.join(","),"-F","pn"]);if(null===j.failure&&(0===j.code||1===j.code))for(let a of s(j.stdout)){let[b]=a.fields.get("n")??[];b&&h.set(a.pid,b)}let k=[];for(let a of f){let b=a.fields.get("c")?.[0]??"unknown";for(let c of a.fields.get("n")??[]){let d=function(a){let b=a.lastIndexOf(":");if(b<0)return null;let c=a.slice(b+1);return/^\d+$/.test(c)?c:null}(c);d&&k.push({key:`tcp/${d}`,detail:`${b} pid=${a.pid}`,anchor:h.get(a.pid)??null})}}return u(k)}async function w(a){let b=await a.run("tmux",["list-sessions","-F","#{session_name}"]);return null!==b.failure?t(b.failure):0!==b.code?/no server running|error connecting to|no sessions/i.test(b.stderr)?u([]):t(`tmux list-sessions exited ${b.code}: ${b.stderr.trim()||"no diagnostic output"}`):u(b.stdout.split("\n").map(a=>a.trim()).filter(a=>a.startsWith("mcbd-")).map(a=>({key:a,detail:null,anchor:null})))}let x=[/-wal$/,/-shm$/,/-journal$/,/^\.DS_Store$/],y="env-snapshots",z=[j.Iq,k.L8];function A(a,b,{missingIsEmpty:c,alsoIgnored:d=[]}){let e;try{e=a.readDir(b)}catch(d){let a=d.code;if(c&&"ENOENT"===a)return u([]);return t(`could not list ${b}: ${d.message}`)}return u(e.filter(a=>!(a===y||x.some(b=>b.test(a)))&&!d.includes(a)).map(a=>({key:a,detail:null,anchor:null})))}async function B(a){let b=a.deps??o,[c,d]=await Promise.all([v(b).catch(a=>t(`listeners probe threw: ${a.message}`)),w(b).catch(a=>t(`tmux probe threw: ${a.message}`))]);return{version:1,capturedAt:a.now??Date.now(),worktreeId:a.worktreeId,probes:{listeners:c,"tmux-sessions":d,"home-entries":A(b,b.homeDir(),{missingIsEmpty:!1}),"commandmate-entries":A(b,(0,g.join)(b.homeDir(),".commandmate"),{missingIsEmpty:!0,alsoIgnored:z})}}}function C(){return(0,g.join)((0,g.dirname)((0,h._$)().CM_DB_PATH),y)}let D=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function E(a,b){return D.test(b)?(0,g.join)(a,`${b}.json`):null}function F(a,b,c=C()){let d=E(c,a);if(!d)return l.warn("env-snapshot-rejected-task-id",{taskId:a}),!1;try{return(0,e.mkdirSync)(c,{recursive:!0,mode:448}),(0,e.writeFileSync)(d,JSON.stringify(b),{encoding:"utf8",mode:384}),!function(a,b){let c;try{c=(0,e.readdirSync)(a)}catch{return}for(let d of c){if(!d.endsWith(".json"))continue;let c=(0,g.join)(a,d);try{b-(0,e.statSync)(c).mtimeMs>2592e6&&(0,e.rmSync)(c,{force:!0})}catch{}}}(c,b.capturedAt),!0}catch(b){return l.warn("env-snapshot-write-failed",{taskId:a,error:b instanceof Error?b.message:String(b)}),!1}}function G(a,b=C()){let c=E(b,a);if(!c)return null;try{let a=JSON.parse((0,e.readFileSync)(c,"utf8"));if(!function(a){if("object"!=typeof a||null===a||1!==a.version||"number"!=typeof a.capturedAt)return!1;let b=a.probes;return"object"==typeof b&&null!==b&&m.every(a=>{var c;return"object"==typeof(c=b[a])&&null!==c&&("ok"===c.status||"unavailable"===c.status)&&Array.isArray(c.entries)})}(a))return null;return a}catch{return null}}},90384:(a,b,c)=>{c.d(b,{D:()=>n,Q5:()=>i,Tc:()=>l,UL:()=>y,Yp:()=>s,aT:()=>k,iE:()=>j,le:()=>h,sN:()=>m,uz:()=>g,yR:()=>z});var d=c(29021),e=c(33873),f=c(4689);let g="work-evidence",h="scope",i="env-clean",j=[g,h,i],k=".commandmate/verify.yaml";function l(a,b=[]){return[g,h,...a.options.requireEnvClean?[i]:[],...a.gates.map(a=>a.id),...b.map(a=>a.id)]}let m=600,n=/^[a-z0-9][a-z0-9-]{0,31}$/,o=/^[A-Za-z0-9_.-]+$/,p=["version","gates","options"],q=["id","command","timeoutSec","mutex","retryOnFail","flakyIsPass"],r=["baseRef","skipInPrimaryCheckout","maxLogTailBytes","requireCommit","requireEnvClean","envCleanIgnoreHomeEntries"];class s extends Error{constructor(a){super(`invalid verify config:
|
|
9
9
|
${a.map(a=>` - ${a}`).join("\n")}`),this.name="VerifyConfigError",this.issues=a}}function t(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function u(a){return"number"==typeof a?Number.isInteger(a)?a:null:"string"==typeof a&&/^-?\d+$/.test(a)?Number(a):null}function v(a){return"boolean"==typeof a?a:"true"===a||"false"!==a&&null}function w(a){return void 0===a?"nothing":null===a?"null":"string"==typeof a?JSON.stringify(a):Array.isArray(a)?"a list":"object"==typeof a?"a mapping":String(a)}function x(a,b,c,d){for(let e of Object.keys(a))b.includes(e)||d.push(`${c}: unknown key "${e}" (v1 is a closed set)`)}function y(a,b,c){if(!Array.isArray(a))return c.push(`${b}: must be a list (got ${w(a)})`),[];let d=[],e=new Set;return a.forEach((a,f)=>{!function(a,b,c,d,e){let f,g,h,i=e.length;if(!t(a))return e.push(`${b}: must be a mapping (got ${w(a)})`);x(a,q,b,e),"string"!=typeof a.id||""===a.id?e.push(`${b}.id: required, must be a non-empty string (got ${w(a.id)})`):n.test(a.id)?j.includes(a.id)?e.push(`${b}.id: "${a.id}" is reserved for a built-in gate`):c.has(a.id)?e.push(`${b}.id: duplicate gate id "${a.id}"`):c.add(a.id):e.push(`${b}.id: "${a.id}" must match ${n.source}`),("string"!=typeof a.command||""===a.command.trim())&&e.push(`${b}.command: required, must be a non-empty string (got ${w(a.command)})`);let k=m;if(void 0!==a.timeoutSec){let c=u(a.timeoutSec);null===c?e.push(`${b}.timeoutSec: must be an integer (got ${w(a.timeoutSec)})`):c<1||c>7200?e.push(`${b}.timeoutSec: must be 1..7200 (got ${c})`):k=c}if(void 0!==a.mutex&&("string"!=typeof a.mutex||""===a.mutex?e.push(`${b}.mutex: must be a non-empty string (got ${w(a.mutex)})`):a.mutex.length>64?e.push(`${b}.mutex: must be at most 64 characters (got ${a.mutex.length})`):o.test(a.mutex)?f=a.mutex:e.push(`${b}.mutex: "${a.mutex}" must match ${o.source}`)),void 0!==a.retryOnFail){let c=u(a.retryOnFail);null===c?e.push(`${b}.retryOnFail: must be an integer (got ${w(a.retryOnFail)})`):c<0||c>1?e.push(`${b}.retryOnFail: must be 0 or 1 (got ${c})`):g=c}if(void 0!==a.flakyIsPass){let c=v(a.flakyIsPass);null===c?e.push(`${b}.flakyIsPass: must be true or false (got ${w(a.flakyIsPass)})`):c&&1!==g?e.push(`${b}.flakyIsPass: true requires retryOnFail: 1 (without a retry a gate can never be FLAKY)`):h=c}if(e.length===i){let b={id:a.id,command:a.command,timeoutSec:k};void 0!==f&&(b.mutex=f),void 0!==g&&(b.retryOnFail=g),void 0!==h&&(b.flakyIsPass=h),d.push(b)}}(a,`${b}[${f}]`,e,d,c)}),d}function z(a){let b,c=(0,e.join)(a,k);try{b=(0,d.readFileSync)(c,"utf8")}catch(a){if("ENOENT"===a.code)return null;throw new s([`${c}: ${a.message}`])}return function(a,b){var c;let d;try{d=(0,f.qg)(a)}catch(a){throw new s([`${b}: YAML parse error: ${a.message}`])}if(!t(d))throw new s([`${b}: expected a YAML mapping at the top level (got ${w(d)})`]);let e=[];x(d,p,"top level",e),"version"in d?1!==u(d.version)&&e.push(`version: must be 1 (got ${w(d.version)})`):e.push('version: required, v1 configs must declare "version: 1"');let g=(c=d.gates,null==c?(e.push("gates: required, at least one gate must be defined"),[]):Array.isArray(c)&&0===c.length?(e.push("gates: at least one gate must be defined"),[]):y(c,"gates",e)),h=function(a,b){let c={baseRef:null,skipInPrimaryCheckout:!0,maxLogTailBytes:8192,requireCommit:!1,requireEnvClean:!1,envCleanIgnoreHomeEntries:[]};if(null==a)return c;if(!t(a))return b.push(`options: must be a mapping (got ${w(a)})`),c;if(x(a,r,"options",b),void 0!==a.baseRef&&("string"!=typeof a.baseRef||""===a.baseRef.trim()?b.push(`options.baseRef: must be a non-empty string (got ${w(a.baseRef)})`):c.baseRef=a.baseRef),void 0!==a.skipInPrimaryCheckout){let d=v(a.skipInPrimaryCheckout);null===d?b.push(`options.skipInPrimaryCheckout: must be true or false (got ${w(a.skipInPrimaryCheckout)})`):c.skipInPrimaryCheckout=d}if(void 0!==a.requireCommit){let d=v(a.requireCommit);null===d?b.push(`options.requireCommit: must be true or false (got ${w(a.requireCommit)})`):c.requireCommit=d}if(void 0!==a.requireEnvClean){let d=v(a.requireEnvClean);null===d?b.push(`options.requireEnvClean: must be true or false (got ${w(a.requireEnvClean)})`):c.requireEnvClean=d}if(void 0!==a.envCleanIgnoreHomeEntries){let d=function(a,b){let c="options.envCleanIgnoreHomeEntries";if(!Array.isArray(a))return b.push(`${c}: must be a list of $HOME entry names (got ${w(a)})`),null;let d=b.length;a.length>32&&b.push(`${c}: at most 32 entries (got ${a.length})`);let e=[];return a.forEach((a,d)=>{let f=`${c}[${d}]`;"string"!=typeof a?b.push(`${f}: must be a string (got ${w(a)})`):""===a?b.push(`${f}: must not be empty`):"."===a||".."===a?b.push(`${f}: must be an entry name, not ${JSON.stringify(a)}`):a.includes("/")||a.includes("\0")?b.push(`${f}: must be a single $HOME entry name without "/" or NUL (got ${w(a)})`):e.push(a)}),b.length===d?e:null}(a.envCleanIgnoreHomeEntries,b);d&&(c.envCleanIgnoreHomeEntries=d)}if(void 0!==a.maxLogTailBytes){let d=u(a.maxLogTailBytes);null===d?b.push(`options.maxLogTailBytes: must be an integer (got ${w(a.maxLogTailBytes)})`):d<0||d>1048576?b.push(`options.maxLogTailBytes: must be 0..1048576 (got ${d})`):c.maxLogTailBytes=d}return c}(d.options,e);if(e.length>0)throw new s(e);return{version:1,gates:g,options:h}}(b,c)}}};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";exports.id=1559,exports.ids=[1559],exports.modules={24581:(a,b,c)=>{c.d(b,{Cb:()=>f,Mu:()=>g,RY:()=>j,Tt:()=>i,Ui:()=>q,Xq:()=>m,ZV:()=>t,h_:()=>h,jF:()=>r,kT:()=>p,nY:()=>l,qX:()=>s,wt:()=>o});var d=c(62887),e=c(27870);let f=new Set(["user_prompt_submit","pre_tool_use","post_tool_use"]),g=18e5,h={predicted:2e4,confirmed:18e5},i=3,j=16,k={turnId:null,openedAt:null,closedAt:null,closedBy:null};function l(a){return null===a?k:{turnId:a.turnId,openedAt:a.openedAt,closedAt:a.closedAt,closedBy:a.closedBy}}function m(a){if("string"!=typeof a||0===a.length||a.length>128)return null;for(let b=0;b<a.length;b++){let c=a.charCodeAt(b);if(c<32||127===c)return null}return a}function n(a,b){return"string"!=typeof a||""===a?null:a.slice(0,b)}function o(a){return n(a,e.lY)}function p(a){return n(a,d.h9)}function q(a){if(!Array.isArray(a))return null;let b=[];for(let c of a)if("string"==typeof c&&""!==c&&(b.push(c.slice(0,200)),b.length>=8))break;return b.length>0?b:null}function r(a,b){let c=null===a.confirmedAt?h.predicted:h.confirmed;return b-a.at<c}function s(a,b,c){return null!==b&&c-a.at>=1e3*b}function t(a,b){return null===a.sessionId||null===b||a.sessionId===b}},26547:(a,b,c)=>{c.d(b,{Yz:()=>L,jw:()=>J});var d=c(51297),e=c(61789);let f=["minimal","low","medium","high","xhigh","max","ultra","persistent"];function g(){return{model:null,effort:null}}let h=/^[A-Za-z0-9][A-Za-z0-9._:@/-]*$/,i=/^[A-Za-z0-9][A-Za-z0-9 .()[\]_:@/-]*$/;function j(a){return a.length>0&&a.length<=64&&h.test(a)}function k(a){return a.length>0&&a.length<=64&&i.test(a)}function l(a,b={}){let c=a.trim().toLowerCase();if(""===c)return null;if(f.includes(c))return c;if(!b.allowTruncated||c.length<2)return null;let d=f.filter(a=>a.length===c.length+1&&a.startsWith(c));return 1===d.length?d[0]:null}let m=/^\s*([^\s·]+)(?:\s+(minimal|low|medium|high|xhigh|max|ultra|persistent)\b)?/i,n=/^\s*[^\s·]+\s+[A-Za-z][A-Za-z_-]*(?=\s|$)/,o=/^\s*\S[^·]*·\s*~?\/\S*(?:\s*·[^\n]*|[^\S\n]{2,}\S[^\n]*)$/;function p(a){if(!e.aW.test(a)&&!o.test(a))return null;let b=a.indexOf("\xb7");if(b<0)return null;let c=a.slice(0,b),d=m.exec(c);if(!d)return null;let f=d[1];if(!j(f))return null;let g=d[2]?l(d[2]):null;return null!==g||/\d/.test(f)?null===g&&n.test(c)?{model:f,effort:null,effortUnreadable:!0}:{model:f,effort:g}:null}let q=/^\s*[\u2500-\u259F][\s\u2500-\u259F]*(\S[^\u2500-\u259F]*?)\s+with\s+(minimal|low|medium|high|xhigh)\s+effort\b/i,r=/^\s*[\u2500-\u259F][\s\u2500-\u259F]*(\S[^\u2500-\u259F·]*?)\s+·\s+Claude\s+[A-Za-z]+\b/,s=/^\s*\S\s+([A-Za-z]+)\s+·\s+\/effort\s*$/;function t(a){let b=q.exec(a);if(b){let a=b[1].trim();return k(a)?{model:a,effort:l(b[2])}:null}let c=r.exec(a);if(!c)return null;let d=c[1].trim();return/\swith\s/i.test(d)||!k(d)?null:{model:d,effort:null}}function u(a){let b=s.exec(a);if(!b)return null;let c=l(b[1]);return null===c?null:{model:null,effort:c}}let v=/^\s*⎿\s+(?:Set model to|Kept model as)\s+(?!(?:and saved as your default|for this session only)\b)([A-Za-z0-9][A-Za-z0-9 .()[\]_:@/-]*?)(?:\s+(?:and saved as your default for new sessions|for this session only))?(?:\s+with\s+([A-Za-z]+)\s+effort\b[^·]*)?\s*(?:·.*)?$/;function w(a){let b=v.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:b[2]?l(b[2]):null}:null}let x=/^\s*(?:\?\s+for\s+shortcuts|esc\s+to\s+cancel)\b/i,y=/^\s*[\u2500-\u259F][\s\u2500-\u259F]*(\S[^\u2500-\u259F]*?)\s+\((minimal|low|medium|high|xhigh)\)\s*$/i;function z(a){if(!x.test(a))return null;let b=a.lastIndexOf("\xb7");if(b<0)return null;let c=l(a.slice(b+1),{allowTruncated:!0});if(!c)return null;let d=a.slice(0,b).trimEnd().split(/\s{2,}/),e=(d[d.length-1]??"").trim();return{model:k(e)?e:null,effort:c}}function A(a){let b=y.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:l(b[2])}:null}let B=/^\s*[●◉◎○]\s+Model\s+changed\s+from\s+\S+(?:\s+\([^)]*\))?\s+to\s+(\S+)(?:\s+\((minimal|low|medium|high|xhigh)\))?\s+for\s+this\s+session\b/i;function C(a){let b=B.exec(a);if(!b)return null;let c=b[1];return j(c)?{model:c,effort:b[2]?l(b[2]):null}:null}let D=/^\s*▣\s+[A-Za-z][A-Za-z0-9-]*\s+·\s+([^·]+?)(?:\s+·\s+[\d.]+\s?m?s)?\s*$/,E=/^\s*[A-Za-z][A-Za-z0-9-]*\s+·\s+([^·]+?)\s+·\s+[\d.]+\s?m?s\s*$/,F=/^\s*[┃╹]/,G=/^\s*#\s+models:\s*([^·]+?)(?:\s+with\s+([A-Za-z]+)\s+effort)?\s*(?:·|$)/i;function H(a){let b=G.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:b[2]?l(b[2]):null}:null}function I(a,b){let c=a.split("\n");for(let a=c.length-1;a>=0;a--){let e=b((0,d.aJ)(c[a]));if(e)return e}return null}function J(a,b){if(!b)return g();switch(a){case"codex":return I(b,p)??g();case"claude":return function(a){let b=I(a,t);if(!b||null!==b.effort)return b;let c=I(a,u);return c?{model:b.model,effort:c.effort}:b}(b)??I(b,w)??g();case"antigravity":return I(b,z)??I(b,A)??g();case"copilot":{let a=function(a){let b=a.split("\n");for(let a=b.length-1;a>=0;a--){let c=(0,d.aJ)(b[a]);if(""!==c.trim()){if(!e.Ub.test(c)&&!e.tJ.test(c))return null;let a=c.trim().split(/\s{2,}/);if(a.length<2)return null;let b=a[a.length-1].split("\xb7").map(a=>a.trim());if(b.length>2)return null;let d=b[0];if(!k(d))return null;if(1===b.length)return{model:d,effort:null};let f=l(b[1]);return null===f?null:{model:d,effort:f}}}return null}(b),c=I(b,C);if(!a)return c??g();if(null!==a.effort||null===c||null===c.effort)return a;return!function(a,b){let c=a=>a.toLowerCase().replace(/[^a-z0-9]/g,"");return c(a)===c(b)}(a.model,c.model)?a:{model:a.model,effort:c.effort}}case"opencode":case"opencode-v2":return function(a){let b=a.split("\n").map(a=>(0,d.aJ)(a));for(let a=b.length-1;a>=0;a--){let c=function(a){let b=D.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:null}:null}(b[a])??function(a,b){let c=E.exec(a[b]);if(!c)return null;let d=c[1].trim();if(!k(d))return null;for(let c=b+1;c<a.length;c++)if(""!==a[c].trim())return F.test(a[c])?{model:d,effort:null}:null;return null}(b,a);if(c)return c}return null}(b)??g();case"command-code":return I(b,H)??g();default:return g()}}let K=/-(low|medium|high)$/i;function L(a,b,c,d){let e=(b||null)??c?.model??null,f=c?.effort??null,g="antigravity"===a?function(a){if(!a)return null;let b=K.exec(a);return b?b[1].toLowerCase():null}(e)??f:f;return{model:e,effort:(d||null)??g}}},27675:(a,b,c)=>{c.d(b,{GR:()=>g,MR:()=>m,NR:()=>o,Wl:()=>i,YN:()=>l,cr:()=>r,eZ:()=>q,gq:()=>j,li:()=>k,vR:()=>n});var d=c(85726),e=c(24455),f=c(36925);function g(a){let b="multiple_choice"===a.type?a.options.map(a=>`${a.number}.${a.label}`):a.options;return[(0,d.J)(a),...b].join("\0")}let h=(0,f.v)("__autoYesEnterFallbacks",()=>new Map);function i(a,b,c,d,f=Date.now()){h.set((0,e.v7)(a,b,c),{outcome:"sent",...d,sentAt:f,at:f})}function j(a,b,c,d,f=Date.now()){let g=(0,e.v7)(a,b,c),i=h.get(g);i&&i.screenKey===d&&h.set(g,{...i,outcome:"no-effect",at:f})}function k(a,b,c){return h.get((0,e.v7)(a,b,c))??null}function l(a,b){return null===a?null:{outcome:a.outcome,promptType:a.promptType,refusalReason:a.refusalReason,sentAt:a.sentAt,at:a.at,currentPrompt:null!=b&&g(b)===a.screenKey}}function m(a){h.delete(a)}function n(a){for(let b of(0,e._9)([...h.keys()],a))h.delete(b)}function o(){h.clear()}let p=(0,f.v)("__autoYesEnterFallbackEpochs",()=>new Map);function q(a,b,c){let d=(0,e.v7)(a,b,c);h.delete(d),p.set(d,(p.get(d)??0)+1)}function r(a){return p.get(a)??0}},27870:(a,b,c)=>{c.d(b,{lY:()=>h,QB:()=>e,Yo:()=>m,fO:()=>n,LF:()=>j,PP:()=>i,T5:()=>g});var d=c(81254);let e=[{number:1,label:"Allow once",reply:"once"},{number:2,label:"Allow always",reply:"always"},{number:3,label:"Reject",reply:"reject"}],f={"opencode-v2":{once:"Allow once",always:"Always allow",reject:"Reject"}};function g(a){let b=f[a];return b?e.map(a=>b[a.reply]?{...a,label:b[a.reply]}:a):e}let h=500;function i(a){return"string"==typeof a&&""!==a}function j(a,b){return"permission-id"===a&&b.some(a=>i(a.id)&&!a.deliveryExpired)}let k={notification:"Notification(permission_prompt)","permission-request":"PermissionRequest (no decision)"};function l(a,b){let c=[`A dialog is open in ${a}: the agent reported it via ${k[b.source]}${b.toolName?` for ${b.toolName}`:""}, but the detection layer published no options for it.`];if(b.decisionOptions&&b.decisionOptions.length>0?c.push(`Answer it with \`commandmate respond ${a} <number>\`: `+b.decisionOptions.map(a=>`${a.number} = ${a.label} (${a.reply})`).join(", ")+". The reply goes to the agent's own API, so no keys are sent to the terminal "+`and the label works too (\`respond ${a} "Allow once"\`).`):c.push(`Answer it in the terminal, or send the option NUMBER with \`commandmate respond ${a} <number>\` — yes/no is not resolved on a numbered dialog (Issue #1681).`),b.message&&c.push(`Agent message: "${b.message}"`),b.askUserQuestion){let{question:d,labels:e,questionCount:f}=b.askUserQuestion,g=i(b.decisionId)&&1===f&&!(b.decisionOptions&&b.decisionOptions.length>0);c.push(`The agent asked${f>1?` ${f} questions, the first being`:""}: "${d}" — offering: ${e.join(" / ")}. `+(g?`Answer it with \`commandmate respond ${a} <number>\`: `+e.map((a,b)=>`${b+1} = ${a}`).join(", ")+". The number is this list's own position and the reply goes to the agent's own API, so no keys are sent to the terminal (the label works too).":"The picker renumbers and adds its own entries, so read the option NUMBER off the terminal rather than counting this list."))}return c.join(" ")}function m(a,b){return{type:d.LT,status:"pending",question:l(a,b),options:[],source:b.source,...b.message?{message:b.message}:{},...b.toolName?{toolName:b.toolName}:{},...b.askUserQuestion?{askUserQuestion:b.askUserQuestion}:{},...b.decisionOptions&&b.decisionOptions.length>0?{decisionOptions:b.decisionOptions}:{},decisionId:i(b.decisionId)?b.decisionId:null,...b.patterns&&b.patterns.length>0?{patterns:[...b.patterns]}:{}}}function n(a,b){return{type:d.LT,status:"unclassified",question:l(a,b),options:[],source:b.source,...b.message?{message:b.message}:{},...b.toolName?{toolName:b.toolName}:{},...b.askUserQuestion?{askUserQuestion:b.askUserQuestion}:{}}}},27939:(a,b,c)=>{c.d(b,{F_:()=>t,KA:()=>u,XO:()=>x,Y2:()=>n,jp:()=>m,lr:()=>v,pr:()=>w});var d=c(29021),e=c(21820),f=c(33873),g=c(8004),h=c(24455),i=c(72626),j=c(36925);let k=(0,i.h)("lib/session/opencode-session-store"),l=/^ses[A-Za-z0-9_-]{1,128}$/;function m(a){return"string"==typeof a&&l.test(a)}let n=200,o=(0,j.v)("__opencodeSessionMemories",()=>new Map);function p(a){return(0,h.v7)(a.worktreeId,a.cliToolId,a.instanceId)}function q(){let a=(0,f.join)((0,e.homedir)(),".commandmate","opencode-sessions.json");return(0,g.T)(process.env.CM_OPENCODE_SESSION_FILE,a,"CM_OPENCODE_SESSION_FILE")}function r(){try{let a=JSON.parse((0,d.readFileSync)(q(),"utf8"));if("object"!=typeof a||null===a||Array.isArray(a))return{};let b={};for(let[c,d]of Object.entries(a))!("object"!=typeof d||null===d||Array.isArray(d))&&m(d.sessionId)&&"string"==typeof d.worktreePath&&d.worktreePath.length>0&&(b[c]={sessionId:d.sessionId,title:"string"==typeof d.title?d.title:null,worktreePath:d.worktreePath,updatedAt:"number"==typeof d.updatedAt?d.updatedAt:0});return b}catch{return{}}}function s(a){let b=q();try{(0,d.mkdirSync)((0,f.dirname)(b),{recursive:!0}),(0,d.writeFileSync)(b,`${JSON.stringify(a,null,2)}
|
|
1
|
+
"use strict";exports.id=1559,exports.ids=[1559],exports.modules={24581:(a,b,c)=>{c.d(b,{Cb:()=>f,Mu:()=>g,RY:()=>j,Tt:()=>i,Ui:()=>q,Xq:()=>m,ZV:()=>t,h_:()=>h,jF:()=>r,kT:()=>p,nY:()=>l,qX:()=>s,wt:()=>o});var d=c(62887),e=c(27870);let f=new Set(["user_prompt_submit","pre_tool_use","post_tool_use"]),g=18e5,h={predicted:2e4,confirmed:18e5},i=3,j=16,k={turnId:null,openedAt:null,closedAt:null,closedBy:null};function l(a){return null===a?k:{turnId:a.turnId,openedAt:a.openedAt,closedAt:a.closedAt,closedBy:a.closedBy}}function m(a){if("string"!=typeof a||0===a.length||a.length>128)return null;for(let b=0;b<a.length;b++){let c=a.charCodeAt(b);if(c<32||127===c)return null}return a}function n(a,b){return"string"!=typeof a||""===a?null:a.slice(0,b)}function o(a){return n(a,e.lY)}function p(a){return n(a,d.h9)}function q(a){if(!Array.isArray(a))return null;let b=[];for(let c of a)if("string"==typeof c&&""!==c&&(b.push(c.slice(0,200)),b.length>=8))break;return b.length>0?b:null}function r(a,b){let c=null===a.confirmedAt?h.predicted:h.confirmed;return b-a.at<c}function s(a,b,c){return null!==b&&c-a.at>=1e3*b}function t(a,b){return null===a.sessionId||null===b||a.sessionId===b}},26547:(a,b,c)=>{c.d(b,{Yz:()=>L,jw:()=>J});var d=c(51297),e=c(61789);let f=["minimal","low","medium","high","xhigh","max","ultra","persistent"];function g(){return{model:null,effort:null}}let h=/^[A-Za-z0-9][A-Za-z0-9._:@/-]*$/,i=/^[A-Za-z0-9][A-Za-z0-9 .()[\]_:@/-]*$/;function j(a){return a.length>0&&a.length<=64&&h.test(a)}function k(a){return a.length>0&&a.length<=64&&i.test(a)}function l(a,b={}){let c=a.trim().toLowerCase();if(""===c)return null;if(f.includes(c))return c;if(!b.allowTruncated||c.length<2)return null;let d=f.filter(a=>a.length===c.length+1&&a.startsWith(c));return 1===d.length?d[0]:null}let m=/^\s*([^\s·]+)(?:\s+(minimal|low|medium|high|xhigh|max|ultra|persistent)\b)?/i,n=/^\s*[^\s·]+\s+[A-Za-z][A-Za-z_-]*(?=\s|$)/,o=/^\s*\S[^·]*·\s*~?\/\S*(?:\s*·[^\n]*|[^\S\n]{2,}\S[^\n]*)$/;function p(a){if(!e.aW.test(a)&&!o.test(a))return null;let b=a.indexOf("\xb7");if(b<0)return null;let c=a.slice(0,b),d=m.exec(c);if(!d)return null;let f=d[1];if(!j(f))return null;let g=d[2]?l(d[2]):null;return null!==g||/\d/.test(f)?null===g&&n.test(c)?{model:f,effort:null,effortUnreadable:!0}:{model:f,effort:g}:null}let q=/^\s*[\u2500-\u259F][\s\u2500-\u259F]*(\S[^\u2500-\u259F]*?)\s+with\s+(minimal|low|medium|high|xhigh)\s+effort\b/i,r=/^\s*[\u2500-\u259F][\s\u2500-\u259F]*(\S[^\u2500-\u259F·]*?)\s+·\s+Claude\s+[A-Za-z]+\b/,s=/^\s*\S\s+([A-Za-z]+)\s+·\s+\/effort\s*$/;function t(a){let b=q.exec(a);if(b){let a=b[1].trim();return k(a)?{model:a,effort:l(b[2])}:null}let c=r.exec(a);if(!c)return null;let d=c[1].trim();return/\swith\s/i.test(d)||!k(d)?null:{model:d,effort:null}}function u(a){let b=s.exec(a);if(!b)return null;let c=l(b[1]);return null===c?null:{model:null,effort:c}}let v=/^\s*⎿\s+(?:Set model to|Kept model as)\s+(?!(?:and saved as your default|for this session only)\b)([A-Za-z0-9][A-Za-z0-9 .()[\]_:@/-]*?)(?:\s+(?:and saved as your default for new sessions|for this session only))?(?:\s+with\s+([A-Za-z]+)\s+effort\b[^·]*)?\s*(?:·.*)?$/;function w(a){let b=v.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:b[2]?l(b[2]):null}:null}let x=/^\s*(?:\?\s+for\s+shortcuts|esc\s+to\s+cancel)\b/i,y=/^\s*[\u2500-\u259F][\s\u2500-\u259F]*(\S[^\u2500-\u259F]*?)\s+\((minimal|low|medium|high|xhigh)\)\s*$/i;function z(a){if(!x.test(a))return null;let b=a.lastIndexOf("\xb7");if(b<0)return null;let c=l(a.slice(b+1),{allowTruncated:!0});if(!c)return null;let d=a.slice(0,b).trimEnd().split(/\s{2,}/),e=(d[d.length-1]??"").trim();return{model:k(e)?e:null,effort:c}}function A(a){let b=y.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:l(b[2])}:null}let B=/^\s*[●◉◎○]\s+Model\s+changed\s+from\s+\S+(?:\s+\([^)]*\))?\s+to\s+(\S+)(?:\s+\((minimal|low|medium|high|xhigh)\))?\s+for\s+this\s+session\b/i;function C(a){let b=B.exec(a);if(!b)return null;let c=b[1];return j(c)?{model:c,effort:b[2]?l(b[2]):null}:null}let D=/^\s*▣\s+[A-Za-z][A-Za-z0-9-]*\s+·\s+([^·]+?)(?:\s+·\s+[\d.]+\s?m?s)?\s*$/,E=/^\s*[A-Za-z][A-Za-z0-9-]*\s+·\s+([^·]+?)\s+·\s+[\d.]+\s?m?s\s*$/,F=/^\s*[┃╹]/,G=/^\s*#\s+models:\s*([^·]+?)(?:\s+with\s+([A-Za-z]+)\s+effort)?\s*(?:·|$)/i;function H(a){let b=G.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:b[2]?l(b[2]):null}:null}function I(a,b){let c=a.split("\n");for(let a=c.length-1;a>=0;a--){let e=b((0,d.aJ)(c[a]));if(e)return e}return null}function J(a,b){if(!b)return g();switch(a){case"codex":return I(b,p)??g();case"claude":return function(a){let b=I(a,t);if(!b||null!==b.effort)return b;let c=I(a,u);return c?{model:b.model,effort:c.effort}:b}(b)??I(b,w)??g();case"antigravity":return I(b,z)??I(b,A)??g();case"copilot":{let a=function(a){let b=a.split("\n");for(let a=b.length-1;a>=0;a--){let c=(0,d.aJ)(b[a]);if(""!==c.trim()){if(!e.Ub.test(c)&&!e.tJ.test(c))return null;let a=c.trim().split(/\s{2,}/);if(a.length<2)return null;let b=a[a.length-1].split("\xb7").map(a=>a.trim());if(b.length>2)return null;let d=b[0];if(!k(d))return null;if(1===b.length)return{model:d,effort:null};let f=l(b[1]);return null===f?null:{model:d,effort:f}}}return null}(b),c=I(b,C);if(!a)return c??g();if(null!==a.effort||null===c||null===c.effort)return a;return!function(a,b){let c=a=>a.toLowerCase().replace(/[^a-z0-9]/g,"");return c(a)===c(b)}(a.model,c.model)?a:{model:a.model,effort:c.effort}}case"opencode":case"opencode-v2":return function(a){let b=a.split("\n").map(a=>(0,d.aJ)(a));for(let a=b.length-1;a>=0;a--){let c=function(a){let b=D.exec(a);if(!b)return null;let c=b[1].trim();return k(c)?{model:c,effort:null}:null}(b[a])??function(a,b){let c=E.exec(a[b]);if(!c)return null;let d=c[1].trim();if(!k(d))return null;for(let c=b+1;c<a.length;c++)if(""!==a[c].trim())return F.test(a[c])?{model:d,effort:null}:null;return null}(b,a);if(c)return c}return null}(b)??g();case"command-code":return I(b,H)??g();default:return g()}}let K=/-(low|medium|high)$/i;function L(a,b,c,d){let e=(b||null)??c?.model??null,f=c?.effort??null,g="antigravity"===a?function(a){if(!a)return null;let b=K.exec(a);return b?b[1].toLowerCase():null}(e)??f:f;return{model:e,effort:(d||null)??g}}},27675:(a,b,c)=>{c.d(b,{GR:()=>g,MR:()=>m,NR:()=>o,Wl:()=>i,YN:()=>l,cr:()=>r,eZ:()=>q,gq:()=>j,li:()=>k,vR:()=>n});var d=c(85726),e=c(24455),f=c(36925);function g(a){let b="multiple_choice"===a.type?a.options.map(a=>`${a.number}.${a.label}`):a.options;return[(0,d.J)(a),...b].join("\0")}let h=(0,f.v)("__autoYesEnterFallbacks",()=>new Map);function i(a,b,c,d,f=Date.now()){let g=(0,e.v7)(a,b,c),j=r(g),{epoch:k=j,...l}=d;return k===j&&(h.set(g,{outcome:"sent",...l,sentAt:f,at:f,epoch:k}),!0)}function j(a,b,c,d,f=Date.now()){let g=(0,e.v7)(a,b,c),i=h.get(g);i&&i.screenKey===d&&h.set(g,{...i,outcome:"no-effect",at:f})}function k(a,b,c){let d=(0,e.v7)(a,b,c),f=h.get(d);return f&&f.epoch===r(d)?f:null}function l(a,b){return null===a?null:{outcome:a.outcome,promptType:a.promptType,refusalReason:a.refusalReason,sentAt:a.sentAt,at:a.at,currentPrompt:null!=b&&g(b)===a.screenKey}}function m(a){h.delete(a)}function n(a){for(let b of(0,e._9)([...h.keys()],a))h.delete(b)}function o(){h.clear()}let p=(0,f.v)("__autoYesEnterFallbackEpochs",()=>new Map);function q(a,b,c){let d=(0,e.v7)(a,b,c);h.delete(d),p.set(d,(p.get(d)??0)+1)}function r(a){return p.get(a)??0}},27870:(a,b,c)=>{c.d(b,{lY:()=>h,QB:()=>e,Yo:()=>m,fO:()=>n,LF:()=>j,PP:()=>i,T5:()=>g});var d=c(81254);let e=[{number:1,label:"Allow once",reply:"once"},{number:2,label:"Allow always",reply:"always"},{number:3,label:"Reject",reply:"reject"}],f={"opencode-v2":{once:"Allow once",always:"Always allow",reject:"Reject"}};function g(a){let b=f[a];return b?e.map(a=>b[a.reply]?{...a,label:b[a.reply]}:a):e}let h=500;function i(a){return"string"==typeof a&&""!==a}function j(a,b){return"permission-id"===a&&b.some(a=>i(a.id)&&!a.deliveryExpired)}let k={notification:"Notification(permission_prompt)","permission-request":"PermissionRequest (no decision)"};function l(a,b){let c=[`A dialog is open in ${a}: the agent reported it via ${k[b.source]}${b.toolName?` for ${b.toolName}`:""}, but the detection layer published no options for it.`];if(b.decisionOptions&&b.decisionOptions.length>0?c.push(`Answer it with \`commandmate respond ${a} <number>\`: `+b.decisionOptions.map(a=>`${a.number} = ${a.label} (${a.reply})`).join(", ")+". The reply goes to the agent's own API, so no keys are sent to the terminal "+`and the label works too (\`respond ${a} "Allow once"\`).`):c.push(`Answer it in the terminal, or send the option NUMBER with \`commandmate respond ${a} <number>\` — yes/no is not resolved on a numbered dialog (Issue #1681).`),b.message&&c.push(`Agent message: "${b.message}"`),b.askUserQuestion){let{question:d,labels:e,questionCount:f}=b.askUserQuestion,g=i(b.decisionId)&&1===f&&!(b.decisionOptions&&b.decisionOptions.length>0);c.push(`The agent asked${f>1?` ${f} questions, the first being`:""}: "${d}" — offering: ${e.join(" / ")}. `+(g?`Answer it with \`commandmate respond ${a} <number>\`: `+e.map((a,b)=>`${b+1} = ${a}`).join(", ")+". The number is this list's own position and the reply goes to the agent's own API, so no keys are sent to the terminal (the label works too).":"The picker renumbers and adds its own entries, so read the option NUMBER off the terminal rather than counting this list."))}return c.join(" ")}function m(a,b){return{type:d.LT,status:"pending",question:l(a,b),options:[],source:b.source,...b.message?{message:b.message}:{},...b.toolName?{toolName:b.toolName}:{},...b.askUserQuestion?{askUserQuestion:b.askUserQuestion}:{},...b.decisionOptions&&b.decisionOptions.length>0?{decisionOptions:b.decisionOptions}:{},decisionId:i(b.decisionId)?b.decisionId:null,...b.patterns&&b.patterns.length>0?{patterns:[...b.patterns]}:{}}}function n(a,b){return{type:d.LT,status:"unclassified",question:l(a,b),options:[],source:b.source,...b.message?{message:b.message}:{},...b.toolName?{toolName:b.toolName}:{},...b.askUserQuestion?{askUserQuestion:b.askUserQuestion}:{}}}},27939:(a,b,c)=>{c.d(b,{F_:()=>t,KA:()=>u,XO:()=>x,Y2:()=>n,jp:()=>m,lr:()=>v,pr:()=>w});var d=c(29021),e=c(21820),f=c(33873),g=c(8004),h=c(24455),i=c(72626),j=c(36925);let k=(0,i.h)("lib/session/opencode-session-store"),l=/^ses[A-Za-z0-9_-]{1,128}$/;function m(a){return"string"==typeof a&&l.test(a)}let n=200,o=(0,j.v)("__opencodeSessionMemories",()=>new Map);function p(a){return(0,h.v7)(a.worktreeId,a.cliToolId,a.instanceId)}function q(){let a=(0,f.join)((0,e.homedir)(),".commandmate","opencode-sessions.json");return(0,g.T)(process.env.CM_OPENCODE_SESSION_FILE,a,"CM_OPENCODE_SESSION_FILE")}function r(){try{let a=JSON.parse((0,d.readFileSync)(q(),"utf8"));if("object"!=typeof a||null===a||Array.isArray(a))return{};let b={};for(let[c,d]of Object.entries(a))!("object"!=typeof d||null===d||Array.isArray(d))&&m(d.sessionId)&&"string"==typeof d.worktreePath&&d.worktreePath.length>0&&(b[c]={sessionId:d.sessionId,title:"string"==typeof d.title?d.title:null,worktreePath:d.worktreePath,updatedAt:"number"==typeof d.updatedAt?d.updatedAt:0});return b}catch{return{}}}function s(a){let b=q();try{(0,d.mkdirSync)((0,f.dirname)(b),{recursive:!0}),(0,d.writeFileSync)(b,`${JSON.stringify(a,null,2)}
|
|
2
2
|
`,{mode:384})}catch(a){k.warn("opencode-session-file-write-failed",{path:b,error:a instanceof Error?a.message:String(a)})}}function t(a,b,c=Date.now()){if(!m(b.sessionId))return k.warn("opencode-session-id-rejected",{worktreeId:a.worktreeId,instanceId:a.instanceId??a.cliToolId}),!1;if(0===b.worktreePath.length)return!1;let d={sessionId:b.sessionId,title:"string"==typeof b.title?b.title.slice(0,n):null,worktreePath:b.worktreePath,updatedAt:c},e=p(a);o.set(e,d);let f=r();return f[e]=d,s(f),!0}function u(a){let b=p(a),c=o.get(b);if(c)return c;let d=r()[b];return d?(o.set(b,d),d):null}function v(a){let b=p(a);o.delete(b);let c=r();b in c&&(delete c[b],s(c))}function w(a,b){let c=u(a);return c?c.worktreePath!==b?(k.info("opencode-session-recovery-path-mismatch",{worktreeId:a.worktreeId,instanceId:a.instanceId??a.cliToolId,recorded:c.worktreePath}),null):m(c.sessionId)?c.sessionId:null:null}function x(a,b){return m(b)?`${a} -s ${b}`:a}},33294:(a,b,c)=>{c.r(b),c.d(b,{AGENT_EVENT_DEDUP_WINDOW_MS:()=>l,AGENT_MODEL_EFFORT_SUFFIX_PATTERN:()=>H,LIFECYCLE_AGENT_EVENT_TYPES:()=>v,STRUCTURED_PROMPT_PROVISIONAL_MAX_AGE_MS:()=>aQ,STRUCTURED_STATE_MAX_AGE_MS:()=>aw,agentEventKeyClaimedAt:()=>r,beginAgentEventGeneration:()=>aN,classifyAgentEventDelivery:()=>w,clearAgentStopEvents:()=>aX,clearAskUserQuestion:()=>aF,clearStructuredPromptWaiting:()=>aW,closeAgentTurn:()=>aj,corroborateStructuredPromptWaiting:()=>aU,discardAgentEventState:()=>aP,getAgentEventDropCounts:()=>o,getAgentEventGenerationStartedAt:()=>aO,getAgentModelBaseline:()=>M,getAgentTurn:()=>ah,getAskUserQuestion:()=>aE,getAwaitingInstruction:()=>az,getLastAgentEvent:()=>aM,getLastCapturedModelInfo:()=>S,getLastKnownAgentEffort:()=>Y,getLastKnownAgentModel:()=>P,getLastReportedAgentEffort:()=>X,getLastStopEventAt:()=>aJ,getPendingDecisions:()=>ag,getPublishedAgentTurn:()=>ai,getRecentEventIdentityCount:()=>y,getRecentEventKeyCount:()=>u,getResolvedAgentModelInfo:()=>T,getStructuredPromptWaiting:()=>aT,getStructuredSessionState:()=>ax,isAwaitingInstruction:()=>aA,isDuplicateAgentEvent:()=>p,isPreToolUseOutsideTurn:()=>an,isSameAgentModelName:()=>K,joinOpenTurnFromDuplicate:()=>aq,markStructuredPromptRecorded:()=>aV,observeScraperCompletionEvidence:()=>ak,onAgentModelChange:()=>L,recordAgentEvent:()=>aL,recordAgentReportedEffort:()=>W,recordAgentReportedModel:()=>Q,recordAgentStopEvent:()=>aI,recordAskUserQuestion:()=>aD,recordCapturedModelInfo:()=>R,reportPermissionRequestPending:()=>aR,reportQuestionPending:()=>aS,shortSessionTag:()=>s});var d=c(24455),e=c(27675),f=c(55511),g=c(24581),h=c(36925);let i=(0,h.v)("__agentEventDrops",()=>new Map),j=(0,h.v)("__agentEventRecentKeys",()=>new Map),k=(0,h.v)("__agentEventRecentIdentities",()=>new Map),l=3e3;function m(){return{dedupDropped:{identity:0,timeWindow:0},decisionEvicted:0,idsDiscarded:0,dialogTimedOut:0,decisionOverflow:0}}function n(a){let b=i.get(a);return b||(b=m(),i.set(a,b),x(i,512)),b}function o(a,b,c){let e=i.get((0,d.v7)(a,b,c));return e?{...e,dedupDropped:{...e.dedupDropped}}:m()}function p(a,b,c,e,f,h=Date.now(),i=null){var k,m;if(!f)return!1;let n=(0,d.v7)(a,b,c),o=q(n,e,i,f),r=j.get(o);return void 0!==r&&h-r<l||(j.set(o,h),g.Cb.has(e)?t(n,["stop"],f):"stop"===e&&(k=n,m=f,t(k,g.Cb,m)),function(a){for(let[b,c]of j)a-c>=l&&j.delete(b);for(;j.size>512;){let a=j.keys().next();if(a.done)break;j.delete(a.value)}}(h),!1)}function q(a,b,c,d){return[a,b,c??"",d].join(" ")}function r(a,b,c,e,f,g=null){if(!f)return null;let h=(0,d.v7)(a,b,c);return j.get(q(h,e,g,f))??null}function s(a){return(0,f.createHash)("sha256").update(a).digest("hex").slice(0,8)}function t(a,b,c){let d=Array.from(b,b=>`${a} ${b} `),e=` ${c}`,f=(a,b)=>a.length>=b.length+e.length&&a.startsWith(b);for(let a of j.keys())a.endsWith(e)&&d.some(b=>f(a,b))&&j.delete(a)}function u(){return j.size}let v=["stop","session_end"];function w(a){let b=(0,d.v7)(a.worktreeId,a.cliToolId,a.instanceId);if(null!==a.identityKind){let e=null===a.identity?null:(0,g.Xq)(a.identity);if(null!==a.identity&&null===e&&(n(b).idsDiscarded+=1),null!==e)return!function(a,b){let c=(0,d.v7)(a.worktreeId,a.cliToolId,a.instanceId),e=k.get(c);e||(e=new Map,k.set(c,e),x(k,512));let f=[a.event,a.detail??"",b].join(" ");return!!e.has(f)||(e.set(f,a.at),x(e,512),!1)}(a,e)?{duplicate:!1}:(n(b).dedupDropped.identity+=1,{duplicate:!0,by:"identity"});if(v.includes(a.event)){var c;return"stop"===a.event&&a.sessionId&&(c=a.sessionId,t(b,g.Cb,c)),{duplicate:!1}}}return p(a.worktreeId,a.cliToolId,a.instanceId,a.event,a.sessionId,a.at,a.detail)?(n(b).dedupDropped.timeWindow+=1,{duplicate:!0,by:"time-window"}):{duplicate:!1}}function x(a,b){for(;a.size>b;){let b=a.keys().next();if(b.done)break;a.delete(b.value)}}function y(a,b,c){if(void 0===a||void 0===b){let a=0;for(let b of k.values())a+=b.size;return a}return k.get((0,d.v7)(a,b,c))?.size??0}var z=c(62887),A=c(26547);let B=(0,h.v)("__agentEventLastModel",()=>new Map),C=(0,h.v)("__agentEventLastModelAt",()=>new Map),D=(0,h.v)("__agentCapturedModelInfo",()=>new Map),E=(0,h.v)("__agentEventLastEffort",()=>new Map),F=(0,h.v)("__agentModelBaseline",()=>new Map),G=(0,h.v)("__agentModelChangeListeners",()=>new Set),H=/[-_ ](?:minimal|low|medium|high|xhigh)$/i,I=/\bcontext\b/gi;function J(a){return a.replace(H,"").replace(I,"").toLowerCase().replace(/[^a-z0-9]/g,"")}function K(a,b,c={}){let d=J(a),e=J(b);return d===e||!!c.crossSource&&0!==d.length&&0!==e.length&&(d.includes(e)||e.includes(d))}function L(a){return G.add(a),()=>{G.delete(a)}}function M(a,b,c){return F.get((0,d.v7)(a,b,c))??null}function N(a,b,c,e,f){let g=(0,d.v7)(a,b,c),{info:h,source:i}=V(g,b),j=h.model;if(null===j||null===i)return;let k=F.get(g),l={model:j,source:i};if(void 0===k){F.set(g,l),x(F,512);return}if(K(k.model,j,{crossSource:k.source!==i}))return void F.set(g,l);F.set(g,l);var m={worktreeId:a,cliToolId:b,instanceId:c??b,from:k.model,to:j,source:e,at:f};for(let a of G)try{a(m)}catch{}}function O(a,b){"string"==typeof b.model&&""!==b.model&&(B.set(a,b.model.slice(0,z.h9)),C.set(a,b.at))}function P(a,b,c){return B.get((0,d.v7)(a,b,c))??null}function Q(a,b,c,e,f=Date.now()){if("string"!=typeof e||""===e)return;let g=(0,d.v7)(a,b,c);B.set(g,e.slice(0,z.h9)),C.set(g,f),N(a,b,c,"hook",f)}function R(a,b,c,e,f=Date.now()){if(!e.model&&!e.effort)return;let g=(0,d.v7)(a,b,c),h=D.get(g),i=e.model?e.model.slice(0,z.h9):h?.model??null;D.set(g,{model:i,effort:e.effortUnreadable?null:e.effort??h?.effort??null,modelChangedAt:null===i?null:i===(h?.model??null)?h?.modelChangedAt??f:f}),e.model&&N(a,b,c,"frame",f)}function S(a,b,c){let e=D.get((0,d.v7)(a,b,c));return{model:e?.model??null,effort:e?.effort??null}}function T(a,b,c){return V((0,d.v7)(a,b,c),b).info}let U=new Set(["claude"]);function V(a,b){let c=B.get(a)??null,d=D.get(a),e={model:d?.model??null,effort:d?.effort??null},f=E.get(a)??null,g=d?.modelChangedAt??null,h=null!==c&&null!==e.model&&null!==g&&U.has(b)&&g>(C.get(a)??0)&&!K(c,e.model,{crossSource:!0}),i=(0,A.Yz)(b,h?null:c,e,f);return null===i.model?{info:i,source:null}:{info:i,source:null===c||h?"frame":"hook"}}function W(a,b,c,e){"string"==typeof e&&""!==e&&E.set((0,d.v7)(a,b,c),e.slice(0,z.h9))}function X(a,b,c){return E.get((0,d.v7)(a,b,c))??null}function Y(a,b,c){return T(a,b,c).effort}let Z=(0,h.v)("__agentEventGenerationStartedAt",()=>new Map),$=(0,h.v)("__agentEventTurns",()=>new Map),_=(0,h.v)("__agentEventReopenedTurns",()=>new Map),aa=(0,h.v)("__agentEventTurnSeq",()=>({value:0}));function ab(a){return Z.get(a)??null}function ac(a){let b=$.get(a);return b&&b.generationAt===ab(a)?b:null}function ad(a,b){let c=ac(a);return null===c?null:(null===c.closedAt&&b-c.displayEvent.at>=g.Mu&&(c.closedAt=c.displayEvent.at+g.Mu,c.closedBy="stale"),c)}function ae(a){return aa.value+=1,`turn-${a}-${aa.value}`}function af(a,b,c){let d=b.pendingDecisions.filter(a=>(0,g.jF)(a,c)),e=b.pendingDecisions.length-d.length;return e>0&&(n(a).dialogTimedOut+=e,b.pendingDecisions=d),d}function ag(a,b,c,e=Date.now()){let f=(0,d.v7)(a,b,c),g=ad(f,e);return null===g?[]:af(f,g,e)}function ah(a,b,c,e=Date.now()){return ad((0,d.v7)(a,b,c),e)}function ai(a,b,c,d=Date.now()){return(0,g.nY)(ah(a,b,c,d))}function aj(a,b,c,e,f=Date.now()){let g=ac((0,d.v7)(a,b,c));return null!==g&&null===g.closedAt&&(g.closedAt=f,g.closedBy=e,!0)}function ak(a,b,c,e,f=Date.now(),h=!0){let i=ac((0,d.v7)(a,b,c));return null!==i&&null===i.closedAt&&(e?(i.scraperCompletionPolls+=1,!(i.scraperCompletionPolls<g.Tt)&&!!h&&(i.closedAt=f,i.closedBy="scraper_evidence",!0)):(i.scraperCompletionPolls=0,!1))}function al(a,b){let c=$.get(a);c&&(0!==c.pendingDecisions.length&&(n(a).decisionEvicted+=c.pendingDecisions.length,c.pendingDecisions=[]),null===c.closedAt&&(c.closedAt=b,c.closedBy="generation",c.generationAt=b))}function am(a){let b=ac(a);return null!==b&&null!==b.closedAt&&"stop"===b.closedBy}function an(a,b,c,e){return e&&am((0,d.v7)(a,b,c))}function ao(a){return{event:a.event,at:a.at,detail:a.detail}}function ap(a,b,c,{continueOpen:d}){let e=ac(a),f=null!==e&&null===e.closedAt&&null!==e.openedAt&&(0,g.ZV)(e,b.sessionId);if(d&&f){e.displayEvent=ao(b),e.sessionId??=b.sessionId,e.scraperCompletionPolls=0;return}let h=null!==e&&null===e.openedAt&&null===e.closedAt?e.pendingDecisions:[],i={turnId:ae(b.at),sessionId:b.sessionId,openedAt:b.at,closedAt:null,closedBy:null,generationAt:c,displayEvent:ao(b),pendingDecisions:h,scraperCompletionPolls:0};$.set(a,i),au(),"user_prompt_submit"===b.event&&f&&(_.set(a,{turnId:i.turnId,replaced:e}),x(_,512))}function aq(a,b,c,e){if("user_prompt_submit"!==e.event||!0!==e.joinsOpenTurn)return!1;let f=(0,d.v7)(a,b,c),h=_.get(f),i=ac(f);if(!h||null===i||i.turnId!==h.turnId||null!==i.closedAt||!(0,g.ZV)(i,e.sessionId))return!1;let{replaced:j}=h;return j.generationAt===i.generationAt&&($.set(f,{...j,closedAt:null,closedBy:null,displayEvent:i.displayEvent,pendingDecisions:i.pendingDecisions,scraperCompletionPolls:0}),_.delete(f),!0)}function ar(a,b,c){let d=ac(a);null===d?(d={turnId:ae(c.at),sessionId:null,openedAt:null,closedAt:null,closedBy:null,generationAt:b,displayEvent:c.bootstrapDisplay,pendingDecisions:[],scraperCompletionPolls:0},$.set(a,d),au()):null!==d.closedAt&&(d={turnId:ae(c.at),sessionId:null,openedAt:null,closedAt:null,closedBy:null,generationAt:b,displayEvent:c.bootstrapDisplay,pendingDecisions:[],scraperCompletionPolls:0},$.set(a,d),au());let e=null===c.decisionId?null:(0,g.Xq)(c.decisionId);null!==c.decisionId&&null===e&&(n(a).idsDiscarded+=1);let f="notification"===c.source,h=null!==e?d.pendingDecisions.find(a=>a.decisionId===e)??d.pendingDecisions.find(a=>null===a.decisionId&&"permission-request"===a.source):d.pendingDecisions.find(a=>null===a.decisionId);if(h){h.message=(0,g.wt)(c.message)??h.message,h.toolName=(0,g.kT)(c.toolName)??h.toolName,h.patterns=(0,g.Ui)(c.patterns)??h.patterns,h.decisionId??=e,f&&(h.source="notification",h.confirmedAt??=c.at);return}if(d.pendingDecisions.length>=g.RY){n(a).decisionOverflow+=1;return}d.pendingDecisions.push({decisionId:e,at:c.at,source:c.source,message:(0,g.wt)(c.message),toolName:(0,g.kT)(c.toolName),patterns:(0,g.Ui)(c.patterns),confirmedAt:f?c.at:null,scraperCorroborated:!1,recorded:!1})}function as(a){let b=ac(a);null!==b&&(b.pendingDecisions=[])}function at(a,b){let c=ac(a);if(null===c||0===c.pendingDecisions.length)return;let d=null===b.decisionId||void 0===b.decisionId?null:(0,g.Xq)(b.decisionId);if(null===d){c.pendingDecisions=[];return}c.pendingDecisions=c.pendingDecisions.filter(a=>null!==a.decisionId&&a.decisionId!==d)}function au(){x($,512)}var av=c(67882);let aw=g.Mu;function ax(a,b,c,e=Date.now()){let f=(0,d.v7)(a,b,c),g=ad(f,e);if(null===g)return null;let h=g.displayEvent;if(e-h.at>=aw)return null;let i={event:h.event,at:h.at,detail:h.detail},j=af(f,g,e);if(j.length>0)return{status:"waiting",reason:"notification"===j[0].source?av.Oh.PERMISSION_PROMPT:av.Oh.PERMISSION_REQUEST,...i};if(null!==g.closedAt)return"stop"===g.closedBy?{status:"ready",reason:av.Oh.STOP,...i}:null;let k=(0,av.DA)(h.event,h.detail);return null===k||"waiting"===k.status?null===g.openedAt?null:{status:"running",reason:av.Oh.PROMPT_SUBMIT,...i}:{...k,...i}}let ay=(0,h.v)("__agentEventAwaitingInstruction",()=>new Map);function az(a,b,c){let e=(0,d.v7)(a,b,c),f=ay.get(e);if(!f)return null;let g=Z.get(e);return void 0!==g&&f.at<g?null:f}function aA(a,b,c){return null!==az(a,b,c)}var aB=c(49154);let aC=(0,h.v)("__agentEventAskUserQuestion",()=>new Map);function aD(a,b,c,e,f=Date.now()){aC.set((0,d.v7)(a,b,c),{at:f,spec:e})}function aE(a,b,c,e=Date.now()){let f=(0,d.v7)(a,b,c),g=aC.get(f);if(!g)return null;let h=Z.get(f);return void 0!==h&&g.at<h||e-g.at>=aw?null:g}function aF(a,b,c){aC.delete((0,d.v7)(a,b,c))}let aG=(0,h.v)("__agentEventLastStopAt",()=>new Map),aH=(0,h.v)("__agentEventLast",()=>new Map);function aI(a,b,c,e=Date.now()){aG.set((0,d.v7)(a,b,c),e)}function aJ(a,b,c){return aG.get((0,d.v7)(a,b,c))??null}let aK=["running","waiting"];function aL(a,b,c,f,h={}){let i=(0,d.v7)(a,b,c);return!function(a,b,c,e,f){if("session_start"!==e.event||!0!==f.sessionStartMayArriveLate)return!1;let g=ax(a,b,c,e.at);if(null===g||!aK.includes(g.status))return!1;let h=aH.get((0,d.v7)(a,b,c))?.sessionId??null;return null===h||null==e.sessionId||e.sessionId===h}(a,b,c,f,h)?(aH.set(i,f),"session_start"===f.event&&F.delete(i),O(i,f),N(a,b,c,"hook",f.at),!function(a,b){switch(b.event){case"pre_tool_use":aB.mW.includes(b.detail??"")||aC.delete(a);return;case"notification":"idle_prompt"===b.detail&&aC.delete(a);return;case"post_tool_use":case"stop":case"user_prompt_submit":case"session_start":case"session_end":aC.delete(a);return;default:b.event;return}}(i,f),"session_start"===f.event&&(Z.set(i,f.at),(0,e.eZ)(a,b,c),al(i,f.at)),!function(a,b){let c=ab(a);if(null===c||!(b.at<c))switch(b.event){case"user_prompt_submit":ap(a,b,c,{continueOpen:!0===b.joinsOpenTurn}),as(a);return;case"post_tool_use":ap(a,b,c,{continueOpen:!0}),as(a);return;case"pre_tool_use":if(!0===b.promptOpensTurns&&am(a))return;ap(a,b,c,{continueOpen:!0});return;case"stop":!function(a,b,c){let d=ac(a);if(null!==d&&null===d.closedAt&&null!==d.openedAt){if(!(0,g.ZV)(d,b.sessionId))return;d.closedAt=b.at,d.closedBy="stop",d.displayEvent=ao(b),as(a);return}$.set(a,{turnId:ae(b.at),sessionId:b.sessionId,openedAt:null,closedAt:b.at,closedBy:"stop",generationAt:c,displayEvent:ao(b),pendingDecisions:[],scraperCompletionPolls:0}),au()}(a,b,c);return;case"session_end":(function(a,b){let c=ac(a);null!==c&&(0,g.ZV)(c,b.sessionId)&&(c.closedAt=b.at,c.closedBy="session_end")})(a,b),as(a);return;case"session_start":return;case"notification":!function(a,b,c){if("permission_prompt"===b.detail)return!0===b.promptSettled?at(a,b):ar(a,c,{source:"notification",at:b.at,message:b.message??null,toolName:b.toolName??null,patterns:b.decisionPatterns??null,decisionId:b.decisionId??null,bootstrapDisplay:ao(b)});if(b.detail===z.KC){!0===b.promptSettled&&at(a,b);return}if("idle_prompt"===b.detail){as(a);let d=ac(a);if(null!==d&&null===d.closedAt){d.displayEvent=ao(b);return}if(null!==d)return;$.set(a,{turnId:ae(b.at),sessionId:b.sessionId,openedAt:null,closedAt:null,closedBy:null,generationAt:c,displayEvent:ao(b),pendingDecisions:[],scraperCompletionPolls:0}),au()}}(a,b,c);return;default:b.event;return}}(i,f),!function(a,b){switch(b.event){case"notification":"idle_prompt"===b.detail&&ay.set(a,{at:b.at,message:b.message??null});return;case"user_prompt_submit":case"session_start":case"session_end":ay.delete(a);return;case"stop":case"pre_tool_use":case"post_tool_use":return;default:b.event;return}}(i,f),{recorded:!0}):(O(i,f),N(a,b,c,"hook",f.at),{recorded:!1,skipped:"late-session-start"})}function aM(a,b,c){return aH.get((0,d.v7)(a,b,c))??null}function aN(a,b,c,e=Date.now()){let f=(0,d.v7)(a,b,c);Z.set(f,e),al(f,e),aC.delete(f),ay.delete(f),B.delete(f),C.delete(f),D.delete(f),E.delete(f),F.delete(f),k.delete(f)}function aO(a,b,c){return Z.get((0,d.v7)(a,b,c))??null}function aP(a,b,c){let e=(0,d.v7)(a,b,c);aH.delete(e),Z.delete(e),$.delete(e),i.delete(e),aC.delete(e),ay.delete(e),B.delete(e),C.delete(e),D.delete(e),E.delete(e),F.delete(e),k.delete(e)}let aQ=g.h_.predicted;function aR(a,b,c,e,f=Date.now()){let g=(0,d.v7)(a,b,c);ar(g,ab(g),{source:"permission-request",at:f,message:null,toolName:e,patterns:null,decisionId:null,bootstrapDisplay:{event:"notification",at:f,detail:"permission_prompt"}})}function aS(a,b,c,e,f=Date.now()){let g=(0,d.v7)(a,b,c);ar(g,ab(g),{source:"notification",at:f,message:null,toolName:e.toolName,patterns:null,decisionId:e.decisionId,bootstrapDisplay:{event:"notification",at:f,detail:e.detail}})}function aT(a,b,c,d=Date.now()){return ag(a,b,c,d)[0]??null}function aU(a,b,c,d=Date.now()){let e=aT(a,b,c,d);e&&(e.scraperCorroborated=!0,e.confirmedAt??=d)}function aV(a,b,c){let d=aT(a,b,c);d&&(d.recorded=!0)}function aW(a,b,c){as((0,d.v7)(a,b,c))}function aX(){aG.clear(),aH.clear(),j.clear(),k.clear(),Z.clear(),$.clear(),_.clear(),i.clear(),aC.clear(),ay.clear(),B.clear(),C.clear(),D.clear(),E.clear(),F.clear()}},49154:(a,b,c)=>{c.d(b,{GF:()=>e,Wk:()=>g,mW:()=>f});var d=c(13287);let e="question",f=[d.k$,e];function g(a){return null!==a&&f.includes(a)?"question":"permission"}},56791:(a,b,c)=>{c.r(b),c.d(b,{ACTIVE_FILTER:()=>d.ks,ACTIVE_TASK_STATUSES:()=>d.EL,AgentInstanceLimitError:()=>d.AC,CURRENT_SCHEMA_VERSION:()=>f.FT,DEFAULT_RUN_HISTORY_LIMIT:()=>d.Tu,InvalidAgentInstanceError:()=>d.ug,MAX_DISABLED_REPOSITORIES:()=>h.nc,MAX_RUN_HISTORY_DAYS:()=>d.eP,MAX_RUN_HISTORY_LIMIT:()=>d.mg,MemoDbError:()=>d.lm,NEW_SUBSCRIPTION_DEFAULTS:()=>d.s6,PUSH_DEFAULTS_VERSION:()=>d.VP,RepositoryDbError:()=>h.j8,TASK_STATUSES:()=>d.Hi,TERMINAL_TASK_STATUSES:()=>d.sA,VERIFICATION_GATE_SOURCES:()=>d.Dx,VERIFICATION_TRIGGERS:()=>d.af,WORKTREE_TODO_STATUSES:()=>d.KG,addAgentInstance:()=>d.Uq,cancelTimer:()=>d.Ud,cancelTimersByWorktree:()=>d.$$,cleanupOldTimers:()=>d.ul,clearInProgressMessageId:()=>d.YX,clearLastUserMessage:()=>d.cf,clearTimerHistory:()=>d.jf,closeDbInstance:()=>e.closeDbInstance,countAgentInstances:()=>d.fs,countDisabledRepositories:()=>h.QJ,countPushSubscriptionsForKind:()=>d.rC,countWorktreesByRepositoryPath:()=>h.kp,createCloneJob:()=>h.tw,createGateResult:()=>d.hl,createMemo:()=>d.To,createMessage:()=>d.oH,createRepository:()=>h.vB,createTask:()=>d.UT,createTimer:()=>d.CR,createVerificationRun:()=>d.rY,createWorktreeTodo:()=>d.yy,deleteAllMessages:()=>d.pE,deleteMemo:()=>d.cP,deleteMessageById:()=>d.DF,deleteMessagesByCliTool:()=>d.lA,deleteMessagesByInstance:()=>d.Qp,deletePushSubscriptionByEndpoint:()=>d.th,deleteRepository:()=>h.oG,deleteRepositoryWorktrees:()=>d.oZ,deleteSessionState:()=>d.ZP,deleteWorktreeTodo:()=>d.vg,deleteWorktreesByIds:()=>d.Rm,disableExistingRepository:()=>h.eP,disableRepository:()=>h.l$,ensureEnvRepositoriesRegistered:()=>h.ES,filterExcludedPaths:()=>h.Ho,findMessageByRequestId:()=>d.Ow,finishGateResult:()=>d.C8,finishVerificationRun:()=>d.u$,getActiveCloneJobByUrl:()=>h.fD,getActiveTask:()=>d.__,getActiveTaskForInstance:()=>d.MH,getAgentInstance:()=>d.BN,getAgentInstances:()=>d.m0,getAliasedWorktreeIds:()=>d.r3,getAllPushSubscriptions:()=>d.Se,getAllRepositories:()=>h.Yg,getAllRepositoriesWithWorktreeCount:()=>h._D,getAllWorktreeAliases:()=>d.fX,getAllWorktreeIds:()=>d.nO,getAllWorktreePathIds:()=>d.Sj,getCloneJob:()=>h.bM,getCloneJobsByStatus:()=>h.n_,getCurrentVersion:()=>f.Mj,getDailyReport:()=>d.ap,getDbInstance:()=>e.getDbInstance,getDefaultDbPath:()=>g.$b,getExcludedRepositories:()=>h.lS,getExcludedRepositoryPaths:()=>h.pr,getInitialBranch:()=>d.p4,getIssueDbPath:()=>g.zm,getLastAssistantMessageAt:()=>d.nP,getLastMessage:()=>d.sy,getLastUserMessage:()=>d.r8,getLegacyDbPaths:()=>q,getMemoById:()=>d.DN,getMemosByWorktreeId:()=>d.pZ,getMessageById:()=>d.kA,getMessages:()=>d.VL,getMessagesByDateRange:()=>d.lr,getMigrationHistory:()=>f.PS,getPendingTimerCountByWorktree:()=>d.GF,getPendingTimers:()=>d._O,getPushSubscriptionByEndpoint:()=>d.CF,getPushSubscriptionsForKind:()=>d.gn,getRepositories:()=>d.NV,getRepositoryById:()=>h.r,getRepositoryByNormalizedUrl:()=>h.Uj,getRepositoryByPath:()=>h.Dp,getRunningVerificationRun:()=>d.WZ,getSessionState:()=>d.y1,getTask:()=>d.gg,getTimerById:()=>d.kx,getTimersByWorktree:()=>d.DP,getTodosByWorktreeId:()=>d.fr,getVerificationRun:()=>d.J6,getWorktreeAliases:()=>d.Q2,getWorktreeById:()=>d.Ui,getWorktreeIdsByRepository:()=>d.P9,getWorktreeTodoById:()=>d.eN,getWorktrees:()=>d.vi,getWorktreesByRepository:()=>d.uJ,initDatabase:()=>d.s4,isTerminalTaskStatus:()=>d.uB,isWorktreeTodoStatus:()=>d.yT,listRunningVerificationRuns:()=>d.Fi,listTaskEvents:()=>d.HB,listTasks:()=>d.Vk,listVerificationRuns:()=>d.Mt,listVerificationRunsForPeriod:()=>d.UE,markPendingPromptsAsAnswered:()=>d.PL,migrateDbIfNeeded:()=>r,migrateWorktreeIdPreservingChildren:()=>d._h,pushSubscriptionNeedsDefaultsNotice:()=>d.Zj,recomputeLastUserMessage:()=>d.jp,recordAnsweredPrompt:()=>d.pG,recordWorktreeAlias:()=>d.xJ,recoverStuckSendingTimers:()=>d.Xm,registerAndFilterRepositories:()=>h.$G,removeAgentInstance:()=>d.NU,reorderMemos:()=>d.nQ,reorderWorktreeTodos:()=>d.yb,resolveAndValidatePath:()=>p,resolveRepositoryPath:()=>h.mE,resolveWorktreeIdWithAlias:()=>d.l0,restoreRepository:()=>h.RS,rollbackMigrations:()=>f.Wy,runMigrations:()=>f.vI,saveDailyReport:()=>d.tt,saveInitialBranch:()=>d.GA,setAgentInstances:()=>d.Cs,setInProgressMessageId:()=>d.OF,setRepositoryEnabled:()=>h.iQ,updateCliToolId:()=>d.WU,updateCloneJob:()=>h.k5,updateDailyReportContent:()=>d.IF,updateFavorite:()=>d.O,updateLastUserMessage:()=>d.EU,updateLastViewedAt:()=>d.HZ,updateMemo:()=>d.UY,updateMessageContent:()=>d.e8,updatePromptData:()=>d.cw,updatePushSubscriptionPreferences:()=>d.jJ,updateRepository:()=>h.Ir,updateSelectedAgents:()=>d.DC,updateSessionState:()=>d.PP,updateStatus:()=>d.yB,updateTimerStatus:()=>d.j2,updateVibeLocalContextWindow:()=>d.s,updateVibeLocalModel:()=>d.iu,updateWorktreeDescription:()=>d.hq,updateWorktreeLink:()=>d.z1,updateWorktreeTodo:()=>d.bl,upsertPushSubscription:()=>d.jA,upsertWorktree:()=>d.ZL,validateDbPath:()=>g.Sv,validateRepositoryPath:()=>h.Ux,validateSchema:()=>f.i6});var d=c(683),e=c(88807),f=c(67469),g=c(20416),h=c(10406),i=c(29021),j=c.n(i),k=c(33873),l=c.n(k),m=c(21820),n=c(7956);let o=(0,c(72626).h)("db-migration-path");function p(a,b){try{if(!j().existsSync(a))return null;let c=j().realpathSync(a);if((0,n.fW)(c))return o.warn(`[Security] ${b} points to system directory, skipping: ${c}`),null;return c}catch{return o.warn(`[Security] Failed to resolve ${b}: ${a}`),null}}function q(){let a=[];a.push(l().join(process.cwd(),"data","db.sqlite")),a.push(l().join(process.cwd(),"data","cm.db")),a.push(l().join((0,m.homedir)(),".commandmate","data","db.sqlite"));let b=process.env.DATABASE_PATH;if(b)try{let c=l().resolve(b);(0,n.fW)(c)?o.warn(`[Security] Skipping DATABASE_PATH in system directory: ${c}`):a.push(b)}catch{o.warn(`[Security] Invalid DATABASE_PATH: ${b}`)}return a}function r(a){let b=l().resolve(a);if((0,n.fW)(b))throw Error(`Security error: Target path cannot be in system directory: ${b}`);if(j().existsSync(a)){let b=p(a,"target path");if(b)return{migrated:!1,targetPath:b}}for(let a of q()){let c=p(a,"legacy path");if(!c)continue;let d=`${c}.bak`;j().copyFileSync(c,d),j().chmodSync(d,384);let e=l().dirname(b);return j().existsSync(e)||j().mkdirSync(e,{recursive:!0,mode:448}),j().copyFileSync(c,b),o.info(`[Migration] Database migrated from ${c} to ${b}`),o.info(`[Migration] Backup created at ${d}`),{migrated:!0,sourcePath:c,targetPath:b,backupPath:d}}return{migrated:!1,targetPath:b}}},67882:(a,b,c)=>{c.d(b,{DA:()=>e,O_:()=>f,Oh:()=>d,_K:()=>i,kA:()=>g,px:()=>h});let d={PROMPT_SUBMIT:"hook_prompt_submit",STOP:"hook_stop",PERMISSION_PROMPT:"hook_permission_prompt",PERMISSION_REQUEST:"hook_permission_request",IDLE_PROMPT:"hook_idle_prompt",PRE_TOOL_USE:"hook_pre_tool_use",POST_TOOL_USE:"hook_post_tool_use"};function e(a,b){switch(a){case"user_prompt_submit":return{status:"running",reason:d.PROMPT_SUBMIT};case"pre_tool_use":return{status:"running",reason:d.PRE_TOOL_USE};case"post_tool_use":return{status:"running",reason:d.POST_TOOL_USE};case"stop":return{status:"ready",reason:d.STOP};case"notification":if("permission_prompt"===b)return{status:"waiting",reason:d.PERMISSION_PROMPT};if("idle_prompt"===b)return{status:"ready",reason:d.IDLE_PROMPT};return null;default:return null}}function f(a,b=!1){switch(a){case"waiting":return{isWaitingForResponse:!0,isProcessing:!1};case"running":return{isWaitingForResponse:!1,isProcessing:!b};default:return{isWaitingForResponse:!1,isProcessing:!1}}}function g(a){return a?a.isWaitingForResponse?"waiting":a.isProcessing?"running":a.isRunning?"ready":"idle":"idle"}function h(a){return a?.isUnclassified===!0&&"ready"===g(a)}function i(a){return a.isSessionRunning?a.isWaitingForResponse?"waiting":a.isProcessing?"running":"ready":null}},81254:(a,b,c)=>{function d(a){return"answer_only"===a||"answer_then_enter"===a}c.d(b,{LT:()=>e,MI:()=>d,XF:()=>f});let e="unclassified";function f(a){return null!=a&&a.type!==e}},85322:(a,b,c)=>{c.d(b,{k:()=>d});let d="opencode"},85726:(a,b,c)=>{c.d(b,{J:()=>d});function d(a){return`${a.type}:${a.question}`}}};
|