Goals and specs

0 — Purpose

P — Principles

A — Axioms

G — Game Theory

F — Functional Requirements

V1 priority

V1 must first demonstrate the system core with a reduced but complete scope: abstract core, canonical serialization, validation, minimal generation, and projection into game theory. The goal is to validate the end-to-end chain before adding mathematical refinements, more sophisticated solvers, or advanced features.

V1 priorities

  1. Abstract core of the model objects.
  2. Canonical JSON + YAML.
  3. Base-level full validation system.
  4. Minimal contextual generation.
  5. Minimal game-theory interface.
  6. Two examples: a simple world and a hierarchical multi-actor case.

Current repository state (April 2026)

The repository now contains a broader functional V1-incremental core spanning model, perception, projection, strategy, and authority/runtime boundaries.

04/25/26 - major architectural overhaul: Local tests reveal the current architecture is too abstract for any practical implementation. It has been decided to :

Implemented and tested now

  1. Core object model in src/ometeotl_core/model/:
    • ModelObject, GenericObject, Actor, Resource, Space, World.
    • WorldModelRegistry and reconstruction helpers.
  2. Spatial structures:
    • SpaceObjectGraph and SpaceObjectMembership.
    • SpaceRelation, SpaceRelationType, and SpaceRelationGraph with canonicalization and relation constraints.
  3. Actor hierarchy and abstraction:
    • Composition modes and explicit component relations on actors.
    • Cycle detection, tree resolution, parent lookup, and abstract hierarchy helpers.
    • Abstract spaces through Space.is_abstract.
  4. Perception layer:
    • Perception, PerceivedSpace, PerceivedMembership, PerceivedRelation, PerceivedComponentLink.
    • Epistemic status validation and deterministic serialization of perceived structures.
  5. Sensor pipeline:
    • CoverageRule and NoiseRule abstractions.
    • TotalCoverageRule and IdentityNoiseRule defaults.
    • Timestamp-aware and deterministic perception id behavior.
  6. Projection and strategy layers:
    • ProjectionAssumption, ProjectedPerceptionChange, ProjectedPerceptionState, ActionProjection, ProjectionBatch.
    • DefaultProjectionTool, Strategy, StrategyNode, StrategyOutcomeBranch, StrategyBuildStep.
  7. Teleology and utility layers:
    • Goal, GoalBuildStep, GoalDecompositionTree.
    • GoalFeasibilityTool, DefaultGoalFeasibilityTool, GoalAdmissibilityChecker.
    • UtilityFunction, UtilityFrame, WeightedSumUtility, LexicographicUtility, StrategyRanker.
  8. Core runtime infrastructure:
    • AuthorityCommandHandler, CommandEnvelope, CommandResult, AuditEntry.
    • RuntimeContext and build_runtime(...).
  9. Validation layer in src/ometeotl_core/validation/:
    • Validation contracts and staged pipeline.
    • Validator families: syntactic, structural, temporal, spatial, admissibility, epistemic, completeness.
    • Policy profiles: observe_only, enforce_structure, enforce_domain.
    • Diagnostics and repair suggestions.
  10. Quality gate:
    • Automated tests in tests/ometeotl_core/model/, tests/ometeotl_core/generic/, tests/ometeotl_core/game/, tests/ometeotl_core/io/, and tests/ometeotl_core/validation/.
    • Current baseline: 317 collected tests.

Still incomplete or planned

Current TODO priorities

  1. Implement dedicated IO workflows.
  2. Implement contextual generation and repair.
  3. Implement the game layer.
  4. Extend the strategy layer to support one-action-to-many-outcomes branching with branch-specific projected successor perceptions.
  5. Add examples and end-to-end demonstrations.

Ometeotl

A Python library to build complex multi-agent simulations, wargames, and AI-driven strategies