<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Ometeotl: A Decision Meta-Model in Progress on Ometeotl, an abstract decision meta-model</title><link>https://kakchouch.github.io/ometeotl/</link><description>Recent content in Ometeotl: A Decision Meta-Model in Progress on Ometeotl, an abstract decision meta-model</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sun, 26 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://kakchouch.github.io/ometeotl/index.xml" rel="self" type="application/rss+xml"/><item><title>Current Standings</title><link>https://kakchouch.github.io/ometeotl/leaderboard/live/</link><pubDate>Sun, 26 Apr 2026 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/leaderboard/live/</guid><description>&lt;h1 id="-current-activity-standings"&gt;🜂 Current Activity Standings&lt;/h1&gt;
&lt;p style="color: var(--base04); font-size: 0.9em;"&gt;
Last computed: &lt;strong&gt;2026-04-26 13:06 UTC&lt;/strong&gt; · 
Active contributors: &lt;strong&gt;0&lt;/strong&gt; · 
Smoothing factor k: &lt;strong&gt;12&lt;/strong&gt; · 
Total shares: &lt;strong&gt;1000&lt;/strong&gt;
&lt;/p&gt;
&lt;p style="color: var(--base09); font-style: italic;"&gt;
Cold start mode: fewer than 3 active contributors. Shares allocated proportionally to raw scores.
&lt;/p&gt;
&lt;p&gt;&lt;em&gt;No active contributors yet. &lt;a href="https://github.com/kakchouch/ometeotl"&gt;Start your first PR and become an Eagle Warrior!&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p style="font-style: italic; color: var(--base04);"&gt;Out-of-competition — Founder&lt;/p&gt;
&lt;table&gt;
&lt;tr style="border-bottom: 2px solid var(--base02);"&gt;&lt;th style="padding: 8px;"&gt;Contributor&lt;/th&gt;&lt;th style="text-align:right; padding: 8px;"&gt;Raw Score&lt;/th&gt;&lt;/tr&gt;
&lt;tr style="opacity: 0.7;"&gt;&lt;td style="padding: 6px 8px;"&gt;&lt;a href="https://github.com/kakchouch"&gt;@kakchouch&lt;/a&gt;&lt;/td&gt;&lt;td style="text-align:right; padding: 6px 8px;"&gt;1048.5&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;details&gt;
&lt;summary&gt;Scoring formula&lt;/summary&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Raw score S(u) = Σ weight(event) × 2^(−age / 90)
z-score z(u) = (S(u) − μ) / σ
Adjusted f(z) = exp(sinh(clamp(z, -3.0, 4.0)) / k)
Smoothing k = max(3, 12 − n_active)
Shares s(u) = f(z(u)) / Σf(z) × 1000
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Active contributor window: 180 days (2× half-life). Founder included in normalization, excluded from share allocation.&lt;/p&gt;</description></item><item><title>Action</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/actions.py"&gt;src/ometeotl_core/model/actions.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Represents one actor-driven state transition in one world and one space.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Operational unit tying &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actors/actor/"&gt;Actor&lt;/a&gt;, &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt;, &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/resource-effect/"&gt;ResourceEffect&lt;/a&gt;, and &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action-prerequisite/"&gt;ActionPrerequisite&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/"&gt;ModelObject&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;object_type: str = &amp;quot;action&amp;quot;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;actor_id: ObjectId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;world_id: ObjectId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;space_id: ObjectId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;action_type: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;resource_effects: List[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/resource-effect/"&gt;ResourceEffect&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;prerequisites: List[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action-prerequisite/"&gt;ActionPrerequisite&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;&lt;code&gt;outcome_description: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;state_changes: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;add_resource_effect(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;add_prerequisite(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;set_state_change(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;to_dict(...)&lt;/code&gt;, &lt;code&gt;from_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/resources/resource/"&gt;Resource&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>ActionPrerequisite</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action-prerequisite/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action-prerequisite/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/actions.py"&gt;src/ometeotl_core/model/actions.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
One admissibility condition attached to one &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action/"&gt;Action&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Models constraints based on resources, capabilities, perception, or space rules linked to &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actors/actor/"&gt;Actor&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;prerequisite_type: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;field_name: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;required_value: Any&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;metadata: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/resource-effect/"&gt;ResourceEffect&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>ActionProjection</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/action-projection/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/action-projection/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/projection.py"&gt;src/ometeotl_core/model/projection.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Serializable result of projecting one &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action/"&gt;Action&lt;/a&gt; from one &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/"&gt;Perception&lt;/a&gt; with an explicit resource set.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Intermediate projection artifact that records explicit assumptions and the projected successor perceived state before later strategy-node construction.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;action_id: str&lt;/li&gt;
&lt;li&gt;actor_id: str&lt;/li&gt;
&lt;li&gt;source_perception_id: str&lt;/li&gt;
&lt;li&gt;source_id: str&lt;/li&gt;
&lt;li&gt;status: str&lt;/li&gt;
&lt;li&gt;resource_ids: list[str]&lt;/li&gt;
&lt;li&gt;assumptions: list[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projection-assumption/"&gt;ProjectionAssumption&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;projected_state: Optional[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projected-perception-state/"&gt;ProjectedPerceptionState&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;metadata: dict&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict() -&amp;gt; dict&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(data) -&amp;gt; ActionProjection&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projected-perception-state/"&gt;ProjectedPerceptionState&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projection-batch/"&gt;ProjectionBatch&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/default-projection-tool/"&gt;DefaultProjectionTool&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Actor</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actors/actor/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actors/actor/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/actors.py"&gt;src/ometeotl_core/model/actors.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Represents an actor entity with roles, composition mode, and domain relations.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Central decision-capable abstraction consumed by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action/"&gt;Action&lt;/a&gt; and observed through &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/sensor/"&gt;Sensor&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/objects/generic-object/"&gt;GenericObject&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/"&gt;ModelObject&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;object_type: str = &amp;quot;actor&amp;quot;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;actor attributes: &lt;code&gt;kind&lt;/code&gt;, &lt;code&gt;roles&lt;/code&gt;, &lt;code&gt;emergent&lt;/code&gt;, &lt;code&gt;composition_mode&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;composition modes: &lt;code&gt;standalone&lt;/code&gt;, &lt;code&gt;composite&lt;/code&gt;, &lt;code&gt;collective&lt;/code&gt;, &lt;code&gt;perceived&lt;/code&gt;, &lt;code&gt;projected&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;component relations are stored in &lt;code&gt;relations[&amp;quot;component&amp;quot;]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;actor properties: &lt;code&gt;kind&lt;/code&gt;, &lt;code&gt;roles&lt;/code&gt;, &lt;code&gt;emergent&lt;/code&gt;, &lt;code&gt;composition_mode&lt;/code&gt;, &lt;code&gt;is_composite&lt;/code&gt;, &lt;code&gt;is_collective&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;role methods: &lt;code&gt;add_role&lt;/code&gt;, &lt;code&gt;remove_role&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;component methods: &lt;code&gt;get_components&lt;/code&gt;, &lt;code&gt;add_component&lt;/code&gt;, &lt;code&gt;remove_component&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;generated relation methods: &lt;code&gt;add_action/remove_action&lt;/code&gt;, &lt;code&gt;add_resource/remove_resource&lt;/code&gt;, &lt;code&gt;add_goal/remove_goal&lt;/code&gt;, and related pairs&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Module-level helpers:&lt;/p&gt;</description></item><item><title>AuditEntry</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/generic/audit-entry/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/generic/audit-entry/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/generic/authority.py"&gt;src/ometeotl_core/generic/authority.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Immutable audit row recording one command decision.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Traceability primitive for authoritative command boundaries enforced by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/generic/authority-command-handler/"&gt;AuthorityCommandHandler&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;frozen dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;command_id: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;actor_id: ObjectId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;command_type: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sequence: int&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;accepted: bool&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;reason: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;validation_summary: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;logged_at: str&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;no custom methods&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/generic/command-envelope/"&gt;CommandEnvelope&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/generic/command-result/"&gt;CommandResult&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>AuthorityCommandHandler</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/generic/authority-command-handler/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/generic/authority-command-handler/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/generic/authority.py"&gt;src/ometeotl_core/generic/authority.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Single server-side mutation path that validates and applies allowlisted commands.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Authority boundary that locks direct mutation on &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt;, enforces sequencing, handles deduplication, and emits &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/audit-entry/"&gt;AuditEntry&lt;/a&gt; records.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;standard class&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Constructor parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;world: &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;allowed_command_types: Optional[Sequence[str]]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;custom_command_handlers: Optional[Mapping[str, CommandHandler]]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;object_factories: Optional[Mapping[str, ObjectFactory]]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;audit_log_maxlen: int&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;processed_ids_maxlen: int&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sequence_tracker_max_actors: Optional[int]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sequence_history_max_actors: Optional[int]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;validation_soft_gate: bool&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;validation_policy_profile: str&lt;/code&gt; (&lt;code&gt;observe_only&lt;/code&gt;, &lt;code&gt;enforce_structure&lt;/code&gt;, &lt;code&gt;enforce_domain&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;validation_stage_mode_overrides: Optional[Mapping[str, str]]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;validation_block_on_error: bool&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;validation_completeness_level: str&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;submit(command: &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/command-envelope/"&gt;CommandEnvelope&lt;/a&gt;) -&amp;gt; &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/command-result/"&gt;CommandResult&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;close() -&amp;gt; None&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;audit_log -&amp;gt; list[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/audit-entry/"&gt;AuditEntry&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;internal validation and handler methods for &lt;code&gt;add_space&lt;/code&gt;, &lt;code&gt;add_space_relation&lt;/code&gt;, &lt;code&gt;place_object&lt;/code&gt;, &lt;code&gt;register_object&lt;/code&gt;, &lt;code&gt;unregister_object&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Validation behavior:&lt;/p&gt;</description></item><item><title>CommandEnvelope</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/generic/command-envelope/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/generic/command-envelope/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/generic/authority.py"&gt;src/ometeotl_core/generic/authority.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Canonical command payload consumed by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/authority-command-handler/"&gt;AuthorityCommandHandler&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Transport object that standardizes authoritative world mutation requests targeting &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;frozen dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;command_id: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;actor_id: ObjectId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;command_type: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;payload: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sequence: int&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;issued_at: str&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict() -&amp;gt; JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;from_dict(data) -&amp;gt; &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/command-envelope/"&gt;CommandEnvelope&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/command-result/"&gt;CommandResult&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/audit-entry/"&gt;AuditEntry&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>CommandResult</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/generic/command-result/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/generic/command-result/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/generic/authority.py"&gt;src/ometeotl_core/generic/authority.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Outcome container returned by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/authority-command-handler/"&gt;AuthorityCommandHandler&lt;/a&gt; after processing a &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/command-envelope/"&gt;CommandEnvelope&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Stable contract for accepted/rejected command execution against &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;frozen dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;accepted: bool&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;reason: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;applied: Optional[JsonMap]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;validation: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;no custom methods&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/audit-entry/"&gt;AuditEntry&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>CoverageRule</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/coverage-rule/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/coverage-rule/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/sensor.py"&gt;src/ometeotl_core/model/sensor.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Abstract visibility policy.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Extensibility seam controlling which spaces, memberships, and relations enter &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/"&gt;Perception&lt;/a&gt; through &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/sensor/"&gt;Sensor&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;abstract base class&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;covers_space(space, actor_id, world) -&amp;gt; bool&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;covers_membership(membership, actor_id, world) -&amp;gt; bool&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;covers_relation(relation, actor_id, world) -&amp;gt; bool&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/total-coverage-rule/"&gt;TotalCoverageRule&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/noise-rule/"&gt;NoiseRule&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>DefaultGoalFeasibilityTool</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/default-goal-feasibility-tool/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/default-goal-feasibility-tool/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/goal_tools.py"&gt;src/ometeotl_core/model/goal_tools.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Default implementation of &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-feasibility-tool/"&gt;GoalFeasibilityTool&lt;/a&gt; based on deterministic condition-key matching.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Baseline model-level feasibility evaluator used before domain-specific scoring or planners are introduced.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-feasibility-tool/"&gt;GoalFeasibilityTool&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Method:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;evaluate(goal, projected) -&amp;gt; GoalFeasibilityResult&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-feasibility-result/"&gt;GoalFeasibilityResult&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-admissibility-checker/"&gt;GoalAdmissibilityChecker&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>DefaultProjectionTool</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/default-projection-tool/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/default-projection-tool/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/projection.py"&gt;src/ometeotl_core/model/projection.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Minimal concrete &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projection-tool/"&gt;ProjectionTool&lt;/a&gt; that turns action/perception/resource inputs into explicit assumptions and one projected successor perceived state without executing actions or building strategy nodes.&lt;/p&gt;
&lt;p&gt;Big-picture role:
First-order strategizing helper: it prepares both the assumption basis and the next perceived state that later strategy-building steps may consume.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projection-tool/"&gt;ProjectionTool&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;project_action(action, perception, resources=()) -&amp;gt; ActionProjection&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;Builds &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projection-assumption/"&gt;ProjectionAssumption&lt;/a&gt; entries for actor binding, source context, space binding, each &lt;code&gt;ResourceEffect&lt;/code&gt; (indexed as &lt;code&gt;effect:{idx}:…&lt;/code&gt;), and each &lt;code&gt;ActionPrerequisite&lt;/code&gt; (indexed as &lt;code&gt;prerequisite:{idx}:…&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;For &lt;code&gt;consume&lt;/code&gt;/&lt;code&gt;transfer&lt;/code&gt; effects, verifies that the resource has a &lt;code&gt;PerceivedMembership&lt;/code&gt; in &lt;code&gt;effect.source_id&lt;/code&gt; (or &lt;code&gt;action.space_id&lt;/code&gt; as fallback); sets &lt;code&gt;satisfied=False&lt;/code&gt; when the resource is not perceived there.&lt;/li&gt;
&lt;li&gt;Calls &lt;code&gt;_build_projected_perception_state&lt;/code&gt; and attaches the result as &lt;code&gt;projected_state&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Status is &lt;code&gt;&amp;quot;projected&amp;quot;&lt;/code&gt; when all required resources are satisfied and the actor matches; &lt;code&gt;&amp;quot;partial&amp;quot;&lt;/code&gt; if resources or actor mismatch; &lt;code&gt;&amp;quot;blocked&amp;quot;&lt;/code&gt; otherwise.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;inherited &lt;code&gt;project_actions(actions, perception, resources=()) -&amp;gt; ProjectionBatch&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Resource projection modes:&lt;/p&gt;</description></item><item><title>DiagnosticBuilder</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/validation/diagnostic-builder/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/validation/diagnostic-builder/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/validation/diagnostic.py"&gt;src/ometeotl_core/validation/diagnostic.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Builds user-facing diagnostics from &lt;code&gt;ValidationResult&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Implements motivated rejection support and repair-ready issue suggestions.&lt;/p&gt;
&lt;p&gt;Outputs:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;DiagnosticEntry&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;DiagnosticReport&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>game utility.py Overview</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/utility-overview/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/utility-overview/</guid><description>&lt;p&gt;This module defines concrete utility combinators and strategy ranking helpers.&lt;/p&gt;
&lt;p&gt;Primary structures:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/weighted-sum-utility/"&gt;WeightedSumUtility&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/lexicographic-utility/"&gt;LexicographicUtility&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/strategy-ranker/"&gt;StrategyRanker&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>GenericObject</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/objects/generic-object/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/objects/generic-object/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/objects.py"&gt;src/ometeotl_core/model/objects.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
First semantic layer above &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/"&gt;ModelObject&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Shared convenience API inherited by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actors/actor/"&gt;Actor&lt;/a&gt;, &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/resources/resource/"&gt;Resource&lt;/a&gt;, and &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space/"&gt;Space&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/"&gt;ModelObject&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;inherited base fields&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;metadata properties: &lt;code&gt;label&lt;/code&gt;, &lt;code&gt;description&lt;/code&gt;, &lt;code&gt;tags&lt;/code&gt;, &lt;code&gt;profile&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;metadata mutators: &lt;code&gt;add_tag&lt;/code&gt;, &lt;code&gt;remove_tag&lt;/code&gt;, &lt;code&gt;set_profile_item&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;space binding helpers: &lt;code&gt;add_space_membership&lt;/code&gt;, &lt;code&gt;remove_space_membership&lt;/code&gt; via &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-graph/"&gt;SpaceObjectGraph&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-membership/"&gt;SpaceObjectMembership&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Goal</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/goals.py"&gt;src/ometeotl_core/model/goals.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
First-class objective model object for one actor.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Teleology representation primitive that remains domain-neutral while supporting final and intermediate objectives.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/"&gt;ModelObject&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;id: str&lt;/li&gt;
&lt;li&gt;actor_id: str&lt;/li&gt;
&lt;li&gt;kind: str (&lt;code&gt;final&lt;/code&gt; or &lt;code&gt;intermediate&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;priority: float&lt;/li&gt;
&lt;li&gt;status: str&lt;/li&gt;
&lt;li&gt;horizon: dict&lt;/li&gt;
&lt;li&gt;target_condition: dict&lt;/li&gt;
&lt;li&gt;target_perception_id: Optional[str]&lt;/li&gt;
&lt;li&gt;parent_goal_id: Optional[str]&lt;/li&gt;
&lt;li&gt;child_goal_ids: list[str]&lt;/li&gt;
&lt;li&gt;strategy_ids: list[str]&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;add_child_goal(goal_id) -&amp;gt; None&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;remove_child_goal(goal_id) -&amp;gt; None&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;add_strategy(strategy_id) -&amp;gt; None&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;remove_strategy(strategy_id) -&amp;gt; None&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;to_dict() -&amp;gt; dict&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(data) -&amp;gt; Goal&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;</description></item><item><title>goal_tools.py Overview</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-tools-overview/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-tools-overview/</guid><description>&lt;p&gt;This module provides model-level feasibility and admissibility helpers for goals.&lt;/p&gt;
&lt;p&gt;Primary contracts:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-feasibility-tool/"&gt;GoalFeasibilityTool&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-admissibility-checker/"&gt;GoalAdmissibilityChecker&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>GoalAdmissibilityChecker</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-admissibility-checker/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-admissibility-checker/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/goal_tools.py"&gt;src/ometeotl_core/model/goal_tools.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Model-level F-13 checker for whether a goal is admissible for one actor under one perception.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Guardrail for actor-consistent objective evaluation before strategy ranking.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;standard class&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Method:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;check(goal, actor, perception) -&amp;gt; GoalAdmissibilityResult&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Checks include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;goal actor binding consistency&lt;/li&gt;
&lt;li&gt;goal linkage in actor relations&lt;/li&gt;
&lt;li&gt;blocking constraints from perception context&lt;/li&gt;
&lt;li&gt;optional horizon capacity constraints&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal/"&gt;Goal&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/"&gt;Perception&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>GoalAdmissibilityResult</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-admissibility-result/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-admissibility-result/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/goal_tools.py"&gt;src/ometeotl_core/model/goal_tools.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Result container for actor-relative goal admissibility checks.&lt;/p&gt;
&lt;p&gt;Fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;admissible: bool&lt;/li&gt;
&lt;li&gt;reason: str&lt;/li&gt;
&lt;li&gt;blocking_constraints: list[str]&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict() -&amp;gt; dict&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-admissibility-checker/"&gt;GoalAdmissibilityChecker&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>GoalBuildStep</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal-build-step/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal-build-step/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/goals.py"&gt;src/ometeotl_core/model/goals.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Recursive declarative node used to build goal hierarchies.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Input specification for hierarchy builders that construct &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal/"&gt;Goal&lt;/a&gt; trees without introducing domain-specific teleology.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;kind: str (&lt;code&gt;final&lt;/code&gt; or &lt;code&gt;intermediate&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;actor_id: str&lt;/li&gt;
&lt;li&gt;target_condition: dict&lt;/li&gt;
&lt;li&gt;horizon: dict&lt;/li&gt;
&lt;li&gt;priority: float&lt;/li&gt;
&lt;li&gt;status: str&lt;/li&gt;
&lt;li&gt;children: list[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal-build-step/"&gt;GoalBuildStep&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;metadata: dict&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal/"&gt;Goal&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal-decomposition-tree/"&gt;GoalDecompositionTree&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>GoalDecompositionTree</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal-decomposition-tree/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal-decomposition-tree/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/goals.py"&gt;src/ometeotl_core/model/goals.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Container for one goal hierarchy rooted at a single goal id.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Deterministic structure for intermediate-objective decomposition and hierarchy validation.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;root_goal_id: str&lt;/li&gt;
&lt;li&gt;goals: dict[str, &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal/"&gt;Goal&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;add_goal(goal) -&amp;gt; None&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;get_goal(goal_id) -&amp;gt; Optional[Goal]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;children_of(goal_id) -&amp;gt; list[Goal]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;parent_of(goal_id) -&amp;gt; Optional[Goal]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;validate_tree() -&amp;gt; None&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;to_dict() -&amp;gt; dict&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(data) -&amp;gt; GoalDecompositionTree&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal/"&gt;Goal&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal-build-step/"&gt;GoalBuildStep&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>GoalFeasibilityResult</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-feasibility-result/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-feasibility-result/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/goal_tools.py"&gt;src/ometeotl_core/model/goal_tools.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Result container for feasibility checks between a goal and a projected state.&lt;/p&gt;
&lt;p&gt;Fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;reachable: bool&lt;/li&gt;
&lt;li&gt;confidence: float&lt;/li&gt;
&lt;li&gt;matching_keys: list[str]&lt;/li&gt;
&lt;li&gt;metadata: dict&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict() -&amp;gt; dict&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-feasibility-tool/"&gt;GoalFeasibilityTool&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/default-goal-feasibility-tool/"&gt;DefaultGoalFeasibilityTool&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>GoalFeasibilityTool</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-feasibility-tool/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goal-tools/goal-feasibility-tool/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/goal_tools.py"&gt;src/ometeotl_core/model/goal_tools.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Abstract contract for evaluating whether a projected perception can satisfy a goal.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Model-level extensibility seam for feasibility logic, independent of any game domain scoring policy.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;abstract base class&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Method:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;evaluate(goal, projected) -&amp;gt; GoalFeasibilityResult&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal/"&gt;Goal&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projected-perception-state/"&gt;ProjectedPerceptionState&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>goals.py Overview</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goals-overview/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goals-overview/</guid><description>&lt;p&gt;This module defines first-class objective structures for teleology representation.&lt;/p&gt;
&lt;p&gt;Primary structures:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal/"&gt;Goal&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/goals/goal-decomposition-tree/"&gt;GoalDecompositionTree&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>GuardedJsonDict</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/guarded-json-dict/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/guarded-json-dict/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/base.py"&gt;src/ometeotl_core/model/base.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Guarded dictionary wrapper used in mutable fields of &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/"&gt;ModelObject&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Prevents direct mutations when authority lock is active through &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;dict[str, Any]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;initial: Mapping[str, Any] | None&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mutation_guard: MutationGuard&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;set_mutation_guard(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;guarded mutators: &lt;code&gt;__setitem__&lt;/code&gt;, &lt;code&gt;__delitem__&lt;/code&gt;, &lt;code&gt;clear&lt;/code&gt;, &lt;code&gt;pop&lt;/code&gt;, &lt;code&gt;popitem&lt;/code&gt;, &lt;code&gt;setdefault&lt;/code&gt;, &lt;code&gt;update&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;__deepcopy__(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/guarded-json-list/"&gt;GuardedJsonList&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>GuardedJsonList</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/guarded-json-list/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/guarded-json-list/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/base.py"&gt;src/ometeotl_core/model/base.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Guarded list wrapper used in mutable fields of &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/"&gt;ModelObject&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Extends authority-safe mutation behavior to list operations in objects managed by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;list[Any]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;initial: List[Any] | None&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mutation_guard: MutationGuard&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;set_mutation_guard(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;guarded mutators: &lt;code&gt;append&lt;/code&gt;, &lt;code&gt;extend&lt;/code&gt;, &lt;code&gt;insert&lt;/code&gt;, &lt;code&gt;pop&lt;/code&gt;, &lt;code&gt;remove&lt;/code&gt;, &lt;code&gt;reverse&lt;/code&gt;, &lt;code&gt;sort&lt;/code&gt;, &lt;code&gt;__setitem__&lt;/code&gt;, &lt;code&gt;__delitem__&lt;/code&gt;, &lt;code&gt;__iadd__&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;__deepcopy__(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/guarded-json-dict/"&gt;GuardedJsonDict&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>IdentityNoiseRule</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/identity-noise-rule/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/identity-noise-rule/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/sensor.py"&gt;src/ometeotl_core/model/sensor.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Default &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/noise-rule/"&gt;NoiseRule&lt;/a&gt; that leaves copies unchanged.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Zero-noise baseline to isolate coverage behavior in &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/sensor/"&gt;Sensor&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/noise-rule/"&gt;NoiseRule&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;apply_to_space(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;apply_to_membership(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;apply_to_relation(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/total-coverage-rule/"&gt;TotalCoverageRule&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>LexicographicUtility</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/lexicographic-utility/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/lexicographic-utility/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/game/utility.py"&gt;src/ometeotl_core/game/utility.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Vector-valued utility combinator with explicit criterion ordering and direction.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Game-layer multi-criteria scoring primitive for lexicographic ranking.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-function/"&gt;UtilityFunction&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Constructor:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;LexicographicUtility(framework_id, metric_order, metric_directions=None)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Method:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;evaluate(perception, actor, context) -&amp;gt; UtilityFrame&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/weighted-sum-utility/"&gt;WeightedSumUtility&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/strategy-ranker/"&gt;StrategyRanker&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>MinimalModelRegistry</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/registry/minimal-model-registry/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/registry/minimal-model-registry/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/registry.py"&gt;src/ometeotl_core/model/registry.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Global class-level fallback registry.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Legacy/simple referential integrity utility, while &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/registry/world-model-registry/"&gt;WorldModelRegistry&lt;/a&gt; is preferred for world-scoped isolation.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;standard class with class methods&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;class field &lt;code&gt;_instances: Dict[ObjectId, [ModelObject](/ometeotl/documentation/class-reference/model/base/model-object/)]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;register&lt;/code&gt;, &lt;code&gt;unregister&lt;/code&gt;, &lt;code&gt;exists&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;, &lt;code&gt;clear&lt;/code&gt;, &lt;code&gt;all_ids&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>ModelObject</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/base.py"&gt;src/ometeotl_core/model/base.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Universal schema root for core model entities.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Canonical serialization backbone used by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/objects/generic-object/"&gt;GenericObject&lt;/a&gt;, &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action/"&gt;Action&lt;/a&gt;, and all domain subclasses.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass root&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;id: ObjectId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;object_type: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;schema_version: SchemaVersion&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;attributes: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;relations: RelationMap&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;state: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;context: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;provenance: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;mutation helpers: &lt;code&gt;set_mutation_guard&lt;/code&gt;, &lt;code&gt;add_relation&lt;/code&gt;, &lt;code&gt;remove_relation&lt;/code&gt;, &lt;code&gt;_manage_relation&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;map/list helpers: &lt;code&gt;set_attribute&lt;/code&gt;, &lt;code&gt;set_state&lt;/code&gt;, &lt;code&gt;set_provenance&lt;/code&gt;, &lt;code&gt;add_to_attribute_list&lt;/code&gt;, &lt;code&gt;remove_from_attribute_list&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;serialization: &lt;code&gt;to_dict&lt;/code&gt;, &lt;code&gt;from_dict&lt;/code&gt;, &lt;code&gt;_base_kwargs&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/objects/generic-object/"&gt;GenericObject&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/registry/world-model-registry/"&gt;WorldModelRegistry&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>NoiseRule</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/noise-rule/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/noise-rule/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/sensor.py"&gt;src/ometeotl_core/model/sensor.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Abstract distortion policy over sensed copies.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Extensibility seam that injects uncertainty and bias into &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/"&gt;Perception&lt;/a&gt; built by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/sensor/"&gt;Sensor&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;abstract base class&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;apply_to_space(space, actor_id) -&amp;gt; Tuple[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space/"&gt;Space&lt;/a&gt;, JsonMap]&lt;/li&gt;
&lt;li&gt;apply_to_membership(membership, actor_id) -&amp;gt; Tuple[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-membership/"&gt;SpaceObjectMembership&lt;/a&gt;, JsonMap]&lt;/li&gt;
&lt;li&gt;apply_to_relation(relation, actor_id) -&amp;gt; Tuple[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation/"&gt;SpaceRelation&lt;/a&gt;, JsonMap]&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/identity-noise-rule/"&gt;IdentityNoiseRule&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Overview</title><link>https://kakchouch.github.io/ometeotl/documentation/overview/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/overview/</guid><description>&lt;p&gt;This page explains the internal workings of Ometeotl/ometeotl_core at three depth levels.&lt;/p&gt;
&lt;p&gt;For API-level details, use &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/"&gt;Class Reference&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;04/25/26 - major architectural overhaul:&lt;/strong&gt;
Local tests reveal the current architecture is too abstract for any practical implementation. It has been decided to :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;to keep the current code in a core module &lt;code&gt;ometeotl_core&lt;/code&gt;, which is intended to remain abstract;&lt;/li&gt;
&lt;li&gt;to add a primary layer of specialization &lt;code&gt;ometeotl_foundations&lt;/code&gt;, including :
&lt;ul&gt;
&lt;li&gt;spatial: primary layer of spatial implementation of &lt;code&gt;ometeotl_core&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;networks: primary layer of graph theory implementation of &lt;code&gt;ometeotl_core&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&amp;hellip;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;to add, lastly, an adapter layer &lt;code&gt;ometeotl_adapters&lt;/code&gt;, which implements each specialization layer with a reputable library.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="beginner-view"&gt;Beginner View&lt;/h2&gt;
&lt;p&gt;Ometeotl/ometeotl_core is a modeling library where everything starts from a generic object, then becomes more specific.&lt;/p&gt;</description></item><item><title>PerceivedComponentLink</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-component-link/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-component-link/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/perception.py"&gt;src/ometeotl_core/model/perception.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Epistemic wrapper for one perceived composition edge between a composite actor and one component actor.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Lets &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/"&gt;Perception&lt;/a&gt; represent actor hierarchy knowledge without mutating the ontological &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actors/actor/"&gt;Actor&lt;/a&gt; graph.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;link_id: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;composite_id: ObjectId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;component_id: ObjectId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;epistemic_status: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;noise_metadata: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;__post_init__(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Notes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;epistemic_status&lt;/code&gt; follows the same validation rules as the other perceived wrappers.&lt;/li&gt;
&lt;li&gt;This type is used both for sensed hierarchy knowledge and for projected hierarchy updates in successor perceived states.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;</description></item><item><title>PerceivedMembership</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-membership/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-membership/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/perception.py"&gt;src/ometeotl_core/model/perception.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Epistemic wrapper around one copied &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-membership/"&gt;SpaceObjectMembership&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Actor-specific placement knowledge item inside &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/"&gt;Perception&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;membership: &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-membership/"&gt;SpaceObjectMembership&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;epistemic_status: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;noise_metadata: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;__post_init__(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-space/"&gt;PerceivedSpace&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>PerceivedRelation</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-relation/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-relation/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/perception.py"&gt;src/ometeotl_core/model/perception.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Epistemic wrapper around one copied &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation/"&gt;SpaceRelation&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Actor-relative space-topology knowledge element in &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/"&gt;Perception&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;relation: &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation/"&gt;SpaceRelation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;epistemic_status: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;noise_metadata: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;__post_init__(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation-graph/"&gt;SpaceRelationGraph&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>PerceivedSpace</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-space/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-space/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/perception.py"&gt;src/ometeotl_core/model/perception.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Epistemic wrapper around one copied &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space/"&gt;Space&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Captures actor-relative certainty and noise metadata in &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/"&gt;Perception&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;space: &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space/"&gt;Space&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;epistemic_status: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;noise_metadata: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;__post_init__(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/sensor/"&gt;Sensor&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Perception</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/perception.py"&gt;src/ometeotl_core/model/perception.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Subject-specific partial world snapshot.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Formal epistemic layer that separates what the world is from what an actor knows through &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/sensor/"&gt;Sensor&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;id: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;actor_id: ObjectId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;source_id: ObjectId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;schema_version: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;timestamp: Optional[Union[int, float, str]]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;perceived_spaces: Dict[SpaceId, &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-space/"&gt;PerceivedSpace&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;perceived_memberships: List[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-membership/"&gt;PerceivedMembership&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;perceived_relations: List[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-relation/"&gt;PerceivedRelation&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;perceived_component_links: List[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-component-link/"&gt;PerceivedComponentLink&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;&lt;code&gt;context: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;provenance: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;query helpers: &lt;code&gt;get_perceived_space&lt;/code&gt;, &lt;code&gt;memberships_for_object&lt;/code&gt;, &lt;code&gt;memberships_in_space&lt;/code&gt;, &lt;code&gt;relations_for_space&lt;/code&gt;, &lt;code&gt;component_links_for_composite&lt;/code&gt;, &lt;code&gt;composite_for_component&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;serialization: &lt;code&gt;to_dict&lt;/code&gt;, &lt;code&gt;from_dict&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Notes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A perception can now carry perceived composition edges independently from space memberships and space-to-space relations.&lt;/li&gt;
&lt;li&gt;Each perceived component link has its own epistemic status, allowing composition knowledge to remain uncertain, believed, projected, or erroneous without mutating ontological actor relations.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;</description></item><item><title>ProjectedPerceptionChange</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projected-perception-change/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projected-perception-change/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/projection.py"&gt;src/ometeotl_core/model/projection.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
One explicit change applied while deriving a successor perceived state from an action projection.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Audit-friendly delta object that makes projected changes visible instead of hiding them inside the final projected perception only.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;change_id: str&lt;/li&gt;
&lt;li&gt;change_type: str&lt;/li&gt;
&lt;li&gt;subject_id: Optional[str]&lt;/li&gt;
&lt;li&gt;space_id: Optional[str]&lt;/li&gt;
&lt;li&gt;applied: Optional[bool]&lt;/li&gt;
&lt;li&gt;metadata: dict&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Known &lt;code&gt;change_type&lt;/code&gt; values:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;state_changes&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;resource_consume&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;resource_produce&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;object_added&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;object_removed&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;component_added&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;component_removed&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict() -&amp;gt; dict&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(data) -&amp;gt; ProjectedPerceptionChange&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Notes:&lt;/p&gt;</description></item><item><title>ProjectedPerceptionState</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projected-perception-state/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projected-perception-state/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/projection.py"&gt;src/ometeotl_core/model/projection.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Projected successor perceived state produced by evaluating one &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action/"&gt;Action&lt;/a&gt; from one source &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/"&gt;Perception&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Bridge object between first-order projection and later strategy construction: it is the state that child strategy nodes consume.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;source_perception_id: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;generating_action_id: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;perception: Perception&lt;/code&gt; — deep copy of the source perception, marked &lt;code&gt;epistemic_status=&amp;quot;projected&amp;quot;&lt;/code&gt; on perceived spaces, memberships, relations, and perceived component links&lt;/li&gt;
&lt;li&gt;&lt;code&gt;changes: list[ProjectedPerceptionChange]&lt;/code&gt; — sorted by &lt;code&gt;change_id&lt;/code&gt; on serialization&lt;/li&gt;
&lt;li&gt;&lt;code&gt;metadata: dict&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Context keys written into &lt;code&gt;perception.context&lt;/code&gt;:&lt;/p&gt;</description></item><item><title>ProjectionAssumption</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projection-assumption/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projection-assumption/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/projection.py"&gt;src/ometeotl_core/model/projection.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
One explicit assumption extracted from evaluating an &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action/"&gt;Action&lt;/a&gt; under a &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/"&gt;Perception&lt;/a&gt; and a resource set.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Projection atom used to externalize the assumptions from which later strategy nodes may be built.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;assumption_id: str&lt;/code&gt; — unique ID within a projection; format &lt;code&gt;&amp;quot;{action_id}:{type}&amp;quot;&lt;/code&gt; for actor/context/space bindings, &lt;code&gt;&amp;quot;{action_id}:effect:{idx}:{resource_id}:{effect_type}&amp;quot;&lt;/code&gt; for resource effects (positional index prevents collisions for duplicate effects), &lt;code&gt;&amp;quot;{action_id}:prerequisite:{idx}:{prerequisite_type}:{field_name}&amp;quot;&lt;/code&gt; for prerequisites&lt;/li&gt;
&lt;li&gt;&lt;code&gt;assumption_type: str&lt;/code&gt; — one of &lt;code&gt;actor_binding&lt;/code&gt;, &lt;code&gt;perception_context&lt;/code&gt;, &lt;code&gt;space_binding&lt;/code&gt;, &lt;code&gt;resource_effect&lt;/code&gt;, &lt;code&gt;prerequisite&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;description: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;subject_id: Optional[str]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;epistemic_status: str&lt;/code&gt; — default &lt;code&gt;&amp;quot;projected&amp;quot;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;satisfied: Optional[bool]&lt;/code&gt; — &lt;code&gt;None&lt;/code&gt; means deferred to a later stage&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rationale: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;metadata: dict&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;</description></item><item><title>ProjectionBatch</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projection-batch/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projection-batch/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/projection.py"&gt;src/ometeotl_core/model/projection.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Deterministic batch of &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/action-projection/"&gt;ActionProjection&lt;/a&gt; instances for one actor/perception context.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Batch transport object for first-order projection over a candidate action set.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;actor_id: str&lt;/li&gt;
&lt;li&gt;source_perception_id: str&lt;/li&gt;
&lt;li&gt;source_id: str&lt;/li&gt;
&lt;li&gt;projections: list[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/action-projection/"&gt;ActionProjection&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;metadata: dict&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict() -&amp;gt; dict&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(data) -&amp;gt; ProjectionBatch&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projection-tool/"&gt;ProjectionTool&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>ProjectionTool</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projection-tool/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projection-tool/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/projection.py"&gt;src/ometeotl_core/model/projection.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Abstract contract for deriving assumption sets and successor perceived states from &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action/"&gt;Action&lt;/a&gt;, &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/"&gt;Perception&lt;/a&gt;, and &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/resources/resource/"&gt;Resource&lt;/a&gt; inputs.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Extensibility seam for projection logic that stays separate from strategy-node construction while still feeding it with projected successor states.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;abstract base class&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;project_action(action, perception, resources=()) -&amp;gt; ActionProjection&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;project_actions(actions, perception, resources=()) -&amp;gt; ProjectionBatch&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/default-projection-tool/"&gt;DefaultProjectionTool&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>RankedStrategy</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/ranked-strategy/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/ranked-strategy/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/game/utility.py"&gt;src/ometeotl_core/game/utility.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Result container for one evaluated strategy and its aggregate utility.&lt;/p&gt;
&lt;p&gt;Fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;strategy: &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy/"&gt;Strategy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;utility_frame: &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-frame/"&gt;UtilityFrame&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;rank_key: tuple[float, &amp;hellip;]&lt;/li&gt;
&lt;li&gt;terminal_node_ids: list[str]&lt;/li&gt;
&lt;li&gt;terminal_probabilities: dict&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/strategy-ranker/"&gt;StrategyRanker&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>reconstruct_model_object</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/registry/reconstruct-model-object/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/registry/reconstruct-model-object/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/registry.py"&gt;src/ometeotl_core/model/registry.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Module-level factory function that reconstructs any &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/"&gt;ModelObject&lt;/a&gt; subclass from its canonical serialized dict.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Single deserialization entry point used by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/registry/world-model-registry/"&gt;WorldModelRegistry.from_dict&lt;/a&gt; and by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/authority-command-handler/"&gt;AuthorityCommandHandler&lt;/a&gt; when replaying serialized state.&lt;/p&gt;
&lt;p&gt;Signature:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-python" data-lang="python"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#66d9ef"&gt;def&lt;/span&gt; &lt;span style="color:#a6e22e"&gt;reconstruct_model_object&lt;/span&gt;(
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; raw_object: Mapping[str, Any],
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; object_factories: Optional[Mapping[str, ObjectFactory]] &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#66d9ef"&gt;None&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;) &lt;span style="color:#f92672"&gt;-&amp;gt;&lt;/span&gt; ModelObject
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;raw_object&lt;/code&gt; — canonical serialized dict; must contain an &lt;code&gt;&amp;quot;object_type&amp;quot;&lt;/code&gt; key matching one of the registered factory keys (case-insensitive)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;object_factories&lt;/code&gt; — optional caller-supplied overrides; merged on top of the default factory table so custom types extend rather than replace the defaults&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Default factory table (&lt;code&gt;object_type&lt;/code&gt; → class):&lt;/p&gt;</description></item><item><title>Resource</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/resources/resource/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/resources/resource/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/resources.py"&gt;src/ometeotl_core/model/resources.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Represents modeled resources with rivalry and transferability semantics.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Constraint and capability component used by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action/"&gt;Action&lt;/a&gt; and related to &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actors/actor/"&gt;Actor&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/objects/generic-object/"&gt;GenericObject&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/"&gt;ModelObject&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;object_type: str = &amp;quot;resource&amp;quot;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;resource attributes: &lt;code&gt;kind&lt;/code&gt;, &lt;code&gt;resource_mode&lt;/code&gt;, &lt;code&gt;rivalry&lt;/code&gt;, &lt;code&gt;transferability&lt;/code&gt;, &lt;code&gt;divisibility&lt;/code&gt;, &lt;code&gt;composite&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;attribute properties with setters for each resource attribute&lt;/li&gt;
&lt;li&gt;generated relation methods: &lt;code&gt;add_user/remove_user&lt;/code&gt;, &lt;code&gt;add_owner/remove_owner&lt;/code&gt;, &lt;code&gt;add_dependency/remove_dependency&lt;/code&gt;, and related pairs&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/resource-effect/"&gt;ResourceEffect&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>ResourceEffect</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/resource-effect/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/resource-effect/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/actions.py"&gt;src/ometeotl_core/model/actions.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Describes one resource effect of one &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action/"&gt;Action&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Encodes consumption, production, or transfer semantics for &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/resources/resource/"&gt;Resource&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;resource_id: ObjectId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;effect_type: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;quantity: float&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;source_id: Optional[ObjectId]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;target_id: Optional[ObjectId]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;metadata: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action-prerequisite/"&gt;ActionPrerequisite&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>RuntimeContext</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/generic/runtime-context/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/generic/runtime-context/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/generic/runtime.py"&gt;src/ometeotl_core/generic/runtime.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Context manager that bundles one &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt; with optional &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/authority-command-handler/"&gt;AuthorityCommandHandler&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Runtime switch between local mode and server-authoritative mode.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;world: &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;authority_handler: Optional[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/authority-command-handler/"&gt;AuthorityCommandHandler&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;enter&lt;/strong&gt;() -&amp;gt; &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/runtime-context/"&gt;RuntimeContext&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;__exit__(...) -&amp;gt; None&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;authoritative -&amp;gt; bool&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;close() -&amp;gt; None&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Related function:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;build_runtime(...)&lt;/code&gt; in &lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/generic/runtime.py"&gt;src/ometeotl_core/generic/runtime.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Runtime policy options passed through &lt;code&gt;build_runtime(...)&lt;/code&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;validation_soft_gate&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;validation_policy_profile&lt;/code&gt; (&lt;code&gt;observe_only&lt;/code&gt;, &lt;code&gt;enforce_structure&lt;/code&gt;, &lt;code&gt;enforce_domain&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;validation_stage_mode_overrides&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;validation_block_on_error&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;validation_completeness_level&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/command-envelope/"&gt;CommandEnvelope&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Sensor</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/sensor/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/sensor/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/sensor.py"&gt;src/ometeotl_core/model/sensor.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Builds one &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/"&gt;Perception&lt;/a&gt; for one actor from one &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Bridge between ontology and epistemic state, composing &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/coverage-rule/"&gt;CoverageRule&lt;/a&gt; and &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/noise-rule/"&gt;NoiseRule&lt;/a&gt; policies.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;coverage_rules: List[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/coverage-rule/"&gt;CoverageRule&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;noise_rules: List[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/noise-rule/"&gt;NoiseRule&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;&lt;code&gt;default_epistemic_status: str&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;sense(world, actor_id, timestamp=None) -&amp;gt; &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/"&gt;Perception&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;internal passes: &lt;code&gt;_sense_spaces&lt;/code&gt;, &lt;code&gt;_sense_memberships&lt;/code&gt;, &lt;code&gt;_sense_relations&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;policy aggregators: &lt;code&gt;_covers_space&lt;/code&gt;, &lt;code&gt;_covers_membership&lt;/code&gt;, &lt;code&gt;_covers_relation&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;noise pipeline: &lt;code&gt;_apply_noise_to_space&lt;/code&gt;, &lt;code&gt;_apply_noise_to_membership&lt;/code&gt;, &lt;code&gt;_apply_noise_to_relation&lt;/code&gt;, &lt;code&gt;_apply_noise&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-space/"&gt;PerceivedSpace&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-membership/"&gt;PerceivedMembership&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-relation/"&gt;PerceivedRelation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Space</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/spaces.py"&gt;src/ometeotl_core/model/spaces.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Represents one space of existence.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Fundamental topological unit used by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt;, &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-graph/"&gt;SpaceObjectGraph&lt;/a&gt;, &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation-graph/"&gt;SpaceRelationGraph&lt;/a&gt;, and &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-space/"&gt;PerceivedSpace&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/objects/generic-object/"&gt;GenericObject&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/"&gt;ModelObject&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;object_type: str = &amp;quot;space&amp;quot;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;space attributes: &lt;code&gt;kind&lt;/code&gt;, &lt;code&gt;dimensions&lt;/code&gt;, &lt;code&gt;validity&lt;/code&gt;, &lt;code&gt;is_abstract&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;space properties: &lt;code&gt;kind&lt;/code&gt;, &lt;code&gt;dimensions&lt;/code&gt;, &lt;code&gt;validity&lt;/code&gt;, &lt;code&gt;is_abstract&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;dimension and validity methods: &lt;code&gt;set_dimension&lt;/code&gt;, &lt;code&gt;set_validity&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;legacy disabled methods: &lt;code&gt;add_member&lt;/code&gt;, &lt;code&gt;remove_member&lt;/code&gt;, &lt;code&gt;connect_to&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(...)&lt;/code&gt;, &lt;code&gt;__deepcopy__(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Notes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;is_abstract&lt;/code&gt; marks non-canonical spaces such as conceptual, analytical, or strategic grouping spaces.&lt;/li&gt;
&lt;li&gt;Abstract spaces support the multi-space model described in the spec and can host abstraction-layer actors without changing the canonical world object model.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;</description></item><item><title>SpaceObjectGraph</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-graph/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-graph/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/spaces.py"&gt;src/ometeotl_core/model/spaces.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Graph holding spaces and object memberships.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Deterministic topology service used by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt; and &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/sensor/"&gt;Sensor&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;spaces: Dict[ObjectId, &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space/"&gt;Space&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;object_memberships: List[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-membership/"&gt;SpaceObjectMembership&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;&lt;code&gt;_membership_keys: set[...]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;mutation: &lt;code&gt;add_space&lt;/code&gt;, &lt;code&gt;add_object_membership&lt;/code&gt;, &lt;code&gt;remove_object_membership&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;queries: &lt;code&gt;get_space&lt;/code&gt;, &lt;code&gt;spaces_where_object_exists&lt;/code&gt;, &lt;code&gt;shared_spaces_ids_for_objects&lt;/code&gt;, &lt;code&gt;list_objects_in_space&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;serialization: &lt;code&gt;to_dict&lt;/code&gt;, &lt;code&gt;from_dict&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation-graph/"&gt;SpaceRelationGraph&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>SpaceObjectMembership</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-membership/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-membership/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/spaces.py"&gt;src/ometeotl_core/model/spaces.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Canonical object-to-space membership record.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Placement primitive used by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-graph/"&gt;SpaceObjectGraph&lt;/a&gt;, &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt;, and perceived by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-membership/"&gt;PerceivedMembership&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;object_id: ObjectId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;space_id: ObjectId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;role: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;validity: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;metadata: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;__deepcopy__(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space/"&gt;Space&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>SpaceRelation</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/space_relations.py"&gt;src/ometeotl_core/model/space_relations.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Typed edge linking two spaces.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Space topology primitive used by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation-graph/"&gt;SpaceRelationGraph&lt;/a&gt; and copied into &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perceived-relation/"&gt;PerceivedRelation&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;frozen dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;source_space_id: SpaceId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;target_space_id: SpaceId&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;relation_type: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;metadata: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;canonicalize(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;to_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(...)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;__deepcopy__(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation-type/"&gt;SpaceRelationType&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>SpaceRelationGraph</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation-graph/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation-graph/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/space_relations.py"&gt;src/ometeotl_core/model/space_relations.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Validated relation graph over spaces.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Topology query and validation layer used by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt; and by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/sensor/"&gt;Sensor&lt;/a&gt; through &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/perception/perception/"&gt;Perception&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;relations: List[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation/"&gt;SpaceRelation&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;&lt;code&gt;_relation_keys: set[...]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;mutation: &lt;code&gt;add_relation&lt;/code&gt;, &lt;code&gt;remove_relation&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;queries: &lt;code&gt;relations_from&lt;/code&gt;, &lt;code&gt;relations_to&lt;/code&gt;, &lt;code&gt;children_of&lt;/code&gt;, &lt;code&gt;parents_of&lt;/code&gt;, &lt;code&gt;neighbors_of&lt;/code&gt;, &lt;code&gt;intersects_with&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;serialization: &lt;code&gt;to_dict&lt;/code&gt;, &lt;code&gt;from_dict&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-graph/"&gt;SpaceObjectGraph&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>SpaceRelationType</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation-type/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation-type/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/space_relations.py"&gt;src/ometeotl_core/model/space_relations.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Metadata definition for one relation type.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Rule descriptor consumed by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation/"&gt;SpaceRelation&lt;/a&gt; and &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation-graph/"&gt;SpaceRelationGraph&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;frozen dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;name: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;is_symmetric: bool&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;is_antisymmetric: bool&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;is_transitive: bool&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;is_reflexive: bool&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;no custom methods&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space/"&gt;Space&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Strategy</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/strategies.py"&gt;src/ometeotl_core/model/strategies.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Declarative strategy tree composed of &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy-node/"&gt;StrategyNode&lt;/a&gt; objects and their &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy-outcome-branch/"&gt;StrategyOutcomeBranch&lt;/a&gt; links.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Current strategy-layer root object. It is the first model-level structure that chains action projections through successive perceived states.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/"&gt;ModelObject&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;id: str&lt;/li&gt;
&lt;li&gt;actor_id: str&lt;/li&gt;
&lt;li&gt;goal_id: Optional[str]&lt;/li&gt;
&lt;li&gt;root_node_id: str&lt;/li&gt;
&lt;li&gt;nodes: list[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy-node/"&gt;StrategyNode&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;projection_policy: str&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;add_node(node) -&amp;gt; None&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;get_node(node_id) -&amp;gt; Optional[StrategyNode]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;validate_tree() -&amp;gt; None&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;to_dict() -&amp;gt; dict&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(data) -&amp;gt; Strategy&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Important behavior:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;validates that &lt;code&gt;root_node_id&lt;/code&gt; exists&lt;/li&gt;
&lt;li&gt;validates branch ids are unique per node&lt;/li&gt;
&lt;li&gt;validates branch child references&lt;/li&gt;
&lt;li&gt;validates that child nodes consume the parent node&amp;rsquo;s projected successor perception when a parent branch links to that child&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Builder functions in the same source module:&lt;/p&gt;</description></item><item><title>StrategyBuildStep</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy-build-step/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy-build-step/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/strategies.py"&gt;src/ometeotl_core/model/strategies.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Recursive builder specification used to describe a strategy tree before it is materialized into &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy-node/"&gt;StrategyNode&lt;/a&gt; objects.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Input format for minimal strategy construction APIs, especially &lt;code&gt;build_branching_strategy(...)&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;action: &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/actions/action/"&gt;Action&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;children: list[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy-build-step/"&gt;StrategyBuildStep&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;branch_label: str&lt;/li&gt;
&lt;li&gt;branch_probability: Optional[float]&lt;/li&gt;
&lt;li&gt;branch_condition: dict&lt;/li&gt;
&lt;li&gt;branch_metadata: dict&lt;/li&gt;
&lt;li&gt;metadata: dict&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass validation in &lt;code&gt;__post_init__()&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy-node/"&gt;StrategyNode&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy/"&gt;Strategy&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>StrategyNode</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy-node/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy-node/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/strategies.py"&gt;src/ometeotl_core/model/strategies.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Strategy node that binds one action id to one input perception and one projected successor perceived state.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Primary strategy-chain unit. A node says &amp;ldquo;apply this action from this perceived state, producing this projected successor perceived state.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;node_id: str&lt;/li&gt;
&lt;li&gt;action_id: str&lt;/li&gt;
&lt;li&gt;source_perception_id: Optional[str]&lt;/li&gt;
&lt;li&gt;projected_state: Optional[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/projection/projected-perception-state/"&gt;ProjectedPerceptionState&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;outcome_branches: list[&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy-outcome-branch/"&gt;StrategyOutcomeBranch&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;metadata: dict&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Properties:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;successor_perception_id -&amp;gt; Optional[str]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict() -&amp;gt; dict&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(data) -&amp;gt; StrategyNode&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Important behavior:&lt;/p&gt;</description></item><item><title>StrategyOutcomeBranch</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy-outcome-branch/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy-outcome-branch/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/strategies.py"&gt;src/ometeotl_core/model/strategies.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
One branch edge leaving a &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/strategies/strategy-node/"&gt;StrategyNode&lt;/a&gt; toward an optional child node.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Strategy tree edge model used to encode labels, probabilities, conditions, and child-node references.&lt;/p&gt;
&lt;p&gt;Current note:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The current implementation keeps projected successor state on the node, not on the branch.&lt;/li&gt;
&lt;li&gt;A future TODO prefers branch-specific projected outcomes here if one action later supports several distinct projected outcomes.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;branch_id: str&lt;/li&gt;
&lt;li&gt;label: str&lt;/li&gt;
&lt;li&gt;child_node_id: Optional[str]&lt;/li&gt;
&lt;li&gt;probability: Optional[float]&lt;/li&gt;
&lt;li&gt;condition: dict&lt;/li&gt;
&lt;li&gt;metadata: dict&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;</description></item><item><title>StrategyRanker</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/strategy-ranker/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/strategy-ranker/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/game/utility.py"&gt;src/ometeotl_core/game/utility.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Ranks strategies by evaluating projected terminal nodes with a utility function.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Game-layer bridge from projected strategy structures to comparable utility outcomes.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;standard class&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Constructor:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;StrategyRanker(utility_function)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;evaluate_strategy(strategy, actor, context=None) -&amp;gt; RankedStrategy&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rank_strategies(strategies, actor, context=None) -&amp;gt; list[RankedStrategy]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Important behavior:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;validates strategy trees before ranking&lt;/li&gt;
&lt;li&gt;aggregates branch probabilities per child node&lt;/li&gt;
&lt;li&gt;supports directed acyclic strategies with duplicate terminal paths by accumulating terminal path probabilities per node id&lt;/li&gt;
&lt;li&gt;supports scalar and multi-criteria utility outputs&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;</description></item><item><title>TotalCoverageRule</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/total-coverage-rule/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/total-coverage-rule/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/sensor.py"&gt;src/ometeotl_core/model/sensor.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Default &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/coverage-rule/"&gt;CoverageRule&lt;/a&gt; that includes everything.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Transparent sensing baseline, useful as omniscient reference behavior for &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/sensor/"&gt;Sensor&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/coverage-rule/"&gt;CoverageRule&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;covers_space(...) -&amp;gt; bool&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;covers_membership(...) -&amp;gt; bool&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;covers_relation(...) -&amp;gt; bool&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/sensor/identity-noise-rule/"&gt;IdentityNoiseRule&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>utility.py Overview</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-overview/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-overview/</guid><description>&lt;p&gt;This module defines abstract utility contracts shared by model and game layers.&lt;/p&gt;
&lt;p&gt;Primary structures:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-function/"&gt;UtilityFunction&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-frame/"&gt;UtilityFrame&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>UtilityFrame</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-frame/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-frame/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/utility.py"&gt;src/ometeotl_core/model/utility.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Typed wrapper for scalar or vector utility evaluation results.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Standard utility payload shared by model-level utility contracts and game-level rankers.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;value: float or list[float]&lt;/li&gt;
&lt;li&gt;framework_id: str&lt;/li&gt;
&lt;li&gt;criteria_labels: list[str]&lt;/li&gt;
&lt;li&gt;metadata: dict&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to_dict() -&amp;gt; dict&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from_dict(data) -&amp;gt; UtilityFrame&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Properties:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;is_multi_criteria&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scalar_value&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-function/"&gt;UtilityFunction&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>UtilityFunction</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-function/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-function/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/utility.py"&gt;src/ometeotl_core/model/utility.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Abstract utility interface required by the model layer.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Domain-neutral contract defining how actor-relative perceived states are scored under an interpretive framework.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;abstract base class&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Core contract:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;framework_id&lt;/code&gt; property&lt;/li&gt;
&lt;li&gt;&lt;code&gt;is_multi_criteria&lt;/code&gt; property&lt;/li&gt;
&lt;li&gt;&lt;code&gt;evaluate(perception, actor, context) -&amp;gt; UtilityFrame&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Helper behavior:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;deterministic missing-metric resolution policies&lt;/li&gt;
&lt;li&gt;standardized UtilityFrame construction helpers&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Concrete game-layer implementations:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/weighted-sum-utility/"&gt;WeightedSumUtility&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/lexicographic-utility/"&gt;LexicographicUtility&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Validation Policy Profiles</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/validation/validation-policy/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/validation/validation-policy/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/validation/policy.py"&gt;src/ometeotl_core/validation/policy.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Maps high-level hardening profiles to per-stage pipeline modes.&lt;/p&gt;
&lt;p&gt;Available profiles:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;observe_only&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;enforce_structure&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;enforce_domain&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Entry point:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;build_stage_modes(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Big-picture role:
Progressive hardening control used by &lt;code&gt;AuthorityCommandHandler&lt;/code&gt; and &lt;code&gt;build_runtime(...)&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>ValidationContext</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/validation/validation-context/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/validation/validation-context/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/validation/base.py"&gt;src/ometeotl_core/validation/base.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Execution context passed to each validator stage.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Carries policy mode plus actor/world/metadata payload needed by contextual validators.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;frozen dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;stage: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;policy_mode: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;actor_id: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;world_id: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;metadata: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>ValidationIssue</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/validation/validation-issue/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/validation/validation-issue/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/validation/base.py"&gt;src/ometeotl_core/validation/base.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Atomic validation finding with code, severity, message, and context.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Standardized issue contract shared by all validation stages and command boundary exports.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;frozen dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;severity: str&lt;/code&gt; (&lt;code&gt;error&lt;/code&gt;, &lt;code&gt;warning&lt;/code&gt;, &lt;code&gt;info&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;message: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;object_id: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;path: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;suggestion: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;context: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>ValidationPipeline</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/validation/validation-pipeline/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/validation/validation-pipeline/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/validation/pipeline.py"&gt;src/ometeotl_core/validation/pipeline.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Orchestrates ordered validator execution and result aggregation.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Single staged entry point for validation policies across validation and core authority boundaries.&lt;/p&gt;
&lt;p&gt;Key modes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;strict&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;lenient&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;warn_only&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Key behavior:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;per-stage mode overrides with &lt;code&gt;stage_modes&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;error downgrading in &lt;code&gt;warn_only&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;optional strict raising (&lt;code&gt;ValidationException&lt;/code&gt;) when configured&lt;/li&gt;
&lt;li&gt;metadata for executed validators and effective stage modes&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>ValidationResult</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/validation/validation-result/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/validation/validation-result/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/validation/base.py"&gt;src/ometeotl_core/validation/base.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Aggregated result of one validator stage or full pipeline execution.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Stable structured contract consumed by diagnostics and authority command decisions.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;dataclass&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;issues: list[ValidationIssue]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;stage: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;policy_mode: str&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;metadata: JsonMap&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Derived helpers:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;summary&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;valid&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;errors&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;warnings&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;infos&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;merged_with(...)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Validators Overview</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/validation/validators-overview/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/validation/validators-overview/</guid><description>&lt;p&gt;Sources:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/validation/syntactic.py"&gt;src/ometeotl_core/validation/syntactic.py&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/validation/structural.py"&gt;src/ometeotl_core/validation/structural.py&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/validation/temporal.py"&gt;src/ometeotl_core/validation/temporal.py&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/validation/spatial.py"&gt;src/ometeotl_core/validation/spatial.py&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/validation/admissibility.py"&gt;src/ometeotl_core/validation/admissibility.py&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/validation/epistemic.py"&gt;src/ometeotl_core/validation/epistemic.py&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/validation/completeness.py"&gt;src/ometeotl_core/validation/completeness.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Implemented validator families:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;SyntacticValidator&lt;/code&gt;: JSON/YAML payload parse validity.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;StructuralValidator&lt;/code&gt;: object shape, fields, relations, and hierarchy checks.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;TemporalValidator&lt;/code&gt;: time-window coexistence checks.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SpatialValidator&lt;/code&gt;: relevant-space presence checks.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;AdmissibilityValidator&lt;/code&gt;: goal admissibility under actor-perception constraints.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;EpistemicValidator&lt;/code&gt;: epistemic status coherence checks.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CompletenessValidator&lt;/code&gt;: minimum/recommended/full completeness thresholds.&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>WeightedSumUtility</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/weighted-sum-utility/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/weighted-sum-utility/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/game/utility.py"&gt;src/ometeotl_core/game/utility.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Scalar utility combinator that computes weighted linear sums over metrics.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Default game-layer scalar scoring primitive used by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/strategy-ranker/"&gt;StrategyRanker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/utility/utility-function/"&gt;UtilityFunction&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Constructor:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;WeightedSumUtility(framework_id, metric_weights)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Method:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;evaluate(perception, actor, context) -&amp;gt; UtilityFrame&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/lexicographic-utility/"&gt;LexicographicUtility&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/game/utility/strategy-ranker/"&gt;StrategyRanker&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>World</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/world.py"&gt;src/ometeotl_core/model/world.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Root simulation container and orchestration hub.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Aggregates &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-graph/"&gt;SpaceObjectGraph&lt;/a&gt;, &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation-graph/"&gt;SpaceRelationGraph&lt;/a&gt;, and &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/registry/world-model-registry/"&gt;WorldModelRegistry&lt;/a&gt;, while enabling authority mode used by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/authority-command-handler/"&gt;AuthorityCommandHandler&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space/"&gt;Space&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/objects/generic-object/"&gt;GenericObject&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/"&gt;ModelObject&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;object_type: str = &amp;quot;world&amp;quot;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;is_root_world: bool&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;space_object_graph: &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/spaces/space-object-graph/"&gt;SpaceObjectGraph&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;space_relation_graph: &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/space-relations/space-relation-graph/"&gt;SpaceRelationGraph&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;model_registry: &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/registry/world-model-registry/"&gt;WorldModelRegistry&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;authority mode: &lt;code&gt;enable_authority_mode&lt;/code&gt;, &lt;code&gt;disable_authority_mode&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;topology operations: &lt;code&gt;add_space&lt;/code&gt;, &lt;code&gt;add_space_relation&lt;/code&gt;, &lt;code&gt;place_object&lt;/code&gt;, &lt;code&gt;get_space&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;abstract-space helper: &lt;code&gt;is_space_abstract&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;registry operations: &lt;code&gt;register_object&lt;/code&gt;, &lt;code&gt;unregister_object&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;serialization: &lt;code&gt;to_dict&lt;/code&gt;, &lt;code&gt;from_dict&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Notes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;is_space_abstract(space_id)&lt;/code&gt; is a convenience query over registered spaces and returns &lt;code&gt;False&lt;/code&gt; for unknown space ids.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;</description></item><item><title>World export</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/io/world-export/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/io/world-export/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/io/exporters.py"&gt;src/ometeotl_core/io/exporters.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Canonical JSON and YAML serialization of a &lt;code&gt;World&lt;/code&gt; instance.&lt;/p&gt;
&lt;p&gt;Big-picture role:
The IO export layer is a thin orchestration wrapper. It calls &lt;code&gt;World.to_dict()&lt;/code&gt; for the canonical payload, normalizes all guarded container subclasses to plain Python dicts and lists via &lt;code&gt;_deep_plain_copy&lt;/code&gt;, then formats the result to the requested text format. This keeps serialization ownership in &lt;code&gt;model&lt;/code&gt; and format ownership in &lt;code&gt;io&lt;/code&gt;.&lt;/p&gt;
&lt;h2 id="public-functions"&gt;Public functions&lt;/h2&gt;
&lt;h3 id="world_to_mappingworld"&gt;&lt;code&gt;world_to_mapping(world)&lt;/code&gt;&lt;/h3&gt;
&lt;p&gt;Returns the canonical plain-dict payload for a world.
Uses &lt;code&gt;_deep_plain_copy&lt;/code&gt; to strip guarded subclasses before returning, so the result is safe to pass to any serializer.&lt;/p&gt;</description></item><item><title>World import</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/io/world-import/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/io/world-import/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/io/importers.py"&gt;src/ometeotl_core/io/importers.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
Validated reconstruction of a &lt;code&gt;World&lt;/code&gt; from JSON text, YAML text, or an already-parsed mapping.&lt;/p&gt;
&lt;p&gt;Big-picture role:
The import pipeline composes the existing &lt;code&gt;SyntacticValidator&lt;/code&gt;, &lt;code&gt;StructuralValidator&lt;/code&gt;, and &lt;code&gt;ValidationPipeline&lt;/code&gt; from &lt;code&gt;ometeotl_core.validation&lt;/code&gt; with &lt;code&gt;World.from_dict&lt;/code&gt; from &lt;code&gt;ometeotl_core.model&lt;/code&gt;. It keeps parse, validate, and reconstruct as separate internal steps so each failure mode is individually diagnosable. Business logic and serialization rules remain in &lt;code&gt;model&lt;/code&gt;; validation rules remain in &lt;code&gt;validation&lt;/code&gt;; IO only orchestrates.&lt;/p&gt;
&lt;h2 id="worldimportresult"&gt;&lt;code&gt;WorldImportResult&lt;/code&gt;&lt;/h2&gt;
&lt;p&gt;Frozen dataclass returned by every import helper.&lt;/p&gt;</description></item><item><title>WorldModelRegistry</title><link>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/registry/world-model-registry/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://kakchouch.github.io/ometeotl/documentation/class-reference/model/registry/world-model-registry/</guid><description>&lt;p&gt;Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kakchouch/ometeotl/blob/main/src/ometeotl_core/model/registry.py"&gt;src/ometeotl_core/model/registry.py&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Local role:
World-scoped in-memory registry of &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/base/model-object/"&gt;ModelObject&lt;/a&gt; instances.&lt;/p&gt;
&lt;p&gt;Big-picture role:
Identity boundary used by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/model/world/world/"&gt;World&lt;/a&gt; and by &lt;a href="https://kakchouch.github.io/ometeotl/documentation/class-reference/core/authority-command-handler/"&gt;AuthorityCommandHandler&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Inheritance:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;standard class&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Parameters and fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;internal &lt;code&gt;_instances&lt;/code&gt; dictionary&lt;/li&gt;
&lt;li&gt;optional mutation guard callback&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Methods:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;mutation: &lt;code&gt;register(obj, authority_token=None)&lt;/code&gt;, &lt;code&gt;unregister(obj_id, authority_token=None)&lt;/code&gt;, &lt;code&gt;clear(authority_token=None)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;lookup: &lt;code&gt;exists(obj_id) -&amp;gt; bool&lt;/code&gt;, &lt;code&gt;get(obj_id) -&amp;gt; Optional[ModelObject]&lt;/code&gt;, &lt;code&gt;all_ids() -&amp;gt; list[ObjectId]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;serialization: &lt;code&gt;to_dict() -&amp;gt; JsonMap&lt;/code&gt;, &lt;code&gt;from_dict(data) -&amp;gt; WorldModelRegistry&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;guard wiring: &lt;code&gt;set_mutation_guard(guard)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Notes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;authority_token&lt;/code&gt; is forwarded to the mutation guard callback when set.
Re-registering the exact same object instance is a no-op.
Duplicate IDs from different object instances raise &lt;code&gt;ValueError&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also:&lt;/p&gt;</description></item></channel></rss>