- Fix RunnableConfig type annotations (dict -> RunnableConfig) for LangGraph compat - Fix AzDo PR URL parsing (_links.web.href fallback + remoteUrl construction) - Fix AzDo diff endpoint (use iterations/changes instead of non-existent diffs API) - Fix _format_diff to read changeEntries field (not changes) - Fix URL encoding for project names with spaces (Billo App Platform) - Fix subprocess.run for Windows (replace asyncio.create_subprocess_exec with thread pool) - Fix SlackClient to handle empty webhook URL gracefully - Fix notify_request_changes to catch all exceptions (not just ReleaseAgentError) - Fix JSON parsing to strip whitespace before json.loads - Add CLAUDE_CMD config field for cross-platform CLI path - Add run.py for Windows SelectorEventLoop workaround - Add db port mapping in docker-compose for local dev - Add comprehensive README sections: WSL setup, known issues, TODO list
23 lines
567 B
Python
23 lines
567 B
Python
"""Windows-compatible startup script.
|
|
|
|
psycopg async requires SelectorEventLoop, not the default ProactorEventLoop on Windows.
|
|
This script sets the correct event loop policy before starting uvicorn.
|
|
"""
|
|
|
|
import asyncio
|
|
import sys
|
|
|
|
if sys.platform == "win32":
|
|
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
|
|
|
|
import uvicorn
|
|
|
|
if __name__ == "__main__":
|
|
uvicorn.run(
|
|
"release_agent.main:app",
|
|
host="0.0.0.0",
|
|
port=8080,
|
|
reload=False,
|
|
loop="none", # don't let uvicorn override the event loop
|
|
)
|