Skip to content

ILLUSTRATIVE · NASA / SVS · NOT ADITYA-L1 DATA

Datacard

Evidence · dataset card

The canonical dataset

7 tables built from the public ISSDC Aditya-L1 archive, frozen at a single digest and never modified since. This card states what is in it, how it was made, and what it cannot support.

What is this?

A dataset card for AdityaNet_v2_dataset_r1 — the frozen, digest-addressed dataset behind every figure on this site.

Why should I trust it?

Scale, coverage and digests are read from the freeze manifest committed alongside the data. The variables, quality findings and limitations are carried verbatim from three frozen reports; nothing on this page is a paraphrase.

Where can I verify it?

Section 1

Identity and provenance

Version
AdityaNet_v2_dataset_r1
Dataset digest
43fd0e228b28ae6bc7e468c3…
Files
1,985
0.60 GB of Parquet
Frozen at
2026-07-18
commit be0b7e5

Source. The public Aditya-L1 archive published by ISSDC, for the SoLEXS and HEL1OS soft X-ray payloads. No private, embargoed or simulated data is included, and no external catalogue is merged into the tables.

Collection. Archive products were parsed to a canonical minute grid under a written parser specification, revision M-V/r5 (family DETCHANS) + r6-consistent. Every row carries the path and SHA-256 of the archive file it came from, so any value can be traced back to the byte range that produced it.

Licensing. The underlying archive products are ISSDC's and are subject to ISSDC's terms; this project redistributes derived tables and the code that builds them. AdityaNet is an independent project and is not affiliated with or endorsed by ISRO or any space agency.

Temporal coverage. 2024-02-01 to 2026-06-17 (UTC) UTC. Coverage is not continuous: an instrument day exists only where the archive published one, and days differ between the two payloads.

Spatial coverage. None, in the usual sense. Aditya-L1 observes from the Sun–Earth L1 point; these are full-disc integrated measurements with no spatial resolution, so no pixel, region or active-region attribution is possible.

Version history. One release. The dataset was frozen once, at the digest above, and has not been revised. Every change since then is to code, not to data — which is what makes the digest a usable citation.


Section 2

The seven tables

What each table is, how much of it there is, and its digest.

TableInstrumentOne row isFilesSizeDigest
T1solexs_lc_1minSoLEXSOne minute of light-curve counts and live time42414.1 MB5e6d95be2b4359d0…
T2solexs_spec_1minSoLEXSOne minute of full spectrum, by ordinal channel42487.1 MB4124d5ee4f598b12…
T3hel1os_lc_1minHEL1OSOne minute of light-curve counts37361.0 MBd814d3ad4c2edcfc…
T4hel1os_hk_1minHEL1OSOne minute of housekeeping telemetry38919.2 MBfdb005c60811f51a…
T5hel1os_spec_1minHEL1OSOne minute of full spectrum, by ordinal channel373415.2 MBff7f5a90a1a3a728…
T6gti_intervalsBothOne good-time interval10.1 MB5930fe126f49e96f…
T7provenance_manifestBothOne source archive file and its digest10.2 MB12c2b6d073b99dc0…

The file counts differ by design, not by accident. SoLEXS published 424 observation days while HEL1OS published 373 — a distinction prose routinely blurs into "the archive", and one that decides how many days can support a combined-instrument claim.


Section 3

Variables and missing-data semantics

Every column of every table, verbatim from the frozen data dictionary.

Two conventions govern the whole dataset and are worth reading before the tables: missing values are NaN and never imputed — zero is a valid measurement, never a stand-in for absence — and spectral channels are ordinal indices, not energies, because no instrument response exists in the archive and no keV mapping is therefore possible.

T1 — solexs_lc_1min (610,560 rows · 424 files)

One row per minute of a SoLEXS observing day. Source: .lc (light curve) + .gti, SDD2.

