Repository navigation
Releases
Releases · aakash1552005/SatQuery-AI
🛰️ Release v1.0.0 — Production Architecture Freeze (SIH 2026 PS 26167)
Changelog
All notable changes to SatQuery AI (SatSense) will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[v1.1.0] - 2026-10-06 — 🛡️ Security Hardening & Backend Reliability
Added
- API Key Authentication Middleware (
app/backend/security.py, GAP-01):- Header-based
X-API-Keyvalidation protecting all/api/endpoints with configurable key inSATQUERY_API_KEY. - Development mode support when no key is configured.
- Header-based
- Sliding-Window Rate Limiting (
app/backend/security.py, GAP-02):- Endpoint-level throttling: 10 uploads/min, 30 queries/min, 60 default requests/min.
- Returns
429 Too Many RequestswithRetry-Afterresponse header. - Transparent test-client bypass preserving local CI harness speed.
- Strict File Upload & Magic Byte Validation (
app/backend/security.py, GAP-04, GAP-05):- Streaming chunked file upload enforcement rejecting files over 50 MB (
413 Payload Too Large). - Binary magic-byte header inspection (TIFF
II*/MM*, BigTIFF, PNG, JPEG) preventing arbitrary payload execution. - Safe path sanitization preventing directory traversal attacks.
- Streaming chunked file upload enforcement rejecting files over 50 MB (
- SSRF Guard for Cloud GPU Registration (
app/backend/security.py, GAP-06):- Strict host validation preventing internal loopback/private address attacks on
/api/cloud-gpu/register. - Optional shared secret verification (
SATQUERY_GPU_WORKER_SECRET).
- Strict host validation preventing internal loopback/private address attacks on
- Centralized Application Configuration (
app/backend/config.py, GAP-19):- Pydantic-Settings
AppConfigclass handling all server, security, upload, and CORS parameters. .env.exampletemplate documenting allSATQUERY_*environment variables.
- Pydantic-Settings
- Standardized Error Handling Architecture (
app/backend/errors.py, GAP-08):- Unified error schema:
{"error": {"code": "...", "message": "...", "timestamp": "...", "path": "...", "details": {...}}}. - Global
HTTPExceptionand uncaught exception handlers.
- Unified error schema:
- Upload Retention & Cleanup Engine (
app/backend/main.py, GAP-18):- Lifespan-managed background task pruning uploaded rasters older than
upload_ttl_hours(default: 24h).
- Lifespan-managed background task pruning uploaded rasters older than
- FastAPI TestClient Integration Test Suite (
tests/test_api_integration.py, GAP-15):- 25 end-to-end integration tests covering health, upload, validation, rejection, routing, and field pack export.
- Automated test suite expanded to 143 tests passing at 100% in ~17.5s.
- Security Policy (
SECURITY.md):- Official vulnerability reporting protocol, response timeline, and supported versions.
[v1.0.0] - 2026-10-06 — 🛰️ Production Ready Prototype
Added
-
Global Edge Terminal: Deployed live mission control interface to Cloudflare Workers Static Assets at
https://satquery-ai.aakash1552005.workers.dev/. -
Aerospace GIS Workstation UI:
- Rebuilt
app/frontend/index.htmladhering to aerospace defense terminal standards. - Custom geometric satellite aperture vector favicon at
/favicon.svg. - Dynamic Telemetry Switcher supporting local backends (
http://127.0.0.1:8000), secure Cloudflare tunnels, and remote GPU endpoints. - Pure SVG telemetry indicators, tactical export trays, and live agreement matrix visualization.
- Rebuilt
-
Deterministic Scientific GIS Core:
-
src/analysis/sar_tools.py: Linear power domain Refined Lee Speckle Filtering ($10^{\text{dB}/10}$ ), bounded Otsu thresholding$[-25.0, -10.0\text{ dB}]$ , and dual-polarization cross-ratio ($\sigma^0_{VV} - \sigma^0_{VH}$ ). -
src/analysis/optical_tools.py: Zero-division guarded spectral indices (NDVI, NDWI, MNDWI) and 5-class rule-based spectral land cover classifier. -
src/analysis/fusion_engine.py: Optical-SAR cross-modal consensus and physical agreement matrix generation. -
src/analysis/change_engine.py: Bi-temporal physical difference engine with L1 radiometric change gating.
-
-
Careful Coordinator & Verification Subsystem:
-
src/router/router.py: Sensor-aware query parsing, strict SAR-optical separation, and sufficiency refusal gates. -
src/verification/numerical_guard.py: Deterministic token auditor locking LLM text strictly to certified GIS calculations (0.0% area error). -
src/reporting/field_pack.py: 1-Click Air-Gapped Field Pack exporter bundling GeoJSON (RFC 7946), offline HTML reports, and provenance checksums.
-
-
Comprehensive SIH 2026 Presentation Package:
-
sih_presentation/SatQuery_AI_SIH2026_SatSense_V2.pptx: Official 16:9 widescreen presentation deck. -
sih_presentation/index.html: Interactive web presentation with timer and speaker notes drawer. -
sih_presentation/SPEAKER_NOTES_AND_DEFENSE_GUIDE.md: Word-for-word 3-minute pitch script and 10 lethal jury question defenses.
-
-
Automated Test Suite:
- 14 test suites covering 118 unit and integration tests passing at 100% in 19.2s (
pytest tests/).
- 14 test suites covering 118 unit and integration tests passing at 100% in 19.2s (
-
Open Source Standards:
- Apache-2.0 License (
LICENSE). - Standard PEP 517/621 packaging (
pyproject.toml). - GitHub Actions automated CI workflow (
.github/workflows/ci.yml).
- Apache-2.0 License (