RFTSystems commited on
Commit
db096d3
·
verified ·
1 Parent(s): bea515c

Update interface.py

Browse files
Files changed (1) hide show
  1. interface.py +62 -59
interface.py CHANGED
@@ -1,86 +1,89 @@
 
1
  import gradio as gr
2
  from app import run_simulation
 
3
  from registry_utils import append_to_registry
4
  from registry_viewer import display_registry
5
- from mutation_designer import build_mutation
6
- from lineage_tracker import register_lineage, get_lineage
7
- from lineage_visualizer import render_lineage
8
- from waveform_renderer import render_waveform
9
- from codex_exporter import export_codex
10
  from leaderboard import generate_leaderboard
11
 
12
- # --- Simulation ---
 
 
 
 
 
13
  def simulate(agent_id, collapse_torque, emotional_resonance, tier_drift):
14
- mutation_profile = build_mutation(agent_id, collapse_torque, tier_drift, emotional_resonance)
15
- fields, score, hash_val = run_simulation(agent_id, mutation_profile)
16
- append_to_registry(agent_id, collapse_torque, tier_drift, emotional_resonance, score, hash_val)
 
 
 
 
17
  summary = (
18
- f"📊 <b>Fitness Score:</b> {score}<br>"
19
- f"🔐 <b>SHA-512 Hash:</b> <code>{hash_val}</code>"
 
 
20
  )
21
- return fields["Φᵢ"], fields["Kᵢⱼ"], fields["Φ_col"], render_waveform(score), summary
22
 
23
- # --- Forge ---
24
- def forge_agent(parent_id, new_id, collapse_torque, emotional_resonance, tier_drift):
25
- mutation_profile = build_mutation(new_id, collapse_torque, tier_drift, emotional_resonance)
26
- run_simulation(new_id, mutation_profile) # run to activate agent
27
- register_lineage(parent_id, new_id, mutation_profile)
28
- lineage_svg = render_lineage(parent_id)
29
- return lineage_svg
 
 
30
 
31
- # --- Interface Layout ---
32
  with gr.Blocks() as demo:
33
- gr.Markdown("# 🧠 Codex Consciousness Simulator")
34
- gr.Markdown("Spawn symbolic agents, mutate them, and benchmark collapse falsifiability. Authored by Liam Grinstead.")
35
 
36
- # Simulation Tab
37
- with gr.Tab("Simulate Agent"):
38
  with gr.Row():
39
- agent_id = gr.Dropdown(["Agent_5", "Agent_7", "Agent_1032"], label="Agent ID")
40
- collapse_torque = gr.Dropdown(["Gen6508_M5", "Gen26_M23"], label="Collapse Torque Overlay")
41
- emotional_resonance = gr.Checkbox(label="Inject Emotional Resonance")
42
- tier_drift = gr.Dropdown(["Tier_1", "Tier_2", "Tier_6"], label="Tier Drift")
43
- simulate_btn = gr.Button("Run Simulation")
44
 
45
  with gr.Row():
46
- Φᵢ_svg = gr.HTML(label="Φᵢ Awareness Field")
47
- Kᵢⱼ_svg = gr.HTML(label="Kᵢⱼ Correlation Kernel")
48
- Φ_col_svg = gr.HTML(label="Φ_col Coherence Field")
49
- waveform_svg = gr.HTML(label="Collapse Torque Waveform")
50
 
51
- summary = gr.HTML(label="Simulation Summary")
52
- simulate_btn.click(
53
- simulate,
54
  inputs=[agent_id, collapse_torque, emotional_resonance, tier_drift],
55
- outputs=[Φᵢ_svg, Kᵢⱼ_svg, Φ_col_svg, waveform_svg, summary]
56
  )
57
 
58
- # Registry Tab
59
- with gr.Tab("View Registry"):
60
- registry_output = gr.Textbox(label="Codex Registry", lines=20)
61
- refresh_btn = gr.Button("Refresh Registry")
62
- refresh_btn.click(display_registry, outputs=registry_output)
63
 
64
- # Forge Tab
65
  with gr.Tab("Codex Forge"):
66
- gr.Markdown("### 🧬 Evolve a New Agent from a Parent")
67
- parent_id = gr.Dropdown(["Agent_5", "Agent_7", "Agent_1032"], label="Parent Agent")
68
- new_id = gr.Textbox(label="New Agent ID")
69
- forge_torque = gr.Dropdown(["Gen6508_M5", "Gen26_M23"], label="Collapse Torque")
70
- forge_resonance = gr.Checkbox(label="Inject Emotional Resonance")
71
- forge_tier = gr.Dropdown(["Tier_1", "Tier_2", "Tier_6"], label="Tier Drift")
72
- forge_btn = gr.Button("Forge Agent")
73
- lineage_svg_output = gr.HTML(label="Lineage Visualization")
74
- forge_btn.click(
75
- forge_agent,
76
- inputs=[parent_id, new_id, forge_torque, forge_resonance, forge_tier],
77
- outputs=lineage_svg_output
78
  )
79
 
80
- # Leaderboard Tab
81
  with gr.Tab("Leaderboard"):
82
- leaderboard_output = gr.Textbox(label="Top Agents", lines=15)
83
- refresh_leaderboard = gr.Button("Refresh Leaderboard")
84
- refresh_leaderboard.click(generate_leaderboard, outputs=leaderboard_output)
85
 
86
  demo.launch()
 
