Listening for events…

Scope freeze — transient Eventdex kind

Frozen 2026-06-26. The fourth cosmic-origin Eventdex kind, after gw (gravitational waves), uhecr (ultra-high-energy cosmic rays), and neutrino (IceCube astrophysical neutrinos). The slot is a transient source: one point on the sky that appeared, brightened, and faded.

The source

fink_transients (already live in PG, FinkTransientsFetcher) — optical alerts from the Zwicky Transient Facility (ZTF) survey, served through the Fink broker (api.fink-portal.org). Each alert is one detection of a changing source; one source emits many alerts as ZTF re-observes it. No spine-reload script is needed: the kind is built directly from the live source by grouping its observations into one slot per object.

The slot

  • One slot = one ZTF object (slot ID = the ZTF object id, e.g. ZTF21abgiwdu). An object's many alerts collapse into one light-curve summary.
  • Cosmic-origin: the scientific position is a sky direction (RA/Dec), not a ground point, so the dossier's geographic lat/lon stay NULL like the other cosmic kinds. The sky direction lives in ra_deg/dec_deg (Fink stores RA in the observation longitude, Dec in latitude).
  • Roster: 2,350 objects across three Fink classes (sn=708, kilonova=21, unknown=1,621). Sixteen objects carry more than one label across their alerts; the slot is named from the more specific label (sn/kilonova over unknown), which is why the per-class object tallies sum to 2,366 while the true distinct object count is 2,350.

Scope — genuine transients only (Mike's call 2026-06-26)

Fink's five alert classes split into two phenomena:

  • Appear-and-fade transients (IN): SN candidate (supernovae), Kilonova candidate (neutron-star mergers), Unknown (unclassified transients). These are the genuine optical transients.
  • Moving Solar System bodies (OUT): Solar System MPC (asteroids/comets matched to the Minor Planet Center), Solar System candidate. An asteroid drifting across the field is a different phenomenon, not a transient. Fink flags those classes precisely to filter them out of the transient stream, so they are excluded here. They are a candidate for a separate minor-body kind (one-phenomenon-per-category, feedback_organize_not_process).

Slot contents

  • Identity: ZTF object id, subtype (sn/kilonova/unknown), Fink classification.
  • Sky direction: RA/Dec of the latest detection, plus the RA/Dec scatter across all detections (a small scatter confirms a fixed point source).
  • Light curve, summarized from the object's alerts: number of alerts, max cumulative ZTF detection count, first/last detection time, duration in days, brightest / faintest / latest magnitude, and the set of photometric bands observed (ZTF g/r/i).
  • Provisional flag: an Unknown (unclassified) object is the most provisional and is flagged as such for downstream filtering.
  • Source fields: the most-specific alert's native Fink fields, verbatim.

Measured reality

  • IN: ZTF detections of real photons from real changing sources, with Fink's measured classification. Clean per feedback_measured_reality_only.
  • OUT: no model output. (Fink also serves machine-learning scores; those are not ingested as observations. The classification label is a measured catalog assignment, like a tornado's EF rating, not a forecast.)

Storage

  • Source fink_transients (unchanged; already live and active).
  • Slots in the shared data/event_storehouse/transient/, reusing the event_storehouse write + disk-rebuilt-index machinery.

Gotchas (reuse-critical)

  • extra_json is TEXT — cast ::jsonb for any SQL on object_id / classification / filter_id.
  • RA is in longitude (0–360), Dec is in latitude. These are sky coordinates the source already stored in the geo columns; the dossier keeps geographic lat/lon NULL and exposes the sky direction separately.
  • One object, many classifications. Group by object, prefer the specific label; do not count distinct objects per class and sum (double-counts the 16 cross-labeled objects).
  • n_detections is cumulative per alert (ZTF's running count for the object); the slot keeps the max, not the sum.

Frozen vs deferred-v2

  • Frozen (this brick): 2,350-object roster as transient slots; per-object light-curve summary; sky direction; catalog index.
  • Deferred-v2: the directional multi-messenger cross-match shared with gw/uhecr/neutrino (does a transient align in time + sky with a GW event, a neutrino, or a cosmic ray?); a separate minor-body kind for the excluded Solar System classes; per-band light-curve series; spectroscopic-class refinement.
Live Feed