mirror of
https://github.com/bytedance/deer-flow.git
synced 2026-09-21 03:56:20 +00:00
* fix(frontend): clarify reuse-thread scheduling behavior * fix(scheduler): enqueue overlapping scheduled runs * fix(scheduler): preserve queue lease fencing * fix(scheduler): close queue concurrency races * fix(scheduler): harden queue timeout bookkeeping * fix(scheduler): preserve manual failure schedule --------- Co-authored-by: Willem Jiang <willem.jiang@gmail.com>
23 lines
972 B
Python
23 lines
972 B
Python
from pydantic import BaseModel, Field
|
|
|
|
|
|
class SchedulerConfig(BaseModel):
|
|
enabled: bool = Field(default=False)
|
|
multi_instance: bool = Field(default=False)
|
|
poll_interval_seconds: int = Field(default=5, ge=1, le=300)
|
|
lease_seconds: int = Field(default=120, ge=5, le=3600)
|
|
max_concurrent_runs: int = Field(default=3, ge=1, le=32)
|
|
queue_timeout_seconds: int = Field(default=3600, ge=60, le=604800)
|
|
min_once_delay_seconds: int = Field(default=60, ge=1, le=86400)
|
|
recursion_limit: int = Field(
|
|
default=1000,
|
|
ge=1,
|
|
description=(
|
|
"LangGraph recursion_limit for scheduler-launched runs. Read at dispatch "
|
|
"time (not captured into ScheduledTaskService). The default matches the "
|
|
"web UI's interactive budget (1000) so scheduled and interactive runs "
|
|
"behave identically out of the box. Values above "
|
|
"AppConfig.max_recursion_limit are clamped."
|
|
),
|
|
)
|