Column Type Units Source / derivation Allowed values Missing semantics
timestamp datetime64[ns,UTC] minute index of the observation day 1,440/day, monotonic, unique never missing
counts_total float64 counts Σ of .lc COUNTS over finite seconds in the minute ≥ 0 NaN ⟺ no finite second (q_no_data)
live_time_s float64 s GTI-covered seconds in the minute (inclusive endpoints, STOP−START+1) 0 … 60 never missing; 0 = fully excluded
rate_total float64 counts/s counts_total / live_time_s ≥ 0 NaN where live_time_s == 0not imputed
gti_fraction float64 live_time_s / 60 0.0 … 1.0 never missing
n_seconds_present int16 count number of finite .lc seconds in the minute 0 … 60 never missing
q_no_data bool n_seconds_present == 0 True/False flag
q_partial bool 0 < gti_fraction < 1 True/False flag
detector category SoLEXS detector SDD2 only never missing
src_file object source .lc path never missing
src_sha256 object SHA-256 of the source archive (Phase 0.5.1 manifest) 64 hex never missing
archive_version object ISSDC archive variant v1.0, v1.1 never missing

counts_total (light curve) is band-limited and is not Σ(T2 counts) — see SCIENTIFIC_FINDINGS.md F-1. The two are carried independently; neither is derived from the other.

T2 — solexs_spec_1min (610,560 rows · 424 files)

One row per minute; the full SoLEXS spectrum. Source: .pi (OGIP Type II PHA) + .gti, SDD2.

Column Type Units Source / derivation Allowed values Missing semantics
timestamp datetime64[ns,UTC] minute index 1,440/day never missing
counts object → array[340] float64 counts per-channel Σ over finite seconds in the minute ≥ 0 per channel NaN per channel where no finite second
live_time_s float64 s GTI-covered seconds (inclusive) 0 … 60 never missing
gti_fraction float64 live_time_s / 60 0.0 … 1.0 never missing
n_seconds_present int16 count finite spectra contributing 0 … 60 never missing
q_no_data bool no finite spectrum in the minute True/False flag
q_partial bool partial GTI coverage True/False flag
detector category SoLEXS detector SDD2 never missing
chantype category channel type from CHANTYPE PI never missing
src_file, src_sha256, archive_version object provenance never missing

Channel axis: counts[i] is PI channel i, i ∈ [0, 339] — an ordinal index. No channel_energy_keV column exists, by design: the archive contains no response matrix, so no channel→energy mapping is possible. Do not assume linearity in energy.

T3 — hel1os_lc_1min (1,027,773 rows · 373 files)

LONG form (spec r6): one row per (minute, detector), keyed uniquely by that pair. Source: HEL1OS lightcurve_*.fits, ownership from the Version Resolution Engine.

Column Type Units Source / derivation Allowed values Missing semantics
timestamp datetime64[ns,UTC] minute index never missing
detector object the detector this row describes CZT1,CZT2,CDTE1,CDTE2 never missing
{det}_{lo}_{hi}_rate float64 counts/s mean of CTR over the minute's samples ≥ 0 NaN when {det} ≠ this row's detector (structural)
{det}_{lo}_{hi}_stat_err float64 counts/s mean of STAT_ERR ≥ 0 as above
{det}_{lo}_{hi}_n_samples float64 count samples contributing to the minute ≥ 1 as above
orbit_id object owning orbit (version-resolved) HLS_…_V### never missing
orbit_version object orbit product version V111,V211,V112,V311 never missing
src_file, src_sha256, archive_version object provenance never missing

Band columns present (edges parsed from EXTNAME, allowlist-validated):

  • CZT1/CZT2: 20_40, 40_60, 60_80, 80_150, 18_160 (keV)
  • CDTE1/CDTE2: 5_20, 20_30, 30_40, 40_60, 1p8_90 (keV; 1p8 = 1.8)

Structural NaN: because the table is long-form, each row populates only its own detector's band columns; the other three detectors' columns are NaN by construction, not by missing data. Filter by detector before using band columns. A wide view may be derived, but the canonical form is long (spec r6) because ownership is per (minute, detector).

T4 — hel1os_hk_1min (277,054 rows · 389 files)

