@wjarka/cezarion 0.16.0 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -0
- package/README.md +594 -207
- package/dist/agent-config/account-identity.d.ts +3 -19
- package/dist/agent-config/account-identity.js +8 -5
- package/dist/agent-config/account-identity.js.map +1 -1
- package/dist/agent-config/catalog.d.ts +3 -14
- package/dist/agent-config/catalog.js.map +1 -1
- package/dist/agent-config/files.d.ts +2 -6
- package/dist/agent-config/files.js +2 -6
- package/dist/agent-config/files.js.map +1 -1
- package/dist/agent-config/model-settings/types.d.ts +1 -1
- package/dist/agent-config/seed.d.ts +11 -3
- package/dist/agent-config/seed.js +52 -48
- package/dist/agent-config/seed.js.map +1 -1
- package/dist/agent-config/service.js +3 -2
- package/dist/agent-config/service.js.map +1 -1
- package/dist/agent-config/validate.d.ts +1 -4
- package/dist/agent-config/validate.js.map +1 -1
- package/dist/application-update/helper.d.ts +2 -2
- package/dist/application-update/helper.js +7 -12
- package/dist/application-update/helper.js.map +1 -1
- package/dist/application-update/launcher.d.ts +4 -0
- package/dist/application-update/launcher.js +18 -12
- package/dist/application-update/launcher.js.map +1 -1
- package/dist/application-update/service.d.ts +3 -3
- package/dist/application-update/service.js +1 -1
- package/dist/application-update/service.js.map +1 -1
- package/dist/archive-on-merge-setting.d.ts +15 -0
- package/dist/archive-on-merge-setting.js +14 -0
- package/dist/archive-on-merge-setting.js.map +1 -0
- package/dist/artifacts/cli.d.ts +8 -0
- package/dist/artifacts/cli.js +21 -2
- package/dist/artifacts/cli.js.map +1 -1
- package/dist/artifacts/resolve.js +2 -1
- package/dist/artifacts/resolve.js.map +1 -1
- package/dist/artifacts/store.js.map +1 -1
- package/dist/automations/automation-cli.d.ts +59 -0
- package/dist/automations/automation-cli.js +509 -0
- package/dist/automations/automation-cli.js.map +1 -0
- package/dist/automations/builtin-skill.d.ts +7 -0
- package/dist/automations/builtin-skill.js +14 -0
- package/dist/automations/builtin-skill.js.map +1 -0
- package/dist/automations/github-baseline.d.ts +3 -0
- package/dist/automations/github-baseline.js +17 -0
- package/dist/automations/github-baseline.js.map +1 -0
- package/dist/automations/github-poller.d.ts +23 -4
- package/dist/automations/github-poller.js +157 -88
- package/dist/automations/github-poller.js.map +1 -1
- package/dist/automations/prompts.d.ts +12 -0
- package/dist/automations/prompts.js +160 -0
- package/dist/automations/prompts.js.map +1 -0
- package/dist/automations/schedule-runner.d.ts +43 -24
- package/dist/automations/schedule-runner.js +207 -20
- package/dist/automations/schedule-runner.js.map +1 -1
- package/dist/automations/scheduler.d.ts +10 -2
- package/dist/automations/scheduler.js +200 -54
- package/dist/automations/scheduler.js.map +1 -1
- package/dist/automations/service.d.ts +777 -0
- package/dist/automations/service.js +444 -0
- package/dist/automations/service.js.map +1 -0
- package/dist/automations/store.d.ts +17 -7
- package/dist/automations/store.js +88 -17
- package/dist/automations/store.js.map +1 -1
- package/dist/automations/task-template.d.ts +7 -2
- package/dist/automations/task-template.js +93 -44
- package/dist/automations/task-template.js.map +1 -1
- package/dist/automations/tool-adapter.d.ts +6 -0
- package/dist/automations/tool-adapter.js +108 -0
- package/dist/automations/tool-adapter.js.map +1 -0
- package/dist/automations/types.d.ts +1 -405
- package/dist/automations/types.js +1 -218
- package/dist/automations/types.js.map +1 -1
- package/dist/autosave-cleanup.d.ts +26 -0
- package/dist/autosave-cleanup.js +87 -0
- package/dist/autosave-cleanup.js.map +1 -0
- package/dist/autosave-git.d.ts +3 -0
- package/dist/autosave-git.js +67 -35
- package/dist/autosave-git.js.map +1 -1
- package/dist/autosave-group.d.ts +8 -0
- package/dist/autosave-group.js +61 -0
- package/dist/autosave-group.js.map +1 -0
- package/dist/autosave-holders.d.ts +31 -4
- package/dist/autosave-holders.js +92 -7
- package/dist/autosave-holders.js.map +1 -1
- package/dist/autosave-windows.d.ts +14 -0
- package/dist/autosave-windows.js +36 -2
- package/dist/autosave-windows.js.map +1 -1
- package/dist/ci-wait/client.d.ts +20 -3
- package/dist/ci-wait/client.js +40 -44
- package/dist/ci-wait/client.js.map +1 -1
- package/dist/ci-wait/controller.d.ts +622 -36
- package/dist/ci-wait/controller.js +152 -20
- package/dist/ci-wait/controller.js.map +1 -1
- package/dist/ci-wait/errors.d.ts +19 -0
- package/dist/ci-wait/errors.js +180 -2
- package/dist/ci-wait/errors.js.map +1 -1
- package/dist/ci-wait/github.d.ts +25 -1
- package/dist/ci-wait/github.js +76 -9
- package/dist/ci-wait/github.js.map +1 -1
- package/dist/ci-wait/mcp.d.ts +0 -1
- package/dist/ci-wait/mcp.js +0 -2
- package/dist/ci-wait/mcp.js.map +1 -1
- package/dist/ci-wait/supervisor.d.ts +7 -0
- package/dist/ci-wait/supervisor.js +113 -17
- package/dist/ci-wait/supervisor.js.map +1 -1
- package/dist/ci-wait/tools.d.ts +536 -16
- package/dist/ci-wait/tools.js +165 -20
- package/dist/ci-wait/tools.js.map +1 -1
- package/dist/config.d.ts +3 -17
- package/dist/config.js +4 -60
- package/dist/config.js.map +1 -1
- package/dist/contract/active-provider.d.ts +12 -0
- package/dist/contract/agent-profiles.d.ts +2 -10
- package/dist/contract/ask-schema.d.ts +22 -4
- package/dist/contract/ask.d.ts +6 -4
- package/dist/contract/attachments.d.ts +35 -0
- package/dist/contract/attention.d.ts +46 -37
- package/dist/contract/automation-requests.d.ts +308 -0
- package/dist/contract/automation-schedule.d.ts +40 -11
- package/dist/contract/automation-storage.d.ts +512 -0
- package/dist/contract/automations.d.ts +421 -40
- package/dist/contract/ci-wait.d.ts +41 -4
- package/dist/contract/config-requests.d.ts +36 -0
- package/dist/contract/conversations.d.ts +24 -10
- package/dist/contract/defined.d.ts +8 -0
- package/dist/contract/delegation.d.ts +312 -8
- package/dist/contract/events.d.ts +24 -3
- package/dist/contract/github-requests.d.ts +26 -0
- package/dist/contract/github.d.ts +60 -27
- package/dist/contract/handoff.d.ts +43 -0
- package/dist/contract/health.d.ts +2 -2
- package/dist/contract/image-path.d.ts +6 -0
- package/dist/contract/index.d.ts +31 -0
- package/dist/contract/index.js +3756 -1525
- package/dist/contract/live-coordination.d.ts +158 -0
- package/dist/contract/live-limits.d.ts +8 -0
- package/dist/contract/live.d.ts +123 -0
- package/dist/contract/pending-ask.d.ts +58 -0
- package/dist/contract/permissions.d.ts +54 -0
- package/dist/contract/preview.d.ts +33 -0
- package/dist/contract/project-limits.d.ts +33 -0
- package/dist/contract/projects.d.ts +486 -20
- package/dist/contract/provider-requests.d.ts +77 -0
- package/dist/contract/query-requests.d.ts +52 -0
- package/dist/contract/repo-requests.d.ts +12 -0
- package/dist/contract/run-labels.d.ts +8 -0
- package/dist/contract/run-limits.d.ts +8 -0
- package/dist/contract/run-predicates.d.ts +32 -0
- package/dist/contract/run-requests.d.ts +33 -0
- package/dist/contract/run-search.d.ts +193 -0
- package/dist/contract/runs.d.ts +2232 -1894
- package/dist/contract/scheduled-tasks.d.ts +187 -0
- package/dist/contract/skills.d.ts +22 -772
- package/dist/contract/team-skill-ref.d.ts +10 -0
- package/dist/{core → contract}/tool-display.d.ts +4 -10
- package/dist/contract/ui-state-requests.d.ts +60 -0
- package/dist/contract/version.d.ts +3 -0
- package/dist/contract/voice.d.ts +213 -0
- package/dist/contract/waits.d.ts +1204 -0
- package/dist/contract/workflow-file.d.ts +37 -0
- package/dist/contract/workflow-requests.d.ts +7 -0
- package/dist/contract/workflows.d.ts +1 -2
- package/dist/contract/workspace.d.ts +34 -82
- package/dist/contract/zoned-time.d.ts +2 -11
- package/dist/core/agent-env.d.ts +4 -16
- package/dist/core/agent-env.js +14 -16
- package/dist/core/agent-env.js.map +1 -1
- package/dist/core/agent-profiles.d.ts +28 -40
- package/dist/core/agent-profiles.js +56 -51
- package/dist/core/agent-profiles.js.map +1 -1
- package/dist/core/agent-runner.d.ts +88 -44
- package/dist/core/agent-runner.js +17 -18
- package/dist/core/agent-runner.js.map +1 -1
- package/dist/core/ask.d.ts +3 -0
- package/dist/core/ask.js +12 -0
- package/dist/core/ask.js.map +1 -1
- package/dist/core/backend-detect.js +16 -2
- package/dist/core/backend-detect.js.map +1 -1
- package/dist/core/claude-cli-runner.d.ts +23 -4
- package/dist/core/claude-cli-runner.js +280 -76
- package/dist/core/claude-cli-runner.js.map +1 -1
- package/dist/core/claude-model-catalog.d.ts +2 -10
- package/dist/core/claude-model-catalog.js +2 -10
- package/dist/core/claude-model-catalog.js.map +1 -1
- package/dist/core/claude-ui-mapper.d.ts +2 -2
- package/dist/core/claude-ui-mapper.js +94 -2
- package/dist/core/claude-ui-mapper.js.map +1 -1
- package/dist/core/codex-app-server-runner.d.ts +3 -4
- package/dist/core/codex-app-server-runner.js +146 -51
- package/dist/core/codex-app-server-runner.js.map +1 -1
- package/dist/core/codex-app-server-transport.d.ts +4 -3
- package/dist/core/codex-app-server-transport.js +11 -7
- package/dist/core/codex-app-server-transport.js.map +1 -1
- package/dist/core/codex-approvals.d.ts +12 -0
- package/dist/core/codex-approvals.js +161 -0
- package/dist/core/codex-approvals.js.map +1 -0
- package/dist/core/codex-permissions.d.ts +1 -1
- package/dist/core/codex-ui-mapper.js +45 -1
- package/dist/core/codex-ui-mapper.js.map +1 -1
- package/dist/core/cursor-acp-runner.d.ts +1 -1
- package/dist/core/cursor-acp-runner.js +39 -15
- package/dist/core/cursor-acp-runner.js.map +1 -1
- package/dist/core/cursor-cli-flags.d.ts +19 -0
- package/dist/core/cursor-cli-flags.js +47 -0
- package/dist/core/cursor-cli-flags.js.map +1 -0
- package/dist/core/cursor-model-catalog.d.ts +22 -0
- package/dist/core/cursor-model-catalog.js +53 -24
- package/dist/core/cursor-model-catalog.js.map +1 -1
- package/dist/core/cursor-print-capabilities.d.ts +16 -0
- package/dist/core/cursor-print-capabilities.js +141 -0
- package/dist/core/cursor-print-capabilities.js.map +1 -0
- package/dist/core/cursor-print-process.d.ts +31 -0
- package/dist/core/cursor-print-process.js +117 -0
- package/dist/core/cursor-print-process.js.map +1 -0
- package/dist/core/cursor-print-runner.d.ts +31 -0
- package/dist/core/cursor-print-runner.js +555 -0
- package/dist/core/cursor-print-runner.js.map +1 -0
- package/dist/core/cursor-print-tool-catalog.d.ts +10 -0
- package/dist/core/cursor-print-tool-catalog.js +91 -0
- package/dist/core/cursor-print-tool-catalog.js.map +1 -0
- package/dist/core/cursor-print-ui-mapper.d.ts +47 -0
- package/dist/core/cursor-print-ui-mapper.js +553 -0
- package/dist/core/cursor-print-ui-mapper.js.map +1 -0
- package/dist/core/cursor-runner.d.ts +24 -0
- package/dist/core/cursor-runner.js +149 -0
- package/dist/core/cursor-runner.js.map +1 -0
- package/dist/core/cursor-ui-mapper.js +5 -2
- package/dist/core/cursor-ui-mapper.js.map +1 -1
- package/dist/core/defined.d.ts +1 -0
- package/dist/core/defined.js +2 -0
- package/dist/core/defined.js.map +1 -0
- package/dist/core/hook-items.d.ts +14 -0
- package/dist/core/hook-items.js +13 -0
- package/dist/core/hook-items.js.map +1 -0
- package/dist/core/host-model-catalog.d.ts +2 -9
- package/dist/core/host-model-catalog.js +2 -9
- package/dist/core/host-model-catalog.js.map +1 -1
- package/dist/core/managed-session.js +15 -3
- package/dist/core/managed-session.js.map +1 -1
- package/dist/core/model-identity.d.ts +4 -21
- package/dist/core/model-identity.js.map +1 -1
- package/dist/core/model-presets.d.ts +2 -13
- package/dist/core/model-presets.js +2 -13
- package/dist/core/model-presets.js.map +1 -1
- package/dist/core/omp-model-catalog.js.map +1 -1
- package/dist/core/omp-runner.d.ts +6 -7
- package/dist/core/omp-runner.js +92 -33
- package/dist/core/omp-runner.js.map +1 -1
- package/dist/core/omp-ui-mapper.js +1 -1
- package/dist/core/omp-ui-mapper.js.map +1 -1
- package/dist/core/opencode-model-catalog.js.map +1 -1
- package/dist/core/opencode-permissions.d.ts +52 -0
- package/dist/core/opencode-permissions.js +101 -0
- package/dist/core/opencode-permissions.js.map +1 -0
- package/dist/core/opencode-server-runner.d.ts +10 -9
- package/dist/core/opencode-server-runner.js +286 -28
- package/dist/core/opencode-server-runner.js.map +1 -1
- package/dist/core/opencode-session-error.d.ts +15 -7
- package/dist/core/opencode-session-error.js +25 -9
- package/dist/core/opencode-session-error.js.map +1 -1
- package/dist/core/opencode-ui-mapper.js +2 -2
- package/dist/core/opencode-ui-mapper.js.map +1 -1
- package/dist/core/pi-model-catalog.js.map +1 -1
- package/dist/core/pi-runner.d.ts +12 -4
- package/dist/core/pi-runner.js +171 -63
- package/dist/core/pi-runner.js.map +1 -1
- package/dist/core/pi-ui-mapper.js +1 -1
- package/dist/core/pi-ui-mapper.js.map +1 -1
- package/dist/core/process-usage.d.ts +5 -0
- package/dist/core/process-usage.js +24 -4
- package/dist/core/process-usage.js.map +1 -1
- package/dist/core/provider-auth.d.ts +16 -107
- package/dist/core/provider-auth.js +16 -132
- package/dist/core/provider-auth.js.map +1 -1
- package/dist/core/runner-factory.d.ts +4 -1
- package/dist/core/runner-factory.js +3 -3
- package/dist/core/runner-factory.js.map +1 -1
- package/dist/core/runner-runtime.d.ts +22 -0
- package/dist/core/runner-runtime.js +66 -5
- package/dist/core/runner-runtime.js.map +1 -1
- package/dist/core/runner-tool-grants.d.ts +21 -0
- package/dist/core/runner-tool-grants.js +64 -0
- package/dist/core/runner-tool-grants.js.map +1 -0
- package/dist/core/secret-redaction.d.ts +3 -20
- package/dist/core/secret-redaction.js +3 -20
- package/dist/core/secret-redaction.js.map +1 -1
- package/dist/core/session-process.d.ts +22 -2
- package/dist/core/session-process.js +170 -12
- package/dist/core/session-process.js.map +1 -1
- package/dist/core/shell-env.d.ts +2 -15
- package/dist/core/shell-env.js +2 -15
- package/dist/core/shell-env.js.map +1 -1
- package/dist/core/ui-events.d.ts +60 -47
- package/dist/core/ui-events.js +0 -23
- package/dist/core/ui-events.js.map +1 -1
- package/dist/core/usage-limit.js.map +1 -1
- package/dist/data-gitignore.js +3 -1
- package/dist/data-gitignore.js.map +1 -1
- package/dist/delegation/capacity.d.ts +4 -8
- package/dist/delegation/capacity.js +4 -8
- package/dist/delegation/capacity.js.map +1 -1
- package/dist/delegation/cli.js +123 -21
- package/dist/delegation/cli.js.map +1 -1
- package/dist/delegation/context.d.ts +19 -3
- package/dist/delegation/context.js +217 -22
- package/dist/delegation/context.js.map +1 -1
- package/dist/delegation/conversations.d.ts +4 -3
- package/dist/delegation/conversations.js +7 -5
- package/dist/delegation/conversations.js.map +1 -1
- package/dist/delegation/destroy-observation.d.ts +1 -1
- package/dist/delegation/destroy-observation.js.map +1 -1
- package/dist/delegation/effort.js.map +1 -1
- package/dist/delegation/execution-identity.d.ts +1 -1
- package/dist/delegation/execution-identity.js +41 -7
- package/dist/delegation/execution-identity.js.map +1 -1
- package/dist/delegation/idle-test-app.d.ts +4 -0
- package/dist/delegation/idle-test-app.js +174 -0
- package/dist/delegation/idle-test-app.js.map +1 -0
- package/dist/delegation/input.js.map +1 -1
- package/dist/delegation/park-notice.d.ts +42 -0
- package/dist/delegation/park-notice.js +71 -0
- package/dist/delegation/park-notice.js.map +1 -0
- package/dist/delegation/policy.d.ts +2 -0
- package/dist/delegation/policy.js +9 -1
- package/dist/delegation/policy.js.map +1 -1
- package/dist/delegation/process-liveness.d.ts +10 -15
- package/dist/delegation/process-liveness.js +11 -35
- package/dist/delegation/process-liveness.js.map +1 -1
- package/dist/delegation/provision.js +21 -19
- package/dist/delegation/provision.js.map +1 -1
- package/dist/delegation/questions.d.ts +3 -1
- package/dist/delegation/questions.js +10 -5
- package/dist/delegation/questions.js.map +1 -1
- package/dist/delegation/readiness.d.ts +2 -2
- package/dist/delegation/results.d.ts +4 -1
- package/dist/delegation/results.js +49 -18
- package/dist/delegation/results.js.map +1 -1
- package/dist/delegation/retry-backoff.d.ts +8 -0
- package/dist/delegation/retry-backoff.js +8 -0
- package/dist/delegation/retry-backoff.js.map +1 -1
- package/dist/delegation/routes.d.ts +114 -30
- package/dist/delegation/routes.js +4 -1
- package/dist/delegation/routes.js.map +1 -1
- package/dist/delegation/scratch-cleanup.d.ts +4 -5
- package/dist/delegation/scratch-cleanup.js +10 -8
- package/dist/delegation/scratch-cleanup.js.map +1 -1
- package/dist/delegation/service.d.ts +12 -4
- package/dist/delegation/service.js +76 -28
- package/dist/delegation/service.js.map +1 -1
- package/dist/delegation/transport.d.ts +154 -70
- package/dist/delegation/wait.d.ts +11 -0
- package/dist/delegation/wait.js +24 -0
- package/dist/delegation/wait.js.map +1 -1
- package/dist/delegation/windows-test-app.d.ts +5 -0
- package/dist/delegation/windows-test-app.js +63 -0
- package/dist/delegation/windows-test-app.js.map +1 -0
- package/dist/delegation/windows-workspace-identity.d.ts +3 -0
- package/dist/delegation/windows-workspace-identity.js +22 -0
- package/dist/delegation/windows-workspace-identity.js.map +1 -0
- package/dist/delegation/workspace.d.ts +5 -10
- package/dist/delegation/workspace.js +136 -75
- package/dist/delegation/workspace.js.map +1 -1
- package/dist/detached-process.d.ts +103 -0
- package/dist/detached-process.js +301 -0
- package/dist/detached-process.js.map +1 -0
- package/dist/discovery/catalog.d.ts +2 -1
- package/dist/discovery/catalog.js.map +1 -1
- package/dist/discovery/cli.js +3 -1
- package/dist/discovery/cli.js.map +1 -1
- package/dist/git-diff-base.d.ts +6 -61
- package/dist/git-diff-base.js +6 -70
- package/dist/git-diff-base.js.map +1 -1
- package/dist/git-index-copy.d.ts +4 -0
- package/dist/git-index-copy.js +10 -0
- package/dist/git-index-copy.js.map +1 -0
- package/dist/git-worktree-lock.d.ts +2 -4
- package/dist/git-worktree-lock.js +2 -4
- package/dist/git-worktree-lock.js.map +1 -1
- package/dist/git-worktree-release.d.ts +2 -2
- package/dist/git-worktree-release.js.map +1 -1
- package/dist/git-worktree.d.ts +47 -76
- package/dist/git-worktree.js +240 -94
- package/dist/git-worktree.js.map +1 -1
- package/dist/handoff.d.ts +51 -41
- package/dist/handoff.js +130 -78
- package/dist/handoff.js.map +1 -1
- package/dist/index.js +60 -39
- package/dist/index.js.map +1 -1
- package/dist/merge-observations.d.ts +13 -0
- package/dist/merge-observations.js +55 -0
- package/dist/merge-observations.js.map +1 -0
- package/dist/open-url.js +4 -14
- package/dist/open-url.js.map +1 -1
- package/dist/paths.d.ts +10 -13
- package/dist/paths.js +36 -17
- package/dist/paths.js.map +1 -1
- package/dist/planner.d.ts +2 -1
- package/dist/planner.js +9 -6
- package/dist/planner.js.map +1 -1
- package/dist/preview/agent-address.d.ts +34 -0
- package/dist/preview/agent-address.js +51 -0
- package/dist/preview/agent-address.js.map +1 -0
- package/dist/preview/agent-marker.d.ts +17 -0
- package/dist/preview/agent-marker.js +71 -0
- package/dist/preview/agent-marker.js.map +1 -0
- package/dist/preview/cdp-proxy.d.ts +54 -0
- package/dist/preview/cdp-proxy.js +151 -0
- package/dist/preview/cdp-proxy.js.map +1 -0
- package/dist/preview/cdp.d.ts +39 -3
- package/dist/preview/cdp.js +155 -57
- package/dist/preview/cdp.js.map +1 -1
- package/dist/preview/chromium.d.ts +18 -6
- package/dist/preview/chromium.js +112 -25
- package/dist/preview/chromium.js.map +1 -1
- package/dist/preview/dev-server.d.ts +1 -1
- package/dist/preview/dev-server.js +20 -44
- package/dist/preview/dev-server.js.map +1 -1
- package/dist/preview/host.d.ts +70 -3
- package/dist/preview/host.js +314 -28
- package/dist/preview/host.js.map +1 -1
- package/dist/preview/registration.d.ts +10 -5
- package/dist/preview/registration.js +2 -0
- package/dist/preview/registration.js.map +1 -1
- package/dist/preview/session.d.ts +2 -0
- package/dist/preview/session.js +10 -0
- package/dist/preview/session.js.map +1 -1
- package/dist/process-wait/exit-file.d.ts +29 -0
- package/dist/process-wait/exit-file.js +67 -0
- package/dist/process-wait/exit-file.js.map +1 -0
- package/dist/process-wait/supervisor.d.ts +30 -0
- package/dist/process-wait/supervisor.js +71 -0
- package/dist/process-wait/supervisor.js.map +1 -0
- package/dist/release/snapshot.d.ts +6 -6
- package/dist/runs/agent-tmpdir.d.ts +51 -36
- package/dist/runs/agent-tmpdir.js +389 -132
- package/dist/runs/agent-tmpdir.js.map +1 -1
- package/dist/runs/auto-name.d.ts +6 -6
- package/dist/runs/auto-name.js +1 -1
- package/dist/runs/auto-name.js.map +1 -1
- package/dist/runs/client-request.d.ts +3 -3
- package/dist/runs/client-request.js +3 -3
- package/dist/runs/client-request.js.map +1 -1
- package/dist/runs/delegation-state.d.ts +11 -2
- package/dist/runs/delegation-state.js.map +1 -1
- package/dist/runs/event-history-agent-context.d.ts +14 -0
- package/dist/runs/event-history-agent-context.js +105 -0
- package/dist/runs/event-history-agent-context.js.map +1 -0
- package/dist/runs/event-history-context.d.ts +15 -0
- package/dist/runs/event-history-context.js +109 -0
- package/dist/runs/event-history-context.js.map +1 -0
- package/dist/runs/event-history.d.ts +4 -1
- package/dist/runs/event-history.js +29 -130
- package/dist/runs/event-history.js.map +1 -1
- package/dist/runs/history-stream.d.ts +2 -0
- package/dist/runs/history-stream.js +62 -0
- package/dist/runs/history-stream.js.map +1 -0
- package/dist/runs/legacy-index.d.ts +6 -19
- package/dist/runs/legacy-index.js +6 -19
- package/dist/runs/legacy-index.js.map +1 -1
- package/dist/runs/live-item-snapshots.d.ts +13 -0
- package/dist/runs/live-item-snapshots.js +79 -0
- package/dist/runs/live-item-snapshots.js.map +1 -0
- package/dist/runs/loaded-run-healing.d.ts +3 -0
- package/dist/runs/loaded-run-healing.js +17 -0
- package/dist/runs/loaded-run-healing.js.map +1 -0
- package/dist/runs/outcome-commit.d.ts +98 -0
- package/dist/runs/outcome-commit.js +132 -0
- package/dist/runs/outcome-commit.js.map +1 -0
- package/dist/runs/pull-requests.d.ts +14 -0
- package/dist/runs/pull-requests.js +96 -0
- package/dist/runs/pull-requests.js.map +1 -0
- package/dist/runs/raw-record.d.ts +3 -15
- package/dist/runs/raw-record.js +3 -15
- package/dist/runs/raw-record.js.map +1 -1
- package/dist/runs/retention.d.ts +2 -2
- package/dist/runs/retention.js +7 -0
- package/dist/runs/retention.js.map +1 -1
- package/dist/runs/review-gate.d.ts +1 -1
- package/dist/runs/review-gate.js.map +1 -1
- package/dist/runs/run-claims.d.ts +2 -9
- package/dist/runs/run-claims.js.map +1 -1
- package/dist/runs/run-database.d.ts +29 -34
- package/dist/runs/run-database.js +124 -46
- package/dist/runs/run-database.js.map +1 -1
- package/dist/runs/run-index.d.ts +6 -25
- package/dist/runs/run-index.js +25 -38
- package/dist/runs/run-index.js.map +1 -1
- package/dist/runs/run-row.d.ts +5 -34
- package/dist/runs/run-row.js +13 -38
- package/dist/runs/run-row.js.map +1 -1
- package/dist/runs/store.d.ts +1597 -744
- package/dist/runs/store.js +1231 -739
- package/dist/runs/store.js.map +1 -1
- package/dist/runs/task-markers.d.ts +1 -0
- package/dist/runs/task-markers.js +5 -1
- package/dist/runs/task-markers.js.map +1 -1
- package/dist/runs/task-refs.d.ts +3 -3
- package/dist/runs/transcript-facts-fold.d.ts +64 -0
- package/dist/runs/transcript-facts-fold.js +109 -0
- package/dist/runs/transcript-facts-fold.js.map +1 -0
- package/dist/runs/transcript-facts-load.d.ts +11 -0
- package/dist/runs/transcript-facts-load.js +66 -0
- package/dist/runs/transcript-facts-load.js.map +1 -0
- package/dist/runs/transcript-facts-queue.d.ts +30 -0
- package/dist/runs/transcript-facts-queue.js +227 -0
- package/dist/runs/transcript-facts-queue.js.map +1 -0
- package/dist/runs/transcript-facts-worker.d.ts +15 -0
- package/dist/runs/transcript-facts-worker.js +26 -0
- package/dist/runs/transcript-facts-worker.js.map +1 -0
- package/dist/runs/transcript-facts.d.ts +13 -51
- package/dist/runs/transcript-facts.js +86 -202
- package/dist/runs/transcript-facts.js.map +1 -1
- package/dist/runs/ui-event-sink.d.ts +5 -30
- package/dist/runs/ui-event-sink.js +8 -30
- package/dist/runs/ui-event-sink.js.map +1 -1
- package/dist/runs/webhook.d.ts +104 -38
- package/dist/runs/webhook.js +180 -77
- package/dist/runs/webhook.js.map +1 -1
- package/dist/server/app-type.d.ts +2 -17
- package/dist/server/archive-on-merge.d.ts +35 -0
- package/dist/server/archive-on-merge.js +202 -0
- package/dist/server/archive-on-merge.js.map +1 -0
- package/dist/server/capabilities.d.ts +3 -15
- package/dist/server/capabilities.js +6 -19
- package/dist/server/capabilities.js.map +1 -1
- package/dist/server/checkout-progress.d.ts +10 -0
- package/dist/server/checkout-progress.js +27 -0
- package/dist/server/checkout-progress.js.map +1 -0
- package/dist/server/checkout.d.ts +10 -19
- package/dist/server/checkout.js +15 -45
- package/dist/server/checkout.js.map +1 -1
- package/dist/server/cockpit-ownership.d.ts +2 -0
- package/dist/server/cockpit-ownership.js +9 -0
- package/dist/server/cockpit-ownership.js.map +1 -1
- package/dist/server/cold-repo-handles.d.ts +2 -7
- package/dist/server/cold-repo-handles.js +2 -7
- package/dist/server/cold-repo-handles.js.map +1 -1
- package/dist/server/completion-actions.d.ts +30 -0
- package/dist/server/completion-actions.js +204 -0
- package/dist/server/completion-actions.js.map +1 -0
- package/dist/server/create-project.d.ts +71 -0
- package/dist/server/create-project.js +448 -0
- package/dist/server/create-project.js.map +1 -0
- package/dist/server/forge/github-filters.d.ts +7 -1
- package/dist/server/forge/github-filters.js +66 -51
- package/dist/server/forge/github-filters.js.map +1 -1
- package/dist/server/forge/github-merge-requirements.d.ts +18 -0
- package/dist/server/forge/github-merge-requirements.js +137 -0
- package/dist/server/forge/github-merge-requirements.js.map +1 -0
- package/dist/server/forge/github.d.ts +98 -111
- package/dist/server/forge/github.js +625 -306
- package/dist/server/forge/github.js.map +1 -1
- package/dist/server/forge/types.d.ts +25 -22
- package/dist/server/fs-browse.d.ts +3 -28
- package/dist/server/fs-browse.js.map +1 -1
- package/dist/server/git-changes.d.ts +5 -15
- package/dist/server/git-changes.js +3 -50
- package/dist/server/git-changes.js.map +1 -1
- package/dist/server/git.d.ts +3 -1
- package/dist/server/git.js +12 -0
- package/dist/server/git.js.map +1 -1
- package/dist/server/github.d.ts +1 -1
- package/dist/server/github.js +1 -1
- package/dist/server/github.js.map +1 -1
- package/dist/server/launch-key.d.ts +2 -4
- package/dist/server/launch-key.js +2 -4
- package/dist/server/launch-key.js.map +1 -1
- package/dist/server/live-routes.d.ts +68 -0
- package/dist/server/live-routes.js +147 -0
- package/dist/server/live-routes.js.map +1 -0
- package/dist/server/open-in-app.d.ts +4 -13
- package/dist/server/open-in-app.js +5 -41
- package/dist/server/open-in-app.js.map +1 -1
- package/dist/server/open-in-targets.d.ts +42 -0
- package/dist/server/open-in-targets.js +110 -0
- package/dist/server/open-in-targets.js.map +1 -0
- package/dist/server/open-in-terminal.d.ts +3 -0
- package/dist/server/open-in-terminal.js +6 -26
- package/dist/server/open-in-terminal.js.map +1 -1
- package/dist/server/preview-cdp-socket.d.ts +21 -0
- package/dist/server/preview-cdp-socket.js +112 -0
- package/dist/server/preview-cdp-socket.js.map +1 -0
- package/dist/server/preview-socket.d.ts +11 -11
- package/dist/server/preview-socket.js +22 -22
- package/dist/server/preview-socket.js.map +1 -1
- package/dist/server/preview-sockets.d.ts +14 -0
- package/dist/server/preview-sockets.js +18 -0
- package/dist/server/preview-sockets.js.map +1 -0
- package/dist/server/project-context.d.ts +54 -18
- package/dist/server/project-context.js +178 -5
- package/dist/server/project-context.js.map +1 -1
- package/dist/server/provider-action-gate.d.ts +0 -2
- package/dist/server/provider-action-gate.js +0 -21
- package/dist/server/provider-action-gate.js.map +1 -1
- package/dist/server/provider-auth-runtime.d.ts +3 -18
- package/dist/server/provider-auth-runtime.js +3 -18
- package/dist/server/provider-auth-runtime.js.map +1 -1
- package/dist/server/repo-branches.d.ts +3 -9
- package/dist/server/repo-branches.js +6 -22
- package/dist/server/repo-branches.js.map +1 -1
- package/dist/server/run-event-feed.d.ts +20 -0
- package/dist/server/run-event-feed.js +190 -0
- package/dist/server/run-event-feed.js.map +1 -0
- package/dist/server/server-deps.d.ts +37 -0
- package/dist/server/server-deps.js +114 -0
- package/dist/server/server-deps.js.map +1 -0
- package/dist/server/server.d.ts +14082 -11998
- package/dist/server/server.js +785 -1647
- package/dist/server/server.js.map +1 -1
- package/dist/server/start-run-options.d.ts +82 -0
- package/dist/server/start-run-options.js +111 -0
- package/dist/server/start-run-options.js.map +1 -0
- package/dist/server/validators.d.ts +3 -29
- package/dist/server/validators.js +1 -2
- package/dist/server/validators.js.map +1 -1
- package/dist/server/ws.d.ts +3 -23
- package/dist/server/ws.js +3 -23
- package/dist/server/ws.js.map +1 -1
- package/dist/server-install/engine.d.ts +6 -9
- package/dist/server-install/engine.js +2 -9
- package/dist/server-install/engine.js.map +1 -1
- package/dist/server-install/platforms/ubuntu-vps.d.ts +1 -1
- package/dist/server-install/state.d.ts +2 -4
- package/dist/server-install/state.js +2 -4
- package/dist/server-install/state.js.map +1 -1
- package/dist/server-install/steps.d.ts +2 -5
- package/dist/server-install/steps.js +3 -6
- package/dist/server-install/steps.js.map +1 -1
- package/dist/server-install/types.d.ts +3 -6
- package/dist/server-install/types.js +2 -5
- package/dist/server-install/types.js.map +1 -1
- package/dist/server-install/ui.d.ts +2 -8
- package/dist/server-install/ui.js +3 -3
- package/dist/server-install/ui.js.map +1 -1
- package/dist/session-context.d.ts +64 -0
- package/dist/session-context.js +264 -0
- package/dist/session-context.js.map +1 -0
- package/dist/skills-provision.d.ts +62 -0
- package/dist/skills-provision.js +325 -0
- package/dist/skills-provision.js.map +1 -0
- package/dist/skills-remote.d.ts +29 -27
- package/dist/skills-remote.js +236 -100
- package/dist/skills-remote.js.map +1 -1
- package/dist/skills.d.ts +25 -36
- package/dist/skills.js +43 -54
- package/dist/skills.js.map +1 -1
- package/dist/subcommands.d.ts +11 -0
- package/dist/subcommands.js +24 -0
- package/dist/subcommands.js.map +1 -0
- package/dist/task-cli/cli.js +78 -25
- package/dist/task-cli/cli.js.map +1 -1
- package/dist/task-cli/discovery.d.ts +4 -2
- package/dist/task-cli/discovery.js +14 -13
- package/dist/task-cli/discovery.js.map +1 -1
- package/dist/task-cli/hint.d.ts +20 -0
- package/dist/task-cli/hint.js +14 -0
- package/dist/task-cli/hint.js.map +1 -0
- package/dist/task-cli/http.d.ts +1 -0
- package/dist/task-cli/http.js +3 -1
- package/dist/task-cli/http.js.map +1 -1
- package/dist/task-cli/projections.d.ts +14 -11
- package/dist/task-cli/projections.js +15 -11
- package/dist/task-cli/projections.js.map +1 -1
- package/dist/task-cli/watch.d.ts +18 -10
- package/dist/task-cli/watch.js +128 -20
- package/dist/task-cli/watch.js.map +1 -1
- package/dist/ui-state.d.ts +17 -3
- package/dist/ui-state.js +56 -9
- package/dist/ui-state.js.map +1 -1
- package/dist/update-check.d.ts +0 -10
- package/dist/update-check.js +1 -16
- package/dist/update-check.js.map +1 -1
- package/dist/voice/decide.d.ts +32 -0
- package/dist/voice/decide.js +297 -0
- package/dist/voice/decide.js.map +1 -0
- package/dist/voice/decision-log.d.ts +52 -0
- package/dist/voice/decision-log.js +107 -0
- package/dist/voice/decision-log.js.map +1 -0
- package/dist/voice/engine.d.ts +119 -0
- package/dist/voice/engine.js +60 -0
- package/dist/voice/engine.js.map +1 -0
- package/dist/voice/fake-engine.d.ts +10 -0
- package/dist/voice/fake-engine.js +192 -0
- package/dist/voice/fake-engine.js.map +1 -0
- package/dist/voice/jev-engine.d.ts +17 -0
- package/dist/voice/jev-engine.js +110 -0
- package/dist/voice/jev-engine.js.map +1 -0
- package/dist/voice/pending-ask.d.ts +17 -0
- package/dist/voice/pending-ask.js +50 -0
- package/dist/voice/pending-ask.js.map +1 -0
- package/dist/voice/routes.d.ts +115 -0
- package/dist/voice/routes.js +91 -0
- package/dist/voice/routes.js.map +1 -0
- package/dist/voice/sentence.d.ts +21 -0
- package/dist/voice/sentence.js +61 -0
- package/dist/voice/sentence.js.map +1 -0
- package/dist/voice/thresholds.d.ts +28 -0
- package/dist/voice/thresholds.js +29 -0
- package/dist/voice/thresholds.js.map +1 -0
- package/dist/webhooks/cli.d.ts +18 -0
- package/dist/webhooks/cli.js +145 -0
- package/dist/webhooks/cli.js.map +1 -0
- package/dist/webhooks/prompt.d.ts +5 -0
- package/dist/webhooks/prompt.js +26 -0
- package/dist/webhooks/prompt.js.map +1 -0
- package/dist/workflows/active-run.d.ts +167 -0
- package/dist/workflows/active-run.js +21 -0
- package/dist/workflows/active-run.js.map +1 -0
- package/dist/workflows/continuation-admission.d.ts +913 -0
- package/dist/workflows/continuation-admission.js +265 -0
- package/dist/workflows/continuation-admission.js.map +1 -0
- package/dist/workflows/execution-account.d.ts +13 -0
- package/dist/workflows/execution-account.js +18 -0
- package/dist/workflows/execution-account.js.map +1 -0
- package/dist/workflows/input-acknowledgement.d.ts +152 -0
- package/dist/workflows/input-acknowledgement.js +38 -0
- package/dist/workflows/input-acknowledgement.js.map +1 -0
- package/dist/workflows/line-order.d.ts +5 -0
- package/dist/workflows/line-order.js +25 -0
- package/dist/workflows/line-order.js.map +1 -0
- package/dist/workflows/outcome-batches.d.ts +20 -0
- package/dist/workflows/outcome-batches.js +25 -0
- package/dist/workflows/outcome-batches.js.map +1 -0
- package/dist/workflows/question-routing.d.ts +8 -0
- package/dist/workflows/question-routing.js +18 -0
- package/dist/workflows/question-routing.js.map +1 -0
- package/dist/workflows/run-scheduling.d.ts +35 -0
- package/dist/workflows/run-scheduling.js +61 -0
- package/dist/workflows/run-scheduling.js.map +1 -0
- package/dist/workflows/run-states.d.ts +190 -0
- package/dist/workflows/run-states.js +295 -0
- package/dist/workflows/run-states.js.map +1 -0
- package/dist/workflows/run.d.ts +1296 -278
- package/dist/workflows/run.js +5730 -3265
- package/dist/workflows/run.js.map +1 -1
- package/dist/workflows/turn-end.d.ts +116 -0
- package/dist/workflows/turn-end.js +68 -0
- package/dist/workflows/turn-end.js.map +1 -0
- package/dist/workflows/types.d.ts +35 -130
- package/dist/workflows/types.js +47 -100
- package/dist/workflows/types.js.map +1 -1
- package/dist/workflows/waits.d.ts +74 -0
- package/dist/workflows/waits.js +197 -0
- package/dist/workflows/waits.js.map +1 -0
- package/dist/workspace/agent-accounts.d.ts +5 -38
- package/dist/workspace/agent-accounts.js +14 -40
- package/dist/workspace/agent-accounts.js.map +1 -1
- package/dist/workspace/agent-profiles.d.ts +40 -16
- package/dist/workspace/agent-profiles.js +77 -17
- package/dist/workspace/agent-profiles.js.map +1 -1
- package/dist/workspace/config.d.ts +48 -49
- package/dist/workspace/config.js +68 -72
- package/dist/workspace/config.js.map +1 -1
- package/dist/workspace/migrations.d.ts +3 -13
- package/dist/workspace/migrations.js.map +1 -1
- package/dist/workspace/projects-cli.d.ts +1 -1
- package/dist/workspace/projects-cli.js.map +1 -1
- package/dist/workspace/projects.d.ts +15 -18
- package/dist/workspace/projects.js +20 -16
- package/dist/workspace/projects.js.map +1 -1
- package/dist/workspace/semaphore.d.ts +11 -45
- package/dist/workspace/semaphore.js +6 -18
- package/dist/workspace/semaphore.js.map +1 -1
- package/dist/workspace/ui-state.d.ts +6 -4
- package/dist/workspace/ui-state.js +6 -4
- package/dist/workspace/ui-state.js.map +1 -1
- package/dist/workspace/webhooks.d.ts +40 -0
- package/dist/workspace/webhooks.js +146 -0
- package/dist/workspace/webhooks.js.map +1 -0
- package/dist/worktree-manifest.d.ts +165 -0
- package/dist/worktree-manifest.js +530 -0
- package/dist/worktree-manifest.js.map +1 -0
- package/dist/worktree-setup.js.map +1 -1
- package/package.json +6 -5
- package/scripts/benchmark-run-store-fixture.ts +7 -3
- package/scripts/check-pack.mjs +3 -1
- package/scripts/inline-contract.mjs +80 -27
- package/scripts/install-as-command.mjs +3 -1
- package/scripts/measure-transcript-facts-health.mjs +87 -0
- package/scripts/measure-transcript-facts-lag.mjs +68 -0
- package/scripts/mock-ci-tool.mjs +49 -6
- package/scripts/mock-claude-model-refusal.mjs +42 -0
- package/scripts/mock-claude.mjs +833 -591
- package/scripts/mock-codex-app-server.mjs +785 -418
- package/scripts/mock-cursor-acp.mjs +296 -125
- package/scripts/mock-cursor-print.mjs +256 -0
- package/scripts/mock-deferred-turn-start.mjs +16 -0
- package/scripts/mock-delivery-control.d.mts +23 -0
- package/scripts/mock-delivery-control.mjs +80 -0
- package/scripts/mock-env-record.mjs +11 -0
- package/scripts/mock-failure-control.d.mts +13 -0
- package/scripts/mock-failure-control.mjs +68 -0
- package/scripts/mock-multi-pr.mjs +7 -0
- package/scripts/mock-nudge.mjs +45 -0
- package/scripts/mock-omp-rpc.mjs +429 -255
- package/scripts/mock-opencode-serve.mjs +972 -557
- package/scripts/mock-pi-rpc.mjs +558 -331
- package/scripts/mock-runner-crash.mjs +18 -2
- package/scripts/mock-session-context.d.mts +5 -0
- package/scripts/mock-session-context.mjs +56 -0
- package/scripts/mock-silent-tail.mjs +10 -3
- package/scripts/pi-default-tools.mjs +22 -0
- package/scripts/pi-project-skills.mjs +59 -0
- package/scripts/probe-cursor-print.mjs +627 -0
- package/scripts/transcript-facts-fixture.mjs +53 -0
- package/scripts/voice-replay.ts +50 -0
- package/scripts/windows-workspace-identity.cs +208 -0
- package/scripts/windows-workspace-identity.ps1 +10 -0
- package/web/dist/assets/alert-dialog-DfctKUMw.js +1 -0
- package/web/dist/assets/button-CeupvoKG.js +41 -0
- package/web/dist/assets/centered-state-hDsyXrnH.js +1 -0
- package/web/dist/assets/cez-idle-D3aj_9lp.js +1 -0
- package/web/dist/assets/diff-BnIXZK3i2.js +3 -0
- package/web/dist/assets/diff-controls-GewpW9aF.js +1 -0
- package/web/dist/assets/diff-view-Byo7gpvW.js +11 -0
- package/web/dist/assets/dropdown-menu-COj_J5wd.js +6 -0
- package/web/dist/assets/eye-B8okNWXU.js +1 -0
- package/web/dist/assets/git-toolbar-DY0z0n4S.js +1 -0
- package/web/dist/assets/github-DwU6ALRK.js +1 -0
- package/web/dist/assets/{image-preview-FOEfqpZP.js → image-preview-C_t9q45f.js} +1 -1
- package/web/dist/assets/index-BOfE8pyD.js +34 -0
- package/web/dist/assets/index-D9HpsmdW.css +1 -0
- package/web/dist/assets/live-protocol-Uce2NwEX.js +64 -0
- package/web/dist/assets/live-worker-BizfZSoh.ts +33 -0
- package/web/dist/assets/markdown-BBDDg-4t.js +1 -0
- package/web/dist/assets/nav-row-styles-AoIhhIwf.js +1 -0
- package/web/dist/assets/popover-D56fhiXj.js +1 -0
- package/web/dist/assets/preview-pane-connected-BmVqfSU5.js +3 -0
- package/web/dist/assets/reference-chip-gQNk-4jc.js +1 -0
- package/web/dist/assets/repo-git-B5ECDUuv.js +1 -0
- package/web/dist/assets/{repo-git-CoKp-g9K.css → repo-git-DVXNOJDT.css} +1 -1
- package/web/dist/assets/run-header-C0Y1NvEM.js +2 -0
- package/web/dist/assets/run-header-CC7VUTg9.css +1 -0
- package/web/dist/assets/skills-DUeTkZ9z.js +1 -0
- package/web/dist/assets/status-dot-1PR0i69P.js +1 -0
- package/web/dist/assets/tab-link-DmWk4l5O.js +1 -0
- package/web/dist/assets/task-changes-DKZXuW89.js +1 -0
- package/web/dist/assets/task-commits-BZ6KxWdF.js +1 -0
- package/web/dist/assets/task-files-DlF7Apcn.js +2 -0
- package/web/dist/assets/task-github-item-CVPo3geZ.js +1 -0
- package/web/dist/assets/task-thread-DtQ6uGfQ.css +1 -0
- package/web/dist/assets/task-thread-mm4-ECyo.js +9 -0
- package/web/dist/assets/thread-state-CIw2BlhT.js +4 -0
- package/web/dist/assets/use-hand-to-agent-state-BCDjzHnG.js +1 -0
- package/web/dist/assets/use-hand-to-agent-state-C7esPJ-N.css +1 -0
- package/web/dist/assets/workflows-D8vYD-ql.js +7 -0
- package/web/dist/assets/zoomable-image-CxQSsfcn.js +1 -0
- package/web/dist/index.html +13 -17
- package/web/dist/live-worker.js +4 -0
- package/dist/core/tool-display.js +0 -179
- package/dist/core/tool-display.js.map +0 -1
- package/dist/runs/human-ask-summary.d.ts +0 -9
- package/dist/runs/human-ask-summary.js +0 -39
- package/dist/runs/human-ask-summary.js.map +0 -1
- package/dist/runs/run-search.d.ts +0 -29
- package/dist/runs/run-search.js +0 -63
- package/dist/runs/run-search.js.map +0 -1
- package/dist/skills-banner.d.ts +0 -22
- package/dist/skills-banner.js +0 -41
- package/dist/skills-banner.js.map +0 -1
- package/dist/skills-update.d.ts +0 -88
- package/dist/skills-update.js +0 -392
- package/dist/skills-update.js.map +0 -1
- package/dist/todos.d.ts +0 -48
- package/dist/todos.js +0 -201
- package/dist/todos.js.map +0 -1
- package/web/dist/assets/agent-accounts-CFOBMVHc.js +0 -1
- package/web/dist/assets/alert-dialog-BrpNUwMt.js +0 -1
- package/web/dist/assets/button-C_rd7CPp.js +0 -43
- package/web/dist/assets/compare-variants-D6WXhvXA.js +0 -1
- package/web/dist/assets/diff-DrEARXTV.js +0 -3
- package/web/dist/assets/diff-controls-B1-j7nFg.js +0 -1
- package/web/dist/assets/diff-view-DvGLjdTk.js +0 -6
- package/web/dist/assets/dropdown-menu-BegOZFrj.js +0 -1
- package/web/dist/assets/format-DpNe3S0A.js +0 -1
- package/web/dist/assets/git-toolbar-Cw4ljmhB.js +0 -1
- package/web/dist/assets/github-CfV5sqL0.js +0 -1
- package/web/dist/assets/index-DgWWlOLy.js +0 -13
- package/web/dist/assets/index-fBFnuvxu.css +0 -1
- package/web/dist/assets/nav-row-styles-vp2JbhuJ.js +0 -1
- package/web/dist/assets/popover-BohP6WTx.js +0 -1
- package/web/dist/assets/preview-pane-connected-qTA5KNoJ.js +0 -3
- package/web/dist/assets/preview-state-vuMviq6q.js +0 -1
- package/web/dist/assets/prompt-templates-Cubdut_C.js +0 -15
- package/web/dist/assets/repo-git-Cf4t5PD0.js +0 -1
- package/web/dist/assets/run-diff-BpkUW37Z.js +0 -3
- package/web/dist/assets/run-header-68WHf9wV.js +0 -1
- package/web/dist/assets/run-header-8GObNx6F.css +0 -1
- package/web/dist/assets/search-x-I9Q8pgUa.js +0 -1
- package/web/dist/assets/skills-DFBiAuJG.js +0 -1
- package/web/dist/assets/skills-DiVIgKeU.js +0 -1
- package/web/dist/assets/square-terminal-B6RYYieR.js +0 -1
- package/web/dist/assets/status-dot-CqTJHSP9.js +0 -1
- package/web/dist/assets/tab-link-B07Hu4QX.js +0 -1
- package/web/dist/assets/task-changes--lQF6EYf.js +0 -1
- package/web/dist/assets/task-commits-Cx0qy4DN.js +0 -1
- package/web/dist/assets/task-files-D50s-gKW.js +0 -2
- package/web/dist/assets/task-github-item-DaqmSwYT.js +0 -1
- package/web/dist/assets/task-thread-BPQ64lui.js +0 -7
- package/web/dist/assets/task-thread-zNE2Q9E-.css +0 -1
- package/web/dist/assets/textarea-D20O4Pw0.js +0 -1
- package/web/dist/assets/thread-state-DWcFMrvb.js +0 -4
- package/web/dist/assets/use-hand-to-agent-state-BLIGmwbd.css +0 -1
- package/web/dist/assets/use-hand-to-agent-state-Cy9eyyfL.js +0 -1
- package/web/dist/assets/utils-JsL3ZsJf.js +0 -64
- package/web/dist/assets/workflows-jwG7uxqi.js +0 -11
- package/web/dist/assets/zoomable-image-BJJ64KGc.js +0 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{i as t,r as n,t as r}from"./react-runtime-CCIEwYL0.js";import{D as i,E as a,N as o,t as s}from"./button-CeupvoKG.js";import{$t as c,A as l,Ai as u,At as d,B as f,Bi as p,E as m,Ea as h,F as g,Gi as _,Ha as v,Hi as y,It as b,L as x,Lt as S,M as C,Mt as w,N as T,Ni as E,P as D,Sn as O,St as k,U as A,Ut as j,V as M,Vi as N,W as ee,Wi as P,Yi as F,Zt as I,an as L,dt as R,et as z,fn as B,ga as V,ji as H,jt as te,ka as ne,mn as re,oa as ie,ot as ae,tt as oe,ut as se,vt as ce,z as le}from"./dropdown-menu-COj_J5wd.js";import{An as U,C as ue,Dt as de,F as fe,Fn as pe,In as W,Mt as me,Ot as he,S as ge,St as _e,Tt as ve,W as ye,Xt as be,Y as xe,an as Se,cn as Ce,fn as we,ft as Te,g as Ee,i as G,jn as De,n as Oe,nt as ke,t as Ae,tn as je,u as Me,vt as Ne,xn as Pe,yn as Fe,z as Ie}from"./centered-state-hDsyXrnH.js";import{t as K}from"./createLucideIcon-BHp8sXmF.js";import{a as Le,c as Re,i as ze,l as Be,n as Ve,o as He,r as Ue,s as We,t as Ge}from"./run-header-C0Y1NvEM.js";import{f as Ke,g as qe,o as q,t as Je}from"./status-dot-1PR0i69P.js";import{a as Ye,s as Xe}from"./popover-D56fhiXj.js";import{t as Ze}from"./eye-B8okNWXU.js";import{n as Qe}from"./tab-link-DmWk4l5O.js";import{a as $e,i as et,n as tt,o as nt,r as rt,t as it}from"./thread-state-CIw2BlhT.js";import{i as at,l as ot,o as st,t as ct}from"./reference-chip-gQNk-4jc.js";import{$ as lt,En as ut,F as dt,Gt as ft,H as pt,I as mt,It as ht,L as gt,N as _t,On as vt,P as yt,Q as bt,R as xt,Sn as St,Tn as Ct,V as wt,Vt as Tt,X as Et,Y as Dt,_n as Ot,_r as kt,ar as At,at as jt,bn as Mt,fr as Nt,ft as J,hn as Pt,ht as Ft,it as It,jt as Lt,k as Rt,ln as zt,mn as Bt,mr as Vt,mt as Y,nn as Ht,nt as Ut,ot as Wt,pn as Gt,pt as X,rn as Kt,rt as qt,sn as Jt,sr as Yt,un as Xt,ut as Zt,vn as Qt,xn as $t,yn as en,z as tn}from"./index-BOfE8pyD.js";import{t as nn}from"./lib-BQXq3kEf.js";import{t as rn}from"./zoomable-image-CxQSsfcn.js";var an=K(`anchor`,[[`path`,{d:`M12 6v16`,key:`nqf5sj`}],[`path`,{d:`m19 13 2-1a9 9 0 0 1-18 0l2 1`,key:`y7qv08`}],[`path`,{d:`M9 11h6`,key:`1fldmi`}],[`circle`,{cx:`12`,cy:`4`,r:`2`,key:`muu5ef`}]]),on=K(`brain`,[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]),sn=K(`chart-column`,[[`path`,{d:`M3 3v16a2 2 0 0 0 2 2h16`,key:`c24i48`}],[`path`,{d:`M18 17V9`,key:`2bz60n`}],[`path`,{d:`M13 17V5`,key:`1frdt8`}],[`path`,{d:`M8 17v-3`,key:`17ska0`}]]),cn=K(`corner-up-left`,[[`path`,{d:`M20 20v-7a4 4 0 0 0-4-4H4`,key:`1nkjon`}],[`path`,{d:`M9 14 4 9l5-5`,key:`102s5s`}]]),ln=K(`folder-input`,[[`path`,{d:`M2 9V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-1`,key:`fm4g5t`}],[`path`,{d:`M2 13h10`,key:`pgb2dq`}],[`path`,{d:`m9 16 3-3-3-3`,key:`6m91ic`}]]),un=K(`message-square-text`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}],[`path`,{d:`M7 11h10`,key:`1twpyw`}],[`path`,{d:`M7 15h6`,key:`d9of3u`}],[`path`,{d:`M7 7h8`,key:`af5zfr`}]]),dn=K(`square-pen`,[[`path`,{d:`M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7`,key:`1m0v6g`}],[`path`,{d:`M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z`,key:`ohrbg2`}]]),Z=e(t(),1),Q=r();function fn({run:e}){let t=v(),n=W({mutationFn:()=>I(e.id),onSuccess:()=>{t.invalidateQueries({queryKey:G.runs.detail(e.id)}),t.invalidateQueries({queryKey:G.runs.list()}),E(`This task will not resume itself`)},onError:e=>E(e.message,{tone:`danger`})});if(!y(e))return null;let r=new Date(e.autoResumeAt);if(!Number.isFinite(r.getTime()))return null;let i=new Intl.DateTimeFormat(void 0,{dateStyle:`medium`,timeStyle:`long`}).format(r);return(0,Q.jsxs)(`div`,{"data-slot":`auto-resume-hint`,role:`status`,className:`flex flex-wrap items-center gap-x-2 gap-y-1 px-1 text-xs text-muted-foreground`,children:[(0,Q.jsx)(Je,{tone:`neutral`,shape:`ring`}),(0,Q.jsxs)(`span`,{children:[`Usage limit reached — this task resumes automatically at`,` `,(0,Q.jsx)(`time`,{dateTime:e.autoResumeAt,className:`font-medium text-foreground`,children:i})]}),(0,Q.jsx)(`button`,{type:`button`,"data-action":`auto-resume-cancel`,disabled:n.isPending,onClick:()=>n.mutate(),className:`font-medium text-foreground underline decoration-border underline-offset-2 hover:decoration-foreground disabled:opacity-50`,children:`Don’t resume`}),(0,Q.jsx)(V,{to:`/settings/global/resources`,"data-slot":`auto-resume-settings-link`,className:`font-medium text-foreground underline decoration-border underline-offset-2 hover:decoration-foreground`,children:`Auto-resume settings`})]})}function pn(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var mn=/^[A-Za-z0-9_./:=+,@%-]+$/;function hn(e){return e.replaceAll(`'`,`'\\''`)}function gn(e){return e===``?`''`:mn.test(e)?e:`\u0027${hn(e)}\u0027`}function _n(e){if(!pn(e))return;let t=e.command;if(typeof t==`string`&&t!==``)return t;if(Array.isArray(t)){let e=t.filter(e=>typeof e==`string`);if(e.length>0)return e.map(gn).join(` `)}}var vn={message:!0,reasoning:!0,tool:!0,hook:!0};function yn(e){return Object.hasOwn(vn,e)&&vn[e]}var bn=e=>e.kind===`tool`,xn=e=>e.kind===`conversation`,Sn=e=>(e.toolKind===`read`||e.toolKind===`search`)&&e.status===`completed`,Cn=(e,t,n)=>`${e} ${e===1?t:n}`;function wn(e,t){let n=[];return e>0&&n.push(Cn(e,`file`,`files`)),t>0&&n.push(Cn(t,`search`,`searches`)),`Explored ${n.join(` · `)}`}function Tn(e){return`${e} earlier tool call${e===1?``:`s`}`}var En=[`Web search`,`Ran`,`Edit`,`Write`,`Read`,`Search`,`Fetch`,`Task:`];function Dn(e){for(let t of En)if(e.startsWith(`${t} `)&&e.length>t.length+1)return{verb:t===`Task:`?`Task`:t,detail:e.slice(t.length+1)};return{verb:e}}function On(e){let t=e.filter(e=>!(e.kind===`tool`&&e.toolKind===`plan`)&&!(e.kind===`reasoning`&&e.text.trim()===``)),n=new Set(t.filter(bn).map(e=>e.id)),r=new Map,i=[];for(let e of t){let t=yn(e.kind)&&`parentItemId`in e&&e.parentItemId!==void 0&&e.parentItemId!==e.id&&n.has(e.parentItemId)?e.parentItemId:void 0;if(t===void 0)i.push(e);else{let n=r.get(t);n?n.push(e):r.set(t,[e])}}let a=[],o=[],s=()=>{if(o.length>=2){let e=o.filter(e=>e.toolKind===`read`).length;a.push({kind:`context-group`,id:`group:${o[0].id}`,tools:o,files:e,searches:o.length-e,label:wn(e,o.length-e)})}else for(let e of o)a.push({kind:`tool-card`,id:e.id,item:e,children:r.get(e.id)??[]});o=[]},c=[],l=()=>{if(c.length!==0){for(let e of kn(c).batches)a.push({kind:`worker-conversation`,id:`worker:${e.messages[0].id}`,batches:[e]});c=[]}};for(let e of i){if(xn(e)){s(),c.push(e);continue}l(),bn(e)&&Sn(e)&&!r.has(e.id)?o.push(e):(s(),bn(e)?a.push({kind:`tool-card`,id:e.id,item:e,children:r.get(e.id)??[]}):a.push({kind:`entry`,id:e.id,entry:e}))}s(),l();let u=e=>e.kind===`context-group`||e.kind===`tool-card`&&e.item.status===`completed`,d=e=>e.kind===`context-group`?e.tools.length:1,f=[],p=[],m=()=>{if(p.length>3){let e=p.slice(0,p.length-3);f.push({kind:`streak`,id:`streak:${e[0].id}`,count:e.reduce((e,t)=>e+d(t),0),blocks:e}),f.push(...p.slice(p.length-3))}else f.push(...p);p=[]};for(let e of a)u(e)?p.push(e):(m(),f.push(e));return m(),f}function kn(e){let t=[];for(let n of e){let e=t.at(-1);n.messageKind===`request`&&e?.kind===`request`&&e.senderRunId===n.senderRunId&&e.text===n.text&&!e.messages.some(e=>e.recipientRunId===n.recipientRunId)?e.messages.push(n):t.push({id:`worker-batch:${n.messageId}`,kind:n.messageKind,text:n.text,senderRunId:n.senderRunId,messages:[n]})}return{kind:`worker-conversation`,id:`worker:${e[0].id}`,batches:t}}var An=new Map,jn=(0,Z.createContext)(null);function Mn(){return(0,Z.useContext)(jn)}function Nn({runId:e,children:t}){let n=(0,Z.useMemo)(()=>({get:t=>An.get(e)?.get(t),set:(t,n)=>{let r=An.get(e)??new Map;r.set(t,n),An.set(e,r)}}),[e]);return(0,Q.jsx)(jn.Provider,{value:n,children:t})}var Pn=(0,Z.createContext)({targets:new Map,replies:new Map,navigate:()=>{}});function Fn(e){return e.scrollTop<Math.max(600,e.clientHeight)}function In(e,t){let n=t.find(({bottom:t})=>t>e);return n===void 0?void 0:{key:n.key,offset:n.top-e}}function Ln(e,t,n,r,i){if(n===void 0)return i;let a=r.find(({key:e})=>e===n.key);return a===void 0?i:e+(a.top-t-n.offset)}function Rn(e,t=24){return e.scrollHeight-e.scrollTop-e.clientHeight<t}function zn(e,t){let n=new URLSearchParams(e).get(`thread`);return n===`flat`||n===`virtual`?n:t>300?`virtual`:`flat`}var Bn=new Map;function Vn(e,t){Bn.set(e,t)}function Hn(e){return Bn.get(e)}var Un=new Map;function Wn(e,t){Un.set(e,{...t,...t.rowKeys?{rowKeys:[...t.rowKeys]}:{}})}function Gn(e){return Un.get(e)}function Kn(e,t,n){let r=Un.get(e);if(!r||r.rows!==t)return;let i=r.rowKeys;if(!(n&&i&&(n.length!==t||i.length!==t||!n.every((e,t)=>e===i[t]))))return r.cache}var qn=new Intl.DateTimeFormat(void 0,{hour:`numeric`,minute:`2-digit`}),Jn=new Intl.DateTimeFormat(void 0,{dateStyle:`medium`,timeStyle:`medium`}),Yn=new Intl.DateTimeFormat(void 0,{weekday:`short`,month:`short`,day:`numeric`}),Xn=new Intl.DateTimeFormat(void 0,{weekday:`short`,year:`numeric`,month:`short`,day:`numeric`}),Zn=new Intl.DateTimeFormat(void 0,{dateStyle:`full`});function $(e){if(typeof e!=`string`||e===``)return;let t=new Date(e);return Number.isFinite(t.getTime())?t:void 0}function Qn(e){let t=$(e);return t===void 0?void 0:qn.format(t)}function $n(e){let t=$(e);return t===void 0?void 0:Jn.format(t)}var er=e=>`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`;function tr(e){let t=$(e);return t===void 0?void 0:er(t)}function nr(e,t=new Date){let n=$(e);if(n===void 0)return;let r=er(n);return r===er(t)?`Today`:r===er(new Date(t.getFullYear(),t.getMonth(),t.getDate()-1))?`Yesterday`:(n.getFullYear()===t.getFullYear()?Yn:Xn).format(n)}function rr(e,t){let n=$(e),r=$(t);if(n===void 0||r===void 0)return;let i=Math.round((r.getTime()-n.getTime())/1e3);if(i<0)return;if(i<60)return`${i}s`;let a=Math.floor(i/60);return a<60?`${a}m ${String(i%60).padStart(2,`0`)}s`:`${Math.floor(a/60)}h ${String(a%60).padStart(2,`0`)}m`}function ir({ts:e}){let t=Qn(e);return t===void 0?null:(0,Q.jsx)(`time`,{"data-slot":`message-time`,dateTime:e,title:$n(e),className:`text-[11px] leading-none text-soft-foreground`,children:t})}function ar({startedAt:e,completedAt:t}){let n=Qn(t);if(n===void 0)return null;let r=rr(e,t);return(0,Q.jsxs)(`div`,{"data-slot":`turn-time`,className:`flex items-center gap-1.5 px-0.5 text-[11px] leading-none text-soft-foreground`,children:[(0,Q.jsx)(`time`,{dateTime:t,title:$n(t),children:n}),r===void 0?null:(0,Q.jsxs)(`span`,{title:`Replied in ${r}`,children:[`· `,r]})]})}function or({ts:e}){let t=nr(e),n=$(e);if(t===void 0||n===void 0)return null;let r=Zn.format(n);return(0,Q.jsxs)(`div`,{"data-slot":`day-separator`,role:`separator`,"aria-label":t===`Today`||t===`Yesterday`?`${t}, ${r}`:r,className:`flex items-center gap-3 py-1 text-[11px] font-medium text-soft-foreground`,children:[(0,Q.jsx)(`span`,{"aria-hidden":!0,className:`h-px flex-1 bg-border`}),(0,Q.jsx)(`time`,{dateTime:tr(e),title:r,children:t}),(0,Q.jsx)(`span`,{"aria-hidden":!0,className:`h-px flex-1 bg-border`})]})}function sr(e,t){let n={};for(let e of t??[])n[e.id]=e.currentStepBackend??e.runner;return n[e.id]=e.steps.find(t=>t.id===e.currentStepId)?.backend??e.runner,n}function cr(e,t,n=[]){let r={};for(let e of n)r[e.id]=Pe(e);for(let e of t??[])r[e.id]=Pe(e);return r[e.id]=Pe(e),r}function lr(e,t){return t?.[e]??`Task`}function ur(e,t){return e.senderRunId===t?`outbound`:`inbound`}function dr(e){switch(e){case`request`:return`Request`;case`progress`:return`Progress`;case`follow-up`:return`Follow-up`;case`reply`:return`Reply`;default:return e}}function fr(e){switch(e){case`pending`:return`Pending`;case`replied`:return`Replied`;case`replied-late`:return`Replied late`;case`timed-out`:return`Timed out`;case`cancelled`:return`Cancelled`;case`completed-without-reply`:return`Completed without reply`;case`failed`:return`Failed`;case`destroyed`:return`Destroyed`;case`sender-closed`:return`Sender closed`;case`human-fallback`:return`Sent to a human`;default:return e}}function pr(e){if(e.outcome)return fr(e.outcome.status);if(e.delivery===`not-delivered`)return mr(`not-delivered`)}function mr(e){switch(e){case`queued`:return`Queued`;case`delivered`:return`Delivered`;case`consumed`:return`Read`;case`not-delivered`:return`Not delivered`;default:return e}}var hr={user:{label:`YOUR MESSAGE`,speaker:`Your message`,classes:`border-message-user-border bg-message-user-bg [html:not(.light)_&]:border-s-[3px] [html:not(.light)_&]:border-s-message-user-accent`,accent:`text-message-user-accent`,body:`max-md:text-[12px]`},agent:{label:`AGENT RESPONSE`,speaker:`Agent response`,classes:`border-message-agent-border bg-message-agent-bg [html:not(.light)_&]:border-s-[3px] [html:not(.light)_&]:border-s-message-agent-accent`,accent:`text-message-agent-accent`,body:`text-[15px] md:text-[14px]`}};function gr({role:e,children:t,className:n,ts:r,headerActions:i,...o}){let s=hr[e],c=r===void 0?void 0:Qn(r);return(0,Q.jsxs)(`article`,{...o,"data-role":e,"aria-label":s.speaker,className:a(`flex w-full min-w-0 flex-col gap-2 self-stretch rounded-[8px] border p-3 md:px-4 md:py-[14px]`,s.classes,n),children:[(0,Q.jsxs)(`p`,{className:a(`m-0 flex w-full min-w-0 items-start gap-2 text-[11px] leading-[1.2] font-semibold tracking-[0.6px] uppercase`,s.accent),children:[(0,Q.jsxs)(`span`,{className:`inline-flex min-w-0 flex-1 flex-wrap items-center gap-x-2 gap-y-1 normal-case tracking-normal`,children:[(0,Q.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-2 uppercase tracking-[0.6px]`,children:[(0,Q.jsx)(Qe,{"aria-hidden":`true`,className:`size-4 shrink-0`}),s.label]}),i]}),c===void 0?null:(0,Q.jsx)(`span`,{className:`shrink-0 font-normal tracking-normal normal-case`,children:(0,Q.jsx)(ir,{ts:r})})]}),(0,Q.jsx)(`div`,{className:a(`min-w-0 break-words text-[14px] text-foreground select-text [overflow-wrap:anywhere]`,s.body,`leading-[1.6]`),children:t})]})}function _r({text:e,imageCount:t=0,images:n=[],ts:r,onEdit:i,onRemove:a,editLabel:s=`Edit message`,removeLabel:c=`Remove message`,children:l}){let u=t-n.length,[d,f]=(0,Z.useState)(!1),[p,m]=(0,Z.useState)(e),[h,g]=(0,Z.useState)(!1),[_,v]=(0,Z.useState)(),y=()=>{m(e),v(void 0),f(!0)},b=async()=>{let t=p.trim();if(!t||t===e){f(!1);return}g(!0),v(void 0);try{await i?.(t),f(!1)}catch(e){v(e instanceof Error?e.message:`Could not save the message`)}finally{g(!1)}},x=async()=>{g(!0),v(void 0);try{await a?.()}catch(e){v(e instanceof Error?e.message:`Could not remove the message`)}finally{g(!1)}};return d?(0,Q.jsxs)(gr,{role:`user`,ts:r,"data-slot":`user-bubble`,"data-editing":`true`,children:[(0,Q.jsx)(`textarea`,{autoFocus:!0,"aria-label":`Edit the message`,value:p,onChange:e=>m(e.target.value),onKeyDown:e=>{e.key===`Escape`?(e.stopPropagation(),f(!1)):e.key===`Enter`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),b())},className:`block max-h-[220px] min-h-[60px] w-full resize-none rounded-md bg-background px-2 py-1.5 text-[14px] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50`}),(0,Q.jsxs)(`span`,{className:`mt-1.5 flex justify-end gap-1.5`,children:[(0,Q.jsx)(`button`,{type:`button`,onClick:()=>f(!1),disabled:h,className:`inline-flex min-h-11 min-w-11 items-center justify-center rounded-sm px-2 text-xs font-medium text-muted-foreground hover:bg-background hover:text-foreground focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-none`,children:`Cancel`}),(0,Q.jsx)(`button`,{type:`button`,onClick:()=>void b(),disabled:h,className:`inline-flex min-h-11 min-w-11 items-center justify-center rounded-sm bg-action px-2 text-xs font-semibold text-action-foreground hover:brightness-[0.96] focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-none`,children:h?(0,Q.jsx)(qe,{className:`size-3.5 animate-spin`}):`Save`})]}),_?(0,Q.jsx)(`p`,{role:`alert`,className:`mt-1.5 text-xs text-danger`,children:_}):null]}):(0,Q.jsxs)(gr,{role:`user`,ts:r,"data-slot":`user-bubble`,className:`group`,children:[i||a?(0,Q.jsxs)(`span`,{"data-slot":`bubble-actions`,className:`mb-1 flex justify-end gap-0.5 opacity-0 transition-opacity group-hover:opacity-100 focus-within:opacity-100`,children:[i?(0,Q.jsx)(`button`,{type:`button`,"aria-label":s,onClick:y,disabled:h,className:`inline-flex size-11 items-center justify-center rounded-sm text-soft-foreground hover:bg-background hover:text-foreground focus-visible:opacity-100 focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-none`,children:(0,Q.jsx)(dn,{className:`size-3.5`})}):null,a?(0,Q.jsx)(`button`,{type:`button`,"aria-label":c,onClick:()=>void x(),disabled:h,className:`inline-flex size-11 items-center justify-center rounded-sm text-soft-foreground hover:bg-background hover:text-danger focus-visible:opacity-100 focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-none`,children:(0,Q.jsx)(te,{className:`size-3.5`})}):null]}):null,_?(0,Q.jsx)(`p`,{role:`alert`,className:`mb-1 text-xs text-danger`,children:_}):null,l??(0,Q.jsx)(Jt,{breaks:!0,children:e}),n.length>0?(0,Q.jsx)(`span`,{"data-slot":`user-images`,className:`mt-2 flex flex-wrap items-center justify-end gap-1.5`,children:n.map(e=>F(e.split(`/`).pop()??``)?(0,Q.jsx)(rn,{src:e,alt:`attached`,className:`max-h-40 max-w-[220px] rounded-md border border-border object-contain`},e):(0,Q.jsxs)(`a`,{href:o(e),download:!0,"data-slot":`user-file`,className:`inline-flex min-h-11 min-w-11 max-w-[220px] items-center gap-1.5 rounded-md border border-border bg-background/60 px-2 py-1 text-xs text-muted-foreground hover:text-foreground`,children:[(0,Q.jsx)(ce,{"aria-hidden":`true`,className:`size-3.5 shrink-0`}),(0,Q.jsx)(`span`,{className:`truncate`,children:e.split(`/`).pop()})]},e))}):null,u>0?(0,Q.jsxs)(`span`,{className:`mt-1 block text-xs text-soft-foreground`,children:[u,` image`,u>1?`s`:``,` attached`]}):null]})}var vr=`inline-flex h-11 min-w-11 items-center justify-center gap-1 rounded-sm px-2 text-xs font-medium text-soft-foreground hover:bg-background hover:text-foreground focus-visible:opacity-100 focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-none`,yr=[`[data-streamdown="code-block-actions"]`,`[data-streamdown="code-copy-button"]`,`[data-streamdown="code-block-copy-button"]`,`[data-streamdown="code-block-header"]`].join(`,`);function br(e){let t="`".repeat(3),n=`~`.repeat(3);return e.split(t).filter((e,t)=>t%2==0).join(` `).split(n).filter((e,t)=>t%2==0).join(` `).split("`").filter((e,t)=>t%2==0).join(` `)}function xr(e){return e.replace(/!\[[^\]]*\]\([^)\s]*(?:\s+"[^"]*")?\)/g,` `)}function Sr(e){return e.replace(/\*\*/g,``).replace(/\*/g,``).replace(/__/g,``).replace(/~~/g,``).split("`").join(``)}function Cr(e){let t=e.trim();return t===``||t.startsWith(`#`)||/^(https?:|mailto:)/i.test(t)?!0:!/^[a-z][a-z0-9+.-]*:/i.test(t)}function wr(e){let t=br(xr(e)),n=new Map;for(let e of t.matchAll(/^\s*\[([^\]]+)\]:\s*(\S+)/gm))Cr(e[2])&&n.set(e[1].toLowerCase(),e[2]);let r=t.replace(/^\s*\[[^\]]+\]:\s*\S+.*$/gm,` `),i=[];for(let e of r.matchAll(/(?<!!)\[([^\]]+)\](?:\(((?:[^()\s]|\([^)]*\))+)(?:\s+"[^"]*")?\)|\[([^\]]*)\])|<(https?:\/\/[^>\s]+)>|(https?:\/\/[^\s<]+)/g)){if(e[2]){Cr(e[2])&&i.push({label:Sr(e[1]),href:e[2]});continue}if(e[1]!==void 0&&e[3]!==void 0){let t=(e[3].length>0?e[3]:e[1]).toLowerCase(),r=n.get(t);r&&i.push({label:Sr(e[1]),href:r});continue}let t=(e[4]??e[5])?.replace(/[.,;:!?]+$/,``);t&&Cr(t)&&i.push({label:t,href:t})}return i}function Tr(e,t){let n=e.cloneNode(!0);n.querySelectorAll(yr).forEach(e=>e.remove());let r=wr(t);return[...n.querySelectorAll(`button[data-streamdown="link"]`)].forEach(e=>{let t=e.textContent??``,i=r.findIndex(e=>e.label===t);if(i<0)return;let a=r.splice(i,1)[0];if(!a||!Cr(a.href))return;let o=n.ownerDocument.createElement(`a`);o.setAttribute(`href`,a.href),o.setAttribute(`data-streamdown`,`link`),o.textContent=e.textContent,e.replaceWith(o)}),n.innerHTML}async function Er(e,t,n){if(e===`markdown`){if(!navigator.clipboard?.writeText)throw Error(`Clipboard unavailable`);await navigator.clipboard.writeText(t);return}if(!navigator.clipboard?.write||typeof ClipboardItem>`u`||!n)throw Error(`Clipboard unavailable`);let r=Tr(n,t);await navigator.clipboard.write([new ClipboardItem({"text/html":new Blob([r],{type:`text/html`}),"text/plain":new Blob([t],{type:`text/plain`})})])}function Dr({text:e,ts:t}){let n=(0,Z.useRef)(null),[r,i]=(0,Z.useState)(null),[a,o]=(0,Z.useState)(null),s=(0,Z.useRef)(null);(0,Z.useEffect)(()=>()=>{s.current!==null&&clearTimeout(s.current)},[]);let c=async t=>{s.current!==null&&clearTimeout(s.current),i(null),o(null);try{await Er(t,e,n.current),i(t),s.current=setTimeout(()=>i(null),2e3)}catch{o(`Couldn't copy to the clipboard`)}};return(0,Q.jsxs)(gr,{role:`agent`,ts:t,"data-slot":`assistant-message`,headerActions:(0,Q.jsxs)(`span`,{"data-slot":`bubble-actions`,className:`flex items-center gap-0.5`,children:[(0,Q.jsxs)(`button`,{type:`button`,"aria-label":`Copy reply`,onClick:()=>void c(`html`),className:vr,children:[(0,Q.jsx)(A,{className:`size-3.5`,"aria-hidden":`true`}),(0,Q.jsx)(`span`,{"aria-live":`polite`,children:r===`html`?`Copied`:`Copy`})]}),(0,Q.jsxs)(`button`,{type:`button`,"aria-label":`Copy reply as markdown`,onClick:()=>void c(`markdown`),className:vr,children:[(0,Q.jsx)(Vt,{className:`size-3.5`,"aria-hidden":`true`}),(0,Q.jsx)(`span`,{"aria-live":`polite`,children:r===`markdown`?`Copied`:`Copy markdown`})]})]}),children:[a?(0,Q.jsx)(`p`,{role:`alert`,className:`mb-1 text-xs text-danger`,children:a}):null,(0,Q.jsx)(`div`,{ref:n,children:(0,Q.jsx)(Jt,{breaks:!0,children:e})})]})}var Or={outbound:{classes:`border-message-outbound-border bg-message-outbound-bg [html:not(.light)_&]:border-s-[3px] [html:not(.light)_&]:border-s-message-outbound-accent`,accent:`text-message-outbound-accent`},inbound:{classes:`border-message-inbound-border bg-message-inbound-bg [html:not(.light)_&]:border-s-[3px] [html:not(.light)_&]:border-s-message-inbound-accent`,accent:`text-message-inbound-accent`}},kr=`inline-flex min-h-11 max-w-full items-center break-words underline underline-offset-4 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`;function Ar({block:e,runId:t,taskTitles:n,recipientBackends:r}){return(0,Q.jsx)(`div`,{"data-slot":`worker-conversation`,className:`flex min-w-0 flex-col gap-2`,children:e.batches.map(e=>(0,Q.jsx)(jr,{batch:e,runId:t,taskTitles:n,recipientBackends:r},e.id))})}function jr({batch:e,runId:t,taskTitles:n,recipientBackends:r}){let i=ur(e.messages[0]??{senderRunId:e.senderRunId},t),o=Or[i],s=Ir(e.messages.map(e=>i===`outbound`?e.recipientRunId:e.senderRunId)),c=i===`outbound`?`SENT to`:`RECEIVED from`,l=`${c} ${s.map(e=>lr(e,n)).join(`, `)}`,u=e.messages[0],d=u?.createdAt??u?.recordedAt,f=u?pr(u):void 0;return(0,Q.jsxs)(`article`,{"data-slot":`worker-conversation-card`,"data-direction":i,"data-kind":e.kind,className:a(`flex w-full min-w-0 flex-col gap-2 rounded-[8px] border p-3 md:px-4 md:py-[14px]`,o.classes),children:[(0,Q.jsxs)(`div`,{className:`grid min-w-0 grid-cols-[minmax(0,1fr)_auto] items-start gap-2`,children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[(0,Q.jsxs)(`p`,{className:a(`m-0 flex min-w-0 flex-wrap items-center gap-x-2 text-[11px] leading-[1.2] font-semibold tracking-[0.6px] uppercase`,o.accent),children:[(0,Q.jsx)(`span`,{children:c}),s.map((e,t)=>(0,Q.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-x-2 normal-case tracking-normal`,children:[t>0?(0,Q.jsx)(`span`,{"aria-hidden":!0,children:`,`}):null,(0,Q.jsx)(q,{className:kr,to:`/tasks/${e}`,"aria-label":`${c} ${lr(e,n)}`,children:lr(e,n)})]},e))]}),(0,Q.jsx)(`span`,{"data-slot":`conversation-kind`,className:`rounded-full bg-background/60 px-2 py-0.5 text-[11px] font-semibold tracking-[0.05em] text-foreground uppercase`,children:dr(e.kind)}),e.messages.length===1&&f?(0,Q.jsx)(`span`,{"data-slot":`conversation-outcome`,className:`text-xs font-medium text-muted-foreground`,children:f}):null,e.messages.length===1&&u&&(e.kind===`request`||e.kind===`reply`)&&mr(u.delivery)!==f?(0,Q.jsx)(`span`,{"data-slot":`conversation-delivery`,className:`text-xs text-muted-foreground`,children:mr(u.delivery)}):null]}),d!==void 0&&Qn(d)!==void 0?(0,Q.jsxs)(`span`,{className:`flex shrink-0 items-center justify-self-end gap-1 whitespace-nowrap text-[11px] text-soft-foreground`,children:[e.messages.length>1?`First sent`:null,(0,Q.jsx)(ir,{ts:d})]}):null]}),(0,Q.jsx)(Mr,{batch:e},`${t}:${u?.messageId??e.id}`),[...new Set(e.messages.map(e=>e.instruction??(e.delivery===`queued`?`${r?.[e.recipientRunId]===`cursor`?`Queued for delivery. If Cursor is in a turn, delivery waits for that turn to end.`:r?.[e.recipientRunId]?`Queued for delivery. This agent can receive messages during its current turn.`:`Queued for delivery. Timing depends on the recipient agent.`} Pending messages are batched within the size limit; human questions and scheduler capacity can delay delivery.`:e.state===`continuation-required`?`Not delivered. The recipient needs a new instruction to resume. A parent can resume its owned worker with --resume; workers cannot resume parents.`:e.state===`destroyed`?`Not delivered. This worker was destroyed.`:void 0)))].map(e=>e?(0,Q.jsx)(`p`,{"data-slot":`conversation-delivery-explanation`,className:`min-w-0 text-xs leading-relaxed text-muted-foreground [overflow-wrap:anywhere]`,children:e},e):null),e.kind===`request`&&e.messages.length>1?(0,Q.jsx)(`ul`,{className:`grid min-w-0 gap-1 text-xs text-muted-foreground`,children:e.messages.map(e=>{let r=pr(e),i=e.createdAt??e.recordedAt;return(0,Q.jsxs)(`li`,{className:`flex min-h-11 min-w-0 flex-wrap items-center gap-2`,children:[(0,Q.jsx)(q,{className:kr,to:`/tasks/${e.recipientRunId}`,"aria-label":`${lr(e.recipientRunId,n)}${r?` — ${r}`:``}`,children:lr(e.recipientRunId,n)}),r?(0,Q.jsx)(`span`,{"data-slot":`conversation-outcome`,children:r}):null,mr(e.delivery)===r?null:(0,Q.jsx)(`span`,{"data-slot":`conversation-delivery`,children:mr(e.delivery)}),(0,Q.jsx)(Nr,{message:e,runId:t,taskTitles:n}),i!==void 0&&Qn(i)!==void 0?(0,Q.jsx)(`span`,{className:`ml-auto whitespace-nowrap`,children:(0,Q.jsx)(ir,{ts:i})}):null]},e.id)})}):null,e.messages.length===1&&u?(0,Q.jsx)(Nr,{message:u,runId:t,taskTitles:n}):null,(0,Q.jsx)(Pr,{batch:e,heading:l})]})}function Mr({batch:e}){let t=Mn(),n=`conversation-body:${e.messages[0]?.messageId??e.id}`,[r,i]=(0,Z.useState)(()=>t?.get(n)??!1),a=(0,Q.jsx)(`div`,{className:`min-w-0 break-words text-[14px] leading-[1.6] text-foreground select-text [overflow-wrap:anywhere]`,children:(0,Q.jsx)(Jt,{breaks:!0,children:e.text})});return e.kind!==`request`&&e.kind!==`reply`?a:(0,Q.jsxs)(J,{"data-slot":`conversation-body`,open:r,onOpenChange:e=>{t?.set(n,e),i(e)},className:`min-w-0`,children:[(0,Q.jsxs)(Y,{type:`button`,"data-slot":`conversation-body-toggle`,className:`group/body inline-flex min-h-11 min-w-11 items-center gap-1.5 rounded-md px-2 text-start text-xs font-medium text-muted-foreground [@media(hover:hover)_and_(pointer:fine)]:hover:bg-background/40 [@media(hover:hover)_and_(pointer:fine)]:hover:text-foreground active:bg-background/60 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring`,children:[(0,Q.jsx)(g,{"aria-hidden":!0,className:`size-3.5 shrink-0 group-data-[state=open]/body:rotate-90`}),r?`Hide message`:`Show message`]}),(0,Q.jsx)(X,{children:a})]})}function Nr({message:e,runId:t,taskTitles:n}){let{targets:r,replies:i,navigate:o}=(0,Z.useContext)(Pn),s=e.requestId?r.get(e.requestId):void 0,c=e.requestId?s?[s]:[]:i.get(e.messageId)??[],l=e.requestId?`request`:`reply`;return c.length===0?e.requestId||e.outcome?.replyId?(0,Q.jsxs)(`p`,{"data-slot":`conversation-connector`,className:`text-xs text-muted-foreground`,children:[`Linked `,l,` is outside loaded history.`]}):null:c.map(e=>{let r=ur(e.message,t)===`outbound`,i=r?e.message.recipientRunId:e.message.senderRunId;return(0,Q.jsxs)(`button`,{type:`button`,"data-slot":`conversation-connector`,className:a(kr,`w-fit gap-1.5 text-xs text-muted-foreground`),onClick:()=>o(e),children:[(0,Q.jsx)(`span`,{"aria-hidden":!0,children:`↗`}),`View `,l,` `,r?`to`:`from`,` `,lr(i,n)]},e.message.messageId)})}function Pr({batch:e,heading:t}){return(0,Q.jsxs)(J,{"data-slot":`conversation-details`,className:`group/details`,children:[(0,Q.jsxs)(Y,{type:`button`,className:`inline-flex min-h-11 min-w-11 items-center gap-1.5 rounded-md px-2 text-left text-xs font-medium text-muted-foreground hover:bg-background/40 hover:text-foreground focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-none`,children:[(0,Q.jsx)(g,{"aria-hidden":!0,className:`size-3.5 shrink-0 transition-transform group-data-[state=open]/details:rotate-90`}),`Details`]}),(0,Q.jsx)(X,{children:(0,Q.jsxs)(`dl`,{className:`grid min-w-0 gap-1 break-all px-2 pb-1 font-mono text-[11px] text-muted-foreground`,children:[(0,Q.jsx)(`div`,{className:`sr-only`,children:t}),e.messages.flatMap(e=>Fr(e)).map((e,t)=>(0,Q.jsxs)(`div`,{children:[(0,Q.jsxs)(`dt`,{className:`inline font-sans font-medium text-soft-foreground`,children:[e.label,`: `]}),(0,Q.jsx)(`dd`,{className:`inline`,children:e.value})]},`${e.label}:${e.value}:${t}`))]})})]})}function Fr(e){let t=[{label:`Message`,value:e.messageId},{label:`Sender`,value:e.senderRunId},{label:`Recipient`,value:e.recipientRunId},{label:`Delivery`,value:mr(e.delivery)}];return e.requestId&&t.push({label:`Request`,value:e.requestId}),e.outcome?.replyId&&t.push({label:`Reply`,value:e.outcome.replyId}),e.state&&t.push({label:`State`,value:e.state}),e.createdAt&&t.push({label:`Created`,value:e.createdAt}),e.deliveredAt&&t.push({label:e.resumed?`Opening turn completed`:`Delivery acknowledged`,value:e.deliveredAt}),e.recordedAt&&t.push({label:`Event recorded`,value:e.recordedAt}),e.resumed&&t.push({label:`Continuation`,value:`Requested by parent with this instruction`}),e.deadline&&t.push({label:`Deadline`,value:e.deadline}),e.requestHash&&t.push({label:`Hash`,value:e.requestHash}),t}function Ir(e){let t=new Set,n=[];for(let r of e)t.has(r)||(t.add(r),n.push(r));return n}function Lr({note:e}){return e.icon===`handoff`?(0,Q.jsxs)(`div`,{"data-slot":`note-line`,"data-tone":e.tone,"data-icon":`handoff`,className:`flex items-start gap-2 px-0.5 text-xs text-muted-foreground`,children:[(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`mt-[-1px] flex size-5 shrink-0 items-center justify-center rounded-full border border-border text-success`,children:(0,Q.jsx)(Yt,{className:`size-3`})}),(0,Q.jsx)(`span`,{className:`min-w-0 break-words`,children:e.text})]}):(0,Q.jsxs)(`div`,{"data-slot":`note-line`,"data-tone":e.tone,className:a(`px-0.5 text-xs`,e.tone===`danger`?`text-danger [.light_&]:text-red-700`:`text-soft-foreground`),children:[e.tone===`danger`?`✗ `:`· `,e.text]})}var Rr={claude:`Claude Code`,codex:`Codex`,opencode:`OpenCode`,pi:`pi`,cursor:`Cursor`,omp:`OMP`};function zr({incident:e}){let t=Rr[e.provider];return(0,Q.jsxs)(`div`,{role:`alert`,"data-slot":`provider-auth-required`,className:`rounded-md border border-danger/30 bg-danger/5 px-3.5 py-3`,children:[(0,Q.jsxs)(`p`,{className:`text-[13px] font-semibold text-foreground`,children:[`This run needed `,t,` authorization`]}),(0,Q.jsxs)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:[`Review `,t,` settings before retrying.`]}),(0,Q.jsx)(q,{to:`/settings/agents#providers`,className:`mt-2 inline-flex text-xs font-medium text-foreground underline-offset-2 hover:underline`,children:`Open provider settings`})]})}function Br({text:e}){let t=(0,Z.useId)();if(e.trim()===``)return null;let n=e.split(`
|
|
2
|
+
`,1)[0]??``,r=n.length<e.length;return(0,Q.jsxs)(J,{"data-slot":`reasoning`,className:`group/reasoning min-w-0`,children:[(0,Q.jsxs)(`div`,{id:t,className:`relative flex w-full items-center gap-1.5 rounded-md p-0.5 text-left text-[13px] text-soft-foreground hover:text-muted-foreground`,children:[(0,Q.jsx)(g,{"aria-hidden":!0,className:`size-3.5 shrink-0 transition-transform group-data-[state=open]/reasoning:rotate-90`}),(0,Q.jsx)(`span`,{className:`shrink-0`,children:`Thinking — `}),(0,Q.jsx)(`div`,{className:`min-w-0 truncate text-muted-foreground`,children:(0,Q.jsx)(Jt,{inline:!0,children:n})}),r?(0,Q.jsx)(`span`,{"aria-hidden":!0,children:`…`}):null,(0,Q.jsx)(Y,{"aria-labelledby":t,className:`absolute inset-0 rounded-md focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-none`})]}),(0,Q.jsx)(X,{children:(0,Q.jsx)(`div`,{className:`px-6 py-1.5 text-[13px] leading-[1.6] text-soft-foreground`,children:(0,Q.jsx)(Jt,{children:e})})})]})}function Vr(){return(0,Q.jsxs)(`div`,{"data-slot":`working-indicator`,className:`flex items-center gap-2 py-1 text-[13px] text-soft-foreground`,children:[(0,Q.jsx)(qe,{role:`status`,"aria-label":`Working`,className:`size-3.5 shrink-0 animate-spin`}),(0,Q.jsx)(`span`,{className:`shimmer font-medium`,children:`Working…`})]})}var Hr={read:Vt,edit:dn,delete:te,move:ln,search:k,execute:At,think:on,fetch:Nt,task:C,plan:R,other:S},Ur=e=>e.split(`
|
|
3
|
+
`).length;function Wr({text:e,streaming:t}){let[n,r]=(0,Z.useState)(!1),i=(0,Z.useRef)(null),o=(0,Z.useRef)(!0);(0,Z.useEffect)(()=>{let e=i.current;t&&e&&o.current&&(e.scrollTop=e.scrollHeight)},[e,t]);let s=Ur(e),c=!t&&!n&&s>12;return(0,Q.jsxs)(`div`,{"data-slot":`tool-output`,"data-clamped":c?`true`:void 0,children:[(0,Q.jsxs)(`div`,{className:`relative`,children:[(0,Q.jsx)(`div`,{ref:i,onScroll:t?e=>{o.current=Rn(e.currentTarget)}:void 0,className:a(`overflow-x-auto`,t&&`max-h-[216px] overflow-y-auto`,c&&`max-h-[216px] overflow-y-hidden`),children:(0,Q.jsx)(`pre`,{className:`px-4 py-3 font-mono text-xs leading-[1.7] whitespace-pre text-muted-foreground`,children:e})}),c?(0,Q.jsx)(`div`,{"data-slot":`tool-output-fade`,"aria-hidden":!0,className:`pointer-events-none absolute inset-x-0 bottom-0 h-14 bg-gradient-to-b from-transparent to-card-2`}):null]}),!t&&s>12?(0,Q.jsx)(`button`,{type:`button`,"data-slot":`tool-output-toggle`,onClick:()=>r(e=>!e),className:`block w-full border-t border-border/50 px-4 py-1.5 text-left text-[11px] font-medium text-soft-foreground hover:text-foreground`,children:n?`Show less`:`Show all ${s} lines`}):null]})}function Gr({diffs:e}){return(0,Q.jsx)(Q.Fragment,{children:e.map((e,t)=>(0,Q.jsxs)(`div`,{"data-slot":`diff-preview`,className:`min-w-0`,children:[(0,Q.jsx)(`div`,{className:`border-b border-border/50 px-4 py-1.5 font-mono text-[11px] text-soft-foreground`,children:e.path}),(0,Q.jsx)(`pre`,{className:`overflow-x-auto py-2 font-mono text-xs leading-[1.7] whitespace-pre`,children:e.unified===void 0?[...Kr(e.oldText).map((e,t)=>(0,Q.jsxs)(`span`,{className:`block bg-diff-del px-4 text-muted-foreground`,children:[`- `,e]},`old-${t}`)),...Kr(e.newText).map((e,t)=>(0,Q.jsxs)(`span`,{className:`block bg-diff-add px-4`,children:[`+ `,e]},`new-${t}`))]:e.unified.split(`
|
|
4
|
+
`).map((e,t)=>(0,Q.jsx)(qr,{text:e},t))})]},`${e.path}:${t}`))})}function Kr(e){return e==null||e===``?[]:e.replace(/\n$/,``).split(`
|
|
5
|
+
`)}function qr({text:e}){return(0,Q.jsx)(`span`,{className:a(`block px-4`,e.startsWith(`+`)&&`bg-diff-add`,e.startsWith(`-`)&&`bg-diff-del text-muted-foreground`,e.startsWith(`@@`)&&`text-soft-foreground`),children:e})}function Jr(e){return e.toolKind===`execute`&&e.status===`running`&&e.output!==void 0}function Yr({item:e,nested:t=[],cacheKey:n,renderNested:r}){let i=Mn(),[o,s]=(0,Z.useState)(()=>n===void 0?null:i?.get(n)??null),c=e=>{n!==void 0&&i?.set(n,e),s(e)},l=e.status===`running`||e.status===`pending`,u=Dn(e.title),{verb:d,detail:f}=e.toolKind===`execute`&&u.detail===void 0?{verb:`Ran`,detail:e.title}:u,p=e.toolKind===`execute`?_n(e.input)??f:f,m=e.output!==void 0&&e.output!==``||e.error!==void 0&&e.error!==``||e.diffs!==void 0&&e.diffs.length>0||t.length>0,h=p!==void 0||m,_=h&&(o??(m&&Jr(e))),v=Hr[e.toolKind]??S;return(0,Q.jsxs)(J,{"data-slot":`tool-card`,"data-status":e.status,"data-kind":e.toolKind,open:_,onOpenChange:c,className:a(`min-w-0 overflow-hidden rounded-md border bg-card`,e.status===`failed`?`border-danger/25`:`border-border`),children:[(0,Q.jsxs)(Y,{disabled:!h,className:`group flex min-h-[28px] w-full items-center gap-1.5 px-2.5 py-0.5 text-left text-[13px] enabled:hover:bg-muted`,children:[(0,Q.jsx)(g,{"aria-hidden":!0,className:a(`size-3 shrink-0 text-soft-foreground transition-transform group-data-[state=open]:rotate-90`,!h&&`invisible`)}),(0,Q.jsx)(v,{"aria-hidden":!0,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Q.jsx)(`span`,{className:a(`shrink-0 font-semibold`,l&&`shimmer`,e.status===`declined`&&`text-muted-foreground`),children:d}),f===void 0?null:(0,Q.jsx)(`code`,{title:f,className:`block min-w-0 flex-1 truncate font-mono text-xs text-muted-foreground`,children:f}),(0,Q.jsxs)(`span`,{className:`ml-auto flex shrink-0 items-center gap-2 pl-2`,children:[l?(0,Q.jsx)(qe,{role:`status`,"aria-label":`Running`,className:`size-3.5 animate-spin text-soft-foreground`}):null,e.status===`failed`?(0,Q.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`failed`}):null,e.status===`declined`?(0,Q.jsx)(`span`,{className:`text-xs text-soft-foreground`,children:`declined`}):null,e.toolKind===`execute`&&typeof e.exitCode==`number`?(0,Q.jsx)(`span`,{"data-slot":`tool-exit`,className:a(`rounded-full px-2 py-px font-mono text-[11px] font-semibold`,e.exitCode===0?`bg-success/10 text-success`:`bg-danger/10 text-danger`),children:e.exitCode}):null]})]}),(0,Q.jsx)(X,{children:(0,Q.jsxs)(`div`,{className:`border-t border-border bg-card-2`,children:[p===void 0?null:(0,Q.jsx)(`pre`,{"data-slot":`tool-command`,className:`px-3 py-2 font-mono text-xs whitespace-pre-wrap break-words [overflow-wrap:anywhere]`,children:p}),e.error!==void 0&&e.error!==``?(0,Q.jsx)(`div`,{"data-slot":`tool-error`,className:`px-4 py-3 font-mono text-xs leading-[1.7] whitespace-pre-wrap text-danger`,children:e.error}):null,e.diffs!==void 0&&e.diffs.length>0?(0,Q.jsx)(Gr,{diffs:e.diffs}):null,e.output!==void 0&&e.output!==``?(0,Q.jsx)(Wr,{text:e.output,streaming:l}):null,t.length>0?(0,Q.jsx)(`div`,{"data-slot":`tool-nested`,className:`flex flex-col gap-2 border-l-2 border-border py-2.5 pr-3 pl-3 ml-4 my-2`,children:r?.(t,n??e.id)}):null]})})]})}function Xr(e){let t=e.name??e.event,n=t.indexOf(`:`);return n>0?`${t.slice(0,n)} · ${t.slice(n+1)}`:t}function Zr({item:e,cacheKey:t}){let n=Mn(),[r,i]=(0,Z.useState)(()=>t===void 0?!1:n?.get(t)??!1),o=e=>{t!==void 0&&n?.set(t,e),i(e)},s=e.status!==`completed`,c=e.entries.some(e=>e.kind===`context`),l=(e.stdout??``)!==``||(e.stderr??``)!==``,u=Xr(e);return(0,Q.jsxs)(J,{"data-slot":`hook-card`,"data-status":e.status,open:r,onOpenChange:o,className:a(`min-w-0 overflow-hidden rounded-md border bg-card`,s?`border-danger/25`:`border-border`),children:[(0,Q.jsxs)(Y,{className:`group flex min-h-[28px] w-full items-center gap-1.5 px-2.5 py-0.5 text-left text-[13px] hover:bg-muted`,children:[(0,Q.jsx)(g,{"aria-hidden":!0,className:`size-3 shrink-0 text-soft-foreground transition-transform group-data-[state=open]:rotate-90`}),(0,Q.jsx)(an,{"aria-hidden":!0,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Q.jsx)(`span`,{className:`shrink-0 font-semibold`,children:`Hook`}),(0,Q.jsx)(`code`,{title:u,className:`block min-w-0 flex-1 truncate font-mono text-xs text-muted-foreground`,children:u}),(0,Q.jsxs)(`span`,{className:`ml-auto flex shrink-0 items-center gap-2 pl-2`,children:[s?(0,Q.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.status}):c?(0,Q.jsx)(`span`,{className:`text-xs text-soft-foreground`,children:`context`}):null,s&&typeof e.exitCode==`number`&&e.exitCode!==0?(0,Q.jsx)(`span`,{"data-slot":`hook-exit`,className:`rounded-full bg-danger/10 px-2 py-px font-mono text-[11px] font-semibold text-danger`,children:e.exitCode}):null]})]}),(0,Q.jsx)(X,{children:(0,Q.jsxs)(`div`,{className:`border-t border-border bg-card-2`,children:[e.entries.map((e,t)=>(0,Q.jsx)(`pre`,{"data-slot":`hook-entry`,"data-kind":e.kind,className:a(`px-3 py-2 font-mono text-xs leading-[1.7] whitespace-pre-wrap [overflow-wrap:anywhere]`,(e.kind===`error`||e.kind===`stop`)&&`text-signal-word-red`),children:e.text},t)),e.source===void 0?null:(0,Q.jsx)(`p`,{"data-slot":`hook-source`,className:`px-3 pb-2 font-mono text-[11px] text-muted-foreground [overflow-wrap:anywhere]`,children:e.source}),l?(0,Q.jsxs)(J,{className:`border-t border-border`,children:[(0,Q.jsxs)(Y,{"data-slot":`hook-raw-toggle`,className:`group flex w-full items-center gap-1 px-3 py-1 text-left text-xs text-muted-foreground hover:text-foreground`,children:[(0,Q.jsx)(g,{"aria-hidden":!0,className:`size-3 shrink-0 transition-transform group-data-[state=open]:rotate-90`}),`Raw output${typeof e.exitCode==`number`?` · exit ${e.exitCode}`:``}`]}),(0,Q.jsxs)(X,{children:[e.stdout?(0,Q.jsx)(`pre`,{"data-slot":`hook-stdout`,className:`px-3 py-2 font-mono text-xs whitespace-pre-wrap [overflow-wrap:anywhere]`,children:e.stdout}):null,e.stderr?(0,Q.jsx)(`pre`,{"data-slot":`hook-stderr`,className:`px-3 py-2 font-mono text-xs whitespace-pre-wrap text-signal-word-red [overflow-wrap:anywhere]`,children:e.stderr}):null]})]}):null]})})]})}function Qr({group:e,scope:t}){return(0,Q.jsxs)(J,{"data-slot":`ctx-group`,className:`min-w-0`,children:[(0,Q.jsxs)(Y,{className:`group flex h-[34px] tabular-nums w-full items-center gap-2 rounded-md px-2 -mx-2 text-left text-[13px] font-medium text-muted-foreground hover:bg-muted hover:text-foreground`,children:[(0,Q.jsx)(g,{"aria-hidden":!0,className:`size-3.5 shrink-0 text-soft-foreground transition-transform group-data-[state=open]:rotate-90`}),e.label]}),(0,Q.jsx)(X,{children:(0,Q.jsx)(`div`,{className:`flex flex-col gap-1.5 pt-1.5 pl-4`,children:e.tools.map(e=>(0,Q.jsx)(Yr,{item:e,cacheKey:t===void 0?void 0:`${t}:${e.id}`},e.id))})})]})}function $r({count:e,children:t}){return(0,Q.jsxs)(J,{"data-slot":`tool-streak`,className:`min-w-0`,children:[(0,Q.jsxs)(Y,{className:`group flex items-center gap-1.5 rounded-md p-0.5 tabular-nums text-left text-xs text-soft-foreground hover:text-muted-foreground`,children:[(0,Q.jsx)(g,{"aria-hidden":!0,className:`size-3.5 shrink-0 transition-transform group-data-[state=open]:rotate-90`}),Tn(e)]}),(0,Q.jsx)(X,{children:(0,Q.jsx)(`div`,{className:`flex flex-col gap-2 pt-2`,children:t})})]})}function ei({image:e}){return(0,Q.jsx)(rn,{"data-slot":`thread-image`,src:e.url,alt:e.name??`image from the agent session`,className:`max-h-72 max-w-full self-start rounded-lg border border-border`})}function ti(e,t=null){let n=ke(),r=Ee(),i=lt(e),a=i&&!e.runner,o=ie(n.data),s=e.runner??(i?r.data?.defaultRunner:void 0)??`claude`,c=St(t,o,s),l=o.includes(s),u=(i?_(e.workflowDef,c):[c]).filter(e=>!o.includes(e)),d=n.isSuccess&&(!a||r.isSuccess)&&u.length===0,f=a&&r.isPending?`Checking task settings…`:a&&r.isError?`Task settings could not be loaded.`:n.isPending?`Checking agent providers…`:n.isError?`Provider authentication could not be verified.`:d?void 0:i?`Connect the required workflow providers (${u.join(`, `)}) to continue.`:`Connect an agent provider to continue.`;return{runners:o,currentRunner:s,runner:c,currentRunnerConnected:l,canContinue:d,providerPending:n.isPending||a&&r.isPending,providerError:n.isError,reason:f,runnerOverride:t!==null||!l?c:void 0}}function ni(e){let t=v(),n=jt(e).continueRun,r=Ee(),[i,a]=(0,Z.useState)(null),[o,s]=(0,Z.useState)(null),[c,l]=(0,Z.useState)(null),[u,f]=(0,Z.useState)(null),[p,m]=(0,Z.useState)(e.id);p!==e.id&&(m(e.id),a(null),s(null),l(null),f(null));let h=ti(e,i),{runners:g,canContinue:_,currentRunner:y,runner:b}=h,x=de(b,n),S=r.data?.modelsLocked===!0,C=b!==y,w=!S&&!C&&e.model?{...r.data?.defaultModels,[b]:e.model}:r.data?.defaultModels,T=S?null:o,E=en(b,x.data,[T,w?.[b]]),D=$t(T,b,w,x.data),O=Ot(b,D,x.data),k=S?``:c??e.effort??``,A=Mt(k,O),M=!S&&c===null&&k!==``&&A===``,{accounts:N,repoAccount:P}=Kt(),F=[...e.steps].reverse().find(e=>e.sessionId),I=F?.profileId??e.agentProfile??`default`,R=C?P:{...P,[y]:I},B=N.some(e=>e.provider===b&&e.id===u)?u:null,V=W({mutationFn:({text:t,images:n})=>_?L(e.id,{text:t.trim()?t:void 0,images:n.length?n:void 0,runner:h.runnerOverride,model:!S&&(o!==null||C)?D:void 0,effort:!S&&(c!==null||C)?A:M?``:void 0,agentProfile:B??void 0}):Promise.reject(Error(h.reason??`Connect an agent provider to continue.`)),onSuccess:()=>t.invalidateQueries({queryKey:G.runs.all}),onError:e=>{e instanceof j&&e.status===409&&t.invalidateQueries({queryKey:G.runs.all})}});return{available:n,canContinue:_,startsNewConversation:!!F&&(b!==(F.backend??y)||(B??e.agentProfile??F.profileId??`default`)!==(F.profileId??`default`)),reason:h.reason,providerPending:h.providerPending,pills:(0,Q.jsx)(`div`,{"data-slot":`follow-up-engine`,className:`session-engine-controls`,children:(0,Q.jsxs)(Bt,{children:[g.length>1||g.some(e=>Ht(N,e))?(0,Q.jsx)(Pt,{icon:(0,Q.jsx)(d,{"aria-hidden":`true`,className:`size-[18px] shrink-0 text-accent-text`}),fieldLabel:!0,runners:g,value:b,accounts:N,account:B,repoAccount:R,onPick:(e,t)=>{f(t),e!==b&&(a(e),s(null))}}):(0,Q.jsx)(Gt,{icon:(0,Q.jsx)(d,{"aria-hidden":`true`,className:`size-[18px] shrink-0 text-accent-text`}),fieldLabel:!0,readOnly:!0,slot:`session-runner-value`,ariaLabel:`Runner`,label:b,value:b,onPick:()=>{},options:[{value:b,label:b}]}),(0,Q.jsx)(Gt,{icon:(0,Q.jsx)(ee,{"aria-hidden":`true`,className:`size-[18px] shrink-0 text-accent-text`}),fieldLabel:!0,slot:`follow-up-model-pill`,ariaLabel:`Model`,label:E.find(e=>e.id===D)?.label??`auto`,value:D,readOnly:S,disabledHint:`Model selection is locked to native coding-agent settings.`,onPick:e=>{s(e);let t=Ot(b,e,x.data);A!==``&&Mt(A,t)===``&&l(``)},options:E.map(e=>({value:e.id,label:e.label,desc:e.desc})),status:Qt(b,x.data,x.isError,x.isFetching)}),(0,Q.jsx)(Gt,{icon:(0,Q.jsx)(z,{"aria-hidden":`true`,className:`size-[18px] shrink-0 text-accent-text`}),fieldLabel:!0,slot:`follow-up-effort-pill`,ariaLabel:`Effort`,label:O.find(e=>e.value===A)?.label??`auto`,value:A,readOnly:S,disabledHint:`Effort selection is locked to native coding-agent settings.`,onPick:e=>l(e),options:O.map(e=>({value:e.value,label:e.label,desc:e.desc}))})]})}),continueWith:(e,t)=>V.mutateAsync({text:e,images:t})}}var ri=120,ii=e=>e!==`pending`&&e!==`running`,ai=e=>e.kind===`tool`&&e.toolKind===`task`,oi=e=>ai(e)&&e.parentItemId===void 0,si=e=>yn(e.kind)&&!(e.kind===`tool`&&e.toolKind===`plan`);function ci(e,t){for(let n=0;n<e.length;n+=1)if(e[n].items.some(e=>oi(e)&&t.has(e.id)))return n;return 0}function li(e){let t=e.input;if(typeof t!=`object`||!t)return;let n=t;for(let e of[`subagent_type`,`subagentType`,`agent`]){let t=n[e];if(typeof t==`string`&&t.trim()!==``)return t.trim()}}function ui(e){if(e.kind===`tool`)return di(e.title);if(e.kind===`hook`)return di(`${e.event} hook${e.status===`completed`?``:` ${e.status}`}`);if(e.kind===`message`||e.kind===`reasoning`){let t=e.text.split(`
|
|
6
|
+
`);for(let e=t.length-1;e>=0;--e){let n=t[e].trim();if(n!==``)return di(n)}}}function di(e){return e.length>ri?`${e.slice(0,ri-1).trimEnd()}…`:e}function fi(e,t=!1){let n=gi(e,e=>e.items.some(oi));if(n===-1)return[];let r=e=>!t&&!ii(e.status),i=[];for(let t=n-1;t>=0;--t){let n=e[t].items.filter(oi);if(n.length!==0){if(!n.some(r))break;i.unshift(...n)}}let a=[...i,...e[n].items.filter(oi)];if(n!==e.length-1&&!a.some(r))return[];let o=new Set(a.map(e=>e.id)),s=i.length>0?ci(e,o):n,c=new Map;for(let t=s;t<e.length;t+=1)for(let n of e[t].items){if(!si(n))continue;let e=n.parentItemId;if(e===void 0||!o.has(e))continue;let t=c.get(e);t?t.push(n):c.set(e,[n])}return a.map(e=>pi(e,c.get(e.id)??[],t))}function pi(e,t,n){let r={id:e.id,title:Dn(e.title).detail??e.title,status:e.status,toolCalls:t.filter(e=>e.kind===`tool`).length},i=li(e);i!==void 0&&(r.agentType=i),n&&!ii(e.status)&&(r.stalled=!0);for(let e=t.length-1;e>=0;--e){let n=ui(t[e]);if(n!==void 0){r.activity=n;break}}return r}function mi(e){return{done:e.filter(e=>e.status===`completed`).length,total:e.length}}function hi(e){return e.activity??(e.stalled===!0?`never finished`:`starting…`)}function gi(e,t){for(let n=e.length-1;n>=0;--n)if(t(e[n]))return n;return-1}function _i(e,t,n=!1){for(let r=e.length-1;r>=0;--r){let i=e[r].items.find(e=>e.id===t&&oi(e));if(i!==void 0)return pi(i,vi(e,t),n)}}function vi(e,t){let n=e.findIndex(e=>e.items.some(e=>e.id===t&&oi(e)));if(n===-1)return[];let r=[];for(let i=n;i<e.length;i+=1)for(let n of e[i].items)si(n)&&n.parentItemId===t&&n.id!==t&&r.push(n);return r}function yi(e){let t=v();return W({mutationFn:t=>re(e,t),retry:!1,networkMode:`always`,onSettled:()=>{t.invalidateQueries({queryKey:G.runs.all})}})}var bi=e=>(window.addEventListener(`online`,e),window.addEventListener(`offline`,e),()=>{window.removeEventListener(`online`,e),window.removeEventListener(`offline`,e)}),xi=()=>navigator.onLine;function Si({permission:e,runId:t,sessionOpen:n=!1}){return e.status!==`pending`||!n?(0,Q.jsx)(wi,{permission:e,state:e.status===`resolved`?`resolved`:`expired`}):(0,Q.jsx)(Ci,{permission:e,runId:t},e.requestId)}function Ci({permission:e,runId:t}){let n=yi(t),r=(0,Z.useSyncExternalStore)(bi,xi,()=>!1),i=(0,Z.useRef)(!1),[a,o]=(0,Z.useState)(`pending`),[s,c]=(0,Z.useState)(),[l,u]=(0,Z.useState)(),d=async t=>{if(!(i.current||!r||a!==`pending`)){i.current=!0,o(`sending`),u(void 0);try{await n.mutateAsync({requestId:e.requestId,optionId:t}),c(t),o(`resolved`)}catch(e){e instanceof j&&e.status===409?o(`expired`):(u(e instanceof Error?e.message:String(e)),o(`pending`))}finally{i.current=!1}}};return(0,Q.jsx)(wi,{permission:{...e,...s===void 0?{}:{optionId:s}},state:a,offline:!r,error:l,onSelect:e=>{d(e)}})}function wi({permission:e,state:t,offline:n=!1,error:r,onSelect:i}){let a=(0,Z.useId)(),o=e.options.find(t=>t.id===e.optionId),c=t!==`pending`||n||!i,l=t===`expired`?`Approval expired. This session can no longer accept a decision.`:t===`resolved`?`Decision sent: ${o?.label??`Recorded`}.`:t===`sending`?`Sending decision…`:n?`Offline. Reconnect to send a decision.`:`Choose an option to respond to this permission request.`;return(0,Q.jsxs)(`section`,{"data-slot":`permission-card`,"data-request-id":e.requestId,"data-state":n&&t===`pending`?`offline`:t,"aria-labelledby":a,"aria-busy":t===`sending`,className:`flex min-w-0 flex-col gap-3 rounded-lg border border-border bg-card p-3.5 text-sm [overflow-wrap:anywhere]`,children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1`,children:[(0,Q.jsx)(`span`,{className:`text-xs font-medium text-muted-foreground`,children:`Permission request`}),(0,Q.jsx)(`h3`,{id:a,className:`font-semibold whitespace-pre-wrap`,children:e.title})]}),e.details?(0,Q.jsx)(`pre`,{className:`min-w-0 font-mono text-xs leading-relaxed whitespace-pre-wrap [overflow-wrap:anywhere]`,children:e.details}):null,(0,Q.jsx)(`div`,{role:`group`,"aria-labelledby":a,className:`flex min-w-0 flex-col gap-2`,children:e.options.map(t=>(0,Q.jsx)(s,{type:`button`,variant:`outline`,disabled:c,"aria-pressed":e.optionId===t.id,className:`h-auto min-h-11 min-w-0 max-w-full justify-start py-2 text-start whitespace-normal [overflow-wrap:anywhere] focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring`,onClick:()=>i?.(t.id),children:t.label},t.id))}),(0,Q.jsxs)(`p`,{role:`status`,className:`text-xs text-muted-foreground`,children:[l,e.reason?` ${e.reason}`:``]}),r&&t===`pending`?(0,Q.jsx)(`p`,{role:`alert`,className:`text-xs text-danger`,children:r}):null]})}function Ti(e,t){if(e.length===1)return[t.replace(RegExp(`^${Ei(e[0].header)}: ?`),``)];let n=t,r=[];for(let[t,i]of e.entries()){let a=`${i.header}: `;if(!n.startsWith(a))return;n=n.slice(a.length);let o=e[t+1],s=o?n.indexOf(`\n${o.header}: `):n.length;if(s<0)return;r.push(n.slice(0,s)),n=n.slice(s+1)}return r}function Ei(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function Di(e,t){if(t===void 0)return[];let n=e.options??[];if(!e.multiSelect)return n.filter(e=>e.label===t).map(e=>e.label);let r=[];function i(e,t){for(let{label:a}of n)t.includes(a)||(e===a?r.push([...t,a]):e.startsWith(`${a}, `)&&i(e.slice(a.length+2),[...t,a]))}return i(t,[]),r.length===1?r[0]:[]}function Oi({ask:e}){let t=e.answer===void 0?void 0:Ti(e.questions,e.answer);return(0,Q.jsxs)(`div`,{"data-slot":`ask-answers`,className:`flex flex-col gap-4 text-sm`,children:[e.questions.map((n,r)=>{let i=t?.[r],a=Di(n,i),o=i!==void 0&&a.length===0;return(0,Q.jsxs)(`section`,{className:`flex flex-col gap-2`,"aria-label":n.question,children:[(0,Q.jsxs)(`p`,{className:`text-xs font-medium text-muted-foreground`,children:[n.header,` · Question `,r+1,` of `,e.questions.length]}),(0,Q.jsx)(`p`,{className:`break-words font-semibold`,children:n.question}),n.options?(0,Q.jsxs)(`ul`,{className:`flex list-none flex-col gap-1.5`,children:[n.options.map(e=>(0,Q.jsxs)(`li`,{"data-selected":a.includes(e.label),className:`flex items-start gap-2 rounded-md border border-border px-3 py-2 data-[selected=true]:border-message-user-border data-[selected=true]:bg-message-user-accent/5`,children:[(0,Q.jsx)(`span`,{"aria-hidden":!0,className:`shrink-0 text-message-user-accent`,children:a.includes(e.label)?`✓`:`○`}),(0,Q.jsxs)(`span`,{className:`min-w-0 flex-1 break-words`,children:[(0,Q.jsx)(`span`,{className:`font-medium`,children:e.label}),e.description?(0,Q.jsx)(`span`,{className:`block text-xs text-muted-foreground`,children:e.description}):null]}),a.includes(e.label)?(0,Q.jsx)(`span`,{className:`shrink-0 text-xs text-message-user-accent`,children:`Selected`}):null]},e.label)),(0,Q.jsxs)(`li`,{"data-selected":o,className:`rounded-md border border-border px-3 py-2 data-[selected=true]:border-message-user-border`,children:[(0,Q.jsxs)(`p`,{className:`flex items-start gap-2 font-medium`,children:[(0,Q.jsx)(`span`,{"aria-hidden":!0,className:`text-message-user-accent`,children:o?`✓`:`○`}),(0,Q.jsx)(`span`,{className:`flex-1`,children:`Other`}),o?(0,Q.jsx)(`span`,{className:`text-xs text-message-user-accent`,children:`Selected`}):null]}),o?(0,Q.jsx)(ki,{text:i}):null]})]}):i===void 0?null:(0,Q.jsx)(ki,{text:i})]},n.id??r)}),!t&&e.answer!==void 0?(0,Q.jsx)(ki,{text:e.answer}):null]})}function ki({text:e}){return(0,Q.jsx)(`blockquote`,{className:`[margin-block-start:0.5rem] border-s-2 border-message-user-accent ps-3 break-words whitespace-pre-wrap`,children:e})}var Ai=e(n(),1);function ji(e){return e.querySelector(`[data-slot="ask-question"] :is(button, textarea):not(:disabled)`)||(e.tabIndex=-1,e)}function Mi(e){let t=e.querySelector(`[data-slot="ask-card"][data-pinned="true"]`);return t?ji(t):null}function Ni(e,t){let n=`${Ki}:${e}`;return e=>{if(!t())return!1;let r=[...e.querySelectorAll(`[data-row-key]`)].find(e=>e.dataset.rowKey===n);return r?Mi(r):null}}function Pi(e){return e<=0?`Jump to latest`:`Jump to latest (${e} ${e===1?`question`:`questions`} pending)`}function Fi({onGoToQuestion:e}){return(0,Q.jsxs)(`div`,{"data-slot":`ask-origin`,className:`flex flex-wrap items-center gap-x-2 rounded-lg border border-dashed border-accent-strong/40 px-3.5 py-1 text-xs text-muted-foreground`,children:[(0,Q.jsx)(`span`,{className:`font-medium text-link-foreground`,children:`Question asked here`}),(0,Q.jsx)(s,{type:`button`,variant:`ghost`,size:`sm`,"data-slot":`ask-go-to-question`,className:`min-h-11 min-w-11 px-2 text-foreground underline underline-offset-4`,onClick:e,children:`Go to the question`})]})}var Ii={viewKey:void 0,generation:0},Li=600,Ri=24;function zi(e,t={}){let{surface:n=`document`,onLoadOlder:r,onJumpToLatest:i,rowKeys:a=[]}=t,o=(0,Z.useRef)(e);o.current=e;let s=(0,Z.useRef)(null),[c,l]=(0,Z.useState)(null),[u,d]=(0,Z.useState)(!1),f=(0,Z.useRef)(!0),p=(0,Z.useRef)(0),m=(0,Z.useRef)(0),h=(0,Z.useRef)(new Set),g=(0,Z.useCallback)(e=>{for(let t of[...h.current])t(e)},[]),_=(0,Z.useCallback)(e=>(h.current.add(e),()=>{h.current.delete(e)}),[]),v=(0,Z.useRef)(null),y=(0,Z.useRef)(null),b=(0,Z.useRef)(null),x=(0,Z.useRef)(null),S=(0,Z.useCallback)(e=>{let t=s.current;if(!t)return;let n=x.current;n?n.scrollTo(e):t.scrollTop=e},[]),C=(0,Z.useCallback)(()=>{let e=s.current;e&&S(e.scrollHeight-e.clientHeight)},[S]),w=(0,Z.useCallback)(()=>{if(s.current){if(b.current!==e){b.current=e;let t=Hn(e);t&&!t.atBottom?(f.current=!1,v.current=t.top,y.current=Gn(e)?.rowKeys?{viewKey:e,top:t.top}:null):(f.current=!0,v.current=null,y.current=null)}v.current===null?f.current&&C():S(v.current)}},[e,S,C]),T=(0,Z.useCallback)(e=>y.current?.viewKey===e,[]),E=(0,Z.useCallback)(e=>{let t=y.current;return!t||!T(e)||e!==o.current?!1:(v.current=t.top,f.current=!1,y.current=null,!0)},[T]),D=(0,Z.useCallback)(e=>{l(e),e&&(s.current=e.closest(n===`panel`?`[data-slot="transcript-viewport"]`:`[data-slot="main"]`),w())},[n,w]),O=(0,Z.useCallback)(()=>{f.current&&C()},[C]),k=(0,Z.useRef)(!1),A=(0,Z.useRef)(0),j=(0,Z.useRef)(!1),M=(0,Z.useRef)(void 0),N=(0,Z.useRef)(!1),ee=(0,Z.useRef)(!1),P=(0,Z.useRef)(a);P.current=a;let F=(0,Z.useCallback)(e=>[...e.querySelectorAll(`[data-slot="thread-row"][data-row-key]`)].map(e=>{let t=e.getBoundingClientRect();return{key:e.dataset.rowKey,top:t.top,bottom:t.bottom}}),[]),I=(0,Z.useRef)(null),L=(0,Z.useRef)(0);(0,Z.useEffect)(()=>{if(!pe())return;let e=e=>{v.current=null,y.current=null,L.current+=1,I.current=null,f.current=!1,S(e)};return window.__cezThreadScrollTo=e,()=>{window.__cezThreadScrollTo===e&&delete window.__cezThreadScrollTo}},[S]);let R=(0,Z.useCallback)(()=>{let e=I.current,t=s.current;if(!e||!t)return;I.current=null;let n=e.beforeTop+Math.max(0,t.scrollHeight-e.beforeHeight),r=t.getBoundingClientRect().top,i=e.anchor===void 0?-1:P.current.indexOf(e.anchor.key),a=x.current;a&&i>=0?a.scrollToIndex(i,{align:`start`,offset:-e.anchor.offset}):S(Ln(t.scrollTop,r,e.anchor,F(t),n))},[F,S]),z=(0,Z.useCallback)(()=>{let e=s.current;if(!e||!r||k.current)return;v.current=null,y.current=null,f.current=!1,k.current=!0;let t=A.current+1;A.current=t;let n=e.scrollHeight,i=e.scrollTop,a=e.getBoundingClientRect().top,c=In(a,F(e)),l=c===void 0?-1:P.current.indexOf(c.key),u=o.current,d=L.current;r().then(()=>{o.current===u&&L.current===d&&(I.current={beforeHeight:n,beforeTop:i,anchor:c,anchorIndex:l})},()=>{}).finally(()=>{A.current===t&&(k.current=!1)})},[F,r]);(0,Z.useEffect)(()=>()=>clearTimeout(M.current),[]);let B=(0,Z.useRef)(null),V=(0,Z.useRef)(0),H=(0,Z.useCallback)(()=>n===`document`?++Ii.generation:++V.current,[n]),te=(0,Z.useCallback)((e,t)=>n===`document`?Ii.viewKey===e&&Ii.generation===t:o.current===e&&V.current===t,[n]);(0,Z.useEffect)(()=>()=>B.current?.disconnect(),[e,c]);let ne=(0,Z.useCallback)((t,n,r)=>{let i=s.current;if(!i||!c)return;v.current=null,y.current=null,L.current+=1,I.current=null,f.current=!1,p.current=0,d(!0),H(),B.current?.disconnect();let a=()=>[...c.querySelectorAll(`[data-row-key]`)].find(e=>e.dataset.rowKey===t),o=()=>{let e=a();if(!e||getComputedStyle(e).visibility===`hidden`)return!1;let t=r?.(e)??e;return t===e&&(e.tabIndex=-1),t.focus({preventScroll:!0}),document.activeElement===t?(B.current?.disconnect(),!0):!1},l=i.querySelector(`[data-slot="run-header"]`),u=l&&getComputedStyle(l).position===`sticky`?l.getBoundingClientRect().height:0,m=x.current;if(m)m.scrollToIndex(n,{align:`start`,...u>0?{offset:-u}:{}});else{let e=a();e&&S(i.scrollTop+e.getBoundingClientRect().top-i.getBoundingClientRect().top-u)}o()||(B.current=new MutationObserver(()=>{o()}),B.current.observe(c,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[`style`,`class`]})),Vn(e,{top:i.scrollTop,atBottom:!1})},[c,S,e,H]),re=(0,Z.useCallback)(t=>{let n=H(),r=o.current;B.current?.disconnect();let a=s.current;if(!a)return;v.current=null,y.current=null,L.current+=1,I.current=null,f.current=!0,m.current=0,g({direction:`tail`}),Vn(e,{top:a.scrollHeight-a.clientHeight,atBottom:!0});let c=()=>{f.current&&C()},l=()=>te(r,n),u=()=>{let e=t?.(a);return e===!1?!0:e?(e.focus({preventScroll:!0}),document.activeElement===e):!1};(i?.()??Promise.resolve()).finally(()=>{requestAnimationFrame(()=>{c(),requestAnimationFrame(()=>{if(c(),!t||!l()||u())return;B.current?.disconnect();let e=new MutationObserver(()=>{l()?u()&&e.disconnect():e.disconnect()});B.current=e,e.observe(a,{childList:!0,subtree:!0})})})})},[i,e,C,H,te,g]),ie=a.at(-1),ae=a.length;return(0,Z.useLayoutEffect)(()=>{L.current+=1,I.current=null,k.current=!1,n===`document`?Ii.viewKey!==e&&(Ii.viewKey=e,Ii.generation+=1):V.current+=1},[e,n]),(0,Z.useLayoutEffect)(()=>{let e=I.current;e?(e.anchor===void 0?-1:P.current.indexOf(e.anchor.key))>e.anchorIndex?R():I.current=null:f.current&&C()},[ie,ae,R,C]),(0,Z.useLayoutEffect)(()=>{!s.current||!c||w()},[c,w]),(0,Z.useEffect)(()=>{let t=s.current,n=c;if(!t||!n)return;p.current=0;let r=null,i=!1,a=t.scrollTop,o,l=0,u=()=>{m.current=Date.now()},h=()=>{H(),B.current?.disconnect(),v.current=null,y.current=null,L.current+=1,I.current=null,f.current=!1,p.current=0},_=()=>{v.current=null,y.current=null,L.current+=1,I.current=null,p.current=Date.now()},b=e=>{if(u(),e.deltaY<0){h();let e=!j.current;j.current=!0,clearTimeout(M.current),M.current=setTimeout(()=>{j.current=!1},180),e&&Fn(t)&&z()}else _()},x=e=>{[`ArrowUp`,`PageUp`,`Home`,`ArrowDown`,`PageDown`,`End`].includes(e.key)&&u(),[`ArrowUp`,`PageUp`,`Home`].includes(e.key)?(h(),!e.repeat&&Fn(t)&&z()):[`ArrowDown`,`PageDown`,`End`].includes(e.key)&&_()},w=e=>{if(e.target!==t||e.button!==0||e.pointerType===`touch`||e.pointerType===`pen`||t.scrollHeight<=t.clientHeight)return;i=!0,ee.current=!1,a=t.scrollTop;let n=t.getBoundingClientRect(),r=getComputedStyle(t),o=parseFloat(r.borderLeftWidth)||0,s=parseFloat(r.borderRightWidth)||0,c=n.left+t.clientLeft,l=c+t.clientWidth;!(e.clientX>=n.left+o&&e.clientX<c||e.clientX>=l&&e.clientX<n.right-s)||e.clientY<n.top+t.clientTop||e.clientY>=n.top+t.clientTop+t.clientHeight||(v.current=null,y.current=null,Rn(t,80)||(h(),_()))},E=()=>{i=!1},D=e=>{N.current=!1,r=e.touches[0]?.clientY??null},O=e=>{let n=e.touches[0]?.clientY;n!==void 0&&(u(),r!==null&&n>r+1?(h(),!N.current&&Fn(t)&&(N.current=!0,z())):r!==null&&n<r-1&&_(),r=n)},k=e=>{if(e===0||!i&&Date.now()-m.current>=Li)return;let n=e<0?`up`:`down`;n!==o&&(o=n,l=0),l+=Math.abs(e),l>=Ri&&(0,Ai.flushSync)(()=>g({direction:n,distanceFromBottom:t.scrollHeight-t.clientHeight-t.scrollTop}))},A=()=>{let n=f.current;k(t.scrollTop-a),i&&t.scrollTop!==a&&(t.scrollTop<a?h():_()),i&&!ee.current&&t.scrollTop<a&&Fn(t)&&(ee.current=!0,z()),a=t.scrollTop;let r=Rn(t,80);r&&v.current===null&&(f.current||Date.now()-p.current<2e3)&&(f.current=!0),!n&&f.current&&g({direction:`tail`}),d(!r),v.current===null&&!T(e)&&Vn(e,{top:t.scrollTop,atBottom:r})};t.addEventListener(`scroll`,A,{passive:!0}),t.addEventListener(`wheel`,b,{passive:!0}),t.addEventListener(`touchstart`,D,{passive:!0}),t.addEventListener(`touchmove`,O,{passive:!0}),t.addEventListener(`pointerdown`,w,{passive:!0}),window.addEventListener(`pointerup`,E,{passive:!0}),window.addEventListener(`pointercancel`,E,{passive:!0}),t.addEventListener(`keydown`,x);let P;if(typeof ResizeObserver<`u`){P=new ResizeObserver(()=>{let e=v.current;if(e!==null){let n=t.scrollHeight-t.clientHeight;S(Math.min(e,n)),n>=e&&(v.current=null)}else f.current&&C()}),P.observe(n);let e=n.closest(`[data-route="task-thread"]`),r=e?.querySelector(`[data-slot="run-header"]`),i=e?.querySelector(`[data-slot="thread-dock"]`);r&&P.observe(r),i&&P.observe(i)}return()=>{t.removeEventListener(`scroll`,A),t.removeEventListener(`wheel`,b),t.removeEventListener(`touchstart`,D),t.removeEventListener(`touchmove`,O),t.removeEventListener(`pointerdown`,w),window.removeEventListener(`pointerup`,E),window.removeEventListener(`pointercancel`,E),t.removeEventListener(`keydown`,x),P?.disconnect()}},[e,c,z,S,C,T,H,g]),{attachContent:D,scrollElRef:s,virtualizerRef:x,restoreMeasurements:E,ownsMeasurementRestore:T,pillVisible:u,jumpToLatest:re,jumpToRow:ne,loadOlder:z,restickIfStuck:O,subscribeReaderScroll:_}}function Bi({runId:e,rows:t,mode:n,controls:r}){return n===`virtual`?(0,Q.jsx)(Vi,{runId:e,rows:t,controls:r}):(0,Q.jsx)(`div`,{ref:r.attachContent,"data-slot":`thread-rows`,"data-virtualized":`false`,className:`[overflow-anchor:none]`,children:t.map(e=>(0,Q.jsx)(`div`,{"data-slot":`thread-row`,"data-row-key":e.key,className:`flex w-full flex-col pb-2.5 [contain-intrinsic-block-size:auto_3rem] [content-visibility:auto]`,children:e.node},e.key))})}function Vi({runId:e,rows:t,controls:n}){return(0,Q.jsx)(Hi,{runId:e,rows:t,controls:n},e)}function Hi({runId:e,rows:t,controls:n}){let r=(0,Z.useRef)(null),i=(0,Z.useRef)(t),a=t[0]?.key,o=i.current[0]?.key,s=a!==o&&(t.some(e=>e.key===o)||i.current.some(e=>e.key===a));(0,Z.useLayoutEffect)(()=>{i.current=t},[t]);let[c]=(0,Z.useState)(()=>Gn(e)),[l,u]=(0,Z.useState)(()=>({cache:Kn(e,t.length,t.map(e=>e.key)),generation:0})),d=(0,Z.useRef)(l.cache===void 0&&c?.rowKeys?.length===c?.rows&&c!==void 0);(0,Z.useLayoutEffect)(()=>{let r=c?.rowKeys;if(!d.current){n.restoreMeasurements(e);return}if(!(!c||!r)){if(t.length>c.rows||t.some((e,t)=>e.key!==r[t])){d.current=!1,n.restoreMeasurements(e);return}t.length===c.rows&&(d.current=!1,n.restoreMeasurements(e)&&u({cache:c.cache,generation:1}))}},[c,t,n.restoreMeasurements,e]);let f=(0,Z.useRef)(t.length);f.current=t.length;let p=(0,Z.useRef)(t.map(e=>e.key));p.current=t.map(e=>e.key);let m=(0,Z.useRef)(null),h=(0,Z.useCallback)(t=>{n.virtualizerRef.current=t,t?m.current=t:m.current&&=(d.current&&c?.rowKeys&&f.current<c.rows&&n.ownsMeasurementRestore(e)||Wn(e,{rows:f.current,cache:m.current.cache,rowKeys:p.current}),null)},[e,n.virtualizerRef,n.ownsMeasurementRestore,c]),[g,_]=(0,Z.useState)(0);return(0,Z.useLayoutEffect)(()=>{let e=()=>{let e=r.current,t=n.scrollElRef.current;!e||!t||_(Math.max(0,Math.round(e.getBoundingClientRect().top-t.getBoundingClientRect().top+t.scrollTop)))};return e(),window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[n.scrollElRef]),(0,Q.jsx)(`div`,{ref:e=>{r.current=e,n.attachContent(e)},"data-slot":`thread-rows`,"data-virtualized":`true`,className:`[overflow-anchor:none]`,children:(0,Q.jsx)(nn,{ref:h,scrollRef:n.scrollElRef,startMargin:g,shift:s,...l.cache===void 0?{}:{cache:l.cache},children:t.map(e=>(0,Q.jsx)(`div`,{"data-slot":`thread-row`,"data-row-key":e.key,className:`flex w-full flex-col pb-2.5`,children:e.node},e.key))},l.generation)})}function Ui({onJump:e,pendingQuestions:t=0}){return(0,Q.jsxs)(`button`,{type:`button`,"data-slot":`jump-to-latest`,"data-pending-questions":t>0?t:void 0,onClick:()=>e(),className:`pointer-events-auto inline-flex min-h-11 min-w-11 items-center gap-1.5 rounded-full border border-border bg-background px-3.5 text-xs font-medium text-muted-foreground shadow-modal hover:text-foreground`,children:[(0,Q.jsx)(m,{"aria-hidden":!0,className:`size-3.5`}),Pi(t)]})}function Wi(e){return e.consumedAt?`consumed`:e.deliveredAt?`delivered`:`queued`}function Gi(e,t){let n=new Map((e.agentInputs??[]).map(e=>[e.id,Wi(e)]));if(n.size===0)return t;let r=!1,i=t.map(e=>{if(e.kind!==`note`||!e.id.startsWith(`agent-input:`))return e;let t=n.get(e.id.slice(12));return!t||e.delivery===t?e:(r=!0,{...e,delivery:t})});return r?i:t}var Ki=`pending-ask`;function qi(e,t,n){return e.kind===`ask`?e.id===t?n===void 0?e:{...e,placement:`origin`}:e.resolved?e:{...e,resolved:!0}:e}function Ji(e,t,n=t,r){let i=r==null?void 0:n.turns.flatMap(e=>e.items).find(e=>e.kind===`ask`&&e.id===r&&!e.resolved),a=new Map(n.turns.flatMap(e=>e.items).filter(e=>e.kind===`permission`).map(e=>[e.requestId,e])),o=new Set,s=new Set(t.turns.map(e=>e.userMessage?.ask?.id)),c=[];e.task&&c.push({id:`task`,userMessageKey:`task`,userMessage:{text:e.task,images:e.taskImages??[],ts:e.createdAt},entries:[]});for(let t of e.queuedMessages??[])c.push({id:`queued:${t.id}`,userMessageKey:`queued:${t.id}`,userMessage:{text:t.text,images:t.images??[],ts:t.createdAt},inDaySequence:!1,entries:[]});for(let n of t.turns)c.push({id:n.id,userMessageKey:`${n.id}:user`,...n.userMessage===void 0?{}:{userMessage:{text:n.userMessage.text,ask:n.userMessage.ask,imageCount:n.userMessage.imageCount,images:n.userMessage.images,...n.userMessage.ts===void 0?{}:{ts:n.userMessage.ts}}},...n.startedAt===void 0?{}:{startedAt:n.startedAt},...n.completed?.ts===void 0?{}:{completedAt:n.completed.ts},entries:Gi(e,n.items.map(e=>e.kind===`ask`&&s.has(e.id)?{...e,placement:`origin`}:r!==void 0&&e.kind===`ask`?qi(e,r,i):e.kind===`permission`?(o.add(e.requestId),a.get(e.requestId)??(e.status===`pending`?{...e,status:`expired`}:e)):e))});let l=[...a.values()].filter(e=>e.status===`pending`&&!o.has(e.requestId));return l.length>0&&c.push({id:`pending-permissions`,entries:l,inDaySequence:!1}),i!==void 0&&c.push({id:Ki,entries:[{...i,placement:`pinned`}],inDaySequence:!1}),c}function Yi(e,t,n){let r=e.findIndex(({content:e})=>e.kind===`block`&&e.block.kind===`entry`&&e.block.entry.kind===`ask`&&e.block.entry.id===t&&e.block.entry.placement===n);return r<0?void 0:{key:e[r].key,index:r}}function Xi(e,t){return[{id:`agent:${e}`,entries:t}]}function Zi(e){if(e.inDaySequence!==!1)return e.userMessage?.ts??e.startedAt??e.completedAt}function Qi(e,t){let n=[],r;for(let t of e){let e=Zi(t),i=tr(e);i!==void 0&&e!==void 0&&(r===void 0||i>r)&&(r!==void 0&&n.push({key:`${t.id}:day-separator`,scope:t.id,content:{kind:`day-separator`,ts:e}}),r=i),t.userMessage!==void 0&&n.push({key:t.userMessageKey??`${t.id}:user`,scope:t.id,content:{kind:`user-message`,message:t.userMessage}});for(let e of On([...t.entries]))n.push({key:`${t.id}:${e.id}`,scope:t.id,content:{kind:`block`,block:e}});t.completedAt!==void 0&&n.push({key:`${t.id}:turn-time`,scope:t.id,content:{kind:`turn-time`,completedAt:t.completedAt,...t.startedAt===void 0?{}:{startedAt:t.startedAt}}})}return n}function $i({runId:e,viewId:t,sections:n,mode:r,empty:i,renderAsk:a,renderPermission:o,messageActions:s,scrollControls:c,renderMode:l,taskTitles:u,recipientBackends:d}){let f=(0,Z.useMemo)(()=>Qi(n,e),[n,e]),p=zi(`${e}:${t}`,{surface:r}),m=c??p,h=(0,Z.useMemo)(()=>{let e=new Map;f.forEach((t,n)=>{if(!(t.content.kind!==`block`||t.content.block.kind!==`worker-conversation`))for(let r of t.content.block.batches)for(let i of r.messages)e.set(i.messageId,{message:i,rowKey:t.key,rowIndex:n})});let t=new Map;for(let n of e.values()){let{message:e}=n;if(e.messageKind!==`reply`||!e.requestId)continue;let r=t.get(e.requestId)??[];r.push(n),t.set(e.requestId,r)}return{targets:e,replies:t,navigate:e=>m.jumpToRow(e.rowKey,e.rowIndex)}},[f,m.jumpToRow]),g=(0,Z.useMemo)(()=>f.map(t=>({key:t.key,node:ea(t,s?.[t.key],a,o,e,u,d)})),[s,a,o,f,e,u,d]),_=l??zn(``,g.length),v=g.length===0?i??null:(0,Q.jsx)(Bi,{runId:`${e}:${t}`,rows:g,mode:_,controls:m});return(0,Q.jsx)(Ve,{runId:e,children:(0,Q.jsx)(Nn,{runId:e,children:(0,Q.jsx)(Pn.Provider,{value:h,children:r===`panel`?(0,Q.jsxs)(`div`,{"data-slot":`transcript-viewport`,"aria-label":`Agent transcript`,role:`region`,tabIndex:0,className:`relative flex min-h-0 flex-1 flex-col overflow-y-auto [scrollbar-gutter:stable]`,children:[(0,Q.jsx)(`div`,{"data-slot":`subagent-stream`,className:`flex flex-col px-5 py-4`,children:v}),m.pillVisible?(0,Q.jsx)(`div`,{className:`pointer-events-none sticky inset-x-0 bottom-4 flex justify-center`,children:(0,Q.jsx)(Ui,{onJump:m.jumpToLatest})}):null]}):v})})})}function ea(e,t,n,r,i,a,o){switch(e.content.kind){case`user-message`:return(0,Q.jsx)(ta,{message:e.content.message,actions:t});case`day-separator`:return(0,Q.jsx)(or,{ts:e.content.ts});case`turn-time`:return(0,Q.jsx)(ar,{completedAt:e.content.completedAt,...e.content.startedAt===void 0?{}:{startedAt:e.content.startedAt}});case`block`:return(0,Q.jsx)(na,{block:e.content.block,scope:e.scope,renderAsk:n,renderPermission:r,runId:i,taskTitles:a,recipientBackends:o});default:return oa(e.content)}}function ta({message:e,actions:t}){return(0,Q.jsx)(_r,{text:e.text,imageCount:e.imageCount,images:e.images,...e.ts===void 0?{}:{ts:e.ts},onEdit:t?.onEdit,onRemove:t?.onRemove,editLabel:t?.editLabel,removeLabel:t?.removeLabel,children:e.ask?(0,Q.jsx)(`div`,{"data-slot":`ask-card`,"data-resolved":`true`,children:(0,Q.jsx)(Oi,{ask:e.ask})}):void 0})}function na({block:e,scope:t,renderAsk:n,renderPermission:r,runId:i,taskTitles:a,recipientBackends:o}){switch(e.kind){case`entry`:return(0,Q.jsx)(ia,{entry:e.entry,scope:t,renderAsk:n,renderPermission:r,runId:i,taskTitles:a,recipientBackends:o});case`tool-card`:return(0,Q.jsx)(Yr,{item:e.item,nested:e.children,cacheKey:`${t}:${e.id}`,renderNested:(e,t)=>(0,Q.jsx)(ra,{entries:e,scope:t,renderAsk:n,renderPermission:r,runId:i,taskTitles:a,recipientBackends:o})});case`context-group`:return(0,Q.jsx)(Qr,{group:e,scope:t});case`streak`:return(0,Q.jsx)($r,{count:e.count,children:e.blocks.map(e=>(0,Q.jsx)(na,{block:e,scope:t,renderAsk:n,renderPermission:r,runId:i,taskTitles:a,recipientBackends:o},e.id))});case`worker-conversation`:return(0,Q.jsx)(Ar,{block:e,runId:i,taskTitles:a,recipientBackends:o});default:return oa(e)}}function ra({entries:e,scope:t,renderAsk:n,renderPermission:r,runId:i,taskTitles:a,recipientBackends:o}){return On([...e]).map(e=>(0,Q.jsx)(na,{block:e,scope:t,renderAsk:n,renderPermission:r,runId:i,taskTitles:a,recipientBackends:o},e.id))}function ia({entry:e,scope:t,renderAsk:n,renderPermission:r,runId:i,taskTitles:a,recipientBackends:o}){switch(e.kind){case`message`:return e.role===`assistant`?(0,Q.jsx)(Dr,{text:e.text,ts:e.ts}):(0,Q.jsx)(_r,{text:e.text,ts:e.ts});case`reasoning`:return(0,Q.jsx)(Br,{text:e.text});case`tool`:return(0,Q.jsx)(Yr,{item:e,cacheKey:`${t}:${e.id}`});case`note`:return e.attribution?(0,Q.jsxs)(`div`,{className:`min-w-0 rounded-md border border-border px-4 py-3 text-sm`,children:[(0,Q.jsxs)(`p`,{className:`mb-2 break-all text-xs text-muted-foreground`,children:[e.attribution.source===`agent`?`Agent input from parent ${e.attribution.parentRunId}`:`Worker lifecycle context for parent ${e.attribution.parentRunId}`,e.delivery?` · ${mr(e.delivery)}`:``]}),(0,Q.jsx)(Lr,{note:e})]}):(0,Q.jsx)(Lr,{note:e});case`conversation`:return(0,Q.jsx)(Ar,{runId:i,taskTitles:a,recipientBackends:o,block:{kind:`worker-conversation`,id:e.id,batches:[{id:e.id,kind:e.messageKind,text:e.text,senderRunId:e.senderRunId,messages:[e]}]}});case`image`:return(0,Q.jsx)(ei,{image:e});case`ask`:return n===void 0?(0,Q.jsx)(`div`,{"data-slot":`ask-card`,className:`rounded-lg border border-border bg-card px-4 py-3 text-sm`,children:`The agent asked a question. Open the main session to answer it.`}):n(e);case`permission`:return r?r(e):(0,Q.jsx)(Si,{permission:e,runId:i});case`provider-auth-required`:return(0,Q.jsx)(zr,{incident:e});case`preview-server`:return(0,Q.jsx)(aa,{entry:e});case`hook`:return(0,Q.jsx)(Zr,{item:e,cacheKey:`${t}:${e.id}`});default:return oa(e)}}function aa({entry:e}){let t=Tt(),n=fe().data?.capabilities?.preview===!0;return(0,Q.jsx)(nt,{entry:t?.worktreeRemoved?{kind:`preview-server`,id:e.id,server:e.server,state:`unavailable`}:e,inPreview:t!==null&&t.open&&t.port===e.server.port,onOpen:t!==null&&n?t.openPane:void 0})}function oa(e){throw Error(`Unhandled transcript variant: ${JSON.stringify(e)}`)}function sa({runId:e,renderAsk:t,renderPermission:n,agent:r,entries:i,onClose:a,taskTitles:o,recipientBackends:s}){return(0,Q.jsx)(_t,{open:r!==void 0,onOpenChange:e=>{e||a()},children:(0,Q.jsx)(yt,{"data-slot":`subagent-sheet`,side:`right`,className:`flex min-h-0 w-full gap-0 p-0 sm:max-w-xl`,children:r===void 0?null:(0,Q.jsx)(ca,{runId:e,renderAsk:t,renderPermission:n,agent:r,entries:i,taskTitles:o,recipientBackends:s})})})}function ca({runId:e,renderAsk:t,renderPermission:n,agent:r,entries:i,taskTitles:a,recipientBackends:o}){return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(mt,{className:`gap-1.5 border-b border-border px-5 py-4`,children:[(0,Q.jsxs)(gt,{className:`flex min-w-0 items-center gap-2 pr-8 text-[16px]`,children:[(0,Q.jsx)(`span`,{className:`min-w-0 truncate`,children:r.title}),r.agentType===void 0?null:(0,Q.jsx)(`span`,{"data-slot":`agent-type`,className:`shrink-0 rounded-full bg-muted px-2 py-0.5 text-[11px] font-semibold tracking-[0.05em] text-muted-foreground uppercase`,children:r.agentType})]}),(0,Q.jsxs)(dt,{"data-slot":`subagent-meta`,className:`flex items-center gap-2 text-xs`,children:[(0,Q.jsx)(la,{status:r.status}),(0,Q.jsxs)(`span`,{className:`tabular-nums`,children:[r.toolCalls,` `,r.toolCalls===1?`tool call`:`tool calls`]})]})]}),(0,Q.jsx)($i,{runId:e,viewId:`agent:${r.id}`,sections:Xi(r.id,i),mode:`panel`,renderAsk:t,renderPermission:n,taskTitles:a,recipientBackends:o,empty:(0,Q.jsx)(`div`,{"data-slot":`subagent-empty`,className:`py-2 text-[13px] text-muted-foreground`,children:`No attributed output — see the thread card for this agent's result.`})})]})}function la({status:e}){let t=e===`completed`?`Completed`:e===`failed`?`Failed`:e===`declined`?`Declined`:e===`pending`?`Pending`:`Running`;return(0,Q.jsx)(`span`,{"data-slot":`subagent-status`,"data-status":e,className:a(`rounded-full px-2 py-0.5 text-[11px] font-semibold tracking-[0.05em] uppercase`,e===`completed`&&`bg-success/15 text-success`,(e===`failed`||e===`declined`)&&`bg-danger/15 text-danger`,(e===`running`||e===`pending`)&&`bg-muted text-muted-foreground`),children:t})}var ua=/^diff --git /;function da(e){let t=e.replace(ua,``),n=t.lastIndexOf(` b/`);return fa(n>=0?t.slice(n+3):t)}function fa(e){let t=e.trim();return t.startsWith(`"`)&&t.endsWith(`"`)&&t.length>=2?t.slice(1,-1).replace(/\\(.)/g,`$1`):t}function pa(e){let t=fa(e.slice(4));if(t!==`/dev/null`)return t.replace(/^[ab]\//,``)}function ma(e){let t=[],n=null,r=!1;for(let i of e.split(`
|
|
7
|
+
`)){if(ua.test(i)){n={path:da(i),status:`modified`,binary:!1,additions:0,deletions:0,lines:[]},t.push(n),r=!1;continue}if(n){if(!r){if(i.startsWith(`@@`))r=!0,n.lines.push(i);else if(i.startsWith(`rename from `))n.status=`renamed`,n.oldPath=fa(i.slice(12));else if(i.startsWith(`rename to `))n.status=`renamed`,n.path=fa(i.slice(10));else if(i.startsWith(`new file mode`))n.status=`added`;else if(i.startsWith(`deleted file mode`))n.status=`deleted`;else if(i.startsWith(`Binary files `)||i===`GIT binary patch`)n.binary=!0;else if(i.startsWith(`+++ `)){let e=pa(i);e!==void 0&&(n.path=e)}else if(i.startsWith(`--- `)){let e=pa(i);e!==void 0&&n.status===`deleted`&&(n.path=e)}continue}n.lines.push(i),i.startsWith(`+`)?n.additions+=1:i.startsWith(`-`)&&(n.deletions+=1)}}let i=t.at(-1);return i&&i.lines.at(-1)===``&&i.lines.pop(),t}function ha(e){return{files:e.length,additions:e.reduce((e,t)=>e+t.additions,0),deletions:e.reduce((e,t)=>e+t.deletions,0)}}var ga=20,_a=300;function va({runId:e}){let t=v(),n=_e(e);(0,Z.useEffect)(()=>{t.invalidateQueries({queryKey:G.runs.diff(e)})},[t,e]);let r=(0,Z.useMemo)(()=>ma(n.data??``),[n.data]),[i,a]=(0,Z.useState)(!1);if(n.isPending)return(0,Q.jsx)(`p`,{className:`px-1 text-xs text-soft-foreground`,children:`Loading diff…`});if(n.isError)return(0,Q.jsx)(`p`,{className:`px-1 text-xs text-danger`,children:n.error.message});if(r.length===0)return(0,Q.jsx)(`p`,{"data-slot":`run-diff-empty`,className:`px-1 font-mono text-xs text-soft-foreground`,children:n.data.trim()||`(no changes)`});let o=ha(r),c=i?r:r.slice(0,ga);return(0,Q.jsxs)(`div`,{"data-slot":`run-diff`,className:`flex min-w-0 flex-col gap-2`,children:[(0,Q.jsxs)(`p`,{className:`flex items-center gap-2 px-1 text-xs text-muted-foreground`,children:[(0,Q.jsxs)(`span`,{children:[o.files,` `,o.files===1?`file`:`files`,` changed`]}),(0,Q.jsxs)(`span`,{className:`font-mono font-semibold tabular-nums`,children:[(0,Q.jsxs)(`span`,{className:`text-success`,children:[`+`,o.additions]}),` `,(0,Q.jsxs)(`span`,{className:`text-danger`,children:[`−`,o.deletions]})]})]}),c.map(e=>(0,Q.jsx)(ba,{file:e},`${e.oldPath??``}→${e.path}`)),r.length>c.length?(0,Q.jsxs)(s,{variant:`ghost`,size:`sm`,className:`self-start`,onClick:()=>a(!0),children:[`Show `,r.length-c.length,` more files`]}):null]})}var ya={added:`added`,deleted:`deleted`,renamed:`renamed`};function ba({file:e}){let[t,n]=(0,Z.useState)(!0),r=ya[e.status];return(0,Q.jsxs)(J,{open:t,onOpenChange:n,"data-slot":`diff-file`,className:`min-w-0 overflow-hidden rounded-md border border-border bg-card`,children:[(0,Q.jsxs)(Y,{className:`flex w-full items-center gap-2 px-3 py-2 text-left hover:bg-muted/50`,children:[(0,Q.jsx)(kt,{className:a(`size-3.5 shrink-0 text-soft-foreground transition-transform`,t&&`rotate-90`),"aria-hidden":`true`}),(0,Q.jsx)(`span`,{"data-slot":`diff-file-path`,className:`min-w-0 truncate font-mono text-xs font-medium`,children:e.oldPath?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{className:`text-soft-foreground`,children:[e.oldPath,` → `]}),e.path]}):e.path}),r?(0,Q.jsx)(`span`,{className:`shrink-0 rounded-sm bg-muted px-1.5 py-px text-[12px] font-medium text-muted-foreground`,children:r}):null,e.binary?(0,Q.jsx)(`span`,{className:`shrink-0 rounded-sm bg-muted px-1.5 py-px text-[12px] font-medium text-muted-foreground`,children:`binary`}):null,(0,Q.jsxs)(`span`,{className:`ml-auto shrink-0 font-mono text-[11px] font-semibold tabular-nums`,children:[(0,Q.jsxs)(`span`,{className:`text-success`,children:[`+`,e.additions]}),` `,(0,Q.jsxs)(`span`,{className:`text-danger`,children:[`−`,e.deletions]})]})]}),(0,Q.jsx)(X,{children:(0,Q.jsx)(`div`,{className:`border-t border-border/50`,children:e.binary?(0,Q.jsx)(`p`,{className:`px-4 py-2.5 text-xs text-soft-foreground`,children:`Binary file — no text diff.`}):e.lines.length===0?(0,Q.jsx)(`p`,{className:`px-4 py-2.5 text-xs text-soft-foreground`,children:`No content changes (metadata only).`}):(0,Q.jsx)(xa,{lines:e.lines})})})]})}function xa({lines:e}){let[t,n]=(0,Z.useState)(!1),r=t?e:e.slice(0,_a),i=r.join(`
|
|
8
|
+
`),[o,s]=(0,Z.useState)(null);(0,Z.useEffect)(()=>{let e=!1;return zt(i,`diff`).then(t=>{e||s({text:i,tokens:t.tokens})}),()=>{e=!0}},[i]);let c=o?.text===i?o.tokens:Xt(i,`diff`)?.tokens??null;return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`pre`,{"data-slot":`diff-file-body`,className:`overflow-x-auto py-2 font-mono text-xs leading-[1.7] whitespace-pre`,children:r.map((e,t)=>(0,Q.jsxs)(`span`,{className:a(`block px-4`,e.startsWith(`+`)&&`bg-diff-add`,e.startsWith(`-`)&&`bg-diff-del`,e.startsWith(`@@`)&&`text-soft-foreground`),children:[c?.[t]===void 0?e:c[t].map((e,t)=>(0,Q.jsx)(`span`,{style:e.color===void 0?void 0:{color:e.color},children:e.content},t)),e===``?` `:``]},t))}),e.length>_a?(0,Q.jsx)(`button`,{type:`button`,"data-slot":`diff-file-toggle`,onClick:()=>n(e=>!e),className:`block w-full border-t border-border/50 px-4 py-1.5 text-left text-[11px] font-medium text-soft-foreground hover:text-foreground`,children:t?`Show less`:`Show all ${e.length} lines`}):null]})}function Sa(e){let t=v();return W({mutationFn:()=>O(e),onSuccess:()=>t.invalidateQueries({queryKey:G.runs.all}),onError:e=>E(e.message,{tone:`danger`})})}function Ca({run:e}){return(0,Q.jsxs)(`section`,{"data-slot":`review-panel`,"aria-label":`Review the changes`,className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{"data-slot":`review-banner`,className:`flex items-center gap-2.5 rounded-md border border-accent-strong/30 bg-accent-strong/10 px-3.5 py-2.5`,children:[(0,Q.jsx)(Ze,{className:`size-4 shrink-0 text-accent-icon`,"aria-hidden":`true`}),(0,Q.jsxs)(`p`,{className:`min-w-0 text-[13px]`,children:[(0,Q.jsx)(`span`,{className:`font-semibold`,children:`Review the changes before anything lands.`}),` `,(0,Q.jsx)(`span`,{className:`text-muted-foreground`,children:`Read the diff, send notes back, draft a PR — or accept. Nothing merges on its own.`})]})]}),(0,Q.jsx)(va,{runId:e.id}),(0,Q.jsx)(wa,{run:e})]})}function wa({run:e}){let t=v(),n=(0,Z.useRef)(null),[r,a]=(0,Z.useState)(``),[o,c]=(0,Z.useState)(null),l=Sa(e.id),u=ti(e),d=()=>t.invalidateQueries({queryKey:G.runs.all}),f=W({mutationFn:async t=>u.canContinue?L(e.id,{text:`Review feedback:\n${t}`,runner:u.runnerOverride}):null,onSuccess:e=>{e!==null&&(a(``),d())},onError:e=>E(e.message,{tone:`danger`})}),p=W({mutationFn:()=>B(e.id),onSuccess:e=>{E(`Draft PR created — ${e.url}`),d()},onError:e=>{e instanceof j&&e.manual!==void 0&&c(e.manual),E(e.message,{tone:`danger`})}}),m=()=>{let e=r.trim();if(e.length===0){E(`Write what to change first.`),n.current?.focus();return}f.mutate(e)};return(0,Q.jsxs)(`div`,{"data-slot":`review-actions`,className:`flex flex-col gap-2`,children:[(0,Q.jsx)(Lt,{ref:n,"data-slot":`review-notes`,"aria-label":`Notes for the agent`,placeholder:`Notes for the agent — what should change?`,rows:2,value:r,onChange:e=>a(e.target.value),onKeyDown:e=>{ut({key:e.key,shiftKey:e.shiftKey,metaKey:e.metaKey,ctrlKey:e.ctrlKey,altKey:e.altKey,repeat:e.repeat,isComposing:e.nativeEvent.isComposing})&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),m())},className:`min-h-[52px] text-[13px]`}),u.canContinue?null:(0,Q.jsxs)(`p`,{id:`review-provider-guidance`,className:`flex flex-wrap items-center gap-1.5 text-xs text-muted-foreground`,children:[(0,Q.jsx)(`span`,{children:u.reason}),u.providerPending?null:(0,Q.jsx)(q,{to:`/settings/agents#providers`,className:`font-medium text-foreground underline underline-offset-4`,children:`Configure providers`})]}),(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Q.jsxs)(s,{"data-slot":`review-send-back`,variant:`outline`,size:`sm`,title:u.reason??`Send the notes back into the agent's session`,"aria-describedby":u.canContinue?void 0:`review-provider-guidance`,disabled:f.isPending||!u.canContinue,onClick:m,children:[(0,Q.jsx)(cn,{"aria-hidden":`true`}),`Send back`]}),i(e.pullRequestUrl)?(0,Q.jsx)(s,{asChild:!0,variant:`outline`,size:`sm`,children:(0,Q.jsxs)(`a`,{"data-slot":`pr-link`,href:e.pullRequestUrl,target:`_blank`,rel:`noopener noreferrer`,title:`The PR for this task is already open`,children:[(0,Q.jsx)(Xe,{"aria-hidden":`true`}),`PR ↗`]})}):(0,Q.jsxs)(s,{"data-slot":`review-draft-pr`,variant:`outline`,size:`sm`,title:`Push the branch and open a draft PR`,disabled:p.isPending,onClick:()=>p.mutate(),children:[(0,Q.jsx)(ae,{"aria-hidden":`true`}),`Draft PR`]}),e.finishBlocked===null?(0,Q.jsxs)(s,{"data-slot":`review-accept`,variant:`primary`,size:`sm`,className:`ml-auto`,title:bt(`review`),disabled:l.isPending,onClick:()=>l.mutate(),children:[(0,Q.jsx)(T,{"aria-hidden":`true`}),`Accept`]}):null]}),o===null?null:(0,Q.jsx)(Ta,{command:o})]})}function Ta({command:e}){return(0,Q.jsxs)(`button`,{type:`button`,"data-slot":`review-manual`,title:`Copy the command`,onClick:()=>{navigator.clipboard.writeText(e).then(()=>E(`Command copied to clipboard.`)).catch(()=>E(`Run manually: ${e}`))},className:`flex w-full min-w-0 items-center gap-1.5 rounded-sm px-1 py-0.5 text-left font-mono text-[11px] text-soft-foreground hover:bg-muted hover:text-foreground`,children:[(0,Q.jsx)(A,{className:`size-3 shrink-0`,"aria-hidden":`true`}),(0,Q.jsxs)(`span`,{className:`truncate`,children:[`manual path: `,e]})]})}function Ea(){return typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(`(prefers-reduced-motion: reduce)`).matches}var Da=1500;function Oa({status:e}){let t=(0,Z.useRef)(e),[n,r]=(0,Z.useState)(!1);return(0,Z.useEffect)(()=>{let n=t.current;if(t.current=e,n!==`review`||e!==`done`||Ea())return;r(!0);let i=setTimeout(()=>r(!1),Da);return()=>clearTimeout(i)},[e]),n?(0,Q.jsxs)(`div`,{"data-slot":`accept-celebration`,"aria-hidden":`true`,className:`pointer-events-none fixed inset-0 isolate z-40`,children:[(0,Q.jsx)(Oe,{}),(0,Q.jsx)(`div`,{className:`flex justify-center pt-24`,children:(0,Q.jsx)(`span`,{className:`rounded-full border border-accent-strong/30 bg-accent-strong/15 px-4 py-1.5 text-[13px] font-medium text-accent-text shadow-modal`,children:`✓ Changes accepted`})})]}):null}function ka(e){let t=v(),[n,r]=(0,Z.useState)(),i=U(e);(0,Z.useEffect)(()=>{(!i||n&&n!==e.id)&&r(void 0)},[i,e.id,n]);let a=W({mutationFn:async()=>{r(e.id);try{if(!(await c(e.id)).cancelled)throw Error(`The task changed before Stop was accepted. Check its status and retry.`)}catch(e){throw r(void 0),e}},onSettled:()=>t.invalidateQueries({queryKey:G.runs.all})});return{stopping:!!e.stopping||a.isPending||i&&n===e.id,stop:()=>a.mutateAsync()}}function Aa({agents:e,onSelect:t}){return e.length===0?null:(0,Q.jsx)(`ul`,{"data-slot":`agents-list`,className:`flex min-w-0 flex-col gap-[7px]`,children:e.map(e=>(0,Q.jsx)(ja,{agent:e,onSelect:t},e.id))})}function ja({agent:e,onSelect:t}){let n=(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(Ma,{status:e.status,stalled:e.stalled===!0}),(0,Q.jsx)(`span`,{className:`min-w-0 shrink truncate font-medium`,children:e.title}),e.agentType===void 0?null:(0,Q.jsx)(`span`,{"data-slot":`agent-type`,className:`shrink-0 rounded-full bg-muted px-2 py-0.5 text-[11px] font-semibold tracking-[0.05em] text-muted-foreground uppercase`,children:e.agentType}),(0,Q.jsx)(`span`,{"data-slot":`agent-activity`,className:`min-w-0 flex-1 truncate text-muted-foreground`,children:hi(e)}),(0,Q.jsxs)(`span`,{"data-slot":`agent-tools`,className:`shrink-0 text-muted-foreground tabular-nums`,children:[e.toolCalls,` `,e.toolCalls===1?`tool`:`tools`]})]});return(0,Q.jsx)(`li`,{"data-slot":`agent-item`,"data-status":e.status,className:`min-w-0 text-[13px]`,children:t?(0,Q.jsx)(`button`,{type:`button`,onClick:()=>t(e.id),"aria-haspopup":`dialog`,className:`flex min-h-5 w-full min-w-0 items-center gap-2.5 rounded-sm text-left hover:bg-muted/50`,children:n}):(0,Q.jsx)(`div`,{className:`flex min-h-5 min-w-0 items-center gap-2.5`,children:n})})}function Ma({status:e,stalled:t=!1}){return t?(0,Q.jsx)(`svg`,{"aria-hidden":!0,"data-slot":`agent-glyph`,"data-stalled":`true`,className:`size-[15px] shrink-0 text-soft-foreground`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeDasharray:`3 2.5`,children:(0,Q.jsx)(`circle`,{cx:`12`,cy:`12`,r:`8.5`})}):e===`completed`?(0,Q.jsxs)(`svg`,{"aria-hidden":!0,"data-slot":`agent-glyph`,className:`size-[15px] shrink-0 text-success`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,Q.jsx)(`circle`,{cx:`12`,cy:`12`,r:`9`,opacity:`.35`}),(0,Q.jsx)(`path`,{d:`m8.5 12.2 2.4 2.4 4.6-5`})]}):e===`failed`||e===`declined`?(0,Q.jsxs)(`svg`,{"aria-hidden":!0,"data-slot":`agent-glyph`,className:`size-[15px] shrink-0 text-danger`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:[(0,Q.jsx)(`circle`,{cx:`12`,cy:`12`,r:`9`,opacity:`.35`}),(0,Q.jsx)(`path`,{d:`m9 9 6 6M15 9l-6 6`})]}):(0,Q.jsxs)(`svg`,{"aria-hidden":!0,"data-slot":`agent-glyph`,className:`size-[15px] shrink-0 animate-pulse motion-reduce:animate-none`,viewBox:`0 0 24 24`,fill:`none`,children:[(0,Q.jsx)(`circle`,{className:`stroke-pending`,cx:`12`,cy:`12`,r:`8.5`,strokeWidth:`2`}),(0,Q.jsx)(`path`,{className:`fill-pending`,d:`M12 3.5 A8.5 8.5 0 0 1 12 20.5 Z`})]})}function Na(e){return{done:e.filter(e=>e.status===`completed`).length,total:e.filter(e=>e.status!==`cancelled`).length}}function Pa({entries:e}){return e.length===0?null:(0,Q.jsx)(`ul`,{"data-slot":`plan-list`,className:`flex min-w-0 flex-col gap-[7px]`,children:e.map((e,t)=>(0,Q.jsx)(Fa,{entry:e},`${t}:${e.content}`))})}function Fa({entry:e}){return(0,Q.jsxs)(`li`,{"data-slot":`plan-item`,"data-status":e.status,className:a(`flex min-h-5 min-w-0 items-center gap-2.5 text-[13px]`,e.status===`completed`&&`text-soft-foreground line-through`,e.status===`in_progress`&&`font-medium`,e.status===`pending`&&`text-muted-foreground`,e.status===`cancelled`&&`text-soft-foreground/70 line-through`),children:[(0,Q.jsx)(Ia,{status:e.status}),(0,Q.jsx)(`span`,{className:`min-w-0 truncate`,children:e.content}),e.status===`in_progress`?(0,Q.jsx)(`span`,{"data-slot":`plan-tag`,className:`ml-auto shrink-0 rounded-full bg-muted px-2 py-0.5 text-[11px] font-semibold tracking-[0.05em] text-muted-foreground uppercase`,children:`in progress`}):null]})}function Ia({status:e}){return e===`cancelled`?(0,Q.jsxs)(`svg`,{"aria-hidden":!0,className:`size-[15px] shrink-0 text-soft-foreground/70`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:[(0,Q.jsx)(`circle`,{cx:`12`,cy:`12`,r:`8.5`,opacity:`.5`}),(0,Q.jsx)(`path`,{d:`m8.5 15.5 7-7`})]}):e===`completed`?(0,Q.jsxs)(`svg`,{"aria-hidden":!0,className:`size-[15px] shrink-0 text-success`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,Q.jsx)(`circle`,{cx:`12`,cy:`12`,r:`9`,opacity:`.35`}),(0,Q.jsx)(`path`,{d:`m8.5 12.2 2.4 2.4 4.6-5`})]}):e===`in_progress`?(0,Q.jsxs)(`svg`,{"aria-hidden":!0,className:`size-[15px] shrink-0 animate-pulse motion-reduce:animate-none`,viewBox:`0 0 24 24`,fill:`none`,children:[(0,Q.jsx)(`circle`,{className:`stroke-pending`,cx:`12`,cy:`12`,r:`8.5`,strokeWidth:`2`}),(0,Q.jsx)(`path`,{className:`fill-pending`,d:`M12 3.5 A8.5 8.5 0 0 1 12 20.5 Z`})]}):(0,Q.jsx)(`svg`,{"aria-hidden":!0,className:`size-[15px] shrink-0 text-soft-foreground`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:(0,Q.jsx)(`circle`,{cx:`12`,cy:`12`,r:`8.5`})})}function La(e){switch(e){case`done`:return`done`;case`running`:case`waiting`:case`review`:return`active`;case`failed`:case`cancelled`:return`failed`;case`pending`:case`skipped`:return`pending`}}function Ra(e){if(e.length===0)return 0;let t=new Set([`done`,`failed`,`cancelled`,`skipped`]),n=new Set([`running`,`waiting`,`review`]),r=0;for(let i of e)t.has(i.status)?r+=1:n.has(i.status)&&(r+=.5);return r/e.length}function za({steps:e}){if(e.length===0)return null;let t=Ra(e)*100;return(0,Q.jsxs)(`div`,{"data-slot":`step-rail`,className:`flex min-w-0 flex-col gap-1`,children:[e.map((t,n)=>(0,Q.jsxs)(`div`,{"data-slot":`step-row`,"data-visual":La(t.status),className:`flex min-h-[22px] min-w-0 items-center gap-2 text-[13px] text-muted-foreground`,children:[(0,Q.jsx)(Ba,{visual:La(t.status)}),(0,Q.jsx)(`span`,{className:`min-w-0 truncate font-medium text-foreground`,children:t.name}),t.iterations>1?(0,Q.jsxs)(`span`,{"data-slot":`step-iterations`,className:`shrink-0 text-xs text-soft-foreground tabular-nums`,children:[`×`,t.iterations]}):null,(0,Q.jsxs)(`span`,{className:`ml-auto shrink-0 pl-2 text-[11px] text-soft-foreground tabular-nums`,children:[t.kind,` · step `,n+1,` of `,e.length]})]},t.id)),(0,Q.jsx)(`div`,{"data-slot":`step-progress`,className:`mt-1 h-0.5 overflow-hidden rounded-full bg-muted`,children:(0,Q.jsx)(`div`,{className:`h-full rounded-full bg-pending`,style:{width:`${t}%`}})})]})}function Ba({visual:e}){let t=`size-[13px] shrink-0`;switch(e){case`done`:return(0,Q.jsx)(x,{"aria-hidden":!0,className:a(t,`text-success`)});case`active`:return(0,Q.jsx)(qe,{role:`status`,"aria-label":`Step running`,className:a(t,`animate-spin stroke-pending motion-reduce:animate-none`)});case`failed`:return(0,Q.jsx)(M,{"aria-hidden":!0,className:a(t,`text-danger`)});case`pending`:return(0,Q.jsx)(le,{"aria-hidden":!0,className:a(t,`text-soft-foreground`)})}}function Va(e){let t=e.findIndex(e=>La(e.status)===`active`);if(t>=0)return t;let n=e.findIndex(e=>e.status===`pending`);return n>=0?n:Math.max(0,e.length-1)}function Ha(e,t,n,r){return n?r===`step`?`Step ${e} of ${t}`:`${e} of ${t} complete`:`${e} / ${t}`}function Ua(e){return typeof e==`object`&&!!e&&!(0,Z.isValidElement)(e)&&`keep`in e}function Wa({slot:e,icon:t,title:n,meta:r,summary:i,aside:o,open:s,onToggle:c,className:l,children:u}){let d=(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{"aria-hidden":!0,className:`flex size-4 shrink-0 items-center justify-center text-accent-text`,children:t}),(0,Q.jsx)(`span`,{className:a(`truncate text-[14px] font-semibold text-foreground`,typeof n==`string`?`shrink-0`:`min-w-0 shrink`),children:n}),i??(Ua(r)?(0,Q.jsxs)(`span`,{"data-slot":`run-activity-meta`,className:`contents text-[13px] text-muted-foreground tabular-nums`,children:[r.drop===void 0?null:(0,Q.jsxs)(`span`,{className:`flex h-[1lh] min-w-0 shrink-[2] flex-wrap overflow-hidden`,children:[(0,Q.jsx)(`span`,{"aria-hidden":!0,className:`h-[1lh] w-0`}),(0,Q.jsxs)(`span`,{"data-slot":`run-activity-meta-drop`,className:`whitespace-nowrap`,children:[r.drop,(0,Q.jsx)(`span`,{className:`text-soft-foreground`,children:` ·`})]})]}),` `,(0,Q.jsx)(`span`,{"data-slot":`run-activity-meta-keep`,className:`shrink-0 whitespace-nowrap`,children:r.keep})]}):r===void 0?null:(0,Q.jsx)(`span`,{"data-slot":`run-activity-meta`,className:`min-w-0 shrink-[2] truncate text-[13px] text-muted-foreground tabular-nums`,children:r}))]}),f=c!==void 0;return(0,Q.jsxs)(`div`,{"data-slot":`run-activity-${e}`,"data-state":f&&s?`open`:`collapsed`,className:a(`min-w-0 border-t border-border first:border-t-0`,l),children:[f?(0,Q.jsxs)(`button`,{type:`button`,"aria-expanded":s,onClick:c,className:`flex min-h-11 w-full min-w-0 items-center gap-2.5 px-3.5 py-2 text-start hover:bg-muted/40 active:bg-muted focus-visible:outline-2 focus-visible:outline-offset-[-2px] focus-visible:outline-ring`,children:[d,o,(0,Q.jsx)(D,{"aria-hidden":!0,className:a(`size-4 shrink-0 text-soft-foreground motion-safe:transition-transform motion-reduce:transition-none`,!o&&`ms-auto`,s&&`rotate-180`)})]}):(0,Q.jsxs)(`div`,{className:`flex min-h-11 w-full min-w-0 items-center gap-2.5 px-3.5 py-2`,children:[d,o]}),f&&s?(0,Q.jsx)(`div`,{"data-slot":`run-activity-body`,className:`min-w-0 border-t border-border/60 bg-muted/30 px-3.5 py-2.5`,children:u}):null]})}function Ga(e,t){let n=e?.role===`root`?e.receipts.map(e=>e.workerId).reverse():[];return[...new Set([...n,...(t?.workers??[]).map(e=>e.workerId)])]}function Ka(e){let t=e.delegation,n=t?.role===`root`,r=ve(e.id,{enabled:n});if(!n||!t)return`complete`;if(!r.isSuccess)return r.isError||r.fetchStatus===`paused`?`unknown`:`pending`;let i=new Map(r.data.workers.map(e=>[e.workerId,e])),a=Ga(t,r.data).map(e=>{let t=i.get(e)?.status;return t===`done`||t===`cancelled`?`complete`:t===void 0||t===`failed`?`issue`:`pending`});return a.includes(`pending`)?`pending`:a.includes(`issue`)?`issue`:`complete`}function qa({run:e,open:t,onToggle:n}){let r=ve(e.id),i=he(),o=Rt(),c=e.delegation,u=new Map(r.data?.workers.map(e=>[e.workerId,e])),d=Ga(c,r.data),f=N(e)??P(e),p=c&&c.role!==`invalid`&&f?H(c.role,f):void 0;return(0,Q.jsx)(Wa,{slot:`workers`,icon:(0,Q.jsx)(oe,{className:`size-4`}),title:`Workers`,meta:Ja({ids:d,workers:u,desktop:o,query:r}),aside:r.data?.capacity?(0,Q.jsx)(to,{capacity:r.data.capacity}):void 0,open:t,onToggle:n,children:(0,Q.jsxs)(`div`,{"aria-label":`Task relationships`,className:`min-w-0 text-[13px] text-muted-foreground`,role:`group`,children:[r.data?.capacity&&r.data.capacity.outstanding>=r.data.capacity.limit?(0,Q.jsx)(`p`,{role:`status`,className:`px-1 py-1`,children:`All worker slots are in use. Clean up finished workers to free a slot.`}):null,f?(0,Q.jsx)(Qa,{wait:f,dependencyLabel:p}):null,d.length>0?(0,Q.jsx)(`ul`,{className:`grid max-h-64 min-w-0 gap-0.5 overflow-y-auto`,children:d.map(t=>{let n=u.get(t),o=i.data?.find(e=>e.id===t)??r.data?.titles?.find(e=>e.id===t),s=n?Xa(n.status):r.isSuccess?`Record unavailable or deleted`:`Status unavailable`;return(0,Q.jsxs)(`li`,{"data-slot":`worker-item`,"data-status":n?.status,className:`min-w-0`,children:[(0,Q.jsxs)(q,{to:`/tasks/${t}`,"aria-label":`Worker task ${t}`,className:`group flex min-h-11 min-w-0 items-center gap-2.5 rounded-md px-1 text-foreground hover:bg-muted focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,children:[(0,Q.jsx)(Ya,{status:n?.status}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:o?Pe(o):`Worker ${t.slice(0,8)}`}),(0,Q.jsx)(`span`,{className:a(`max-w-[45%] shrink-0 truncate text-xs`,Za(n?.status)),children:s}),(0,Q.jsx)(l,{"aria-hidden":!0,className:`size-3.5 shrink-0 text-soft-foreground`})]}),n?(0,Q.jsx)(ro,{parentRunId:e.id,worker:n}):null,n?.destroy?(0,Q.jsx)(ao,{state:n.destroy}):null]},t)})}):c?.role===`root`&&r.isSuccess?(0,Q.jsx)(`p`,{className:`px-1 py-1`,children:`No workers`}):null,r.fetchStatus===`paused`?(0,Q.jsx)(`p`,{role:`status`,className:`px-1 py-1`,children:`Offline — relationship details will refresh when connected.`}):r.isPending?(0,Q.jsx)(`p`,{role:`status`,className:`px-1 py-1`,children:`Loading relationships…`}):null,r.isError?(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 px-1 py-1`,children:[(0,Q.jsx)(`p`,{role:`status`,children:`Could not load relationships. Known task links are retained.`}),(0,Q.jsx)(s,{variant:`outline`,className:`min-h-11`,onClick:()=>void r.refetch(),children:`Retry relationships`})]}):null]})})}function Ja({ids:e,workers:t,desktop:n,query:r}){if(e.length===0)return r.isError?`Unavailable`:r.isPending?`Linking…`:`No workers`;let i=`${e.length} linked`;if(!n)return i;let a=new Map;for(let n of e){let e=t.get(n)?.status;e!==void 0&&a.set(e,(a.get(e)??0)+1)}return[i,...[...a.entries()].map(([e,t])=>`${t} ${e}`)].join(` · `)}function Ya({status:e}){let t=`size-[15px] shrink-0`;return e===`done`?(0,Q.jsx)(x,{"aria-hidden":!0,className:a(t,`text-success`)}):e===`failed`?(0,Q.jsx)(M,{"aria-hidden":!0,className:a(t,`text-danger`)}):e===`cancelled`?(0,Q.jsx)(f,{"aria-hidden":!0,className:a(t,`text-soft-foreground`)}):e===`running`||e===`waiting`||e===`review`?(0,Q.jsx)(qe,{role:`status`,"aria-label":`Worker running`,className:a(t,`animate-spin stroke-pending motion-reduce:animate-none`)}):(0,Q.jsx)(le,{"aria-hidden":!0,className:a(t,`text-soft-foreground`)})}function Xa(e){return`${e.charAt(0).toUpperCase()}${e.slice(1)}`}function Za(e){return e===`done`?`text-success`:e===`failed`?`text-danger`:`text-muted-foreground`}function Qa({wait:e,dependencyLabel:t}){return(0,Q.jsxs)(`p`,{className:`px-2 break-words`,children:[e.phase===`parked`&&t?`${t.charAt(0).toUpperCase()}${t.slice(1)}`:`requestIds`in e&&e.requestIds?e.phase===`parked`?`Waiting on request replies`:e.phase===`wake-pending`?`Conversation update queued for this task`:`Request wait registered — the agent is finishing its turn`:e.phase===`parked`?`Waiting on workers`:e.phase===`wake-pending`?`Worker update queued for the parent`:`Worker wait registered — the agent is finishing its turn`,`.`,`deadline`in e?(0,Q.jsxs)(Q.Fragment,{children:[` `,`Deadline: `,(0,Q.jsx)(`time`,{dateTime:e.deadline,children:e.deadline})]}):` No deadline: Cezar wakes this task when they have all settled.`]})}function $a(e){return e.delegation?.role===`worker`&&P(e)?.phase===`wake-pending`}function eo({run:e}){let t=P(e);return e.delegation?.role===`worker`&&t?.phase===`wake-pending`?(0,Q.jsx)(Qa,{wait:t,dependencyLabel:H(`worker`,t)}):null}function to({capacity:e}){return(0,Q.jsxs)(`span`,{"data-slot":`worker-capacity`,role:`status`,"aria-label":`Worker capacity: ${e.outstanding} of ${e.limit} in use`,className:`ms-auto shrink-0 whitespace-nowrap text-[13px] font-normal text-muted-foreground tabular-nums`,children:[e.outstanding,` of `,e.limit,` in use`]})}var no=new Set([`review`,`done`,`failed`,`cancelled`]);function ro({parentRunId:e,worker:t}){let n=ge(e),[r,i]=(0,Z.useState)(!1);if(!no.has(t.status)||t.destroy?.phase===`complete`&&t.destroy.remaining.length===0)return null;let a=t.workerId.slice(0,8),o=!!t.destroy&&t.destroy.phase!==`complete`;return(0,Q.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2 px-1`,children:[r?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{className:`break-words text-xs`,children:`Removes this worker's worktree and branch. Its result is saved first.`}),(0,Q.jsx)(s,{variant:`danger-ghost`,size:`sm`,className:`min-h-11`,"aria-label":`Confirm clean up of worker ${a}`,onClick:()=>{i(!1),n.mutate(t.workerId)},children:`Clean up`}),(0,Q.jsx)(s,{variant:`outline`,size:`sm`,className:`min-h-11`,onClick:()=>i(!1),children:`Cancel`})]}):(0,Q.jsx)(s,{variant:`outline`,size:`sm`,className:`min-h-11`,"aria-label":o?`Retry clean up of worker ${a}`:`Clean up worker ${a}`,disabled:n.isPending,onClick:()=>i(!0),children:n.isPending?`Cleaning up…`:o?`Retry clean up`:`Clean up`}),n.isError&&!r?(0,Q.jsxs)(`span`,{role:`status`,className:`break-words text-xs`,children:[`Cleanup did not finish: `,n.error.message]}):null]})}function io(e){return e!==void 0&&(e.phase!==`complete`||e.remaining.length>0||e.error!==void 0)}function ao({state:e}){if(!io(e))return null;let t=e.phase===`complete`?void 0:e.retry,n=t&&(0,Q.jsx)(oo,{at:t.nextAt});return(0,Q.jsxs)(`p`,{className:`px-2 pb-2 break-words`,children:[t?.needsAttention?`Cleanup needs attention`:e.phase===`incomplete`?`Cleanup incomplete`:e.phase===`complete`?`Cleanup complete`:`Cleanup ${e.phase}`,e.remaining.length?` — remaining: ${e.remaining.join(`, `)}`:``,e.error?` — ${t?e.error.replace(/\.$/,``):e.error}`:``,t?.needsAttention?(0,Q.jsxs)(Q.Fragment,{children:[`. Nothing changed after `,t.attempts,` automatic attempts; checking hourly, next check `,n,`. Retry clean up to try now.`]}):t?(0,Q.jsxs)(Q.Fragment,{children:[`. Retrying automatically, next attempt `,n,`.`]}):null]})}function oo({at:e}){let t=vt(3e4);return(0,Q.jsx)(`time`,{dateTime:e,title:new Date(e).toLocaleString(),children:wt(t,Date.parse(e))})}function so({items:e,lead:t=0}){let n=(0,Z.useRef)(null),[r,i]=(0,Z.useState)(-1/0);return(0,Z.useLayoutEffect)(()=>{let r=n.current;if(!r)return;let a=()=>{let n=r.getBoundingClientRect().width;if(!n&&r.getClientRects().length===0)return;let a=getComputedStyle(r),o=Number.parseFloat(a.width),s=o>0?n/o:1,c=(Number.parseFloat(a.columnGap)||0)*s,l=Array.from(r.children,e=>e.getBoundingClientRect().width),u=e.map((e,t)=>({...e,width:l[t]??0})),d=-1/0,f=()=>u.reduce((e,t)=>e+t.width,0)+Math.max(0,u.length-1)*c+(u.length>0?t*s:0);for(let t of[...new Set(e.map(e=>e.priority))].sort((e,t)=>e-t)){if(f()<=n)break;d=t,u=u.filter(e=>e.priority>t)}i(e=>e===d?e:d)};if(a(),typeof ResizeObserver>`u`)return;let o=new ResizeObserver(a);o.observe(r);for(let e of r.children)o.observe(e);return()=>o.disconnect()},[e,t]),(0,Q.jsx)(`span`,{ref:n,"data-slot":`activity-summary`,className:`relative flex h-[max(1.5em,22px)] min-w-0 flex-1 items-center gap-2.5 overflow-clip whitespace-nowrap text-[13px] font-normal text-muted-foreground tabular-nums`,children:e.map(n=>{let i=n.priority<=r,a=n===e.find(e=>e.priority>r);return(0,Q.jsx)(`span`,{"data-summary-item":n.id,"data-hidden":i,"aria-hidden":i||void 0,inert:i||void 0,style:a&&t?{marginInlineStart:t}:void 0,className:`inline-flex w-max shrink-0 items-center gap-1.5 data-[hidden=true]:invisible data-[hidden=true]:absolute`,children:n.content},n.id)})})}function co({run:e,references:t}){return(0,Q.jsx)(`span`,{className:`inline-flex items-center gap-1.5`,children:t.map(t=>(0,Q.jsx)(ct,{reference:t,taskTitle:Pe(e),inert:!0},je(t)))})}function lo(e){let t=Ee(),n=Me(),{accounts:r}=Kt(),i=e.runner??t.data?.defaultRunner??`claude`,a=e.model??`auto`,o=e.effort||`auto`,s=[...e.steps].reverse().find(e=>e.profileId),c=s?.profileId,l=s?.backend??i,u=n.data?.profiles.find(e=>e.id===c&&e.provider===l),d=c===void 0||n.isPending?void 0:n.isError?c:c==="default"?Ht(r,l)?`default`:void 0:u?Ht(r,l)?u.label:void 0:`${c} (removed)`,f=e.modelIdentity&&e.modelIdentity!==a?e.modelIdentity:void 0;return{runner:i,...d?{account:d}:{},model:a,effort:o,...f?{identity:f}:{}}}var uo=[`running`,`queued`,`waiting`];function fo(e){return Array.isArray(e)?e.filter(e=>e?.kind===`pr`||e?.kind===`timer`||e?.kind===`worker`||e?.kind===`process`):[]}function po(e){let t=e?new Date(e):void 0;return t&&Number.isFinite(t.getTime())?new Intl.DateTimeFormat(void 0,{dateStyle:`medium`,timeStyle:`long`}).format(t):void 0}function mo(e,t){return`${e} — ${t.status===`running`?`current turn still working`:`waiting for capacity`}`}function ho(e){let t=fo(e.waits),n=uo.includes(e.status)?t.filter(e=>e.kind===`worker`?e.phase===`open`:e.phase===`open`||e.phase===`resolved`):[],r=n.some(e=>e.kind===`pr`),i=[...fo(e.lastWaits),...t.filter(e=>!n.includes(e)&&e.phase!==`open`)],a=r?void 0:i.filter(e=>e.kind===`pr`).at(-1),o=r?void 0:e.lastWaitsError,s=n.some(e=>e.kind===`process`)?void 0:i.filter(e=>e.kind===`process`).at(-1);return n.length||a||o||s?{open:n,lastCi:a,error:o,lastProcess:s}:void 0}function go(e){return ho(e)!==void 0}function _o(e){return(ho(e)?.open??[]).filter(e=>e.kind===`pr`).map(e=>({kind:`PR`,number:e.prNumber,url:e.prUrl}))}function vo({run:e}){let t=ho(e);if(!t)return null;let{open:n,lastCi:r,error:i,lastProcess:a}=t;return(0,Q.jsxs)(`div`,{"data-slot":`open-waits`,className:`flex min-w-0 flex-col gap-1`,children:[n.map(t=>t.kind===`pr`?(0,Q.jsx)(yo,{run:e,wait:t},t.id):t.kind===`worker`?(0,Q.jsx)(bo,{wait:t},t.id):t.kind===`process`?(0,Q.jsx)(Co,{run:e,wait:t},t.id):(0,Q.jsx)(xo,{run:e,wait:t},t.id)),i?(0,Q.jsx)(`div`,{"data-slot":`ci-wait-status`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`,className:`min-w-0 text-xs text-muted-foreground [overflow-wrap:anywhere]`,children:i}):r?(0,Q.jsx)(yo,{run:e,wait:r,settled:!0}):null,a?(0,Q.jsx)(Co,{run:e,wait:a,settled:!0}):null]})}function yo({run:e,wait:t,settled:n=!1}){let r=t.result,a=t.until===`merge`,o={passed:`CI checks passed — observed checks only; not merge approval`,failed:`CI checks failed — inspect the PR checks`,conflicting:a?`PR has merge conflicts — inspect the PR; not merged`:`PR has merge conflicts — inspect the PR; not merge approval`,cancelled:a?`Merge wait cancelled`:`CI wait cancelled`,skipped:`CI checks skipped — inspect the PR checks`,no_checks:`No CI checks found — inspect the PR workflows`,deadline:a?`Merge wait timed out — merge not confirmed`:`CI wait timed out — inspect the PR checks`,error:a?`Merge wait unavailable — inspect access and the PR`:`CI wait unavailable — inspect access and the PR checks`,head_changed:`CI head changed — ${r?.headSha.slice(0,7)} → ${r?.observedHeadSha?.slice(0,7)??`unknown`}`,merged:`PR merged`,closed:`PR closed without merge — inspect the PR`},s=a?`Merge`:`CI`,c=n&&t.phase===`cancelled`,l=n?c?`${s} wait cancelled`:r?o[r.outcome]:`${s} wait unavailable`:t.phase===`resolved`?mo(`${s} result ready`,e):a?`Waiting for merge`:`Waiting for CI`,u=n?c?t.cancelledAt:r?.observedAt:t.deadline,d=po(u),f=`${t.repository}#${t.prNumber}`;return(0,Q.jsx)(`div`,{"data-slot":`ci-wait-status`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`,className:`min-w-0 text-[13px] text-muted-foreground [overflow-wrap:anywhere]`,children:(0,Q.jsxs)(`dl`,{className:`grid min-w-0 grid-cols-[auto_minmax(0,1fr)] items-baseline gap-x-3 gap-y-1`,children:[(0,Q.jsx)(`dt`,{className:`font-medium text-foreground`,children:`Status`}),(0,Q.jsx)(`dd`,{children:l}),(0,Q.jsx)(`dt`,{className:`font-medium text-foreground`,children:`Pull request`}),(0,Q.jsx)(`dd`,{className:`min-w-0`,children:i(t.prUrl)?(0,Q.jsx)(`a`,{href:t.prUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex min-h-11 min-w-11 max-w-full items-center rounded-sm px-1 font-medium text-foreground underline underline-offset-2 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring active:bg-muted`,children:f}):(0,Q.jsx)(`span`,{children:f})}),d?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`dt`,{className:`font-medium text-foreground`,children:n?c?`Cancelled`:`Observed`:`Deadline`}),(0,Q.jsx)(`dd`,{children:(0,Q.jsx)(`time`,{dateTime:u,children:d})})]}):n?null:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`dt`,{className:`font-medium text-foreground`,children:`Deadline`}),(0,Q.jsxs)(`dd`,{children:[s,` deadline unavailable`]})]})]})})}function bo({wait:e}){let t=e.workerIds!==void 0,n=new Set((t?e.outcomes:e.requestOutcomes)?.map(e=>`workerId`in e?e.workerId:e.requestId)),r=(e.workerIds??e.requestIds??[]).filter(e=>!n.has(e)).length,i=t?r===1?`worker`:`workers`:r===1?`request reply`:`request replies`,a=po(e.deadline);return(0,Q.jsxs)(`div`,{"data-slot":`worker-wait-status`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`,className:`min-w-0 text-xs text-muted-foreground [overflow-wrap:anywhere]`,children:[(0,Q.jsxs)(`p`,{children:[`Waiting on `,r,` `,i]}),a?(0,Q.jsxs)(`p`,{children:[`Deadline`,` `,(0,Q.jsx)(`time`,{dateTime:e.deadline,children:a})]}):(0,Q.jsx)(`p`,{children:`Worker wait deadline unavailable`})]})}function xo({run:e,wait:t}){let n=po(t.deadline);return(0,Q.jsxs)(`div`,{"data-slot":`monitoring-schedule`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`,className:`min-w-0 text-xs text-muted-foreground [overflow-wrap:anywhere]`,children:[t.phase===`resolved`?(0,Q.jsx)(`p`,{children:mo(`Automatic check due`,e)}):n?(0,Q.jsxs)(`p`,{children:[`Next automatic check`,` `,(0,Q.jsx)(`time`,{dateTime:t.deadline,className:`font-medium text-foreground`,children:n})]}):(0,Q.jsx)(`p`,{children:`Automatic check time unavailable`}),t.note?(0,Q.jsx)(`p`,{children:t.note}):null]})}function So(e){let t=e.result;return t?t.outcome===`exit_file`?t.exitCode===void 0?`PID ${e.pid} wrote an exit file that is not an exit code`:`PID ${e.pid} exited with code ${t.exitCode}`:t.outcome===`exited`?`PID ${e.pid} exited, code unknown`:t.outcome===`deadline`?`PID ${e.pid} still running at the deadline`:`PID ${e.pid} could not be checked`:`PID ${e.pid} still running at the deadline`}function Co({run:e,wait:t,settled:n=!1}){let r=n&&t.phase===`cancelled`?`Process wait on PID ${t.pid} cancelled`:n?So(t):t.phase===`resolved`?mo(So(t),e):`Waiting for PID ${t.pid}${t.note?` — ${t.note}`:``}`,i=!n&&t.phase===`open`?po(t.deadline):void 0;return(0,Q.jsxs)(`div`,{"data-slot":`process-wait-status`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`,className:`min-w-0 text-xs text-muted-foreground [overflow-wrap:anywhere]`,children:[(0,Q.jsx)(`p`,{children:r}),i?(0,Q.jsxs)(`p`,{children:[`Until`,` `,(0,Q.jsx)(`time`,{dateTime:t.deadline,children:i})]}):null]})}var wo=new Map,To=new Map;function Eo(e){let{referenceProjectId:t,repoBase:n,references:r,requests:i}=We(e.run);return(0,Q.jsx)(at,{projectId:t,repoBase:n,requests:i,children:(0,Q.jsx)(Do,{...e,references:r,prNumbers:i.filter(e=>e.kind===`PR`).map(e=>e.number),hasReferences:r.length>0||!!Ce(e.run)||!!Se(e.run,n)})})}function Do({run:e,currentThread:t,onOpenWorker:n,readerScroll:r,prNumbers:i,hasReferences:a,references:o}){let s=Rt(),c=lo(e),[l,u]=(0,Z.useState)(()=>wo.get(e.id)??!1),d=Uo(r,l),f=d.open,[p,m]=(0,Z.useState)({}),h=Oo(e,t,i),g=He(e),_=t=>p[t]??To.get(`${e.id}:${t}`)??t===`workers`,v=t=>{let n=!_(t);To.set(`${e.id}:${t}`,n),m(e=>({...e,[t]:n}))},y=e=>({open:_(e),onToggle:()=>v(e)});return(0,Q.jsxs)(`section`,{"data-slot":`run-activity-dock`,ref:d.ref,"data-state":f?`open`:`collapsed`,className:`min-w-0 overflow-hidden rounded-xl border border-border bg-card shadow-xs`,children:[(0,Q.jsx)(No,{run:e,identity:c,activity:h,references:o,open:f,onToggle:()=>{wo.set(e.id,!f),u(!f),d.chose(!f)}}),f?(0,Q.jsxs)(`div`,{className:`flex min-w-0 flex-col border-t border-border`,children:[(0,Q.jsx)(Io,{run:e,activity:h,...y(`status`)}),(0,Q.jsx)(Lo,{run:e,desktop:s,automations:h.automations,...y(`workflow`)}),(0,Q.jsx)(Ro,{activity:h,desktop:s,onOpenWorker:n,...y(`subagents`)}),(0,Q.jsx)(zo,{run:e,...y(`workers`)}),(0,Q.jsx)(Bo,{activity:h,desktop:s,...y(`plan`)}),(0,Q.jsx)(Vo,{run:e,identity:c,activity:h,...y(`usage`)}),(0,Q.jsx)(Ho,{run:e,references:o,conflicts:h.conflicts,hasReferences:a,onResume:()=>g.mutate(),...y(`workspace`)})]}):null]})}function Oo(e,t,n){let r=fe(),i=pt(r.data),a=he(),o=Re(e,{queuePosition:e.status===`queued`?Fe(a.data??[]).get(e.id):void 0}),s=st(n),c=!De(e)&&e.status!==`queued`,l=(0,Z.useMemo)(()=>fi(t.turns,c),[t.turns,c]),u=it(t)??[],d=Ka(e),f=mi(l),p=Na(u);return{line:o,...ko(e,o,d,f,p),...Ao(e,i),conflicts:s,waitReferences:_o(e),agents:l,agentCounts:f,planEntries:u,planCounts:p,automations:r.data?.capabilities?.automations===!0}}function ko(e,t,n,r,i){let a=e.steps.every(e=>e.status===`done`||e.status===`skipped`),o=e.status===`done`&&a&&n===`complete`&&r.done===r.total&&i.done===i.total;return{allComplete:o,statusText:o?`All complete`:e.status===`done`?n===`unknown`?`Workers unavailable`:n===`pending`?`In progress`:`Incomplete`:t.label,failed:t.attention.tone===`danger`||e.status===`cancelled`,glyph:o?(0,Q.jsx)(x,{"aria-hidden":!0,className:`size-3.5 shrink-0 text-success`}):(0,Q.jsx)(Je,{tone:t.attention.tone,shape:t.attention.shape,pulse:t.attention.pulse})}}function Ao(e,t){return{cost:t.cost&&e.costUsd!==void 0?be(e.costUsd):void 0,tokens:t.tokens&&(e.inputTokens!==void 0||e.outputTokens!==void 0)?(0,Q.jsx)(Zt,{inputTokens:e.inputTokens,outputTokens:e.outputTokens}):void 0}}function jo(e){return e.allComplete?`text-success`:e.failed&&`text-danger`}function Mo(e){return e.length>0?e[Va(e)]:void 0}function No({run:e,identity:t,activity:n,references:r,open:i,onToggle:o}){let{cost:s}=n,c=[...new Map([...r,...n.waitReferences].map(e=>[je(e),e])).values()];return(0,Q.jsxs)(`button`,{type:`button`,"aria-expanded":i,"aria-label":Po(e,t,n,c,i),onClick:o,className:a(`flex min-h-11 w-full min-w-0 items-center px-3.5 py-2 text-start text-[14px] hover:bg-muted/40 active:bg-muted focus-visible:outline-2 focus-visible:outline-offset-[-2px] focus-visible:outline-ring`,i?`gap-2.5`:`gap-2`),children:[(0,Q.jsx)(se,{"aria-hidden":!0,className:`size-4 shrink-0 text-accent-text`}),(0,Q.jsx)(`span`,{className:`shrink-0 font-semibold`,children:`Activity`}),i?null:(0,Q.jsx)(Fo,{run:e,identity:t,activity:n,summaryReferences:c}),i&&s?(0,Q.jsx)(`span`,{"data-slot":`run-activity-cost`,className:`ms-auto shrink-0 text-[13px] text-muted-foreground tabular-nums`,children:s}):null,(0,Q.jsx)(D,{"aria-hidden":!0,className:a(`size-4 shrink-0 text-soft-foreground motion-safe:transition-transform motion-reduce:transition-none`,i&&!s&&`ms-auto`,i&&`rotate-180`)})]})}function Po(e,t,n,r,i){let{statusText:a,conflicts:o,cost:s}=n,c=`Session activity: ${a}${o.length?`; pull request conflicts`:``}${s?`; cost ${s}`:``}`;if(i)return c;let l=Mo(e.steps),u=l?La(l.status):void 0,d=l?`; step ${l.name}, ${u===`active`?`running`:u}`:``,f=r.length?`; ${r.map(e=>`${e.kind} #${e.number}`).join(`; `)}`:``;return`${c}${d}; runner ${t.runner}; model ${t.model}; effort ${t.effort}${f}`}function Fo({run:e,identity:t,activity:n,summaryReferences:r}){let{statusText:i,cost:o,conflicts:s}=n,c=Mo(e.steps),l=[{id:`runner`,priority:2,content:t.runner},{id:`model`,priority:4,content:t.model},{id:`effort`,priority:3,content:t.effort},...o?[{id:`cost`,priority:1,content:(0,Q.jsx)(`span`,{"data-slot":`run-activity-cost`,children:o})}]:[],...r.length||s.length?[{id:`chips`,priority:0,content:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(co,{run:e,references:r}),s.length>0?(0,Q.jsxs)(`span`,{"data-slot":`run-activity-conflict`,className:`inline-flex items-center gap-1 font-medium text-conflict`,children:[(0,Q.jsx)(w,{"aria-hidden":!0,className:`size-3.5`}),`Conflicts`]}):null]})}]:[]];return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`span`,{"data-slot":`run-activity-status`,title:i,className:a(`inline-flex min-w-[calc(0.875rem+3ch)] flex-[0_1_auto] items-center gap-1.5 text-[13px] whitespace-nowrap text-muted-foreground`,jo(n)),children:[n.glyph,(0,Q.jsx)(`span`,{"data-slot":`run-activity-status-label`,className:`min-w-0 truncate`,children:i})]}),c?(0,Q.jsxs)(`span`,{"data-slot":`run-activity-step`,className:`flex max-w-max min-w-[calc(1.375rem+2ch)] flex-[1000_1_0] items-center gap-1.5 text-[13px] text-muted-foreground`,children:[(0,Q.jsx)(qo,{steps:e.steps,decorative:!0}),(0,Q.jsx)(`span`,{"data-slot":`run-activity-step-name`,title:c.name,className:`min-w-0 truncate`,children:c.name})]}):null,(0,Q.jsx)(`span`,{className:`-ms-2 flex min-w-0 flex-[1_1_0]`,children:(0,Q.jsx)(so,{items:l,lead:8})})]})}function Io({run:e,activity:t,open:n,onToggle:r}){let{line:i,waitReferences:o}=t,s=$a(e);return(0,Q.jsxs)(Wa,{slot:`status-row`,icon:t.glyph,title:(0,Q.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,Q.jsx)(`span`,{"data-slot":`run-activity-status`,className:a(`truncate`,jo(t)),children:t.statusText}),i.nextCheck?(0,Q.jsxs)(`span`,{"data-slot":`run-activity-next-check`,className:`whitespace-normal text-[13px] font-normal text-muted-foreground`,children:[`Next check `,(0,Q.jsx)(`time`,{dateTime:i.nextCheck.at,children:i.nextCheck.text})]}):null]}),summary:!n&&o.length>0?(0,Q.jsx)(so,{items:[{id:`chips`,priority:0,content:(0,Q.jsx)(co,{run:e,references:o})}]}):void 0,open:n,onToggle:go(e)||s?r:void 0,children:[(0,Q.jsx)(vo,{run:e}),s?(0,Q.jsx)(eo,{run:e}):null]})}function Lo({run:e,desktop:t,automations:n,open:r,onToggle:i}){let a=e.steps,o=we(e);if(!o&&a.length===0)return null;let s=Mo(a);return(0,Q.jsxs)(Wa,{slot:`workflow`,icon:a.length>0?(0,Q.jsx)(qo,{steps:a}):(0,Q.jsx)(b,{className:`size-4`}),title:(0,Q.jsxs)(Q.Fragment,{children:[`Workflow`,o?(0,Q.jsxs)(`span`,{className:`font-normal text-muted-foreground`,children:[` · `,o]}):null]}),meta:s?{drop:s.name,keep:Ha(Va(a)+1,a.length,t,`step`)}:void 0,open:r,onToggle:i,children:[a.length>0?(0,Q.jsx)(za,{steps:a}):null,(0,Q.jsx)(Ko,{run:e,available:n})]})}function Ro({activity:e,desktop:t,onOpenWorker:n,open:r,onToggle:i}){let{agents:a,agentCounts:o}=e;return a.length===0?null:(0,Q.jsx)(Wa,{slot:`subagents`,icon:(0,Q.jsx)(C,{className:`size-4`}),title:`Subagents`,meta:Ha(o.done,o.total,t),open:r,onToggle:i,children:(0,Q.jsx)(Aa,{agents:a,onSelect:n})})}function zo({run:e,open:t,onToggle:n}){return e.delegation?.role===`root`?(0,Q.jsx)(qa,{run:e,open:t,onToggle:n}):null}function Bo({activity:e,desktop:t,open:n,onToggle:r}){let{planEntries:i,planCounts:a}=e;return i.length===0?null:(0,Q.jsx)(Wa,{slot:`plan`,icon:(0,Q.jsx)(R,{className:`size-4`}),title:`Plan`,meta:Ha(a.done,a.total,t),open:n,onToggle:r,children:(0,Q.jsx)(Pa,{entries:i})})}function Vo({run:e,identity:t,activity:n,open:r,onToggle:i}){let{cost:a,tokens:o}=n,s=e.modelIdentity?.includes(`/`)?e.modelIdentity.split(`/`)[0]:void 0,c=[...s?[{id:`provider`,priority:2,content:s}]:[],{id:`model`,priority:4,content:t.model},{id:`effort`,priority:3,content:t.effort},...a?[{id:`cost`,priority:1,content:a}]:[],...o?[{id:`tokens`,priority:0,content:o}]:[]];return(0,Q.jsx)(Wa,{slot:`usage`,icon:(0,Q.jsx)(sn,{className:`size-4`}),title:`Usage & agent`,summary:(0,Q.jsx)(`span`,{"data-slot":`run-activity-meta`,className:`contents`,children:(0,Q.jsx)(so,{items:c})}),open:r,onToggle:i,children:(0,Q.jsx)(Go,{run:e,tokens:o,cost:a})})}function Ho({run:e,references:t,conflicts:n,hasReferences:r,onResume:i,open:a,onToggle:o}){let s=e.delegation?.role===`worker`?e.delegation.destroy:void 0;if(!(e.branch||e.worktreePath||r||It(e)||io(s)))return null;let c=n.length===1?`PR #${n[0]} conflicts`:`${n.length} PRs conflict`;return(0,Q.jsx)(Wa,{slot:`workspace`,icon:(0,Q.jsx)(oe,{className:`size-4`}),title:`Workspace`,summary:!a&&t.length>0?(0,Q.jsx)(`span`,{"data-slot":`run-activity-meta`,className:`contents`,children:(0,Q.jsx)(so,{items:[...e.branch?[{id:`branch`,priority:0,content:(0,Q.jsx)(`span`,{className:`font-mono text-[12px]`,children:e.branch})}]:[],{id:`chips`,priority:1,content:(0,Q.jsx)(co,{run:e,references:t})},...n.length>0?[{id:`conflicts`,priority:2,content:(0,Q.jsx)(`span`,{className:`font-medium text-conflict`,children:c})}]:[]]})}):void 0,meta:n.length>0?(0,Q.jsxs)(`span`,{className:`inline-flex items-center gap-1 font-medium text-conflict`,children:[(0,Q.jsx)(w,{"aria-hidden":!0,className:`size-3.5`}),c]}):e.branch?(0,Q.jsx)(`span`,{className:`font-mono text-[12px]`,children:e.branch}):void 0,open:a,onToggle:o,children:(0,Q.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-3 text-[13px] text-muted-foreground`,children:[s?(0,Q.jsx)(ao,{state:s}):null,(0,Q.jsx)(ze,{run:e}),e.branch?(0,Q.jsx)(Wo,{label:`Branch`,children:(0,Q.jsx)(Ue,{branch:e.branch})}):null,e.worktreePath?(0,Q.jsx)(Wo,{label:`Worktree`,children:(0,Q.jsx)(`span`,{className:`min-w-0 break-all font-mono text-[12px] text-foreground`,children:e.worktreePath})}):null,(0,Q.jsx)(Le,{run:e,canResume:jt(e).terminal,onResume:i})]})})}function Uo(e,t){let n=(0,Z.useRef)(null),[r,i]=(0,Z.useState)(!1),a=(0,Z.useRef)(t);a.current=t;let o=(0,Z.useRef)({active:!1,override:!1});return(0,Z.useEffect)(()=>e?.(e=>{if(e.direction===`tail`){o.current={active:!1,override:!1},i(!1);return}if(e.direction===`down`){i(!1);return}if(o.current.active=!0,o.current.override||!a.current)return;let t=n.current?.closest(`[data-slot="thread-dock"]`);!t||getComputedStyle(t).position!==`sticky`||e.distanceFromBottom<=t.getBoundingClientRect().height||i(!0)}),[e]),{ref:n,open:t&&!r,chose:e=>{i(!1),e&&o.current.active&&(o.current.override=!0)}}}function Wo({label:e,children:t}){return(0,Q.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,Q.jsx)(`span`,{className:`w-20 shrink-0 font-medium text-foreground`,children:e}),t]})}function Go({run:e,tokens:t,cost:n}){let{runner:r,account:i,model:a,effort:o,identity:s}=lo(e);return(0,Q.jsxs)(`dl`,{"data-slot":`agent-details`,className:`grid min-w-0 grid-cols-[auto_minmax(0,1fr)] gap-x-3 gap-y-1 text-[13px]`,children:[t?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`dt`,{className:`font-medium text-foreground`,children:`Tokens`}),(0,Q.jsx)(`dd`,{className:`min-w-0 text-[12px]`,children:t})]}):null,n?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`dt`,{className:`font-medium text-foreground`,children:`Cost`}),(0,Q.jsx)(`dd`,{className:`min-w-0 font-mono text-[12px] tabular-nums`,children:n})]}):null,(0,Q.jsx)(`dt`,{className:`font-medium text-foreground`,children:`Runner`}),(0,Q.jsx)(`dd`,{className:`min-w-0 break-all font-mono text-[12px]`,children:r}),i?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`dt`,{className:`font-medium text-foreground`,children:`Account`}),(0,Q.jsx)(`dd`,{"data-slot":`agent-badge-account`,className:`min-w-0 break-all font-mono text-[12px]`,children:i})]}):null,(0,Q.jsx)(`dt`,{className:`font-medium text-foreground`,children:`Model`}),(0,Q.jsx)(`dd`,{className:`min-w-0 break-all font-mono text-[12px]`,children:a}),(0,Q.jsx)(`dt`,{className:`font-medium text-foreground`,children:`Effort`}),(0,Q.jsx)(`dd`,{"data-slot":`agent-badge-effort`,className:`min-w-0 break-all font-mono text-[12px]`,children:o}),s?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`dt`,{className:`font-medium text-foreground`,children:`Identity`}),(0,Q.jsx)(`dd`,{"data-slot":`agent-badge-identity`,className:`min-w-0 break-all font-mono text-[12px]`,children:s})]}):null]})}function Ko({run:e,available:t}){if(!e.automation)return null;let n=`inline-flex min-h-11 items-center rounded-sm text-[13px] font-medium md:min-h-8`;return(0,Q.jsxs)(`p`,{className:`mt-2 text-[13px] text-muted-foreground`,children:[`Launched by`,` `,t?(0,Q.jsx)(q,{to:`/automations/${encodeURIComponent(e.automation.automationId)}/log`,className:a(n,`text-foreground underline underline-offset-2`),children:`Automation`}):(0,Q.jsx)(`span`,{"data-slot":`automation-origin`,title:`Automations are off on this server (CEZ_AUTOMATIONS)`,className:n,children:`Automation`})]})}function qo({steps:e,decorative:t=!1}){let n=La(e[Va(e)].status),r=`size-4 shrink-0`;switch(n){case`active`:return(0,Q.jsx)(qe,{...t?{"aria-hidden":!0}:{role:`status`,"aria-label":`Step running`},"data-slot":`workflow-glyph`,"data-visual":n,className:a(r,`animate-spin stroke-pending motion-reduce:animate-none`)});case`failed`:return(0,Q.jsx)(M,{"aria-hidden":!0,"data-slot":`workflow-glyph`,"data-visual":n,className:a(r,`text-danger`)});case`pending`:return(0,Q.jsx)(le,{"aria-hidden":!0,"data-slot":`workflow-glyph`,"data-visual":n,className:a(r,`text-soft-foreground`)});case`done`:return(0,Q.jsx)(x,{"aria-hidden":!0,"data-slot":`workflow-glyph`,"data-visual":n,className:a(r,`text-success`)})}}function Jo(e,t,n){return`${e.header}: ${n?.trim()||t.join(`, `)}`}function Yo({ask:e,run:t,onShowOrigin:n}){let r=e.context?(0,Q.jsx)(Zo,{text:e.context}):null;if(e.resolved)return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[r,(0,Q.jsxs)(gr,{role:`user`,"data-slot":`ask-card`,"data-resolved":`true`,children:[(0,Q.jsx)(`span`,{className:`text-soft-foreground`,children:e.closed===`finish`?`Closed when the task finished`:e.closed===`superseded`?`Closed when the worker went on`:e.answeredBy===`parent`?`Answered by parent`:`Answered`}),(0,Q.jsx)(Oi,{ask:e})]})]});let i=e.placement===`pinned`&&n?n:void 0;return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[r,e.routedToParent?(0,Q.jsx)(Qo,{ask:e,onShowOrigin:i}):(0,Q.jsx)($o,{ask:e,run:t,onShowOrigin:i})]})}function Xo({onShowOrigin:e}){return(0,Q.jsx)(s,{type:`button`,variant:`ghost`,size:`sm`,"data-slot":`ask-show-origin`,className:`mbs-2 min-h-11 min-w-11 px-2 text-xs font-medium text-muted-foreground underline underline-offset-4`,onClick:e,children:`Show where it was asked`})}function Zo({text:e}){return(0,Q.jsx)(gr,{role:`agent`,children:(0,Q.jsx)(`div`,{"data-slot":`ask-context`,role:`region`,"aria-label":`Context`,className:`break-words text-sm text-foreground`,children:(0,Q.jsx)(Jt,{breaks:!0,children:e})})})}function Qo({ask:e,onShowOrigin:t}){return(0,Q.jsxs)(`div`,{"data-slot":`ask-card`,"data-resolved":`false`,"data-pinned":e.placement===`pinned`?`true`:void 0,"data-routed":`parent`,className:`rounded-lg border border-border bg-card px-4 pt-3.5 pb-3.5`,children:[(0,Q.jsx)(`div`,{className:`mb-2.5 flex items-center gap-2`,children:(0,Q.jsx)(`span`,{className:`text-xs font-medium text-link-foreground`,children:`The agent is asking its parent`})}),(0,Q.jsx)(`div`,{className:`flex flex-col gap-3`,children:e.questions.map((e,t)=>(0,Q.jsxs)(`div`,{role:`group`,"aria-label":e.question,children:[(0,Q.jsx)(`div`,{className:`mb-0.5 flex items-center gap-2`,children:(0,Q.jsx)(`span`,{className:`rounded-md bg-muted px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-wide text-muted-foreground`,children:e.header})}),(0,Q.jsx)(`p`,{className:`mb-1.5 break-words text-sm font-semibold text-foreground`,children:e.question}),e.options?(0,Q.jsx)(`ul`,{className:`flex list-disc flex-col gap-0.5 pl-5 text-[13px] text-muted-foreground`,children:e.options.map(e=>(0,Q.jsxs)(`li`,{className:`break-words`,children:[(0,Q.jsx)(`span`,{className:`text-foreground`,children:e.label}),e.description?(0,Q.jsxs)(`span`,{children:[`: `,e.description]}):null]},e.label))}):(0,Q.jsx)(`p`,{"data-slot":`ask-open-routed`,className:`text-[13px] text-muted-foreground`,children:`Open question: answered in words, with no options.`})]},e.id??t))}),(0,Q.jsxs)(`p`,{"data-slot":`ask-routed-hint`,className:`mt-3 text-xs text-muted-foreground`,children:[`Routed to parent: answer it in the`,` `,e.parentRunId?(0,Q.jsx)(q,{to:`/tasks/${e.parentRunId}`,className:`font-medium text-foreground underline underline-offset-4`,children:`parent task`}):`parent task`,`.`]}),t?(0,Q.jsx)(Xo,{onShowOrigin:t}):null]})}function $o({ask:e,run:t,onShowOrigin:n}){let r=Dt(t),i=r.blockedBy!==void 0,a=e.questions,o=a.length===1&&a[0]?.options!==void 0&&a[0]?.multiSelect!==!0,[s,c]=(0,Z.useState)({}),[l,u]=(0,Z.useState)({}),d=(e,t)=>c(n=>({...n,[e]:t})),f=e=>u(t=>{if(t[e]===void 0)return t;let n={...t};return delete n[e],n}),p=e=>{d(e,[]),u(t=>({...t,[e]:t[e]??``}))},m=a.some((e,t)=>!e.options||l[t]!==void 0),h=a.every((e,t)=>(s[t]?.length??0)>0||!!l[t]?.trim()),g=()=>void r.send(a.map((e,t)=>Jo(e,s[t]??[],l[t])).join(`
|
|
9
|
+
`)),_=(0,Z.useRef)(null),v=(0,Z.useRef)({selections:s,otherAnswers:l,sendAll:g,canSend:!r.isPending&&!i});v.current={...v.current,selections:s,otherAnswers:l,sendAll:g,canSend:!r.isPending&&!i};let y=xt(),b=y?.kind===`answer`&&y.runId===t.id&&y.askRequestId===e.id?y.answers:void 0;(0,Z.useEffect)(()=>{let n=(e,t)=>{v.current={...v.current,selections:e,otherAnswers:t},c(e),u(t)};return tn.registerAskCard({runId:t.id,requestId:e.id,headers:a.map(e=>e.header),read:()=>({selections:v.current.selections,otherAnswers:v.current.otherAnswers}),apply:(e,t={reveal:!0})=>{let{selections:r,otherAnswers:i}=v.current,o={...r},s={...i};for(let t of e){let e=a[t.question];e&&(t.kind===`option`&&e.options?(o[t.question]=e.multiSelect===!0?t.labels:t.labels.slice(0,1),delete s[t.question]):t.kind===`other`&&(o[t.question]=[],s[t.question]=t.text))}n(o,s),t.reveal&&_.current?.scrollIntoView?.({block:`nearest`})},restore:e=>n(e.selections,e.otherAnswers),unanswered:()=>a.flatMap((e,t)=>(v.current.selections[t]?.length??0)>0||v.current.otherAnswers[t]?.trim()?[]:[t]),send:()=>v.current.canSend?(v.current.sendAll(),!0):!1})},[t.id,e.id]);let x=r.mode===`resume`;return(0,Q.jsxs)(`div`,{ref:_,"data-slot":`ask-card`,"data-resolved":`false`,"data-pinned":e.placement===`pinned`?`true`:void 0,"data-delivery":r.mode,"data-voice-proposal":b?`true`:void 0,className:`rounded-lg border border-accent-strong/25 bg-accent-strong/[0.04] [html:not(.light)_&]:bg-card px-4 pt-3.5 pb-3.5`,children:[(0,Q.jsx)(`div`,{className:`mb-2.5 flex items-center gap-2`,children:(0,Q.jsx)(`span`,{className:`text-xs font-medium text-link-foreground`,children:`The agent is asking`})}),(0,Q.jsx)(`div`,{className:`flex flex-col gap-4`,children:a.map((e,t)=>(0,Q.jsx)(ts,{question:e,disabled:r.isPending||i,selected:s[t]??[],isOther:l[t]!==void 0,otherAnswer:l[t]??``,voiceFilled:b?.some(e=>e.question===t)??!1,onSelect:n=>{i||(f(t),o&&!b?r.send(Jo(e,n)):d(t,n))},onOtherToggle:()=>{i||(l[t]===void 0?p(t):f(t))},onOtherChange:e=>u(n=>({...n,[t]:e}))},e.id??t))}),(0,Q.jsx)(es,{oneTap:o,hasOtherAnswer:m,resuming:x,disabled:r.isPending||i||!h,questionCount:a.length,onSend:g}),r.blockedBy===`provider`?(0,Q.jsxs)(`div`,{"data-slot":`ask-provider-gate`,className:`mt-3 flex flex-wrap items-center gap-1.5 text-xs text-muted-foreground`,children:[(0,Q.jsx)(`span`,{children:r.reason}),(0,Q.jsx)(q,{to:`/settings/agents#providers`,className:`font-medium text-foreground underline underline-offset-4`,children:`Configure providers`})]}):null,r.blockedBy===`no-session`?(0,Q.jsx)(`p`,{"data-slot":`ask-no-session`,className:`mt-3 text-xs text-muted-foreground`,children:r.reason}):null,r.error?(0,Q.jsx)(`p`,{"data-slot":`ask-error`,role:`alert`,className:`mt-3 text-xs text-danger`,children:r.error}):null,n?(0,Q.jsx)(Xo,{onShowOrigin:n}):null]})}function es({oneTap:e,hasOtherAnswer:t,resuming:n,disabled:r,questionCount:i,onSend:a}){return e&&!t?n?(0,Q.jsx)(`p`,{"data-slot":`ask-resume-hint`,className:`mbs-3 text-[11px] text-soft-foreground`,children:`The session has ended — your answer reopens it and goes to the agent.`}):null:(0,Q.jsxs)(`div`,{className:`mbs-3 flex items-center gap-2.5`,children:[(0,Q.jsx)(s,{size:`sm`,className:`min-h-11`,disabled:r,onClick:a,children:n?`Send answer & reopen`:`Send answer`}),(0,Q.jsx)(`span`,{"data-slot":n?`ask-resume-hint`:`ask-hint`,className:`text-[11px] text-soft-foreground`,children:n?`the session has ended — sending reopens it`:t?`${i>1?`answer each question above`:`enter your answer above`} — or type a reply below`:`${i>1?`answer each question`:`pick one or more`} — or type a reply below`})]})}function ts({question:e,disabled:t,selected:n,isOther:r,otherAnswer:i,voiceFilled:o,onSelect:c,onOtherToggle:l,onOtherChange:u}){let d=(0,Z.useId)(),f=e.options,p=f!==void 0&&e.multiSelect===!0,m=e=>{if(!p){c([e]);return}c(n.includes(e)?n.filter(t=>t!==e):[...n,e])};return(0,Q.jsxs)(`div`,{"data-slot":`ask-question`,role:`group`,"aria-label":e.question,"data-voice-filled":o?`true`:void 0,children:[(0,Q.jsxs)(`div`,{className:`mb-0.5 flex items-center gap-2`,children:[(0,Q.jsx)(`span`,{className:`rounded-md bg-accent-strong px-1.5 py-0.5 text-[12px] font-semibold uppercase tracking-wide text-accent-strong-foreground`,children:e.header}),p?(0,Q.jsx)(`span`,{className:`ml-auto text-[11px] text-soft-foreground`,children:`select all that apply`}):null]}),(0,Q.jsx)(`p`,{className:`mb-2.5 break-words text-sm font-semibold text-foreground`,children:e.question}),f?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:`flex flex-col gap-2`,children:f.map(e=>{let r=n.includes(e.label);return(0,Q.jsxs)(`button`,{type:`button`,disabled:t,"aria-pressed":r,onClick:()=>m(e.label),className:a(`flex min-h-11 w-full flex-col gap-0.5 rounded-md border px-3.5 py-2.5 text-left transition-colors`,`hover:border-accent-strong/50 hover:bg-accent-strong/[0.06] [html:not(.light)_&]:hover:bg-card disabled:pointer-events-none disabled:opacity-50`,r?`border-accent-strong/60 bg-accent-strong/[0.06] [html:not(.light)_&]:bg-card`:`border-border bg-card`),children:[(0,Q.jsxs)(`span`,{className:`flex min-w-0 items-start gap-2 text-[14px] font-semibold text-foreground`,children:[p?(0,Q.jsx)(`span`,{"aria-hidden":!0,className:a(`flex size-4 shrink-0 items-center justify-center rounded border text-[12px]`,r?`border-accent-strong bg-accent-strong text-accent-strong-foreground`:`border-soft-foreground`),children:r?`✓`:``}):null,(0,Q.jsx)(`span`,{className:`min-w-0 break-words`,children:e.label})]}),e.description?(0,Q.jsx)(`span`,{className:`min-w-0 break-words text-xs text-muted-foreground`,children:e.description}):null]},e.label)})}),(0,Q.jsxs)(`div`,{className:`mt-2`,children:[(0,Q.jsx)(s,{type:`button`,variant:`outline`,"aria-pressed":r,"aria-expanded":r,"aria-controls":r?d:void 0,disabled:t,onClick:l,className:a(`w-full justify-start text-left`,r&&`border-accent-strong/60 bg-accent-strong/[0.06] [html:not(.light)_&]:bg-card`),children:`Other`}),r?(0,Q.jsxs)(`div`,{className:`mt-2.5`,children:[(0,Q.jsx)(`label`,{htmlFor:d,className:`mb-1.5 block text-xs font-medium text-foreground`,children:`Your answer`}),(0,Q.jsx)(Lt,{id:d,rows:2,value:i,disabled:t,onChange:e=>u(e.target.value),className:`bg-card`})]}):null]})]}):(0,Q.jsxs)(`div`,{children:[(0,Q.jsx)(`label`,{htmlFor:d,className:`mb-1.5 block text-xs font-medium text-foreground`,children:`Your answer`}),(0,Q.jsx)(Lt,{id:d,rows:2,value:i,disabled:t,onChange:e=>u(e.target.value),className:`bg-card`})]})]})}var ns=2e3;function rs(e){let t=0,n=0;for(let r of e)typeof r.seq==`number`&&(r.type===`session.ended`&&r.seq>t&&(t=r.seq),(r.type===`session.started`||r.type===`step-start`&&r.kind===`agent`)&&r.seq>n&&(n=r.seq));return t>n?t:0}function is(e){let t=0,n=0;for(let r of e)typeof r.seq==`number`&&(r.type===`turn-end`&&r.seq>t&&(t=r.seq),(r.type===`turn.started`||r.type===`session.started`||r.type===`user-message`||r.type===`step-start`&&r.kind===`agent`)&&r.seq>n&&(n=r.seq));return t>n?t:0}function as(e,t){let n=v(),r=(0,Z.useMemo)(()=>rs(t),[t]),i=(0,Z.useMemo)(()=>is(t),[t]),a=e?.id,o=e?.status;(0,Z.useEffect)(()=>{if(!(r!==0&&(o===`running`||o===`waiting`))&&!(i!==0&&o===`running`)||a===void 0)return;let e=setTimeout(()=>{n.invalidateQueries({queryKey:G.runs.detail(a)}),n.invalidateQueries({queryKey:G.runs.list()})},ns);return()=>clearTimeout(e)},[r,i,a,o,n])}function os(e){let t=e.querySelector(`[data-slot="ask-origin"]`);return t&&(t.tabIndex=-1),t}function ss({pendingAskId:e,askSeq:t,rows:n,history:r,jumpToRow:i}){let[a,o]=(0,Z.useState)(void 0),s=(0,Z.useCallback)(()=>o(e),[e]),c=r?.visibleEvents,l=t!==void 0&&(c?.some(({seq:e})=>e===t)??!1),u=r?.hasOlder??!1,d=r?.isFetchingOlder??!1,f=r?.olderError,p=r?.loadOlder;return(0,Z.useEffect)(()=>{if(a===void 0)return;if(a!==e){o(void 0);return}let r=Yi(n,a,`origin`);if(r){o(void 0),i(r.key,r.index,os);return}if(!(p!==void 0&&u&&f===void 0&&t!==void 0&&!l)){o(void 0);return}d||p().catch(()=>{})},[a,e,n,c,l,u,d,f,p,t,i]),{reveal:s,seeking:a!==void 0&&a===e}}function cs(){let e=(0,Z.useRef)(null);return(0,Z.useLayoutEffect)(()=>{let t=e.current,n=t?.closest(`[data-slot="main"]`),r=t?.querySelector(`[data-slot="run-header"]`),i=t?.querySelector(`[data-slot="thread-dock"]`);if(!n||!r||!i)return;let a=()=>{n.style.setProperty(`--thread-viewport-height`,`${n.clientHeight}px`),n.style.setProperty(`--thread-header-height`,`${r.getBoundingClientRect().height}px`),n.style.setProperty(`--thread-footer-height`,`${i.getBoundingClientRect().height}px`)};a();let o=new ResizeObserver(a);return o.observe(r),o.observe(i),o.observe(n),()=>{o.disconnect(),n.style.removeProperty(`--thread-header-height`),n.style.removeProperty(`--thread-footer-height`),n.style.removeProperty(`--thread-viewport-height`)}},[]),e}function ls(){let{id:e}=ne(),t=Ne(e),n=ht(e),r=t.data?.status,i=(0,Z.useMemo)(()=>tt(n.visibleEvents,{activeTurn:r===`running`}),[n.visibleEvents,r]),a=(0,Z.useMemo)(()=>tt(n.currentEvents,{activeTurn:r===`running`}),[n.currentEvents,r]),o=(0,Z.useRef)(void 0),c=(0,Z.useCallback)(e=>{o.current=e},[]),{mutate:l}=Ie();if((0,Z.useEffect)(()=>{t.data&&o.current!==t.data.id&&Ft(t.data)&&l(t.data.id)},[l,t.data?.id,t.data?.status,t.data?.finishedAt,t.data?.seenAt,t.data?.archived]),as(t.data,n.visibleEvents),t.isPending)return(0,Q.jsx)(ft,{});if(t.isError){let e=t.error instanceof j&&t.error.status===404;return(0,Q.jsx)(`div`,{"data-route":`task-thread`,className:`flex min-h-full flex-col`,children:(0,Q.jsx)(Ae,{icon:e?(0,Q.jsx)(ot,{}):(0,Q.jsx)(un,{}),tone:e?`neutral`:`danger`,title:e?`Task not found`:`Could not load this task`,subtitle:e?`No run has this id. It may have been deleted, or the link is from another machine.`:t.error.message,actions:(0,Q.jsx)(s,{asChild:!0,variant:`outline`,children:(0,Q.jsx)(q,{to:`/`,children:`Back to tasks`})})})})}return n.isPending?(0,Q.jsx)(ft,{}):(0,Q.jsx)(us,{run:t.data,thread:i,currentThread:a,history:n,onMarkedUnread:c})}function us({run:e,thread:t,currentThread:n=t,history:r,onMarkedUnread:i}){Ke();let a=he(),o=(0,Z.useRef)(null),s=xt(),c=s?.kind===`tell`&&s.runId===e.id;(0,Z.useEffect)(()=>tn.registerComposer({runId:e.id,getDraft:()=>o.current?.getDraft()??``,setDraft:e=>o.current?.setDraft(e)??!1,clearVoiceDraft:e=>o.current?.clearVoiceDraft(e)??!0,submit:()=>o.current?.submit()??!1}),[e.id]);let{pendingAsk:l,transcriptAsk:d,pendingAskId:f,historyLoading:m}=ds(r,n);(0,Z.useEffect)(()=>{m||tn.syncPendingAsk(e.id,f)},[e.id,f,m]),(0,Z.useEffect)(()=>()=>tn.leaveTask(e.id),[e.id]);let g=u(e),_=et(e.status,e.error),v=De(e),y=!v&&e.status!==`queued`,b=e.status===`queued`,x=ni(e),S=ka(e),C=Sa(e.id),w=d||p(e),{hasContinuation:T,continuable:E}=fs(v,b,x),[D,O]=(0,Z.useState)(void 0),[k,A]=(0,Z.useState)(e.id);k!==e.id&&(A(e.id),O(void 0));let j=(0,Z.useMemo)(()=>D===void 0?void 0:_i(n.turns,D,y),[n.turns,D,y]),M=(0,Z.useMemo)(()=>D===void 0?[]:vi(n.turns,D),[n.turns,D]),N=me(e.id),ee=Dt(e),{providerBlocked:P,providerReason:F}=ps(v,Wt(e),T,x),{mutateAsync:I}=ye(e.id),{mutateAsync:L}=ue(e.id),{mutateAsync:R}=Te(e.id),z=(0,Z.useMemo)(()=>b?{onEditTask:async e=>{await I({task:e})},onEditMessage:(e,t)=>L({msgId:e,message:{text:t}}).then(()=>void 0),onRemoveMessage:e=>R(e).then(()=>void 0)}:void 0,[b,I,L,R]),B=m?void 0:f??null,V=(0,Z.useMemo)(()=>Ji(e,t,n,B),[e,t,n,B]),H=(0,Z.useMemo)(()=>Qi(V,e.id),[V,e.id]),te=e.delegation?.role===`root`||e.delegation?.role===`worker`,ne=ve(e.id,{enabled:te}),re=(0,Z.useMemo)(()=>cr(e,a.data,ne.data?.titles),[e,a.data,ne.data]),ie=(0,Z.useMemo)(()=>sr(e,a.data),[e,a.data]),ae=(0,Z.useCallback)(t=>(0,Q.jsx)(Si,{permission:t,runId:e.id,sessionOpen:v}),[e.id,v]),oe=(0,Z.useMemo)(()=>{if(z===void 0)return;let t={task:{onEdit:z.onEditTask,editLabel:`Edit the prompt`}};for(let n of e.queuedMessages??[])t[`queued:${n.id}`]={onEdit:e=>z.onEditMessage(n.id,e),onRemove:()=>z.onRemoveMessage(n.id)};return t},[z,e.queuedMessages]),se=Se(e,xe()),{search:ce}=h(),le=zn(ce,H.length),U=zi(`${e.id}:main`,{onLoadOlder:r?.hasOlder?r.loadOlder:void 0,onJumpToLatest:r?.jumpToLatest,rowKeys:H.map(({key:e})=>e)}),{pinnedAsk:de,pendingQuestions:fe}=ms(V),pe=ss({pendingAskId:f,askSeq:r?l?.seq:void 0,rows:H,history:r,jumpToRow:U.jumpToRow}),W=(0,Z.useRef)(f);m||(W.current=f);let ge=(0,Z.useRef)({rows:H,jumpToRow:U.jumpToRow,reveal:pe.reveal});ge.current={rows:H,jumpToRow:U.jumpToRow,reveal:pe.reveal};let _e=(0,Z.useCallback)(t=>t.placement===`origin`?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[t.resolved&&t.context?(0,Q.jsx)(Zo,{text:t.context}):null,t.resolved?null:(0,Q.jsx)(Fi,{onGoToQuestion:()=>{let{rows:e,jumpToRow:n}=ge.current,r=Yi(e,t.id,`pinned`);r&&n(r.key,r.index,e=>Mi(e))}})]}):(0,Q.jsx)(Yo,{ask:t,run:e,onShowOrigin:()=>ge.current.reveal()}),[e]);return Ye(U.restickIfStuck),(0,Q.jsxs)(`div`,{ref:cs(),"data-route":`task-thread`,"data-run-id":e.id,className:`flex min-h-full flex-col`,children:[(0,Q.jsx)(Ge,{run:e,onMarkedUnread:()=>i?.(e.id)}),(0,Q.jsx)(hs,{run:e,thread:t,history:r,footer:_,issueUrl:se,sections:V,renderAsk:_e,renderPermission:ae,messageActions:oe,scroll:U,mode:le,taskTitles:re,recipientBackends:ie}),(0,Q.jsx)(Oa,{status:e.status}),(0,Q.jsx)(sa,{runId:e.id,renderAsk:_e,renderPermission:ae,agent:j,entries:M,taskTitles:re,recipientBackends:ie,onClose:()=>O(void 0)}),(0,Q.jsx)(gs,{run:e,thread:t,currentThread:n,scroll:U,pendingQuestions:fe,onJump:()=>{let e=fe>0?de?.id:void 0;U.jumpToLatest(e===void 0?void 0:Ni(e,()=>W.current===e))},onOpenWorker:O,sessionOpen:v,attention:g,queued:b,continuable:E,continueAction:x,composerRef:o,tellProposed:c,stopAction:S,finishAction:C,needsAnswer:w,sendMessage:N,reply:ee,providerBlocked:P,providerReason:F}),(0,Q.jsx)(`div`,{"data-slot":`thread-tail-anchor`,"aria-hidden":`true`,className:`h-px shrink-0 md:hidden`})]})}function ds(e,t){let n=e?$e(e.currentEvents):void 0;return{pendingAsk:n,transcriptAsk:e?n!==void 0:t.turns.some(e=>e.items.some(e=>e.kind===`ask`&&!e.resolved)),pendingAskId:e?n?.requestId:t.turns.flatMap(e=>e.items).reverse().find(e=>e.kind===`ask`&&!e.resolved)?.id,historyLoading:e!==void 0&&(e.isPending||e.contextPending)}}function fs(e,t,n){let r=!e&&!t&&n.available;return{hasContinuation:r,continuable:r&&n.canContinue}}function ps(e,t,n,r){let i=e&&!t.usable,a=n&&!r.canContinue;return{providerBlocked:i||a,providerReason:i?t.reason:r.reason}}function ms(e){let t=e.at(-1),n=t?.id===`pending-ask`?t.entries[0]:void 0;return{pinnedAsk:n,pendingQuestions:n?.kind===`ask`?n.questions.length:0}}function hs({run:e,thread:t,history:n,footer:r,issueUrl:o,sections:s,renderAsk:c,renderPermission:l,messageActions:u,scroll:d,mode:f,taskTitles:p,recipientBackends:m}){return(0,Q.jsxs)(`div`,{"data-slot":`session-conversation`,className:`mx-auto flex w-full max-w-[var(--measure)] flex-1 flex-col gap-2.5 px-[18px] py-3 md:gap-3.5 md:px-16 md:py-5`,children:[n?(0,Q.jsx)(bs,{hasOlder:n.hasOlder,loading:n.isFetchingOlder,error:n.olderError,fallback:n.fallback,retainedPages:n.retainedPages,onLoad:d.loadOlder}):null,(0,Q.jsx)($i,{runId:e.id,viewId:`main`,sections:s,mode:`document`,renderAsk:c,renderPermission:l,messageActions:u,scrollControls:d,renderMode:f,taskTitles:p,recipientBackends:m}),t.turns.length===0?e.status===`queued`?(0,Q.jsx)(xs,{run:e}):(0,Q.jsx)(`p`,{"data-slot":`thread-empty`,className:`py-6 text-center text-xs text-soft-foreground`,children:`No session events yet.`}):null,e.status===`running`?(0,Q.jsx)(Vr,{}):null,r&&r.state===`closed`?(0,Q.jsxs)(`div`,{"data-slot":`thread-footer`,"data-state":r.state,className:a(`mt-auto flex items-center gap-2 border-t border-border pt-3 text-xs`,r.tone===`danger`?`text-danger`:`text-soft-foreground`),children:[r.label,i(Ce(e))?(0,Q.jsx)(`a`,{"data-slot":`pr-link`,href:Ce(e),target:`_blank`,rel:`noopener noreferrer`,className:`font-medium text-foreground underline-offset-2 hover:underline`,children:`PR ↗`}):null,i(o)?(0,Q.jsx)(`a`,{"data-slot":`issue-link`,href:o,target:`_blank`,rel:`noopener noreferrer`,className:`font-medium text-foreground underline-offset-2 hover:underline`,children:`Issue ↗`}):null]}):null,e.status===`review`?(0,Q.jsx)(Ca,{run:e}):null]})}function gs({run:e,thread:t,currentThread:n,scroll:r,pendingQuestions:i,onJump:a,onOpenWorker:o,sessionOpen:s,attention:c,queued:l,continuable:u,continueAction:d,composerRef:f,tellProposed:p,stopAction:m,finishAction:h,needsAnswer:g,sendMessage:_,reply:v,providerBlocked:y,providerReason:b}){return(0,Q.jsxs)(`div`,{"data-slot":`thread-dock`,className:`relative z-10 bg-background pt-1 pb-2 md:pt-1.5 md:pb-4`,children:[r.pillVisible?(0,Q.jsx)(`div`,{"data-slot":`thread-jump`,className:`pointer-events-none z-30 flex justify-center`,children:(0,Q.jsx)(Ui,{pendingQuestions:i,onJump:a})}):null,(0,Q.jsxs)(`div`,{"data-slot":`thread-footer-content`,className:`mx-auto flex w-full max-w-[var(--measure)] flex-col gap-1.5 px-[14px] md:gap-2.5 md:px-16`,children:[(0,Q.jsx)(Eo,{run:e,currentThread:n,onOpenWorker:o,readerScroll:r.subscribeReaderScroll},e.id),(0,Q.jsx)(fn,{run:e}),e.status===`waiting`&&s?(0,Q.jsxs)(`div`,{"data-slot":`paused-hint`,className:`flex items-center gap-2 px-1 text-xs text-muted-foreground`,children:[(0,Q.jsx)(Je,{tone:c.tone,shape:c.shape,pulse:c.pulse}),c.bucket===`permission`?`Choose an approval option above to continue`:c.bucket===`waiting`?`The agent is paused, waiting for your reply`:`${c.label.charAt(0).toUpperCase()}${c.label.slice(1)} — you can send a message to resume`]}):null,l?(0,Q.jsxs)(`div`,{"data-slot":`queued-hint`,className:`flex items-center gap-2 px-1 text-xs text-muted-foreground`,children:[(0,Q.jsx)(Je,{tone:`neutral`,shape:`ring`}),`Messages you add now are folded into the prompt before the run starts.`]}):null,u&&d.startsNewConversation?(0,Q.jsx)(`p`,{className:`px-1 text-xs text-muted-foreground`,role:`status`,children:`Starts a new agent conversation.`}):null,(0,Q.jsx)(_s,{run:e,thread:t,composerRef:f,tellProposed:p,stopAction:m,finishAction:h,attention:c,needsAnswer:g,continuable:u,continueAction:d,queued:l,sendMessage:_,reply:v,providerBlocked:y,providerReason:b,sessionOpen:s})]})]})}function _s({run:e,thread:t,composerRef:n,tellProposed:r,stopAction:i,finishAction:a,attention:o,needsAnswer:s,continuable:c,continueAction:l,queued:u,sendMessage:d,reply:f,providerBlocked:p,providerReason:m,sessionOpen:h}){return(0,Q.jsx)(Ct,{ref:n,voiceProposal:r,onStop:jt(e).cancel?i.stop:void 0,onFinish:Ut(e)?()=>a.mutateAsync().catch(()=>void 0):void 0,finishing:a.isPending,secondaryAction:Et(e)?(0,Q.jsx)(Be,{run:e,compactOnMobile:!0}):void 0,stopOnEmpty:vs(e,o,s),stopping:i.stopping,retainDraftUntilSuccess:!0,compactFeedback:!0,pendingLabel:c?`Continuing…`:`Sending…`,failureHint:`Your draft is kept. Check the task status and connection, then retry.`,sessionControls:c?l.pills:void 0,onSubmit:c?(e,t)=>l.continueWith(e,t):u?(e,t)=>d.mutateAsync({text:e,images:t}):async(e,t)=>{let n=await f.send(e,t);if(n!==void 0)throw Error(n)},disabled:p||!h&&!u&&!c,disabledReason:p?m:`Session closed — no session to resume.`,footerEnd:p&&!l.providerPending?(0,Q.jsx)(q,{to:`/settings/agents#providers`,className:`text-xs font-medium text-foreground underline underline-offset-4`,children:`Configure providers`}):void 0,allowEmptySubmit:c&&!s,emptySubmitLabel:c&&!s?`Continue`:void 0,placeholder:ys(e,u,c),autocompleteSkills:!0,quickReplies:!0,getMentionCandidates:()=>rt(t)})}function vs(e,t,n){return e.status===`queued`||e.status===`running`||e.status===`waiting`&&t.bucket===`none`&&!n}function ys(e,t,n){return t?`Add to the prompt — sent when the run starts…`:n?`Continue — add a prompt, or send to just reopen the session…`:e.status===`waiting`?`Reply — / for skills, @ for files…`:`Message the agent — / for skills, @ for files…`}function bs({hasOlder:e,loading:t,error:n,fallback:r,retainedPages:i,onLoad:a}){return r?(0,Q.jsx)(`p`,{"data-slot":`history-fallback`,className:`text-center text-xs text-soft-foreground`,role:`status`,children:`Progressive history is unavailable; showing the complete session.`}):!e&&!n?(0,Q.jsxs)(`div`,{"data-slot":`history-start`,className:`flex items-center gap-3 text-[11px] text-soft-foreground`,children:[(0,Q.jsx)(`span`,{"aria-hidden":!0,className:`h-px flex-1 bg-border`}),`Start of session`,(0,Q.jsx)(`span`,{"aria-hidden":!0,className:`h-px flex-1 bg-border`})]}):(0,Q.jsxs)(`div`,{"data-slot":`history-boundary`,"data-retained-pages":i,"aria-busy":t,className:`flex min-h-8 items-center justify-center text-xs text-muted-foreground`,children:[(0,Q.jsx)(`button`,{type:`button`,onClick:a,disabled:t,className:`rounded-md px-3 py-1.5 font-medium hover:bg-muted disabled:cursor-wait`,children:t?`Loading 100 earlier items…`:n?`Couldn’t load earlier items · Retry`:`Load 100 earlier items`}),(0,Q.jsx)(`span`,{className:`sr-only`,"aria-live":`polite`,children:t?`Loading earlier session history`:n||``})]})}function xs({run:e}){let t=qt(he().data??[],e.id);return(0,Q.jsxs)(`div`,{"data-slot":`queued-state`,className:`flex flex-col items-center gap-1.5 py-10 text-center`,children:[(0,Q.jsx)(Je,{tone:`neutral`,shape:`ring`}),(0,Q.jsxs)(`p`,{className:`text-[13px] font-medium`,children:[`Waiting for a free agent slot`,t===void 0?``:` — #${t} in queue`]}),(0,Q.jsxs)(`p`,{className:`text-xs text-soft-foreground`,children:[e.workflow,` · starts automatically when a slot frees up`]})]})}export{ls as TaskThreadRoute};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{t as e}from"./react-runtime-CCIEwYL0.js";import{E as t,t as n}from"./button-CeupvoKG.js";import{$i as r,ea as i}from"./dropdown-menu-COj_J5wd.js";import{B as a,_ as o,f as s,g as c,h as l,m as ee}from"./live-protocol-Uce2NwEX.js";import{t as u}from"./createLucideIcon-BHp8sXmF.js";import{t as d}from"./app-window-CSHwDX9N.js";import{a as te,t as f}from"./status-dot-1PR0i69P.js";import{t as ne}from"./play-CmVAj_fu.js";import{Bt as re,ar as ie,mr as ae,zt as oe}from"./index-BOfE8pyD.js";var p=u(`rotate-ccw`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]),m=u(`server`,[[`rect`,{width:`20`,height:`8`,x:`2`,y:`2`,rx:`2`,ry:`2`,key:`ngkwjq`}],[`rect`,{width:`20`,height:`8`,x:`2`,y:`14`,rx:`2`,ry:`2`,key:`iecqi9`}],[`line`,{x1:`6`,x2:`6.01`,y1:`6`,y2:`6`,key:`16zg32`}],[`line`,{x1:`6`,x2:`6.01`,y1:`18`,y2:`18`,key:`nzw8ys`}]]),h=e(),g={registered:e=>e.server.answeredAtRegistration?{label:`Open`,run:!1}:{label:`Run and open`,run:!0},adopted:()=>({label:`Open`,run:!1}),starting:()=>({label:`Open`,run:!1}),up:()=>({label:`Open`,run:!1}),stalled:()=>({label:`View`,run:!1}),exited:()=>({label:`Start again`,run:!0}),stopped:()=>({label:`Start again`,run:!0}),unavailable:()=>void 0};function _(e){let{text:t,...n}=re(e),r={...n,status:t},i=g[e.state](e);return i?{...r,action:i}:r}var v={"Run and open":ne,Open:d,View:ae,"Start again":p};function y({entry:e,inPreview:n,onOpen:r}){let{server:i}=e,a=_(e),o=e.state===`unavailable`,s=r?a.action:void 0,c=oe(i.command),l=te(i.registeredAt);return(0,h.jsxs)(`div`,{"data-slot":`preview-server-card`,"data-state":e.state,className:t(`min-w-0 rounded-lg border border-border bg-card px-3.5 py-3 text-sm`,o&&`text-muted-foreground`),children:[(0,h.jsxs)(`div`,{className:`mb-2 flex items-center justify-between gap-2 text-xs text-soft-foreground`,children:[(0,h.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5 font-mono`,children:[(0,h.jsx)(m,{className:`size-3.5 shrink-0`,"aria-hidden":`true`}),(0,h.jsx)(`span`,{className:`truncate`,children:`cezar_preview_serve`})]}),o?(0,h.jsx)(`span`,{children:`worktree removed`}):l?(0,h.jsxs)(`span`,{children:[l,` ago`]}):null]}),(0,h.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-x-3 gap-y-2`,children:[(0,h.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,h.jsx)(f,{tone:a.tone,shape:a.ring?`ring`:`filled`,pulse:a.pulse===!0,"aria-hidden":`true`}),(0,h.jsx)(`span`,{className:`font-semibold text-foreground`,children:i.label}),(0,h.jsxs)(`span`,{className:`font-mono text-muted-foreground`,children:[`:`,i.port]}),(0,h.jsx)(`span`,{className:`text-muted-foreground`,children:a.status})]}),(0,h.jsx)(se,{entry:e,inPreview:n,action:s,onOpen:r})]}),(0,h.jsxs)(`div`,{className:`mt-2.5 min-w-0 rounded-md bg-muted px-3 py-2 font-mono text-xs`,children:[(0,h.jsx)(`p`,{className:`break-words whitespace-pre-wrap text-foreground`,children:i.command}),i.cwd?(0,h.jsxs)(`p`,{className:`mt-1 flex gap-3 text-soft-foreground`,children:[(0,h.jsx)(`span`,{children:`cwd`}),(0,h.jsx)(`span`,{className:`break-all`,children:i.cwd})]}):null]}),s?.run?(0,h.jsx)(b,{icon:(0,h.jsx)(ie,{className:`size-3.5 shrink-0`,"aria-hidden":`true`}),children:`${s.label===`Start again`?`Starting again`:`Opening`} runs ${c} in this task's worktree, on the host.`}):null,o?(0,h.jsx)(b,{children:`The worktree this server ran in is gone. Register it again from a new task.`}):null]})}function se({entry:e,inPreview:t,action:r,onOpen:i}){let{server:a}=e,o=t&&r!==void 0&&!r.run,s=o?`In preview`:r?.label,c=o?d:r?v[r.label]:null;return r&&s&&c?(0,h.jsxs)(n,{variant:o||r.label===`View`||r.label===`Open`&&e.state===`starting`?`outline`:`contrast`,size:`sm`,className:`max-md:h-11 max-md:px-3.5`,onClick:()=>i?.({port:a.port,run:r.run}),children:[(0,h.jsx)(c,{"aria-hidden":`true`}),s]}):null}function b({icon:e,children:t}){return(0,h.jsxs)(`p`,{className:`mt-2.5 flex items-start gap-2 text-xs text-muted-foreground`,children:[e,(0,h.jsx)(`span`,{children:t})]})}var x=120;function S(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function C(e){let t=e.replace(/\s+/g,` `).trim();return t.length>x?`${t.slice(0,x-1)}…`:t}function w(e,...t){if(S(e))for(let n of t){let t=e[n];if(typeof t==`string`&&t.trim()!==``)return C(t)}}function ce(e){if(!S(e))return;let t=e.command;if(typeof t==`string`&&t.trim()!==``)return C(t);if(Array.isArray(t)){let e=t.filter(e=>typeof e==`string`);if(e.length>0)return C(e.join(` `))}}function le(e){if(!S(e)||!Array.isArray(e.changes))return[];let t=[];for(let n of e.changes)S(n)&&typeof n.path==`string`&&n.path.trim()!==``&&t.push(n.path);return t}function T(e){return w(e,`description`,`query`,`url`,`filePath`,`file_path`,`path`,`pattern`,`name`)}function E(e,t){return t?`${e} ${t}`:e}var ue=new Map([[`bash`,`execute`],[`commandexecution`,`execute`],[`edit`,`edit`],[`multiedit`,`edit`],[`write`,`edit`],[`notebookedit`,`edit`],[`filechange`,`edit`],[`read`,`read`],[`imageview`,`read`],[`glob`,`search`],[`grep`,`search`],[`webfetch`,`fetch`],[`websearch`,`fetch`],[`task`,`task`],[`agent`,`task`],[`skill`,`task`],[`todowrite`,`plan`],[`todolist`,`plan`],[`plan`,`plan`],[`taskcreate`,`plan`],[`taskupdate`,`plan`],[`tasklist`,`plan`],[`contextcompaction`,`other`],[`mcptoolcall`,`other`]]);function de(e,t){switch(e){case`write`:return{toolKind:`edit`,title:E(`Write`,w(t,`file_path`,`filePath`,`path`))};case`notebookedit`:return{toolKind:`edit`,title:E(`Edit`,w(t,`notebook_path`,`notebookPath`,`file_path`,`filePath`,`path`))};case`filechange`:{let e=le(t);return{toolKind:`edit`,title:E(`Edit`,e.length===1?e[0]:e.length>1?`${e.length} files`:void 0)}}default:return{toolKind:`edit`,title:E(`Edit`,w(t,`file_path`,`filePath`,`path`))}}}function fe(e,t){return e===`imageview`?{toolKind:`read`,title:E(`View image`,w(t,`path`))}:{toolKind:`read`,title:E(`Read`,w(t,`file_path`,`filePath`,`path`))}}function pe(e,t){return e===`webfetch`?{toolKind:`fetch`,title:E(`Fetch`,w(t,`url`))}:{toolKind:`fetch`,title:E(`Web search`,w(t,`query`))}}function me(e,t){if(e===`skill`){let e=w(t,`skill`,`name`,`command`);return{toolKind:`task`,title:e?`Skill: ${e}`:`Skill`,subtitle:w(t,`args`,`description`)}}let n=e===`agent`?`Agent`:`Task`,r=w(t,`subagent_type`,`subagentType`),i=w(t,`description`,`prompt`)??r;return{toolKind:`task`,title:i?`${n}: ${i}`:n,subtitle:i===r?void 0:r}}function he(e,t,n){if(t===`contextcompaction`)return{toolKind:`other`,title:`Compacted context`};if(t===`mcptoolcall`){let e=w(n,`server`),t=w(n,`tool`);return e&&t?{toolKind:`other`,title:`${e}.${t}`}:{toolKind:`other`,title:`MCP tool`,subtitle:T(n)}}if(t.startsWith(`mcp__`)){let t=e.split(`__`).filter(e=>e!==``);if(t.length>=3)return{toolKind:`other`,title:`${t[1]}.${t.slice(2).join(`__`)}`}}return{toolKind:`other`,title:typeof e==`string`&&e.trim()!==``?C(e):`Tool`,subtitle:T(n)}}function ge(e,t){let n=typeof e==`string`?e.toLowerCase():``;switch(ue.get(n)){case`execute`:return{toolKind:`execute`,title:E(`Ran`,ce(t)),subtitle:w(t,`description`)};case`edit`:return de(n,t);case`read`:return fe(n,t);case`search`:return{toolKind:`search`,title:E(`Search`,w(t,`pattern`,`query`)),subtitle:w(t,`path`)};case`fetch`:return pe(n,t);case`task`:return me(n,t);case`plan`:return{toolKind:`plan`,title:`Update plan`};default:return he(e,n,t)}}function _e(e,t){if(t.type===`ask.requested`&&typeof t.requestId==`string`&&a.safeParse({questions:t.questions}).success)return t;if(t.type===`human-input-delivered`||t.type===`human-ask-closed`){let n=(t.type===`human-input-delivered`?c:l).safeParse(t);if(n.success&&n.data.askSeq===e?.seq)return}return e}function D(e){if(!(e.type!==`ask.requested`||typeof e.requestId!=`string`))return{requestId:e.requestId,questions:e.questions,...e.context===void 0?{}:{context:e.context}}}function O(e){let t=D(e);return t&&{seq:e.seq,...t}}function k(e,t){let n=_e(e&&{type:`ask.requested`,seq:e.seq,ts:``},t);return n===t?O(t):n===void 0?void 0:e}function A(e){let t;for(let n of e)t=k(t,n);return t}function j(e){let t=Array.isArray(e.questions)?e.questions.filter(e=>typeof e==`object`&&!!e&&!Array.isArray(e)&&typeof e.header==`string`&&(e.options===void 0||Array.isArray(e.options))):[];if(t.length===0)return;let n=typeof e.context==`string`&&e.context!==``?e.context:void 0;return{id:e.requestId,questions:t,...n===void 0?{}:{context:n},askSeq:e.seq}}function M(){return{turns:[],itemsById:new Map,turnSeq:0,permissions:new Map,conversationEntries:new Map,outcomesByRequest:new Map,seenInputs:new Set,previewByPort:new Map,handedOff:!1}}function N(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function P(e){return typeof e==`string`?e:void 0}function F(e){let t=typeof e==`string`?new Date(e):void 0;return!t||Number.isNaN(t.getTime())?``:` · ${t.toLocaleTimeString(void 0,{hour:`2-digit`,minute:`2-digit`})}`}function I(e){if(!(typeof e!=`string`||e===``))return Number.isFinite(new Date(e).getTime())?e:void 0}var ve=new Set([`claude`,`codex`,`opencode`,`pi`,`cursor`,`omp`]);function ye(e){return typeof e==`string`&&ve.has(e)?e:void 0}function L(e,t){e.turnSeq+=1;let n={id:t===void 0?`turn-fallback-${e.turnSeq}`:`turn-seq-${t}`,entries:[],v2Items:!1};return e.turns.push(n),n}function R(e){return e.turns.at(-1)??L(e)}function z(e,t){R(e).entries.push({origin:`meta`,entry:t})}function B(e){for(let t of e.permissions.values())t.status===`pending`&&(t.status=`expired`)}function V(e,t){let n=P(e.stepId);return n===void 0?t:`${n}:${t}`}function be(e,t){t.v2Items=!0;for(let n of t.entries)n.origin===`v1`&&n.entry.kind===`tool`&&e.itemsById.delete(n.entry.id);t.entries=t.entries.filter(e=>!(e.origin===`v1`&&e.entry.kind===`tool`))}function xe(e,t,n,r,i){let a=n.kind===`message`&&i!==void 0?{...n,ts:i}:{...n};!t.v2Items&&a.kind!==`hook`&&be(e,t);let o=e.itemsById.get(r);if(o&&o.turn===t){o.entry.entry=a;return}let s={origin:`v2`,entry:a};t.entries.push(s),e.itemsById.set(r,{turn:t,entry:s})}var H={"not-delivered":0,queued:1,delivered:2,consumed:3},Se=[`instruction`,`resumed`,`requestId`,`state`,`createdAt`,`requestHash`,`deadline`];function U(e){let t={};for(let n of Se)e[n]!==void 0&&Object.assign(t,{[n]:e[n]});return t}function W(e,t){if(t.messageKind!==`request`)return;let n=e.outcomesByRequest.get(t.messageId);n&&(t.outcome={status:n.status,...n.replyId===void 0?{}:{replyId:n.replyId},observedAt:n.observedAt})}function Ce(e,t){let n=e.conversationEntries.get(t);n&&W(e,n)}function we(e,t,n,r){(H[e.delivery]<H.delivered||H[n]>H[e.delivery])&&(e.delivery=n),t.text!==``&&(e.text=t.text),Object.assign(e,U(t)),r.deliveredAt!==void 0&&(e.deliveredAt=r.deliveredAt),r.consumedAt!==void 0&&(e.consumedAt=r.consumedAt),r.recordedAt!==void 0&&(n===`delivered`||e.delivery!==`delivered`)&&(e.recordedAt=r.recordedAt)}function G(e,t,n,r){let i=e.conversationEntries.get(t.id);if(i){we(i,t,n,r),W(e,i);return}let a={kind:`conversation`,id:`conversation-message:${t.id}`,messageId:t.id,text:t.text,senderRunId:t.senderRunId,recipientRunId:t.recipientRunId,messageKind:t.kind,delivery:n,...r,...U(t)};W(e,a),e.conversationEntries.set(t.id,a),z(e,a)}function Te(e,t){let n=F(t.ts),r=P(t.message),i=t.notify===!1?`Stopped notifying the webhook${n}`:`${e.handedOff?`Note sent to webhook`:`Handed off to webhook`}${n}${r?` — ${r}`:``}`;e.handedOff=t.notify!==!1,z(e,{kind:`note`,id:`v1:${t.seq}`,text:i,tone:`dim`,icon:`handoff`})}function Ee(e,t){let n=typeof t.attempts==`number`?t.attempts:void 0,r=P(t.webhookName),i=`${r?`Delivery to ${r} failed`:`Webhook delivery failed`}${P(t.event)?` (${P(t.event)})`:``}${n?` after ${n} attempt${n===1?``:`s`}`:``}: ${P(t.error)??`unknown error`}`;z(e,{kind:`note`,id:`v1:${t.seq}`,text:i,tone:`danger`})}function De(e,t){let n=P(t.webhookName)??`webhook`,r=P(t.title),i=`v1:${t.seq}`;if(t.ok===!1){z(e,{kind:`note`,id:i,text:`Report to ${n} failed: ${P(t.error)??`unknown error`}`,tone:`danger`});return}let a=`${t.dryRun===!0?`Report to ${n} (dry run, nothing sent)`:`Sent report to ${n}`}${F(t.ts)}${r?` — ${r}`:``}`;z(e,t.dryRun===!0?{kind:`note`,id:i,text:a,tone:`dim`}:{kind:`note`,id:i,text:a,tone:`dim`,icon:`handoff`})}function Oe(e,t){let n=t.payload??{},r=`Webhook (dry run, nothing sent): ${P(t.event)??`delivery`}${P(n.status)?` · ${P(n.status)}`:``}`;z(e,{kind:`note`,id:`v1:${t.seq}`,text:r,tone:`dim`})}function ke(e,t){let n=r.safeParse(t.server);if(!n.success)return;let i=e.previewByPort.get(n.data.port);i&&(i.turn.entries=i.turn.entries.filter(e=>e!==i.draft));let a=R(e),o={origin:`meta`,entry:{kind:`preview-server`,id:`preview-server:${n.data.port}`,server:n.data,state:`registered`,stateAt:t.ts}};a.entries.push(o),e.previewByPort.set(n.data.port,{turn:a,draft:o})}function Ae(e,t){let n=i.safeParse(t.state),r=typeof t.port==`number`?e.previewByPort.get(t.port):void 0;if(!n.success||!r||r.draft.entry.kind!==`preview-server`)return;let{server:a,id:o}=r.draft.entry;r.draft.entry={kind:`preview-server`,id:o,server:a,state:n.data,stateAt:t.ts,...typeof t.exitCode==`number`?{exitCode:t.exitCode}:{},...t.reason===`user`||t.reason===`idle`?{reason:t.reason}:{}}}function je(e,t){let n=ee.safeParse(t);if(!n.success)return;let{message:r,delivery:i,deliveredAt:a,consumedAt:o,ts:s}=n.data;G(e,r,i,{deliveredAt:a,consumedAt:o,recordedAt:s})}function Me(e,t){let n=o.safeParse(t);if(!n.success)return;let{outcome:r}=n.data,i=e.outcomesByRequest.get(r.requestId);i&&!(i.status===`timed-out`&&r.status===`replied-late`)||(e.outcomesByRequest.set(r.requestId,r),Ce(e,r.requestId))}function Ne(e,t){let n=s.safeParse(t);if(!n.success)return;let{input:r}=n.data;if(!e.seenInputs.has(r.id)){if(e.seenInputs.add(r.id),r.conversation){G(e,{id:r.id,text:r.text,createdAt:r.createdAt,...r.conversation},`delivered`,{deliveredAt:r.deliveredAt,recordedAt:n.data.ts});return}z(e,{kind:`note`,id:`agent-input:${r.id}`,text:r.text,tone:`dim`,attribution:{source:r.source,parentRunId:r.parentRunId}})}}function Pe(e,t){let n=P(t.text)??``,r=e.pendingAsk;e.pendingAsk&&!e.pendingAsk.resolved&&(e.pendingAsk.resolved=!0,e.pendingAsk.answeredBy=`human`,n!==``&&(e.pendingAsk.answer=n),e.pendingAsk=void 0);let i=L(e,t.seq),a=I(t.ts);i.userMessage={text:n,ask:r,imageCount:typeof t.imageCount==`number`?t.imageCount:0,images:Array.isArray(t.images)?t.images.filter(e=>typeof e==`string`):[],...a===void 0?{}:{ts:a}},a!==void 0&&(i.startedAt=a)}function Fe(e,t){let n=e.turns.at(-1),r=n&&n.turnId===void 0&&!n.v2Items?n:L(e,t.seq);r.turnId=P(t.turnId),r.startedAt??=I(t.ts)}function Ie(e,t){for(let n=e.turns.length-1;n>=0;--n)if(e.turns[n].turnId===t)return e.turns[n];return e.turns.at(-1)}function Le(e,t){B(e);let n=Ie(e,P(t.turnId));if(!n)return;let r=I(t.ts);n.completed={stopReason:P(t.stopReason)??`end_turn`,...typeof t.costUsd==`number`?{costUsd:t.costUsd}:{},...r===void 0?{}:{ts:r}}}var K=new Set([`message`,`reasoning`,`tool`,`hook`]),Re=e=>K.has(e.kind);function ze(e){if(!(!N(e)||!K.has(e.kind)))return typeof e.id==`string`&&e.id!==``?e:void 0}function q(e,t){let n=ze(t.item);if(!n)return;let r=V(t,n.id);xe(e,e.itemsById.get(r)?.turn??R(e),n,r,t.type===`item.completed`?I(t.ts):void 0)}function Be(e,t){let n=e.itemsById.get(V(t,P(t.itemId)??``)),r=P(t.delta)??``;if(!n||r===``||!Re(n.entry.entry))return;let i=n.entry.entry;t.field===`output`&&i.kind===`tool`?i.output=(i.output??``)+r:t.field!==`output`&&(i.kind===`message`||i.kind===`reasoning`)&&(i.text+=r)}function Ve(e,t){let n=R(e),r=P(t.text)??``;if(r===``)return;let i=I(t.ts);n.entries.push({origin:`v1`,entry:{kind:`message`,id:`v1:${t.seq}`,role:`assistant`,text:r,...i===void 0?{}:{ts:i}}})}var He=new Set([`pending`,`in_progress`,`completed`,`cancelled`]);function Ue(e){if(!N(e)||!Array.isArray(e.todos))return;let t=[];for(let n of e.todos){if(!N(n)||typeof n.content!=`string`)return;t.push({content:n.content,status:He.has(n.status)?n.status:`pending`,...typeof n.activeForm==`string`?{activeForm:n.activeForm}:{}})}return t}var We=new Set([`subAgentActivity`,`collabAgentToolCall`,`collabToolCall`]);function Ge(e,t){let n=R(e),r=P(t.tool)??`Tool`;if(n.v2Items||We.has(r))return;let i=ge(r,t.input),a=i.toolKind===`plan`?Ue(t.input):void 0;a!==void 0&&(n.planEntries=a);let o={kind:`tool`,id:P(t.id)??`v1:${t.seq}`,name:r,toolKind:i.toolKind,title:i.title,status:`running`,input:t.input},s={origin:`v1`,entry:o};n.entries.push(s),e.itemsById.set(o.id,{turn:n,entry:s})}function Ke(e){if(typeof e==`string`)return e;if(e==null)return``;try{return JSON.stringify(e)}catch{return String(e)}}function qe(e,t){let n=e.itemsById.get(P(t.toolCallId)??``);if(!n||n.turn.v2Items||n.entry.origin!==`v1`)return;let r=n.entry.entry;r.kind===`tool`&&(r.status=`completed`,r.output=Ke(t.result))}function J(e,t,n,r){let i=P(t.message)??``;i!==``&&z(e,{kind:`note`,id:n,text:i,tone:r})}function Y(e,t){J(e,t,`v1:${t.seq}`,t.tone===`danger`?`danger`:`dim`)}function Je(e,t){J(e,t,`v1:${t.seq}`,`danger`)}function Ye(e,t){J(e,t,`v2:${t.seq}`,`danger`)}function Xe(e,t){if(t.status!==`failed`)return;let n=P(t.error)?` — ${P(t.error)}`:``;z(e,{kind:`note`,id:`v1:${t.seq}`,text:`step ${P(t.stepId)??`?`} failed${n}`,tone:`danger`})}function Ze(e,t){let n=P(t.command)??`check`,r=typeof t.exitCode==`number`?t.exitCode:-1;z(e,{kind:`tool`,id:`v1:${t.seq}`,name:`check`,toolKind:`execute`,title:`Ran ${n}`,status:r===0?`completed`:`failed`,output:P(t.text)??``,exitCode:r})}function Qe(e,t){let n=ye(t.provider),r=P(t.authFailureId)??``;n===void 0||r.length<1||r.length>128||z(e,{kind:`provider-auth-required`,id:`v1:${t.seq}`,provider:n,authFailureId:r})}function $e(e,t){let n=P(t.url);if(n===void 0)return;let r={kind:`image`,id:`v1:${t.seq}`,url:n},i=P(t.name);i!==void 0&&(r.name=i),z(e,r)}function et(e,t){Array.isArray(t.entries)&&(R(e).planEntries=t.entries)}function tt(e,t){B(e);let n=P(t.message);e.sessionEnded={reason:P(t.reason)??`end_turn`,...n===void 0?{}:{message:n}}}var nt=new Set([`allow_once`,`allow_always`,`reject_once`,`reject_always`]);function rt(e){return N(e)&&typeof e.id==`string`&&e.id!==``&&typeof e.label==`string`&&e.label!==``&&nt.has(e.kind)}function it(e){if(!(!Array.isArray(e)||e.length===0||!e.every(rt)))return new Set(e.map(e=>e.id)).size===e.length?e:void 0}function at(e,t){let n=P(t.requestId),r=P(t.title),i=it(t.options);if(!n||!r||e.permissions.has(n)||!i)return;let a=P(t.itemId),o=P(t.details),s={kind:`permission`,id:`permission:${n}`,requestId:n,title:r,options:i.map(e=>({...e})),status:`pending`,...a===void 0?{}:{itemId:a},...o===void 0?{}:{details:o}};e.permissions.set(n,s),z(e,s)}function ot(e,t){let n=e.permissions.get(P(t.requestId)??``);if(!n||n.status!==`pending`)return;let r=P(t.optionId);r!==void 0&&n.options.some(e=>e.id===r)?(n.status=`resolved`,n.optionId=r):n.status=`expired`;let i=P(t.reason);i!==void 0&&(n.reason=i)}function st(e,t){let n=O(t),r=n&&j(n);if(!r)return;let i={kind:`ask`,...r,questions:r.questions,resolved:!1};z(e,i),e.pendingAsk=i}function X(e,t){let n=e.pendingAsk;return n&&!n.resolved&&n.askSeq===t.askSeq?n:void 0}function ct(e,t){let n=X(e,t);if(!n)return;n.routedToParent=!0;let r=P(t.parentRunId);r!==void 0&&(n.parentRunId=r)}function lt(e,t){let n=X(e,t);n&&(n.routedToParent=!1)}function ut(e,t){let n=X(e,t);!n||t.reason!==`finish`&&t.reason!==`superseded`||(n.resolved=!0,n.closed=t.reason,e.pendingAsk=void 0)}function dt(e,t){let n=X(e,t);!n||t.source!==`parent`||(n.resolved=!0,n.answeredBy=`parent`,e.pendingAsk=void 0)}var Z=()=>{},ft=new Map([[`handoff`,Te],[`webhook.failed`,Ee],[`webhook.dry-run`,Oe],[`webhook.report`,De],[`preview.server-registered`,ke],[`preview.server-state`,Ae],[`conversation-message`,je],[`request-outcome`,Me],[`agent-input`,Ne],[`user-message`,Pe],[`turn.started`,Fe],[`turn.completed`,Le],[`item.started`,q],[`item.updated`,q],[`item.completed`,q],[`item.delta`,Be],[`text`,Ve],[`tool-call`,Ge],[`tool-result`,qe],[`note`,Y],[`lifecycle`,Y],[`error`,Je],[`session.error`,Ye],[`step-end`,Xe],[`check-output`,Ze],[`provider-auth-required`,Qe],[`image`,$e],[`plan.updated`,et],[`session.started`,e=>B(e)],[`session.ended`,tt],[`permission.requested`,at],[`permission.resolved`,ot],[`ask.requested`,st],[`worker-question-routed`,ct],[`worker-question-fallback`,lt],[`human-ask-closed`,ut],[`human-input-delivered`,dt],[`step-start`,Z],[`token-usage`,Z],[`cost`,Z],[`turn-end`,Z],[`done`,Z],[`session`,Z]]);function pt(e,t){ft.get(t.type)?.(e,t)}function mt(e){for(let t=e.turns.length-1;t>=0;--t){let n=e.turns[t].planEntries;if(n!==void 0)return n}}function ht(e){let t=[];for(let n of e.turns)for(let e of n.items)if(e.kind===`tool`){for(let n of e.locations??[])t.push(n.path);for(let n of e.diffs??[])t.push(n.path)}let n=[];for(let e=t.length-1;e>=0;--e)n.includes(t[e])||n.push(t[e]);return n}function gt(e,t){switch(e){case`waiting`:return{state:`waiting`};case`failed`:return{state:`closed`,tone:`danger`,label:t?`Session failed — ${t}`:`Session failed`};case`review`:return{state:`closed`,tone:`dim`,label:`Session closed — waiting for your review`};case`done`:case`cancelled`:return{state:`closed`,tone:`dim`,label:`Session closed`};default:return null}}function Q(e,t){let n=e.replace(/\s*CEZ:DONE\s*$/,``).replace(/\s*CEZ:MONITORING\s*$/,``);if(t){let e=n.trimEnd(),t=e.lastIndexOf(`
|
|
2
|
+
`)+1;/^CEZ:ASK[ \t]+.+$/.test(e.slice(t))&&(n=e.slice(0,t).trimEnd())}return n.includes(`CEZ:`)?n.split(`
|
|
3
|
+
`).filter(e=>!/^CEZ:(?:PR=\d+|ISSUE=\d+|TITLE=.+)\s*$/.test(e)).join(`
|
|
4
|
+
`):n}function _t(e){let t=e=>Q(e,!0).replace(/\s+/g,``),n=new Set,r=[];for(let{origin:i,entry:a}of e.entries)if(i===`v2`&&a.kind===`message`){let e=t(a.text);n.add(e),r.push(e)}if(r.length===0)return;n.add(r.join(``));let i=[],a={entries:[],texts:[]},o=()=>{if(a.entries.length>=2&&n.has(t(a.texts.join(``)))){a={entries:[],texts:[]};return}i.push(...a.entries),a={entries:[],texts:[]}};for(let t of e.entries)t.origin===`v1`&&t.entry.kind===`message`?(a.entries.push(t),a.texts.push(t.entry.text)):(o(),i.push(t));o(),e.entries=i}function vt(e){let t=new Set;for(let{origin:n,entry:r}of e.entries)n===`v2`&&r.kind===`message`&&t.add(Q(r.text,!0).trim());t.size!==0&&(e.entries=e.entries.filter(e=>!(e.origin===`v1`&&e.entry.kind===`message`&&t.has(Q(e.entry.text,!0).trim()))),_t(e))}function $(e){for(let t of e.conversationEntries.values())t.messageKind!==`request`||t.outcome!==void 0||t.delivery!==`not-delivered`&&(t.state!==void 0&&t.state!==`accepted`||(t.outcome={status:`pending`}))}function yt(e,t){let n=t||e.entries.some(({entry:e})=>e.kind===`ask`);return{id:e.id,...e.turnId===void 0?{}:{turnId:e.turnId},...e.userMessage===void 0?{}:{userMessage:e.userMessage},...e.startedAt===void 0?{}:{startedAt:e.startedAt},...e.planEntries===void 0?{}:{planEntries:e.planEntries},...e.completed===void 0?{}:{completed:e.completed},items:e.entries.map(({entry:e})=>e.kind===`message`&&e.role===`assistant`?{...e,text:Q(e.text,n)}:e)}}function bt(e,t={}){let n=M();for(let t of e)pt(n,t);for(let e of n.turns)e.v2Items&&vt(e);$(n);let r=n.turns.length-1;return{turns:n.turns.map((e,n)=>yt(e,t.activeTurn===!0&&n===r)),...n.sessionEnded===void 0?{}:{sessionEnded:n.sessionEnded}}}export{A as a,p as c,gt as i,bt as n,y as o,ht as r,m as s,mt as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{i as t,t as n}from"./react-runtime-CCIEwYL0.js";import{D as r,E as i,t as a}from"./button-CeupvoKG.js";import{At as o,D as s,Dt as c,F as l,Ha as u,Ht as d,It as f,Ma as p,Mt as m,N as h,Ni as g,P as _,Pt as v,Rt as y,Un as b,V as x,W as S,Wn as C,dn as w,et as T,jr as E,oa as D,qr as ee,xt as O,z as k}from"./dropdown-menu-COj_J5wd.js";import{Bt as te,Dt as A,F as ne,In as j,It as re,N as M,Nt as N,at as P,g as F,i as I,k as L,nt as ie}from"./centered-state-hDsyXrnH.js";import{a as R,g as ae,o as z}from"./status-dot-1PR0i69P.js";import{i as oe,r as se,s as B,t as ce}from"./popover-D56fhiXj.js";import{t as le}from"./eye-B8okNWXU.js";import{n as ue,t as de}from"./tab-link-DmWk4l5O.js";import{t as fe}from"./play-CmVAj_fu.js";import{$n as pe,An as me,B as V,Bn as he,Cn as ge,Dn as _e,En as ve,Fn as ye,Gn as be,Hn as xe,In as Se,Jn as Ce,Kn as we,Ln as Te,Mn as Ee,Qn as De,Sn as Oe,Un as ke,Vn as Ae,Wn as je,Xn as Me,Yn as Ne,Zn as Pe,_n as Fe,an as Ie,bn as Le,c as H,er as Re,fn as ze,gn as Be,hn as Ve,jt as He,kn as Ue,mn as We,nn as Ge,nr as Ke,pn as U,qn as W,rn as qe,sn as Je,tr as Ye,vn as Xe,wn as Ze,xn as Qe,yn as $e,yr as et,zn as tt}from"./index-BOfE8pyD.js";import{t as nt}from"./diff-BnIXZK3i2.js";var G=e(t(),1),K=n();function rt(e){let t=new Set;for(let n of e)for(let e of n.labels)t.add(e);return[...t].sort((e,t)=>e.toLowerCase().localeCompare(t.toLowerCase()))}function it(e,t={}){let n=(t.query??``).trim().toLowerCase(),r=t.labels??[],i=n.replace(/^#/,``),a=i!==``&&/^\d+$/.test(i);return e.filter(e=>r.length>0&&!r.every(t=>e.labels.includes(t))||t.assignees?.length&&!e.assignees?.some(e=>t.assignees.some(t=>t.toLowerCase()===e.toLowerCase()))||t.author!==void 0&&e.author.toLowerCase()!==t.author.toLowerCase()||t.includeNumbers&&!t.includeNumbers.has(e.number)||t.excludeNumbers?.has(e.number)||t.projectId&&e.projectIds!==void 0&&!e.projectIds.includes(t.projectId)?!1:n===``?!0:a?String(e.number).includes(i):`#${e.number} ${e.title} ${e.author} ${e.body??``}`.toLowerCase().includes(n))}function at(e,t){let n=e.trim();if(n===``)return!1;let r=n.replace(/^#/,``);return/^\d+$/.test(r)?!t.some(e=>e.number===Number(r)):t.length===0}function q(e){if(!e||!/^[0-9a-fA-F]{6}$/.test(e))return{borderColor:`var(--border)`,color:`var(--muted-foreground)`};let t=`#${e}`;return{backgroundColor:`${t}22`,borderColor:`${t}66`,color:`color-mix(in srgb, ${t} 50%, var(--foreground))`}}function ot({label:e,color:t,plain:n=!1}){return(0,K.jsx)(`span`,{"data-slot":`gh-label`,"data-label":e,style:n?void 0:q(t),className:n?`text-[11px] font-normal text-muted-foreground`:`rounded-full border px-1.5 py-px text-[12px] font-medium`,children:e})}function st({item:e,colors:t,checks:n,comments:i,backLink:a,subNav:o,onRunAgent:c,afterHeading:l,children:u}){let d=o?.changes??!1,f=e.kind===`pr`?`pull request`:`issue`,p=L(e.kind,e.number,!d).data?.detail,m=p?.body??e.body,h=p?.additions??e.additions,g=p?.deletions??e.deletions,_=e.kind===`pr`&&!!(h||g),v=i??e.comments;return(0,K.jsxs)(`article`,{"data-slot":`gh-detail-inner`,className:`min-w-0 px-4 py-4 md:px-7 md:py-5`,children:[a?(0,K.jsxs)(z,{to:a.to,"data-slot":`gh-back`,className:`mb-3 inline-flex items-center gap-1.5 text-xs font-medium text-muted-foreground hover:text-foreground md:hidden`,children:[(0,K.jsx)(s,{size:16,"aria-hidden":`true`,className:`size-3.5`}),`Back to the list`]}):null,(0,K.jsxs)(`div`,{"data-slot":`gh-description-card`,className:e.kind===`pr`?`rounded-xl border border-border bg-card p-6`:void 0,children:[e.kind===`pr`?(0,K.jsxs)(`h2`,{className:`mb-4 text-[22px] leading-snug font-normal`,children:[`#`,e.number,` `,e.title]}):null,(0,K.jsxs)(`p`,{"data-slot":`gh-meta`,className:`flex flex-wrap items-center gap-x-1.5 font-mono text-[11px] text-soft-foreground`,children:[(0,K.jsxs)(`span`,{children:[`#`,e.number]}),`·`,(0,K.jsx)(`span`,{children:f}),`·`,(0,K.jsxs)(`span`,{children:[`opened by `,e.author]}),`·`,(0,K.jsxs)(`span`,{children:[R(e.createdAt),` ago`]}),v?(0,K.jsxs)(K.Fragment,{children:[`·`,(0,K.jsx)(bt,{count:v})]}):null,_?(0,K.jsxs)(K.Fragment,{children:[`·`,(0,K.jsxs)(`span`,{"data-slot":`gh-diffstat`,children:[(0,K.jsxs)(`span`,{className:`text-success`,children:[`+`,h??0]}),` `,(0,K.jsxs)(`span`,{className:`text-danger`,children:[`−`,g??0]})]})]}):null,`·`,r(e.url)?(0,K.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,"data-slot":`gh-open-link`,className:`inline-flex items-center gap-0.5 text-muted-foreground hover:text-foreground hover:underline`,children:[`open on GitHub`,(0,K.jsx)(B,{"aria-hidden":`true`,className:`size-2.5`})]}):(0,K.jsx)(`span`,{"data-slot":`gh-open-link`,className:`text-muted-foreground`,children:`open on GitHub`})]}),e.kind===`pr`?null:(0,K.jsx)(`h2`,{className:`mt-2 text-[22px] leading-snug font-normal`,children:e.title}),l,e.kind===`pr`&&o?(0,K.jsxs)(`nav`,{"aria-label":`Pull request detail`,className:`mt-4 flex border-b border-border`,children:[(0,K.jsx)(de,{to:H(`prs`,o.filter,e.number),active:!d,children:`Conversation`}),(0,K.jsx)(de,{to:H(`prs`,o.filter,e.number,`/changes`),active:d,children:`Changes`})]}):e.kind===`pr`?(0,K.jsx)(z,{to:H(`prs`,null,e.number,`/changes`),"data-slot":`gh-files-changed`,className:`mt-3 inline-flex items-center gap-1 text-xs font-medium text-muted-foreground hover:text-foreground hover:underline`,children:`Files changed`}):null,e.labels.length>0||n?(0,K.jsxs)(`div`,{className:`mt-3 flex flex-wrap items-center gap-1.5`,children:[e.labels.map(e=>(0,K.jsx)(ot,{label:e,color:t[e]},e)),n?(0,K.jsx)(xt,{checks:n,url:e.url}):null]}):null,d&&e.kind===`pr`?(0,K.jsx)(lt,{item:e}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{"data-slot":`gh-body`,className:`mt-5 text-sm`,children:m?(0,K.jsx)(Je,{children:m}):(0,K.jsx)(`p`,{className:`text-soft-foreground`,children:`(no description)`})}),(0,K.jsx)(ut,{item:e,colors:t})]})]}),e.kind===`pr`?(0,K.jsx)(ct,{number:e.number,onRunAgent:c}):null,u]})}var J={squash:`Squash and merge`,merge:`Create a merge commit`,rebase:`Rebase and merge`};function Y({state:e}){let t=`size-4 shrink-0`;return e===`passing`?(0,K.jsx)(h,{size:16,"aria-hidden":`true`,"data-slot":`gh-merge-status-passing`,className:i(t,`text-success`)}):e===`failing`?(0,K.jsx)(x,{size:16,"aria-hidden":`true`,"data-slot":`gh-merge-status-failing`,className:i(t,`text-danger`)}):e===`pending`?(0,K.jsx)(ae,{"aria-hidden":`true`,"data-slot":`gh-merge-status-pending`,className:i(t,`animate-spin text-warning`)}):(0,K.jsx)(k,{size:16,"aria-hidden":`true`,"data-slot":`gh-merge-status-unknown`,className:i(t,`text-soft-foreground`)})}function ct({number:e,onRunAgent:t}){let n=u(),o=P(),s=p({queryKey:I.githubMergeState(e),queryFn:({signal:t})=>C(e,{},{signal:t}),retry:!1}),c=s.data?.available?s.data.mergeState:null,[l,d]=(0,G.useState)(null),[f,_]=(0,G.useState)(!1),[v,y]=(0,G.useState)(!1),b=j({mutationFn:t=>C(e,{refresh:!0}),onSuccess:(e,t)=>n.setQueryData(t,e),onError:e=>g(e instanceof Error?e.message:String(e),{tone:`danger`})}),x=l&&c?.methods.includes(l)?l:c?.defaultMethod??c?.methods[0]??null,S=()=>({mergeState:I.githubMergeState(e),list:I.githubPages(50),comments:I.githubComments(`pr`,e),item:I.githubItem(`pr`,e),refStatus:o===void 0?void 0:I.githubRefStatusOf(o)}),w=j({mutationFn:t=>{if(!c||!x)throw Error(`No merge method is available.`);return E(e,{method:x,expectedHeadSha:c.headSha,...v&&c.canOverride?{overrideRules:!0}:{}})},onSuccess:(t,r)=>{_(!1),g(`Pull request #${e} merged`),n.invalidateQueries({queryKey:r.mergeState}),n.invalidateQueries({queryKey:r.list}),n.invalidateQueries({queryKey:r.comments}),n.invalidateQueries({queryKey:r.item}),r.refStatus&&n.invalidateQueries({queryKey:r.refStatus})},onError:(e,t)=>{g(e instanceof Error?e.message:String(e),{tone:`danger`}),n.invalidateQueries({queryKey:t.mergeState})}});if(s.isPending)return(0,K.jsx)(V,{"data-slot":`gh-merge-loading`,className:`mt-6 h-32 w-full`});if(!c)return(0,K.jsxs)(`section`,{"data-slot":`gh-merge-unavailable`,className:`mt-6 rounded-lg border border-border bg-card p-4 text-sm`,children:[(0,K.jsx)(`p`,{className:`font-medium`,children:`Merge status unavailable`}),(0,K.jsx)(`p`,{className:`mt-1 text-xs text-soft-foreground`,children:s.data?.available===!1?s.data.reason:`GitHub could not load merge requirements.`})]});let T=c.state===`merged`?`Merged`:c.state===`closed`?`Closed`:c.isDraft?`Draft`:c.mergeable===`conflicting`?`Conflicts must be resolved`:c.canMerge?`Ready to merge`:c.eligibility===`unknown`?`Merge blocked · Requirements unknown`:`Merge blocked`,D=c.reviewDecision===`approved`||c.reviewDecision===`not-required`?`passing`:c.reviewDecision===`unknown`?`unknown`:`failing`,ee=c.mergeable===`mergeable`?`passing`:c.mergeable===`conflicting`?`failing`:`unknown`,k=!!(x&&(c.canMerge||c.canOverride&&v));return(0,K.jsxs)(`section`,{"data-slot":`gh-merge-box`,"data-eligibility":c.eligibility,"data-conflicting":c.mergeable===`conflicting`?`true`:void 0,"aria-live":`polite`,className:`mt-6 rounded-lg border border-border bg-card p-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[c.canMerge?(0,K.jsx)(h,{size:16,"aria-hidden":`true`,className:`mt-0.5 size-5 shrink-0 text-success`}):(0,K.jsx)(m,{size:16,"aria-hidden":`true`,className:`mt-0.5 size-5 shrink-0 text-warning`}),(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,K.jsx)(`h3`,{className:`font-semibold`,children:T}),(0,K.jsxs)(a,{type:`button`,variant:`ghost`,size:`sm`,disabled:b.isPending,onClick:()=>b.mutate(I.githubMergeState(e)),children:[(0,K.jsx)(O,{size:16,"aria-hidden":`true`,className:i(`size-3.5`,b.isPending&&`animate-spin`)}),`Refresh`]})]}),(0,K.jsxs)(`p`,{className:`mt-1 font-mono text-[11px] text-soft-foreground`,children:[c.headRef,` (`,c.headSha.slice(0,7),`) → `,c.baseRef]}),(0,K.jsxs)(`ul`,{className:`mt-3 space-y-2 text-xs`,children:[(0,K.jsxs)(`li`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Y,{state:D}),(0,K.jsxs)(`span`,{children:[`Reviews: `,c.reviewDecision.replaceAll(`-`,` `)]})]}),(0,K.jsxs)(`li`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Y,{state:ee}),(0,K.jsxs)(`span`,{children:[`Conflicts: `,c.mergeable===`conflicting`?`present`:c.mergeable===`mergeable`?`none`:`unknown`]})]}),c.checks.length===0?(0,K.jsx)(`li`,{children:`No checks configured`}):c.checks.map(e=>(0,K.jsxs)(`li`,{className:`flex items-center justify-between gap-3`,children:[(0,K.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,K.jsx)(Y,{state:e.state}),(0,K.jsxs)(`span`,{children:[e.name,` · `,e.state,e.required===!0?` · required`:e.required===null?` · requiredness unknown`:``]})]}),e.url&&r(e.url)?(0,K.jsx)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`text-muted-foreground underline`,children:`details`}):null]},e.name)),c.blockers.map(e=>(0,K.jsx)(`li`,{className:`text-soft-foreground`,children:e.message},e.code))]}),c.mergeable===`conflicting`&&t?(0,K.jsx)(a,{className:`mt-4`,onClick:t,children:`Run agent on this PR`}):null,c.canOverride?(0,K.jsxs)(`label`,{className:`mt-4 flex cursor-pointer items-start gap-2 rounded-md border border-warning/40 bg-warning/5 p-3 text-xs`,children:[(0,K.jsx)(`input`,{type:`checkbox`,checked:v,onChange:e=>y(e.target.checked),className:`mt-0.5 size-4 accent-accent-strong`}),(0,K.jsxs)(`span`,{children:[(0,K.jsx)(`span`,{className:`block font-medium`,children:`Merge without waiting for requirements`}),(0,K.jsx)(`span`,{className:`mt-0.5 block text-soft-foreground`,children:`GitHub will allow this only if your permissions can bypass the repository rules.`})]})]}):null,c.eligibility===`unknown`?(0,K.jsx)(`p`,{className:`mt-4 text-xs text-muted-foreground`,children:`GitHub could not confirm review and branch-protection requirements. Passing checks do not establish merge readiness.`}):null,c.state===`open`&&c.methods.length>0?(0,K.jsxs)(`div`,{className:`mt-4 flex flex-col flex-wrap gap-2 sm:flex-row`,children:[(0,K.jsx)(`select`,{"aria-label":`Merge method`,value:x??``,onChange:e=>d(e.target.value),className:`h-9 min-w-0 flex-1 rounded-md border border-input bg-background px-3 text-sm`,children:c.methods.map(e=>(0,K.jsx)(`option`,{value:e,children:J[e]},e))}),(0,K.jsx)(a,{disabled:!k,onClick:()=>_(!0),children:x?J[x]:`Merge`})]}):null]})]}),(0,K.jsx)(Pe,{open:f,onOpenChange:_,children:(0,K.jsxs)(De,{"data-slot":`gh-merge-confirm`,showCloseButton:!1,children:[(0,K.jsxs)(Ye,{children:[(0,K.jsxs)(Ke,{children:[x?J[x]:`Merge`,` pull request #`,e,`?`]}),(0,K.jsx)(pe,{asChild:!0,children:(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`p`,{children:[`This will merge “`,c.title,`” into `,c.baseRef,`. GitHub will re-check the exact reviewed head before changing the repository.`]}),v&&c.canOverride?(0,K.jsx)(`p`,{"data-slot":`gh-bypass-warning`,className:`mt-4 text-sm text-warning`,children:`You are asking GitHub to bypass unmet repository requirements; GitHub may refuse if your permissions do not allow it.`}):null]})})]}),w.error?(0,K.jsx)(`p`,{className:`text-sm text-danger`,children:w.error.message}):null,(0,K.jsxs)(Re,{children:[(0,K.jsx)(a,{variant:`outline`,disabled:w.isPending,onClick:()=>_(!1),children:`Cancel`}),(0,K.jsx)(a,{disabled:w.isPending,onClick:()=>w.mutate(S()),children:w.isPending?`Merging…`:x?J[x]:`Merge`})]})]})})]})}function lt({item:e}){let t=u(),n=M(e.number),[o,s]=(0,G.useState)(``),[c,d]=(0,G.useState)(null),f=n.data,p=f?.available?f.files.filter(e=>e.path.toLowerCase().includes(o.toLowerCase())):[],m=p.findIndex(e=>e.path===c);(0,G.useEffect)(()=>{p.length>0&&!p.some(e=>e.path===c)&&d(p[0].path)},[f?.available?f.headSha:``,o]);let h=async()=>{let n=f?.available?f.headSha:null,r=I.githubPrChanges(e.number),i=await b(e.number,{refresh:!0});t.setQueryData(r,i),i.available&&n&&n!==i.headSha&&(d(i.files[0]?.path??null),g(`The reviewed revision changed.`))};if(n.isPending)return(0,K.jsx)(`p`,{"aria-live":`polite`,className:`mt-6 text-sm text-muted-foreground`,children:`Loading changed files…`});if(n.isError||!f)return(0,K.jsx)(`p`,{className:`mt-6 text-sm text-danger`,children:`Changed files could not be loaded.`});if(!f.available)return(0,K.jsx)(`p`,{className:`mt-6 text-sm text-muted-foreground`,children:f.reason});let _=p.map(e=>({path:e.path,...e.previousPath?{oldPath:e.previousPath}:{},status:e.status===`removed`?`deleted`:e.status===`changed`?`modified`:e.status,adds:e.additions,dels:e.deletions,binary:e.patchUnavailableReason===`binary`,patch:e.patch??``})),v=r(e.url)?`${e.url}/files`:null,y=p.find(e=>e.path===c);return(0,K.jsxs)(`section`,{"data-slot":`gh-pr-changes`,className:`mt-5 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-xs`,children:[(0,K.jsxs)(`strong`,{children:[f.files.length,` changed files`]}),(0,K.jsxs)(`span`,{className:`text-success`,children:[`+`,f.additions]}),(0,K.jsxs)(`span`,{className:`text-danger`,children:[`−`,f.deletions]}),(0,K.jsxs)(`span`,{className:`font-mono text-muted-foreground`,title:f.headSha,children:[`head `,f.headSha.slice(0,8)]}),(0,K.jsx)(a,{type:`button`,variant:`outline`,size:`sm`,className:`ml-auto min-h-11`,onClick:()=>void h(),children:`Refresh`})]}),f.truncated?(0,K.jsxs)(`p`,{role:`status`,className:`mt-3 rounded-md border border-warning/40 bg-warning/10 p-3 text-xs`,children:[f.reason??`This response is incomplete.`,` `,v?(0,K.jsx)(`a`,{href:v,target:`_blank`,rel:`noopener noreferrer`,className:`underline`,children:`Open all files on GitHub`}):null]}):null,(0,K.jsxs)(`div`,{className:`mt-4 grid min-w-0 gap-4 lg:grid-cols-[240px_minmax(0,1fr)]`,children:[(0,K.jsxs)(`aside`,{className:`min-w-0`,children:[(0,K.jsx)(`input`,{"aria-label":`Filter changed files`,value:o,onChange:e=>s(e.target.value),placeholder:`Filter files…`,className:`min-h-11 w-full rounded-md border border-input bg-background px-3 text-sm`}),(0,K.jsx)(`select`,{"aria-label":`Select changed file`,value:c??``,onChange:e=>d(e.target.value),className:`mt-2 min-h-11 w-full rounded-md border border-input bg-background px-2 text-sm lg:hidden`,children:p.map(e=>(0,K.jsx)(`option`,{children:e.path},e.path))}),(0,K.jsx)(`ul`,{className:`mt-2 hidden max-h-[60vh] overflow-auto lg:block`,children:p.map(e=>(0,K.jsx)(`li`,{children:(0,K.jsxs)(`button`,{type:`button`,onClick:()=>d(e.path),className:i(`min-h-11 w-full truncate rounded px-2 text-left text-xs`,c===e.path&&`bg-muted font-medium`),title:e.path,children:[e.status,` · `,e.path,` `,(0,K.jsxs)(`span`,{className:`text-success`,children:[`+`,e.additions]}),` `,(0,K.jsxs)(`span`,{className:`text-danger`,children:[`−`,e.deletions]})]})},e.path))})]}),(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsxs)(`div`,{className:`mb-2 flex justify-end gap-1`,children:[(0,K.jsx)(a,{"aria-label":`Previous file`,variant:`outline`,size:`icon`,className:`min-h-11 min-w-11`,disabled:m<=0,onClick:()=>d(p[m-1]?.path??null),children:(0,K.jsx)(et,{})}),(0,K.jsx)(a,{"aria-label":`Next file`,variant:`outline`,size:`icon`,className:`min-h-11 min-w-11`,disabled:m<0||m>=p.length-1,onClick:()=>d(p[m+1]?.path??null),children:(0,K.jsx)(l,{size:16})})]}),p.length===0?(0,K.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No changed files match this filter.`}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(nt,{files:_.filter(e=>e.path===c),wrap:!0,className:`min-w-0`}),y&&!y.patch?(0,K.jsxs)(`p`,{className:`rounded-b border border-border p-3 text-xs text-muted-foreground`,children:[`Patch unavailable: `,y.patchUnavailableReason??`not-provided`,`.`]}):null]})]})]})]})}function ut({item:e,colors:t}){let n=L(e.kind,e.number),r=n.data,i=(0,G.useMemo)(()=>{let e=[...(r?.comments??[]).map(e=>({row:`comment`,comment:e})),...(r?.events??[]).map(e=>({row:`event`,event:e}))],t=e=>{let t=Date.parse(dt(e));return Number.isNaN(t)?-1/0:t};return e.sort((e,n)=>t(e)-t(n))},[r?.comments,r?.events]);return n.isPending?(0,K.jsxs)(`section`,{"data-slot":`gh-thread-loading`,className:`mt-6 border-t border-border pt-5`,children:[(0,K.jsx)(V,{className:`mb-3 h-3 w-24`}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,K.jsx)(V,{className:`h-14 w-full`}),(0,K.jsx)(V,{className:`h-14 w-full`})]})]}):!r||!r.available?(0,K.jsxs)(`section`,{"data-slot":`gh-thread-error`,className:`mt-6 border-t border-border pt-5 text-xs text-soft-foreground`,children:[(0,K.jsxs)(`span`,{children:[`Couldn’t load comments — `,r?.reason??(n.error instanceof Error?n.error.message:`could not load comments`),`. `]}),(0,K.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-0.5 text-muted-foreground hover:text-foreground hover:underline`,children:[`open on GitHub`,(0,K.jsx)(B,{"aria-hidden":`true`,className:`size-2.5`})]})]}):i.length===0?null:(0,K.jsxs)(`section`,{"data-slot":`gh-thread`,className:`mt-6 border-t border-border pt-5`,children:[(0,K.jsxs)(`h3`,{"data-slot":`gh-thread-header`,className:`mb-4 text-[11px] font-semibold tracking-wide text-soft-foreground uppercase`,children:[`Activity · `,r.comments.length,` comment`,r.comments.length===1?``:`s`]}),(0,K.jsx)(`ul`,{className:`flex flex-col gap-5`,children:ft(i).map(e=>e.group===`commits`?(0,K.jsx)(pt,{commits:e.commits,colors:t},e.commits[0].id):e.entry.row===`comment`?(0,K.jsx)(vt,{comment:e.entry.comment},`${e.entry.comment.kind}-${e.entry.comment.id}`):(0,K.jsx)(mt,{event:e.entry.event,colors:t},e.entry.event.id))}),r.truncated?(0,K.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,"data-slot":`gh-thread-truncated`,className:`mt-4 inline-flex items-center gap-0.5 text-xs text-soft-foreground hover:text-foreground hover:underline`,children:[`thread truncated — open on GitHub`,(0,K.jsx)(B,{"aria-hidden":`true`,className:`size-2.5`})]}):null]})}var dt=e=>e.row===`comment`?e.comment.createdAt:e.event.createdAt;function ft(e){let t=[],n=[],r=()=>{n.length!==0&&(n.length===1?t.push({group:`single`,entry:{row:`event`,event:n[0]}}):t.push({group:`commits`,commits:n}),n=[])};for(let i of e){if(i.row===`event`&&i.event.kind===`committed`&&i.row===`event`){let e=n[n.length-1];e&&e.actor!==i.event.actor&&r(),n.push(i.event);continue}r(),t.push({group:`single`,entry:i})}return r(),t}function pt({commits:e,colors:t}){let[n,r]=(0,G.useState)(!1),i=e[0]?.actor??`?`;return n?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`li`,{"data-slot":`gh-commit-group`,"data-open":`true`,className:`min-w-0`,children:(0,K.jsxs)(`button`,{type:`button`,"aria-expanded":!0,onClick:()=>r(!1),className:`flex items-center gap-1.5 font-mono text-[11px] text-soft-foreground hover:text-foreground`,children:[(0,K.jsx)(`span`,{"aria-hidden":`true`,children:X.committed}),(0,K.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:i}),(0,K.jsxs)(`span`,{children:[`added `,e.length,` commits`]})]})}),e.map(e=>(0,K.jsx)(mt,{event:e,colors:t},e.id))]}):(0,K.jsx)(`li`,{"data-slot":`gh-commit-group`,"data-open":`false`,className:`min-w-0`,children:(0,K.jsxs)(`button`,{type:`button`,"aria-expanded":!1,onClick:()=>r(!0),className:`flex items-center gap-1.5 font-mono text-[11px] text-soft-foreground hover:text-foreground`,children:[(0,K.jsx)(`span`,{"aria-hidden":`true`,children:X.committed}),(0,K.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:i}),(0,K.jsxs)(`span`,{children:[`added `,e.length,` commits`]}),(0,K.jsx)(`span`,{className:`shrink-0`,children:R(e[e.length-1].createdAt)})]})})}var X={committed:`⚙`,labeled:`◆`,unlabeled:`◇`,assigned:`◍`,unassigned:`◌`,merged:`⑃`,closed:`⊘`,reopened:`⊙`,head_ref_force_pushed:`↻`,"cross-referenced":`↗`,renamed:`✎`};function mt({event:e,colors:t}){return(0,K.jsxs)(`li`,{"data-slot":`gh-event-row`,"data-kind":e.kind,className:i(`flex min-w-0 items-center gap-1.5 font-mono text-[11px] text-soft-foreground`,e.kind===`merged`&&`text-accent-foreground`),children:[(0,K.jsx)(`span`,{"aria-hidden":`true`,className:`shrink-0`,children:X[e.kind]}),(0,K.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:e.actor}),(0,K.jsx)(ht,{event:e,colors:t}),(0,K.jsx)(`span`,{className:`shrink-0`,children:R(e.createdAt)}),e.url?(0,K.jsx)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,"aria-label":`open ${e.kind} on GitHub`,className:`ml-auto shrink-0 text-muted-foreground hover:text-foreground`,children:(0,K.jsx)(B,{"aria-hidden":`true`,className:`size-2.5`})}):null]})}function ht({event:e,colors:t}){switch(e.kind){case`committed`:return(0,K.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,K.jsx)(`span`,{className:`shrink-0`,children:`committed`}),e.sha?(0,K.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:e.sha.slice(0,7)}):null,e.message?(0,K.jsx)(`span`,{className:`truncate font-sans text-foreground`,children:e.message}):null,(0,K.jsx)(gt,{checks:e.checks})]});case`labeled`:case`unlabeled`:return(0,K.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,K.jsx)(`span`,{className:`shrink-0`,children:e.kind===`labeled`?`added the`:`removed the`}),e.label?(0,K.jsx)(`span`,{"data-slot":`gh-event-label`,style:q(e.label.color??t[e.label.name]),className:`max-w-[12rem] truncate rounded-full border px-1.5 py-px font-sans text-[12px]`,children:e.label.name}):null,(0,K.jsx)(`span`,{className:`shrink-0`,children:`label`})]});case`assigned`:case`unassigned`:return(0,K.jsxs)(`span`,{className:`truncate`,children:[e.kind===`assigned`?`assigned`:`unassigned`,` `,e.subject??`someone`]});case`merged`:return(0,K.jsx)(`span`,{children:`merged this`});case`closed`:return(0,K.jsx)(`span`,{children:`closed this`});case`reopened`:return(0,K.jsx)(`span`,{children:`reopened this`});case`head_ref_force_pushed`:return(0,K.jsx)(`span`,{children:`force-pushed`});case`renamed`:return(0,K.jsxs)(`span`,{className:`truncate`,children:[`renamed this to `,e.subject??`—`]});case`cross-referenced`:return(0,K.jsxs)(`span`,{className:`truncate`,children:[`referenced this in `,e.refNumber?`#${e.refNumber}`:`another thread`,e.refTitle?` ${e.refTitle}`:``]})}}function gt({checks:e}){return e?(0,K.jsx)(`span`,{"data-slot":`gh-commit-checks`,"data-checks":e,"aria-label":`checks ${e}`,className:i(`shrink-0`,Q[e]),children:Z[e]}):null}var _t={approved:{label:`approved`,tone:`border-success/40 text-success`},changes_requested:{label:`changes requested`,tone:`border-danger/40 text-danger`},commented:{label:`commented`,tone:`border-border text-muted-foreground`},dismissed:{label:`dismissed`,tone:`border-border text-muted-foreground`}};function vt({comment:e}){let t=e.reviewState?_t[e.reviewState]:null;return(0,K.jsxs)(`li`,{"data-slot":`gh-thread-entry`,"data-kind":e.kind,className:`min-w-0`,children:[(0,K.jsxs)(`div`,{className:`mb-1.5 flex items-center gap-1.5 font-mono text-[11px] text-soft-foreground`,children:[(0,K.jsx)(yt,{url:e.avatarUrl,login:e.author}),(0,K.jsx)(`span`,{className:`font-sans font-medium text-foreground`,children:e.author}),(0,K.jsx)(`span`,{children:R(e.createdAt)}),t?(0,K.jsx)(`span`,{"data-slot":`gh-review-chip`,"data-review-state":e.reviewState,className:i(`rounded-full border px-1.5 py-px font-sans text-[12px] font-medium`,t.tone),children:t.label}):null,(0,K.jsx)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,"aria-label":`open comment on GitHub`,className:`ml-auto shrink-0 text-muted-foreground hover:text-foreground`,children:(0,K.jsx)(B,{"aria-hidden":`true`,className:`size-2.5`})})]}),(0,K.jsx)(`div`,{"data-slot":`gh-thread-body`,className:`text-sm`,children:e.body?(0,K.jsx)(Je,{children:e.body}):(0,K.jsx)(`p`,{className:`text-soft-foreground`,children:`(no body)`})})]})}function yt({url:e,login:t}){let[n,r]=(0,G.useState)(!1);return e&&!n?(0,K.jsx)(`img`,{src:e,alt:``,width:16,height:16,loading:`lazy`,onError:()=>r(!0),"data-slot":`gh-avatar`,className:`size-4 shrink-0 rounded-full`}):(0,K.jsx)(`span`,{"data-slot":`gh-avatar-fallback`,"aria-hidden":`true`,className:`flex size-4 shrink-0 items-center justify-center rounded-full bg-muted text-[8px] font-semibold text-muted-foreground uppercase`,children:t.slice(0,1)||`?`})}var Z={passing:`✓`,failing:`✗`,pending:`○`},Q={passing:`text-success`,failing:`text-danger`,pending:`text-muted-foreground`};function bt({count:e}){return e?(0,K.jsxs)(`span`,{"data-slot":`gh-comment-count`,"data-count":e,"aria-label":`${e} comment${e===1?``:`s`}`,className:`inline-flex shrink-0 items-center gap-0.5`,children:[(0,K.jsx)(ue,{"aria-hidden":`true`,className:`size-3`}),e]}):null}function xt({checks:e,url:t}){let n=i(`text-[11px] font-medium`,Q[e],t&&`hover:underline`),r=`${Z[e]} checks ${e}`;return t?(0,K.jsx)(`a`,{href:`${t}/checks`,target:`_blank`,rel:`noopener noreferrer`,"data-slot":`gh-checks`,"data-checks":e,className:n,children:r}):(0,K.jsx)(`span`,{"data-slot":`gh-checks`,"data-checks":e,className:n,children:r})}function St({checks:e}){return(0,K.jsx)(`span`,{"data-slot":`gh-row-checks`,"data-checks":e,title:`checks ${e}`,"aria-label":`checks ${e}`,className:i(`shrink-0 font-sans text-[11px] font-semibold`,Q[e]),children:Z[e]})}function $(e){return`${e.kind===`pr`?`Address GitHub pull request`:`Fix GitHub issue`} #${e.number}: ${e.title}\n\n${e.url}`}function Ct(e,t=[]){let n=$(e);return e.body?.trim()&&(n+=`\n\n---\n\n${e.body.trim()}`),t.length&&(n+=wt(t)),n}function wt(e){return`\n\nUse these skills where relevant: ${e.join(`, `)}.`}function Tt(e,t){return e.replace(/\{\{\s*number\s*\}\}/gi,()=>`#${t.number}`).replace(/\{\{\s*title\s*\}\}/gi,()=>t.title).replace(/\{\{\s*url\s*\}\}/gi,()=>t.url)}function Et(e,t){if(e.includes(t.url))return!0;let n=t.kind===`pr`?String.raw`(?:pull\s+request|pr)`:String.raw`issue`;return new RegExp(String.raw`\b${n}\s*#?\s*${t.number}\b`,`i`).test(e)}function Dt(e,t,n){let r=(n??``).trim();if(!r)return Ct(e,t);let i=$(e),a=r.startsWith(i)?i+Tt(r.slice(i.length),e):Tt(r,e),o=Et(a,e)?a:`${i}\n\n${a}`;return t.length?o+wt(t):o}function Ot(e){let t=[];for(let n of e.slice(0,8)){let e=new Set(t.map(e=>e.id)),r=n;for(let t=2;e.has(r);t++)r=`${n}-${t}`;t.push({id:r,name:n,skill:n,prompt:`{{task}}`})}return t}function kt(e,t,n,r,i={}){return t?{...i,workflow:t,task:Dt(e,n,r)}:n.length?{...i,steps:Ot(n),task:Dt(e,[],r)}:{...i,workflow:`quick-task`,task:Dt(e,[],r)}}function At(e){let t=ie(),n=F(),r=D(t.data),i=n.data?.defaultRunner,a=Oe(e.runner,r,i??r[0]??`claude`),o=A(a),s=n.data?.modelsLocked===!0,{accounts:c,repoAccount:l}=qe(),u=c.some(t=>t.provider===a&&t.id===e.account)?e.account:null,d=Qe(s?null:e.model,a,n.data?.defaultModels,o.data),f=Fe(a,d,o.data);return{runner:a,runnerExplicit:e.runner!==null,model:d,effort:s?``:Le(e.effort,f),effortOptions:f,runners:r,defaultRunner:i,canRun:t.isSuccess&&r.length>0,modelsLocked:s,providerPending:t.isPending,providerError:t.isError,accounts:c,account:u,repoAccount:l}}function jt(e){return{runner:ge(e.runner,e.defaultRunner,e.runnerExplicit),model:e.modelsLocked?void 0:e.model||void 0,effort:e.modelsLocked?void 0:e.effort||void 0}}function Mt(e){return{...jt(e),...e.account?{agentProfile:e.account}:{}}}function Nt({pick:e,onChange:t,disabled:n=!1,accounts:r=!1,layout:i}){let a=(0,G.useRef)(null),s=(0,G.useRef)(null),[c,l]=(0,G.useState)(()=>typeof window<`u`&&window.innerWidth<=767);(0,G.useLayoutEffect)(()=>{let e=a.current;if(i!==`row`||!e)return;let t=()=>{let t=window.innerWidth<=767||e.getBoundingClientRect().width<550,n=document.activeElement;s.current=n instanceof HTMLElement&&e.contains(n)?n:null,l(t)};t();let n=typeof ResizeObserver>`u`?null:new ResizeObserver(t);return n?.observe(e),window.addEventListener(`resize`,t),()=>{n?.disconnect(),window.removeEventListener(`resize`,t)}},[i]),(0,G.useLayoutEffect)(()=>{let e=s.current;s.current=null,e&&e.isConnected&&document.activeElement!==e&&e.focus()},[c]);let u=At(e),{runner:d,model:f,effort:p,effortOptions:m,runners:h,canRun:g,modelsLocked:_}=u,v=F(),y=A(d),b=$e(d,y.data,[e.model,v.data?.defaultModels?.[d]]),x=n||!g,C=r?u.accounts:[],w=h.length>1||h.some(e=>Ge(C,e))?(0,K.jsx)(Ve,{icon:(0,K.jsx)(o,{"aria-hidden":`true`,className:`size-[18px] shrink-0 text-accent-text`}),fieldLabel:!0,runners:h,value:d,accounts:C,account:r?u.account:null,repoAccount:r?u.repoAccount:void 0,disabled:x,onPick:(n,i)=>t(r?{runner:n,account:i,model:n===d?e.model:null,effort:e.effort}:{runner:n,account:null,model:null,effort:e.effort})},`runner`):null,E=(0,K.jsx)(U,{icon:(0,K.jsx)(S,{"aria-hidden":`true`,className:`size-[18px] shrink-0 text-accent-text`}),fieldLabel:!0,slot:`model-pill`,ariaLabel:`Model`,label:f===``?`Default`:b.find(e=>e.id===f).label,value:f,disabled:x,readOnly:_===!0,disabledHint:_?`Model selection is locked to native coding-agent settings.`:void 0,onPick:n=>{let r=Fe(d,n,y.data);t({...e,model:n,effort:e.effort===null?null:Le(e.effort,r)})},options:b.map(e=>({value:e.id,label:e.label,desc:e.desc})),status:Xe(d,y.data,y.isError,y.isFetching)},`model`),D=(0,K.jsx)(U,{icon:(0,K.jsx)(T,{"aria-hidden":`true`,className:`size-[18px] shrink-0 text-accent-text`}),fieldLabel:!0,slot:`effort-pill`,ariaLabel:`Effort`,label:m.find(e=>e.value===p)?.label??`auto`,value:p,disabled:x,readOnly:_===!0,disabledHint:_?`Effort selection is locked to native coding-agent settings.`:void 0,onPick:n=>t({...e,effort:n}),options:m.map(e=>({value:e.value,label:e.label,desc:e.desc}))},`effort`);return i===`row`?(0,K.jsx)(`div`,{ref:a,"data-slot":`engine-row-box`,children:(0,K.jsx)(`div`,{"data-slot":`engine-row`,className:`engine-row`,role:`group`,"aria-label":`Agent settings`,children:(0,K.jsx)(We,{children:c?[w,D,E]:[w,E,D]})})}):(0,K.jsxs)(We,{children:[w,E,D]})}var Pt={workflow:null,skills:[]},Ft=`cez-followup-selection`;function It(e){let t=e&&typeof e==`object`?e:{};return{workflow:typeof t.workflow==`string`?t.workflow:null,skills:Array.isArray(t.skills)?t.skills.filter(e=>typeof e==`string`):[]}}function Lt(){try{let e=localStorage.getItem(Ft);return e?It(JSON.parse(e)):{...Pt}}catch{return{...Pt}}}function Rt(e){try{localStorage.setItem(Ft,JSON.stringify(e))}catch{}}var zt=`cez-followup-prompt:`;function Bt(e){try{return localStorage.getItem(zt+e)??``}catch{return``}}function Vt(e,t){try{t===``?localStorage.removeItem(zt+e):localStorage.setItem(zt+e,t)}catch{}}function Ht({item:e,workflows:t,skills:n,workflow:i,onWorkflowChange:o,selectedSkills:s,onSkillsChange:c,engine:l,onEngineChange:d,queuedRunId:f,onQueued:p}){let m=u(),_=re(),v=ne().data?.capabilities.automations===!0,b=e.kind===`pr`?`PR`:`issue`,x=s.filter(e=>n.some(t=>t.name===e)),[S]=(0,G.useState)(()=>$(e)),[C,T]=(0,G.useState)(()=>Bt(e.url)||S),E=At(l),D=(0,G.useRef)(null),O=(0,G.useRef)(null);(0,G.useEffect)(()=>{Vt(e.url,C===S?``:C)},[e.url,C,S]);let k=(0,G.useMemo)(()=>je(Ae(_.data?.promptTemplates),{automations:v}),[_.data?.promptTemplates,v]),te=e=>{let t=D.current,n=ke({prompt:C,base:S,selectionStart:t?.selectionStart??null,focused:document.activeElement===t,remembered:O.current}),r=he(C,n,e);T(r.text),O.current=r.caret,requestAnimationFrame(()=>{D.current?.focus(),D.current?.setSelectionRange(r.caret,r.caret)})},A=tt(k,x),M=(0,G.useRef)(C);M.current=C;let N=(0,G.useRef)(``);(0,G.useEffect)(()=>{let e=xe(M.current,N.current,A,S);N.current=e.applied,e.text!==M.current&&T(e.text)},[A,S]);let P=j({mutationFn:async()=>E.canRun?w(kt(e,i,x,C,Mt(E))):null,onSuccess:t=>{if(t===null)return;let n=t;n&&p(e.url,n.id),g(`Added to the queue — ${b} #${e.number}`),x.length>0&&_.data!==void 0&&ee({skillUsage:x.reduce((e,t)=>Ue(e,t),_.data.skillUsage)}).then(()=>m.invalidateQueries({queryKey:I.uiState})).catch(()=>{}),Vt(e.url,``),T(S),N.current=``,m.invalidateQueries({queryKey:I.runs.all})},onError:e=>g(e.message,{tone:`danger`})}),F=e=>{ve({key:e.key,shiftKey:e.shiftKey,metaKey:e.metaKey,ctrlKey:e.ctrlKey,altKey:e.altKey,repeat:e.repeat,isComposing:e.nativeEvent.isComposing})&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),!P.isPending&&E.canRun&&P.mutate())},L=e=>c(s.includes(e)?s.filter(t=>t!==e):[...s,e]);return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`section`,{"data-slot":`gh-hand`,className:`mt-7 rounded-lg border border-border bg-card p-4`,children:[(0,K.jsx)(`h3`,{className:`text-xl font-normal text-foreground`,children:`Hand this to the agent`}),(0,K.jsxs)(`label`,{className:`gh-field gh-prompt-field`,children:[(0,K.jsx)(`span`,{children:`Instructions for the agent`}),(0,K.jsx)(He,{ref:D,"data-slot":`gh-custom-prompt`,"aria-label":`Custom prompt`,"aria-keyshortcuts":`Control+Enter Meta+Enter`,value:C,onChange:e=>T(e.target.value),onSelect:e=>{O.current=e.currentTarget.selectionStart},onKeyDown:F,placeholder:`Instructions for the agent… (#${e.number} and its link are always sent)`,className:`mt-3 min-h-20 text-[13px]`})]}),(0,K.jsx)(ze,{templates:k,onInsert:te}),(0,K.jsxs)(`div`,{className:`gh-handoff-settings`,children:[(0,K.jsxs)(`div`,{className:`gh-field`,children:[(0,K.jsx)(`span`,{children:`Workflow`}),(0,K.jsx)(Ut,{workflows:t,value:i,onChange:o})]}),(0,K.jsxs)(`div`,{className:`gh-field`,children:[(0,K.jsx)(`span`,{children:`Skills · select one or more`}),(0,K.jsx)(Gt,{skills:n,skillUsage:_.data?.skillUsage,selected:x,onToggle:L})]}),x.length>0?(0,K.jsx)(`div`,{"data-slot":`gh-skill-chips`,className:`mt-2.5 flex flex-wrap gap-1.5`,children:x.map(e=>(0,K.jsxs)(`button`,{type:`button`,"data-slot":`gh-skill-chip`,"data-skill":e,onClick:()=>L(e),title:`Remove this skill`,className:`inline-flex min-h-11 items-center gap-2 rounded-lg border border-border bg-card px-3 text-xs font-medium text-foreground transition-colors hover:bg-danger/10 hover:text-danger`,children:[e,(0,K.jsx)(y,{size:16,"aria-hidden":`true`,className:`size-3`})]},e))}):null,(0,K.jsx)(Nt,{layout:`row`,pick:l,onChange:d,disabled:P.isPending||!E.canRun,accounts:!0}),(0,K.jsxs)(`div`,{className:`gh-field`,children:[(0,K.jsx)(`span`,{children:`Account`}),(0,K.jsx)(Wt,{resolved:E,disabled:P.isPending||!E.canRun,onPick:e=>d({...l,account:e})})]}),!E.providerPending&&!E.canRun?(0,K.jsxs)(`span`,{"data-slot":`gh-provider-gate`,className:`inline-flex flex-wrap items-center gap-1 text-xs text-muted-foreground`,children:[E.providerError?`Provider authentication could not be verified.`:`Connect an agent provider to run this item.`,(0,K.jsx)(z,{to:`/settings/agents#providers`,className:`font-medium text-foreground underline underline-offset-4`,children:`Configure providers`})]}):null]}),(0,K.jsxs)(`p`,{className:`text-[11px] leading-relaxed text-muted-foreground`,children:[e.kind===`pr`?`PR`:`Issue`,` number and link remain attached to the task. Edit the prompt before starting. Cmd/Ctrl+Enter submits; Enter adds a new line.`]})]}),(0,K.jsxs)(`div`,{"data-slot":`gh-handoff-actions`,className:`mt-[22px] flex flex-wrap items-center gap-2.5`,children:[r(e.url)?(0,K.jsx)(a,{asChild:!0,variant:`outline`,children:(0,K.jsx)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,children:`Open in GitHub`})}):null,(0,K.jsxs)(a,{variant:`primary`,"data-action":`gh-run`,disabled:P.isPending||!E.canRun,onClick:()=>P.mutate(),children:[(0,K.jsx)(fe,{"aria-hidden":`true`,className:`size-3.5`}),`Run agent on this `,b]}),(0,K.jsx)(`kbd`,{"aria-hidden":`true`,className:`rounded-[5px] border border-b-2 border-border bg-card px-[5px] py-px font-mono text-[11px] font-medium text-muted-foreground`,children:_e()}),f?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`span`,{"data-slot":`gh-queued`,className:`flex items-center gap-1 text-xs font-medium text-success`,children:[(0,K.jsx)(h,{size:16,"aria-hidden":`true`,className:`size-3.5`}),`queued`]}),(0,K.jsx)(z,{to:`/tasks/${f}`,"data-slot":`gh-view-run`,className:`text-xs font-semibold text-accent-text hover:underline`,children:`View task →`})]}):null]})]})}function Ut({workflows:e,value:t,onChange:n}){let[r,a]=(0,G.useState)(!1),[o,s]=(0,G.useState)(``),c=(0,G.useRef)(null),l=Se(e,o);return(0,K.jsxs)(ce,{open:r,onOpenChange:e=>{a(e),e||s(``)},children:[(0,K.jsx)(oe,{asChild:!0,children:(0,K.jsxs)(`button`,{type:`button`,"data-slot":`gh-workflow-trigger`,"aria-label":`Choose a workflow`,className:i(Be,t&&`border-foreground/60 font-mono text-[11px] font-semibold text-foreground`),children:[(0,K.jsx)(f,{size:16,"aria-hidden":`true`,className:`size-3 shrink-0 text-accent-icon`}),(0,K.jsx)(`span`,{className:`min-w-0 max-w-44 truncate`,children:t??`workflow`}),(0,K.jsx)(_,{size:16,"aria-hidden":`true`,className:`size-2.5 shrink-0 text-soft-foreground`})]})}),(0,K.jsx)(se,{align:`start`,sideOffset:8,className:`w-[320px] max-w-[calc(100vw-2rem)] p-0`,children:(0,K.jsxs)(be,{shouldFilter:!1,children:[(0,K.jsx)(Ce,{placeholder:`search workflows…`,value:o,onValueChange:s,onInput:()=>c.current?.scrollTo(0,0)}),(0,K.jsxs)(Me,{ref:c,"data-slot":`gh-workflow-menu`,className:`max-h-[min(16rem,calc(var(--radix-popover-content-available-height)-3rem))]`,children:[l.length===0?(0,K.jsx)(we,{children:`Nothing matches.`}):null,(0,K.jsx)(W,{children:l.map(e=>{let r=t===e.name;return(0,K.jsxs)(Ne,{value:`workflow ${e.name}`,keywords:Te(e.name,e.description),"data-slot":`gh-workflow-option`,"data-workflow":e.name,onSelect:()=>{n(r?null:e.name),a(!1)},children:[(0,K.jsx)(`span`,{className:`shrink-0 font-mono text-xs`,children:e.name}),e.description?(0,K.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs text-soft-foreground`,children:e.description}):null,r?(0,K.jsx)(h,{size:16,"aria-hidden":`true`,className:`ml-auto size-3.5 shrink-0 text-link-foreground`}):null]},e.name)})})]})]})})]})}function Wt({resolved:e,disabled:t,onPick:n}){let r=e.accounts.filter(t=>t.provider===e.runner),i=[...r.some(e=>e.id==="default")?[]:[{value:Ze,label:`Default`}],...r.map(e=>({value:e.id,label:e.label,desc:e.configDir}))],a=e.account??e.repoAccount?.[e.runner]??`default`;return(0,K.jsx)(U,{icon:(0,K.jsx)(v,{"aria-hidden":`true`,className:`size-[18px] shrink-0 text-accent-text`}),slot:`account-pill`,ariaLabel:`Account`,label:i.find(e=>e.value===a)?.label??`Default`,value:a,options:i,disabled:t,onPick:n})}function Gt({skills:e,skillUsage:t,selected:n,onToggle:r}){let[a,o]=(0,G.useState)(!1),[s,l]=(0,G.useState)(``),[u,d]=(0,G.useState)(null),f=(0,G.useRef)(null),{mostUsed:p,project:m,global:g,ranked:v}=ye(e,s,t),y=(e,t)=>{let a=n.includes(e.name);return(0,K.jsxs)(Ne,{value:`skill ${e.name} ${e.path}`,keywords:Te(e.name,e.description),"data-slot":`gh-skill-option`,"data-skill":e.name,"data-selected":a?`true`:void 0,onSelect:()=>r(e.name),children:[(0,K.jsx)(`span`,{className:i(`shrink-0 font-mono text-xs`,t&&`font-semibold`),children:e.name}),e.description?(0,K.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs text-soft-foreground`,children:e.description}):null,(0,K.jsx)(`button`,{type:`button`,"data-slot":`gh-skill-view`,"aria-label":`View skill ${e.name}`,title:`View skill`,onClick:t=>{t.preventDefault(),t.stopPropagation(),d(e)},className:`ml-auto shrink-0 rounded-sm p-0.5 text-soft-foreground transition-colors hover:text-foreground`,children:(0,K.jsx)(le,{"aria-hidden":`true`,className:`size-3.5`})}),a?(0,K.jsx)(h,{size:16,"aria-hidden":`true`,className:`size-3.5 shrink-0 text-link-foreground`}):null]},e.path)};return e.length===0?null:(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Ie,{skill:u,onClose:()=>d(null)}),(0,K.jsxs)(ce,{open:a,onOpenChange:e=>{o(e),e||l(``)},children:[(0,K.jsx)(oe,{asChild:!0,children:(0,K.jsxs)(`button`,{type:`button`,"data-slot":`gh-skills-trigger`,"aria-label":`Choose skills`,className:i(Be,n.length>0&&`border-foreground/60 font-semibold text-foreground`),children:[(0,K.jsx)(c,{size:16,"aria-hidden":`true`,className:`size-3 shrink-0 text-accent-icon`}),`skills`,n.length>0?` · ${n.length}`:``,(0,K.jsx)(_,{size:16,"aria-hidden":`true`,className:`size-2.5 shrink-0 text-soft-foreground`})]})}),(0,K.jsx)(se,{align:`start`,sideOffset:8,className:`w-[336px] max-w-[calc(100vw-2rem)] p-0`,children:(0,K.jsxs)(be,{shouldFilter:!1,children:[(0,K.jsx)(Ce,{placeholder:`search skills…`,value:s,onValueChange:l,onInput:()=>f.current?.scrollTo(0,0)}),(0,K.jsxs)(Me,{ref:f,"data-slot":`gh-skill-menu`,className:`max-h-[min(16rem,calc(var(--radix-popover-content-available-height)-3rem))]`,children:[(v?v.length===0:p.length===0&&m.length===0&&g.length===0)?(0,K.jsx)(we,{children:`Nothing matches.`}):null,v?v.length>0?(0,K.jsx)(W,{children:v.map(e=>y(e,me(e)))}):null:(0,K.jsxs)(K.Fragment,{children:[p.length>0?(0,K.jsx)(W,{heading:`Most used`,children:p.map(e=>y(e,me(e)))}):null,m.length>0?(0,K.jsx)(W,{heading:`Project skills`,children:m.map(e=>y(e,!0))}):null,g.length>0?(0,K.jsx)(W,{heading:`Global`,children:g.map(e=>y(e,!1))}):null]})]})]})})]})]})}var Kt=new WeakMap;function qt(){let e=Lt(),t={workflow:e.workflow,selectedSkills:e.skills,engine:{runner:null,model:null,effort:null,account:null},queued:new Map},n=new Set;return{snapshot:()=>t,subscribe:e=>(n.add(e),()=>{n.delete(e)}),update:e=>{t={...t,...e},(e.workflow!==void 0||e.selectedSkills!==void 0)&&Rt({workflow:t.workflow,skills:[...t.selectedSkills]}),n.forEach(e=>e())}}}function Jt(){let e=u(),{projectId:t}=d(),n=Kt.get(e);n||Kt.set(e,n=new Map);let r=n.get(t);r||n.set(t,r=qt());let{snapshot:i,subscribe:a,update:o}=r,s=(0,G.useSyncExternalStore)(a,i,i),c=te(),l=N(),f=re(),p=c.data?.workflows;(0,G.useEffect)(()=>{p&&s.workflow!==null&&!p.some(e=>e.name===s.workflow)&&o({workflow:null})},[o,p,s.workflow]);let m=(0,G.useMemo)(()=>Ee(l.data??[],f.data?.skillUsage),[l.data,f.data?.skillUsage]);return{...s,workflows:c,skillList:m,setWorkflow:e=>o({workflow:e}),setSelectedSkills:e=>o({selectedSkills:e}),setEngine:e=>o({engine:e}),onQueued:(e,t)=>o({queued:new Map(i().queued).set(e,t)})}}export{bt as a,ft as c,q as d,at as f,St as i,rt as l,Ht as n,st as o,Ct as r,ot as s,Jt as t,it as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[data-route=github]{width:100%}[data-slot=gh-workspace][data-stacked=true]{height:auto}[data-slot=gh-workspace][data-stacked=true] [data-slot=gh-panes]{flex-direction:column;flex:none;overflow:visible}[data-slot=gh-workspace][data-stacked=true] :is([data-slot=gh-list],[data-slot=gh-detail]){flex:none;width:100%;overflow:visible}[data-slot=gh-workspace][data-stacked=true] [data-slot=gh-list-resize-handle]{display:none}[data-slot=gh-hand]{border-color:color-mix(in oklch, var(--accent-strong) 24%, var(--border));background:var(--background);border-radius:12px;flex-direction:column;gap:16px;padding:20px;display:flex}[data-slot=gh-hand]>h3{margin:0}.gh-handoff-settings{flex-direction:column;gap:16px;display:flex}.gh-field{flex-direction:column;gap:6px;min-width:0;display:flex}.gh-field>span{color:var(--muted-foreground);font-size:11px}.gh-field>button,.gh-field>select{border:1px solid var(--border);background:var(--card);width:100%;min-height:44px;color:var(--foreground);text-align:start;border-radius:8px;padding-block:0;padding-inline:12px;font-size:12px}.gh-field>button>svg:last-child{margin-inline-start:auto}[data-slot=gh-custom-prompt]{min-height:150px;margin-block-start:0;padding:16px;font-size:14px}[data-slot=gh-merge-box]{border-radius:12px;margin-block:22px;padding:24px}[data-slot=gh-merge-box] select{flex:none;min-height:44px}@media (width<=767px){[data-slot=gh-panes]{flex-direction:column;display:flex}[data-slot=gh-list]{width:100%}[data-slot=gh-hand],[data-slot=gh-merge-box]{padding:16px}}[data-slot=gh-tabs]>a,.gh-utility{border:1px solid var(--border);background:var(--card);min-height:44px;color:var(--foreground);border-radius:8px;align-items:center;gap:8px;padding-block:10px;padding-inline:16px;font-size:12px;display:inline-flex}[data-slot=gh-tabs]>a[aria-current=page]{background:var(--accent-strong);color:var(--accent-strong-foreground);border-color:var(--accent-strong)}.gh-utility:disabled{opacity:.5}@media (width<=767px){[data-slot=gh-tabs]{flex-direction:column;align-items:flex-start}}[data-slot=gh-hand]>[data-slot=prompt-template-trigger]{border-radius:8px;align-self:flex-start;min-height:44px;padding-block:0;padding-inline:12px}@media (width<=767px){[data-slot=gh-list][data-mobile-preview] [data-slot=gh-row-item][data-compact-hidden]{display:none}}[data-slot=gh-merge-box]>div>svg{display:none}[data-slot=gh-merge-box] h3{font-size:18px;font-weight:400}[data-slot=gh-merge-box] ul{margin-block-start:20px;font-size:13px}[data-slot=gh-merge-box] ul>li+li{margin-block-start:16px}[data-slot=gh-merge-box] select+button{background:var(--accent-strong);color:var(--accent-strong-foreground)}[data-route=github] [data-slot=gh-tabs]>a{border:none;color:var(--muted-foreground);background:0 0;border-block-end:2px solid #0000;border-radius:0;padding-inline:0}[data-route=github] [data-slot=gh-tabs]>a[aria-current=page]{color:var(--accent-text);border-color:var(--accent-strong)}[data-route=github] [data-slot=gh-tabs]{flex-flow:wrap}[data-slot=gh-merge-confirm] [data-variant=primary]{background:var(--accent-strong);color:var(--accent-strong-foreground)}[data-slot=gh-merge-box]:not([data-eligibility=ready]) h3{color:var(--pending-strong)}[data-slot=gh-tabs] .gh-utility:first-of-type{margin-inline-start:auto}[data-route=github] [data-slot=gh-tabs]{border-block-end:1px solid var(--border);gap:24px}[data-slot=gh-header]>div:first-child{row-gap:8px}[data-slot=gh-search]{border-radius:8px;padding-inline-start:36px;font-size:12px}[data-slot=gh-rows]{gap:0}[data-slot=gh-row-item][data-divided]{border-block-start:1px solid var(--border)}[data-slot=gh-row]{border-radius:8px;padding-block:14px;padding-inline:12px}[data-slot=gh-row][data-kind=issue]>span:first-child>svg{display:none}[data-slot=gh-row][data-kind=issue]>span{padding-inline-start:0}[data-slot=gh-row]>span:first-child>span{white-space:normal;font-weight:400}[data-slot=gh-row]>span:nth-child(2){font-family:inherit;font-size:11px}[data-slot=gh-detail-inner]{padding:24px}[data-slot=gh-hand]{border-color:color-mix(in oklch, var(--accent-strong) 24%, var(--border))}.gh-prompt-field{gap:8px}.gh-prompt-field [data-slot=gh-custom-prompt]{border:1px solid var(--border);background:var(--card);border-radius:8px;min-height:96px;padding:12px}.gh-field [data-slot=account-pill]{width:100%}@media (width<=767px){[data-slot=gh-tabs] .gh-utility:first-of-type{margin-inline-start:0}[data-slot=gh-detail-inner]{padding:16px}}[data-slot=gh-row][data-kind=issue]>span:first-child{color:var(--foreground)}[data-slot=gh-row-labels]{order:1}[data-slot=gh-row-labels]>span+span:before{content:"·";margin-inline-end:4px}[data-slot=gh-row]>span:nth-child(2){order:2}[data-slot=gh-merge-box] [data-variant=primary]{background:var(--accent-strong);color:var(--accent-strong-foreground)}[data-slot=gh-merge-box][data-conflicting=true] h3{color:var(--conflict)}[data-slot=gh-bypass-warning]{color:var(--pending-strong)}@media (width<=767px){[data-route=github] [data-slot=gh-tabs]{gap:12px}[data-route=github] [data-slot=gh-filter-toolbar]>div:first-child{flex-basis:auto;width:100%}}@media (width>=768px){[data-route=github] [data-slot=gh-tabs]{gap:22px;min-height:0;margin-inline:-28px;padding-inline:28px}[data-route=github] [data-slot=gh-tabs]>a:not(.gh-utility){min-height:0;margin-block-end:-1px;padding-block:0 10px;padding-inline:0;font-size:13px;font-weight:600}[data-route=github] [data-slot=gh-tabs]>a:not([aria-current=page]){color:var(--muted-foreground);font-weight:500}[data-route=github] [data-slot=gh-tabs]>a[aria-current=page]{color:var(--foreground);border-color:var(--foreground)}[data-route=github] [data-slot=gh-tabs] .gh-utility{border-radius:7px;min-height:28px;margin-block-end:8px;padding-block:0;padding-inline:10px;font-size:12px}[data-route=github] [data-slot=gh-filter-toolbar]{gap:8px}[data-route=github] [data-slot=gh-filter-toolbar] :is(input,button,select){border-radius:7px;height:32px;min-height:32px;padding-block:0;font-size:12.5px}[data-route=github] [data-slot=gh-filter-toolbar] :is(button,select):not([aria-pressed=true]){color:var(--muted-foreground)}[data-route=github] [data-slot=gh-filter-toolbar] [data-slot=gh-search]{color:var(--foreground);padding-inline-start:32px}}[data-slot=engine-row-box]{width:100%;min-width:0;container:engine-row/inline-size}.engine-row{grid-template-columns:max-content minmax(0,1fr) max-content;gap:10px;display:grid}.engine-row>:is([data-slot$=pill],:has(>[data-slot$=pill])){min-width:0}.engine-row [data-slot$=pill]{border-color:var(--border);border-radius:9px;width:100%;min-width:0;min-height:44px}.engine-row [data-slot=model-pill]{justify-content:flex-start}.engine-row [data-slot$=pill]>svg:last-child{margin-inline-start:auto}@container engine-row (width>=550px){.engine-row:not(:has([data-slot=runner-pill])){grid-template-columns:minmax(0,1fr) max-content}}@container engine-row (width<=549.99px){.engine-row{grid-template-columns:max-content minmax(0,1fr)}.engine-row>:is([data-slot=model-pill],:has(>[data-slot=model-pill])){grid-area:2/1/auto/-1}.engine-row>:is([data-slot=effort-pill],:has(>[data-slot=effort-pill])){grid-area:1/2}.engine-row:not(:has([data-slot=runner-pill]))>:is([data-slot=effort-pill],:has(>[data-slot=effort-pill])){grid-column:1/-1}.engine-row :is([data-slot=runner-pill],[data-slot=effort-pill])>svg:first-child{display:none}}@media (width<=767px){.engine-row{grid-template-columns:max-content minmax(0,1fr)}.engine-row>:is([data-slot=model-pill],:has(>[data-slot=model-pill])){grid-area:2/1/auto/-1}.engine-row>:is([data-slot=effort-pill],:has(>[data-slot=effort-pill])){grid-area:1/2}.engine-row:not(:has([data-slot=runner-pill]))>:is([data-slot=effort-pill],:has(>[data-slot=effort-pill])){grid-column:1/-1}}
|