Skip to main content

seine-rs

A rules/decisioning engine over Arrow dataframes — a Rust port of a bounded Drools (DRL) subset, differentially certified against real Drools 9.44.0.Final: every supported behavior is pinned by running the same scenarios through both engines, plus multi-seed fuzz campaigns (zero divergences to completion).

import polars as pl
import seine_rs
from seine_rs import Rule, fact

@fact
class Person:
    name: str
    age: int
    score: float

@fact
class Flagged:
    name: str
    score: float

adults = Rule("Adults")
p = adults.when(Person, Person.age >= 18)
adults.then_insert(Flagged, name=p.name, score=p.score)

people = pl.DataFrame({"name": ["ada", "kurt"], "age": [36, 17], "score": [91.5, 99.0]})
res = seine_rs.run([adults], {Person: people, Flagged: []})

pl.DataFrame(res.derived["Flagged"])   # facts the rules created
pl.DataFrame(res.firings)              # full audit trail
  • Bulk, columnar boundary: Arrow tables in (polars / pyarrow / pandas ≥ 2.2, zero-copy via the PyCapsule interface), Arrow tables out. Row-object lists (@fact instances, dicts, dataclasses, Pydantic models) work too.

  • Rules in Python or DRL: the Python builder compiles to DRL text, so both paths run the identical certified engine. Anything outside the certified grammar is a definition-time CompileError. Coming from Drools: DRL here is rules-only — no package, no declare; fact types live in Python and schemas are inferred from them.

  • Full working-memory lifecycle: insert → fire → update/delete by handle → fire, each certified differentially.

  • No Python in the hot path: conditions, aggregates and salience are native; callbacks are observers over immutable results.

  • The why-machine: sess.why(handle) answers with the justifying rule, matched tuple and firing seq; justifications() walks the whole graph; acc_sources() walks an aggregate to the exact source facts that sum to its value. The audit surface is certified alongside the semantics.

  • Schemas auto-register from the @fact classes your rules reference — Session([rule]) alone works; insert_row(Account(...)) needs no type argument.

  • Linear where it counts: alpha, joins, aggregates, TMS chains/teardowns, and bulk update churn all measure linear under a doubling-size ladder run through this public API (tools/bench_wheel.py in the repo). The headline: 32k updates through a join took 712 s on the 0.4.55 wheel (quadratic — engine and bindings each contributed a lane) and 219 ms on 0.4.57. Honest counterpoint: deep logical-chain TMS still runs ~3× behind warm real-Drools on the same box — the decomposition is in the repo's commit record.

Install: pip install seine-rs — the import is import seine_rs.

Source, scenario corpus, the guided tours (demo/tours/), and the full decision log (D-001 onward): https://github.com/sl-agentics/seine

Metadata

Release files for seine-rs 0.4.58

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for seine-rs 0.4.58
File Size Uploaded Provenance
seine_rs-0.4.58.tar.gz 449.4 kB With provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for seine-rs 0.4.58
File
seine_rs-0.4.58-cp39-abi3-win_amd64.whl CPython 3.9 abi3 Windows x86-64 Details
seine_rs-0.4.58-cp39-abi3-musllinux_1_2_x86_64.whl CPython 3.9 abi3 Linux musl 1.2+ x86-64 Details
seine_rs-0.4.58-cp39-abi3-musllinux_1_2_aarch64.whl CPython 3.9 abi3 Linux musl 1.2+ ARM64 Details
seine_rs-0.4.58-cp39-abi3-manylinux_2_28_x86_64.whl CPython 3.9 abi3 Linux glibc 2.28+ x86-64 Details
seine_rs-0.4.58-cp39-abi3-manylinux_2_28_aarch64.whl CPython 3.9 abi3 Linux glibc 2.28+ ARM64 Details
seine_rs-0.4.58-cp39-abi3-macosx_11_0_arm64.whl CPython 3.9 abi3 macOS 11.0+ ARM64 Details
seine_rs-0.4.58-cp39-abi3-macosx_10_12_x86_64.whl CPython 3.9 abi3 macOS 10.12+ x86-64 Details

Total release size: 25.0 MB

Release files / seine_rs-0.4.58.tar.gz

