@open-mercato/cezar 0.9.1 → 0.9.2-pr710.1256
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 +21 -0
- package/README.md +157 -32
- package/dist/agent-config/account-identity.d.ts +44 -0
- package/dist/agent-config/account-identity.js +128 -0
- package/dist/agent-config/account-identity.js.map +1 -0
- package/dist/agent-config/catalog.d.ts +9 -1
- package/dist/agent-config/catalog.js +18 -0
- package/dist/agent-config/catalog.js.map +1 -1
- package/dist/agent-config/files.d.ts +1 -1
- package/dist/agent-config/model-settings/claude.d.ts +2 -0
- package/dist/agent-config/model-settings/claude.js +11 -0
- package/dist/agent-config/model-settings/claude.js.map +1 -0
- package/dist/agent-config/model-settings/codex.d.ts +2 -0
- package/dist/agent-config/model-settings/codex.js +16 -0
- package/dist/agent-config/model-settings/codex.js.map +1 -0
- package/dist/agent-config/model-settings/opencode.d.ts +2 -0
- package/dist/agent-config/model-settings/opencode.js +8 -0
- package/dist/agent-config/model-settings/opencode.js.map +1 -0
- package/dist/agent-config/model-settings/pi.d.ts +12 -0
- package/dist/agent-config/model-settings/pi.js +18 -0
- package/dist/agent-config/model-settings/pi.js.map +1 -0
- package/dist/agent-config/model-settings/shared.d.ts +9 -0
- package/dist/agent-config/model-settings/shared.js +93 -0
- package/dist/agent-config/model-settings/shared.js.map +1 -0
- package/dist/agent-config/model-settings/types.d.ts +9 -0
- package/dist/agent-config/model-settings/types.js +2 -0
- package/dist/agent-config/model-settings/types.js.map +1 -0
- package/dist/agent-config/models.d.ts +9 -0
- package/dist/agent-config/models.js +32 -0
- package/dist/agent-config/models.js.map +1 -0
- package/dist/agent-config/service.d.ts +1 -1
- package/dist/agent-config/service.js +4 -4
- package/dist/agent-config/service.js.map +1 -1
- package/dist/agent-config/validate.d.ts +1 -1
- package/dist/automations/coordinator.d.ts +26 -0
- package/dist/automations/coordinator.js +66 -0
- package/dist/automations/coordinator.js.map +1 -0
- package/dist/automations/github-poller.d.ts +74 -0
- package/dist/automations/github-poller.js +234 -0
- package/dist/automations/github-poller.js.map +1 -0
- package/dist/automations/scheduler.d.ts +42 -0
- package/dist/automations/scheduler.js +192 -0
- package/dist/automations/scheduler.js.map +1 -0
- package/dist/automations/store.d.ts +65 -0
- package/dist/automations/store.js +298 -0
- package/dist/automations/store.js.map +1 -0
- package/dist/automations/task-template.d.ts +18 -0
- package/dist/automations/task-template.js +95 -0
- package/dist/automations/task-template.js.map +1 -0
- package/dist/automations/types.d.ts +255 -0
- package/dist/automations/types.js +159 -0
- package/dist/automations/types.js.map +1 -0
- package/dist/config.d.ts +19 -112
- package/dist/config.js +48 -5
- package/dist/config.js.map +1 -1
- package/dist/contract/agent-config.d.ts +153 -0
- package/dist/contract/agent-profiles.d.ts +347 -0
- package/dist/contract/automations.d.ts +935 -0
- package/dist/contract/events.d.ts +104 -0
- package/dist/contract/github.d.ts +467 -0
- package/dist/contract/health.d.ts +102 -0
- package/dist/contract/index.d.ts +16 -0
- package/dist/contract/index.js +1830 -0
- package/dist/contract/projects.d.ts +210 -0
- package/dist/contract/repo.d.ts +234 -0
- package/dist/contract/runs.d.ts +1407 -0
- package/dist/contract/skills.d.ts +232 -0
- package/dist/contract/workflows.d.ts +218 -0
- package/dist/contract/workspace.d.ts +577 -0
- package/dist/core/agent-env.d.ts +1 -1
- package/dist/core/agent-env.js +41 -16
- package/dist/core/agent-env.js.map +1 -1
- package/dist/core/agent-model-policy.d.ts +10 -0
- package/dist/core/agent-model-policy.js +36 -0
- package/dist/core/agent-model-policy.js.map +1 -0
- package/dist/core/agent-profiles.d.ts +62 -0
- package/dist/core/agent-profiles.js +90 -0
- package/dist/core/agent-profiles.js.map +1 -0
- package/dist/core/agent-runner.d.ts +49 -7
- package/dist/core/agent-runner.js +48 -3
- package/dist/core/agent-runner.js.map +1 -1
- package/dist/core/ask.d.ts +45 -124
- package/dist/core/ask.js +103 -13
- package/dist/core/ask.js.map +1 -1
- package/dist/core/backend-detect.d.ts +5 -5
- package/dist/core/backend-detect.js +44 -7
- package/dist/core/backend-detect.js.map +1 -1
- package/dist/core/claude-cli-runner.d.ts +2 -2
- package/dist/core/claude-cli-runner.js +61 -13
- package/dist/core/claude-cli-runner.js.map +1 -1
- package/dist/core/claude-ui-mapper.d.ts +1 -1
- package/dist/core/codex-app-server-runner.d.ts +1 -1
- package/dist/core/codex-app-server-runner.js +65 -3
- package/dist/core/codex-app-server-runner.js.map +1 -1
- package/dist/core/codex-app-server-transport.d.ts +6 -1
- package/dist/core/codex-app-server-transport.js +17 -3
- package/dist/core/codex-app-server-transport.js.map +1 -1
- package/dist/core/codex-model-catalog.d.ts +1 -1
- package/dist/core/codex-ui-mapper.d.ts +5 -1
- package/dist/core/codex-ui-mapper.js +74 -17
- package/dist/core/codex-ui-mapper.js.map +1 -1
- package/dist/core/model-identity.d.ts +24 -12
- package/dist/core/model-identity.js +41 -24
- package/dist/core/model-identity.js.map +1 -1
- package/dist/core/model-presets.d.ts +10 -4
- package/dist/core/model-presets.js +52 -9
- package/dist/core/model-presets.js.map +1 -1
- package/dist/core/opencode-model-catalog.d.ts +30 -0
- package/dist/core/opencode-model-catalog.js +126 -0
- package/dist/core/opencode-model-catalog.js.map +1 -0
- package/dist/core/opencode-server-runner.d.ts +2 -2
- package/dist/core/opencode-ui-mapper.d.ts +4 -1
- package/dist/core/opencode-ui-mapper.js +45 -7
- package/dist/core/opencode-ui-mapper.js.map +1 -1
- package/dist/core/pi-runner.d.ts +24 -0
- package/dist/core/pi-runner.js +349 -0
- package/dist/core/pi-runner.js.map +1 -0
- package/dist/core/pi-ui-mapper.d.ts +34 -0
- package/dist/core/pi-ui-mapper.js +270 -0
- package/dist/core/pi-ui-mapper.js.map +1 -0
- package/dist/core/provider-auth.d.ts +154 -0
- package/dist/core/provider-auth.js +509 -0
- package/dist/core/provider-auth.js.map +1 -0
- package/dist/core/provider-availability.d.ts +3 -0
- package/dist/core/provider-availability.js +14 -0
- package/dist/core/provider-availability.js.map +1 -0
- package/dist/core/runner-factory.d.ts +1 -1
- package/dist/core/runner-factory.js +3 -0
- package/dist/core/runner-factory.js.map +1 -1
- package/dist/core/runner-model-catalog.d.ts +1 -1
- package/dist/core/shell-env.d.ts +28 -0
- package/dist/core/shell-env.js +56 -0
- package/dist/core/shell-env.js.map +1 -0
- package/dist/core/tool-display.d.ts +1 -1
- package/dist/core/ui-events.d.ts +2 -2
- package/dist/core/ui-events.js +1 -1
- package/dist/core/usage-limit.d.ts +42 -0
- package/dist/core/usage-limit.js +209 -0
- package/dist/core/usage-limit.js.map +1 -0
- package/dist/git-diff-base.d.ts +85 -0
- package/dist/git-diff-base.js +180 -0
- package/dist/git-diff-base.js.map +1 -0
- package/dist/git-worktree.d.ts +46 -6
- package/dist/git-worktree.js +46 -9
- package/dist/git-worktree.js.map +1 -1
- package/dist/handoff.d.ts +2 -2
- package/dist/handoff.js +1 -1
- package/dist/index.js +66 -8
- package/dist/index.js.map +1 -1
- package/dist/paths.d.ts +69 -6
- package/dist/paths.js +86 -9
- package/dist/paths.js.map +1 -1
- package/dist/planner.d.ts +2 -2
- package/dist/planner.js +7 -1
- package/dist/planner.js.map +1 -1
- package/dist/release/manifests.d.ts +81 -0
- package/dist/release/manifests.js +74 -0
- package/dist/release/manifests.js.map +1 -0
- package/dist/release/snapshot.d.ts +9 -23
- package/dist/release/snapshot.js +9 -22
- package/dist/release/snapshot.js.map +1 -1
- package/dist/release/stable.d.ts +15 -29
- package/dist/release/stable.js +14 -27
- package/dist/release/stable.js.map +1 -1
- package/dist/runs/agent-tmpdir.d.ts +41 -0
- package/dist/runs/agent-tmpdir.js +183 -0
- package/dist/runs/agent-tmpdir.js.map +1 -0
- package/dist/runs/auto-name.d.ts +1 -1
- package/dist/runs/auto-name.js +6 -1
- package/dist/runs/auto-name.js.map +1 -1
- package/dist/runs/event-history.d.ts +50 -0
- package/dist/runs/event-history.js +613 -0
- package/dist/runs/event-history.js.map +1 -0
- package/dist/runs/retention.d.ts +1 -1
- package/dist/runs/run-index.d.ts +19 -0
- package/dist/runs/run-index.js +43 -0
- package/dist/runs/run-index.js.map +1 -0
- package/dist/runs/store.d.ts +209 -344
- package/dist/runs/store.js +298 -39
- package/dist/runs/store.js.map +1 -1
- package/dist/runs/ui-event-sink.d.ts +1 -1
- package/dist/server/app-type.d.ts +21 -0
- package/dist/server/app-type.js +2 -0
- package/dist/server/app-type.js.map +1 -0
- package/dist/server/capabilities.d.ts +21 -6
- package/dist/server/capabilities.js +27 -1
- package/dist/server/capabilities.js.map +1 -1
- package/dist/server/forge/github.d.ts +58 -151
- package/dist/server/forge/github.js +530 -6
- package/dist/server/forge/github.js.map +1 -1
- package/dist/server/forge/index.d.ts +19 -3
- package/dist/server/forge/index.js +28 -1
- package/dist/server/forge/index.js.map +1 -1
- package/dist/server/forge/types.d.ts +86 -1
- package/dist/server/git-changes.d.ts +10 -8
- package/dist/server/git-changes.js +19 -17
- package/dist/server/git-changes.js.map +1 -1
- package/dist/server/git.d.ts +2 -0
- package/dist/server/git.js +9 -0
- package/dist/server/git.js.map +1 -1
- package/dist/server/github.d.ts +3 -3
- package/dist/server/github.js +1 -1
- package/dist/server/github.js.map +1 -1
- package/dist/server/open-in-app.d.ts +2 -1
- package/dist/server/open-in-app.js +3 -1
- package/dist/server/open-in-app.js.map +1 -1
- package/dist/server/open-in-terminal.d.ts +46 -1
- package/dist/server/open-in-terminal.js +72 -13
- package/dist/server/open-in-terminal.js.map +1 -1
- package/dist/server/pr.d.ts +2 -2
- package/dist/server/project-context.d.ts +20 -3
- package/dist/server/project-context.js +30 -1
- package/dist/server/project-context.js.map +1 -1
- package/dist/server/provider-action-gate.d.ts +8 -0
- package/dist/server/provider-action-gate.js +56 -0
- package/dist/server/provider-action-gate.js.map +1 -0
- package/dist/server/provider-auth-runtime.d.ts +21 -0
- package/dist/server/provider-auth-runtime.js +66 -0
- package/dist/server/provider-auth-runtime.js.map +1 -0
- package/dist/server/server.d.ts +12802 -47
- package/dist/server/server.js +2857 -949
- package/dist/server/server.js.map +1 -1
- package/dist/server/validators.d.ts +97 -0
- package/dist/server/validators.js +86 -0
- package/dist/server/validators.js.map +1 -0
- package/dist/server/ws.d.ts +2 -2
- package/dist/server/ws.js +2 -2
- package/dist/server/ws.js.map +1 -1
- package/dist/server-install/engine.d.ts +1 -1
- package/dist/server-install/engine.js +5 -18
- package/dist/server-install/engine.js.map +1 -1
- package/dist/server-install/platforms/macosx-ngrok.d.ts +1 -1
- package/dist/server-install/platforms/ubuntu-vps.d.ts +16 -1
- package/dist/server-install/platforms/ubuntu-vps.js +83 -1
- package/dist/server-install/platforms/ubuntu-vps.js.map +1 -1
- package/dist/server-install/state.d.ts +1 -1
- package/dist/server-install/steps.d.ts +2 -2
- package/dist/server-install/steps.js +6 -2
- package/dist/server-install/steps.js.map +1 -1
- package/dist/server-install/strategies.d.ts +1 -1
- package/dist/server-install/types.d.ts +38 -424
- package/dist/server-install/ui.d.ts +1 -1
- package/dist/skills-banner.d.ts +7 -6
- package/dist/skills-banner.js +7 -6
- package/dist/skills-banner.js.map +1 -1
- package/dist/skills-remote.d.ts +2 -2
- package/dist/skills-update.d.ts +88 -0
- package/dist/skills-update.js +392 -0
- package/dist/skills-update.js.map +1 -0
- package/dist/skills.d.ts +2 -0
- package/dist/skills.js +7 -2
- package/dist/skills.js.map +1 -1
- package/dist/todos.d.ts +2 -28
- package/dist/todos.js +1 -1
- package/dist/ui-state.d.ts +16 -2
- package/dist/ui-state.js +14 -1
- package/dist/ui-state.js.map +1 -1
- package/dist/workflows/load.d.ts +1 -1
- package/dist/workflows/run.d.ts +276 -15
- package/dist/workflows/run.js +1261 -159
- package/dist/workflows/run.js.map +1 -1
- package/dist/workflows/types.d.ts +62 -224
- package/dist/workflows/types.js +25 -2
- package/dist/workflows/types.js.map +1 -1
- package/dist/workspace/agent-accounts.d.ts +153 -0
- package/dist/workspace/agent-accounts.js +304 -0
- package/dist/workspace/agent-accounts.js.map +1 -0
- package/dist/workspace/agent-profiles.d.ts +78 -0
- package/dist/workspace/agent-profiles.js +115 -0
- package/dist/workspace/agent-profiles.js.map +1 -0
- package/dist/workspace/config.d.ts +94 -206
- package/dist/workspace/config.js +226 -14
- package/dist/workspace/config.js.map +1 -1
- package/dist/workspace/migrations.d.ts +1 -1
- package/dist/workspace/migrations.js +19 -4
- package/dist/workspace/migrations.js.map +1 -1
- package/dist/workspace/projects-cli.js +54 -4
- package/dist/workspace/projects-cli.js.map +1 -1
- package/dist/workspace/projects.d.ts +26 -2
- package/dist/workspace/projects.js +42 -3
- package/dist/workspace/projects.js.map +1 -1
- package/dist/workspace/semaphore.d.ts +51 -0
- package/dist/workspace/semaphore.js +53 -3
- package/dist/workspace/semaphore.js.map +1 -1
- package/dist/workspace/ui-state.d.ts +16 -5
- package/dist/workspace/ui-state.js +18 -7
- package/dist/workspace/ui-state.js.map +1 -1
- package/package.json +17 -39
- package/scripts/inline-contract.mjs +112 -0
- package/scripts/mock-claude.mjs +59 -1
- package/scripts/mock-pi-rpc.mjs +83 -0
- package/scripts/sync-readme.mjs +20 -0
- package/web/dist/assets/alert-dialog-BVs3QSmP.js +1 -0
- package/web/dist/assets/arrow-down-D7T7XuF6.js +1 -0
- package/web/dist/assets/arrow-left-B1dRFd8y.js +1 -0
- package/web/dist/assets/bundle-mjs-BT31bpU6.js +1 -0
- package/web/dist/assets/centered-state-DdRLYi9u.js +43 -0
- package/web/dist/assets/chevron-right-Dh0t3AL8.js +1 -0
- package/web/dist/assets/{chunk-BO2N2NFS-DtrdTCWa.js → chunk-BO2N2NFS-DE6qKn3r.js} +8 -8
- package/web/dist/assets/circle-check-4FDOlh9u.js +1 -0
- package/web/dist/assets/circle-x-CgTVbqX5.js +1 -0
- package/web/dist/assets/collapsible-BoADzTok.js +1 -0
- package/web/dist/assets/commit-list-BCcCkRbU.js +1 -0
- package/web/dist/assets/compare-variants-B7gTgGqR.js +1 -0
- package/web/dist/assets/{core-DePtBHcl.js → core-BCsw8oQw.js} +1 -1
- package/web/dist/assets/diff-ecfV3-op.js +3 -0
- package/web/dist/assets/diff-stat-C2KGLVnZ.js +1 -0
- package/web/dist/assets/{diff-view-DCeSegKk.js → diff-view-CQtonQ4L.js} +4 -4
- package/web/dist/assets/dropdown-menu-WcGoirf2.js +1 -0
- package/web/dist/assets/editable-title-SqNK-wuI.js +1 -0
- package/web/dist/assets/{ellipsis-vertical-CNnSLn5a.js → ellipsis-vertical-ClTFrwit.js} +1 -1
- package/web/dist/assets/{file-D4GBh1ao.js → file-BU0mWida.js} +1 -1
- package/web/dist/assets/folder-rsgCF0aw.js +1 -0
- package/web/dist/assets/{git-pull-request-DnR8Xh4_.js → git-pull-request-BFhIKb83.js} +1 -1
- package/web/dist/assets/git-toolbar-CF1_tzqz.js +1 -0
- package/web/dist/assets/github-CyjPz-Ks.js +1 -0
- package/web/dist/assets/highlighted-body-OFNGDK62-BL-MfFgl.js +1 -0
- package/web/dist/assets/highlighter-CdHqIwFr.js +3 -0
- package/web/dist/assets/image-preview-iEzCyEmz.js +1 -0
- package/web/dist/assets/index-BN09RpYY.css +2 -0
- package/web/dist/assets/index-CyG7aE1W.js +7 -0
- package/web/dist/assets/lib-BQXq3kEf.js +1 -0
- package/web/dist/assets/lib-BxQXEXDF.js +1 -0
- package/web/dist/assets/markdown-CNAa22LB.js +2 -0
- package/web/dist/assets/mermaid-GHXKKRXX-C4jxqUUb.js +1 -0
- package/web/dist/assets/new-task-form-CWhQZbsX.js +1 -0
- package/web/dist/assets/pill-BO5s2x3N.js +1 -0
- package/web/dist/assets/project-router-Dm4OhAPE.js +1 -0
- package/web/dist/assets/prompt-templates-CP__OCDQ.js +15 -0
- package/web/dist/assets/react-runtime-CCIEwYL0.js +9 -0
- package/web/dist/assets/{refresh-cw-BT8E96Tm.js → refresh-cw-DyiysCoP.js} +1 -1
- package/web/dist/assets/repo-git-B1WM6N8T.js +1 -0
- package/web/dist/assets/rolldown-runtime-QTnfLwEv.js +1 -0
- package/web/dist/assets/run-diff-CKx4d9Oo.js +3 -0
- package/web/dist/assets/run-header-DpbfOtNi.js +1 -0
- package/web/dist/assets/{search-x-BDjaMrzG.js → search-x-DRvk-6x4.js} +1 -1
- package/web/dist/assets/skill-empty-hint-D5vsHfMr.js +1 -0
- package/web/dist/assets/skills-BiWfHmCR.js +1 -0
- package/web/dist/assets/skills-XGltyIJ_.js +1 -0
- package/web/dist/assets/sparkles-BugkDxWO.js +1 -0
- package/web/dist/assets/{square-terminal-Ckjjn0vb.js → square-terminal-Drp2h-o8.js} +1 -1
- package/web/dist/assets/tab-link-CiRLRlnY.js +1 -0
- package/web/dist/assets/task-changes-C2hKkEtc.js +1 -0
- package/web/dist/assets/task-commits-CwGs_Opa.js +1 -0
- package/web/dist/assets/task-files-5KUgFzX3.js +2 -0
- package/web/dist/assets/task-thread-B3AFO3SS.js +9 -0
- package/web/dist/assets/textarea-Dn90Eun6.js +1 -0
- package/web/dist/assets/thread-loading-_1hPuk76.js +1 -0
- package/web/dist/assets/{trash-2-DAyZ0VSi.js → trash-2-BKEc5Sp2.js} +1 -1
- package/web/dist/assets/{triangle-alert-Uy8rokUh.js → triangle-alert-BGGPY2C2.js} +1 -1
- package/web/dist/assets/{upload-CDdyPPo_.js → upload-B0AQw-mO.js} +1 -1
- package/web/dist/assets/use-desktop-CegyTp3X.js +1 -0
- package/web/dist/assets/use-submit-shortcut-Mle-9uJp.js +1 -0
- package/web/dist/assets/utils-D9GHDNza.js +64 -0
- package/web/dist/assets/workflows-3PCz57Z6.js +11 -0
- package/web/dist/assets/zoomable-image-DTq7s8CZ.js +1 -0
- package/web/dist/index.html +33 -13
- package/scripts/dev.mjs +0 -74
- package/scripts/release-snapshot.mjs +0 -130
- package/scripts/release.mjs +0 -119
- package/web/dist/assets/arrow-left-CnSdp92h.js +0 -1
- package/web/dist/assets/bundle-mjs-BegPhL5c.js +0 -1
- package/web/dist/assets/centered-state-DOsTcJZF.js +0 -43
- package/web/dist/assets/commit-list-BrxBEzRK.js +0 -1
- package/web/dist/assets/compare-variants-Bv2c9ORF.js +0 -1
- package/web/dist/assets/dist-B6XQOhgM.js +0 -1
- package/web/dist/assets/git-toolbar-pIC1ubPM.js +0 -1
- package/web/dist/assets/github-DTTSG0ht.js +0 -1
- package/web/dist/assets/highlighted-body-OFNGDK62-BuFJwunK.js +0 -1
- package/web/dist/assets/image-preview-DEhW0TFz.js +0 -1
- package/web/dist/assets/index-Cijmlz7q.js +0 -30
- package/web/dist/assets/index-DzroxqBG.css +0 -2
- package/web/dist/assets/lib-DPEZDBUN.js +0 -1
- package/web/dist/assets/lib-uHpeUPzK.js +0 -1
- package/web/dist/assets/mermaid-GHXKKRXX-CN2zQue0.js +0 -1
- package/web/dist/assets/open-mercato-toBr6SOa.svg +0 -11
- package/web/dist/assets/project-router-BMx4e8m-.js +0 -1
- package/web/dist/assets/repo-git-BusYfa3t.js +0 -1
- package/web/dist/assets/run-diff-wOJ3odA-.js +0 -3
- package/web/dist/assets/run-header-Cg5incil.js +0 -1
- package/web/dist/assets/skill-empty-hint-DTUSp6Vl.js +0 -1
- package/web/dist/assets/skills-PpP2owbM.js +0 -1
- package/web/dist/assets/tab-link-F3uQrdm2.js +0 -1
- package/web/dist/assets/task-changes-iD9kS79I.js +0 -1
- package/web/dist/assets/task-commits-COkLaUri.js +0 -1
- package/web/dist/assets/task-files-Ckttz7XH.js +0 -2
- package/web/dist/assets/task-thread-CQD91VPt.js +0 -9
- package/web/dist/assets/textarea-Bj_LCreg.js +0 -1
- package/web/dist/assets/use-desktop-DUh0STzq.js +0 -3
- package/web/dist/assets/utils-B8s5qIcK.js +0 -1
- package/web/dist/assets/workflows-BFk8C0co.js +0 -11
- package/web/dist/assets/zoomable-image-PEDOqyLQ.js +0 -1
- /package/web/{open-mercato.svg → dist/open-mercato.svg} +0 -0
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const automationEventSchema: z.ZodEnum<{
|
|
3
|
+
"issue.labeled": "issue.labeled";
|
|
4
|
+
"issue.opened": "issue.opened";
|
|
5
|
+
"issue.unlabeled": "issue.unlabeled";
|
|
6
|
+
"pull_request.opened": "pull_request.opened";
|
|
7
|
+
}>;
|
|
8
|
+
export declare const automationFiltersSchema: z.ZodObject<{
|
|
9
|
+
authors: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
10
|
+
assignees: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
11
|
+
allLabels: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
12
|
+
anyLabels: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
13
|
+
excludeLabels: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
14
|
+
changedLabels: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
15
|
+
lookbackDays: z.ZodDefault<z.ZodNumber>;
|
|
16
|
+
maxRecords: z.ZodDefault<z.ZodNumber>;
|
|
17
|
+
}, z.core.$loose>;
|
|
18
|
+
export declare const automationTaskSchema: z.ZodObject<{
|
|
19
|
+
prompt: z.ZodString;
|
|
20
|
+
workflow: z.ZodOptional<z.ZodString>;
|
|
21
|
+
steps: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
22
|
+
id: z.ZodString;
|
|
23
|
+
name: z.ZodOptional<z.ZodString>;
|
|
24
|
+
prompt: z.ZodOptional<z.ZodString>;
|
|
25
|
+
skill: z.ZodOptional<z.ZodString>;
|
|
26
|
+
model: z.ZodOptional<z.ZodString>;
|
|
27
|
+
runner: z.ZodOptional<z.ZodEnum<{
|
|
28
|
+
claude: "claude";
|
|
29
|
+
codex: "codex";
|
|
30
|
+
opencode: "opencode";
|
|
31
|
+
pi: "pi";
|
|
32
|
+
}>>;
|
|
33
|
+
allowedTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
34
|
+
bashAllowlist: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
35
|
+
command: z.ZodOptional<z.ZodString>;
|
|
36
|
+
onFail: z.ZodOptional<z.ZodObject<{
|
|
37
|
+
retry: z.ZodString;
|
|
38
|
+
max: z.ZodDefault<z.ZodNumber>;
|
|
39
|
+
}, z.core.$strip>>;
|
|
40
|
+
}, z.core.$strip>>>;
|
|
41
|
+
runner: z.ZodOptional<z.ZodEnum<{
|
|
42
|
+
claude: "claude";
|
|
43
|
+
codex: "codex";
|
|
44
|
+
opencode: "opencode";
|
|
45
|
+
pi: "pi";
|
|
46
|
+
}>>;
|
|
47
|
+
model: z.ZodOptional<z.ZodString>;
|
|
48
|
+
variants: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>]>>;
|
|
49
|
+
worktree: z.ZodOptional<z.ZodBoolean>;
|
|
50
|
+
generateFollowups: z.ZodOptional<z.ZodBoolean>;
|
|
51
|
+
autonomous: z.ZodOptional<z.ZodBoolean>;
|
|
52
|
+
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
53
|
+
}, z.core.$loose>;
|
|
54
|
+
export declare const automationDefinitionSchema: z.ZodObject<{
|
|
55
|
+
id: z.ZodString;
|
|
56
|
+
revision: z.ZodNumber;
|
|
57
|
+
name: z.ZodString;
|
|
58
|
+
description: z.ZodOptional<z.ZodString>;
|
|
59
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
60
|
+
events: z.ZodArray<z.ZodEnum<{
|
|
61
|
+
"issue.labeled": "issue.labeled";
|
|
62
|
+
"issue.opened": "issue.opened";
|
|
63
|
+
"issue.unlabeled": "issue.unlabeled";
|
|
64
|
+
"pull_request.opened": "pull_request.opened";
|
|
65
|
+
}>>;
|
|
66
|
+
intervalSeconds: z.ZodDefault<z.ZodNumber>;
|
|
67
|
+
filters: z.ZodObject<{
|
|
68
|
+
authors: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
69
|
+
assignees: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
70
|
+
allLabels: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
71
|
+
anyLabels: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
72
|
+
excludeLabels: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
73
|
+
changedLabels: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
74
|
+
lookbackDays: z.ZodDefault<z.ZodNumber>;
|
|
75
|
+
maxRecords: z.ZodDefault<z.ZodNumber>;
|
|
76
|
+
}, z.core.$loose>;
|
|
77
|
+
task: z.ZodObject<{
|
|
78
|
+
prompt: z.ZodString;
|
|
79
|
+
workflow: z.ZodOptional<z.ZodString>;
|
|
80
|
+
steps: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
81
|
+
id: z.ZodString;
|
|
82
|
+
name: z.ZodOptional<z.ZodString>;
|
|
83
|
+
prompt: z.ZodOptional<z.ZodString>;
|
|
84
|
+
skill: z.ZodOptional<z.ZodString>;
|
|
85
|
+
model: z.ZodOptional<z.ZodString>;
|
|
86
|
+
runner: z.ZodOptional<z.ZodEnum<{
|
|
87
|
+
claude: "claude";
|
|
88
|
+
codex: "codex";
|
|
89
|
+
opencode: "opencode";
|
|
90
|
+
pi: "pi";
|
|
91
|
+
}>>;
|
|
92
|
+
allowedTools: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
93
|
+
bashAllowlist: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
94
|
+
command: z.ZodOptional<z.ZodString>;
|
|
95
|
+
onFail: z.ZodOptional<z.ZodObject<{
|
|
96
|
+
retry: z.ZodString;
|
|
97
|
+
max: z.ZodDefault<z.ZodNumber>;
|
|
98
|
+
}, z.core.$strip>>;
|
|
99
|
+
}, z.core.$strip>>>;
|
|
100
|
+
runner: z.ZodOptional<z.ZodEnum<{
|
|
101
|
+
claude: "claude";
|
|
102
|
+
codex: "codex";
|
|
103
|
+
opencode: "opencode";
|
|
104
|
+
pi: "pi";
|
|
105
|
+
}>>;
|
|
106
|
+
model: z.ZodOptional<z.ZodString>;
|
|
107
|
+
variants: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>]>>;
|
|
108
|
+
worktree: z.ZodOptional<z.ZodBoolean>;
|
|
109
|
+
generateFollowups: z.ZodOptional<z.ZodBoolean>;
|
|
110
|
+
autonomous: z.ZodOptional<z.ZodBoolean>;
|
|
111
|
+
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
112
|
+
}, z.core.$loose>;
|
|
113
|
+
createdAt: z.ZodString;
|
|
114
|
+
updatedAt: z.ZodString;
|
|
115
|
+
}, z.core.$loose>;
|
|
116
|
+
export declare const automationDefinitionsFileSchema: z.ZodObject<{
|
|
117
|
+
version: z.ZodDefault<z.ZodLiteral<1>>;
|
|
118
|
+
automations: z.ZodDefault<z.ZodArray<z.ZodUnknown>>;
|
|
119
|
+
tombstones: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
120
|
+
}, z.core.$loose>;
|
|
121
|
+
export declare const automationCursorSchema: z.ZodObject<{
|
|
122
|
+
timestamp: z.ZodString;
|
|
123
|
+
tieBreaker: z.ZodOptional<z.ZodString>;
|
|
124
|
+
}, z.core.$loose>;
|
|
125
|
+
export declare const automationRuntimeStateSchema: z.ZodObject<{
|
|
126
|
+
revision: z.ZodOptional<z.ZodNumber>;
|
|
127
|
+
baselineAt: z.ZodOptional<z.ZodString>;
|
|
128
|
+
cursor: z.ZodOptional<z.ZodObject<{
|
|
129
|
+
timestamp: z.ZodString;
|
|
130
|
+
tieBreaker: z.ZodOptional<z.ZodString>;
|
|
131
|
+
}, z.core.$loose>>;
|
|
132
|
+
frozenHighWatermark: z.ZodOptional<z.ZodObject<{
|
|
133
|
+
timestamp: z.ZodString;
|
|
134
|
+
tieBreaker: z.ZodString;
|
|
135
|
+
}, z.core.$loose>>;
|
|
136
|
+
backlogAfter: z.ZodOptional<z.ZodObject<{
|
|
137
|
+
timestamp: z.ZodString;
|
|
138
|
+
tieBreaker: z.ZodString;
|
|
139
|
+
}, z.core.$loose>>;
|
|
140
|
+
nextCheckAt: z.ZodOptional<z.ZodString>;
|
|
141
|
+
lastSuccessAt: z.ZodOptional<z.ZodString>;
|
|
142
|
+
etags: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
143
|
+
backoffUntil: z.ZodOptional<z.ZodString>;
|
|
144
|
+
consecutiveFailures: z.ZodOptional<z.ZodNumber>;
|
|
145
|
+
}, z.core.$loose>;
|
|
146
|
+
export declare const automationStateFileSchema: z.ZodObject<{
|
|
147
|
+
version: z.ZodDefault<z.ZodLiteral<1>>;
|
|
148
|
+
states: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
149
|
+
revision: z.ZodOptional<z.ZodNumber>;
|
|
150
|
+
baselineAt: z.ZodOptional<z.ZodString>;
|
|
151
|
+
cursor: z.ZodOptional<z.ZodObject<{
|
|
152
|
+
timestamp: z.ZodString;
|
|
153
|
+
tieBreaker: z.ZodOptional<z.ZodString>;
|
|
154
|
+
}, z.core.$loose>>;
|
|
155
|
+
frozenHighWatermark: z.ZodOptional<z.ZodObject<{
|
|
156
|
+
timestamp: z.ZodString;
|
|
157
|
+
tieBreaker: z.ZodString;
|
|
158
|
+
}, z.core.$loose>>;
|
|
159
|
+
backlogAfter: z.ZodOptional<z.ZodObject<{
|
|
160
|
+
timestamp: z.ZodString;
|
|
161
|
+
tieBreaker: z.ZodString;
|
|
162
|
+
}, z.core.$loose>>;
|
|
163
|
+
nextCheckAt: z.ZodOptional<z.ZodString>;
|
|
164
|
+
lastSuccessAt: z.ZodOptional<z.ZodString>;
|
|
165
|
+
etags: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
166
|
+
backoffUntil: z.ZodOptional<z.ZodString>;
|
|
167
|
+
consecutiveFailures: z.ZodOptional<z.ZodNumber>;
|
|
168
|
+
}, z.core.$loose>>>;
|
|
169
|
+
}, z.core.$loose>;
|
|
170
|
+
export declare const automationReceiptSchema: z.ZodObject<{
|
|
171
|
+
receiptId: z.ZodString;
|
|
172
|
+
receiptKey: z.ZodString;
|
|
173
|
+
eventId: z.ZodString;
|
|
174
|
+
automationId: z.ZodString;
|
|
175
|
+
revision: z.ZodNumber;
|
|
176
|
+
status: z.ZodEnum<{
|
|
177
|
+
"launch-error": "launch-error";
|
|
178
|
+
launched: "launched";
|
|
179
|
+
reserved: "reserved";
|
|
180
|
+
}>;
|
|
181
|
+
runId: z.ZodOptional<z.ZodString>;
|
|
182
|
+
observedAt: z.ZodString;
|
|
183
|
+
updatedAt: z.ZodString;
|
|
184
|
+
error: z.ZodOptional<z.ZodString>;
|
|
185
|
+
candidate: z.ZodOptional<z.ZodObject<{
|
|
186
|
+
eventId: z.ZodString;
|
|
187
|
+
event: z.ZodEnum<{
|
|
188
|
+
"issue.labeled": "issue.labeled";
|
|
189
|
+
"issue.opened": "issue.opened";
|
|
190
|
+
"issue.unlabeled": "issue.unlabeled";
|
|
191
|
+
"pull_request.opened": "pull_request.opened";
|
|
192
|
+
}>;
|
|
193
|
+
timestamp: z.ZodString;
|
|
194
|
+
tieBreaker: z.ZodString;
|
|
195
|
+
repo: z.ZodString;
|
|
196
|
+
nodeId: z.ZodString;
|
|
197
|
+
number: z.ZodNumber;
|
|
198
|
+
title: z.ZodString;
|
|
199
|
+
url: z.ZodString;
|
|
200
|
+
author: z.ZodString;
|
|
201
|
+
assignees: z.ZodArray<z.ZodString>;
|
|
202
|
+
labels: z.ZodArray<z.ZodString>;
|
|
203
|
+
changedLabel: z.ZodOptional<z.ZodString>;
|
|
204
|
+
}, z.core.$loose>>;
|
|
205
|
+
}, z.core.$loose>;
|
|
206
|
+
export declare const automationLogResultSchema: z.ZodEnum<{
|
|
207
|
+
baseline: "baseline";
|
|
208
|
+
duplicate: "duplicate";
|
|
209
|
+
error: "error";
|
|
210
|
+
launched: "launched";
|
|
211
|
+
"no-match": "no-match";
|
|
212
|
+
preview: "preview";
|
|
213
|
+
"rate-limited": "rate-limited";
|
|
214
|
+
}>;
|
|
215
|
+
export declare const automationLogRecordSchema: z.ZodObject<{
|
|
216
|
+
seq: z.ZodNumber;
|
|
217
|
+
ts: z.ZodString;
|
|
218
|
+
automationId: z.ZodString;
|
|
219
|
+
revision: z.ZodNumber;
|
|
220
|
+
event: z.ZodOptional<z.ZodEnum<{
|
|
221
|
+
"issue.labeled": "issue.labeled";
|
|
222
|
+
"issue.opened": "issue.opened";
|
|
223
|
+
"issue.unlabeled": "issue.unlabeled";
|
|
224
|
+
"pull_request.opened": "pull_request.opened";
|
|
225
|
+
}>>;
|
|
226
|
+
result: z.ZodEnum<{
|
|
227
|
+
baseline: "baseline";
|
|
228
|
+
duplicate: "duplicate";
|
|
229
|
+
error: "error";
|
|
230
|
+
launched: "launched";
|
|
231
|
+
"no-match": "no-match";
|
|
232
|
+
preview: "preview";
|
|
233
|
+
"rate-limited": "rate-limited";
|
|
234
|
+
}>;
|
|
235
|
+
reason: z.ZodOptional<z.ZodString>;
|
|
236
|
+
durationMs: z.ZodOptional<z.ZodNumber>;
|
|
237
|
+
receiptId: z.ZodOptional<z.ZodString>;
|
|
238
|
+
runId: z.ZodOptional<z.ZodString>;
|
|
239
|
+
githubNumber: z.ZodOptional<z.ZodNumber>;
|
|
240
|
+
githubTitle: z.ZodOptional<z.ZodString>;
|
|
241
|
+
githubUrl: z.ZodOptional<z.ZodString>;
|
|
242
|
+
rateLimit: z.ZodOptional<z.ZodObject<{
|
|
243
|
+
bucket: z.ZodEnum<{
|
|
244
|
+
core: "core";
|
|
245
|
+
search: "search";
|
|
246
|
+
}>;
|
|
247
|
+
remaining: z.ZodOptional<z.ZodNumber>;
|
|
248
|
+
resetAt: z.ZodOptional<z.ZodString>;
|
|
249
|
+
}, z.core.$loose>>;
|
|
250
|
+
}, z.core.$loose>;
|
|
251
|
+
export type AutomationEvent = z.infer<typeof automationEventSchema>;
|
|
252
|
+
export type AutomationDefinition = z.infer<typeof automationDefinitionSchema>;
|
|
253
|
+
export type AutomationRuntimeState = z.infer<typeof automationRuntimeStateSchema>;
|
|
254
|
+
export type AutomationReceipt = z.infer<typeof automationReceiptSchema>;
|
|
255
|
+
export type AutomationLogRecord = z.infer<typeof automationLogRecordSchema>;
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { RUNNER_IDS } from '../core/agent-runner.js';
|
|
3
|
+
import { workflowStepSchema } from '../workflows/types.js';
|
|
4
|
+
export const automationEventSchema = z.enum([
|
|
5
|
+
'pull_request.opened',
|
|
6
|
+
'issue.opened',
|
|
7
|
+
'issue.labeled',
|
|
8
|
+
'issue.unlabeled',
|
|
9
|
+
]);
|
|
10
|
+
const boundedString = z.string().trim().min(1).max(200);
|
|
11
|
+
const stringList = z.array(boundedString).max(100).optional();
|
|
12
|
+
export const automationFiltersSchema = z
|
|
13
|
+
.object({
|
|
14
|
+
authors: stringList,
|
|
15
|
+
assignees: stringList,
|
|
16
|
+
allLabels: stringList,
|
|
17
|
+
anyLabels: stringList,
|
|
18
|
+
excludeLabels: stringList,
|
|
19
|
+
changedLabels: stringList,
|
|
20
|
+
lookbackDays: z.number().int().min(1).max(90).default(7),
|
|
21
|
+
maxRecords: z.number().int().min(1).max(100).default(25),
|
|
22
|
+
})
|
|
23
|
+
.passthrough();
|
|
24
|
+
export const automationTaskSchema = z
|
|
25
|
+
.object({
|
|
26
|
+
prompt: z.string().min(1).max(100_000),
|
|
27
|
+
workflow: z.string().trim().min(1).max(200).optional(),
|
|
28
|
+
steps: z.array(workflowStepSchema).min(1).max(100).optional(),
|
|
29
|
+
runner: z.enum(RUNNER_IDS).optional(),
|
|
30
|
+
model: z.string().trim().min(1).max(200).optional(),
|
|
31
|
+
variants: z.union([z.literal(1), z.literal(2), z.literal(3)]).optional(),
|
|
32
|
+
worktree: z.boolean().optional(),
|
|
33
|
+
generateFollowups: z.boolean().optional(),
|
|
34
|
+
autonomous: z.boolean().optional(),
|
|
35
|
+
systemPrompt: z.string().max(100_000).optional(),
|
|
36
|
+
})
|
|
37
|
+
.passthrough()
|
|
38
|
+
.refine((task) => !(task.workflow && task.steps), {
|
|
39
|
+
message: 'task selects either a named workflow or inline steps, not both',
|
|
40
|
+
});
|
|
41
|
+
export const automationDefinitionSchema = z
|
|
42
|
+
.object({
|
|
43
|
+
id: z.string().min(1).max(100),
|
|
44
|
+
revision: z.number().int().positive(),
|
|
45
|
+
name: z.string().trim().min(1).max(200),
|
|
46
|
+
description: z.string().max(2_000).optional(),
|
|
47
|
+
enabled: z.boolean().default(false),
|
|
48
|
+
events: z.array(automationEventSchema).min(1).max(4),
|
|
49
|
+
intervalSeconds: z.number().int().min(60).max(86_400).default(300),
|
|
50
|
+
filters: automationFiltersSchema,
|
|
51
|
+
task: automationTaskSchema,
|
|
52
|
+
createdAt: z.string().datetime(),
|
|
53
|
+
updatedAt: z.string().datetime(),
|
|
54
|
+
})
|
|
55
|
+
.passthrough()
|
|
56
|
+
.superRefine((definition, ctx) => {
|
|
57
|
+
if (definition.events.some((event) => event === 'issue.labeled' || event === 'issue.unlabeled') &&
|
|
58
|
+
!definition.filters.changedLabels?.length) {
|
|
59
|
+
ctx.addIssue({
|
|
60
|
+
code: z.ZodIssueCode.custom,
|
|
61
|
+
path: ['filters', 'changedLabels'],
|
|
62
|
+
message: 'changedLabels is required for issue label events',
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
export const automationDefinitionsFileSchema = z
|
|
67
|
+
.object({
|
|
68
|
+
version: z.literal(1).default(1),
|
|
69
|
+
automations: z.array(z.unknown()).default([]),
|
|
70
|
+
tombstones: z.record(z.string(), z.string().datetime()).optional(),
|
|
71
|
+
})
|
|
72
|
+
.passthrough();
|
|
73
|
+
export const automationCursorSchema = z
|
|
74
|
+
.object({
|
|
75
|
+
timestamp: z.string().datetime(),
|
|
76
|
+
tieBreaker: z.string().optional(),
|
|
77
|
+
})
|
|
78
|
+
.passthrough();
|
|
79
|
+
export const automationRuntimeStateSchema = z
|
|
80
|
+
.object({
|
|
81
|
+
revision: z.number().int().positive().optional(),
|
|
82
|
+
baselineAt: z.string().datetime().optional(),
|
|
83
|
+
cursor: automationCursorSchema.optional(),
|
|
84
|
+
frozenHighWatermark: automationCursorSchema
|
|
85
|
+
.extend({ tieBreaker: z.string() })
|
|
86
|
+
.optional(),
|
|
87
|
+
backlogAfter: automationCursorSchema.extend({ tieBreaker: z.string() }).optional(),
|
|
88
|
+
nextCheckAt: z.string().datetime().optional(),
|
|
89
|
+
lastSuccessAt: z.string().datetime().optional(),
|
|
90
|
+
etags: z.record(z.string(), z.string()).optional(),
|
|
91
|
+
backoffUntil: z.string().datetime().optional(),
|
|
92
|
+
consecutiveFailures: z.number().int().nonnegative().optional(),
|
|
93
|
+
})
|
|
94
|
+
.passthrough();
|
|
95
|
+
export const automationStateFileSchema = z
|
|
96
|
+
.object({
|
|
97
|
+
version: z.literal(1).default(1),
|
|
98
|
+
states: z.record(z.string(), automationRuntimeStateSchema).default({}),
|
|
99
|
+
})
|
|
100
|
+
.passthrough();
|
|
101
|
+
export const automationReceiptSchema = z
|
|
102
|
+
.object({
|
|
103
|
+
receiptId: z.string().min(1),
|
|
104
|
+
receiptKey: z.string().min(1),
|
|
105
|
+
eventId: z.string().min(1),
|
|
106
|
+
automationId: z.string().min(1),
|
|
107
|
+
revision: z.number().int().positive(),
|
|
108
|
+
status: z.enum(['reserved', 'launched', 'launch-error']),
|
|
109
|
+
runId: z.string().optional(),
|
|
110
|
+
observedAt: z.string().datetime(),
|
|
111
|
+
updatedAt: z.string().datetime(),
|
|
112
|
+
error: z.string().max(2_000).optional(),
|
|
113
|
+
candidate: z
|
|
114
|
+
.object({
|
|
115
|
+
eventId: z.string(), event: automationEventSchema, timestamp: z.string().datetime(),
|
|
116
|
+
tieBreaker: z.string(), repo: z.string(), nodeId: z.string(), number: z.number().int().positive(),
|
|
117
|
+
title: z.string().max(500), url: z.string().url(), author: z.string().max(200),
|
|
118
|
+
assignees: z.array(z.string().max(200)).max(100), labels: z.array(z.string().max(200)).max(100),
|
|
119
|
+
changedLabel: z.string().max(200).optional(),
|
|
120
|
+
})
|
|
121
|
+
.passthrough()
|
|
122
|
+
.optional(),
|
|
123
|
+
})
|
|
124
|
+
.passthrough();
|
|
125
|
+
export const automationLogResultSchema = z.enum([
|
|
126
|
+
'launched',
|
|
127
|
+
'no-match',
|
|
128
|
+
'duplicate',
|
|
129
|
+
'rate-limited',
|
|
130
|
+
'error',
|
|
131
|
+
'baseline',
|
|
132
|
+
'preview',
|
|
133
|
+
]);
|
|
134
|
+
export const automationLogRecordSchema = z
|
|
135
|
+
.object({
|
|
136
|
+
seq: z.number().int().positive(),
|
|
137
|
+
ts: z.string().datetime(),
|
|
138
|
+
automationId: z.string().min(1),
|
|
139
|
+
revision: z.number().int().positive(),
|
|
140
|
+
event: automationEventSchema.optional(),
|
|
141
|
+
result: automationLogResultSchema,
|
|
142
|
+
reason: z.string().max(2_000).optional(),
|
|
143
|
+
durationMs: z.number().int().nonnegative().optional(),
|
|
144
|
+
receiptId: z.string().optional(),
|
|
145
|
+
runId: z.string().optional(),
|
|
146
|
+
githubNumber: z.number().int().positive().optional(),
|
|
147
|
+
githubTitle: z.string().max(500).optional(),
|
|
148
|
+
githubUrl: z.string().url().optional(),
|
|
149
|
+
rateLimit: z
|
|
150
|
+
.object({
|
|
151
|
+
bucket: z.enum(['core', 'search']),
|
|
152
|
+
remaining: z.number().int().nonnegative().optional(),
|
|
153
|
+
resetAt: z.string().datetime().optional(),
|
|
154
|
+
})
|
|
155
|
+
.passthrough()
|
|
156
|
+
.optional(),
|
|
157
|
+
})
|
|
158
|
+
.passthrough();
|
|
159
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/automations/types.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -6,142 +6,49 @@ import { z } from 'zod';
|
|
|
6
6
|
* can be overridden or emptied (`"skillsRepos": []` disables team skills).
|
|
7
7
|
*/
|
|
8
8
|
declare const skillsRepoSchema: z.ZodObject<{
|
|
9
|
-
/** `owner/name` (GitHub shorthand), a full git URL, or a local/file:// path. */
|
|
10
9
|
repo: z.ZodString;
|
|
11
10
|
ref: z.ZodDefault<z.ZodString>;
|
|
12
|
-
},
|
|
13
|
-
repo: string;
|
|
14
|
-
ref: string;
|
|
15
|
-
}, {
|
|
16
|
-
repo: string;
|
|
17
|
-
ref?: string | undefined;
|
|
18
|
-
}>;
|
|
11
|
+
}, z.core.$strip>;
|
|
19
12
|
export type SkillsRepoSource = z.infer<typeof skillsRepoSchema>;
|
|
20
13
|
export declare const DEFAULT_SKILLS_REPOS: SkillsRepoSource[];
|
|
21
14
|
/** Last-resort retention when neither the repo nor the workspace says anything. */
|
|
22
15
|
export declare const DEFAULT_WORKTREE_RETENTION = 10;
|
|
23
16
|
declare const configSchema: z.ZodObject<{
|
|
24
17
|
skillsRepos: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
25
|
-
/** `owner/name` (GitHub shorthand), a full git URL, or a local/file:// path. */
|
|
26
18
|
repo: z.ZodString;
|
|
27
19
|
ref: z.ZodDefault<z.ZodString>;
|
|
28
|
-
},
|
|
29
|
-
repo: string;
|
|
30
|
-
ref: string;
|
|
31
|
-
}, {
|
|
32
|
-
repo: string;
|
|
33
|
-
ref?: string | undefined;
|
|
34
|
-
}>, "many">>;
|
|
35
|
-
/** How many tasks may run at once (spec 006). Non-git dirs always run 1. */
|
|
20
|
+
}, z.core.$strip>>>;
|
|
36
21
|
maxParallel: z.ZodDefault<z.ZodNumber>;
|
|
37
|
-
/**
|
|
38
|
-
* Count-based worktree retention (#483): keep the last N *finished*
|
|
39
|
-
* worktrees materialized on disk; reclaim older ones (directory only — the
|
|
40
|
-
* `cez/<id8>` branch is kept, so the work stays recoverable). 0 = unlimited
|
|
41
|
-
* (never auto-reclaim). Default 10. `.catch(10)` keeps it additive-safe: a
|
|
42
|
-
* bad value degrades to the default instead of discarding the rest.
|
|
43
|
-
*/
|
|
44
22
|
worktreeRetention: z.ZodCatch<z.ZodDefault<z.ZodNumber>>;
|
|
45
|
-
/**
|
|
46
|
-
* Per-task memory ceiling in MiB (whole process tree). When a running task's
|
|
47
|
-
* RSS crosses this the engine pauses it with a warning and lets the queue
|
|
48
|
-
* advance (#memory-guard). 0 / unset = no limit. `.catch(undefined)` keeps
|
|
49
|
-
* the key additive-safe: a bad value degrades to "no limit".
|
|
50
|
-
*/
|
|
51
23
|
memoryLimitMb: z.ZodCatch<z.ZodOptional<z.ZodNumber>>;
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
/** Model for the chain planner (spec 008) — cheap but reliable at JSON. */
|
|
24
|
+
defaultRunner: z.ZodDefault<z.ZodEnum<{
|
|
25
|
+
claude: "claude";
|
|
26
|
+
codex: "codex";
|
|
27
|
+
opencode: "opencode";
|
|
28
|
+
pi: "pi";
|
|
29
|
+
}>>;
|
|
59
30
|
plannerModel: z.ZodDefault<z.ZodString>;
|
|
60
|
-
/** Model for the task namer (spec 2026-07-17-task-auto-naming) — the cheapest
|
|
61
|
-
* alias that answers strict JSON; naming is fire-and-forget and never blocks. */
|
|
62
31
|
namerModel: z.ZodDefault<z.ZodString>;
|
|
63
|
-
/** Live title updates: refresh the display title through the namer on each
|
|
64
|
-
* turn end. Absent = the `CEZ_TITLE_UPDATES` env decides (default ON — owner
|
|
65
|
-
* decision on PR #479). */
|
|
66
32
|
liveTitleUpdates: z.ZodOptional<z.ZodBoolean>;
|
|
67
|
-
/** Optional diff-first review gate (#489): when a successful run with changes
|
|
68
|
-
* should park at `review` for a human. Absent = the `CEZ_REVIEW_GATE` env
|
|
69
|
-
* decides (default OFF — the deliberate inverse of `liveTitleUpdates`).
|
|
70
|
-
* Autonomous runs always skip the gate regardless of this. */
|
|
71
33
|
reviewGate: z.ZodOptional<z.ZodBoolean>;
|
|
72
|
-
/**
|
|
73
|
-
* Branch task worktrees fork from and draft PRs target (e.g. `develop`).
|
|
74
|
-
* Unset = the branch currently checked out. Settable from the Repo tab.
|
|
75
|
-
*/
|
|
76
34
|
baseBranch: z.ZodOptional<z.ZodString>;
|
|
77
|
-
/**
|
|
78
|
-
* Default extra system prompt applied to every run's agent steps (claude:
|
|
79
|
-
* `--append-system-prompt`; codex/opencode: prepended to the opening user
|
|
80
|
-
* message — the AgentRunSpec seam handles the per-backend delivery).
|
|
81
|
-
* Settings is the single edit place; `POST /api/runs` can override it per
|
|
82
|
-
* run (`systemPrompt`). `.catch(undefined)` keeps the key additive-safe: a
|
|
83
|
-
* bad value degrades to unset without discarding the rest of the config.
|
|
84
|
-
*/
|
|
85
35
|
systemPrompt: z.ZodCatch<z.ZodOptional<z.ZodString>>;
|
|
86
|
-
/**
|
|
87
|
-
* Per-runner default model preset (Settings → Agents, redesign R6 1.5): the
|
|
88
|
-
* model id the composer preselects for that runner. Missing = auto (the
|
|
89
|
-
* runner decides). A capability (`model`), never a vendor config format.
|
|
90
|
-
* `.catch(undefined)` keeps the key additive-safe like `systemPrompt`: a
|
|
91
|
-
* bad value degrades to unset without discarding the rest of the config.
|
|
92
|
-
*/
|
|
93
36
|
defaultModels: z.ZodCatch<z.ZodOptional<z.ZodObject<{
|
|
94
37
|
claude: z.ZodOptional<z.ZodString>;
|
|
95
38
|
codex: z.ZodOptional<z.ZodString>;
|
|
96
39
|
opencode: z.ZodOptional<z.ZodString>;
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
}, {
|
|
102
|
-
claude?: string | undefined;
|
|
103
|
-
codex?: string | undefined;
|
|
104
|
-
opencode?: string | undefined;
|
|
105
|
-
}>>>;
|
|
106
|
-
}, "strip", z.ZodTypeAny, {
|
|
107
|
-
skillsRepos: {
|
|
108
|
-
repo: string;
|
|
109
|
-
ref: string;
|
|
110
|
-
}[];
|
|
111
|
-
maxParallel: number;
|
|
112
|
-
worktreeRetention: number;
|
|
113
|
-
memoryLimitMb?: number | undefined;
|
|
114
|
-
defaultRunner: "claude" | "codex" | "opencode";
|
|
115
|
-
plannerModel: string;
|
|
116
|
-
namerModel: string;
|
|
117
|
-
liveTitleUpdates?: boolean | undefined;
|
|
118
|
-
reviewGate?: boolean | undefined;
|
|
119
|
-
baseBranch?: string | undefined;
|
|
120
|
-
systemPrompt?: string | undefined;
|
|
121
|
-
defaultModels?: {
|
|
122
|
-
claude?: string | undefined;
|
|
123
|
-
codex?: string | undefined;
|
|
124
|
-
opencode?: string | undefined;
|
|
125
|
-
} | undefined;
|
|
126
|
-
}, {
|
|
127
|
-
skillsRepos?: {
|
|
128
|
-
repo: string;
|
|
129
|
-
ref?: string | undefined;
|
|
130
|
-
}[] | undefined;
|
|
131
|
-
maxParallel?: number | undefined;
|
|
132
|
-
worktreeRetention?: unknown;
|
|
133
|
-
memoryLimitMb?: unknown;
|
|
134
|
-
defaultRunner?: "claude" | "codex" | "opencode" | undefined;
|
|
135
|
-
plannerModel?: string | undefined;
|
|
136
|
-
namerModel?: string | undefined;
|
|
137
|
-
liveTitleUpdates?: boolean | undefined;
|
|
138
|
-
reviewGate?: boolean | undefined;
|
|
139
|
-
baseBranch?: string | undefined;
|
|
140
|
-
systemPrompt?: unknown;
|
|
141
|
-
defaultModels?: unknown;
|
|
142
|
-
}>;
|
|
40
|
+
pi: z.ZodOptional<z.ZodString>;
|
|
41
|
+
}, z.core.$strip>>>;
|
|
42
|
+
modelsLocked: z.ZodCatch<z.ZodOptional<z.ZodBoolean>>;
|
|
43
|
+
}, z.core.$strip>;
|
|
143
44
|
export type CezConfig = z.infer<typeof configSchema>;
|
|
144
|
-
/**
|
|
45
|
+
/**
|
|
46
|
+
* Read `.ai/cezar/config.json` on demand — never cached, never throws.
|
|
47
|
+
*
|
|
48
|
+
* Also reads the machine-wide defaults, which is one more small JSON read and deliberately not
|
|
49
|
+
* cached for the same reason this one is not: `~/.cezar/` is shared by every cezar process on the
|
|
50
|
+
* machine, so a snapshot is a staleness bug.
|
|
51
|
+
*/
|
|
145
52
|
export declare function loadConfig(repoRoot: string): Promise<CezConfig>;
|
|
146
53
|
/**
|
|
147
54
|
* The default skills repos that are *opt-in per skill* (the "import OM skills"
|