Skip to content

Effectus

Effectus compiles typed rules into checked protobuf IR. The runtime executes that IR through one durable engine.

Start the walkthrough Read the guarantees

Use Effectus when

  • You need static checks for facts, verbs, bindings, and declared types.
  • You need one execution model across HTTP, Kafka, gRPC, and recovery.
  • You need immutable runtime generations with atomic activation.
  • You need durable admission, saga state, recovery, and audit data in PostgreSQL.
  • You need signed OCI bundles and explicit deployment boundaries.

Execution boundary

Effectus controls admission and internal execution state. It does not make an external service transactional.

External systems must enforce each supplied idempotency key or fencing token. Compensation is recovery work, not an ACID rollback.

Read Runtime Guarantees before a production deployment.

Select a first-run path

Production path

The production path has one checked boundary:

.eff and .effx sources
        |
        v
compiler.CompileChecked
        |
        v
checked protobuf IR
        |
        v
runtime.Engine.Execute
        |
        +--> HTTP
        +--> Kafka
        +--> generated gRPC
        +--> recovery

Unsupported production paths fail with explicit errors. Compatibility APIs do not replace the checked runtime boundary.

Documentation map

Task Document
Choose library or daemon mode Integration guide
Configure effectusd Runtime configuration
Integrate a client gRPC execution and client examples
Add a source Fact sources
Add an executor Extension system
Understand durability Runtime guarantees
Operate production Production runbook
Understand sagas Durable saga protocol
Review architecture Architecture