🧪 API Reference & Testiranje
Kvalitet i pouzdanost Master Orchestration Protocol-a su obezbeđeni kroz rigorozan skup automatizovanih testova koji pokrivaju svaki aspekt arhitekture.
1. Test Suite (8 Automatizovanih Testova)
Naš test suite sadrži 8 kritičnih testova koji verifikuju stabilnost svih modula:
test_agent_registry: Proverava ispravnost registracije i učitavanja svih uloga agenata.test_debate_engine: Validira tok debate u 6 faza i generisanje strukturisanog konsenzusa.test_sqlite_memory_backend: Proverava SQLite operacije, upise debata, argumenata i istorije odluka.test_sandbox_execution: Testira bezbedno izvršavanje CLI komandi u sandbox okruženju uz provere vremenskih ograničenja.test_pre_flight_validation: Validira statičku analizu i sintaksnu ispravnost koda pre pokretanja.test_post_flight_validation: Proverava ispravnost rezultata i primenu pravila o celovitosti.test_emergency_rollback_trigger: Simulira brisanje fajla i verifikuje da se automatski aktivira Zakon 3 i vraća okruženje na stabilno stanje.test_end_to_end_orchestrator_flow: Testira kompletan workflow od korisničkog zahteva, preko memorije, debate, do izvršavanja i validacije.
2. Pokretanje Testova
Testovi se pokreću kroz uv okruženje pomoću pytest alata:
bash
# Pokretanje svih testova sa detaljnim ispisom
uv run pytest -vOčekivani Rezultat:
============================= test session starts ==============================
collected 8 items
tests/test_agent_registry.py . [ 12%]
tests/test_debate_engine.py . [ 25%]
tests/test_sqlite_memory.py . [ 37%]
tests/test_sandbox_execution.py . [ 50%]
tests/test_pre_flight.py . [ 62%]
tests/test_post_flight.py . [ 75%]
tests/test_emergency_rollback.py . [ 87%]
tests/test_orchestrator.py . [100%]
============================== 8 passed in 1.42s ===============================3. Ključne Klase i Metode (API Reference)
Orchestrator
Glavna klasa koja koordinira izvršavanje celog protokola.
__init__(self, db_path: str): Inicijalizuje bazu i registre agenata.run_workflow(self, request: str) -> dict: Glavna metoda za pokretanje celog toka (Memorija -> Debata -> Izvršavanje -> Validacija -> Memorisanje).
DebateEngine
Upravlja debatnim procesom između agenata.
initialize_debate(self, topic: str) -> None: Priprema sesiju debate.run_debate(self) -> dict: Pokreće diskusiju u 6 koraka i vraća strukturisan rezultat sa ocenama poverenja.
SQLiteMemory
Upravlja trajnim skladištenjem podataka u SQLite bazu.
store_debate(self, debate_data: dict) -> None: Upisuje podatke o debati.find_similar_debates(self, query: str) -> list: Vraća slične istorijske debate na osnovu analize ključnih reči.