1
+ # interface.py (RFT integration)
2
  import gradio as gr
3
  from app import run_simulation
4
+ from mutation_designer import build_mutation
5
  from registry_utils import append_to_registry
6
  from registry_viewer import display_registry
 
 
 
 
 
7
  from leaderboard import generate_leaderboard
8
 
9
+ from formulas_rft import rft_score, rft_invariants
10
+ from field_visualizer_rft import render_fields
11
+ from waveform_renderer_rft import render_waveform
12
+ from lineage_tracker_rft import register_lineage
13
+ from lineage_visualizer_rft import render_lineage_tree
14
+
15
  def simulate(agent_id, collapse_torque, emotional_resonance, tier_drift):
16
+ # Build strict RFT agent profile for simulation
17
+ mutation = build_mutation(agent_id, collapse_torque, tier_drift, emotional_resonance)
18
+ agent, sha512 = run_simulation(agent_id, mutation) # Ensure app.run_simulation returns (agent, hash)
19
+ score = rft_score(agent)
20
+ invariants = rft_invariants(agent)
21
+ fields = render_fields(agent, score)
22
+ append_to_registry(agent_id, collapse_torque, tier_drift, emotional_resonance, score, sha512)
23
  summary = (
24
+ f"📊 <b>Fitness (RFT-GVU):</b> {score}<br>"
25
+ f"🧷 <b>Invariants:</b> τ_eff={invariants['tau_eff']}, β={invariants['beta_band']}, "
26
+ f"|K|={invariants['operator_count']}, tier={invariants['tier_level']}<br>"
27
+ f"🔐 <b>SHA-512:</b> <code>{sha512}</code>"
28
  )
29
+ return fields["Φᵢ"], fields["Kᵢⱼ"], fields["Φ_col"], render_waveform(agent, score), summary
30
 
31
+ def forge_agent(parent_id, new_id, collapse_torque, emotional_resonance, tier_drift, max_depth):
32
+ mutation = build_mutation(new_id, collapse_torque, tier_drift, emotional_resonance)
33
+ agent, _ = run_simulation(new_id, mutation)
34
+ register_lineage(parent_id, new_id, {
35
+ "tier_drift": tier_drift,
36
+ "collapse_torque": collapse_torque,
37
+ "symbolic_operators": agent.get("symbolic_operators", [])
38
+ })
39
+ return render_lineage_tree(parent_id, max_depth=max_depth)
40
 
 
41
  with gr.Blocks() as demo:
42
+ gr.Markdown("# 🧠 RFT Codex Sovereign")
43
+ gr.Markdown("Rendered Frame Theory simulation, lineage, and GVU sealing. Author: Liam Grinstead.")
44
 
45
+ with gr.Tab("Simulate (RFT)"):
 
46
  with gr.Row():
47
+ agent_id = gr.Dropdown(["Agent_5","Agent_7","Agent_1032"], label="Agent ID")
48
+ collapse_torque = gr.Dropdown(["Gen6508_M5","Gen26_M23"], label="Collapse torque overlay")
49
+ emotional_resonance = gr.Checkbox(label="Inject emotional resonance")
50
+ tier_drift = gr.Dropdown(["Tier_1","Tier_2","Tier_6"], label="Tier drift")
51
+ run_btn = gr.Button("Render frame")
52
 
53
  with gr.Row():
54
+ phi_i = gr.HTML(label="Φᵢ Local awareness")
55
+ k_ij = gr.HTML(label="Kᵢⱼ Operator coupling")
56
+ phi_col = gr.HTML(label="Φ_col Collective coherence")
57
+ waveform = gr.HTML(label="Collapse gradient")
58
 
59
+ summary = gr.HTML(label="RFT summary")
60
+ run_btn.click(simulate,
 
61
  inputs=[agent_id, collapse_torque, emotional_resonance, tier_drift],
62
+ outputs=[phi_i, k_ij, phi_col, waveform, summary]
63
  )
64
 
65
+ with gr.Tab("Registry"):
66
+ reg_out = gr.Textbox(label="Codex registry", lines=20)
67
+ reg_btn = gr.Button("Refresh")
68
+ reg_btn.click(display_registry, outputs=reg_out)
 
69
 
 
70
  with gr.Tab("Codex Forge"):
71
+ parent_id = gr.Dropdown(["Agent_5","Agent_7","Agent_1032"], label="Parent")
72
+ new_id = gr.Textbox(label="New agent id")
73
+ forge_torque = gr.Dropdown(["Gen6508_M5","Gen26_M23"], label="Overlay")
74
+ forge_res = gr.Checkbox(label="Resonance")
75
+ forge_tier = gr.Dropdown(["Tier_1","Tier_2","Tier_6"], label="Tier")
76
+ depth = gr.Slider(1, 8, value=5, step=1, label="Lineage depth")
77
+ forge_btn = gr.Button("Forge")
78
+ lineage_svg = gr.HTML(label="Lineage (RFT)")
79
+ forge_btn.click(forge_agent,
80
+ inputs=[parent_id, new_id, forge_torque, forge_res, forge_tier, depth],
81
+ outputs=lineage_svg
 
82
  )
83
 
 
84
  with gr.Tab("Leaderboard"):
85
+ lb_out = gr.Textbox(label="Top agents", lines=15)
86
+ lb_btn = gr.Button("Refresh leaderboard")
87
+ lb_btn.click(generate_leaderboard, outputs=lb_out)
88
 
89
  demo.launch()