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.
  • 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.

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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

seine_rs-0.4.49.tar.gz (422.5 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

seine_rs-0.4.49-cp39-abi3-win_amd64.whl (3.1 MB view details)

Uploaded CPython 3.9+Windows x86-64

seine_rs-0.4.49-cp39-abi3-musllinux_1_2_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ x86-64

seine_rs-0.4.49-cp39-abi3-musllinux_1_2_aarch64.whl (3.7 MB view details)

Uploaded CPython 3.9+musllinux: musl 1.2+ ARM64

seine_rs-0.4.49-cp39-abi3-manylinux_2_28_x86_64.whl (3.7 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.28+ x86-64

seine_rs-0.4.49-cp39-abi3-manylinux_2_28_aarch64.whl (3.5 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.28+ ARM64

seine_rs-0.4.49-cp39-abi3-macosx_11_0_arm64.whl (3.2 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

seine_rs-0.4.49-cp39-abi3-macosx_10_12_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.9+macOS 10.12+ x86-64

File details

Details for the file seine_rs-0.4.49.tar.gz.

File metadata

  • Download URL: seine_rs-0.4.49.tar.gz
  • Upload date:
  • Size: 422.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for seine_rs-0.4.49.tar.gz
Algorithm Hash digest
SHA256 1c97ad75fec86d44f1d28d4d18707b7ba9526d70ff4783fab456a145507c1785
MD5 1bfde306397f630ecdf57aa16ad03472
BLAKE2b-256 3f569bd7226492a7901d5e8f5218dd8337a5351664a85c219b3e9fff6906f4f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for seine_rs-0.4.49.tar.gz:

Publisher: ci.yml on sl-agentics/seine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file seine_rs-0.4.49-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: seine_rs-0.4.49-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 3.1 MB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for seine_rs-0.4.49-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 03c32c88e806ca236a48ee8c7ee0746ea6d7503633f48d1de4e9983b3c05b53e
MD5 b48fd188e837146f1f1a5960ea4027d8
BLAKE2b-256 0a009071715b63c0ec4620b8264b35c9ad7561abc93547e8a377d2ffbdaf0c9e

See more details on using hashes here.

Provenance

The following attestation bundles were made for seine_rs-0.4.49-cp39-abi3-win_amd64.whl:

Publisher: ci.yml on sl-agentics/seine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file seine_rs-0.4.49-cp39-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for seine_rs-0.4.49-cp39-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0f924663aae1a51bb03c5114886fa030df9a50fab9cbd14dfa3701beaccb63de
MD5 ab81f17ad71e4bdf5338e2ccd197b502
BLAKE2b-256 fd3261b441699f02dff0c9323bf171d3d27a4b4dadcf0e7b71aaf58b27c73aff

See more details on using hashes here.

Provenance

The following attestation bundles were made for seine_rs-0.4.49-cp39-abi3-musllinux_1_2_x86_64.whl:

Publisher: ci.yml on sl-agentics/seine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file seine_rs-0.4.49-cp39-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for seine_rs-0.4.49-cp39-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 00c209ea6a2144a0104070025d3f573958ea1c54ebae1d84d9e8a37e24332392
MD5 02e410f1207465e872b5329360808f07
BLAKE2b-256 3f4edff55ca09849fd778ff57ec99bccef9e618be571de5f3d278b51cbc85e4d

See more details on using hashes here.

Provenance

The following attestation bundles were made for seine_rs-0.4.49-cp39-abi3-musllinux_1_2_aarch64.whl:

Publisher: ci.yml on sl-agentics/seine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file seine_rs-0.4.49-cp39-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for seine_rs-0.4.49-cp39-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b0ace265f541443de49a5e73778f73c4ae17960751214057a60b0fd238fca907
MD5 7c94a7391f431b114dd0fba5636b3179
BLAKE2b-256 7bf2d66c4b81c1f71e7e70091ab00ec20fe76f338921c90071ca00011f34b2c4

See more details on using hashes here.

Provenance

The following attestation bundles were made for seine_rs-0.4.49-cp39-abi3-manylinux_2_28_x86_64.whl:

Publisher: ci.yml on sl-agentics/seine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file seine_rs-0.4.49-cp39-abi3-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for seine_rs-0.4.49-cp39-abi3-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 09670a7d06a00f561d3bcfc70d25f6be6acd02a02309190a44dceddf26fbfc7b
MD5 95ecee9d09756d7324c9f04f37401460
BLAKE2b-256 6a0cba90d8e3bec5e073035d7b094b8f474d382056ed1bb7d5d7e76aaa4eac4e

See more details on using hashes here.

Provenance

The following attestation bundles were made for seine_rs-0.4.49-cp39-abi3-manylinux_2_28_aarch64.whl:

Publisher: ci.yml on sl-agentics/seine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file seine_rs-0.4.49-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for seine_rs-0.4.49-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7ed52f1ec650ddb9bcba81e6bdb35cc7fdee56510d916b69e09bfaeada1a2e8f
MD5 fbfac61e959e07286146dad6025eb203
BLAKE2b-256 9bc1a1f1549d53d82e2451b34228983d9f4b0aa9658084a102da8dd1f09680fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for seine_rs-0.4.49-cp39-abi3-macosx_11_0_arm64.whl:

Publisher: ci.yml on sl-agentics/seine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file seine_rs-0.4.49-cp39-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for seine_rs-0.4.49-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1e46206b8866795e2198bc0b707def930f06aa13560866598fbb0fd6d45243e9
MD5 88a78f256e0925bf4331552acf853281
BLAKE2b-256 3821888f3a85732c3ab0b3293a52c51179ed9ad601534e74342eefa06d05d818

See more details on using hashes here.

Provenance

The following attestation bundles were made for seine_rs-0.4.49-cp39-abi3-macosx_10_12_x86_64.whl:

Publisher: ci.yml on sl-agentics/seine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.4.57

8 files

0.4.56

8 files

0.4.55

8 files

0.4.54

8 files

0.4.53

8 files

0.4.52

8 files

0.4.51

8 files

This release

0.4.49 This release

8 files

0.4.48

8 files

0.4.47

8 files

0.4.46

8 files

0.4.45

8 files

0.4.44

8 files

0.4.43

8 files

0.4.42

8 files

0.4.41

8 files

0.4.40

8 files

0.4.39

8 files

0.4.38

8 files

0.4.37

8 files

0.4.36

5 files

0.4.35

5 files

0.4.34

5 files

0.4.33

5 files

0.4.32

5 files

0.4.31

5 files

0.4.30

5 files

0.4.29

5 files

0.4.28

5 files

0.4.27

5 files

0.4.26

5 files

0.4.25

5 files

0.4.24

5 files

0.4.23

5 files

0.4.21

5 files

0.4.20

5 files

0.4.19

5 files

0.4.18

5 files

0.4.17

5 files

0.4.16

5 files

0.4.15

5 files

0.4.14

5 files

0.4.13

5 files

0.4.12

5 files

0.4.11

5 files

0.4.10

5 files

0.4.9

5 files

0.4.8

5 files

0.4.7

5 files

0.4.6

5 files

0.4.5

5 files

0.4.4

5 files

0.4.3

5 files

0.4.2

5 files

0.4.1

5 files

0.4.0

5 files

0.3.0

5 files

0.2.0

5 files

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