@vibesdotdev/workboard 0.0.0-stage → 1.0.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +18 -0
- package/README.md +31 -2
- package/dist/agent-actions.d.ts +19 -0
- package/dist/agent-actions.d.ts.map +1 -0
- package/dist/agent-actions.js +93 -0
- package/dist/agent-actions.js.map +1 -0
- package/dist/attention/headless-attention.host.d.ts +78 -0
- package/dist/attention/headless-attention.host.d.ts.map +1 -0
- package/dist/attention/headless-attention.host.js +42 -0
- package/dist/attention/headless-attention.host.js.map +1 -0
- package/dist/attention/index.d.ts +2 -0
- package/dist/attention/index.d.ts.map +1 -0
- package/dist/attention/index.js +2 -0
- package/dist/attention/index.js.map +1 -0
- package/dist/cli/marshal/components/index.d.ts +12 -0
- package/dist/cli/marshal/components/index.d.ts.map +1 -0
- package/dist/cli/marshal/components/index.js +12 -0
- package/dist/cli/marshal/components/index.js.map +1 -0
- package/dist/cli/marshal/components/marshal-progress.d.ts +52 -0
- package/dist/cli/marshal/components/marshal-progress.d.ts.map +1 -0
- package/dist/cli/marshal/components/marshal-progress.js +182 -0
- package/dist/cli/marshal/components/marshal-progress.js.map +1 -0
- package/dist/cli/marshal/components/marshal-prompt.d.ts +72 -0
- package/dist/cli/marshal/components/marshal-prompt.d.ts.map +1 -0
- package/dist/cli/marshal/components/marshal-prompt.js +256 -0
- package/dist/cli/marshal/components/marshal-prompt.js.map +1 -0
- package/dist/cli/marshal/components/marshal-widgets.d.ts +73 -0
- package/dist/cli/marshal/components/marshal-widgets.d.ts.map +1 -0
- package/dist/cli/marshal/components/marshal-widgets.js +283 -0
- package/dist/cli/marshal/components/marshal-widgets.js.map +1 -0
- package/dist/cli/marshal/index.d.ts +2 -0
- package/dist/cli/marshal/index.d.ts.map +1 -0
- package/dist/cli/marshal/index.js +2 -0
- package/dist/cli/marshal/index.js.map +1 -0
- package/dist/client/helper.d.ts +12 -0
- package/dist/client/helper.d.ts.map +1 -0
- package/dist/client/helper.js +13 -0
- package/dist/client/helper.js.map +1 -0
- package/dist/client/index.d.ts +3 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +3 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/workboard-client.d.ts +283 -0
- package/dist/client/workboard-client.d.ts.map +1 -0
- package/dist/client/workboard-client.js +550 -0
- package/dist/client/workboard-client.js.map +1 -0
- package/dist/config/workboard.config.descriptor.d.ts +38 -0
- package/dist/config/workboard.config.descriptor.d.ts.map +1 -0
- package/dist/config/workboard.config.descriptor.js +30 -0
- package/dist/config/workboard.config.descriptor.js.map +1 -0
- package/dist/docs/workboard.docs.descriptor.d.ts +4 -0
- package/dist/docs/workboard.docs.descriptor.d.ts.map +1 -0
- package/dist/docs/workboard.docs.descriptor.js +85 -0
- package/dist/docs/workboard.docs.descriptor.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/dist/marshal/agent/descriptor.d.ts +66 -0
- package/dist/marshal/agent/descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/descriptor.js +144 -0
- package/dist/marshal/agent/descriptor.js.map +1 -0
- package/dist/marshal/agent/index.d.ts +10 -0
- package/dist/marshal/agent/index.d.ts.map +1 -0
- package/dist/marshal/agent/index.js +10 -0
- package/dist/marshal/agent/index.js.map +1 -0
- package/dist/marshal/agent/marshal-agent.d.ts +42 -0
- package/dist/marshal/agent/marshal-agent.d.ts.map +1 -0
- package/dist/marshal/agent/marshal-agent.js +121 -0
- package/dist/marshal/agent/marshal-agent.js.map +1 -0
- package/dist/marshal/agent/marshal.agent.descriptor.d.ts +9 -0
- package/dist/marshal/agent/marshal.agent.descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/marshal.agent.descriptor.js +9 -0
- package/dist/marshal/agent/marshal.agent.descriptor.js.map +1 -0
- package/dist/marshal/agent/profile.d.ts +16 -0
- package/dist/marshal/agent/profile.d.ts.map +1 -0
- package/dist/marshal/agent/profile.js +55 -0
- package/dist/marshal/agent/profile.js.map +1 -0
- package/dist/marshal/agent/prompts/cloud-system.prompt.descriptor.d.ts +113 -0
- package/dist/marshal/agent/prompts/cloud-system.prompt.descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/prompts/cloud-system.prompt.descriptor.js +85 -0
- package/dist/marshal/agent/prompts/cloud-system.prompt.descriptor.js.map +1 -0
- package/dist/marshal/agent/prompts/index.d.ts +113 -0
- package/dist/marshal/agent/prompts/index.d.ts.map +1 -0
- package/dist/marshal/agent/prompts/index.js +16 -0
- package/dist/marshal/agent/prompts/index.js.map +1 -0
- package/dist/marshal/agent/prompts/personality.prompt.descriptor.d.ts +113 -0
- package/dist/marshal/agent/prompts/personality.prompt.descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/prompts/personality.prompt.descriptor.js +34 -0
- package/dist/marshal/agent/prompts/personality.prompt.descriptor.js.map +1 -0
- package/dist/marshal/agent/prompts/setup-issue.prompt.descriptor.d.ts +113 -0
- package/dist/marshal/agent/prompts/setup-issue.prompt.descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/prompts/setup-issue.prompt.descriptor.js +68 -0
- package/dist/marshal/agent/prompts/setup-issue.prompt.descriptor.js.map +1 -0
- package/dist/marshal/agent/prompts/setup-wizard.prompt.descriptor.d.ts +113 -0
- package/dist/marshal/agent/prompts/setup-wizard.prompt.descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/prompts/setup-wizard.prompt.descriptor.js +38 -0
- package/dist/marshal/agent/prompts/setup-wizard.prompt.descriptor.js.map +1 -0
- package/dist/marshal/agent/prompts/surface.prompt.descriptor.d.ts +113 -0
- package/dist/marshal/agent/prompts/surface.prompt.descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/prompts/surface.prompt.descriptor.js +39 -0
- package/dist/marshal/agent/prompts/surface.prompt.descriptor.js.map +1 -0
- package/dist/marshal/agent/prompts/system.prompt.descriptor.d.ts +113 -0
- package/dist/marshal/agent/prompts/system.prompt.descriptor.d.ts.map +1 -0
- package/dist/marshal/agent/prompts/system.prompt.descriptor.js +63 -0
- package/dist/marshal/agent/prompts/system.prompt.descriptor.js.map +1 -0
- package/dist/marshal/agent/system-prompt.d.ts +34 -0
- package/dist/marshal/agent/system-prompt.d.ts.map +1 -0
- package/dist/marshal/agent/system-prompt.js +130 -0
- package/dist/marshal/agent/system-prompt.js.map +1 -0
- package/dist/marshal/capabilities.d.ts +55 -0
- package/dist/marshal/capabilities.d.ts.map +1 -0
- package/dist/marshal/capabilities.js +146 -0
- package/dist/marshal/capabilities.js.map +1 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.descriptor.d.ts +4 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.descriptor.d.ts.map +1 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.descriptor.js +18 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.descriptor.js.map +1 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.impl.consumer.d.ts +16 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.impl.consumer.d.ts.map +1 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.impl.consumer.js +39 -0
- package/dist/marshal/cli/fleet.marshal-presence.heartbeat.command.impl.consumer.js.map +1 -0
- package/dist/marshal/cli/plugin.d.ts +3 -0
- package/dist/marshal/cli/plugin.d.ts.map +1 -0
- package/dist/marshal/cli/plugin.js +9 -0
- package/dist/marshal/cli/plugin.js.map +1 -0
- package/dist/marshal/client/helper.d.ts +24 -0
- package/dist/marshal/client/helper.d.ts.map +1 -0
- package/dist/marshal/client/helper.js +36 -0
- package/dist/marshal/client/helper.js.map +1 -0
- package/dist/marshal/client/index.d.ts +7 -0
- package/dist/marshal/client/index.d.ts.map +1 -0
- package/dist/marshal/client/index.js +6 -0
- package/dist/marshal/client/index.js.map +1 -0
- package/dist/marshal/client/marshal-api-client.impl.d.ts +22 -0
- package/dist/marshal/client/marshal-api-client.impl.d.ts.map +1 -0
- package/dist/marshal/client/marshal-api-client.impl.js +47 -0
- package/dist/marshal/client/marshal-api-client.impl.js.map +1 -0
- package/dist/marshal/client/marshal-client.runtime.d.ts +124 -0
- package/dist/marshal/client/marshal-client.runtime.d.ts.map +1 -0
- package/dist/marshal/client/marshal-client.runtime.js +216 -0
- package/dist/marshal/client/marshal-client.runtime.js.map +1 -0
- package/dist/marshal/cloud.plugin.d.ts +2 -0
- package/dist/marshal/cloud.plugin.d.ts.map +1 -0
- package/dist/marshal/cloud.plugin.js +2 -0
- package/dist/marshal/cloud.plugin.js.map +1 -0
- package/dist/marshal/components/index.d.ts +8 -0
- package/dist/marshal/components/index.d.ts.map +1 -0
- package/dist/marshal/components/index.js +15 -0
- package/dist/marshal/components/index.js.map +1 -0
- package/dist/marshal/config/manifest.d.ts +8608 -0
- package/dist/marshal/config/manifest.d.ts.map +1 -0
- package/dist/marshal/config/manifest.js +115 -0
- package/dist/marshal/config/manifest.js.map +1 -0
- package/dist/marshal/consumer.d.ts +7 -0
- package/dist/marshal/consumer.d.ts.map +1 -0
- package/dist/marshal/consumer.js +9 -0
- package/dist/marshal/consumer.js.map +1 -0
- package/dist/marshal/consumer.plugin.d.ts +2 -0
- package/dist/marshal/consumer.plugin.d.ts.map +1 -0
- package/dist/marshal/consumer.plugin.js +2 -0
- package/dist/marshal/consumer.plugin.js.map +1 -0
- package/dist/marshal/context/agents-context-kind.d.ts +9 -0
- package/dist/marshal/context/agents-context-kind.d.ts.map +1 -0
- package/dist/marshal/context/agents-context-kind.js +17 -0
- package/dist/marshal/context/agents-context-kind.js.map +1 -0
- package/dist/marshal/context/marshal.context-provider.descriptor.d.ts +26 -0
- package/dist/marshal/context/marshal.context-provider.descriptor.d.ts.map +1 -0
- package/dist/marshal/context/marshal.context-provider.descriptor.js +10 -0
- package/dist/marshal/context/marshal.context-provider.descriptor.js.map +1 -0
- package/dist/marshal/context/marshal.context-provider.impl.d.ts +4 -0
- package/dist/marshal/context/marshal.context-provider.impl.d.ts.map +1 -0
- package/dist/marshal/context/marshal.context-provider.impl.js +42 -0
- package/dist/marshal/context/marshal.context-provider.impl.js.map +1 -0
- package/dist/marshal/index.d.ts +29 -0
- package/dist/marshal/index.d.ts.map +1 -0
- package/dist/marshal/index.js +34 -0
- package/dist/marshal/index.js.map +1 -0
- package/dist/marshal/marshal.api-client.descriptor.d.ts +9 -0
- package/dist/marshal/marshal.api-client.descriptor.d.ts.map +1 -0
- package/dist/marshal/marshal.api-client.descriptor.js +19 -0
- package/dist/marshal/marshal.api-client.descriptor.js.map +1 -0
- package/dist/marshal/marshal.consumer.plugin.d.ts +4 -0
- package/dist/marshal/marshal.consumer.plugin.d.ts.map +1 -0
- package/dist/marshal/marshal.consumer.plugin.js +18 -0
- package/dist/marshal/marshal.consumer.plugin.js.map +1 -0
- package/dist/marshal/marshal.plugin.d.ts +10 -0
- package/dist/marshal/marshal.plugin.d.ts.map +1 -0
- package/dist/marshal/marshal.plugin.js +55 -0
- package/dist/marshal/marshal.plugin.js.map +1 -0
- package/dist/marshal/marshal.runtime-client.descriptor.d.ts +9 -0
- package/dist/marshal/marshal.runtime-client.descriptor.d.ts.map +1 -0
- package/dist/marshal/marshal.runtime-client.descriptor.js +19 -0
- package/dist/marshal/marshal.runtime-client.descriptor.js.map +1 -0
- package/dist/marshal/plugin.d.ts +2 -0
- package/dist/marshal/plugin.d.ts.map +1 -0
- package/dist/marshal/plugin.js +2 -0
- package/dist/marshal/plugin.js.map +1 -0
- package/dist/marshal/presence/heartbeat.d.ts +64 -0
- package/dist/marshal/presence/heartbeat.d.ts.map +1 -0
- package/dist/marshal/presence/heartbeat.js +169 -0
- package/dist/marshal/presence/heartbeat.js.map +1 -0
- package/dist/marshal/presence/index.d.ts +2 -0
- package/dist/marshal/presence/index.d.ts.map +1 -0
- package/dist/marshal/presence/index.js +2 -0
- package/dist/marshal/presence/index.js.map +1 -0
- package/dist/marshal/schemas/agent.d.ts +27 -0
- package/dist/marshal/schemas/agent.d.ts.map +1 -0
- package/dist/marshal/schemas/agent.js +2 -0
- package/dist/marshal/schemas/agent.js.map +1 -0
- package/dist/marshal/schemas/baseline.d.ts +73 -0
- package/dist/marshal/schemas/baseline.d.ts.map +1 -0
- package/dist/marshal/schemas/baseline.js +28 -0
- package/dist/marshal/schemas/baseline.js.map +1 -0
- package/dist/marshal/schemas/client.d.ts +50 -0
- package/dist/marshal/schemas/client.d.ts.map +1 -0
- package/dist/marshal/schemas/client.js +27 -0
- package/dist/marshal/schemas/client.js.map +1 -0
- package/dist/marshal/schemas/common.d.ts +252 -0
- package/dist/marshal/schemas/common.d.ts.map +1 -0
- package/dist/marshal/schemas/common.js +119 -0
- package/dist/marshal/schemas/common.js.map +1 -0
- package/dist/marshal/schemas/components.d.ts +95 -0
- package/dist/marshal/schemas/components.d.ts.map +1 -0
- package/dist/marshal/schemas/components.js +10 -0
- package/dist/marshal/schemas/components.js.map +1 -0
- package/dist/marshal/schemas/config.d.ts +20 -0
- package/dist/marshal/schemas/config.d.ts.map +1 -0
- package/dist/marshal/schemas/config.js +11 -0
- package/dist/marshal/schemas/config.js.map +1 -0
- package/dist/marshal/schemas/index.d.ts +18 -0
- package/dist/marshal/schemas/index.d.ts.map +1 -0
- package/dist/marshal/schemas/index.js +11 -0
- package/dist/marshal/schemas/index.js.map +1 -0
- package/dist/marshal/schemas/interactive.d.ts +315 -0
- package/dist/marshal/schemas/interactive.d.ts.map +1 -0
- package/dist/marshal/schemas/interactive.js +201 -0
- package/dist/marshal/schemas/interactive.js.map +1 -0
- package/dist/marshal/schemas/presence.d.ts +29 -0
- package/dist/marshal/schemas/presence.d.ts.map +1 -0
- package/dist/marshal/schemas/presence.js +14 -0
- package/dist/marshal/schemas/presence.js.map +1 -0
- package/dist/marshal/schemas/progress.d.ts +100 -0
- package/dist/marshal/schemas/progress.d.ts.map +1 -0
- package/dist/marshal/schemas/progress.js +55 -0
- package/dist/marshal/schemas/progress.js.map +1 -0
- package/dist/marshal/schemas/server.d.ts +70 -0
- package/dist/marshal/schemas/server.d.ts.map +1 -0
- package/dist/marshal/schemas/server.js +39 -0
- package/dist/marshal/schemas/server.js.map +1 -0
- package/dist/marshal/schemas/setup.d.ts +78 -0
- package/dist/marshal/schemas/setup.d.ts.map +1 -0
- package/dist/marshal/schemas/setup.js +2 -0
- package/dist/marshal/schemas/setup.js.map +1 -0
- package/dist/marshal/schemas/tools.d.ts +124 -0
- package/dist/marshal/schemas/tools.d.ts.map +1 -0
- package/dist/marshal/schemas/tools.js +75 -0
- package/dist/marshal/schemas/tools.js.map +1 -0
- package/dist/marshal/schemas/types.d.ts +33 -0
- package/dist/marshal/schemas/types.d.ts.map +1 -0
- package/dist/marshal/schemas/types.js +2 -0
- package/dist/marshal/schemas/types.js.map +1 -0
- package/dist/marshal/schemas/worker.d.ts +8 -0
- package/dist/marshal/schemas/worker.d.ts.map +1 -0
- package/dist/marshal/schemas/worker.js +7 -0
- package/dist/marshal/schemas/worker.js.map +1 -0
- package/dist/marshal/setup/guided.d.ts +26 -0
- package/dist/marshal/setup/guided.d.ts.map +1 -0
- package/dist/marshal/setup/guided.js +83 -0
- package/dist/marshal/setup/guided.js.map +1 -0
- package/dist/marshal/setup/index.d.ts +12 -0
- package/dist/marshal/setup/index.d.ts.map +1 -0
- package/dist/marshal/setup/index.js +11 -0
- package/dist/marshal/setup/index.js.map +1 -0
- package/dist/marshal/setup/provider-runtime.d.ts +23 -0
- package/dist/marshal/setup/provider-runtime.d.ts.map +1 -0
- package/dist/marshal/setup/provider-runtime.detected-models.d.ts +239 -0
- package/dist/marshal/setup/provider-runtime.detected-models.d.ts.map +1 -0
- package/dist/marshal/setup/provider-runtime.detected-models.js +30 -0
- package/dist/marshal/setup/provider-runtime.detected-models.js.map +1 -0
- package/dist/marshal/setup/provider-runtime.js +115 -0
- package/dist/marshal/setup/provider-runtime.js.map +1 -0
- package/dist/marshal/setup/provider-runtime.models.d.ts +38 -0
- package/dist/marshal/setup/provider-runtime.models.d.ts.map +1 -0
- package/dist/marshal/setup/provider-runtime.models.js +38 -0
- package/dist/marshal/setup/provider-runtime.models.js.map +1 -0
- package/dist/marshal/setup/save-baseline.d.ts +12 -0
- package/dist/marshal/setup/save-baseline.d.ts.map +1 -0
- package/dist/marshal/setup/save-baseline.js +89 -0
- package/dist/marshal/setup/save-baseline.js.map +1 -0
- package/dist/marshal/setup/save-baseline.normalizers.d.ts +20 -0
- package/dist/marshal/setup/save-baseline.normalizers.d.ts.map +1 -0
- package/dist/marshal/setup/save-baseline.normalizers.js +72 -0
- package/dist/marshal/setup/save-baseline.normalizers.js.map +1 -0
- package/dist/marshal/setup/types.d.ts +17 -0
- package/dist/marshal/setup/types.d.ts.map +1 -0
- package/dist/marshal/setup/types.js +26 -0
- package/dist/marshal/setup/types.js.map +1 -0
- package/dist/marshal/tools/index.d.ts +9 -0
- package/dist/marshal/tools/index.d.ts.map +1 -0
- package/dist/marshal/tools/index.js +9 -0
- package/dist/marshal/tools/index.js.map +1 -0
- package/dist/marshal/tools/unified/descriptor.d.ts +130 -0
- package/dist/marshal/tools/unified/descriptor.d.ts.map +1 -0
- package/dist/marshal/tools/unified/descriptor.js +53 -0
- package/dist/marshal/tools/unified/descriptor.js.map +1 -0
- package/dist/marshal/tools/unified/index.d.ts +10 -0
- package/dist/marshal/tools/unified/index.d.ts.map +1 -0
- package/dist/marshal/tools/unified/index.js +9 -0
- package/dist/marshal/tools/unified/index.js.map +1 -0
- package/dist/marshal/tools/unified/marshal.execution.d.ts +12 -0
- package/dist/marshal/tools/unified/marshal.execution.d.ts.map +1 -0
- package/dist/marshal/tools/unified/marshal.execution.js +104 -0
- package/dist/marshal/tools/unified/marshal.execution.js.map +1 -0
- package/dist/marshal/tools/unified/marshal.impl.cloud.d.ts +13 -0
- package/dist/marshal/tools/unified/marshal.impl.cloud.d.ts.map +1 -0
- package/dist/marshal/tools/unified/marshal.impl.cloud.js +15 -0
- package/dist/marshal/tools/unified/marshal.impl.cloud.js.map +1 -0
- package/dist/marshal/tools/unified/marshal.impl.consumer.d.ts +13 -0
- package/dist/marshal/tools/unified/marshal.impl.consumer.d.ts.map +1 -0
- package/dist/marshal/tools/unified/marshal.impl.consumer.js +15 -0
- package/dist/marshal/tools/unified/marshal.impl.consumer.js.map +1 -0
- package/dist/marshal/tools/unified/marshal.unified.descriptor.d.ts +140 -0
- package/dist/marshal/tools/unified/marshal.unified.descriptor.d.ts.map +1 -0
- package/dist/marshal/tools/unified/marshal.unified.descriptor.js +57 -0
- package/dist/marshal/tools/unified/marshal.unified.descriptor.js.map +1 -0
- package/dist/marshal/tools/unified/schemas.d.ts +8 -0
- package/dist/marshal/tools/unified/schemas.d.ts.map +1 -0
- package/dist/marshal/tools/unified/schemas.js +7 -0
- package/dist/marshal/tools/unified/schemas.js.map +1 -0
- package/dist/marshal/types.d.ts +2 -0
- package/dist/marshal/types.d.ts.map +1 -0
- package/dist/marshal/types.js +2 -0
- package/dist/marshal/types.js.map +1 -0
- package/dist/marshal/worker/index.d.ts +6 -0
- package/dist/marshal/worker/index.d.ts.map +1 -0
- package/dist/marshal/worker/index.js +5 -0
- package/dist/marshal/worker/index.js.map +1 -0
- package/dist/marshal/worker/jobs/assistance-job.d.ts +34 -0
- package/dist/marshal/worker/jobs/assistance-job.d.ts.map +1 -0
- package/dist/marshal/worker/jobs/assistance-job.js +43 -0
- package/dist/marshal/worker/jobs/assistance-job.js.map +1 -0
- package/dist/marshal/worker/jobs/configure-job.d.ts +48 -0
- package/dist/marshal/worker/jobs/configure-job.d.ts.map +1 -0
- package/dist/marshal/worker/jobs/configure-job.js +52 -0
- package/dist/marshal/worker/jobs/configure-job.js.map +1 -0
- package/dist/marshal/worker/jobs/index.d.ts +7 -0
- package/dist/marshal/worker/jobs/index.d.ts.map +1 -0
- package/dist/marshal/worker/jobs/index.js +7 -0
- package/dist/marshal/worker/jobs/index.js.map +1 -0
- package/dist/marshal/worker/jobs/onboarding-progress-job.d.ts +47 -0
- package/dist/marshal/worker/jobs/onboarding-progress-job.d.ts.map +1 -0
- package/dist/marshal/worker/jobs/onboarding-progress-job.js +51 -0
- package/dist/marshal/worker/jobs/onboarding-progress-job.js.map +1 -0
- package/dist/marshal/worker/marshal.assistance.job.impl.d.ts +3 -0
- package/dist/marshal/worker/marshal.assistance.job.impl.d.ts.map +1 -0
- package/dist/marshal/worker/marshal.assistance.job.impl.js +3 -0
- package/dist/marshal/worker/marshal.assistance.job.impl.js.map +1 -0
- package/dist/marshal/worker/marshal.concierge.descriptor.d.ts +3 -0
- package/dist/marshal/worker/marshal.concierge.descriptor.d.ts.map +1 -0
- package/dist/marshal/worker/marshal.concierge.descriptor.js +14 -0
- package/dist/marshal/worker/marshal.concierge.descriptor.js.map +1 -0
- package/dist/marshal/worker/marshal.concierge.impl.consumer.d.ts +12 -0
- package/dist/marshal/worker/marshal.concierge.impl.consumer.d.ts.map +1 -0
- package/dist/marshal/worker/marshal.concierge.impl.consumer.js +23 -0
- package/dist/marshal/worker/marshal.concierge.impl.consumer.js.map +1 -0
- package/dist/marshal/worker/marshal.configure.job.impl.d.ts +3 -0
- package/dist/marshal/worker/marshal.configure.job.impl.d.ts.map +1 -0
- package/dist/marshal/worker/marshal.configure.job.impl.js +3 -0
- package/dist/marshal/worker/marshal.configure.job.impl.js.map +1 -0
- package/dist/marshal/worker/marshal.jobs.descriptor.d.ts +6 -0
- package/dist/marshal/worker/marshal.jobs.descriptor.d.ts.map +1 -0
- package/dist/marshal/worker/marshal.jobs.descriptor.js +50 -0
- package/dist/marshal/worker/marshal.jobs.descriptor.js.map +1 -0
- package/dist/marshal/worker/marshal.onboarding-progress.job.impl.d.ts +3 -0
- package/dist/marshal/worker/marshal.onboarding-progress.job.impl.d.ts.map +1 -0
- package/dist/marshal/worker/marshal.onboarding-progress.job.impl.js +3 -0
- package/dist/marshal/worker/marshal.onboarding-progress.job.impl.js.map +1 -0
- package/dist/plugin/agent-tools.d.ts +15 -0
- package/dist/plugin/agent-tools.d.ts.map +1 -0
- package/dist/plugin/agent-tools.js +27 -0
- package/dist/plugin/agent-tools.js.map +1 -0
- package/dist/records/index.d.ts +7 -0
- package/dist/records/index.d.ts.map +1 -0
- package/dist/records/index.js +7 -0
- package/dist/records/index.js.map +1 -0
- package/dist/records/lane.record.descriptor.d.ts +11 -0
- package/dist/records/lane.record.descriptor.d.ts.map +1 -0
- package/dist/records/lane.record.descriptor.js +47 -0
- package/dist/records/lane.record.descriptor.js.map +1 -0
- package/dist/records/note.record.descriptor.d.ts +10 -0
- package/dist/records/note.record.descriptor.d.ts.map +1 -0
- package/dist/records/note.record.descriptor.js +46 -0
- package/dist/records/note.record.descriptor.js.map +1 -0
- package/dist/records/notification.record.descriptor.d.ts +11 -0
- package/dist/records/notification.record.descriptor.d.ts.map +1 -0
- package/dist/records/notification.record.descriptor.js +50 -0
- package/dist/records/notification.record.descriptor.js.map +1 -0
- package/dist/records/request.record.descriptor.d.ts +10 -0
- package/dist/records/request.record.descriptor.d.ts.map +1 -0
- package/dist/records/request.record.descriptor.js +50 -0
- package/dist/records/request.record.descriptor.js.map +1 -0
- package/dist/records/task.record.descriptor.d.ts +10 -0
- package/dist/records/task.record.descriptor.d.ts.map +1 -0
- package/dist/records/task.record.descriptor.js +65 -0
- package/dist/records/task.record.descriptor.js.map +1 -0
- package/dist/records/watch.record.descriptor.d.ts +10 -0
- package/dist/records/watch.record.descriptor.d.ts.map +1 -0
- package/dist/records/watch.record.descriptor.js +48 -0
- package/dist/records/watch.record.descriptor.js.map +1 -0
- package/dist/schemas/agent-action.d.ts +31 -0
- package/dist/schemas/agent-action.d.ts.map +1 -0
- package/dist/schemas/agent-action.js +24 -0
- package/dist/schemas/agent-action.js.map +1 -0
- package/dist/schemas/card-projection.d.ts +193 -0
- package/dist/schemas/card-projection.d.ts.map +1 -0
- package/dist/schemas/card-projection.js +30 -0
- package/dist/schemas/card-projection.js.map +1 -0
- package/dist/schemas/contracts.d.ts +1117 -0
- package/dist/schemas/contracts.d.ts.map +1 -0
- package/dist/schemas/contracts.js +38 -0
- package/dist/schemas/contracts.js.map +1 -0
- package/dist/schemas/headless-attention.d.ts +189 -0
- package/dist/schemas/headless-attention.d.ts.map +1 -0
- package/dist/schemas/headless-attention.js +136 -0
- package/dist/schemas/headless-attention.js.map +1 -0
- package/dist/schemas/index.d.ts +15 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +15 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/lane.d.ts +17 -0
- package/dist/schemas/lane.d.ts.map +1 -0
- package/dist/schemas/lane.js +14 -0
- package/dist/schemas/lane.js.map +1 -0
- package/dist/schemas/note.d.ts +14 -0
- package/dist/schemas/note.d.ts.map +1 -0
- package/dist/schemas/note.js +11 -0
- package/dist/schemas/note.js.map +1 -0
- package/dist/schemas/notification.d.ts +33 -0
- package/dist/schemas/notification.d.ts.map +1 -0
- package/dist/schemas/notification.js +19 -0
- package/dist/schemas/notification.js.map +1 -0
- package/dist/schemas/owner.d.ts +27 -0
- package/dist/schemas/owner.d.ts.map +1 -0
- package/dist/schemas/owner.js +18 -0
- package/dist/schemas/owner.js.map +1 -0
- package/dist/schemas/request.d.ts +69 -0
- package/dist/schemas/request.d.ts.map +1 -0
- package/dist/schemas/request.js +53 -0
- package/dist/schemas/request.js.map +1 -0
- package/dist/schemas/state.d.ts +170 -0
- package/dist/schemas/state.d.ts.map +1 -0
- package/dist/schemas/state.js +19 -0
- package/dist/schemas/state.js.map +1 -0
- package/dist/schemas/support-escalate.d.ts +54 -0
- package/dist/schemas/support-escalate.d.ts.map +1 -0
- package/dist/schemas/support-escalate.js +39 -0
- package/dist/schemas/support-escalate.js.map +1 -0
- package/dist/schemas/surface.d.ts +19 -0
- package/dist/schemas/surface.d.ts.map +1 -0
- package/dist/schemas/surface.js +8 -0
- package/dist/schemas/surface.js.map +1 -0
- package/dist/schemas/task.d.ts +70 -0
- package/dist/schemas/task.d.ts.map +1 -0
- package/dist/schemas/task.js +48 -0
- package/dist/schemas/task.js.map +1 -0
- package/dist/schemas/watch.d.ts +44 -0
- package/dist/schemas/watch.d.ts.map +1 -0
- package/dist/schemas/watch.js +19 -0
- package/dist/schemas/watch.js.map +1 -0
- package/dist/schemas/workboard-status-category.d.ts +35 -0
- package/dist/schemas/workboard-status-category.d.ts.map +1 -0
- package/dist/schemas/workboard-status-category.js +45 -0
- package/dist/schemas/workboard-status-category.js.map +1 -0
- package/dist/storage/owner-transforms.d.ts +228 -0
- package/dist/storage/owner-transforms.d.ts.map +1 -0
- package/dist/storage/owner-transforms.js +132 -0
- package/dist/storage/owner-transforms.js.map +1 -0
- package/dist/svelte/components/LaneBoard.svelte +250 -0
- package/dist/svelte/components/LaneBoard.svelte.d.ts +20 -0
- package/dist/svelte/components/LaneBoard.svelte.d.ts.map +1 -0
- package/dist/svelte/components/LaneBoardComposer.svelte +78 -0
- package/dist/svelte/components/LaneBoardComposer.svelte.d.ts +24 -0
- package/dist/svelte/components/LaneBoardComposer.svelte.d.ts.map +1 -0
- package/dist/svelte/components/LaneBoardFilters.svelte +34 -0
- package/dist/svelte/components/LaneBoardFilters.svelte.d.ts +12 -0
- package/dist/svelte/components/LaneBoardFilters.svelte.d.ts.map +1 -0
- package/dist/svelte/components/LaneBoardLane.svelte +46 -0
- package/dist/svelte/components/LaneBoardLane.svelte.d.ts +18 -0
- package/dist/svelte/components/LaneBoardLane.svelte.d.ts.map +1 -0
- package/dist/svelte/components/LaneBoardSummary.svelte +38 -0
- package/dist/svelte/components/LaneBoardSummary.svelte.d.ts +12 -0
- package/dist/svelte/components/LaneBoardSummary.svelte.d.ts.map +1 -0
- package/dist/svelte/components/LaneBoardTaskRow.svelte +158 -0
- package/dist/svelte/components/LaneBoardTaskRow.svelte.d.ts +31 -0
- package/dist/svelte/components/LaneBoardTaskRow.svelte.d.ts.map +1 -0
- package/dist/svelte/components/PriorityBadge.svelte +21 -0
- package/dist/svelte/components/PriorityBadge.svelte.d.ts +7 -0
- package/dist/svelte/components/PriorityBadge.svelte.d.ts.map +1 -0
- package/dist/svelte/components/RequestsQueue.svelte +613 -0
- package/dist/svelte/components/RequestsQueue.svelte.d.ts +21 -0
- package/dist/svelte/components/RequestsQueue.svelte.d.ts.map +1 -0
- package/dist/svelte/components/StatCard.svelte +27 -0
- package/dist/svelte/components/StatCard.svelte.d.ts +12 -0
- package/dist/svelte/components/StatCard.svelte.d.ts.map +1 -0
- package/dist/svelte/components/StatusBadge.svelte +25 -0
- package/dist/svelte/components/StatusBadge.svelte.d.ts +7 -0
- package/dist/svelte/components/StatusBadge.svelte.d.ts.map +1 -0
- package/dist/svelte/components/WorkboardBoard.svelte +467 -0
- package/dist/svelte/components/WorkboardBoard.svelte.d.ts +26 -0
- package/dist/svelte/components/WorkboardBoard.svelte.d.ts.map +1 -0
- package/dist/svelte/index.d.ts +22 -0
- package/dist/svelte/index.d.ts.map +1 -0
- package/dist/svelte/index.js +24 -0
- package/dist/svelte/lane-board-client.d.ts +3 -0
- package/dist/svelte/lane-board-client.d.ts.map +1 -0
- package/dist/svelte/lane-board-client.js +2 -0
- package/dist/svelte/lane-board.d.ts +120 -0
- package/dist/svelte/lane-board.d.ts.map +1 -0
- package/dist/svelte/lane-board.js +221 -0
- package/dist/svelte/rest-workboard-client.d.ts +235 -0
- package/dist/svelte/rest-workboard-client.d.ts.map +1 -0
- package/dist/svelte/rest-workboard-client.js +52 -0
- package/dist/svelte/styles.css +10 -0
- package/dist/svelte/tool-widgets/MarshalToolCard.svelte +67 -0
- package/dist/svelte/tool-widgets/MarshalToolCard.svelte.d.ts +5 -0
- package/dist/svelte/tool-widgets/MarshalToolCard.svelte.d.ts.map +1 -0
- package/dist/svelte/tool-widgets/SupportEscalateToolCard.svelte +42 -0
- package/dist/svelte/tool-widgets/SupportEscalateToolCard.svelte.d.ts +5 -0
- package/dist/svelte/tool-widgets/SupportEscalateToolCard.svelte.d.ts.map +1 -0
- package/dist/svelte/tool-widgets/index.d.ts +7 -0
- package/dist/svelte/tool-widgets/index.d.ts.map +1 -0
- package/dist/svelte/tool-widgets/index.js +6 -0
- package/dist/svelte/types.d.ts +24 -0
- package/dist/svelte/types.d.ts.map +1 -0
- package/dist/svelte/types.js +1 -0
- package/dist/svelte/workboard-svelte.plugin.d.ts +10 -0
- package/dist/svelte/workboard-svelte.plugin.d.ts.map +1 -0
- package/dist/svelte/workboard-svelte.plugin.js +31 -0
- package/dist/svelte/workboard-utils.d.ts +33 -0
- package/dist/svelte/workboard-utils.d.ts.map +1 -0
- package/dist/svelte/workboard-utils.js +85 -0
- package/dist/tools/card-projections.d.ts +7 -0
- package/dist/tools/card-projections.d.ts.map +1 -0
- package/dist/tools/card-projections.js +64 -0
- package/dist/tools/card-projections.js.map +1 -0
- package/dist/tools/support-escalate/schemas.d.ts +2 -0
- package/dist/tools/support-escalate/schemas.d.ts.map +1 -0
- package/dist/tools/support-escalate/schemas.js +2 -0
- package/dist/tools/support-escalate/schemas.js.map +1 -0
- package/dist/tools/support-escalate/support-escalate.descriptor.d.ts +49 -0
- package/dist/tools/support-escalate/support-escalate.descriptor.d.ts.map +1 -0
- package/dist/tools/support-escalate/support-escalate.descriptor.js +42 -0
- package/dist/tools/support-escalate/support-escalate.descriptor.js.map +1 -0
- package/dist/tools/support-escalate/support-escalate.impl.cloud.d.ts +17 -0
- package/dist/tools/support-escalate/support-escalate.impl.cloud.d.ts.map +1 -0
- package/dist/tools/support-escalate/support-escalate.impl.cloud.js +63 -0
- package/dist/tools/support-escalate/support-escalate.impl.cloud.js.map +1 -0
- package/dist/tui/index.d.ts +2 -0
- package/dist/tui/index.d.ts.map +1 -0
- package/dist/tui/index.js +2 -0
- package/dist/tui/index.js.map +1 -0
- package/dist/tui/tool-widgets/MarshalToolWidget.impl.consumer.d.ts +4 -0
- package/dist/tui/tool-widgets/MarshalToolWidget.impl.consumer.d.ts.map +1 -0
- package/dist/tui/tool-widgets/MarshalToolWidget.impl.consumer.js +17 -0
- package/dist/tui/tool-widgets/MarshalToolWidget.impl.consumer.js.map +1 -0
- package/dist/tui/tool-widgets/SupportEscalateToolWidget.impl.consumer.d.ts +4 -0
- package/dist/tui/tool-widgets/SupportEscalateToolWidget.impl.consumer.d.ts.map +1 -0
- package/dist/tui/tool-widgets/SupportEscalateToolWidget.impl.consumer.js +11 -0
- package/dist/tui/tool-widgets/SupportEscalateToolWidget.impl.consumer.js.map +1 -0
- package/dist/tui/workboard-tui.plugin.d.ts +7 -0
- package/dist/tui/workboard-tui.plugin.d.ts.map +1 -0
- package/dist/tui/workboard-tui.plugin.js +32 -0
- package/dist/tui/workboard-tui.plugin.js.map +1 -0
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/exec.d.ts +35 -0
- package/dist/utils/exec.d.ts.map +1 -0
- package/dist/utils/exec.js +31 -0
- package/dist/utils/exec.js.map +1 -0
- package/dist/workboard.plugin.d.ts +8 -0
- package/dist/workboard.plugin.d.ts.map +1 -0
- package/dist/workboard.plugin.js +46 -0
- package/dist/workboard.plugin.js.map +1 -0
- package/dist/workboard.runtime-client.descriptor.d.ts +4 -0
- package/dist/workboard.runtime-client.descriptor.d.ts.map +1 -0
- package/dist/workboard.runtime-client.descriptor.js +13 -0
- package/dist/workboard.runtime-client.descriptor.js.map +1 -0
- package/package.json +409 -4
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import { Button, Icon, Input, Label, NativeSelect, NativeSelectOption } from '@vibesdotdev/kit/components';
|
|
3
|
+
import { TabbedMarkdownEditor } from '@vibesdotdev/kit/components/code';
|
|
4
|
+
import type { WorkboardTaskPatch } from '../../schemas/contracts.js';
|
|
5
|
+
import type { TaskStatus, WorkboardTask } from '../../types.js';
|
|
6
|
+
import {
|
|
7
|
+
glanceLine,
|
|
8
|
+
isStale,
|
|
9
|
+
normalizeLaneId,
|
|
10
|
+
ownerKey,
|
|
11
|
+
ownerLabel,
|
|
12
|
+
ownerStatus,
|
|
13
|
+
type AgentLabelMap
|
|
14
|
+
} from '../lane-board.js';
|
|
15
|
+
import { timeAgo } from '../workboard-utils.js';
|
|
16
|
+
import PriorityBadge from './PriorityBadge.svelte';
|
|
17
|
+
import StatusBadge from './StatusBadge.svelte';
|
|
18
|
+
|
|
19
|
+
type TaskLink = NonNullable<WorkboardTask['links']>[number];
|
|
20
|
+
export type RelatedWorkLink = { href: string; label: string; icon?: string; description?: string };
|
|
21
|
+
|
|
22
|
+
let {
|
|
23
|
+
task,
|
|
24
|
+
expanded,
|
|
25
|
+
agents = {},
|
|
26
|
+
now,
|
|
27
|
+
busy = false,
|
|
28
|
+
laneIds,
|
|
29
|
+
resolveRelatedLink,
|
|
30
|
+
ontoggle,
|
|
31
|
+
onstatus,
|
|
32
|
+
onblock,
|
|
33
|
+
onassignment,
|
|
34
|
+
onnote,
|
|
35
|
+
onarchive
|
|
36
|
+
}: {
|
|
37
|
+
task: WorkboardTask;
|
|
38
|
+
expanded: boolean;
|
|
39
|
+
agents?: AgentLabelMap;
|
|
40
|
+
now: number;
|
|
41
|
+
busy?: boolean;
|
|
42
|
+
laneIds: string[];
|
|
43
|
+
resolveRelatedLink: (link: TaskLink) => RelatedWorkLink | null;
|
|
44
|
+
ontoggle: () => void;
|
|
45
|
+
onstatus: (status: TaskStatus) => void | Promise<void>;
|
|
46
|
+
onblock: (reason: string) => Promise<boolean>;
|
|
47
|
+
onassignment: (patch: { assigned_to?: string; lane?: string }) => void | Promise<void>;
|
|
48
|
+
onnote: (text: string) => Promise<boolean>;
|
|
49
|
+
onarchive: () => void;
|
|
50
|
+
} = $props();
|
|
51
|
+
|
|
52
|
+
let editOwner = $state('');
|
|
53
|
+
let editLane = $state('');
|
|
54
|
+
let editingTaskId = $state<string | null>(null);
|
|
55
|
+
let blocking = $state(false);
|
|
56
|
+
let blockReason = $state('');
|
|
57
|
+
let noteText = $state('');
|
|
58
|
+
|
|
59
|
+
const glance = $derived(glanceLine(task));
|
|
60
|
+
const stale = $derived(isStale(task, now));
|
|
61
|
+
const taskOwnerKey = $derived(ownerKey(task));
|
|
62
|
+
const taskOwnerStatus = $derived(ownerStatus(task, agents));
|
|
63
|
+
const related = $derived((task.links ?? []).flatMap((link) => resolveRelatedLink(link) ?? []));
|
|
64
|
+
const assignmentChanged = $derived(
|
|
65
|
+
editOwner.trim() !== task.assigned_to || normalizeLaneId(editLane) !== task.lane
|
|
66
|
+
);
|
|
67
|
+
|
|
68
|
+
$effect(() => {
|
|
69
|
+
if (expanded && editingTaskId !== task.id) {
|
|
70
|
+
editOwner = task.assigned_to;
|
|
71
|
+
editLane = task.lane;
|
|
72
|
+
editingTaskId = task.id;
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
if (expanded) return;
|
|
76
|
+
editOwner = task.assigned_to;
|
|
77
|
+
editLane = task.lane;
|
|
78
|
+
editingTaskId = null;
|
|
79
|
+
blocking = false;
|
|
80
|
+
blockReason = '';
|
|
81
|
+
noteText = '';
|
|
82
|
+
});
|
|
83
|
+
|
|
84
|
+
function onEnter(event: KeyboardEvent, action: () => void) {
|
|
85
|
+
if (event.key !== 'Enter' || event.isComposing) return;
|
|
86
|
+
event.preventDefault();
|
|
87
|
+
action();
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
function statusClass(status: string | null): string {
|
|
91
|
+
if (status === 'active') return 'bg-success';
|
|
92
|
+
if (status === 'idle') return 'bg-warning';
|
|
93
|
+
if (status === 'error') return 'bg-destructive';
|
|
94
|
+
return 'bg-muted-foreground/40';
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
async function saveAssignment() {
|
|
98
|
+
const patch: WorkboardTaskPatch = {};
|
|
99
|
+
if (editOwner.trim() !== task.assigned_to) patch.assigned_to = editOwner.trim();
|
|
100
|
+
if (normalizeLaneId(editLane) !== task.lane) patch.lane = normalizeLaneId(editLane);
|
|
101
|
+
if (Object.keys(patch).length > 0) await onassignment(patch);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
async function confirmBlock() {
|
|
105
|
+
if (!(await onblock(blockReason.trim()))) return;
|
|
106
|
+
blocking = false;
|
|
107
|
+
blockReason = '';
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
async function addNote() {
|
|
111
|
+
const text = noteText.trim();
|
|
112
|
+
if (text && (await onnote(text))) noteText = '';
|
|
113
|
+
}
|
|
114
|
+
</script>
|
|
115
|
+
|
|
116
|
+
<div id={`workboard-task-${task.id}`} class="px-4 py-3">
|
|
117
|
+
<Button type="button" variant="ghost" class="h-auto w-full flex-col items-stretch gap-1.5 rounded-lg px-0 py-0 text-left font-normal hover:bg-transparent" aria-expanded={expanded} onclick={ontoggle}>
|
|
118
|
+
<span class="flex flex-wrap items-center gap-2">
|
|
119
|
+
<StatusBadge status={task.status} /><span class="font-medium {task.status === 'completed' ? 'line-through opacity-60' : ''}">{task.title}</span>
|
|
120
|
+
{#if task.displayId}<span class="font-mono text-xs text-muted-foreground">{task.displayId}</span>{/if}<PriorityBadge priority={task.priority} />
|
|
121
|
+
<span class="ml-auto inline-flex items-center gap-2 text-xs text-muted-foreground">
|
|
122
|
+
<span class="inline-flex max-w-48 items-center gap-1 truncate rounded-full border bg-background/60 px-2 py-0.5 {taskOwnerKey ? 'text-foreground' : 'italic text-muted-foreground'}" title={taskOwnerKey ? `Owner: ${taskOwnerKey}` : 'No owner yet'}>
|
|
123
|
+
{#if taskOwnerStatus}<span class="size-1.5 shrink-0 rounded-full {statusClass(taskOwnerStatus)}" aria-hidden="true"></span>{:else}<Icon icon={taskOwnerKey ? 'lucide:user' : 'lucide:user-x'} class="size-3 shrink-0" aria-hidden="true" />{/if}<span class="truncate">{ownerLabel(task, agents)}</span>
|
|
124
|
+
</span>
|
|
125
|
+
{#if stale}<span class="rounded-full border border-warning/30 bg-warning/10 px-2 py-0.5 text-warning" title="No update in over 24 hours">stale</span>{/if}
|
|
126
|
+
<span title={new Date(task.updated_at).toLocaleString()}>{timeAgo(task.updated_at)}</span><Icon icon="lucide:chevron-down" class="size-4 transition-transform {expanded ? 'rotate-180' : ''}" aria-hidden="true" />
|
|
127
|
+
</span>
|
|
128
|
+
</span>
|
|
129
|
+
{#if glance.kind === 'blocker'}<span class="flex items-start gap-1.5 text-sm text-destructive"><Icon icon="lucide:octagon-alert" class="mt-0.5 size-3.5 shrink-0" aria-hidden="true" /><span><span class="font-medium">Blocked:</span> {glance.text || 'no reason recorded — expand and add a note'}{#if glance.by}<span class="text-xs opacity-70"> — {glance.by}, {timeAgo(glance.at ?? '')}</span>{/if}</span></span>{:else if glance.kind === 'next'}<span class="flex items-start gap-1.5 text-sm text-muted-foreground"><Icon icon="lucide:corner-down-right" class="mt-0.5 size-3.5 shrink-0" aria-hidden="true" /><span>{glance.text}{#if glance.by}<span class="text-xs opacity-70"> — {glance.by}, {timeAgo(glance.at ?? '')}</span>{/if}</span></span>{/if}
|
|
130
|
+
</Button>
|
|
131
|
+
|
|
132
|
+
{#if expanded}
|
|
133
|
+
<div class="mt-3 rounded-xl border bg-background/30 p-4 text-sm">
|
|
134
|
+
{#if task.description}<div class="mb-3"><span class="font-medium text-muted-foreground">Description</span><div class="prose prose-sm dark:prose-invert mt-1 max-w-none"><TabbedMarkdownEditor code={task.description} value="preview" editorMinHeight="60px" editorProps={{ readOnly: true }} /></div></div>{/if}
|
|
135
|
+
<div class="flex flex-wrap gap-3 text-xs text-muted-foreground"><span>Updated {new Date(task.updated_at).toLocaleString()}</span><span>Created {new Date(task.created_at).toLocaleString()}</span>{#if task.displayId && task.authorityUrl}<a href={task.authorityUrl} class="inline-flex items-center gap-1 font-mono text-primary transition-colors hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring"><Icon icon="lucide:external-link" class="size-3" aria-hidden="true" />{task.displayId} in project tracker</a>{/if}</div>
|
|
136
|
+
|
|
137
|
+
<div class="mt-3 grid gap-2 border-t pt-3 sm:grid-cols-[minmax(0,1fr)_minmax(0,1fr)_auto] sm:items-end">
|
|
138
|
+
<Label class="flex flex-col items-stretch gap-1 text-xs text-muted-foreground">Owner<Input bind:value={editOwner} placeholder="Agent id or person (blank = unassigned)" list="workboard-owner-options" onkeydown={(event: KeyboardEvent) => onEnter(event, () => void saveAssignment())} /></Label>
|
|
139
|
+
<Label class="flex flex-col items-stretch gap-1 text-xs text-muted-foreground">Lane<NativeSelect bind:value={editLane}><NativeSelectOption value="">No lane</NativeSelectOption>{#each laneIds as laneId (laneId)}<NativeSelectOption value={laneId}>{laneId}</NativeSelectOption>{/each}</NativeSelect></Label>
|
|
140
|
+
<Button size="sm" variant="outline" disabled={busy || !assignmentChanged} onclick={saveAssignment}><Icon icon="lucide:save" class="size-3.5" aria-hidden="true" />Save</Button>
|
|
141
|
+
</div>
|
|
142
|
+
|
|
143
|
+
<div class="mt-3 flex flex-wrap gap-2 border-t pt-3">
|
|
144
|
+
{#if task.status === 'pending'}<Button variant="ghost" size="sm" disabled={busy} onclick={() => onstatus('in_progress')} class="rounded-lg bg-info/12 text-xs text-info-ink hover:bg-info/20"><Icon icon="lucide:play" class="size-3" />Start</Button>{/if}
|
|
145
|
+
{#if task.status === 'in_progress' || task.status === 'pending'}<Button variant="ghost" size="sm" disabled={busy} onclick={() => (blocking = true)} class="rounded-lg bg-destructive/12 text-xs text-destructive-ink hover:bg-destructive/20"><Icon icon="lucide:circle-alert" class="size-3" />Block</Button>{/if}
|
|
146
|
+
{#if task.status === 'in_progress'}<Button variant="ghost" size="sm" disabled={busy} onclick={() => onstatus('completed')} class="rounded-lg bg-success/14 text-xs text-success-ink hover:bg-success/22"><Icon icon="lucide:circle-check-big" class="size-3" />Complete</Button>{/if}
|
|
147
|
+
{#if task.status === 'blocked'}<Button variant="ghost" size="sm" disabled={busy} onclick={() => onstatus('in_progress')} class="rounded-lg bg-info/12 text-xs text-info-ink hover:bg-info/20"><Icon icon="lucide:play" class="size-3" />Unblock</Button>{/if}
|
|
148
|
+
{#if task.status === 'completed'}<Button variant="ghost" size="sm" disabled={busy} onclick={() => onstatus('pending')} class="rounded-lg bg-warning/16 text-xs text-warning-ink hover:bg-warning/24"><Icon icon="lucide:rotate-ccw" class="size-3" />Reopen</Button>{/if}
|
|
149
|
+
<Button variant="ghost" size="sm" disabled={busy} onclick={onarchive} class="rounded-lg bg-destructive/8 text-xs text-destructive-ink hover:bg-destructive/16"><Icon icon="lucide:archive" class="size-3" />Archive</Button>
|
|
150
|
+
</div>
|
|
151
|
+
{#if blocking}<div class="mt-2 flex flex-wrap gap-2"><Input bind:value={blockReason} class="min-w-64 flex-1" placeholder="What's blocking? (saved as the task's note)" onkeydown={(event: KeyboardEvent) => onEnter(event, () => void confirmBlock())} /><Button size="sm" variant="destructive" disabled={busy} onclick={confirmBlock}>Block</Button><Button size="sm" variant="ghost" onclick={() => (blocking = false)}>Cancel</Button></div>{/if}
|
|
152
|
+
|
|
153
|
+
{#if task.notes && task.notes.length > 0}<div class="mt-3 border-t pt-3"><span class="font-medium text-muted-foreground">Notes</span>{#each task.notes as note (note.at + note.by + note.text)}<div class="mt-1 rounded-lg bg-muted/40 p-2 text-xs"><span class="text-muted-foreground">{new Date(note.at).toLocaleString()} — {note.by}</span><p class="mt-1 whitespace-pre-wrap">{note.text}</p></div>{/each}</div>{/if}
|
|
154
|
+
{#if related.length > 0}<div class="mt-3 border-t pt-3"><p class="font-medium text-muted-foreground">Related work</p><div class="mt-2 flex flex-wrap gap-2">{#each related as link (link.href)}<a href={link.href} class="group inline-flex min-h-10 items-center gap-2 rounded-lg border bg-background/70 px-3 py-2 transition-colors hover:bg-muted/60 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring"><Icon icon={link.icon ?? 'lucide:arrow-up-right'} class="size-4 text-primary" /><span><span class="block text-xs font-medium text-foreground">{link.label}</span>{#if link.description}<span class="block text-[11px] text-muted-foreground">{link.description}</span>{/if}</span><Icon icon="lucide:arrow-right" class="size-3 text-muted-foreground transition-transform group-hover:translate-x-0.5" /></a>{/each}</div></div>{/if}
|
|
155
|
+
<div class="mt-3 flex gap-2 border-t pt-3"><Input bind:value={noteText} class="flex-1" placeholder="Add a note — what's next, or what's in the way" onkeydown={(event: KeyboardEvent) => onEnter(event, () => void addNote())} /><Button size="sm" aria-label="Save note" disabled={busy} onclick={addNote} class="rounded-lg"><Icon icon="lucide:send" class="size-3" /></Button></div>
|
|
156
|
+
</div>
|
|
157
|
+
{/if}
|
|
158
|
+
</div>
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { TaskStatus, WorkboardTask } from '../../types.ts';
|
|
2
|
+
import { type AgentLabelMap } from '../lane-board.ts';
|
|
3
|
+
type TaskLink = NonNullable<WorkboardTask['links']>[number];
|
|
4
|
+
export type RelatedWorkLink = {
|
|
5
|
+
href: string;
|
|
6
|
+
label: string;
|
|
7
|
+
icon?: string;
|
|
8
|
+
description?: string;
|
|
9
|
+
};
|
|
10
|
+
type $$ComponentProps = {
|
|
11
|
+
task: WorkboardTask;
|
|
12
|
+
expanded: boolean;
|
|
13
|
+
agents?: AgentLabelMap;
|
|
14
|
+
now: number;
|
|
15
|
+
busy?: boolean;
|
|
16
|
+
laneIds: string[];
|
|
17
|
+
resolveRelatedLink: (link: TaskLink) => RelatedWorkLink | null;
|
|
18
|
+
ontoggle: () => void;
|
|
19
|
+
onstatus: (status: TaskStatus) => void | Promise<void>;
|
|
20
|
+
onblock: (reason: string) => Promise<boolean>;
|
|
21
|
+
onassignment: (patch: {
|
|
22
|
+
assigned_to?: string;
|
|
23
|
+
lane?: string;
|
|
24
|
+
}) => void | Promise<void>;
|
|
25
|
+
onnote: (text: string) => Promise<boolean>;
|
|
26
|
+
onarchive: () => void;
|
|
27
|
+
};
|
|
28
|
+
declare const LaneBoardTaskRow: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
29
|
+
type LaneBoardTaskRow = ReturnType<typeof LaneBoardTaskRow>;
|
|
30
|
+
export default LaneBoardTaskRow;
|
|
31
|
+
//# sourceMappingURL=LaneBoardTaskRow.svelte.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LaneBoardTaskRow.svelte.d.ts","sourceRoot":"","sources":["../../../src/svelte/components/LaneBoardTaskRow.svelte.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAOL,KAAK,aAAa,EAClB,MAAM,kBAAkB,CAAC;AAM1B,KAAK,QAAQ,GAAG,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAC5D,MAAM,MAAM,eAAe,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AACnG,KAAK,gBAAgB,GAAI;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,kBAAkB,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,eAAe,GAAG,IAAI,CAAC;IAC/D,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,YAAY,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvF,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,SAAS,EAAE,MAAM,IAAI,CAAC;CACtB,CAAC;AA2IH,QAAA,MAAM,gBAAgB,sDAAwC,CAAC;AAC/D,KAAK,gBAAgB,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC5D,eAAe,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
interface Props {
|
|
3
|
+
priority: string | number;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
let { priority }: Props = $props();
|
|
7
|
+
|
|
8
|
+
const config = new Map(Object.entries({
|
|
9
|
+
critical: 'border border-destructive/30 bg-destructive/10 text-destructive',
|
|
10
|
+
high: 'border border-warning/30 bg-warning/10 text-warning',
|
|
11
|
+
medium: 'border border-info/30 bg-info/10 text-info',
|
|
12
|
+
low: 'border border-muted bg-muted/50 text-muted-foreground'
|
|
13
|
+
}));
|
|
14
|
+
|
|
15
|
+
let p = $derived(String(priority));
|
|
16
|
+
let cls = $derived(config.get(p) || 'border border-muted bg-muted/50 text-muted-foreground');
|
|
17
|
+
</script>
|
|
18
|
+
|
|
19
|
+
<span class="rounded-md px-2 py-0.5 text-xs font-medium {cls}">
|
|
20
|
+
{p.charAt(0).toUpperCase() + p.slice(1)}
|
|
21
|
+
</span>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PriorityBadge.svelte.d.ts","sourceRoot":"","sources":["../../../src/svelte/components/PriorityBadge.svelte.ts"],"names":[],"mappings":"AAGC,UAAU,KAAK;IACd,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1B;AAuBF,QAAA,MAAM,aAAa,2CAAwC,CAAC;AAC5D,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;AACtD,eAAe,aAAa,CAAC"}
|