Control-plane half of the scheduled-step primitive (ADR 0053). Adds a minimal 5-field cron validator; the manifest parser accepts schedule: "<cron>" on a container, refuses a malformed cron, a non-string, and the pair run-once+schedule. The resolver carries the field through untouched (as run-once is). 4 new tests; full suite green (353 tests, vet clean). Proven end-to-end alongside the host half in mesh-lab assigned-schedule-tick (SUITE_EXIT=0).
Control-plane half of the scheduled-step primitive (ADR 0053). Adds a minimal 5-field cron validator; the manifest parser accepts `schedule: "<cron>"` on a container, refuses a malformed cron, a non-string, and the pair `run-once`+`schedule`. The resolver carries the field through untouched (as `run-once` is). 4 new tests; full suite green (353 tests, vet clean). Proven end-to-end alongside the host half in mesh-lab `assigned-schedule-tick` (SUITE_EXIT=0).
https://claude.ai/code/session_01LrgweAeERJYBg88c5cKDzF
A container may declare schedule: "<cron>", the recurring twin of
run-once. The resolver already carries a resource's keys through
untouched, so schedule reaches the rendered host declaration on its own;
what belongs here is refusing, near its author, what the host would
otherwise refuse far away.
The manifest parser refuses a schedule that is not a string, one that is
not a well-formed five-field cron (cron.go: fields, ranges, *, comma,
dash, slash), and the contradictory pair run-once + schedule -- a
container runs once and gates, or on a cadence, or stays up, never two.
Claude-Session: https://claude.ai/code/session_01LrgweAeERJYBg88c5cKDzF
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Control-plane half of the scheduled-step primitive (ADR 0053). Adds a minimal 5-field cron validator; the manifest parser accepts
schedule: "<cron>"on a container, refuses a malformed cron, a non-string, and the pairrun-once+schedule. The resolver carries the field through untouched (asrun-onceis). 4 new tests; full suite green (353 tests, vet clean). Proven end-to-end alongside the host half in mesh-labassigned-schedule-tick(SUITE_EXIT=0).https://claude.ai/code/session_01LrgweAeERJYBg88c5cKDzF