Spaces:
Sleeping
Sleeping
SIN-Deploy-Bot commited on
Commit ·
a14d5ed
1
Parent(s): 3ce6f18
fix: add missing _public_base_url helper
Browse files-agent_card endpoint requires base URL extraction from request
-adds utility function to construct correct base URL from Request object
main.py
CHANGED
|
@@ -46,6 +46,14 @@ def _ensure_agent() -> CloudCoderAgent:
|
|
| 46 |
return _agent
|
| 47 |
|
| 48 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 49 |
# A2A JSON-RPC 2.0 endpoint
|
| 50 |
async def handle_a2a_message(request: Request) -> JSONResponse:
|
| 51 |
"""Handle A2A JSON-RPC 2.0 message/send requests."""
|
|
@@ -253,6 +261,7 @@ async def health() -> JSONResponse:
|
|
| 253 |
}
|
| 254 |
)
|
| 255 |
|
|
|
|
| 256 |
# Agent card endpoint
|
| 257 |
@app.get("/.well-known/agent-card.json")
|
| 258 |
async def agent_card(request: Request) -> JSONResponse:
|
|
@@ -287,5 +296,6 @@ app.mount("/", gradio_app.app)
|
|
| 287 |
|
| 288 |
if __name__ == "__main__":
|
| 289 |
import uvicorn
|
|
|
|
| 290 |
print("🚀 Starting uvicorn on port", int(os.getenv("PORT", 7860)))
|
| 291 |
uvicorn.run(app, host="0.0.0.0", port=int(os.getenv("PORT", 7860)))
|
|
|
|
| 46 |
return _agent
|
| 47 |
|
| 48 |
|
| 49 |
+
def _public_base_url(request: Request) -> str:
|
| 50 |
+
"""Extract the public base URL from the request."""
|
| 51 |
+
base_url = str(request.base_url)
|
| 52 |
+
if base_url.endswith("/"):
|
| 53 |
+
base_url = base_url[:-1]
|
| 54 |
+
return base_url
|
| 55 |
+
|
| 56 |
+
|
| 57 |
# A2A JSON-RPC 2.0 endpoint
|
| 58 |
async def handle_a2a_message(request: Request) -> JSONResponse:
|
| 59 |
"""Handle A2A JSON-RPC 2.0 message/send requests."""
|
|
|
|
| 261 |
}
|
| 262 |
)
|
| 263 |
|
| 264 |
+
|
| 265 |
# Agent card endpoint
|
| 266 |
@app.get("/.well-known/agent-card.json")
|
| 267 |
async def agent_card(request: Request) -> JSONResponse:
|
|
|
|
| 296 |
|
| 297 |
if __name__ == "__main__":
|
| 298 |
import uvicorn
|
| 299 |
+
|
| 300 |
print("🚀 Starting uvicorn on port", int(os.getenv("PORT", 7860)))
|
| 301 |
uvicorn.run(app, host="0.0.0.0", port=int(os.getenv("PORT", 7860)))
|