earendil-works

earendil-works/absurd

Python Apache-2.0 DevOps

An experiment in durability

2.2k stars
95 forks
recent
GitHub

2.2k

Stars

95

Forks

28

Open issues

15

Contributors

0.4.0 27 May 2026

AI Analysis

Absurd is a durable execution workflow system built entirely on PostgreSQL, designed to handle long-lived, reliable tasks that can survive crashes and restarts without state loss. It targets teams building LLM agents, payments, email scheduling, and order processing—anyone needing exactly-once semantics without running additional infrastructure beyond a database. This is a specialized tool for engineers who need workflow durability; it is not a general-purpose task queue and is not suitable f...

DevOps Infrastructure Discovery value: 7/10
Documentation 8/10
Activity 9/10
Community 7/10
Code quality 5/10

Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.

Overall score 8/10

AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.

durable-workflows postgres-native orchestration exactly-once-semantics distributed-systems
Actively maintained Well documented Niche/specialized use case Apache-2.0 licensed Production ready
Deep Analysis · Based on README and public signals
6d ago

Postgres-only durable workflow engine emerging 8 months after launch

Absurd is a durable execution system that uses only Postgres as its runtime dependency, designed to simplify long-lived task orchestration for payment processing, LLM agents, and event-driven workflows. It targets developers who want workflow reliability without managing additional infrastructure. The project gained ~2,200 stars in 8 months and maintains active development, but real-world production adoption remains unverified beyond the founding team.

Origin

Created October 2025 by earendil-works, launching publicly roughly 8 months before the analysis date (June 2026). Announcement post references durable execution concepts alongside comparisons to Temporal, Cadence, Inngest, and DBOS. Positioned as a lighter-weight alternative to orchestration systems requiring separate coordinators.

Growth

Gained 2,214 stars over ~8 months (~276/month average), with recent momentum of 13 stars in 7 days. Growth trajectory suggests initial novelty interest (Postgres-only pitch resonates with operators seeking minimal dependencies) but lacks acceleration signal. Similar-category projects (DBOS TypeScript at 1,263 stars, DBOS Python at 1,458 stars) show Absurd has outpaced peers, but growth curve appears to have flattened relative to launch period.

In production

Adoption not verified. No public case studies, testimonials, or documented production deployments in README. The announcement post URL is provided but not accessible from metadata. Existence of a web UI (habitat) and CLI tools (absurdctl) suggests the authors use it themselves, but third-party production usage is not evident from available documentation.

Code analysis
Architecture

Based on README: pull-based architecture where workers consume tasks from Postgres queues. Tasks decompose into steps with automatic checkpointing; failed tasks replay from last checkpoint. Core logic lives in SQL stored functions (absurd.sql), SDKs (TypeScript, Python, Go) wrap database operations. Appears to avoid external coordinators by design, delegating scheduling to Postgres. No mention of sharding, multi-database support, or distributed consensus in README.

Tests

Not documented in README. No reference to testing strategy, CI pipeline, or coverage metrics.

Maintenance

Last push 2026-06-25 (9 days before analysis date) indicates active development. Repository created 2025-10-21; 95 forks and 2 SDKs across 3 languages suggest multi-owner engagement. Presence of migrations directory and schema versioning tooling (absurdctl) indicates maintainers anticipate long-term schema evolution. However, cannot assess issue response time, PR review latency, or pre-release stability from metadata alone.

Honest verdict

ADOPT IF: your team already runs Postgres, prefers minimizing infrastructure dependencies, and can tolerate pull-based (not push) task dispatch. Suitable for long-lived workflows (payments, email, LLM agents) in organizations with ops capacity to manage Postgres directly. AVOID IF: you need multi-region failover, horizontal scaling beyond a single Postgres instance, or push-based task dispatch to HTTP endpoints. Also avoid if adoption certainty is critical—production deployments are not yet documented publicly. MONITOR IF: you are evaluating durable execution and want to track whether Absurd matures beyond early adopters; current signals suggest healthy maintenance but limited proof of large-scale production use.

