RFTSystems's picture
Update app.py
04c0ae3 verified
Raw
History Blame
1.28 kB
# app.py
# Author: Liam Grinstead
# Purpose: Run agent simulations, mutations, and falsifiability checks with automatic logging
from modules.agent_spawner import spawn_agent
from modules.mutation_engine import mutate_agent
from modules.field_visualizer import render_fields
from modules.falsifiability_bench import run_falsifiability
from modules.codex_logger import log_artifact
from modules.codex_viewer import load_codex
def run_simulation(agent_id, mutation_profile):
"""
Run a full simulation cycle:
1. Spawn agent
2. Apply mutation profile
3. Render fields (optional)
4. Run falsifiability bench
5. Log artifact with SHA-512 seal
"""
# Step 1: Spawn agent
agent = spawn_agent(agent_id)
# Step 2: Mutate agent
mutated = mutate_agent(agent, mutation_profile)
# Step 3: Optional visualization
try:
render_fields(mutated)
except Exception:
# Visualization is non-critical, continue if it fails
pass
# Step 4: Falsifiability scoring
score, hash_val = run_falsifiability(mutated)
# Step 5: Log artifact (saved to JSON with timestamp + SHA-512 seal)
log_artifact(mutated, score, hash_val)
# Return mutated agent and hash for downstream use
return mutated, hash_val