feat: Azure-native Python backend agent with AustLII integration
- Add backend-agent/ Python FastAPI app replacing TypeScript backend
- Azure AI Foundry Hosted Agents (Responses + Invocations protocols)
- Semantic Kernel with AzureChatCompletion
- Entra External ID JWT auth middleware
- asyncpg connection pool for Azure PostgreSQL
- Azure Blob Storage layer replacing Cloudflare R2
- Full CRUD routes: chat, documents, projects, tabular, workflows, user, downloads
- Add Australian legal plugins for Semantic Kernel
- austlii.py: AustLII SINO search engine integration
- 90+ database mask_path values (all courts/tribunals across 9 jurisdictions)
- 21 known Commonwealth Acts with consol_act identifiers
- search_austlii, get_austlii_document, browse_legislation, lookup_act tools
- Correct sinosrch.cgi endpoint + browser User-Agent (required to avoid 403)
- australian_legislation.py: All 13 APPs + legislation.gov.au + APP compliance checker
- Add Dockerfile and agent.yaml for Foundry Hosted Agent deployment
- Add azure-approval-request.html for Azure resource provisioning request
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
| Repository | ExigoTech-Beno/mikeoss |
|---|---|
| Author | Ben Opit <ben.opit@exigotech.com.au> |
| Authored | |
| Parents | d9690965 |
| Stats | 29 files changed , +1818 , -25 |
| Part of | Azure-native Python backend with AustLII / Australian legal plugins |
Capture this commit into my fork
Download a Markdown prompt that tells Claude how to port this
exact commit into your working tree. Run it via
claude -p < capture-commit-10b1c82e.md
from inside the repo you want the change in.