Skip to main content

DBL Main

DBL Main provides a deterministic projection of the dbl-core event stream V into a finite state model. It does not execute tasks.

Scope

  • Pure state projection from V (append-only event stream).
  • Deterministic status evaluation based only on event ordering and DECISION outcomes.
  • No policy engine, no kernel runtime, no IO side effects. dbl-main exports projection primitives only.

Boundaries

  • dbl-core defines event kinds and DECISION semantics; dbl-main only consumes events.
  • dbl-main does not import dbl-policy or evaluate policy.
  • dbl-main does not call dbl-gateway and performs no replay; it projects project_state(V) -> State only.
  • dbl-policy contract: dbl-policy/docs/dbl_policy_contract.md

Contract

  • docs/dbl_main_contract.md

Validation against dbl-reference

See docs/validation_workflow.md.

Install

pip install dbl-main

Requires dbl-core>=0.3.0, Python 3.11+.

Usage

from dbl_core import DblEvent, DblEventKind, GateDecision
from dbl_main import Phase, RunnerStatus, project_state

v = [
    DblEvent(DblEventKind.INTENT, correlation_id="c1", data={"psi": "x"}),
    DblEvent(DblEventKind.DECISION, correlation_id="c1", data=GateDecision("ALLOW", "ok")),
    DblEvent(DblEventKind.EXECUTION, correlation_id="c1", data={"trace": {}, "trace_digest": "..." }),
    DblEvent(DblEventKind.PROOF, correlation_id="c1", data={"proof": "p1"}),
]

state = project_state(v)
assert state.phase in (Phase.EXECUTED, Phase.PROVEN)
assert state.runner_status == RunnerStatus.FINALIZED

License

MIT License. See LICENSE.

Metadata

Release files for dbl-main 0.3.1

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

Source distribution (sdist)

Source distribution for dbl-main 0.3.1
File Size Uploaded
dbl_main-0.3.1.tar.gz 5.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dbl-main 0.3.1
File Interpreter ABI Platform
dbl_main-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 10.4 kB

Release files / dbl_main-0.3.1.tar.gz

Download URL dbl_main-0.3.1.tar.gz
Size 5.7 kB
Tags Source
SHA-256 checksum
How to use checksums
37a93989773512d56aebaa8f10573730504157181ed10d2fb52ee92e0c3eb49d
BLAKE2b-256 checksum
How to use checksums
8eedfaeab8312293441c72614f5e4d203b335a71144ea30d5ebdba6a01659624
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.8

Release files / dbl_main-0.3.1-py3-none-any.whl

Download URL dbl_main-0.3.1-py3-none-any.whl
Size 4.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0bfbe9e421910767d1f64af57691b17133288f7bfcd1b357e773c32735bc380d
BLAKE2b-256 checksum
How to use checksums
215a314fad3c8a1e72004efc15806e86040bf9c598cd05eeba3096c035a74b93
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.8

Release history Release notifications | RSS feed

This release

0.3.1 This release

2 release files

0.3.0

2 release files

0.1.0

2 release 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