Independent dimensions

Mainstream potential

3/10

Technical importance

6/10

Adoption evidence

2/10

Risks
  • Production adoption not verified: no public case studies or documented enterprise deployments; uncertain whether system handles edge cases and failure modes at scale.
  • Postgres as single point of failure: architecture depends entirely on Postgres uptime; failover strategies not discussed in README, limiting appeal to high-availability use cases.
  • Limited ecosystem maturity: project is 8 months old; database schema, SDK APIs, and tool stability may still evolve; migration burden for early adopters if breaking changes occur.
  • Pull-based dispatch constraint: lacks push capabilities, requiring users to build custom bridges for HTTP-triggered tasks or external integrations.
  • Language SDK coverage incomplete: Go SDK marked 'experimental bootstrap'; JavaScript and other languages absent; teams on unsupported stacks must implement clients or wait for official SDKs.
Prediction

Absurd likely remains a niche but viable choice for Postgres-native shops over the next 1-2 years. Probability of mainstream adoption (competing with Temporal or Cadence) is low unless production case studies emerge and the team demonstrates handling of multi-database failover. More probable trajectory: steady growth among operators who explicitly prefer minimalism, small team deployments, and self-hosted Postgres.

0 found this helpful

Newsletter

Get analyses like this every Monday

Free weekly digest of the most interesting open-source discoveries.

Languages

Python
38.1%
TypeScript
27.8%
PLpgSQL
17.1%
Go
15.1%
Shell
1.1%
CSS
0.2%
Makefile
0.2%
JavaScript
0.2%

Information

Language
Python
License
Apache-2.0
Last updated
2w ago
Created
9mo ago
Analyzed with
anthropic/claude-haiku-4-5

Stars over time

Loading…

Contributors over time

Top 100 contributors only — repos with more will plateau at 100.

Loading…

Similar repos

microsoft

microsoft/pg_durable

pg_durable brings durable execution—a pattern for fault-tolerant, resumable...

2.2k Rust Data
dbos-inc

dbos-inc/dbos-transact-py

DBOS Transact is a Python library that adds durable workflows to applications...

1.5k Python Dev Tools
dbos-inc

dbos-inc/dbos-transact-ts

DBOS Transact is a TypeScript library for building durable workflows backed by...

1.3k TypeScript Dev Tools
supabase

supabase/etl

ETL is a Rust framework for building real-time Postgres replication...

2.3k Rust Data
apalis-dev

apalis-dev/apalis

Apalis is a type-safe, extensible background job processing library for Rust...

1.3k Rust Dev Tools
vs. alternatives
Temporal

Temporal is a distributed, language-agnostic workflow engine with separate server/worker architecture and UI. Absurd trades flexibility for simplicity: Postgres-only, pull-based, minimal infra. Temporal handles extreme scale; Absurd targets teams avoiding separate services.

DBOS (TypeScript/Python)

DBOS also uses Postgres heavily but maintains a separate coordinator process. Absurd eliminates the coordinator entirely by embedding logic in stored procedures. DBOS has broader language support and longer history; Absurd is more minimal.

Inngest

Inngest is hosted SaaS-first for event-driven workflows. Absurd is self-hosted, Postgres-native. Inngest handles multi-tenancy and scale automatically; Absurd puts operational burden on users but eliminates vendor lock-in and external dependencies.

Cadence

Cadence is a mature, self-hosted workflow engine with rich querying and visibility. Absurd is younger and simpler. Cadence requires separate server; Absurd is Postgres-only. Cadence is proven at scale; Absurd's production ceiling is not yet known.

PGMQ

PGMQ is a lighter message queue also Postgres-based. Absurd adds durable execution (state replay, exactly-once semantics) on top of queue primitives. PGMQ is narrower in scope; Absurd is a fuller orchestration system with scheduling and retries baked in.