Skip to content

v1.0.0

Release date: October 9, 2026.

Wakeplane 1.0 defines stable interfaces for a single-operator scheduling control plane on trusted infrastructure. The supported contract covers the standalone daemon, documented REST and MCP tools, CLI commands, schedule manifests, policy behavior, run statuses, and tracked-job protocol. Source-level Go embedding remains internal and outside this compatibility promise.

  • skip now permits occurrences detected within one configured scheduler polling interval, including the exact nominal time. Older occurrences remain durably skipped. The default grace is five seconds; operators can configure the polling interval. run_once_if_late remains the default and catch_up behavior is unchanged.
  • Schedule create and full replacement default omitted policy and retry fields independently. Explicit overlap, misfire, concurrency, retry count and delay values are preserved and validated.
  • Schedule export follows all result pages instead of stopping after the first 1,000 schedules. It exports definitions, not execution history or a transactionally consistent database snapshot.
  • Empty list responses consistently return items: [] rather than null.
  • Timestamp comparisons normalize legacy fractional-second precision at query time, correcting due-work, lease, retention and pagination ordering without rewriting stored history or adding a migration.
  • Malformed CLI server addresses return an error rather than panicking.
  • /readyz returns HTTP 503 when storage is unavailable and HTTP 200 when storage is reachable. /healthz remains a process liveness probe.
  • Public compatibility, security boundaries, upgrade expectations and rollback limits are explicit. Generated API and CLI references match the release source.

A private Railway deployment completed three automatic one-minute occurrences for each native Discord and Gmail workload. All six had distinct durable occurrence, job and provider identities, no observed retries or duplicate submissions, and completed within 4.2 seconds. Actual Discord messages and Gmail INBOX placement were verified separately from provider acceptance, and the operator confirmed receipt and readability. Notifications use ASCII subjects and bodies with spaced HTML and plain-text alternatives.

Recovery, restart, storage contention, ambiguous-send handling, paired production backup restore and prior-release rollback checks provide separate evidence. The restored production database matched all eight table hashes and preserved five original job identities in an isolated clone. This supports the tested single-operator model; it does not promise exactly-once side effects at arbitrary remote providers or unlimited reliability from a short test.

AWS, Google Cloud and Cloudflare adapters have configuration and packaging validation. Live deployments on those platforms are not accepted by the Railway results. Cloudflare support remains experimental and requires external Postgres. RBAC, multi-tenancy, distributed scheduler coordination, OAuth account onboarding, provider budgets and general DAG orchestration remain outside the supported release.

No storage migrations are added relative to v0.3.0-beta.3. Stop the previous daemon and runner, preserve a consistent database backup together with runner state, then replace binaries. Run one daemon per store and one runner per state directory. Keep the backup and previous binaries until readiness, schedule definitions, queued work and delivery identities are checked.

The skip, partial-default and readiness corrections are intentional changes from beta behavior. Existing schedules that use run_once_if_late retain their behavior. Existing stored policy values are not rewritten, and historical skipped attempts are not replayed. Review skip schedules and do not replay old reports merely because a new binary is installed.

Rollback to beta.3 is storage-compatible for this release because no migrations were added. It reinstates the old skip, partial-default, export and readiness behavior. Future releases that migrate storage require the documented compatible backup and version-specific rollback instructions; a down migration is not promised. Keep the API private and set WAKEPLANE_AUTH_TOKEN before exposing authenticated operator endpoints.