import sys
import os
import asyncio

sys.path.append(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))))

from report.report_synthesis import ReportSynthesizer
from report.report_templates import QueryType, DetailLevel

async def main():
    # Initialize synthesizer
    synthesizer = ReportSynthesizer()

    # Test data
    query = "What is the capital of France?"
    chunks = [
        {
            'content': 'Paris is the capital of France.',
            'source': 'Wikipedia',
            'url': 'https://en.wikipedia.org/wiki/Paris'
        }
    ]

    # Generate brief report
    report = await synthesizer.synthesize_report(
        query_type=QueryType.FACTUAL.value,
        detail_level=DetailLevel.BRIEF.value,
        query=query,
        chunks=chunks
    )

    print('Generated Report:\n')
    print(report)

if __name__ == "__main__":
    asyncio.run(main())