One row per minute of HEL1OS housekeeping. Source: aux/hk.fits.

Column Type Units Derivation Notes
timestamp datetime64[ns,UTC] minute index never missing
czt1temp, czt2temp, cdte1temp, cdte2temp float64 °C minute mean detector temperatures
czthvmon, cdtehvmon float64 V minute mean high-voltage monitors
czt1ctr, czt2ctr, cdte1ctr, cdte2ctr float64 counts/s minute mean per-detector rate monitors
czt1enth float64 keV minute mean energy threshold
cdte1enerthr, cdte2enerthr float64 (undeclared) minute mean energy thresholds; unit not declared in the archive
cdte1pilectr, cdte2pilectr float64 count minute max pile-up counters
czt1satctr1, czt2satctr1 float64 count minute max saturation counters
czt1hotpixcnt, czt2hotpixcnt float64 count minute max hot-pixel counters
sunradeg, sundecdeg float64 degrees minute mean Sun pointing
fehkstat float64 minute mean front-end housekeeping status word
suninfov bool minute min (conservative: True only if every sample is True) Sun-in-field-of-view
n_samples int64 count HK records in the minute ≥ 1
orbit_id, src_file, src_sha256, archive_version object provenance never missing

Ordering: the parser preserves archive (telemetry-arrival) order and never sorts. Source records contain sub-second out-of-order steps (SCIENTIFIC_FINDINGS.md F-3). All aggregations used here are order-independent. A consumer needing chronological order must call app.v2.utils.timeseries.chronological_sort() explicitly.

T5 — hel1os_spec_1min (1,026,816 rows · 373 files)

One row per (minute, detector); HEL1OS spectra. Source: hel1os_*_spectra_*.fits.

Column Type Units Derivation Allowed values Missing semantics
timestamp datetime64[ns,UTC] minute index never missing
detector object spectra detector CZT1,CZT2,CDTE1,CDTE2 never missing
counts object → array[detchans] float64 counts per-channel Σ over finite spectra in the minute ≥ 0 NaN per channel where absent
stat_err object → array[detchans] float64 counts per-channel Σ of STAT_ERR ≥ 0 as above
live_time_s float64 s Σ EXPOSURE of contributing spectra ≥ 0 never missing
n_spectra int64 count spectra contributing to the minute ≥ 1 never missing
chantype category from CHANTYPE PHA never missing
detchans int16 count channel-space size — carried explicitly (r5) 341 (CZT) or 511 (CdTe) never missing
orbit_id, src_file, src_sha256, archive_version object provenance never missing

Three incommensurable channel spaces (F-4): SoLEXS PI 340, HEL1OS CZT PHA 341, HEL1OS CdTe PHA 511. Never concatenate counts arrays across families or instruments — always filter by detchans/detector first. Channel indices are ordinal; no response matrix exists.

T6 — gti_intervals (2,130 rows · 1 file)

Long-form good-time intervals, one row per interval.

Column Type Units Derivation Notes
instrument object source instrument solexs
detector object detector SDD2 (SDD1 contributes no intervals — F-12 inactive)
start_utc datetime64[ns,UTC] interval start inclusive
stop_utc datetime64[ns,UTC] interval stop inclusive
duration_s float64 s stop − start + 1 (inclusive convention) > 0 always
src_file, src_sha256 object provenance never missing

A GTI-excluded second may carry a finite count (spec r5). The invariant is one-directional: NaN(counts) ⇒ GTI-excluded. The excess is unexplained (A-14 / F-2).

T7 — provenance_manifest (5,199 rows · 1 file)

One row per parsed source file. Every canonical row traces here via src_file.

Column Type Derivation Notes
src_file object source path join key; unique with (product,detector)
src_sha256 object archive SHA-256 (Phase 0.5.1 manifest) 64 hex
instrument object solexs / hel1os
detector object e.g. SDD1,SDD2,CZT1,CDTE2 None for whole-orbit products
product object lc,pi,gti,hk,spectra,lightcurve,events
archive_version object v1.0,v1.1,V111,…
obs_date object YYYYMMDD
orbit_id object HEL1OS orbit, else None
creator object producing pipeline, from the FITS header e.g. solexs_pipeline-1.4
processing_date object header DATE None for HEL1OS (no DATE header)
rows_in / rows_out int64 source rows / emitted rows 0/0 legal for F-12 inactive detectors
parser_version object parser identity v2-0.5.2
parsed_at_utc object build wall-clock time the one non-reproducible field — excluded from content hashes
time_epoch_resolution object resolved time convention unix_seconds (SoLEXS) / relative_seconds (HEL1OS spectra) / mjd_days
assumptions_applied object → array[str] assumptions recorded at parse audit trail

Provenance behaviour (all tables)

  1. Every canonical row carries src_file + src_sha256; no row lacks provenance (verified: 0 orphans, 0 duplicates, 0 missing).
  2. src_sha256 is the archive SHA-256 from the Phase 0.5.1 manifest — it pins the input, not the output.
  3. HEL1OS tables additionally carry orbit_id, resolved by the Version Resolution Engine per (minute, detector). Two detectors in the same minute may legitimately have different orbit_ids at orbit boundaries.
  4. Provenance columns are not measurements; they must not be used as features.

Section 4

Known defects in the source archive

What was wrong with the archive products, and what was done about each.

These are published rather than silently repaired. A pipeline that quietly fixes its inputs produces a dataset nobody can audit, and the disposition ledger below is what allows someone to disagree with a decision rather than merely inherit it.

1. Summary

Anomaly class Rule Count Products affected Disposition
GTI interval STOP ≤ START F-19 12 SoLEXS daily archives Archive defect (CONTRADICTION-005 Defect C) — excluded, logged
Duplicate HK mjd timestamp F-16 2 HEL1OS orbits Archive defect (CONTRADICTION-006 Defect B) — excluded, logged
Inactive detector (empty GTI) F-12 426 SoLEXS SDD1 GTI files Legal state, not an error — SDD1 is GTI-only, SDD2 carries science
HK time inversions (jitter) see A-12 HEL1OS orbits Characterised in MILESTONE_VIII_VALIDATION_REPORT.md (A-12)
Two PHA channel families F-07→resolved 0 (resolved) HEL1OS CZT/CdTe Contract corrected (CONTRADICTION-005 Defect A, r5) — 0 residual failures
AppleDouble ._* sidecars F-18 (excluded) filesystem artifacts exFAT/macOS artifacts, never data — excluded by allowlist

Total products excluded from the canonical dataset: 14 (12 SoLEXS + 2 HEL1OS), of 436 + 391 = 827 available. Coverage: SoLEXS 424/436, HEL1OS 389/391.

2. F-19 — SoLEXS GTI STOP ≤ START (12 archives)

A GTI interval whose stop time is at or before its start time. STOP ≤ START is not a convention question; it is an internal inconsistency in the archived GTI table. F-19 terminates on parse.

Affected (all SoLEXS daily archives): AL1_SLX_L1_20240422_v1.0, 20240501, 20250729, 20251205, 20260406, 20260407, 20260408, 20260409, 20260411, 20260413, 20260414, 20260415.

Disposition: archive defect. Excluded from the canonical dataset, individually logged. No amendment (F-19 behaves as designed). Note the temporal clustering (8 of 12 in April 2026) — recorded as an observation, not interpreted.

3. F-16 — Duplicate HK mjd (2 orbits)

Two housekeeping rows sharing an identical mjd timestamp. §2.8 (r4) requires HK mjd to be unique; a duplicate terminates via F-16.

Affected (HEL1OS orbits):

  • HLS_20260201_120005_43198sec_lev1_V111 — 2 duplicated values (of 63,298 rows)
  • HLS_20260202_000005_43183sec_lev1_V111 — 1 duplicated value

Disposition: archive defect (CONTRADICTION-006 Defect B, owner ruled not approved for amendment — F-16 continues to terminate). Excluded, logged. 389 of 391 orbits have fully unique HK mjd.