Download URL seine_rs-0.4.58.tar.gz
Size 449.4 kB
Tags Source
SHA-256 checksum
How to use checksums
4f6587570fd5f98e651c0d4482bda9a6a33649e0e6f0b26a9dbeca55c255e1c3
BLAKE2b-256 checksum
How to use checksums
557f8ef6d03088edf821c1e0ed621e36b306d010a887e8292d1d63089c660f51
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Release files / seine_rs-0.4.58-cp39-abi3-win_amd64.whl

Download URL seine_rs-0.4.58-cp39-abi3-win_amd64.whl
Size 3.2 MB
Tags CPython 3.9 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
37e8526033f9c3c742db5edd09182d6ae0870d19e5276fca762d6f7a86ad66a5
BLAKE2b-256 checksum
How to use checksums
ba76a60d77cb6cfa4f5937b51d3ed84e56d0fd51ffa21cb2473348c2c5ea5e6b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Release files / seine_rs-0.4.58-cp39-abi3-musllinux_1_2_x86_64.whl

Download URL seine_rs-0.4.58-cp39-abi3-musllinux_1_2_x86_64.whl
Size 3.9 MB
Tags CPython 3.9 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
a181162063ea45efe8bc98a7994f853c2b37a1123e70ae1e7ab50f9e5700a14f
BLAKE2b-256 checksum
How to use checksums
09bbb99040e369f0e543917f78c1ae8067c400d7713b753e9190fcde44cd06b3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Release files / seine_rs-0.4.58-cp39-abi3-musllinux_1_2_aarch64.whl

Download URL seine_rs-0.4.58-cp39-abi3-musllinux_1_2_aarch64.whl
Size 3.7 MB
Tags CPython 3.9 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
1aaee265839a558f308a37d976a297476e14f62ade999931220f8dde068d6f27
BLAKE2b-256 checksum
How to use checksums
0ee2f782bc9b8904f0f219be09c0697f1de45645259e866ececb1ab97858f96e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Release files / seine_rs-0.4.58-cp39-abi3-manylinux_2_28_x86_64.whl

Download URL seine_rs-0.4.58-cp39-abi3-manylinux_2_28_x86_64.whl
Size 3.7 MB
Tags CPython 3.9 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
498292e1748ffe978556feb8ea66ac85d51bf89321fcf6f1fb91f989a5e28c27
BLAKE2b-256 checksum
How to use checksums
be16df6b6a8da52263a124201f7a68fd1991f3488a87f74e0994d5d0762d386d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Release files / seine_rs-0.4.58-cp39-abi3-manylinux_2_28_aarch64.whl

Download URL seine_rs-0.4.58-cp39-abi3-manylinux_2_28_aarch64.whl
Size 3.6 MB
Tags CPython 3.9 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
a54287c43faf75cc45111ef01789633db58e3bd20549a5859d7c9df52d5fd5ff
BLAKE2b-256 checksum
How to use checksums
1bae9dff99b7f6490239bfe1e633d051b4d282244d36c60444da83a4fea32d94
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Release files / seine_rs-0.4.58-cp39-abi3-macosx_11_0_arm64.whl

Download URL seine_rs-0.4.58-cp39-abi3-macosx_11_0_arm64.whl
Size 3.1 MB
Tags CPython 3.9 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
16f903caea306fc238bdd61d29d0448a18b0a5ee9009cbc9ea79f82f0cbe1c8c
BLAKE2b-256 checksum
How to use checksums
daf3eecb600dc1816783c49af6b93e6ccdd688032cf9ca862a49a8921fc92cd8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Release files / seine_rs-0.4.58-cp39-abi3-macosx_10_12_x86_64.whl

Download URL seine_rs-0.4.58-cp39-abi3-macosx_10_12_x86_64.whl
Size 3.3 MB
Tags CPython 3.9 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
61727a0cfc262b1cd8d4535cfebe890208c28ca02a69af769a78cc6b445b7c02
BLAKE2b-256 checksum
How to use checksums
074abea71dfb0b0c3bfd033082995df145ec4db5634315823124633305117814
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Security for seine-rs 0.4.58

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 8 files in this release have been uploaded with provenance metadata.

Select from 8 files

Attestation for seine_rs-0.4.58.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.4.58 This release

8 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page