opencode-skills-collection 4.0.73 → 4.0.75
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundled-skills/.antigravity-install-manifest.json +16 -1
- package/bundled-skills/claude-api/SKILL.md +4 -4
- package/bundled-skills/claude-api/curl/examples.md +5 -5
- package/bundled-skills/claude-api/java/claude-api.md +1 -1
- package/bundled-skills/claude-api/php/claude-api.md +2 -2
- package/bundled-skills/claude-api/python/claude-api/README.md +13 -13
- package/bundled-skills/claude-api/python/claude-api/batches.md +3 -3
- package/bundled-skills/claude-api/python/claude-api/files-api.md +3 -3
- package/bundled-skills/claude-api/python/claude-api/streaming.md +6 -6
- package/bundled-skills/claude-api/python/claude-api/tool-use.md +19 -19
- package/bundled-skills/claude-api/ruby/claude-api.md +3 -3
- package/bundled-skills/claude-api/shared/error-codes.md +2 -2
- package/bundled-skills/claude-api/shared/live-sources.md +1 -1
- package/bundled-skills/claude-api/shared/models.md +4 -4
- package/bundled-skills/claude-api/shared/tool-use-concepts.md +2 -2
- package/bundled-skills/claude-api/typescript/claude-api/README.md +12 -12
- package/bundled-skills/claude-api/typescript/claude-api/batches.md +2 -2
- package/bundled-skills/claude-api/typescript/claude-api/files-api.md +1 -1
- package/bundled-skills/claude-api/typescript/claude-api/streaming.md +4 -4
- package/bundled-skills/claude-api/typescript/claude-api/tool-use.md +14 -14
- package/bundled-skills/electron-drive-skill/LICENSE +21 -0
- package/bundled-skills/electron-drive-skill/README.md +172 -0
- package/bundled-skills/electron-drive-skill/SKILL.md +237 -0
- package/bundled-skills/electron-drive-skill/drive.config.json.example +10 -0
- package/bundled-skills/electron-drive-skill/package.json +28 -0
- package/bundled-skills/electron-drive-skill/scripts/daemon.mjs +352 -0
- package/bundled-skills/electron-drive-skill/scripts/drive.mjs +250 -0
- package/bundled-skills/electron-drive-skill/scripts/lib.mjs +165 -0
- package/bundled-skills/electron-drive-skill/scripts/lib.test.mjs +56 -0
- package/bundled-skills/film-crew/SKILL.md +129 -0
- package/bundled-skills/film-crew/references/model-prompting.md +89 -0
- package/bundled-skills/film-crew/references/reroll-review.md +46 -0
- package/bundled-skills/film-crew/references/roles/director.md +38 -0
- package/bundled-skills/film-crew/references/roles/dp.md +28 -0
- package/bundled-skills/film-crew/references/roles/editor.md +34 -0
- package/bundled-skills/film-crew/references/roles/gaffer.md +30 -0
- package/bundled-skills/film-crew/references/roles/production-designer.md +43 -0
- package/bundled-skills/film-crew/references/roles/script-supervisor.md +35 -0
- package/bundled-skills/film-crew/references/roles/sound.md +23 -0
- package/bundled-skills/film-crew/references/templates/shot-list.md +38 -0
- package/bundled-skills/film-crew/references/unslop.md +29 -0
- package/bundled-skills/mcp-dependency-drift-audit/SKILL.md +169 -0
- package/bundled-skills/nexrad-mosaic-access/SKILL.md +297 -0
- package/bundled-skills/nexrad-mosaic-construction/SKILL.md +277 -0
- package/bundled-skills/nexrad-product-access/SKILL.md +258 -0
- package/bundled-skills/nexrad-radar-visualization/SKILL.md +318 -0
- package/bundled-skills/radar-satellite-analysis/SKILL.md +314 -0
- package/bundled-skills/testdriver-e2e-testing/SKILL.md +121 -0
- package/bundled-skills/traderspy-market-briefing/SKILL.md +132 -0
- package/bundled-skills/traderspy-market-screener/SKILL.md +182 -0
- package/bundled-skills/traderspy-market-screener/references/condition-cookbook.md +70 -0
- package/bundled-skills/traderspy-position-check/SKILL.md +130 -0
- package/bundled-skills/traderspy-position-check/references/risk-math.md +60 -0
- package/bundled-skills/traderspy-smart-money/SKILL.md +151 -0
- package/bundled-skills/traderspy-smart-money/references/exchange-notes.md +40 -0
- package/bundled-skills/traderspy-technical-analysis/SKILL.md +162 -0
- package/bundled-skills/traderspy-technical-analysis/references/derivatives-guide.md +57 -0
- package/bundled-skills/traderspy-technical-analysis/references/indicator-guide.md +47 -0
- package/bundled-skills/traderspy-trading-signals/SKILL.md +156 -0
- package/bundled-skills/traderspy-trading-signals/references/signal-fields.md +64 -0
- package/bundled-skills/unified-ai-gateway/SKILL.md +3 -3
- package/package.json +1 -1
- package/skills_index.json +499 -1
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: nexrad-mosaic-access
|
|
3
|
+
description: "Access official NOAA/NCEP MRMS radar and multisensor composites for a region and time; validate product, grid, domain, quality, timestamp, and provenance."
|
|
4
|
+
category: data
|
|
5
|
+
risk: safe
|
|
6
|
+
source: self
|
|
7
|
+
source_type: self
|
|
8
|
+
date_added: "2026-09-25"
|
|
9
|
+
author: ShianMike
|
|
10
|
+
tags: [weather, nexrad, mrms, mosaic, qpe, vil, vii, mesh, composite-products]
|
|
11
|
+
tools: [claude, cursor, gemini, codex]
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# NEXRAD Mosaic Access
|
|
15
|
+
|
|
16
|
+
## Overview
|
|
17
|
+
|
|
18
|
+
Retrieve an existing NOAA/NCEP Multi-Radar/Multi-Sensor (MRMS) product without
|
|
19
|
+
confusing it with a single NEXRAD volume or a locally constructed mosaic.
|
|
20
|
+
MRMS provides timestamped 2D radar-only and multisensor products for regional
|
|
21
|
+
analysis. Select the exact product, domain, time, and file before downloading,
|
|
22
|
+
then validate the decoded grid and provenance. This skill covers access to
|
|
23
|
+
existing MRMS products; it does not build a custom multi-radar composite.
|
|
24
|
+
|
|
25
|
+
Use `nexrad-product-access` when the user needs one radar site's Level II or
|
|
26
|
+
Level III data. Use this skill when the requested object is already a mosaic or
|
|
27
|
+
multisensor analysis such as QPE, VIL, VII, or MESH.
|
|
28
|
+
|
|
29
|
+
## When to Use This Skill
|
|
30
|
+
|
|
31
|
+
- Access an official NEXRAD-derived national or regional mosaic.
|
|
32
|
+
- Retrieve MRMS radar-derived or multisensor precipitation products.
|
|
33
|
+
- Access VIL, VII, MESH, or MultiSensor QPE for a specified UTC time.
|
|
34
|
+
- Obtain a completed product for mapping or analysis without downloading every
|
|
35
|
+
contributing radar volume.
|
|
36
|
+
- Compare mosaic products while preserving product identity, generation time,
|
|
37
|
+
domain, and grid metadata.
|
|
38
|
+
|
|
39
|
+
Do not use this skill for a single-site sweep, a Level II moment, or a custom
|
|
40
|
+
mosaic that must be constructed from several radars. Route those tasks to
|
|
41
|
+
`nexrad-product-access` or a dedicated mosaicking workflow.
|
|
42
|
+
|
|
43
|
+
## Official MRMS 2D Access
|
|
44
|
+
|
|
45
|
+
NOAA/NCEP exposes the 2D product archive at:
|
|
46
|
+
|
|
47
|
+
```text
|
|
48
|
+
https://mrms.ncep.noaa.gov/2D/
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
The public index includes directories such as:
|
|
52
|
+
|
|
53
|
+
```text
|
|
54
|
+
https://mrms.ncep.noaa.gov/2D/MultiSensor_QPE_01H_Pass1/
|
|
55
|
+
https://mrms.ncep.noaa.gov/2D/VIL/
|
|
56
|
+
https://mrms.ncep.noaa.gov/2D/VII/
|
|
57
|
+
https://mrms.ncep.noaa.gov/2D/MESH/
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
These are representative examples, not a complete product catalog. NOAA/NSSL
|
|
61
|
+
describes the MRMS suite as containing 100+ products; available products and
|
|
62
|
+
distribution formats vary by product, version, domain, and feed. Consult the
|
|
63
|
+
current [NOAA/NSSL MRMS overview](https://www.nssl.noaa.gov/projects/mrms/),
|
|
64
|
+
product guide, and live NCEP index rather than treating this short list as an
|
|
65
|
+
allowlist.
|
|
66
|
+
|
|
67
|
+
Directories can contain a convenience link such as
|
|
68
|
+
`MRMS_<Product>.latest.grib2.gz` and timestamped compressed GRIB2 files. Some
|
|
69
|
+
products may also have regional directories such as `CONUS`, `GUAM`, or
|
|
70
|
+
`CARIB`; verify the selected product directory rather than assuming a domain.
|
|
71
|
+
|
|
72
|
+
For reproducible analysis, prefer an exact timestamped file. Use the `latest`
|
|
73
|
+
link only for a live snapshot, then record the exact timestamp, URL, redirect
|
|
74
|
+
target if any, content length, and retrieval time.
|
|
75
|
+
|
|
76
|
+
## Choose the Composite Product
|
|
77
|
+
|
|
78
|
+
Do not select a directory from a color image or a familiar abbreviation alone.
|
|
79
|
+
Read the current product description and metadata enough to confirm:
|
|
80
|
+
|
|
81
|
+
- product name and version;
|
|
82
|
+
- whether it is radar-only, multisensor, gauge corrected, or analysis based;
|
|
83
|
+
- accumulation or integration period;
|
|
84
|
+
- valid or scan time semantics;
|
|
85
|
+
- update cadence and latency;
|
|
86
|
+
- spatial domain and grid;
|
|
87
|
+
- missing, no-data, and quality semantics;
|
|
88
|
+
- units, scale, and packed-data representation.
|
|
89
|
+
|
|
90
|
+
Important distinctions include:
|
|
91
|
+
|
|
92
|
+
- **QPE:** accumulated precipitation estimate, not a reflectivity image.
|
|
93
|
+
- **VIL:** vertically integrated liquid from radar structure, not surface rain
|
|
94
|
+
rate or hail mass.
|
|
95
|
+
- **VII:** vertically integrated ice from radar structure, not total
|
|
96
|
+
precipitation.
|
|
97
|
+
- **MESH:** maximum expected size of hail for the product interval, not the
|
|
98
|
+
current cloud-top temperature or a verified hail observation.
|
|
99
|
+
|
|
100
|
+
Use the current product documentation to confirm exact meaning. Do not infer a
|
|
101
|
+
product from its directory name alone.
|
|
102
|
+
|
|
103
|
+
## Define the Mosaic Request
|
|
104
|
+
|
|
105
|
+
Record:
|
|
106
|
+
|
|
107
|
+
- exact MRMS product and version;
|
|
108
|
+
- national, regional, or other available domain;
|
|
109
|
+
- exact valid time or bounded historical interval;
|
|
110
|
+
- `latest` or timestamped-file policy;
|
|
111
|
+
- variables, units, accumulation period, and quality fields;
|
|
112
|
+
- desired geographic crop and output grid policy;
|
|
113
|
+
- maximum lookback, file-size limit, and acceptable latency;
|
|
114
|
+
- whether the product is being treated as official mosaic truth, an analysis
|
|
115
|
+
input, or a comparison target;
|
|
116
|
+
- required provenance and artifact policy.
|
|
117
|
+
|
|
118
|
+
If the user requests one storm's single-radar structure, this is the wrong
|
|
119
|
+
skill. A mosaic is useful for broad coverage and regional products but can
|
|
120
|
+
obscure site-level vertical or velocity structure.
|
|
121
|
+
|
|
122
|
+
## Access Workflow
|
|
123
|
+
|
|
124
|
+
1. Open or list the documented product directory under `/2D/`.
|
|
125
|
+
2. Match the exact product, domain, and timestamp policy.
|
|
126
|
+
3. Select an exact timestamped compressed GRIB2 file for retrospective work.
|
|
127
|
+
4. For `latest`, follow the convenience link only after recording the final URL
|
|
128
|
+
and resolving its timestamped identity.
|
|
129
|
+
5. Request file metadata with a bounded HTTP `HEAD` or equivalent read-only
|
|
130
|
+
check when the server supports it.
|
|
131
|
+
6. Download to a request-owned temporary path without executing content from
|
|
132
|
+
the server path.
|
|
133
|
+
7. Verify received size and a provider checksum when present; otherwise compute
|
|
134
|
+
and record a local SHA-256.
|
|
135
|
+
8. Decompress the `.gz` into a new temporary `.grib2` file. Do not decompress in
|
|
136
|
+
place over a shared cache entry.
|
|
137
|
+
9. Open the GRIB2 with a format-aware decoder and verify product, reference
|
|
138
|
+
time, forecast or valid time, grid, variables, units, and missing values.
|
|
139
|
+
10. Promote the verified product and record its source identity.
|
|
140
|
+
|
|
141
|
+
Keep compressed bytes, decoded values, and any reprojected or cropped artifact
|
|
142
|
+
as separate stages with separate hashes or identities.
|
|
143
|
+
|
|
144
|
+
## Handle Latest and Historical Time Correctly
|
|
145
|
+
|
|
146
|
+
`latest` is a moving convenience name. A later request can return different
|
|
147
|
+
bytes even though its URL is unchanged. For analysis and publication:
|
|
148
|
+
|
|
149
|
+
- resolve `latest` to the actual timestamped file;
|
|
150
|
+
- record retrieval time and product valid or scan time separately;
|
|
151
|
+
- use the timestamped file for replay;
|
|
152
|
+
- do not use the `latest` URL as immutable provenance;
|
|
153
|
+
- report latency between product time and retrieval time.
|
|
154
|
+
|
|
155
|
+
If the directory contains multiple passes, revisions, or accumulation windows,
|
|
156
|
+
select the exact contract required by the task. Do not choose the newest file
|
|
157
|
+
merely because its name sorts last.
|
|
158
|
+
|
|
159
|
+
## Validate the Mosaic Grid
|
|
160
|
+
|
|
161
|
+
Before interpreting or plotting, verify:
|
|
162
|
+
|
|
163
|
+
- domain and expected geographic extent;
|
|
164
|
+
- projection or GRIB coordinate definition;
|
|
165
|
+
- x/y orientation and scan mode;
|
|
166
|
+
- latitude and longitude coordinates after decoding;
|
|
167
|
+
- cell size, dimensions, and row or column ordering;
|
|
168
|
+
- time coordinate, units, and interval semantics;
|
|
169
|
+
- no-data, missing, and quality values;
|
|
170
|
+
- packed scale and offset or other calibration;
|
|
171
|
+
- consistency with the product's documented grid contract.
|
|
172
|
+
|
|
173
|
+
Do not transpose, flip, or relabel a grid based on visual appearance alone. A
|
|
174
|
+
plausible-looking map can still be spatially reversed or attached to the wrong
|
|
175
|
+
time.
|
|
176
|
+
|
|
177
|
+
## Preserve Product and Measurement Meaning
|
|
178
|
+
|
|
179
|
+
An MRMS product is a processed estimate or analysis. Keep these distinctions
|
|
180
|
+
visible:
|
|
181
|
+
|
|
182
|
+
- radar reflectivity or velocity input versus accumulated precipitation;
|
|
183
|
+
- radar-only estimate versus gauge-corrected multisensor analysis;
|
|
184
|
+
- valid time versus product generation or file publication time;
|
|
185
|
+
- missing radar coverage versus a physical zero;
|
|
186
|
+
- official composite product versus locally interpolated or blended fields;
|
|
187
|
+
- analysis value versus uncertainty or quality metadata.
|
|
188
|
+
|
|
189
|
+
Do not label an official mosaic as ground truth. It is a provider product with
|
|
190
|
+
its own assumptions, coverage, latency, and quality limitations.
|
|
191
|
+
|
|
192
|
+
## Reliability and Cache Behavior
|
|
193
|
+
|
|
194
|
+
- Cache by product, domain, timestamped source URL, byte identity, and local
|
|
195
|
+
checksum—not by `latest` or a friendly timestamp alone.
|
|
196
|
+
- Retry timeouts and transient server failures with bounded backoff and jitter.
|
|
197
|
+
- Honor service limits and avoid parallel directory-wide downloads.
|
|
198
|
+
- Keep partial compressed or decompressed files outside accepted cache entries.
|
|
199
|
+
- Publish a complete file atomically only after decoder validation.
|
|
200
|
+
- Remove request-owned temporary files after the final artifact and provenance
|
|
201
|
+
record are durable; never delete a shared user cache as request cleanup.
|
|
202
|
+
|
|
203
|
+
For large regional or national products, check available disk space and memory
|
|
204
|
+
before download and decode. Crop only after validating the native grid unless
|
|
205
|
+
the source supports a documented range request that preserves the same bytes.
|
|
206
|
+
|
|
207
|
+
## Examples
|
|
208
|
+
|
|
209
|
+
For “the latest MRMS one-hour multisensor QPE over CONUS before a given UTC
|
|
210
|
+
time,” verify that the product/domain exists, choose a completed timestamp,
|
|
211
|
+
and record valid time separately from retrieval time. Decode the GRIB2 and
|
|
212
|
+
confirm accumulation units, grid orientation, and missing-value encoding
|
|
213
|
+
before mapping it.
|
|
214
|
+
|
|
215
|
+
For “show the latest MRMS VIL,” resolve `latest` to its timestamped file and
|
|
216
|
+
label the result as vertically integrated liquid, not surface rainfall.
|
|
217
|
+
|
|
218
|
+
## Return a Mosaic Access Record
|
|
219
|
+
|
|
220
|
+
```json
|
|
221
|
+
{
|
|
222
|
+
"provider": "NOAA/NCEP MRMS",
|
|
223
|
+
"product": "MultiSensor_QPE_01H_Pass1",
|
|
224
|
+
"domain": "CONUS",
|
|
225
|
+
"requested_time_utc": "2026-09-25T12:00:00Z",
|
|
226
|
+
"selected_timestamped_url": "https://mrms.ncep.noaa.gov/2D/.../EXACT_FILE.grib2.gz",
|
|
227
|
+
"retrieved_at_utc": "2026-09-25T12:03:14Z",
|
|
228
|
+
"compressed_size_bytes": 12345678,
|
|
229
|
+
"compressed_sha256": "HEX_DIGEST",
|
|
230
|
+
"decoded_grid": {
|
|
231
|
+
"dimensions": [WIDTH, HEIGHT],
|
|
232
|
+
"projection": "DECODED CRS OR PRODUCT CRS",
|
|
233
|
+
"time_semantics": "VERIFIED PRODUCT TIME"
|
|
234
|
+
},
|
|
235
|
+
"latest_used": false
|
|
236
|
+
}
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
Do not put a fabricated domain, grid, or time into this record. Omit unknown
|
|
240
|
+
fields or use `null` when the schema permits it.
|
|
241
|
+
|
|
242
|
+
## Verification Checklist
|
|
243
|
+
|
|
244
|
+
- Product, version, domain, and time contract are explicit.
|
|
245
|
+
- An official composite product is not confused with a single-site volume.
|
|
246
|
+
- Exact timestamped identity is recorded even when access starts from `latest`.
|
|
247
|
+
- Compressed bytes and decoded GRIB2 are validated separately.
|
|
248
|
+
- Product, reference time, valid time, grid, units, and missing values are
|
|
249
|
+
verified after decoding.
|
|
250
|
+
- Radar, multisensor, gauge-corrected, or analysis semantics are preserved.
|
|
251
|
+
- Missing coverage is not converted to a physical zero.
|
|
252
|
+
- The final artifact and provenance identify the exact source file.
|
|
253
|
+
|
|
254
|
+
## Security & Safety Notes
|
|
255
|
+
|
|
256
|
+
- Use public or authorized MRMS resources only.
|
|
257
|
+
- Never execute or import content based only on a remote filename. Decode with
|
|
258
|
+
explicit format-aware libraries and bounded resource use.
|
|
259
|
+
- Do not expose private endpoints, credentials, signed query strings, or tokens
|
|
260
|
+
in records or logs.
|
|
261
|
+
- Validate product and domain values before constructing URLs; do not allow path
|
|
262
|
+
traversal from untrusted input.
|
|
263
|
+
- Preserve NOAA/NCEP attribution and applicable data-use terms.
|
|
264
|
+
|
|
265
|
+
## Common Pitfalls
|
|
266
|
+
|
|
267
|
+
- **`latest` changed after the analysis:** A moving convenience link was stored
|
|
268
|
+
as immutable provenance. Resolve and retain the timestamped file identity.
|
|
269
|
+
- **A missing-data region became zero:** The no-data sentinel was treated like a
|
|
270
|
+
physical value. Apply and verify the product's missing-data contract.
|
|
271
|
+
- **A VIL image was called rainfall:** The processed quantity was relabeled.
|
|
272
|
+
Preserve VIL as vertically integrated liquid.
|
|
273
|
+
- **A domain was assumed:** The requested regional directory may not exist for
|
|
274
|
+
that product. Inspect the actual product directory.
|
|
275
|
+
- **A single radar became a mosaic:** A site product was labeled composite
|
|
276
|
+
without combining or retrieving multiple contributions.
|
|
277
|
+
- **The map was flipped:** Grid orientation or scan mode was guessed from
|
|
278
|
+
appearance. Validate decoded coordinate metadata.
|
|
279
|
+
|
|
280
|
+
## Limitations
|
|
281
|
+
|
|
282
|
+
- Product availability, version, directory layout, and update cadence can
|
|
283
|
+
change. Verify current official documentation.
|
|
284
|
+
- An official mosaic does not expose every native Level II moment or sweep.
|
|
285
|
+
- Provider mosaics have their own quality, coverage, latency, and algorithmic
|
|
286
|
+
limitations and are not direct observations.
|
|
287
|
+
- This skill accesses existing composites; it does not construct a custom
|
|
288
|
+
multi-radar mosaic or perform meteorological verification.
|
|
289
|
+
|
|
290
|
+
## Additional Resources
|
|
291
|
+
|
|
292
|
+
- [NOAA/NCEP MRMS 2D product directory](https://mrms.ncep.noaa.gov/2D/)
|
|
293
|
+
- [NOAA/NSSL MRMS overview and product suite](https://www.nssl.noaa.gov/projects/mrms/)
|
|
294
|
+
- [MRMS VIL example directory](https://mrms.ncep.noaa.gov/2D/VIL/)
|
|
295
|
+
- [MRMS VII example directory](https://mrms.ncep.noaa.gov/2D/VII/)
|
|
296
|
+
- [MRMS MultiSensor QPE example directory](https://mrms.ncep.noaa.gov/2D/MultiSensor_QPE_01H_Pass1/)
|
|
297
|
+
- [NEXRAD on the AWS Registry of Open Data](https://registry.opendata.aws/noaa-nexrad/)
|
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: nexrad-mosaic-construction
|
|
3
|
+
description: "Construct a quality-aware NEXRAD multi-radar mosaic from aligned single-site products with explicit coverage, beam geometry, quality weighting, overlap resolution, and provenance."
|
|
4
|
+
category: analysis
|
|
5
|
+
risk: safe
|
|
6
|
+
source: self
|
|
7
|
+
source_type: self
|
|
8
|
+
date_added: "2026-09-25"
|
|
9
|
+
author: ShianMike
|
|
10
|
+
tags: [weather, nexrad, mosaic, multi-radar, quality-weighting, coverage, overlap-resolution]
|
|
11
|
+
tools: [claude, cursor, gemini, codex]
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# NEXRAD Mosaic Construction
|
|
15
|
+
|
|
16
|
+
## Overview
|
|
17
|
+
|
|
18
|
+
Build a custom multi-radar composite from aligned, validated single-site data.
|
|
19
|
+
Every output pixel must have a traceable source, coverage state, and quality
|
|
20
|
+
decision. Preserve the distinction between a local analysis product and an
|
|
21
|
+
official provider mosaic.
|
|
22
|
+
|
|
23
|
+
Use this skill after products from multiple radars have been resolved. It does
|
|
24
|
+
not discover, download, or decode source files. Use `nexrad-product-access` for
|
|
25
|
+
single-site access and `nexrad-mosaic-access` when the required result is an
|
|
26
|
+
existing NOAA MRMS composite rather than a newly constructed analysis.
|
|
27
|
+
|
|
28
|
+
## When to Use This Skill
|
|
29
|
+
|
|
30
|
+
- Combine two or more radars to cover a region with overlapping or adjacent
|
|
31
|
+
fields.
|
|
32
|
+
- Construct a consistent base-reflectivity, velocity, spectrum-width, or
|
|
33
|
+
dual-polarization composite.
|
|
34
|
+
- Build a research mosaic on a common grid or for a cross-radar comparison.
|
|
35
|
+
- Compare a custom mosaic with an official MRMS product.
|
|
36
|
+
- Visualize source contributions and coverage gaps in a composite.
|
|
37
|
+
|
|
38
|
+
Do not use this skill to fetch an official MRMS product, select a single radar,
|
|
39
|
+
or claim that a simple pixel average is a physically resolved regional field.
|
|
40
|
+
|
|
41
|
+
## Define the Mosaic Contract
|
|
42
|
+
|
|
43
|
+
Record:
|
|
44
|
+
|
|
45
|
+
- product and exact units from each source;
|
|
46
|
+
- source sites, coordinates, volume start/end times, and sweeps;
|
|
47
|
+
- target region, output grid, projection, and cell size;
|
|
48
|
+
- time-matching and temporal interpolation policy;
|
|
49
|
+
- native range limits, beam width, beam height, and vertical sampling;
|
|
50
|
+
- quality-mask, clutter, attenuation, range-folding, and dealiasing policy;
|
|
51
|
+
- overlap-resolution and quality-weighting method;
|
|
52
|
+
- treatment of coastlines, terrain, blocked sectors, and missing gates;
|
|
53
|
+
- output format, metadata, and provenance requirements.
|
|
54
|
+
|
|
55
|
+
Do not combine a Level II moment and a Level III display product merely because
|
|
56
|
+
their names resemble one another. Their processing, resolution, and quality
|
|
57
|
+
semantics must be verified equivalent or the difference must be represented
|
|
58
|
+
explicitly.
|
|
59
|
+
|
|
60
|
+
## Validate and Align Source Data
|
|
61
|
+
|
|
62
|
+
Before compositing:
|
|
63
|
+
|
|
64
|
+
1. verify each site's decoded metadata, time, product, units, and quality;
|
|
65
|
+
2. convert all source fields to one declared projection and common output grid;
|
|
66
|
+
3. align source times using a documented tolerance and interpolation policy;
|
|
67
|
+
4. preserve each source's native spatial support and quality fields;
|
|
68
|
+
5. reject a source that is too stale, out of range, or outside its valid product
|
|
69
|
+
contract;
|
|
70
|
+
6. label any resampling or interpolation rather than presenting the output as
|
|
71
|
+
a native-resolution observation.
|
|
72
|
+
|
|
73
|
+
When a common time cannot be formed without excessive interpolation, use a
|
|
74
|
+
nearest time within the stated tolerance, retain the actual time difference, or
|
|
75
|
+
mark the output unavailable. Do not average distant scans into one pseudo-time
|
|
76
|
+
without showing the temporal support.
|
|
77
|
+
|
|
78
|
+
## Define the Output Quantity and Quality
|
|
79
|
+
|
|
80
|
+
For reflectivity, retain dBZ or the product's native calibrated unit and use a
|
|
81
|
+
quality-aware combination rule. Do not average dBZ as a linear physical
|
|
82
|
+
quantity without a stated rationale. For velocity, preserve positive and
|
|
83
|
+
negative radial-velocity conventions and handle dealiasing and folding before
|
|
84
|
+
compositing. For dual-polarization moments, preserve their physical units and
|
|
85
|
+
quality masks.
|
|
86
|
+
|
|
87
|
+
Keep these fields separate:
|
|
88
|
+
|
|
89
|
+
- measured or decoded value;
|
|
90
|
+
- quality or suitability score;
|
|
91
|
+
- source site and source time;
|
|
92
|
+
- beam-height or range metadata;
|
|
93
|
+
- interpolation or resampling state;
|
|
94
|
+
- coverage and no-data state.
|
|
95
|
+
|
|
96
|
+
The output should make it possible to identify which radar contributed each
|
|
97
|
+
pixel, especially near overlap boundaries.
|
|
98
|
+
|
|
99
|
+
## Select Candidate Data by Quality and Geometry
|
|
100
|
+
|
|
101
|
+
For each output cell, consider only sources that provide valid coverage at a
|
|
102
|
+
compatible time and product level. A useful selection score can include:
|
|
103
|
+
|
|
104
|
+
- lower beam height at the target location;
|
|
105
|
+
- shorter range and smaller beam width;
|
|
106
|
+
- fewer terrain or clutter artifacts;
|
|
107
|
+
- better data quality or signal-to-noise status;
|
|
108
|
+
- newer scan or smaller time difference;
|
|
109
|
+
- lower attenuation or range-folding penalty;
|
|
110
|
+
- product-specific suitability such as dual-pol quality.
|
|
111
|
+
|
|
112
|
+
The score is a modeling choice, not a universal truth. State its terms and
|
|
113
|
+
weights, normalize only comparable components, and test sensitivity to the
|
|
114
|
+
selection rule. Never hide the score behind an unexplained “best radar” rule.
|
|
115
|
+
|
|
116
|
+
## Resolve Overlaps Deterministically
|
|
117
|
+
|
|
118
|
+
Use a deterministic rule for every target cell:
|
|
119
|
+
|
|
120
|
+
1. select the source with the highest declared quality/suitability score;
|
|
121
|
+
2. apply a documented tie-breaker such as lower beam height, smaller range,
|
|
122
|
+
newer valid time, or stable site order;
|
|
123
|
+
3. preserve the selected source ID and runner-up source; or
|
|
124
|
+
4. use a physics-aware fusion method only after validating it against
|
|
125
|
+
single-site fields and reference observations.
|
|
126
|
+
|
|
127
|
+
Do not average dBZ, radial velocity, or quality fields across radars by default.
|
|
128
|
+
Blending is acceptable only with a declared product-specific rationale and
|
|
129
|
+
sensitivity analysis. Never let a blocked, stale, or invalid source win merely
|
|
130
|
+
because its numeric value is larger, larger in magnitude, or easier to
|
|
131
|
+
interpolate.
|
|
132
|
+
|
|
133
|
+
## Preserve Coverage and Quality Metadata
|
|
134
|
+
|
|
135
|
+
The mosaic should emit at least:
|
|
136
|
+
|
|
137
|
+
- value field;
|
|
138
|
+
- source-site field;
|
|
139
|
+
- source-time or time-difference field;
|
|
140
|
+
- beam-height or range-quality field when relevant;
|
|
141
|
+
- quality or suitability field;
|
|
142
|
+
- coverage and no-data mask;
|
|
143
|
+
- product, units, grid, projection, and timestamp metadata.
|
|
144
|
+
|
|
145
|
+
No-data and masked gates must remain distinguishable from a physical zero or a
|
|
146
|
+
valid low value. A blank-looking region is acceptable only if the coverage mask
|
|
147
|
+
makes its reason visible. Do not fill blocked sectors with neighboring radar
|
|
148
|
+
data without labeling the substitution.
|
|
149
|
+
|
|
150
|
+
## Handle 3D and Vertical Products
|
|
151
|
+
|
|
152
|
+
A two-dimensional mosaic must not silently mix elevation sweeps with
|
|
153
|
+
incompatible heights. For reflectivity, state the selected elevation policy
|
|
154
|
+
and range-dependent beam height. For VIL, echo top, or another 3D-derived
|
|
155
|
+
product, use the provider's product definition or a separately validated 3D
|
|
156
|
+
algorithm.
|
|
157
|
+
|
|
158
|
+
For a vertical composite, retain per-source sweep and beam-height metadata,
|
|
159
|
+
define the vertical target or column, and document the common vertical
|
|
160
|
+
coordinate. Do not call a lowest-sweep composite a column-integrated quantity
|
|
161
|
+
or compare it with a true VIL product without explaining the difference.
|
|
162
|
+
|
|
163
|
+
## Validate the Mosaic Scientifically
|
|
164
|
+
|
|
165
|
+
Inspect:
|
|
166
|
+
|
|
167
|
+
- coverage, holes, overlap seams, and domain edges;
|
|
168
|
+
- discontinuities at site boundaries;
|
|
169
|
+
- implausible values or source-selection flips;
|
|
170
|
+
- range, terrain, and beam-height artifacts;
|
|
171
|
+
- agreement with each source in non-overlap regions;
|
|
172
|
+
- comparison with an independent analysis or observation where available;
|
|
173
|
+
- sensitivity to quality weights, time tolerance, and product choice.
|
|
174
|
+
|
|
175
|
+
An aesthetically smooth mosaic can hide source disagreements. Preserve the
|
|
176
|
+
unresolved or selected-source map for scientific review. A local composite is
|
|
177
|
+
an analysis with assumptions, not ground truth.
|
|
178
|
+
|
|
179
|
+
## Coordinate with Analysis and Visualization
|
|
180
|
+
|
|
181
|
+
Use `radar-satellite-analysis` to interpret storm structure. A separate
|
|
182
|
+
feature-tracking skill may be used after the mosaic when available, but it is
|
|
183
|
+
not required for mosaic construction. Use
|
|
184
|
+
`nexrad-radar-visualization` for site products or decoded gridded products. For
|
|
185
|
+
a constructed mosaic, plot the value alongside source, quality, and coverage
|
|
186
|
+
layers and label it as a local analysis.
|
|
187
|
+
|
|
188
|
+
For an official NOAA composite, retrieve it with `nexrad-mosaic-access` and
|
|
189
|
+
preserve its product semantics instead of rebuilding it. A custom mosaic can
|
|
190
|
+
be compared with that official product, but the two must not be labeled as
|
|
191
|
+
identical.
|
|
192
|
+
|
|
193
|
+
## Examples
|
|
194
|
+
|
|
195
|
+
To combine two overlapping Level II reflectivity volumes, verify both sites,
|
|
196
|
+
sweeps, times, units, and quality; reproject them to a declared grid; then
|
|
197
|
+
select a source per cell using a documented rule based on beam height, range,
|
|
198
|
+
time difference, and quality. Preserve source and coverage arrays beside the
|
|
199
|
+
reflectivity field, and inspect seams and each radar's non-overlap area before
|
|
200
|
+
interpreting the result.
|
|
201
|
+
|
|
202
|
+
For an MRMS comparison, retrieve the exact official product through
|
|
203
|
+
`nexrad-mosaic-access`, align its valid-time and grid semantics explicitly,
|
|
204
|
+
and report differences as product/algorithm differences rather than treating
|
|
205
|
+
either grid as ground truth.
|
|
206
|
+
|
|
207
|
+
## Output Contract
|
|
208
|
+
|
|
209
|
+
Return a custom mosaic with a clear audit trail:
|
|
210
|
+
|
|
211
|
+
1. source radar sites, product or moment, units, volume times, and quality;
|
|
212
|
+
2. output domain, grid, projection, cell size, and time policy;
|
|
213
|
+
3. source-selection or fusion rule and its parameters;
|
|
214
|
+
4. value, source, quality, beam-height/range, and coverage layers;
|
|
215
|
+
5. rejected sources and cells with reasons;
|
|
216
|
+
6. validation results and sensitivity to major construction choices;
|
|
217
|
+
7. scientific limitations and distinction from official MRMS products; and
|
|
218
|
+
8. provenance and checksums for inputs, code, configuration, and outputs.
|
|
219
|
+
|
|
220
|
+
Do not publish only a colored mosaic. The source, quality, and coverage layers
|
|
221
|
+
are part of the result whenever overlap or heterogeneous radar support matters.
|
|
222
|
+
|
|
223
|
+
## Verification Checklist
|
|
224
|
+
|
|
225
|
+
- Every source product, site, unit, and time is verified before compositing.
|
|
226
|
+
- The common time, grid, projection, and range policy are explicit.
|
|
227
|
+
- Level II and Level III products are not treated as interchangeable.
|
|
228
|
+
- Quality, terrain, beam height, range folding, and de-aliasing checks are
|
|
229
|
+
applied.
|
|
230
|
+
- Overlap selection is deterministic, auditable, and sensitivity-tested.
|
|
231
|
+
- No-data, blocked sectors, and source substitutions remain visible.
|
|
232
|
+
- Source, quality, and coverage metadata accompany the value field.
|
|
233
|
+
- Custom output is labeled as a local analysis, not an official MRMS product.
|
|
234
|
+
|
|
235
|
+
## Security & Safety Notes
|
|
236
|
+
|
|
237
|
+
- Use public or authorized radar data only.
|
|
238
|
+
- Do not expose cloud credentials, signed URLs, private bucket names, or
|
|
239
|
+
sensitive station metadata in outputs or logs.
|
|
240
|
+
- Treat metadata, source IDs, and product names as untrusted input; validate
|
|
241
|
+
paths and labels before rendering.
|
|
242
|
+
- Bound site count, volume size, output extent, interpolation, and worker count.
|
|
243
|
+
- Preserve NOAA, NEXRAD, Unidata, and other provider attribution and license
|
|
244
|
+
terms.
|
|
245
|
+
|
|
246
|
+
## Common Pitfalls
|
|
247
|
+
|
|
248
|
+
- **Seams appeared at radar boundaries:** Source selection or quality weights
|
|
249
|
+
were not declared. Preserve source and quality layers and test tie-breaks.
|
|
250
|
+
- **dBZ was averaged across sites:** A logarithmic reflectivity quantity was
|
|
251
|
+
treated as a linear scalar. Use a product-specific rule and sensitivity.
|
|
252
|
+
- **A blocked sector looked like no rain:** No-data or quality-masked gates were
|
|
253
|
+
converted to zero. Preserve the coverage mask.
|
|
254
|
+
- **A lower sweep was compared with a 3D product:** The vertical meaning was
|
|
255
|
+
collapsed. State the elevation and product definition.
|
|
256
|
+
- **The composite changed between runs:** Site order, time tolerance, or random
|
|
257
|
+
sampling determined the winner. Make selection deterministic and record its
|
|
258
|
+
parameters.
|
|
259
|
+
- **A custom mosaic was called official:** The local product was confused with
|
|
260
|
+
NOAA MRMS. Keep source and algorithm identity in the output metadata.
|
|
261
|
+
|
|
262
|
+
## Limitations
|
|
263
|
+
|
|
264
|
+
- Heterogeneous range, beam width, terrain, calibration, and product processing
|
|
265
|
+
limit cross-site comparability.
|
|
266
|
+
- A selection-based mosaic may create discontinuities or discard useful
|
|
267
|
+
information from a second radar.
|
|
268
|
+
- No pixel is an independent observation; quality and source fields are
|
|
269
|
+
correlated in space and time.
|
|
270
|
+
- Custom mosaics require local validation and are not an official warning or
|
|
271
|
+
truth product.
|
|
272
|
+
|
|
273
|
+
## Additional Resources
|
|
274
|
+
|
|
275
|
+
- [NEXRAD on the AWS Registry of Open Data](https://registry.opendata.aws/noaa-nexrad/)
|
|
276
|
+
- [NOAA MRMS 2D product directory](https://mrms.ncep.noaa.gov/2D/)
|
|
277
|
+
- [NOAA Radar Operations Center interface documents](https://www.roc.noaa.gov/wsr88d/BuildInfo/Files.aspx)
|