Create and migrate repo-defined Tessl schedules in a project's tessl.json. Turns a plain-language cadence into a validated schedules entry, and moves an existing UI/CLI schedule into version control.
90
97%
Does it follow best practices?
Impact
94%
0.94xAverage score across 2 eval scenarios
Low
Low-risk findings worth noting
{
"context": "Tests whether the agent reads a live schedule's `tessl schedule view --json` output and writes the equivalent repo-defined entry in tessl.json: correct field mapping (skillRef->skill, environment.name->environment, cron/agent/model), a kebab-case key, dropping/flagging fields with no file home (timeoutMs, label), and a passing `tessl schedule validate`.",
"type": "weighted_checklist",
"checklist": [
{
"name": "schedules entry added",
"description": "tessl.json now has a top-level `schedules` object with one entry, keyed by a lowercase kebab-case slug (e.g. `nightly-report`), and the original `name`/`mode`/`dependencies` are preserved.",
"max_score": 15
},
{
"name": "Skill and cron mapped",
"description": "The entry's `skill` is `acme/reports#nightly` (from `config.skillRef`) and `cron` is `0 2 * * *`.",
"max_score": 20
},
{
"name": "Environment mapped by name",
"description": "The entry's `environment` is `reports-prod` — the environment NAME from `environment.name`, NOT the environment id (`018f2c0e-...`).",
"max_score": 25
},
{
"name": "Optional fields mapped, defaults omittable",
"description": "`agent` (claude) and `model` (claude-sonnet-4-6) and `description` are carried across. It is acceptable to omit `timezone` (UTC) and `baseBranch` (main) as defaults. No unknown/misspelled field names are present (strict schema).",
"max_score": 15
},
{
"name": "Unmappable fields flagged, not invented",
"description": "result.md notes that non-schema fields are dropped or not carried — at least `timeoutMs` (non-default 5400000) and/or `label` — rather than inventing file fields for them. The agent did not add `timeoutMs`, `label`, `inputs`, or `instructions` to the entry.",
"max_score": 15
},
{
"name": "Validation run and passing",
"description": "The agent ran `tessl schedule validate` from the repo root and result.md reports it passed.",
"max_score": 10
}
]
}