Image-to-Text
PyTorch
Safetensors
PEFT
English
remote-sensing
satellite-imagery
earth-observation
change-detection
visual-grounding
image-captioning
visual-question-answering
optical-sar-fusion
sar
multimodal
lora
Instructions to use thundercode/SatQuery with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use thundercode/SatQuery with PEFT:
Task type is invalid.
- Notebooks
- Google Colab
- Kaggle
release: add docs/CHANGELOG.md
Browse files- docs/CHANGELOG.md +88 -30
docs/CHANGELOG.md
CHANGED
|
@@ -9,28 +9,50 @@ Status tags: `RESOLVED` Β· `OPEN` Β· `CLOSED` Β· `DEFERRED` Β· `REJECTED`.
|
|
| 9 |
|
| 10 |
## [1.0.0] β 2026-09-25 β Final documentation, model release and archival freeze
|
| 11 |
|
| 12 |
-
The release that makes the project legible and
|
| 13 |
-
documentation, model documentation, a Hugging Face model release, a
|
| 14 |
-
verified evidence archive.
|
| 15 |
|
| 16 |
### Added
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
- **
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
- **
|
| 24 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 25 |
- **Hugging Face release** of the six trained artifacts to `thundercode/SatQuery`, with a verification
|
| 26 |
-
record.
|
| 27 |
-
-
|
| 28 |
-
- **
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
the status assertions against their artifacts.
|
| 32 |
|
| 33 |
### Changed
|
|
|
|
| 34 |
- The monorepo `README.md` was **materially stale** and is superseded by this release's README. The
|
| 35 |
stale version called the frontend "hermetic β no backend calls", put Render/Codespace as
|
| 36 |
"in progress", described a `/v1/*` contract, and pointed at the untracked `deploy/` as the
|
|
@@ -40,6 +62,7 @@ verified evidence archive.
|
|
| 40 |
false at release time and are corrected.
|
| 41 |
|
| 42 |
### Fixed
|
|
|
|
| 43 |
- **Router defect** β *"Where are the built-up areas in this image?"* collapsed to `vqa` and answered
|
| 44 |
"River". Fixed in the dispatch path and validated across three independent live passes (8/8 each).
|
| 45 |
`RESOLVED`.
|
|
@@ -50,8 +73,12 @@ verified evidence archive.
|
|
| 50 |
with a same-shape pair (both 720Γ720). `RESOLVED` (supersedes `FINAL_DELIVERY_REPORT.md` Β§6).
|
| 51 |
- **B-01 (Hugging Face header link)** β previously `BLOCKED`; the link is now live on all 11 pages.
|
| 52 |
`CLOSED`.
|
|
|
|
|
|
|
|
|
|
| 53 |
|
| 54 |
### Known issues at this release
|
|
|
|
| 55 |
- **B-07** β transient tunnel-agent gaps; a request can hang or return 504. Patch prepared, **NOT
|
| 56 |
deployed**. `OPEN`.
|
| 57 |
- **B-02** β `/api/health` `codespace_name` carries a trailing `\n`. Cosmetic. `OPEN`.
|
|
@@ -64,6 +91,7 @@ verified evidence archive.
|
|
| 64 |
- **optical-SAR** and **change-VQA** rulings remain `OPEN`.
|
| 65 |
|
| 66 |
### Deployment revisions at this release
|
|
|
|
| 67 |
| Component | Revision |
|
| 68 |
|---|---|
|
| 69 |
| Frontend | `2d7ae53b482d` |
|
|
@@ -75,11 +103,14 @@ verified evidence archive.
|
|
| 75 |
|
| 76 |
## [0.9.0] β 2026-09-25 β Router-defect sprint
|
| 77 |
|
| 78 |
-
- Diagnosed and fixed the router misroute (region queries β `vqa`)
|
|
|
|
|
|
|
| 79 |
- Deployed three commits to the frontend.
|
| 80 |
-
- Ran **3 independent live validation passes**, 8/8 each β 24 live runs, 24 correct dispatches,
|
| 81 |
-
0 mock nodes, trace fill 94.4444 %.
|
| 82 |
-
- Wrote the delivery report and handoff.
|
|
|
|
| 83 |
|
| 84 |
---
|
| 85 |
|
|
@@ -88,23 +119,26 @@ verified evidence archive.
|
|
| 88 |
- Live topology settled on **Cloudflare Pages β Render β outbound tunnel β Codespace** (CPU).
|
| 89 |
- Closed the five historical backend blockers (ASGI stack in requirements; `$PORT` read; `OPTIONS`
|
| 90 |
preflight; fail-fast app construction; adapter integrity compared against an expected digest).
|
| 91 |
-
- Documented cold start; `transport_mode: auto` fallthrough
|
| 92 |
|
| 93 |
---
|
| 94 |
|
| 95 |
## [0.7.0] β Grounding and change heads
|
| 96 |
|
| 97 |
-
- Grounding: trainable head over frozen RemoteCLIP ViT-B/32. Resolution **224 chosen, 448
|
| 98 |
-
by a pre-registered paired test.
|
| 99 |
-
- Change: STANet-style Siamese detector on LEVIR-CD-256 β the only `VERIFIED` headline metric
|
| 100 |
-
|
|
|
|
|
|
|
| 101 |
|
| 102 |
---
|
| 103 |
|
| 104 |
## [0.6.0] β VLM adaptation
|
| 105 |
|
| 106 |
-
- SmolVLM-500M LoRA adapter trained (PEFT 0.19.1, r = 16, Ξ± = 32).
|
| 107 |
-
- Metrics usable (exact_match 0.963) but **
|
|
|
|
| 108 |
- Findings F5-1/F5-2/F5-3 recorded (loader class, ~17Γ processor overrun, chat-template requirement).
|
| 109 |
|
| 110 |
---
|
|
@@ -113,7 +147,9 @@ verified evidence archive.
|
|
| 113 |
|
| 114 |
- 50,822-parameter adapter over frozen MiniLM; cached embeddings; CPU-only training (0.28 s for 20
|
| 115 |
epochs / 4,096 vectors).
|
| 116 |
-
- Group-based splits with hard negatives in the test split.
|
|
|
|
|
|
|
| 117 |
|
| 118 |
---
|
| 119 |
|
|
@@ -121,7 +157,7 @@ verified evidence archive.
|
|
| 121 |
|
| 122 |
- Monorepo, frozen configuration registry (`configs/base.yaml`), config-hash freeze
|
| 123 |
(`78f1e3700da15aa1`), nine-state controller, four-endpoint inference contract, evidence schema
|
| 124 |
-
(`Region` / `ChangeRegion`), eight frontend execution events.
|
| 125 |
|
| 126 |
---
|
| 127 |
|
|
@@ -135,3 +171,25 @@ verified evidence archive.
|
|
| 135 |
| Select a licence | **OPEN** |
|
| 136 |
| Resolve the optical-SAR and change-VQA rulings | **OPEN** |
|
| 137 |
| Plot the calibrated reliability curve | **NOT RUN** |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 9 |
|
| 10 |
## [1.0.0] β 2026-09-25 β Final documentation, model release and archival freeze
|
| 11 |
|
| 12 |
+
The release that makes the project legible, citable and reproducible: repository documentation, a
|
| 13 |
+
deep research/engineering documentation set, model documentation, a Hugging Face model release, a
|
| 14 |
+
curated public repository, and a verified evidence archive.
|
| 15 |
|
| 16 |
### Added
|
| 17 |
+
|
| 18 |
+
**Documentation**
|
| 19 |
+
|
| 20 |
+
- **Repository README** β motivation through citation, with the deployed topology, the six supported
|
| 21 |
+
tasks, routing, the eight execution events, measured results, live validation, and known
|
| 22 |
+
limitations.
|
| 23 |
+
- **Deep architecture reference** (hub + 10 chapters):
|
| 24 |
+
| Chapter | Topic |
|
| 25 |
+
|---|---|
|
| 26 |
+
| `docs/ARCHITECTURE.md` | hub: thesis, sub-document index, cross-cutting principles |
|
| 27 |
+
| `docs/architecture/01-system-overview.md` | thesis, component inventory, frozen-backbone strategy |
|
| 28 |
+
| `docs/architecture/02-deployment-topology.md` | four tiers, gateway, tunnel, wake flow, cold start |
|
| 29 |
+
| `docs/architecture/03-request-lifecycle.md` | the nine-state controller, validation, tiling |
|
| 30 |
+
| `docs/architecture/04-router.md` | frozen MiniLM, the 5-head adapter, `interpret()` vs `chooseTask()`, lexical fallback |
|
| 31 |
+
| `docs/architecture/05-specialists.md` | all six tasks in depth |
|
| 32 |
+
| `docs/architecture/06-evidence-and-confidence.md` | evidence aggregation, temperature scaling, the eight events |
|
| 33 |
+
| `docs/architecture/07-configuration-freeze.md` | the registry, enforced invariants, the config hash |
|
| 34 |
+
| `docs/architecture/08-api-contract.md` | the four endpoints, envelopes, error codes |
|
| 35 |
+
| `docs/architecture/09-frontend.md` | the static pages, real-vs-preview, platform traps |
|
| 36 |
+
| `docs/architecture/10-observability-and-ops.md` | health, counters, traces, what is not observed |
|
| 37 |
+
- **Research documentation** β `MODELS.md`, `BENCHMARKS.md`, `DATASETS.md`, `TRAINING.md`,
|
| 38 |
+
`EVALUATION.md`, `DEPLOYMENT.md`, `REPRODUCIBILITY.md`, `LIMITATIONS.md`, `RESEARCH_NOTES.md`,
|
| 39 |
+
`CHANGELOG.md`.
|
| 40 |
+
- **Model documentation** β `MODEL_CARD.md`, plus **generated** `models/manifest.json` and
|
| 41 |
+
`models/checksums.sha256` (computed by reading the files, never typed).
|
| 42 |
+
- **Metric verification tooling** β `release/tools/verify_readme_metrics.py`, which walks every quoted
|
| 43 |
+
metric to its source artifact. Result: **`ALL CLAIMS VERIFIED`** (20/20).
|
| 44 |
+
|
| 45 |
+
**Release**
|
| 46 |
+
|
| 47 |
- **Hugging Face release** of the six trained artifacts to `thundercode/SatQuery`, with a verification
|
| 48 |
+
record (`HF_RELEASE_VERIFICATION.md`). Independent re-download confirmed **6/6 artifacts
|
| 49 |
+
byte-identical**.
|
| 50 |
+
- **Curated public repository** at `Anish-lab-blip/SatQuery-AI` with `RELEASE_MANIFEST.md`.
|
| 51 |
+
- **Evidence archive** (ZIP64, `artifacts/` verbatim per owner decision G3) with an integrity-verified
|
| 52 |
+
extraction and a documented remote location.
|
|
|
|
| 53 |
|
| 54 |
### Changed
|
| 55 |
+
|
| 56 |
- The monorepo `README.md` was **materially stale** and is superseded by this release's README. The
|
| 57 |
stale version called the frontend "hermetic β no backend calls", put Render/Codespace as
|
| 58 |
"in progress", described a `/v1/*` contract, and pointed at the untracked `deploy/` as the
|
|
|
|
| 62 |
false at release time and are corrected.
|
| 63 |
|
| 64 |
### Fixed
|
| 65 |
+
|
| 66 |
- **Router defect** β *"Where are the built-up areas in this image?"* collapsed to `vqa` and answered
|
| 67 |
"River". Fixed in the dispatch path and validated across three independent live passes (8/8 each).
|
| 68 |
`RESOLVED`.
|
|
|
|
| 73 |
with a same-shape pair (both 720Γ720). `RESOLVED` (supersedes `FINAL_DELIVERY_REPORT.md` Β§6).
|
| 74 |
- **B-01 (Hugging Face header link)** β previously `BLOCKED`; the link is now live on all 11 pages.
|
| 75 |
`CLOSED`.
|
| 76 |
+
- **Metric-verifier dotted-path bug** β the resolver split the artifact key `"0.50"` on its own dot,
|
| 77 |
+
producing a false `NOKEY` for the two grounding recall claims. Fixed to prefer the **longest**
|
| 78 |
+
matching key at each step.
|
| 79 |
|
| 80 |
### Known issues at this release
|
| 81 |
+
|
| 82 |
- **B-07** β transient tunnel-agent gaps; a request can hang or return 504. Patch prepared, **NOT
|
| 83 |
deployed**. `OPEN`.
|
| 84 |
- **B-02** β `/api/health` `codespace_name` carries a trailing `\n`. Cosmetic. `OPEN`.
|
|
|
|
| 91 |
- **optical-SAR** and **change-VQA** rulings remain `OPEN`.
|
| 92 |
|
| 93 |
### Deployment revisions at this release
|
| 94 |
+
|
| 95 |
| Component | Revision |
|
| 96 |
|---|---|
|
| 97 |
| Frontend | `2d7ae53b482d` |
|
|
|
|
| 103 |
|
| 104 |
## [0.9.0] β 2026-09-25 β Router-defect sprint
|
| 105 |
|
| 106 |
+
- Diagnosed and fixed the router misroute (region queries β `vqa`): the temporal slot in
|
| 107 |
+
`interpret()` now derives from `changeStem` / `pairWording` / `newAsChange`; `built` was dropped as a
|
| 108 |
+
change marker; the quantifier `area` was tightened to `\barea\b`.
|
| 109 |
- Deployed three commits to the frontend.
|
| 110 |
+
- Ran **3 independent live validation passes**, 8/8 each β **24 live runs, 24 correct dispatches,
|
| 111 |
+
0 mock nodes, trace fill 94.4444 %**.
|
| 112 |
+
- Wrote the delivery report and the handoff.
|
| 113 |
+
- Prepared (but did not deploy) the B-07 backend patch.
|
| 114 |
|
| 115 |
---
|
| 116 |
|
|
|
|
| 119 |
- Live topology settled on **Cloudflare Pages β Render β outbound tunnel β Codespace** (CPU).
|
| 120 |
- Closed the five historical backend blockers (ASGI stack in requirements; `$PORT` read; `OPTIONS`
|
| 121 |
preflight; fail-fast app construction; adapter integrity compared against an expected digest).
|
| 122 |
+
- Documented cold start; recorded the `transport_mode: auto` fallthrough.
|
| 123 |
|
| 124 |
---
|
| 125 |
|
| 126 |
## [0.7.0] β Grounding and change heads
|
| 127 |
|
| 128 |
+
- **Grounding**: trainable head over frozen RemoteCLIP ViT-B/32. Resolution **224 chosen, 448
|
| 129 |
+
REJECTED** by a pre-registered paired test (mean best IoU β0.0147, t = β22.63).
|
| 130 |
+
- **Change**: STANet-style Siamese detector on LEVIR-CD-256 β the only `VERIFIED` headline metric
|
| 131 |
+
(pooled IoU 0.8122 / macro IoU 0.8457 / pooled F1 0.8964).
|
| 132 |
+
- **Optical-SAR**: CROMA-base fusion head, armA/armB Γ seeds 100β104 sweep, pre-registered 115-class
|
| 133 |
+
metric (accuracy 0.931 / macro-F1 0.434161, ruling `OPEN`).
|
| 134 |
|
| 135 |
---
|
| 136 |
|
| 137 |
## [0.6.0] β VLM adaptation
|
| 138 |
|
| 139 |
+
- SmolVLM-500M LoRA adapter trained (PEFT 0.19.1, r = 16, Ξ± = 32, dropout 0.05, fp16).
|
| 140 |
+
- Metrics usable (exact_match 0.963, F1 0.96432) but **ACCEPTANCE-REJECTED** for promotion.
|
| 141 |
+
`REJECTED`.
|
| 142 |
- Findings F5-1/F5-2/F5-3 recorded (loader class, ~17Γ processor overrun, chat-template requirement).
|
| 143 |
|
| 144 |
---
|
|
|
|
| 147 |
|
| 148 |
- 50,822-parameter adapter over frozen MiniLM; cached embeddings; CPU-only training (0.28 s for 20
|
| 149 |
epochs / 4,096 vectors).
|
| 150 |
+
- Group-based splits with hard negatives placed in the test split.
|
| 151 |
+
- Deterministic lexical fallback with ordered precedence and a `self_check()` against curated hard
|
| 152 |
+
negatives.
|
| 153 |
|
| 154 |
---
|
| 155 |
|
|
|
|
| 157 |
|
| 158 |
- Monorepo, frozen configuration registry (`configs/base.yaml`), config-hash freeze
|
| 159 |
(`78f1e3700da15aa1`), nine-state controller, four-endpoint inference contract, evidence schema
|
| 160 |
+
(`Region` / `ChangeRegion` / `Evidence`), eight frontend execution events.
|
| 161 |
|
| 162 |
---
|
| 163 |
|
|
|
|
| 171 |
| Select a licence | **OPEN** |
|
| 172 |
| Resolve the optical-SAR and change-VQA rulings | **OPEN** |
|
| 173 |
| Plot the calibrated reliability curve | **NOT RUN** |
|
| 174 |
+
| Replace the illustrative benchmark adapter numbers with real runs | **NOT RUN** |
|
| 175 |
+
|
| 176 |
+
---
|
| 177 |
+
|
| 178 |
+
## Documentation inventory shipped in 1.0.0
|
| 179 |
+
|
| 180 |
+
| File | Purpose |
|
| 181 |
+
|---|---|
|
| 182 |
+
| `README.md` | repository front page |
|
| 183 |
+
| `MODEL_CARD.md` | model card for the six trained artifacts |
|
| 184 |
+
| `docs/ARCHITECTURE.md` + `docs/architecture/01β¦10` | the deep architecture reference |
|
| 185 |
+
| `docs/MODELS.md` | model detail, hyperparameters, acceptance status |
|
| 186 |
+
| `docs/BENCHMARKS.md` | every measured metric with its artifact and protocol |
|
| 187 |
+
| `docs/DATASETS.md` | dataset provenance, splits, leakage controls |
|
| 188 |
+
| `docs/TRAINING.md` | training procedures and hyperparameters |
|
| 189 |
+
| `docs/EVALUATION.md` | evaluation protocols and honesty rules |
|
| 190 |
+
| `docs/DEPLOYMENT.md` | live topology, env vars, mechanics, traps |
|
| 191 |
+
| `docs/REPRODUCIBILITY.md` | what can and cannot be reproduced |
|
| 192 |
+
| `docs/LIMITATIONS.md` | the full limitation catalogue |
|
| 193 |
+
| `docs/RESEARCH_NOTES.md` | engineering findings and negative results |
|
| 194 |
+
| `docs/CHANGELOG.md` | this file |
|
| 195 |
+
| `models/manifest.json`, `models/checksums.sha256` | generated artifact identities |
|