This release adds 2 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
Affected surfaces
Summary
AI summaryAdds supervisor‑based push notifications for failed or uncertain‑effect runs.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Adds supervisor push for failed cron/event runs to a handler skill. Adds supervisor push for failed cron/event runs to a handler skill. Source: llm_adapter@2026-07-18 Confidence: high |
— |
| Feature | Medium |
Introduces Health (24h) column in dashboard showing skill errors, uncertain effects, and deadline cuts. Introduces Health (24h) column in dashboard showing skill errors, uncertain effects, and deadline cuts. Source: llm_adapter@2026-07-18 Confidence: high |
— |
| Feature | Low |
Provides per-fire deduplication and loop-guard for supervisor notifications. Provides per-fire deduplication and loop-guard for supervisor notifications. Source: llm_adapter@2026-07-18 Confidence: high |
— |
| Feature | Low |
Makes supervisor configuration boot-time only via SKILLSCRIPT_SUPERVISOR_SKILL and SKILLSCRIPT_SUPERVISOR_AGENT environment variables. Makes supervisor configuration boot-time only via SKILLSCRIPT_SUPERVISOR_SKILL and SKILLSCRIPT_SUPERVISOR_AGENT environment variables. Source: llm_adapter@2026-07-18 Confidence: high |
— |
| Bugfix | Medium |
Ensures supervisor requires scheduler tracing to be on, refusing boot otherwise. Ensures supervisor requires scheduler tracing to be on, refusing boot otherwise. Source: llm_adapter@2026-07-18 Confidence: low |
— |
| Bugfix | Medium |
Requires scheduler tracing to be enabled; runtime refuses boot if disabled when supervisor is configured. Requires scheduler tracing to be enabled; runtime refuses boot if disabled when supervisor is configured. Source: granite4.1:30b@2026-07-18-audit Confidence: low |
— |
Full changelog
Upgrade impact: none (additive), fully opt-in. No supervisor configured (the default) → nothing changes; the trace stays the pull surface. Configuring one requires scheduler tracing to be on (the CLI dashboard/serve path already sets this) — the runtime hard-refuses at boot otherwise, because the supervisor can't see failures it can't read from the trace.
An interactive execute_skill hands its result to a caller who can see it failed. A cron/event fire has no caller — a 3 a.m. run that errored, or one cut mid-effect leaving a mutation "outcome uncertain," was invisible unless someone went and queried the trace. This adds push: configure a supervisor and the runtime routes those failures to a handler skill you write.
- The trace-sweeper is the scheduler, not a new daemon. On each poll tick, after firing due triggers, the scheduler scans the durable trace for non-clean runs —
errors[]non-empty,deadline_exceeded, or a non-emptyuncertain_effects— since the last sweep, and routes each to your handler skill. If the scheduler is alive to fire crons, it's alive to sweep. It keys on completion time, so a long unbounded run is caught whenever it finishes — no run-length assumption. - Detection is reliable; notification is your script.
SKILLSCRIPT_SUPERVISOR_SKILLnames an approved handler skill; the sweeper only detects + routes, the handler owns policy + delivery (agent, email, Slack, a webhook). Copyexamples/skillscripts/supervisor-notify.skill.md, adapt, and approve it. The handler receives the failure as vars (FAILED_SKILL,OUTCOME,TRACE_ID,TRIGGER,ERROR_SUMMARY,UNCERTAIN_EFFECTS,DETECTED_AT_MS,RAN_AS, andSUPERVISOR_AGENTif set — the latter optional, for an agent-routed handler). - Per-fire dedup + a loop-guard. At most one alert per failed run (a persistent notified-set survives restart). The handler writes its own trace; if it fails, the sweeper does not route that back through itself — it logs to the local stderr floor and stops. No "the notifier failed" loop.
- Config source-of-truth.
SKILLSCRIPT_SUPERVISOR_SKILL/SKILLSCRIPT_SUPERVISOR_AGENTare boot-time config (present before the first fire, reachable on a headless host), not a runtime toggle — a safety control shouldn't be silently switchable from a web UI. - Dashboard health surface. The skills list gains a Health (24h) column flagging a skill errored / uncertain-effect (loudest) / deadline; the skill detail breaks out deadline-cut + uncertain-effect counts. The uncertain-effect signal — "a mutation may have landed, reconcile it" — was previously invisible in the UI.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About Skillscript
All releases →Related context
Related tools
Earlier breaking changes
- v0.35.0 Editing `# Deadline:` on an approved skill drops it to Draft (signature invalidates).
Beta — feedback welcome: [email protected]