4. F-12 — Inactive detectors (426 GTI files)

A GTI table with zero rows (NAXIS2 = 0), which the contract treats as a legal inactive-detector state, not an error (the single deliberately non-terminating rule). OBSERVED: SoLEXS SDD1 supplies GTI only (no .lc/.pi), and its GTI is empty across the archive; SDD2 carries all science.

Count: 426 F-12 detections among 850 parsed SoLEXS GTI files (SDD1 across the built days). Disposition: expected structural property of the SoLEXS archive; not a defect.

5. Two PHA channel families (resolved, 0 residual)

OBSERVED during the archive-wide build: HEL1OS has two detector families with different PHA channel counts — CZT = 341, CdTe = 511. The r0 contract asserted a single DETCHANS = 341, which blocked all 391 orbits at F-07.

Disposition: contract corrected (CONTRADICTION-005 Defect A → spec r5: per-family allowlist; F-11 restated over three incommensurable channel spaces — SoLEXS PI 340, HEL1OS CZT PHA 341, HEL1OS CdTe PHA 511). After the fix: 0 F-07 DETCHANS failures archive-wide. Not an archive defect — an archive property the contract now encodes.

6. AppleDouble sidecars (._*)

macOS writes ._<name> metadata sidecars on the exFAT volume. These are filesystem artifacts, never instrument data. F-18 (allowlist + ._* guard) excludes them. Disposition: not data; excluded structurally. (Note: the withdrawn "10 F-01 unreadable days" figure from CONTRADICTION-005 originated in an ad-hoc scan that globbed these sidecars; the authoritative build has no F-01 skips.)

7. Lost / unavailable dates (not defects of parsed data)

From Phase 0.5.1: exactly one genuinely lost SoLEXS date (2023-12-13, an interrupted download in downloads/corrupted/), and the HEL1OS archive begins only 2025-12-07 (combined SoLEXS+HEL1OS coverage = 179 days). These are acquisition gaps, not quality defects of the data on hand; carried to Phase 0.5.3.

8. Disposition ledger

Product(s) Rule Permanent disposition
12 SoLEXS F-19 archives (§2) F-19 Archive defect — permanently excluded
2 HEL1OS F-16 orbits (§3) F-16 Archive defect — permanently excluded
426 SDD1 empty GTIs (§4) F-12 Legal inactive — not excluded, not a defect
CZT/CdTe channel counts (§5) F-07→r5 Archive property — contract corrected, 0 residual
._* sidecars (§6) F-18 Not data — structurally excluded
2023-12-13, pre-2025-12 HEL1OS (§7) Acquisition gap — Phase 0.5.3

These are the permanent archive findings of Phase 0.5.


Section 5

Known biases and limitations

Ten clauses stating what this dataset cannot support — including two that constrain this project's own headline result.

Each clause states the measurement behind it and the constraint it imposes on model choice, evaluation, or the claims that may be made. Model cards cite these clause IDs directly rather than restating them, so there is exactly one copy of every caveat and no opportunity for a softer second version to appear elsewhere on the site.

L-1 — The effective sample size is 581, not 564,160

Measurement. 564,160 usable minutes contain 581 independent M/X events (4,065 ≥C; 47 X-class; 179 M/X on combined days).

Constrains model choice. Model capacity must be sized to ~581 events, not to half a million rows. A model with thousands of effective parameters will fit event-specific noise. Recommendation: ≤ ~15 features and a low-capacity learner for the first benchmark; deep sequence models only if Stage 3 evidence justifies them.

Constrains evaluation. Minute-level metrics overstate confidence by roughly 564,160/581 ≈ 970×. All metrics must be event-level, with confidence intervals from a block bootstrap over events. Reporting minute-level AUC as the headline would be a statistical error, not a stylistic choice.

Constrains claims. Any subgroup smaller than ~50 events cannot support a quantitative claim. This rules out standalone X-class conclusions (47 events; ~15–20 in a test split, where one event moves recall by ~5 points).

L-2 — Forecast skill is horizon-flat: it is activity-state persistence, not precursor detection

