mirror of
https://github.com/zvx-echo6/meshai.git
synced 2026-08-26 17:31:34 +00:00
fix(fixtures): rewrite capture_fixtures.py to use ephemeral push subscribe
Previous script hardcoded stream="CENTRAL" which does not exist — Central partitions into domain streams (CENTRAL_QUAKE, CENTRAL_SPACE, etc.). It also called pull_subscribe_bind() without await, making the fetch a no-op. Fix: mirror the proven CentralConsumer.start() pattern — use js.subscribe(subject, cb=..., AckPolicy.NONE, no durable) which auto- discovers the correct stream via the subject filter, identical to how the live consumer binds. Messages are funnelled through asyncio.Queue with an idle-timeout to detect drain completion. Adds live captured fixtures: - tests/fixtures/quake/ — 3 envelopes (CENTRAL_QUAKE stream, mode=all) - tests/fixtures/swpc/ — 40 envelopes (CENTRAL_SPACE, mode=all, proton_flux history) - tests/fixtures/swpc_last/ — 23 envelopes (mode=last: 21 alert variants + kindex + proton_flux) Avalanche: confirmed empty off-season (CENTRAL_AVY stream, 0 messages). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
f06bf3ce92
commit
a85a5adb72
67 changed files with 2592 additions and 89 deletions
|
|
@ -1,32 +1,35 @@
|
|||
"""Read-only ephemeral fixture capture from NATS JetStream.
|
||||
|
||||
Captures real Central CloudEvents envelopes WITHOUT disturbing the live
|
||||
durable consumers by using an ephemeral pull consumer (no durable name,
|
||||
AckPolicy.none, short inactive_threshold for auto-deletion).
|
||||
durable consumers by using an ephemeral push consumer (no durable name,
|
||||
AckPolicy.none). The consumer is subject-based, so it auto-discovers the
|
||||
correct stream (CENTRAL_QUAKE, CENTRAL_SPACE, …) exactly as the live
|
||||
CentralConsumer does in meshai/central/consumer.py.
|
||||
|
||||
Run from inside the meshai container::
|
||||
|
||||
docker exec meshai python /app/scripts/capture_fixtures.py \\
|
||||
--hazard earthquake_event \\
|
||||
--subject "central.usgs_quake.>" \\
|
||||
--mode all --max 20
|
||||
--hazard quake \\
|
||||
--subject "central.quake.event.>" \\
|
||||
--mode all --max 25
|
||||
|
||||
# Dry-run (count only, no file writes):
|
||||
docker exec meshai python /app/scripts/capture_fixtures.py \\
|
||||
--hazard earthquake_event \\
|
||||
--subject "central.usgs_quake.>" \\
|
||||
--mode all --max 20 --dry-run
|
||||
--hazard quake \\
|
||||
--subject "central.quake.event.>" \\
|
||||
--mode all --max 25 --dry-run
|
||||
|
||||
# Last-per-subject snapshot:
|
||||
docker exec meshai python /app/scripts/capture_fixtures.py \\
|
||||
--hazard nws \\
|
||||
--subject "central.nws.>" \\
|
||||
--hazard swpc \\
|
||||
--subject "central.space.>" \\
|
||||
--mode last
|
||||
|
||||
Modes
|
||||
-----
|
||||
--mode last DeliverPolicy.LAST_PER_SUBJECT — one message per subject key.
|
||||
Useful for a current-state snapshot.
|
||||
Useful for a current-state snapshot. Script stops after a
|
||||
short idle period (no new messages arriving).
|
||||
--mode all DeliverPolicy.ALL — bounded history. REQUIRED: --max N cap
|
||||
to avoid pulling 330k+ traffic messages.
|
||||
|
||||
|
|
@ -37,16 +40,30 @@ Each captured envelope is written as::
|
|||
tests/fixtures/<hazard>/<n>.json
|
||||
{
|
||||
"envelope": { ... }, # raw Central CloudEvents payload
|
||||
"subject": "central.usgs_quake.us7000xyz",
|
||||
"subject": "central.quake.event.minor.unknown",
|
||||
"captured_epoch": 1750000000
|
||||
}
|
||||
|
||||
Safety
|
||||
------
|
||||
The ephemeral consumer is created with AckPolicy.none and a 30-second
|
||||
inactive_threshold. It is never assigned a durable name, so it never
|
||||
advances the live durable consumers' sequence pointers and is automatically
|
||||
cleaned up by the NATS server after inactivity.
|
||||
The ephemeral consumer is created with AckPolicy.none and no durable name,
|
||||
so it never advances the live durable consumers' sequence pointers and is
|
||||
automatically cleaned up by the NATS server after inactivity. No config,
|
||||
no deploy, no restart changes are made.
|
||||
|
||||
Bug fix (2026-07-04)
|
||||
--------------------
|
||||
The previous version called js.add_consumer(stream, cfg) with a hardcoded
|
||||
stream name "CENTRAL" that does not exist — Central partitions streams by
|
||||
domain (CENTRAL_QUAKE, CENTRAL_SPACE, CENTRAL_WX, …). It then called
|
||||
pull_subscribe_bind() without await, making it a no-op coroutine object
|
||||
instead of an actual subscription, and the subsequent .fetch() raised
|
||||
AttributeError / NotFoundError.
|
||||
|
||||
Fix: mirror the proven pattern from meshai/central/consumer.py — use
|
||||
js.subscribe(subject, cb=..., config=ConsumerConfig(...)) with no durable
|
||||
name. The subject-based subscribe call auto-discovers the correct stream
|
||||
server-side, identical to how the live CentralConsumer binds.
|
||||
"""
|
||||
from __future__ import annotations
|
||||
|
||||
|
|
@ -63,6 +80,11 @@ import time
|
|||
# importable in unit-test environments without a running NATS server.
|
||||
# --------------------------------------------------------------------------
|
||||
|
||||
# Seconds with no incoming message before the capture loop stops.
|
||||
# Sufficient for both LAST_PER_SUBJECT (snapshot drains quickly) and ALL
|
||||
# (history replay has no inter-message gaps larger than this in practice).
|
||||
_IDLE_TIMEOUT = 4.0
|
||||
|
||||
|
||||
def _output_dir(hazard: str) -> pathlib.Path:
|
||||
"""Resolve tests/fixtures/<hazard>/ relative to the repo root."""
|
||||
|
|
@ -75,14 +97,13 @@ def _output_dir(hazard: str) -> pathlib.Path:
|
|||
async def _run(
|
||||
*,
|
||||
nats_url: str,
|
||||
stream: str,
|
||||
subject: str,
|
||||
hazard: str,
|
||||
mode: str,
|
||||
max_msgs: int,
|
||||
dry_run: bool,
|
||||
) -> int:
|
||||
"""Connect, create ephemeral consumer, pull messages, write fixtures.
|
||||
"""Connect, create ephemeral push consumer, collect messages, write fixtures.
|
||||
|
||||
Returns the count of messages captured (or counted, for --dry-run).
|
||||
"""
|
||||
|
|
@ -93,87 +114,81 @@ async def _run(
|
|||
try:
|
||||
js = nc.jetstream()
|
||||
|
||||
# Build an ephemeral consumer config (no durable_name = ephemeral).
|
||||
# AckPolicy.none avoids needing to ack — purely read-only.
|
||||
# inactive_threshold of 30 s ensures the NATS server auto-deletes it.
|
||||
deliver_policy = (
|
||||
DeliverPolicy.LAST_PER_SUBJECT
|
||||
if mode == "last"
|
||||
else DeliverPolicy.ALL
|
||||
)
|
||||
cfg = ConsumerConfig(
|
||||
# durable_name intentionally omitted → ephemeral consumer
|
||||
filter_subject=subject,
|
||||
deliver_policy=deliver_policy,
|
||||
ack_policy=AckPolicy.NONE,
|
||||
inactive_threshold=30.0, # seconds → server auto-deletes after idle
|
||||
)
|
||||
|
||||
# Create ephemeral pull consumer (server-side, no local binding name).
|
||||
consumer_info = await js.add_consumer(stream, cfg)
|
||||
consumer_name = consumer_info.name
|
||||
# Funnel incoming messages into an asyncio Queue so the main loop
|
||||
# can apply the max-msgs cap and idle-timeout without threads.
|
||||
msg_q: asyncio.Queue = asyncio.Queue()
|
||||
|
||||
async def _on_msg(msg):
|
||||
await msg_q.put(msg)
|
||||
|
||||
# Ephemeral push subscribe — NO durable_name → server assigns a
|
||||
# transient consumer name and auto-deletes it after inactivity.
|
||||
# AckPolicy.NONE means we never ack, so no sequence cursor is
|
||||
# advanced on any durable consumer. The subject-based call
|
||||
# auto-discovers the correct NATS stream (CENTRAL_QUAKE,
|
||||
# CENTRAL_SPACE, etc.) — identical to CentralConsumer.start().
|
||||
sub = await js.subscribe(
|
||||
subject,
|
||||
cb=_on_msg,
|
||||
config=ConsumerConfig(
|
||||
deliver_policy=deliver_policy,
|
||||
ack_policy=AckPolicy.NONE,
|
||||
),
|
||||
)
|
||||
|
||||
out_dir = _output_dir(hazard)
|
||||
if not dry_run:
|
||||
out_dir.mkdir(parents=True, exist_ok=True)
|
||||
|
||||
captured = 0
|
||||
fetch_batch = min(max_msgs, 50) # pull in bounded batches
|
||||
|
||||
while captured < max_msgs:
|
||||
batch = min(fetch_batch, max_msgs - captured)
|
||||
try:
|
||||
msgs = await js.pull_subscribe_bind(
|
||||
stream, consumer_name
|
||||
).fetch(batch, timeout=5.0)
|
||||
except nats.errors.TimeoutError:
|
||||
break # no more messages within timeout
|
||||
|
||||
if not msgs:
|
||||
msg = await asyncio.wait_for(msg_q.get(), timeout=_IDLE_TIMEOUT)
|
||||
except asyncio.TimeoutError:
|
||||
# No new messages within idle window — snapshot is drained
|
||||
# (LAST_PER_SUBJECT) or history is exhausted (ALL).
|
||||
break
|
||||
|
||||
for msg in msgs:
|
||||
try:
|
||||
envelope = json.loads(msg.data)
|
||||
except Exception:
|
||||
continue # skip unparseable messages
|
||||
try:
|
||||
envelope = json.loads(msg.data)
|
||||
except Exception:
|
||||
continue # skip unparseable frames
|
||||
|
||||
if dry_run:
|
||||
captured += 1
|
||||
print(
|
||||
f" [dry-run] #{captured} subject={msg.subject!r}",
|
||||
file=sys.stderr,
|
||||
)
|
||||
else:
|
||||
record = {
|
||||
"envelope": envelope,
|
||||
"subject": msg.subject,
|
||||
"captured_epoch": int(time.time()),
|
||||
}
|
||||
out_path = out_dir / f"{captured:04d}.json"
|
||||
out_path.write_text(
|
||||
json.dumps(record, indent=2, ensure_ascii=False),
|
||||
encoding="utf-8",
|
||||
)
|
||||
captured += 1
|
||||
print(
|
||||
f" wrote {out_path.relative_to(pathlib.Path.cwd())} "
|
||||
f"subject={msg.subject!r}",
|
||||
file=sys.stderr,
|
||||
)
|
||||
if dry_run:
|
||||
captured += 1
|
||||
print(
|
||||
" [dry-run] #%d subject=%r" % (captured, msg.subject),
|
||||
file=sys.stderr,
|
||||
)
|
||||
else:
|
||||
record = {
|
||||
"envelope": envelope,
|
||||
"subject": msg.subject,
|
||||
"captured_epoch": int(time.time()),
|
||||
}
|
||||
out_path = out_dir / ("%04d.json" % captured)
|
||||
out_path.write_text(
|
||||
json.dumps(record, indent=2, ensure_ascii=False),
|
||||
encoding="utf-8",
|
||||
)
|
||||
captured += 1
|
||||
print(
|
||||
" wrote %s subject=%r" % (out_path, msg.subject),
|
||||
file=sys.stderr,
|
||||
)
|
||||
|
||||
if captured >= max_msgs:
|
||||
break
|
||||
|
||||
# For last-per-subject: a single fetch is sufficient.
|
||||
if mode == "last":
|
||||
break
|
||||
|
||||
# Delete the ephemeral consumer explicitly (belt-and-suspenders).
|
||||
# Unsubscribe: signals the server to clean up the ephemeral consumer.
|
||||
try:
|
||||
await js.delete_consumer(stream, consumer_name)
|
||||
await sub.unsubscribe()
|
||||
except Exception:
|
||||
pass # server already cleaned up, or error is non-fatal
|
||||
pass
|
||||
|
||||
return captured
|
||||
|
||||
|
|
@ -184,7 +199,6 @@ async def _run(
|
|||
|
||||
def _load_nats_url() -> str:
|
||||
"""Read the NATS URL from meshai config or env override."""
|
||||
# Allow an explicit env override for CI / ad-hoc use.
|
||||
if "MESHAI_NATS_URL" in os.environ:
|
||||
return os.environ["MESHAI_NATS_URL"]
|
||||
try:
|
||||
|
|
@ -202,9 +216,7 @@ def main(argv: list[str] | None = None) -> int:
|
|||
parser.add_argument("--hazard", required=True,
|
||||
help="Hazard category label (used as fixture sub-dir).")
|
||||
parser.add_argument("--subject", required=True,
|
||||
help="NATS subject filter, e.g. 'central.usgs_quake.>'.")
|
||||
parser.add_argument("--stream", default="CENTRAL",
|
||||
help="JetStream stream name (default: CENTRAL).")
|
||||
help="NATS subject filter, e.g. 'central.quake.event.>'.")
|
||||
parser.add_argument("--mode", choices=["last", "all"], default="all",
|
||||
help="DeliverPolicy: last=LAST_PER_SUBJECT, all=ALL (default: all).")
|
||||
parser.add_argument("--max", type=int, default=50, dest="max_msgs",
|
||||
|
|
@ -217,16 +229,14 @@ def main(argv: list[str] | None = None) -> int:
|
|||
|
||||
nats_url = args.nats_url or _load_nats_url()
|
||||
print(
|
||||
f"capture_fixtures: url={nats_url!r} stream={args.stream!r} "
|
||||
f"subject={args.subject!r} hazard={args.hazard!r} "
|
||||
f"mode={args.mode!r} max={args.max_msgs} dry_run={args.dry_run}",
|
||||
"capture_fixtures: url=%r subject=%r hazard=%r mode=%r max=%d dry_run=%s"
|
||||
% (nats_url, args.subject, args.hazard, args.mode, args.max_msgs, args.dry_run),
|
||||
file=sys.stderr,
|
||||
)
|
||||
|
||||
count = asyncio.run(
|
||||
_run(
|
||||
nats_url=nats_url,
|
||||
stream=args.stream,
|
||||
subject=args.subject,
|
||||
hazard=args.hazard,
|
||||
mode=args.mode,
|
||||
|
|
@ -236,7 +246,7 @@ def main(argv: list[str] | None = None) -> int:
|
|||
)
|
||||
|
||||
verb = "counted" if args.dry_run else "captured"
|
||||
print(f"{verb} {count} envelope(s) for hazard={args.hazard!r}", file=sys.stderr)
|
||||
print("%s %d envelope(s) for hazard=%r" % (verb, count, args.hazard), file=sys.stderr)
|
||||
return 0
|
||||
|
||||
|
||||
|
|
|
|||
82
work/tests/fixtures/quake/0000.json
vendored
Normal file
82
work/tests/fixtures/quake/0000.json
vendored
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "uu80143601",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.quake.event.minor.v1",
|
||||
"time": "2026-06-28T19:19:56.050000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "quake.event.minor",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "uu80143601",
|
||||
"adapter": "usgs_quake",
|
||||
"category": "quake.event.minor",
|
||||
"time": "2026-06-28T19:19:56.050000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": [
|
||||
-112.206666666667,
|
||||
42.2111666666667
|
||||
],
|
||||
"bbox": [
|
||||
-112.206666666667,
|
||||
42.2111666666667,
|
||||
-112.206666666667,
|
||||
42.2111666666667
|
||||
],
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"magnitude": 1.23,
|
||||
"place": "4 km ENE of Malad City, Idaho",
|
||||
"time_ms": 1782674396050,
|
||||
"updated_ms": 1782742438530,
|
||||
"tz": null,
|
||||
"url": "https://earthquake.usgs.gov/earthquakes/eventpage/uu80143601",
|
||||
"detail": "https://earthquake.usgs.gov/earthquakes/feed/v1.0/detail/uu80143601.geojson",
|
||||
"felt": null,
|
||||
"cdi": null,
|
||||
"mmi": null,
|
||||
"alert": null,
|
||||
"status": "reviewed",
|
||||
"tsunami": 0,
|
||||
"sig": 23,
|
||||
"net": "uu",
|
||||
"code": "80143601",
|
||||
"ids": ",uu80143601,",
|
||||
"sources": ",uu,",
|
||||
"types": ",origin,phase-data,",
|
||||
"nst": 10,
|
||||
"dmin": 0.1939,
|
||||
"rms": 0.1,
|
||||
"gap": 160,
|
||||
"magType": "md",
|
||||
"type": "earthquake",
|
||||
"title": "M 1.2 - 4 km ENE of Malad City, Idaho",
|
||||
"longitude": -112.206666666667,
|
||||
"latitude": 42.2111666666667,
|
||||
"depth": 3.06,
|
||||
"_enriched": {
|
||||
"geocoder": {
|
||||
"name": null,
|
||||
"city": null,
|
||||
"county": null,
|
||||
"state": null,
|
||||
"country": null,
|
||||
"postal_code": null,
|
||||
"timezone": "America/Boise",
|
||||
"landclass": "Deep Creek Roadless Area",
|
||||
"elevation_m": 1752.28515625
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.quake.event.minor.unknown",
|
||||
"captured_epoch": 1783196478
|
||||
}
|
||||
82
work/tests/fixtures/quake/0001.json
vendored
Normal file
82
work/tests/fixtures/quake/0001.json
vendored
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "uu80143651",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.quake.event.minor.v1",
|
||||
"time": "2026-06-29T12:09:25.630000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "quake.event.minor",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "uu80143651",
|
||||
"adapter": "usgs_quake",
|
||||
"category": "quake.event.minor",
|
||||
"time": "2026-06-29T12:09:25.630000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": [
|
||||
-111.2065,
|
||||
42.7483333333333
|
||||
],
|
||||
"bbox": [
|
||||
-111.2065,
|
||||
42.7483333333333,
|
||||
-111.2065,
|
||||
42.7483333333333
|
||||
],
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"magnitude": 2.37,
|
||||
"place": "17 km WSW of Auburn, Wyoming",
|
||||
"time_ms": 1782734965630,
|
||||
"updated_ms": 1782764579010,
|
||||
"tz": null,
|
||||
"url": "https://earthquake.usgs.gov/earthquakes/eventpage/uu80143651",
|
||||
"detail": "https://earthquake.usgs.gov/earthquakes/feed/v1.0/detail/uu80143651.geojson",
|
||||
"felt": null,
|
||||
"cdi": null,
|
||||
"mmi": null,
|
||||
"alert": null,
|
||||
"status": "reviewed",
|
||||
"tsunami": 0,
|
||||
"sig": 86,
|
||||
"net": "uu",
|
||||
"code": "80143651",
|
||||
"ids": ",uu80143651,",
|
||||
"sources": ",uu,",
|
||||
"types": ",origin,phase-data,",
|
||||
"nst": 21,
|
||||
"dmin": 0.07998,
|
||||
"rms": 0.18,
|
||||
"gap": 100,
|
||||
"magType": "ml",
|
||||
"type": "earthquake",
|
||||
"title": "M 2.4 - 17 km WSW of Auburn, Wyoming",
|
||||
"longitude": -111.2065,
|
||||
"latitude": 42.7483333333333,
|
||||
"depth": 4.18,
|
||||
"_enriched": {
|
||||
"geocoder": {
|
||||
"name": null,
|
||||
"city": null,
|
||||
"county": null,
|
||||
"state": null,
|
||||
"country": null,
|
||||
"postal_code": null,
|
||||
"timezone": "America/Boise",
|
||||
"landclass": "Stump Creek Roadless Area",
|
||||
"elevation_m": 2198.1875
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.quake.event.minor.unknown",
|
||||
"captured_epoch": 1783196478
|
||||
}
|
||||
82
work/tests/fixtures/quake/0002.json
vendored
Normal file
82
work/tests/fixtures/quake/0002.json
vendored
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "us6000t9bn",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.quake.event.light.v1",
|
||||
"time": "2026-07-01T00:35:15.247000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "quake.event.light",
|
||||
"centralseverity": 1,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "us6000t9bn",
|
||||
"adapter": "usgs_quake",
|
||||
"category": "quake.event.light",
|
||||
"time": "2026-07-01T00:35:15.247000Z",
|
||||
"expires": null,
|
||||
"severity": 1,
|
||||
"geo": {
|
||||
"centroid": [
|
||||
-112.6108,
|
||||
44.46
|
||||
],
|
||||
"bbox": [
|
||||
-112.6108,
|
||||
44.46,
|
||||
-112.6108,
|
||||
44.46
|
||||
],
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"magnitude": 3.3,
|
||||
"place": "19 km S of Lima, Montana",
|
||||
"time_ms": 1782866115247,
|
||||
"updated_ms": 1782867341040,
|
||||
"tz": null,
|
||||
"url": "https://earthquake.usgs.gov/earthquakes/eventpage/us6000t9bn",
|
||||
"detail": "https://earthquake.usgs.gov/earthquakes/feed/v1.0/detail/us6000t9bn.geojson",
|
||||
"felt": null,
|
||||
"cdi": null,
|
||||
"mmi": null,
|
||||
"alert": null,
|
||||
"status": "reviewed",
|
||||
"tsunami": 0,
|
||||
"sig": 168,
|
||||
"net": "us",
|
||||
"code": "6000t9bn",
|
||||
"ids": ",us6000t9bn,",
|
||||
"sources": ",us,",
|
||||
"types": ",origin,phase-data,",
|
||||
"nst": 52,
|
||||
"dmin": 0.159,
|
||||
"rms": 0.61,
|
||||
"gap": 45,
|
||||
"magType": "ml",
|
||||
"type": "earthquake",
|
||||
"title": "M 3.3 - 19 km S of Lima, Montana",
|
||||
"longitude": -112.6108,
|
||||
"latitude": 44.46,
|
||||
"depth": 11.169,
|
||||
"_enriched": {
|
||||
"geocoder": {
|
||||
"name": null,
|
||||
"city": null,
|
||||
"county": null,
|
||||
"state": null,
|
||||
"country": null,
|
||||
"postal_code": null,
|
||||
"timezone": "America/Boise",
|
||||
"landclass": "Upper Snake Field Office",
|
||||
"elevation_m": 2225.02734375
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.quake.event.light.unknown",
|
||||
"captured_epoch": 1783196478
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0000.json
vendored
Normal file
36
work/tests/fixtures/swpc/0000.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:15:00Z|>=1 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:15:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:15:00Z|>=1 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:15:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:15:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 28.766672134399414,
|
||||
"energy": ">=1 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0001.json
vendored
Normal file
36
work/tests/fixtures/swpc/0001.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:15:00Z|>=10 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:15:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:15:00Z|>=10 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:15:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:15:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.30123627185821533,
|
||||
"energy": ">=10 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0002.json
vendored
Normal file
36
work/tests/fixtures/swpc/0002.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:15:00Z|>=100 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:15:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:15:00Z|>=100 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:15:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:15:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.1961589753627777,
|
||||
"energy": ">=100 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0003.json
vendored
Normal file
36
work/tests/fixtures/swpc/0003.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:15:00Z|>=30 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:15:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:15:00Z|>=30 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:15:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:15:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.19939908385276794,
|
||||
"energy": ">=30 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0004.json
vendored
Normal file
36
work/tests/fixtures/swpc/0004.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:15:00Z|>=5 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:15:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:15:00Z|>=5 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:15:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:15:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.3074222505092621,
|
||||
"energy": ">=5 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0005.json
vendored
Normal file
36
work/tests/fixtures/swpc/0005.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:15:00Z|>=50 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:15:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:15:00Z|>=50 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:15:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:15:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.19789846241474152,
|
||||
"energy": ">=50 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0006.json
vendored
Normal file
36
work/tests/fixtures/swpc/0006.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:15:00Z|>=500 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:15:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:15:00Z|>=500 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:15:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:15:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.19208531081676483,
|
||||
"energy": ">=500 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0007.json
vendored
Normal file
36
work/tests/fixtures/swpc/0007.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:15:00Z|>=60 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:15:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:15:00Z|>=60 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:15:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:15:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.19741536676883698,
|
||||
"energy": ">=60 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0008.json
vendored
Normal file
36
work/tests/fixtures/swpc/0008.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:20:00Z|>=1 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:20:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:20:00Z|>=1 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:20:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:20:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 27.786531448364258,
|
||||
"energy": ">=1 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0009.json
vendored
Normal file
36
work/tests/fixtures/swpc/0009.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:20:00Z|>=10 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:20:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:20:00Z|>=10 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:20:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:20:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.2485874593257904,
|
||||
"energy": ">=10 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0010.json
vendored
Normal file
36
work/tests/fixtures/swpc/0010.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:20:00Z|>=100 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:20:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:20:00Z|>=100 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:20:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:20:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.1894887238740921,
|
||||
"energy": ">=100 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0011.json
vendored
Normal file
36
work/tests/fixtures/swpc/0011.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:20:00Z|>=30 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:20:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:20:00Z|>=30 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:20:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:20:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.19734397530555725,
|
||||
"energy": ">=30 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0012.json
vendored
Normal file
36
work/tests/fixtures/swpc/0012.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:20:00Z|>=5 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:20:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:20:00Z|>=5 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:20:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:20:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.2579914927482605,
|
||||
"energy": ">=5 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0013.json
vendored
Normal file
36
work/tests/fixtures/swpc/0013.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:20:00Z|>=50 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:20:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:20:00Z|>=50 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:20:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:20:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.19125120341777802,
|
||||
"energy": ">=50 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0014.json
vendored
Normal file
36
work/tests/fixtures/swpc/0014.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:20:00Z|>=500 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:20:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:20:00Z|>=500 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:20:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:20:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.18541516363620758,
|
||||
"energy": ">=500 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0015.json
vendored
Normal file
36
work/tests/fixtures/swpc/0015.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:20:00Z|>=60 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:20:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:20:00Z|>=60 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:20:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:20:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.19072958827018738,
|
||||
"energy": ">=60 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0016.json
vendored
Normal file
36
work/tests/fixtures/swpc/0016.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:25:00Z|>=1 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:25:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:25:00Z|>=1 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:25:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:25:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 27.72285270690918,
|
||||
"energy": ">=1 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0017.json
vendored
Normal file
36
work/tests/fixtures/swpc/0017.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:25:00Z|>=10 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:25:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:25:00Z|>=10 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:25:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:25:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.28919678926467896,
|
||||
"energy": ">=10 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0018.json
vendored
Normal file
36
work/tests/fixtures/swpc/0018.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:25:00Z|>=100 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:25:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:25:00Z|>=100 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:25:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:25:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.1840660572052002,
|
||||
"energy": ">=100 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0019.json
vendored
Normal file
36
work/tests/fixtures/swpc/0019.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:25:00Z|>=30 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:25:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:25:00Z|>=30 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:25:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:25:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.18692995607852936,
|
||||
"energy": ">=30 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0020.json
vendored
Normal file
36
work/tests/fixtures/swpc/0020.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:25:00Z|>=5 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:25:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:25:00Z|>=5 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:25:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:25:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.43121543526649475,
|
||||
"energy": ">=5 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0021.json
vendored
Normal file
36
work/tests/fixtures/swpc/0021.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:25:00Z|>=50 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:25:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:25:00Z|>=50 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:25:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:25:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.1857948750257492,
|
||||
"energy": ">=50 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0022.json
vendored
Normal file
36
work/tests/fixtures/swpc/0022.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:25:00Z|>=500 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:25:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:25:00Z|>=500 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:25:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:25:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.17474256455898285,
|
||||
"energy": ">=500 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0023.json
vendored
Normal file
36
work/tests/fixtures/swpc/0023.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:25:00Z|>=60 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:25:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:25:00Z|>=60 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:25:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:25:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.18532411754131317,
|
||||
"energy": ">=60 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0024.json
vendored
Normal file
36
work/tests/fixtures/swpc/0024.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:30:00Z|>=1 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:30:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:30:00Z|>=1 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:30:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:30:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 27.166194915771484,
|
||||
"energy": ">=1 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0025.json
vendored
Normal file
36
work/tests/fixtures/swpc/0025.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:30:00Z|>=10 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:30:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:30:00Z|>=10 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:30:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:30:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.3429813086986542,
|
||||
"energy": ">=10 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0026.json
vendored
Normal file
36
work/tests/fixtures/swpc/0026.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:30:00Z|>=100 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:30:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:30:00Z|>=100 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:30:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:30:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.23083794116973877,
|
||||
"energy": ">=100 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0027.json
vendored
Normal file
36
work/tests/fixtures/swpc/0027.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:30:00Z|>=30 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:30:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:30:00Z|>=30 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:30:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:30:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.23371955752372742,
|
||||
"energy": ">=30 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0028.json
vendored
Normal file
36
work/tests/fixtures/swpc/0028.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:30:00Z|>=5 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:30:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:30:00Z|>=5 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:30:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:30:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.39393070340156555,
|
||||
"energy": ">=5 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0029.json
vendored
Normal file
36
work/tests/fixtures/swpc/0029.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:30:00Z|>=50 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:30:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:30:00Z|>=50 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:30:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:30:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.23256810009479523,
|
||||
"energy": ">=50 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0030.json
vendored
Normal file
36
work/tests/fixtures/swpc/0030.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:30:00Z|>=500 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:30:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:30:00Z|>=500 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:30:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:30:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.226764515042305,
|
||||
"energy": ">=500 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0031.json
vendored
Normal file
36
work/tests/fixtures/swpc/0031.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:30:00Z|>=60 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:30:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:30:00Z|>=60 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:30:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:30:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.23209738731384277,
|
||||
"energy": ">=60 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0032.json
vendored
Normal file
36
work/tests/fixtures/swpc/0032.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:35:00Z|>=1 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:35:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:35:00Z|>=1 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:35:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:35:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 27.50701141357422,
|
||||
"energy": ">=1 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0033.json
vendored
Normal file
36
work/tests/fixtures/swpc/0033.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:35:00Z|>=10 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:35:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:35:00Z|>=10 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:35:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:35:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.22531083226203918,
|
||||
"energy": ">=10 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0034.json
vendored
Normal file
36
work/tests/fixtures/swpc/0034.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:35:00Z|>=100 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:35:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:35:00Z|>=100 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:35:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:35:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.16947858035564423,
|
||||
"energy": ">=100 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0035.json
vendored
Normal file
36
work/tests/fixtures/swpc/0035.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:35:00Z|>=30 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:35:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:35:00Z|>=30 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:35:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:35:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.17234553396701813,
|
||||
"energy": ">=30 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0036.json
vendored
Normal file
36
work/tests/fixtures/swpc/0036.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:35:00Z|>=5 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:35:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:35:00Z|>=5 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:35:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:35:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.22996729612350464,
|
||||
"energy": ">=5 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0037.json
vendored
Normal file
36
work/tests/fixtures/swpc/0037.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:35:00Z|>=50 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:35:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:35:00Z|>=50 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:35:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:35:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.1712087243795395,
|
||||
"energy": ">=50 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0038.json
vendored
Normal file
36
work/tests/fixtures/swpc/0038.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:35:00Z|>=500 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:35:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:35:00Z|>=500 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:35:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:35:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.1654052734375,
|
||||
"energy": ">=500 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
36
work/tests/fixtures/swpc/0039.json
vendored
Normal file
36
work/tests/fixtures/swpc/0039.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-06-27T20:35:00Z|>=60 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-06-27T20:35:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-06-27T20:35:00Z|>=60 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-06-27T20:35:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-06-27T20:35:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.17073801159858704,
|
||||
"energy": ">=60 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196490
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0000.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0000.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "A20F|2026-06-28 10:41:25.723",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-06-28T10:41:25.723000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "A20F|2026-06-28 10:41:25.723",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-06-28T10:41:25.723000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "A20F",
|
||||
"issue_datetime": "2026-06-28 10:41:25.723",
|
||||
"message": "Space Weather Message Code: WATA20\r\nSerial Number: 1114\r\nIssue Time: 2026 Jun 28 1041 UTC\r\n\r\nWATCH: Geomagnetic Storm Category G1 Predicted \nHighest Storm Level Predicted by Day:\nJun 28: None (Below G1) Jun 29: G1 (Minor) Jun 30: G1 (Minor) \nTHIS SUPERSEDES ANY/ALL PRIOR WATCHES IN EFFECT\nComment: \r\n\n\r\n\r\nNOAA Space Weather Scale descriptions can be found at\r\nwww.swpc.noaa.gov/noaa-scales-explanation\r\n\r\nPotential Impacts: Area of impact primarily poleward of 60 degrees Geomagnetic Latitude.\r\nInduced Currents - Weak power grid fluctuations can occur.\r\nSpacecraft - Minor impact on satellite operations possible.\r\nAurora - Aurora may be visible at high latitudes, i.e., northern tier of the U.S. such as northern Michigan and Maine."
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.a20f",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0001.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0001.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "P11W|2026-06-30 16:36:36.953",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-06-30T16:36:36.953000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "P11W|2026-06-30 16:36:36.953",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-06-30T16:36:36.953000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "P11W",
|
||||
"issue_datetime": "2026-06-30 16:36:36.953",
|
||||
"message": "Space Weather Message Code: WARPX1\r\nSerial Number: 627\r\nIssue Time: 2026 Jun 30 1636 UTC\r\n\r\nCANCEL WARNING: Proton 10MeV Integral Flux above 10pfu expected \nCancel Serial Number: 626\nOriginal Issue Time: 2026 Jun 30 1600 UTC\nConditions no longer justify warning.\r\n\nConditions no longer justify warning.NOAA Scale: S1 - Minor"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.p11w",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0002.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0002.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "TIVA|2026-06-03 01:43:20.793",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-06-03T01:43:20.793000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "TIVA|2026-06-03 01:43:20.793",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-06-03T01:43:20.793000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "TIVA",
|
||||
"issue_datetime": "2026-06-03 01:43:20.793",
|
||||
"message": "Space Weather Message Code: ALTTP4\r\nSerial Number: 710\r\nIssue Time: 2026 Jun 03 0143 UTC\r\n\r\nALERT: Type IV Radio Emission \nBegin Time: 2026 Jun 03 0122 UTC\nComment: \r\n\n"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.tiva",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0003.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0003.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "XX0S|2026-06-03 11:59:48.137",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-06-03T11:59:48.137000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "XX0S|2026-06-03 11:59:48.137",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-06-03T11:59:48.137000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "XX0S",
|
||||
"issue_datetime": "2026-06-03 11:59:48.137",
|
||||
"message": "Space Weather Message Code: SUMX01\r\nSerial Number: 218\r\nIssue Time: 2026 Jun 03 1159 UTC\r\n\r\nSUMMARY: X-ray Event exceeded X1 \nBegin Time: 2026 Jun 03 1119 UTC\nMaximum Time: 2026 Jun 03 1128 UTC\nEnd Time: 2026 Jun 03 1135 UTC\nXray Class: X1.0\nOptical Class: \nLocation: N17W19\nNoaa Scale: R3 - Strong\nComment: GOES-18 outage so using GOES-19\n\r\n\nGOES-18 outage so using GOES-19NOAA Scale: R3 - Strong\r\n\r\nNOAA Space Weather Scale descriptions can be found at\r\nwww.swpc.noaa.gov/noaa-scales-explanation\r\n\r\nPotential Impacts: Area of impact consists of large portions of the sunlit side of Earth, strongest at the sub-solar point.\r\nRadio - Wide area blackout of HF (high frequency) radio communication for about an hour."
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.xx0s",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0004.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0004.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "A50F|2026-06-03 14:52:28.343",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-06-03T14:52:28.343000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "A50F|2026-06-03 14:52:28.343",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-06-03T14:52:28.343000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "A50F",
|
||||
"issue_datetime": "2026-06-03 14:52:28.343",
|
||||
"message": "Space Weather Message Code: WATA50\r\nSerial Number: 98\r\nIssue Time: 2026 Jun 03 1452 UTC\r\n\r\nWATCH: Geomagnetic Storm Category G3 Predicted \nHighest Storm Level Predicted by Day:\nJun 04: G3 (Strong) Jun 05: G3 (Strong) Jun 06: None (Below G1) \nTHIS SUPERSEDES ANY/ALL PRIOR WATCHES IN EFFECT\nComment: \r\n\n"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.a50f",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0005.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0005.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "MSIS|2026-06-05 05:13:38.727",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-06-05T05:13:38.727000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "MSIS|2026-06-05 05:13:38.727",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-06-05T05:13:38.727000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "MSIS",
|
||||
"issue_datetime": "2026-06-05 05:13:38.727",
|
||||
"message": "Space Weather Message Code: SUMSUD\r\nSerial Number: 300\r\nIssue Time: 2026 Jun 05 0513 UTC\r\n\r\nSUMMARY: Geomagnetic Sudden Impulse \nObserved: 2026 Jun 05 0511 UTC\nDeviation: 70 nT\nStation: MEA\nComment: \r\n\n"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.msis",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0006.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0006.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "SGIW|2026-07-03 11:38:06.157",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-07-03T11:38:06.157000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "SGIW|2026-07-03 11:38:06.157",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-07-03T11:38:06.157000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "SGIW",
|
||||
"issue_datetime": "2026-07-03 11:38:06.157",
|
||||
"message": "Space Weather Message Code: WARSUD\r\nSerial Number: 256\r\nIssue Time: 2026 Jul 03 1138 UTC\r\n\r\nWARNING: Geomagnetic Sudden Impulse expected \nValid From: 2026 Jul 03 1157 UTC\nValid To: 2026 Jul 03 1227 UTC\nIp Shock: 2026-07-03 11:20\nComment: \r\n\n"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.sgiw",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0007.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0007.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "XM5A|2026-07-03 19:00:40.987",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-07-03T19:00:40.987000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "XM5A|2026-07-03 19:00:40.987",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-07-03T19:00:40.987000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "XM5A",
|
||||
"issue_datetime": "2026-07-03 19:00:40.987",
|
||||
"message": "Space Weather Message Code: ALTXMF\r\nSerial Number: 537\r\nIssue Time: 2026 Jul 03 1900 UTC\r\n\r\nALERT: X-Ray Flux exceeded M5 \nThreshold Reached: 2026 Jul 03 1856 UTC\nNoaa Scale: R2 - Moderate\nComment: \r\n\nNOAA Scale: R2 - Moderate\r\n\r\nNOAA Space Weather Scale descriptions can be found at\r\nwww.swpc.noaa.gov/noaa-scales-explanation\r\n\r\nPotential Impacts: Area of impact centered on sub-solar point on the sunlit side of Earth. Extent of blackout of HF (high frequency) radio communication dependent upon current X-ray Flux intensity. For real-time information on affected area and expected duration please see http://www.swpc.noaa.gov/products/d-region-absorption-predictions-d-rap."
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.xm5a",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0008.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0008.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "XM5S|2026-07-03 19:11:28.970",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-07-03T19:11:28.970000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "XM5S|2026-07-03 19:11:28.970",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-07-03T19:11:28.970000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "XM5S",
|
||||
"issue_datetime": "2026-07-03 19:11:28.970",
|
||||
"message": "Space Weather Message Code: SUMXM5\r\nSerial Number: 323\r\nIssue Time: 2026 Jul 03 1911 UTC\r\n\r\nSUMMARY: X-ray Event exceeded M5 \nBegin Time: 2026 Jul 03 1857 UTC\nMaximum Time: 2026 Jul 03 1859 UTC\nEnd Time: 2026 Jul 04 1903 UTC\nXray Class: M6.3\nOptical Class: \nLocation: S06W46\nNoaa Scale: R2 - Moderate\nComment: \r\n\nNOAA Scale: R2 - Moderate\r\n\r\nNOAA Space Weather Scale descriptions can be found at\r\nwww.swpc.noaa.gov/noaa-scales-explanation\r\n\r\nPotential Impacts: Area of impact centered primarily on sub-solar point on the sunlit side of Earth.\r\nRadio - Limited blackout of HF (high frequency) radio communication for tens of minutes."
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.xm5s",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0009.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0009.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "A30F|2026-06-05 18:52:32.167",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-06-05T18:52:32.167000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "A30F|2026-06-05 18:52:32.167",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-06-05T18:52:32.167000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "A30F",
|
||||
"issue_datetime": "2026-06-05 18:52:32.167",
|
||||
"message": "Space Weather Message Code: WATA30\r\nSerial Number: 274\r\nIssue Time: 2026 Jun 05 1852 UTC\r\n\r\nWATCH: Geomagnetic Storm Category G2 Predicted \nHighest Storm Level Predicted by Day:\nJun 06: G2 (Moderate) Jun 07: None (Below G1) Jun 08: None (Below G1) \nTHIS SUPERSEDES ANY/ALL PRIOR WATCHES IN EFFECT\nComment: \r\n\n\r\n\r\nNOAA Space Weather Scale descriptions can be found at\r\nwww.swpc.noaa.gov/noaa-scales-explanation\r\n\r\nPotential Impacts: Area of impact primarily poleward of 55 degrees Geomagnetic Latitude.\r\nInduced Currents - Power grid fluctuations can occur. High-latitude power systems may experience voltage alarms.\r\nSpacecraft - Satellite orientation irregularities may occur; increased drag on low Earth-orbit satellites is possible.\r\nRadio - HF (high frequency) radio propagation can fade at higher latitudes.\r\nAurora - Aurora may be seen as low as New York to Wisconsin to Washington state."
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.a30f",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0010.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0010.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "K04A|2026-07-03 20:54:38.663",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-07-03T20:54:38.663000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "K04A|2026-07-03 20:54:38.663",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-07-03T20:54:38.663000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "K04A",
|
||||
"issue_datetime": "2026-07-03 20:54:38.663",
|
||||
"message": "Space Weather Message Code: ALTK04\r\nSerial Number: 2670\r\nIssue Time: 2026 Jul 03 2054 UTC\r\n\r\nALERT: Geomagnetic K-index of 4 \nThreshold Reached: 2026 Jul 03 2049 UTC\nSynoptic Period: 1800-2100\nActive Warning: YES\nComment: \r\n\n\r\n\r\nNOAA Space Weather Scale descriptions can be found at\r\nwww.swpc.noaa.gov/noaa-scales-explanation\r\n\r\nPotential Impacts: Area of impact primarily poleward of 65 degrees Geomagnetic Latitude.\r\nInduced Currents - Weak power grid fluctuations can occur.\r\nAurora - Aurora may be visible at high latitudes such as Canada and Alaska."
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.k04a",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0011.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0011.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "K07W|2026-07-04 05:01:32.633",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-07-04T05:01:32.633000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 3,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "K07W|2026-07-04 05:01:32.633",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-07-04T05:01:32.633000Z",
|
||||
"expires": null,
|
||||
"severity": 3,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "K07W",
|
||||
"issue_datetime": "2026-07-04 05:01:32.633",
|
||||
"message": "Space Weather Message Code: WARK07\r\nSerial Number: 151\r\nIssue Time: 2026 Jul 04 0501 UTC\r\n\r\nWARNING: Geomagnetic K-index of 7 or greater expected \nValid From: 2026 Jul 04 0500 UTC\nValid To: 2026 Jul 05 1200 UTC\nWarning Conditions: Onset\nNoaa Scale: G3 - Greater\nComment: \r\n\nNOAA Scale: G3 - Greater"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.k07w",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0012.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0012.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "K07A|2026-07-04 05:10:10.740",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-07-04T05:10:10.740000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 3,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "K07A|2026-07-04 05:10:10.740",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-07-04T05:10:10.740000Z",
|
||||
"expires": null,
|
||||
"severity": 3,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "K07A",
|
||||
"issue_datetime": "2026-07-04 05:10:10.740",
|
||||
"message": "Space Weather Message Code: ALTK07\r\nSerial Number: 218\r\nIssue Time: 2026 Jul 04 0509 UTC\r\n\r\nALERT: Geomagnetic K-index of 7 \nThreshold Reached: 2026 Jul 04 0509 UTC\nSynoptic Period: 0300-0600\nActive Warning: YES\nNoaa Scale: G3 - Strong\nComment: \r\n\nNOAA Scale: G3 - Strong"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.k07a",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0013.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0013.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "K06W|2026-07-04 13:57:38.983",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-07-04T13:57:38.983000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 2,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "K06W|2026-07-04 13:57:38.983",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-07-04T13:57:38.983000Z",
|
||||
"expires": null,
|
||||
"severity": 2,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "K06W",
|
||||
"issue_datetime": "2026-07-04 13:57:38.983",
|
||||
"message": "Space Weather Message Code: WARK06\r\nSerial Number: 665\r\nIssue Time: 2026 Jul 04 1357 UTC\r\n\r\nWARNING: Geomagnetic K-index of 6 expected \nValid From: 2026 Jul 04 1356 UTC\nValid To: 2026 Jul 05 2100 UTC\nWarning Conditions: Onset\nNoaa Scale: G2 - Moderate\nComment: \r\n\nNOAA Scale: G2 - Moderate\r\n\r\nNOAA Space Weather Scale descriptions can be found at\r\nwww.swpc.noaa.gov/noaa-scales-explanation\r\n\r\nPotential Impacts: Area of impact primarily poleward of 55 degrees Geomagnetic Latitude.\r\nInduced Currents - Power grid fluctuations can occur. High-latitude power systems may experience voltage alarms.\r\nSpacecraft - Satellite orientation irregularities may occur; increased drag on low Earth-orbit satellites is possible.\r\nRadio - HF (high frequency) radio propagation can fade at higher latitudes.\r\nAurora - Aurora may be seen as low as New York to Wisconsin to Washington state."
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.k06w",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0014.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0014.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "K05W|2026-07-04 14:12:48.350",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-07-04T14:12:48.350000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 1,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "K05W|2026-07-04 14:12:48.350",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-07-04T14:12:48.350000Z",
|
||||
"expires": null,
|
||||
"severity": 1,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "K05W",
|
||||
"issue_datetime": "2026-07-04 14:12:48.350",
|
||||
"message": "Space Weather Message Code: WARK05\r\nSerial Number: 2248\r\nIssue Time: 2026 Jul 04 1412 UTC\r\n\r\nEXTENDED WARNING: Geomagnetic K-index of 5 expected\nExtension to Serial Number: 2247\nValid From: 2026 Jul 04 0100 UTC\nNow Valid Until: 2026 Jul 04 2359 UTC\nWarning Condition: Persistence\n\r\n\nNOAA Scale: G1 - Minor\r\n\r\nNOAA Space Weather Scale descriptions can be found at\r\nwww.swpc.noaa.gov/noaa-scales-explanation\r\n\r\nPotential Impacts: Area of impact primarily poleward of 60 degrees Geomagnetic Latitude.\r\nInduced Currents - Weak power grid fluctuations can occur.\r\nSpacecraft - Minor impact on satellite operations possible.\r\nAurora - Aurora may be visible at high latitudes, i.e., northern tier of the U.S. such as northern Michigan and Maine."
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.k05w",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0015.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0015.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "K04W|2026-07-04 14:21:41.873",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-07-04T14:21:41.873000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "K04W|2026-07-04 14:21:41.873",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-07-04T14:21:41.873000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "K04W",
|
||||
"issue_datetime": "2026-07-04 14:21:41.873",
|
||||
"message": "Space Weather Message Code: WARK04\r\nSerial Number: 5377\r\nIssue Time: 2026 Jul 04 1421 UTC\r\n\r\nEXTENDED WARNING: Geomagnetic K-index of 4 expected\nExtension to Serial Number: 5376\nValid From: 2026 Jul 03 1209 UTC\nNow Valid Until: 2026 Jul 05 0300 UTC\nWarning Condition: Persistence\n\r\n\n\r\n\r\nNOAA Space Weather Scale descriptions can be found at\r\nwww.swpc.noaa.gov/noaa-scales-explanation\r\n\r\nPotential Impacts: Area of impact primarily poleward of 65 degrees Geomagnetic Latitude.\r\nInduced Currents - Weak power grid fluctuations can occur.\r\nAurora - Aurora may be visible at high latitudes such as Canada and Alaska."
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.k04w",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0016.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0016.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "BHIS|2026-06-06 14:14:05.560",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-06-06T14:14:05.560000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "BHIS|2026-06-06 14:14:05.560",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-06-06T14:14:05.560000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "BHIS",
|
||||
"issue_datetime": "2026-06-06 14:14:05.560",
|
||||
"message": "Space Weather Message Code: SUM10R\r\nSerial Number: 918\r\nIssue Time: 2026 Jun 06 1414 UTC\r\n\r\nSUMMARY: 10cm Radio Burst \nBegin Time: 2026 Jun 06 1344 UTC\nMaximum Time: 2026 Jun 06 1344 UTC\nEnd Time: 2026 Jun 06 1359 UTC\nPeak Flux: 190 sfu\nDuration: 5 minutes\nLatest Penticton Noon Flux: 141 sfu\nComment: \r\n\n"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.bhis",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0017.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0017.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "TIIA|2026-06-06 14:15:12.373",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-06-06T14:15:12.373000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "TIIA|2026-06-06 14:15:12.373",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-06-06T14:15:12.373000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "TIIA",
|
||||
"issue_datetime": "2026-06-06 14:15:12.373",
|
||||
"message": "Space Weather Message Code: ALTTP2\r\nSerial Number: 1498\r\nIssue Time: 2026 Jun 06 1415 UTC\r\n\r\nALERT: Type II Radio Emission \nBegin Time: 2026 Jun 06 1347 UTC\nEstimate Velocity: 838 km/s\nComment: \r\n\n"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.tiia",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0018.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0018.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "K05A|2026-07-04 16:14:30.417",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-07-04T16:14:30.417000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 1,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "K05A|2026-07-04 16:14:30.417",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-07-04T16:14:30.417000Z",
|
||||
"expires": null,
|
||||
"severity": 1,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "K05A",
|
||||
"issue_datetime": "2026-07-04 16:14:30.417",
|
||||
"message": "Space Weather Message Code: ALTK05\r\nSerial Number: 2036\r\nIssue Time: 2026 Jul 04 1614 UTC\r\n\r\nALERT: Geomagnetic K-index of 5 \nThreshold Reached: 2026 Jul 04 1610 UTC\nSynoptic Period: 1500-1800\nActive Warning: YES\nNoaa Scale: G1 - Minor\nComment: \r\n\nNOAA Scale: G1 - Minor\r\n\r\nNOAA Space Weather Scale descriptions can be found at\r\nwww.swpc.noaa.gov/noaa-scales-explanation\r\n\r\nPotential Impacts: Area of impact primarily poleward of 60 degrees Geomagnetic Latitude.\r\nInduced Currents - Weak power grid fluctuations can occur.\r\nSpacecraft - Minor impact on satellite operations possible.\r\nAurora - Aurora may be visible at high latitudes, i.e., northern tier of the U.S. such as northern Michigan and Maine."
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.k05a",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0019.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0019.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "K06A|2026-07-04 17:00:15.597",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-07-04T17:00:15.597000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 2,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "K06A|2026-07-04 17:00:15.597",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-07-04T17:00:15.597000Z",
|
||||
"expires": null,
|
||||
"severity": 2,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "K06A",
|
||||
"issue_datetime": "2026-07-04 17:00:15.597",
|
||||
"message": "Space Weather Message Code: ALTK06\r\nSerial Number: 723\r\nIssue Time: 2026 Jul 04 1700 UTC\r\n\r\nALERT: Geomagnetic K-index of 6 \nThreshold Reached: 2026 Jul 04 1655 UTC\nSynoptic Period: 1500-1800\nActive Warning: YES\nNoaa Scale: G2 - Moderate\nComment: \r\n\nNOAA Scale: G2 - Moderate\r\n\r\nNOAA Space Weather Scale descriptions can be found at\r\nwww.swpc.noaa.gov/noaa-scales-explanation\r\n\r\nPotential Impacts: Area of impact primarily poleward of 55 degrees Geomagnetic Latitude.\r\nInduced Currents - Power grid fluctuations can occur. High-latitude power systems may experience voltage alarms.\r\nSpacecraft - Satellite orientation irregularities may occur; increased drag on low Earth-orbit satellites is possible.\r\nRadio - HF (high frequency) radio propagation can fade at higher latitudes.\r\nAurora - Aurora may be seen as low as New York to Wisconsin to Washington state."
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.k06a",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
35
work/tests/fixtures/swpc_last/0020.json
vendored
Normal file
35
work/tests/fixtures/swpc_last/0020.json
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "EF3A|2026-06-06 16:55:22.263",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.alert.v1",
|
||||
"time": "2026-06-06T16:55:22.263000+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.alert",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "EF3A|2026-06-06 16:55:22.263",
|
||||
"adapter": "swpc_alerts",
|
||||
"category": "space.alert",
|
||||
"time": "2026-06-06T16:55:22.263000Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"product_id": "EF3A",
|
||||
"issue_datetime": "2026-06-06 16:55:22.263",
|
||||
"message": "Space Weather Message Code: ALTEF3\r\nSerial Number: 3695\r\nIssue Time: 2026 Jun 06 1655 UTC\r\n\r\nALERT: Electron 2MeV Integral Flux exceeded 1000pfu \nThreshold Reached: 2026 Jun 06 1640 UTC\nStation: GOES-19\nComment: Yesterday's max: 536 pfu\n\r\n\nYesterday's max: 536 pfu"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.alert.ef3a",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
36
work/tests/fixtures/swpc_last/0021.json
vendored
Normal file
36
work/tests/fixtures/swpc_last/0021.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-07-04T15:00:00",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.kindex.v1",
|
||||
"time": "2026-07-04T15:00:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.kindex",
|
||||
"centralseverity": 1,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-07-04T15:00:00",
|
||||
"adapter": "swpc_kindex",
|
||||
"category": "space.kindex",
|
||||
"time": "2026-07-04T15:00:00Z",
|
||||
"expires": null,
|
||||
"severity": 1,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-07-04T15:00:00",
|
||||
"Kp": 5.67,
|
||||
"a_running": 67,
|
||||
"station_count": 7
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.kindex",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
36
work/tests/fixtures/swpc_last/0022.json
vendored
Normal file
36
work/tests/fixtures/swpc_last/0022.json
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"envelope": {
|
||||
"id": "2026-07-04T20:10:00Z|>=60 MeV",
|
||||
"source": "central.echo6.co",
|
||||
"type": "central.space.proton_flux.v1",
|
||||
"time": "2026-07-04T20:10:00+00:00",
|
||||
"datacontenttype": "application/json",
|
||||
"centralschemaversion": "1.0",
|
||||
"centralcategory": "space.proton_flux",
|
||||
"centralseverity": 0,
|
||||
"specversion": "1.0",
|
||||
"data": {
|
||||
"id": "2026-07-04T20:10:00Z|>=60 MeV",
|
||||
"adapter": "swpc_protons",
|
||||
"category": "space.proton_flux",
|
||||
"time": "2026-07-04T20:10:00Z",
|
||||
"expires": null,
|
||||
"severity": 0,
|
||||
"geo": {
|
||||
"centroid": null,
|
||||
"bbox": null,
|
||||
"regions": [],
|
||||
"primary_region": null,
|
||||
"geometry": null
|
||||
},
|
||||
"data": {
|
||||
"time_tag": "2026-07-04T20:10:00Z",
|
||||
"satellite": 18,
|
||||
"flux": 0.16377367079257965,
|
||||
"energy": ">=60 MeV"
|
||||
}
|
||||
}
|
||||
},
|
||||
"subject": "central.space.proton_flux",
|
||||
"captured_epoch": 1783196500
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue