Spaces:
Running on Zero
Running on Zero
| import sys, os; sys.path.insert(0, "src") | |
| os.environ["BUDDY_FORCE_FAKE_RUNTIME"] = "1" | |
| from buddy_fusion.runtime import default_runtime, LlamaCppBuddyRuntime | |
| from buddy_fusion.fallback import fallback_genome | |
| from buddy_fusion.genome import genome_to_dict, genome_from_dict, ARCHETYPES | |
| def test_fake_fuse_returns_valid_genome_dict(): | |
| rt = default_runtime() | |
| a, b = genome_to_dict(fallback_genome(1)), genome_to_dict(fallback_genome(2)) | |
| child, status = rt.fuse_genomes(a, b) | |
| g = genome_from_dict(child) | |
| assert g.archetype in ARCHETYPES | |
| assert status.used_fallback is True | |
| def test_fake_interpret_command_adds_part(): | |
| rt = default_runtime() | |
| g = genome_to_dict(fallback_genome(1, "chick")) | |
| out, status = rt.interpret_genome_command(g, "add two horns") | |
| assert any(p.kind == "horn" for p in genome_from_dict(out).parts) | |
| def test_fake_interpret_command_changes_archetype(): | |
| rt = default_runtime() | |
| g = genome_to_dict(fallback_genome(1, "chick")) | |
| out, _ = rt.interpret_genome_command(g, "turn it into a frog") | |
| assert genome_from_dict(out).archetype == "frog" | |
| def test_fake_interpret_command_unknown_is_noop(): | |
| rt = default_runtime() | |
| g = genome_to_dict(fallback_genome(1, "chick")) | |
| out, _ = rt.interpret_genome_command(g, "hello there") | |
| assert genome_from_dict(out).archetype == "chick" | |
| def test_real_runtime_empty_edit_falls_back_to_keyword_editor(): | |
| # A small model often returns a valid-but-empty edit. The success path must | |
| # not silently keep the original (the bug seen on the Space); when the model | |
| # changes nothing, the deterministic keyword editor takes over so the tweak | |
| # still lands on screen. | |
| rt = LlamaCppBuddyRuntime() | |
| rt._chat_json = lambda *a, **k: {} # model produced nothing usable | |
| g = genome_to_dict(fallback_genome(1, "chick")) | |
| out, status = rt.interpret_genome_command(g, "add two horns") | |
| assert any(p.kind == "horn" for p in genome_from_dict(out).parts) | |
| assert status.used_fallback is True | |
| def test_real_runtime_uses_model_edit_when_it_changes_the_look(): | |
| rt = LlamaCppBuddyRuntime() | |
| rt._chat_json = lambda *a, **k: {"archetype": "frog"} | |
| g = genome_to_dict(fallback_genome(1, "chick")) | |
| out, status = rt.interpret_genome_command(g, "make it a frog") | |
| assert genome_from_dict(out).archetype == "frog" | |
| assert status.used_fallback is False | |