Measurement. Prediction AUC on quiet minutes only (in-progress flares excluded): 30 min 0.8119, 60 min 0.8023, 120 min 0.7951, 360 min 0.7884. A 12× horizon change costs 0.024 AUC.

Constrains claims — severely. Genuine precursor information must decay with horizon. Near-flat skill across 30 min to 6 h is the signature of a slowly varying activity state that persists for days. A raw forecasting AUC of ~0.80 must never be reported as flare-prediction skill. It must be reported as improvement over a persistence baseline, with the skill-vs-horizon curve published alongside.

Constrains validation. Persistence and climatology baselines are mandatory, not optional — without them the number is uninterpretable. This is v1's forecast-vs-persistence finding reproduced on real data, now with the mechanism identified.

Constrains loss functions. Optimising a horizon-agnostic loss will find the persistence solution, because that is where the gradient is. If precursor detection is the goal, the objective must explicitly reward short-horizon discrimination over long — otherwise the model will correctly learn "the Sun is active" and the result will be misread.

L-3 — No instrument response: physical severity targets are unconstructible

Measurement. No RMF/ARF anywhere in the archive. Channels are ordinal. The light curve is a band-limited integral of the spectrum with LC/Σ(PI) ratio varying 1.76–20.4 (F-1).

Constrains model choice. No regression target in physical units (W/m², GOES class as a continuous quantity) can be built or validated. Calibrated severity regression is excluded — this is a data limitation no architecture resolves.

Constrains claims. Permitted: "the model ranks events by observed intensity," "the model classifies against GOES-defined labels." Not permitted: "the model estimates GOES flux," "the model measures plasma temperature," or any statement in keV.

Constrains features. No physically-calibrated spectral feature (temperature, emission measure, spectral index) is derivable. Spectral features are ordinal-channel statistics only.

L-4 — The combined-instrument arm is 171 days

Measurement. SoLEXS-only: 424 days, 581 M/X events. Combined SoLEXS+HEL1OS: 171 days (2025-12-07 → 2026-06-15), 179 M/X events, 13 X-class.

Constrains validation. A chronological split within 171 days leaves a test period of ~2 months — too short for a stable estimate and containing no activity-phase diversity.

Constrains claims. Combined-instrument results cannot be generalised beyond a single ~6-month solar-maximum window. The ISRO brief's combined requirement is best served by an ablation on the shared window, not by a primary benchmark, since only a matched-window comparison attributes a difference to the instrument rather than the epoch.

L-5 — Spectral features carry little marginal information; hardness ratios carry none for prediction

Measurement (55,710 minutes, 40 days): band sums add ≤ 0.012 AUC over the total rate (hard 0.8911 vs total 0.8794). Hardness ratios: −0.030 for nowcast, and 0.5075 — indistinguishable from random — for 60-min prediction.

Constrains features. Elaborate spectral engineering is not justified in advance. Hardness-ratio features for prediction are directly refuted. The 340-channel spectrum must earn inclusion through a measured ablation.

Constrains claims. Until the Stage-4 ablation runs, no claim may be made that spectral resolution improves flare detection or prediction. The univariate evidence points the other way.

Scope of this limitation: it establishes that simple band-sums and ratios add little. It does not prove the full 340-dim spectrum is uninformative under a multivariate model — which is exactly why the ablation exists.

L-6 — Class imbalance and its interaction with event scarcity

Measurement. Base rates: M/X nowcast 2.37 %, M/X ≤60 min 4.58 %, ≥C nowcast 12.25 %, ≥C ≤60 min 29.93 %.

Constrains loss functions. At 2.4 % positives, unweighted accuracy is meaningless and plain cross-entropy under-weights positives. Class weighting or focal loss is appropriate — but with 581 events, aggressive re-weighting increases variance on the rare class. Recommendation: mild class weighting, and select on a threshold-free ranking metric (AUC/AP) rather than on accuracy.

Constrains evaluation. Report the precision–recall frontier, not a single operating point. v1's most important operational lesson was that a fixed false-alarm budget can bury a working detector; the frontier makes the trade-off visible instead of pre-judged.

