update to 0.26.0. Big chonking update including 0.23, 0.24, and 0.25 as well. #33
@@ -8,6 +8,32 @@ All notable changes to seismo-relay are documented here.
|
||||
|
||||
---
|
||||
|
||||
## v0.25.0 — 2026-08-25
|
||||
|
||||
**reviewed_real 3-state review flag + twin review-propagation.** The
|
||||
`events` table and the `/db/events` feed now carry `reviewed_real`, a
|
||||
3-state review flag mutually exclusive with `false_trigger`, mirrored from
|
||||
the sidecar review block — plus histogram/waveform twin review-propagation
|
||||
(flagging one flags both, matched by serial + identical PVS + timestamp
|
||||
window).
|
||||
|
||||
### Added
|
||||
|
||||
- **`events` column** `reviewed_real` — `INTEGER NOT NULL DEFAULT 0`, added
|
||||
via the existing incremental `_migrate` ADD COLUMN pass (auto-migrates on
|
||||
`SeismoDb()` construction, no manual migration). `query_events` /
|
||||
`get_event` (and thus `/db/events`) return it automatically (`SELECT *`).
|
||||
- **Mutual exclusivity with `false_trigger`** — setting `reviewed_real=1`
|
||||
clears `false_trigger`, and vice versa, both via `set_false_trigger` /
|
||||
the sidecar review PATCH path.
|
||||
- **`find_twins`** — matches an event's histogram/waveform twins by serial +
|
||||
identical peak-vector-sum + a timestamp window.
|
||||
- **`propagate_review_to_twins`** — copies an event's `false_trigger`/
|
||||
`reviewed_real` state onto its twins, wired into the
|
||||
`PATCH /db/events/{id}/sidecar` review path so flagging one flags both.
|
||||
|
||||
---
|
||||
|
||||
## v0.24.0 — 2026-08-22
|
||||
|
||||
**Waveform-shape metrics on events.** The `events` table and the `/db/events`
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
||||
|
||||
[project]
|
||||
name = "seismo-relay"
|
||||
version = "0.24.0"
|
||||
version = "0.25.0"
|
||||
description = "Python client and REST server for MiniMate Plus seismographs"
|
||||
requires-python = ">=3.10"
|
||||
dependencies = [
|
||||
|
||||
+1
-1
@@ -90,7 +90,7 @@ app = FastAPI(
|
||||
"Implements the minimateplus RS-232 protocol library.\n"
|
||||
"Proxied by terra-view at /api/sfm/*."
|
||||
),
|
||||
version="0.24.0",
|
||||
version="0.25.0",
|
||||
)
|
||||
|
||||
# Allow requests from the waveform viewer opened as a local file (file://)
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
from __future__ import annotations
|
||||
import os, sys
|
||||
from pathlib import Path
|
||||
|
||||
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
||||
from sfm.database import SeismoDb
|
||||
from minimateplus.models import Event
|
||||
|
||||
|
||||
def test_query_events_includes_reviewed_real(tmp_path: Path):
|
||||
db = SeismoDb(tmp_path / "s.db")
|
||||
ev = Event(index=0)
|
||||
ev._waveform_key = bytes.fromhex("01110000")
|
||||
db.insert_events([ev], serial="BE1")
|
||||
assert "reviewed_real" in db.query_events(serial="BE1")[0]
|
||||
Reference in New Issue
Block a user