Skip to content

cron: dashboard UI support for script payload kind #24

@Arry8

Description

@Arry8

Summary

The gateway dashboard cron form only supports payloadKind: "systemEvent" | "agentTurn". Script jobs created via CLI appear in the job list and run history, but can't be created or edited from the web UI. The form needs script-specific fields.

Problem

CronFormState in ui/src/ui/ui-types.ts has no "script" option for payloadKind and no fields for command, args, env, or cwd. The form view (ui/src/ui/views/cron.ts) and controller (ui/src/ui/controllers/cron.ts) only handle the two existing payload kinds.

Acceptance Criteria

  • payloadKind union extended to include "script"
  • New form fields when script is selected: command (required), args (textarea, one per line), env (textarea, KEY=VALUE per line), cwd (optional)
  • Form→payload serialization: converts form fields to CronScriptPayload
  • Payload→form deserialization: populates form fields when editing an existing script job
  • Agent-specific fields (payloadModel, payloadThinking, payloadLightContext) hidden when payloadKind === "script"
  • payloadText field hidden when payloadKind === "script" (replaced by command)
  • Field labels and placeholders via i18n keys

Files Affected

  • ui/src/ui/ui-types.ts — extend CronFormState
  • ui/src/ui/views/cron.ts — script form fields, conditional visibility
  • ui/src/ui/controllers/cron.ts — form<->payload conversion for script kind
  • Possibly ui/src/ui/i18n/ — add i18n keys for new field labels

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions