stacklok / stacklok/mecatl

Scheduled tasks — wake-on-change / no-LLM gate

Open
#261 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement research
Dominant language
Go
Stars
152
Forks
16
Avg merge
14h 48m
Merged PRs (30d)
536

Description

Summary

Add a "no-LLM gate" / wake-on-change mechanism: run a cheap check first, and only wake the agent on a real change (the Hermes wakeAgent pattern).

Part of #189 (scheduled tasks). Split out of #236 (deferred/v2) — needs a pre-fire check mechanism + diff detection, too large for the v2 finish PR (#256).

Scope

  • A per-schedule WakeOnChange config: a cheap check (a shell command, an HTTP probe, a git diff) that runs BEFORE the fire. If the check produces no change since the last fire, the fire is skipped (not claimed — NextFireAt advances but Fire is not called).
  • The check runs in the tick loop, before Claim. If the check fails (non-zero exit, HTTP error), the fire proceeds (fail-open — a broken check should not silently suppress a schedule).
  • The check's output is NOT carried into the fire (it's a gate, not context).
  • Use cases: only run a doc-sync schedule when docs actually changed; only run a dependency-bump schedule when a new version is published.

References

  • Design: #189 (Prior art: Hermes wakeAgent).
  • The v2 finish: #256.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Read #189 and the Hermes wakeAgent prior art first, then trace the scheduled-task tick loop and the Claim/NextFireAt behavior. Done means a per-schedule WakeOnChange check runs before Claim, skips unchanged fires while advancing NextFireAt, and proceeds fail-open when the check errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.