L-7 — Missingness must be masked, never imputed

Measurement. T1 counts_total NaN on 4.20 % of minutes; rate_total non-finite on 7.6 %; every NaN flagged (q_no_data, q_partial). T3's 75 % NaN is structural (long form), not missing data.

Constrains model choice. Architectures requiring dense complete input need an explicit mask channel; imputation is prohibited by dataset policy and would fabricate observations. If an architecture cannot accept masks, prefer a different architecture rather than imputing.

Constrains evaluation. The dropped-window fraction is an experimental parameter and must be reported — dropping differs systematically between quiet and active periods, so silently dropping could bias the base rate.

L-8 — GTI semantics are not fully characterised

Measurement. On 70 of 414 days, GTI excludes seconds that nevertheless carry finite counts — 266,919 s total, up to 43,199 s in one day, concentrated (top-10 days = 80.2 %). Mechanism unknown (A-14 / F-2).

Constrains features. live_time_s and gti_fraction are usable as observability covariates but their exact semantics are open. Do not build a physical rate normalisation that depends on GTI meaning more than "seconds the archive marks good."

Constrains claims. Exposure-normalised quantities carry an unquantified systematic on those 70 days. Any result sensitive to exposure normalisation should be checked with and without them.

L-9 — Labels are exogenous and instrument-mismatched

Measurement. All labels come from the GOES catalogue, defined on GOES 1–8 Å flux. SoLEXS has no cross-calibration to that scale. v1 measured C-class detection at 0.244 recall versus 0.909 for M — i.e. many catalogued C flares are below SoLEXS's effective sensitivity.

Constrains claims. A "missed" flare may be a genuinely unobservable one, not a model failure. Recall against the GOES catalogue conflates model performance with instrument sensitivity. Report per-class recall with event counts always attached, and treat ≥C results as sensitivity-limited.

Constrains loss functions. Training on ≥C labels injects label noise concentrated in the positive class — the most damaging kind. Recommendation: train the primary benchmark on M/X labels (0.954 vs 0.800 univariate AUC quantifies the difference) and use ≥C as a robustness check.

L-10 — Single detector, single solar-cycle phase

Measurement. SoLEXS science is SDD2 only (SDD1 F-12 inactive across 426 GTI files). The span sits near solar maximum; M/X events per quarter range from 3 (2025Q2) to 181 (2024Q2).

Constrains validation. No detector-redundancy check is possible for SoLEXS. The 60× quarterly variation means a naive chronological split can produce train/test periods with wildly different base rates — the split must be chosen with event counts in view (hence the recommended 2024Q1–2025Q4 / 2026Q1–Q2 split, ~423 / ~155 events).

Constrains claims. No cross-cycle generalisation claim is supportable. Results apply to a solar-maximum regime observed by one detector.


Summary — what can and cannot be claimed

Supportable with this dataset

  • M/X flare nowcast/detection performance, event-level, with CIs — the signal is strong and verified (AUC 0.954 from one raw column).
  • Improvement over persistence for short-horizon prediction, if demonstrated against the mandatory baselines.
  • Ablation results: does spectral resolution help? does HEL1OS help? — as measured deltas with CIs.
  • Operational characterisation: recall, false-alarm attribution, latency, the full frontier.

Not supportable

  • Calibrated flux or severity regression (no RMF).
  • Raw forecasting AUC presented as precursor skill (horizon-flat).
  • Standalone X-class conclusions (47 events).
  • Cross-cycle or multi-detector generalisation (one phase, one detector).
  • Any claim in keV or physical spectral units (ordinal channels only).

The through-line: this dataset's strength is detection, and its strength there is genuine and large. Its forecasting signal is real but is an activity-state effect, and its severity axis is physically unavailable. A programme that leads with detection, controls forecasting against persistence, and treats spectra and HEL1OS as measured ablations will produce defensible results. One that leads with forecasting AUC or severity regression will produce claims this dataset cannot support.