babylon.engine.systems.edge_transition

EdgeTransitionSystem — System #16 in materialist causality order.

Dialectical Field Topology (Feature 002): Evaluates compound predicates against field values, derivatives, and structural properties. Fires edge mode transitions per the state machine. Handles contradiction character flags and aspect reversal detection.

Reference: FR-007 (compound predicates), FR-010 (transition topology) Reference: FR-018 (contradiction character flag), FR-019 (aspect reversal) Reference: R-002 (EdgeMode vs EdgeType), R-005 (predicate design) Reference: R-006 (system ordering — position 16)

Classes

CompoundPredicate(**data)

A named compound predicate — conjunction of conditions.

EdgeModeTransition(**data)

A permissible edge mode transition.

EdgeTransitionSystem()

Evaluate compound predicates and fire edge mode transitions.

PredicateCondition(**data)

A single condition in a compound predicate.

class babylon.engine.systems.edge_transition.PredicateCondition(**data)[source]

Bases: BaseModel

A single condition in a compound predicate.

Parameters:
  • field (str) – Contradiction field name (e.g., “exploitation”).

  • metric (str) – Which metric to evaluate (“value”, “df_dt”, “d2f_dt2”, “laplacian”).

  • operator (str) – Comparison operator (“gt”, “lt”, “gte”, “lte”).

  • threshold (float) – Threshold value for comparison.

  • scope (str) – Which node to evaluate at (“source”, “target”).

model_config: ClassVar[ConfigDict] = {'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

field: str
metric: str
operator: str
threshold: float
scope: str
class babylon.engine.systems.edge_transition.CompoundPredicate(**data)[source]

Bases: BaseModel

A named compound predicate — conjunction of conditions.

All conditions must be true (AND logic) for the predicate to fire.

Parameters:
model_config: ClassVar[ConfigDict] = {'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: str
conditions: list[PredicateCondition]
class babylon.engine.systems.edge_transition.EdgeModeTransition(**data)[source]

Bases: BaseModel

A permissible edge mode transition.

Defines a directed arc in the state machine from from_mode to to_mode, gated by a compound predicate, with priority for tie-breaking.

Parameters:
model_config: ClassVar[ConfigDict] = {'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

from_mode: EdgeMode
to_mode: EdgeMode
predicate: CompoundPredicate
priority: int
description: str
class babylon.engine.systems.edge_transition.EdgeTransitionSystem[source]

Bases: object

Evaluate compound predicates and fire edge mode transitions.

Execution Order: 16 (after FieldDerivativeSystem)

For each edge with an edge_mode, evaluates eligible transitions from the current mode. If a predicate fires, transitions to the new mode. Priority ordering resolves multiple eligible transitions.

name = 'edge_transition'
step(graph, services, context)[source]

Evaluate predicates and fire edge mode transitions.

Parameters:
  • graph – Mutable graph (NetworkX or GraphProtocol).

  • services – ServiceContainer with field_registry.

  • context – TickContext or dict with tick and persistent_data.