Protect the job that can't fail.
Without rewriting it.
Settlement runs, billing batches, regulatory exports — the work a company actually cannot drop — still run on cron, SQL Server Agent and Task Scheduler. Not because nobody cares, but because everything that would govern them properly asks for a migration first. Weev asks for one agent install.
01 · The cost of adoption
from agent install to first evidence, on a read-only change ticket
jobs rewritten — the code that runs tonight is the code that ran last night
inbound ports, new queues or schedulers to stand up or migrate onto
rungs per job — Observe, Adopt, Own, Native — each with mechanical rollback
That is the entire cost of adoption. What you get back is below.The Weev agent · Upcoming
02 · The alternatives
Every alternative asks for something you can't give
Teams don't leave settlement on cron because they don't care. They leave it there because the exit price is too high.
Asks for a rewrite
Rewrite-first frameworks
Temporal, Inngest and friends are excellent — once your settlement run is rebuilt inside their runtime. For jobs that move money, the rewrite never gets scheduled. And work that was never a service in the first place, like a script on a locked-down host, never moves in at all.
Asks for an ops team
Enterprise schedulers
Control-M-class tools govern everything and belong to an ops team. Developers file tickets to change a dependency they wrote.
Asks you to remember
Cron and runbooks
The default. Dependencies live in comments, retries live in a wiki, and the first sign of failure is a missing report.
Asks for one agent install
Weev
Observe first: the jobs stay where they are and every run becomes a record. Then each job escalates at its own pace, and the dependencies, the schedule and the reason it ran become explicit, validated and visible.
weev.yaml is coming — the deepening layer, not the price of entry.And for the estate that predates all of this — the SQL Server Agent chains, the Task Scheduler entries, the vendor tools — the answer is wrap, don't migrate: the incumbent keeps executing while Weev keeps the clock and the record, until each job is ready to move. Evidence an examiner accepts, from day one, without a rewrite anywhere in sight.
03 · One Tuesday night
One Tuesday night, twice
The difference every alternative misses, on an actual Tuesday. Same jobs, same code, same clock — one dependency in a comment, one declared.
As it happened · dependency in a comment
The job ran fine. It ran before its input existed, because "after ledger_close" was written in a comment instead of enforced by anything.
With the edge declared · same night
Nobody was woken up.
The only difference between these two columns is that one dependency became something the platform could enforce.
04 · The fit
Built for the jobs nobody wants to migrate
And honest about what it isn't for.
Good fit
Not a fit
05 · The deepening layer
Orchestration moves to the people who write the jobs
What SDK Mode buys you today, once a job is declared: the dependency becomes code the author owns.
The scheduler world
Developers write the job and ops owns when and why it runs. Every dependency change is a ticket; the graph lives in a tool the author never opens.
author → writes the job ops → owns the edge ticket → changes the edge
With Weev
The dependency is code, next to the job it belongs to. It goes through review like code, versions like code, rolls back like code. The control plane validates the graph before release — cycles, missing edges and duplicate jobs fail the push, not production. Ops still governs policy; they stop being the keepers of every edge.
author → writes the job and the edge
review → approves both
ops → governs policyDeclared where it's written. Validated before it ships. Accounted for when it runs.
Govern the jobs
you already run.
Start with one job. No credit card required.