File size: 6,235 Bytes
dfe79b9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
# Changelog

All notable changes to SatQuery AI. Dates are ISO-8601. This changelog records **what changed and
what was verified**, and marks unresolved items honestly rather than omitting them.

Status tags: `RESOLVED` · `OPEN` · `CLOSED` · `DEFERRED` · `REJECTED`.

---

## [1.0.0] — 2026-09-25 — Final documentation, model release and archival freeze

The release that makes the project legible and citable: repository documentation, research
documentation, model documentation, a Hugging Face model release, a curated public repository, and a
verified evidence archive.

### Added
- **Repository README** (27 sections) — motivation through citation, with the deployed topology, the
  six supported tasks, routing, the eight execution events, measured results, live validation, and
  known limitations.
- **Research documentation set** — `ARCHITECTURE.md`, `MODELS.md`, `BENCHMARKS.md`, `DATASETS.md`,
  `TRAINING.md`, `EVALUATION.md`, `DEPLOYMENT.md`, `REPRODUCIBILITY.md`, `LIMITATIONS.md`,
  `RESEARCH_NOTES.md`, `CHANGELOG.md`.
- **Model documentation** — `MODEL_CARD.md`, generated `models/manifest.json` and
  `models/checksums.sha256`.
- **Hugging Face release** of the six trained artifacts to `thundercode/SatQuery`, with a verification
  record.
- **Curated public repository** at `Anish-lab-blip/SatQuery-AI` with a release manifest.
- **Evidence archive** (ZIP64, artifacts verbatim) with an integrity-verified extraction and a
  documented remote location.
- **Metric verification tool** — `tools/verify_readme_metrics.py`, checking all 20 quoted metrics and
  the status assertions against their artifacts.

### Changed
- The monorepo `README.md` was **materially stale** and is superseded by this release's README. The
  stale version called the frontend "hermetic — no backend calls", put Render/Codespace as
  "in progress", described a `/v1/*` contract, and pointed at the untracked `deploy/` as the
  deployment source. All four were wrong.
- `hf/` documentation was **stale** — it asserted the project "does not own any model weights … ships
  no weights, no binaries, and no large artifacts" and "has no Hugging Face credentials". Both were
  false at release time and are corrected.

### Fixed
- **Router defect** — *"Where are the built-up areas in this image?"* collapsed to `vqa` and answered
  "River". Fixed in the dispatch path and validated across three independent live passes (8/8 each).
  `RESOLVED`.
- **Live-validation harness false positive** — synthetic CDP key events were silently dropped when the
  window lacked OS focus, so the harness dispatched the page's default query and recorded a false
  pass. Fixed with pre-dispatch form-state assertions. `RESOLVED`.
- **Bundled EO change pair** — the demo pair differed in shape (726² vs 736²) and errored. Replaced
  with a same-shape pair (both 720×720). `RESOLVED` (supersedes `FINAL_DELIVERY_REPORT.md` §6).
- **B-01 (Hugging Face header link)** — previously `BLOCKED`; the link is now live on all 11 pages.
  `CLOSED`.

### Known issues at this release
- **B-07** — transient tunnel-agent gaps; a request can hang or return 504. Patch prepared, **NOT
  deployed**. `OPEN`.
- **B-02** — `/api/health` `codespace_name` carries a trailing `\n`. Cosmetic. `OPEN`.
- **No `LICENSE` file** exists. `OPEN`.
- **No system-level end-to-end benchmark** exists. `NOT RUN`.
- **Router test split** never scored. `NOT RUN`.
- **Calibration** worsened ECE (0.013755 → 0.014929). Retained as part of the frozen config only.
- **VLM adapter** is `ACCEPTANCE-REJECTED` despite usable metrics; the deployed path uses the
  unadapted model.
- **optical-SAR** and **change-VQA** rulings remain `OPEN`.

### Deployment revisions at this release
| Component | Revision |
|---|---|
| Frontend | `2d7ae53b482d` |
| Backend | `89d80eaddec5` |
| Inference | `5a0936ace491` |
| Public umbrella | `3dcabd32da41` |

---

## [0.9.0] — 2026-09-25 — Router-defect sprint

- Diagnosed and fixed the router misroute (region queries → `vqa`).
- Deployed three commits to the frontend.
- Ran **3 independent live validation passes**, 8/8 each — 24 live runs, 24 correct dispatches,
  0 mock nodes, trace fill 94.4444 %.
- Wrote the delivery report and handoff.

---

## [0.8.0] — 2026-09-24/25 — Deployment hardening

- Live topology settled on **Cloudflare Pages → Render → outbound tunnel → Codespace** (CPU).
- Closed the five historical backend blockers (ASGI stack in requirements; `$PORT` read; `OPTIONS`
  preflight; fail-fast app construction; adapter integrity compared against an expected digest).
- Documented cold start; `transport_mode: auto` fallthrough recorded.

---

## [0.7.0] — Grounding and change heads

- Grounding: trainable head over frozen RemoteCLIP ViT-B/32. Resolution **224 chosen, 448 rejected**
  by a pre-registered paired test.
- Change: STANet-style Siamese detector on LEVIR-CD-256 — the only `VERIFIED` headline metric.
- Optical-SAR: CROMA-base fusion head, seed sweep, pre-registered 115-class metric.

---

## [0.6.0] — VLM adaptation

- SmolVLM-500M LoRA adapter trained (PEFT 0.19.1, r = 16, α = 32).
- Metrics usable (exact_match 0.963) but **acceptance-rejected** for promotion. `REJECTED`.
- Findings F5-1/F5-2/F5-3 recorded (loader class, ~17× processor overrun, chat-template requirement).

---

## [0.5.0] — Router

- 50,822-parameter adapter over frozen MiniLM; cached embeddings; CPU-only training (0.28 s for 20
  epochs / 4,096 vectors).
- Group-based splits with hard negatives in the test split.

---

## [0.1.0] — Foundation

- Monorepo, frozen configuration registry (`configs/base.yaml`), config-hash freeze
  (`78f1e3700da15aa1`), nine-state controller, four-endpoint inference contract, evidence schema
  (`Region` / `ChangeRegion`), eight frontend execution events.

---

## Unreleased / open

| Item | State |
|---|---|
| Deploy the B-07 tunnel-fallthrough fix | prepared, **NOT deployed** |
| Score the router test split | **NOT RUN** |
| Build a system-level end-to-end benchmark | **NOT RUN** |
| Select a licence | **OPEN** |
| Resolve the optical-SAR and change-VQA rulings | **OPEN** |
| Plot the calibrated reliability curve | **NOT RUN** |