← Journal

W09 — Jobs maturation: 5 phases, in one week

The week the Jobs system grew up. Five named phases — reliability, pipelines, integrations, developer experience, and autonomy — each shipping as its own meaningful commit. Plus a six-skill newsletter scraping pack and Claude tool support.

Tools axiom-engineopenaianthropicbrave-search

The most architecturally dense week so far. Jobs went from “useful pipelines” to “a small operating system for skill execution” in five named phases shipped Saturday and Sunday.

What shipped

Jobs Phase 1 — Reliability & observability

Live progress, retry semantics, structured events, alerting. Every running job now visibly emits state; every failed job retries on a configured curve; every alarm-worthy event reaches a configured channel.

Jobs Phase 2 — Richer pipelines

Inputs (parameterized invocations), call_job (one job invokes another), loops, accumulators, parallel branches. The pipeline model graduated from sequential-with-conditionals to a proper composition substrate.

Jobs Phase 3 — Smarter integrations

Expression engine. Database query skill. Artifact handling. Claude tool invocations. The set of things a job can reach expanded sharply.

Jobs Phase 4 — Developer experience

Import/export, templates, versioning, dry-run, an inline debugger, a pipeline view. The cockpit starts to feel like an IDE for skill composition.

Jobs Phase 5 — Autonomy & intelligence

Analytics surface, smart triggers, self-healing logic, an AI-driven job builder. The jobs system began to tend to itself.

Newsletter scraping pack

Six modular scraping/newsletter skills with end-to-end tests. The first content-operations stack the cockpit could run unattended.

OpenAI chat hardening

Structured outputs (response_format) wired in. Model selector got a proper dropdown UI. Same for compile_newsletter. Small but high-touch quality-of-life work.

Architecture moves

The five phases were planned in advance and shipped in a single multi-day push deliberately — to validate that the whole of the new jobs surface coheres. If you only ship Phase 1, you’ve added retries to a pipeline language that doesn’t loop. If you only ship Phase 4, you have a debugger for a runtime nobody trusts. Five-at-once was the right move; eighteen commits later, the result feels like a system, not a feature flag soup.

By the numbers

  • 18 commits
  • +12,321 / −1,891 (net +10,430)
  • 10 milestone-class drops

What’s next

Begin the long migration of legacy jobs onto the flow runtime. Start the local-LLM chat panel that ends up being the seed of the agentic chat surface.