Bring the figures the comments quote back to what the catalogue now holds
Later commits on this branch (0e9ab6f,ff744a0,8c3a860, and this round's fold, positional lookup and parallax fallback) changed counts that comments in build.ts, star-readouts.ts, star-catalog.ts and fetchExoplanets.ts still quoted as "measured" or "today". Each is now the value measured on the published catalogue after an ETL run from cache (decoded with decodeStarCatalog, or from the validator log where it prints them): - distances without a published error 439 -> 346, the Gliese ones 357 -> 264 (82 archive); - parallax distances ranged 1 109 -> 1 116; HYG stars at Gaia's distance 8 129 -> 8 105, and the Gaia-placed stars HYG describes 62 002 -> 61 713 at Gaia's distance, 62 097 in all; - HYG rows without a Gaia counterpart 11 554 -> 11 478: past 250 pc 8 307 (1 660 naked-eye), inside it 3 170 (1 204 brighter than V 8, 1 804 from 8 to 12, 162 fainter, 112 of them Gliese stars within 50 pc); the sentence also said those were every star past 250 pc, which the archive's hosts no longer let it be; - planets with a host 6 327 -> 6 328, the 26 left having neither a distance nor a parallax; - renamed hosts 575 -> 574; the composite table fills 100 of the 127 blank distances, not "the 100". No ceiling or floor changes; comments only. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
+16
-15
@@ -24,7 +24,7 @@ function assertCondition(condition: boolean, message: string): void {
|
||||
|
||||
/**
|
||||
* Stars whose magnitude is a stand-in, and distances published without an error. Measured 309 and
|
||||
* 439: the 44 Gaia sources with no G and the 265 archive hosts with neither V nor G; the 357 Gliese
|
||||
* 346: the 44 Gaia sources with no G and the 265 archive hosts with neither V nor G; the 264 Gliese
|
||||
* distances (no Hipparcos parallax behind them) and 82 archive hosts the archive gives no error
|
||||
* for. Losing either field loses it for hundreds of thousands of stars.
|
||||
*/
|
||||
@@ -33,7 +33,7 @@ const MAX_STARS_WITHOUT_DISTANCE_ERROR = 1_000;
|
||||
/**
|
||||
* What the errors themselves come to, which the two counts above cannot see: Gaia's parallax_error
|
||||
* stored in milliarcseconds rather than over the parallax still encodes, decodes and passes both.
|
||||
* Measured: the median relative error of the stars at Gaia's distance is 0.33 %, and 1 109 parallax
|
||||
* Measured: the median relative error of the stars at Gaia's distance is 0.33 %, and 1 116 parallax
|
||||
* distances (0.24 % of the stars) have one of a fifth or more, which the card prints as a range.
|
||||
* The mistake above gives 1.92 % and 17 689.
|
||||
*/
|
||||
@@ -41,8 +41,8 @@ const MAX_MEDIAN_GAIA_DISTANCE_ERROR = 0.01;
|
||||
const MAX_RANGED_DISTANCE_SHARE = 0.01;
|
||||
/**
|
||||
* HYG stars that keep their own row but sit at Gaia's distance, which fetchStars flags for the card
|
||||
* to say "HYG, Gaia DR3 distance". Measured 8 129; the flag dropped leaves none, and nothing else
|
||||
* notices — the other 62 002 carry it from their Gaia row.
|
||||
* to say "HYG, Gaia DR3 distance". Measured 8 105; the flag dropped leaves none, and nothing else
|
||||
* notices — the other 61 713 carry it from their Gaia row.
|
||||
*/
|
||||
const MIN_HYG_STARS_AT_GAIA_DISTANCE = 6_000;
|
||||
/**
|
||||
@@ -225,19 +225,19 @@ function validateStars(stars: StarRecord[]): void {
|
||||
* The other failure leaves no close pair at all, because proper motion had already carried the
|
||||
* two entries tens of arcseconds apart — the 2026-08-24 refresh, where HYG sat at epoch 2000.0
|
||||
* and Gaia at J2016.0. What it does leave is HYG rows that found no counterpart: 36 056 of them
|
||||
* against the 11 554 today, and no counterpart was possible for most of those. 8 301 of them are
|
||||
* every star in the published catalogue beyond 250 pc, which the main query never downloads: 6 835
|
||||
* that Gaia's parallax puts past `ETL_GAIA_DISTANCE_PC` while Hipparcos put them inside
|
||||
* `ETL_STAR_DISTANCE_PC`, and 1 466 naked-eye stars kept at any distance. The other 3 252 are what
|
||||
* Gaia genuinely lacks: 1 194 brighter than V 8, which it saturates on or measures poorly, 1 832
|
||||
* between 8 and 12, and 226 fainter, 184 of them Gliese stars within 50 pc that neither of its
|
||||
* queries holds. So the headroom left to the ceiling tracks the gap between those two cutoffs as
|
||||
* against the 11 478 today, and no counterpart was possible for most of those. 8 307 of them are
|
||||
* every star beyond 250 pc but the archive's planet hosts, which the main query never downloads: 1 660
|
||||
* naked-eye stars kept at any distance, and 6 647 fainter ones that Hipparcos put inside
|
||||
* `ETL_STAR_DISTANCE_PC` while Gaia's parallax puts them past `ETL_GAIA_DISTANCE_PC`. The other
|
||||
* 3 170 are what Gaia genuinely lacks: 1 204 brighter than V 8, which it saturates on or measures
|
||||
* poorly, 1 804 between 8 and 12, and 162 fainter, 112 of them Gliese stars within 50 pc that
|
||||
* neither of its queries holds. So the headroom left to the ceiling tracks the gap between those two cutoffs as
|
||||
* much as Gaia's completeness.
|
||||
*
|
||||
* This bounds a merge that went wrong, and — loosely — a Gaia download that came back short: a
|
||||
* truncated answer leaves the HYG rows whose counterpart it dropped without one, so survivors go
|
||||
* *up*, not down. Measured on the main query when it was the only one, with 10 886 survivors
|
||||
* against today's 11 554: 11 004 at nine tenths of its rows, 12 711 at half, 16 258 at a third. So
|
||||
* against today's 11 478: 11 004 at nine tenths of its rows, 12 711 at half, 16 258 at a third. So
|
||||
* this ceiling only catches a deep truncation, and `fetchGaiaStars` catches the shallower ones
|
||||
* with a row floor on each query.
|
||||
*/
|
||||
@@ -326,8 +326,9 @@ function validateBodies(bodies: BodyRecord[]): void {
|
||||
|
||||
/**
|
||||
* The share of planets that must have a star on the map: 6 327 of 6 354 did when the ETL began
|
||||
* adding the hosts the catalogue lacks from the archive's own figures, up from 2 071. The other
|
||||
* 27 have no distance in either archive table, so nothing can place them; the floor leaves room
|
||||
* adding the hosts the catalogue lacks from the archive's own figures, up from 2 071, and 6 328
|
||||
* once a blank sy_dist gave way to the parallax (mu2 Sco b). The other 26 have neither a distance
|
||||
* nor a parallax in either archive table, so nothing can place them; the floor leaves room
|
||||
* for a few more of those, not for the matching or the additions to stop working.
|
||||
*/
|
||||
const MIN_HOSTED_SHARE = 0.995;
|
||||
@@ -357,7 +358,7 @@ function validateExoplanets(exoplanets: ExoplanetRecord[], stars: StarRecord[]):
|
||||
const host = starsById.get(exoplanet.hostStarId);
|
||||
assertCondition(host !== undefined, `Exoplanet ${exoplanet.id} references unknown star id ${exoplanet.hostStarId}.`);
|
||||
// A host known only as "Gaia DR3 2635476908753563008" cannot be found by searching for
|
||||
// TRAPPIST-1; fetchExoplanets names it after its host, and 575 were renamed.
|
||||
// TRAPPIST-1; fetchExoplanets names it after its host, and 574 were renamed.
|
||||
assertCondition(!isDesignation(host!), `Exoplanet ${exoplanet.id}'s host is only a designation, ${host!.name}, not named after ${exoplanet.hostStarName}.`);
|
||||
// The Sun has no exoplanets, so any match to it is a matching failure — historically a
|
||||
// blank distance column parsing as 0, which puts the host at the origin and matches Sol
|
||||
|
||||
Reference in New Issue
Block a user