From cd3de7136136ec0f82a86335183ff373ad814411 Mon Sep 17 00:00:00 2001 From: Laurence Date: Tue, 21 Jul 2026 12:43:11 +0100 Subject: [PATCH] Verify Cen A, book CrA on T8 for 22 Jul evening, rebuild the rate model Cen A (reservation 749302, T32) completed at 11:16 UTC, 34 minutes early because the plan finished, not because of a fault: NGC5128 images are on t32.itelescope.net:8032 and transaction 851344 billed 160 points. Balance is now 2,097 of the original 2,638. That second bill settles the billing question the 20 Jul note left open. T32 billed 160 for a 120 min plan (2.00 h x 80) and T59 billed 381 for a 180 min plan (3.00 h x 127); both land exactly on the plan's exposure total and neither lands on wall-clock time. So billing is per imaging minute as originally documented, and the x1.6 wall-clock multiplier is withdrawn from CAMPAIGN.md, TODO.md and NOTES.md. What is actually wrong is the rate card's per-scope numbers, so each scope's rate now has to be derived from its first real bill. The practical consequence is the opposite of the old warning: the campaign is now heading to UNDER-spend by roughly 800 points, so later planning sessions should add or lengthen runs rather than trim them. Queue #2 (Corona Australis on T8) is booked at last. The original 01:35-04:35 slot was confirmed dead by probing New.aspx, which answered "Conflicting reservation. Start time must be later than 2:25 AM" (user hajo's reservation 749207, exactly as the previous session predicted). Rather than take the leftover 02:30-05:30, where the target sits 3.5 to 6.5 hours past the meridian, the run moved to the next night's evening, 2026-07-22 21:45 to 2026-07-23 00:45 SSO local, which brackets the ~22:30 culmination so all 115 minutes of imaging happen near the zenith. This is the geometry of the previously rejected option (c) on the night of option (b): (c) was only rejected because Cen A held the reservation quota, and that expired when Cen A completed. Verified via Reservation/MySummary.aspx; quota now 6:50 of 8:00. The New.aspx probe is documented in plans/README.md as the way to test a slot for conflicts, since the DayPilot grid renders client-side and shows nothing to a plain HTTP fetch. --- CAMPAIGN.md | 65 ++++++++++++++++++++++++++++++++++++++++++------- plans/README.md | 9 +++++++ state/NOTES.md | 13 ++++++++++ state/TODO.md | 47 ++++++++++++++++++++--------------- 4 files changed, 105 insertions(+), 29 deletions(-) diff --git a/CAMPAIGN.md b/CAMPAIGN.md index 7ec6e21..d1963b0 100644 --- a/CAMPAIGN.md +++ b/CAMPAIGN.md @@ -26,15 +26,27 @@ Update after every run: date, scope, target, imaging minutes, points charged | 2026-07-19 | T33 | 47 Tuc | ngc104-test.txt | 17 min | 0 (free) | DID NOT RUN | reservation 749228 expired unused: no images, no logs on T33 (checked 20 Jul); grid shows reschedule=No despite the flag being set at booking | | 2026-07-19 | T59 | NGC 6744 | ngc6744-t59.txt | 180 min | ~240 (0% moon disc. until 21 Jul) | **381** | SUCCESS (txn 851148): ran 00:05:22-03:29:56 SSO, Time Used 3h24m32s, 0% moon disc. Full dataset on scope server: L 15x300s BIN1, RGB 7x300s each BIN2; previews checked, round stars, galaxy clean: no refund case. Effective rate ~112 pts/hr of WALL time (not the 80/hr imaging-time estimate: see NOTES rate correction) | | 2026-07-20 | T33 | NGC 6752 | ngc6752.txt | 17 min | 0 (free) | DID NOT RUN | reservation 749229 expired unused: no images, no logs (checked 20 Jul 20:30 UTC, after window) | +| 2026-07-21 | T32 | Centaurus A | cena-t32.txt | 120 min | ~350 (x1.6 model) | **160** | SUCCESS (txn 851344): ran 18:50:24-21:16:19 SSO local (08:50-11:16 UTC), Time Used 2h25m55s, 25% moon discount. Images present: /images/qisback/T32/NGC5128 on t32.itelescope.net:8032. Came in at 0.46x the x1.6 model, i.e. LESS than the original estimate: see the rate correction below | -Cumulative spend: 381. Balance after (verified GetAccountStatus 2026-07-20): **2,257**. +Cumulative spend: 541. Balance after (verified GetAccountStatus 2026-07-21 +11:40 UTC): **2,097**. -**Re-estimation warning (2026-07-20):** T59 actual came in at 1.6x the estimate -(381 vs ~240). Either billing is on wall-clock session time (Time Used matched -start-to-end, not the 180 min of exposure) or the rate card's 80/hr for T59 is -stale. Treat ALL queue estimates below as ~1.6x low until re-verified against -account/history.aspx after the next paid run. At 1.6x, the remaining queue -(~1,700 est) actually covers the full 2,257 balance nicely. +**Rate correction (2026-07-21, supersedes the 2026-07-20 x1.6 warning).** Two +paid runs now bracket the question, and both bill EXACTLY the plan's imaging +minutes, not wall-clock: + +| Scope | Plan imaging | Wall (Time Used) | Billed | Points per imaging hour | +|---|---|---|---|---| +| T59 | 180 min (36x300s) | 3h24m32s | 381 | **127** (0% moon) | +| T32 | 120 min (24x300s) | 2h25m55s | 160 | **80** (25% moon) | + +381 = 3.00 h x 127 and 160 = 2.00 h x 80, both to the point. So billing is on +imaging time as originally documented, and the wall-clock theory is dead. What +is wrong is the rate card in NOTES.md: it lists T59 at 80/hr (actual 127) and +T32 at 146/hr (actual 80 even after the 25% moon discount, so a base near +107/hr). The two look transposed, but two samples cannot prove that. **Do not +apply a blanket multiplier.** Derive each scope's effective rate from its first +actual bill, and treat any not-yet-observed scope's card rate as +/-60%. ## Planned allocation (~2,600 points, adapt as scopes/weather allow) @@ -66,7 +78,8 @@ account/history.aspx after the next paid run. At 1.6x, the remaining queue | 749228 | T33 | 19 Jul | 00:05-00:50 | ngc104-test.txt | 0 | EXPIRED unused (no run, no auto-reschedule) | | 749229 | T33 | 20 Jul | 00:05-00:50 | ngc6752.txt | 0 | EXPIRED unused (no run, no auto-reschedule) | | 749230 | T8 | 26 Jul | 21:35-23:55 | catspaw-t8.txt | ~146 (25% moon disc.) | still booked | -| 749302 | T32 | 21 Jul | 18:50-21:50 | cena-t32.txt | ~350 (x1.6 rate, 25% moon disc.) | booked 20 Jul. EVENING slot: T32 has a 35 deg elevation floor and Cen A culminates ~17:10 before dark, sinking to 11 deg by the old 00:35 slot (which could never have run). 46% moon is up ~30 deg away: acceptable for a bright drain target. Reschedule flag AGAIN shows No despite RescheduleCheckbox=on in the POST: the flag does not stick, treat every booking as one-shot. RUNS 08:50-11:50 UTC 21 Jul; verify after that | +| 749302 | T32 | 21 Jul | 18:50-21:50 | cena-t32.txt | ~350 (x1.6 rate, 25% moon disc.) | COMPLETED, billed 160. EVENING slot: T32 has a 35 deg elevation floor and Cen A culminates ~17:10 before dark, sinking to 11 deg by the old 00:35 slot (which could never have run). Ran 18:50-21:16, finishing 34 min early (plan complete, not a fault); images landed under /images/qisback/T32/NGC5128 | +| (id not captured) | T8 | 22 Jul | 21:45-00:45 | cra-t8.txt | ~250 | booked + MySummary-verified 2026-07-21 11:45 UTC. This is queue #2 finally placed: see the resolution note below. Runs 11:45-14:45 UTC 22 Jul | | 749314 | T33 | 21 Jul | 00:05-00:50 | ngc104-test.txt | 0 (free) | booked + grid-verified 2026-07-21 08:55 UTC. 47 Tuc first-light retry, third attempt. Runs 14:05-14:50 UTC 21 Jul. Reschedule flag again No (free scopes never rebook) | The T33 first-light test is now on its THIRD booking (749314); the two prior free @@ -83,7 +96,7 @@ Verify every booking via Edit.aspx?id= probing (sequential ids), NOT the grid. | # | Scope id | start | end | start sel | end sel | Plan | Est. pts | |---|---|---|---|---|---|---|---| | 1 | BOOKED as 749302 (see table above); the original 00:35 slot was an error, Cen A is an EVENING target (35 deg floor on T32) | | | | | cena-t32.txt | ~350 | -| 2 | GRAS008 | 2026-07-22T01:35:00 | 2026-07-22T04:35:00 | 1:35 AM | 4:35 AM | cra-t8.txt | ~250 | CONFLICT: user hajo holds T8 00:25-02:25 that night (res 749207), overlapping our 01:35 start. See resolution note below | +| 2 | BOOKED 2026-07-21 for the night of 22 Jul, 21:45-00:45 (see table above); the 01:35 slot was blocked by hajo and low anyway | | | | | cra-t8.txt | ~250 | | 3 | GRAS059 | 2026-07-25T20:35:00 | 2026-07-25T23:55:00 | 8:35 PM | 11:55 PM | ngc6188-haoiii-t59.txt | ~120 (disc.) | | 4 | GRAS059 | 2026-07-27T20:35:00 | 2026-07-27T23:05:00 | 8:35 PM | 11:05 PM | ngc6188-sii-t59.txt | ~90 (disc.) | | 5 | GRAS008 | 2026-08-08T02:35:00 | 2026-08-08T06:05:00 | 2:35 AM | 6:05 AM | smc47tuc-t8.txt | ~390 | @@ -117,6 +130,40 @@ full remaining queue runs ~2,530 vs 2,257 balance (~270 over): once actual bills for Cen A and CrA land, trim Phase 3 (shorten Tarantula #6 or the SMC slot) to land the balance near zero. +### Session 2026-07-21 ~11:40 UTC (Cen A verify + cra-t8 booked) + +Ran ahead of the 12:13 UTC scheduled job, after Cen A had finished at 11:16 UTC. + +- **Cen A verified**: completed, billed 160, NGC5128 images on the scope server. + Ledger and rate model updated (the x1.6 model is withdrawn: see the rate + correction above). +- **cra-t8 booked**, but on a better slot than the deferred option (b). Probing + New.aspx for the original 01:35-04:35 returned "Conflicting reservation. Start + time must be later than 2:25 AM" (hajo, as predicted), confirming that option + (a) was all that remained on the night of 21 Jul, and it puts Corona Australis + 3.5-6.5 h past the meridian. Instead the run went to the EVENING of the next + night: **2026-07-22T21:45 - 2026-07-23T00:45 SSO local**, which brackets the + ~22:30 culmination, so the whole 115 min of imaging happens near the zenith. + This is option (c)'s geometry on option (b)'s night; the reason (c) was + unbookable earlier (quota held by Cen A) had expired by the time Cen A + completed. Grid probing showed no conflict on either side of the slot. + Verified in Reservation/MySummary.aspx; quota now 6:50 / 8:00. +- Moon on the night of 22 Jul is ~57% illuminated, the last usable night before + the bright-week narrowband phase. LRGB on a dust complex under a half moon is + a compromise, but the alternative is slipping a Phase 1 broadband target into + the bright week, which is worse. +- Reservation id NOT captured: the confirm response carries only + `ModalStatic.result("OK")` and MySummary does not print ids. Nothing depends + on the id unless the booking must be edited or deleted, in which case find it + by probing Edit.aspx?id= around the current sequence (749314 was issued + ~08:55 UTC on 21 Jul). +- Budget: 2,097 left, 19 nights to 10 Aug. Remaining queue at card rates is + roughly 1,300, which UNDER-spends by ~800. With the x1.6 model withdrawn, the + next planning session should add work rather than trim it: candidates are a + second narrowband night on T59 (observed 127/hr, the only scope with a + trustworthy rate), or extending the Phase 3 SMC and Tarantula runs, both of + which have the sky time to absorb longer plans. + Substitution rules: if T71 returns to service, move #2 and #7 to T71 (faster f/2.8 optics, cheaper 106 pts/hr; re-cut the plans for 1.55"/px). If T70's server returns, book #7 as-is. Check the go.itelescope.net status line before diff --git a/plans/README.md b/plans/README.md index 1a0688d..71c823e 100644 --- a/plans/README.md +++ b/plans/README.md @@ -84,6 +84,15 @@ Reservation. Success = response script `ModalStatic.result("OK")` AND the bookin appearing in the grid: the modal also says "OK" on silent failure, so ALWAYS re-fetch the grid and look for the reservation id + username. +Availability probing (2026-07-21): a plain GET of +`New.aspx?start=...&end=...&r=...` is a cheap, side-effect-free conflict check. +The form comes back with the two time dropdowns populated for +/-60 min around +the requested times, and if the slot collides with someone else's booking it +also renders "Conflicting reservation. Start time must be later than H:MM AM". +No message plus a full pair of dropdowns means the window is clear. This beats +reading the DayPilot grid, whose event divs do not survive a plain +Invoke-WebRequest fetch (they are rendered client-side). + Rules learned: maximum reservation length 4:00; recommended duration 1.5x total imaging time; the attached plan is auto-started by iTelescope at reservation start (no walk-in POST needed); RescheduleCheckbox auto-rebooks the identical diff --git a/state/NOTES.md b/state/NOTES.md index 3d37f7e..3a4323c 100644 --- a/state/NOTES.md +++ b/state/NOTES.md @@ -61,6 +61,19 @@ time, vs the 80/hr the card predicted. So either Time Used (wall clock) is what gets billed, or the card's data-default-rate is stale. Consequence: estimate sessions at rate x reserved-slot-length (slots run ~1.15-1.5x imaging time), i.e. multiply old exposure-based estimates by ~1.6 until more bills confirm the model. + +**RATE CORRECTION 2 (2026-07-21, second bill; SUPERSEDES the x1.6 rule above).** +T32 session 851344: 120 min of exposure, Time Used 2h25m55s, 25% moon discount, +billed 160. 160 = 2.00 h x 80 exactly, and the T59 bill is 381 = 3.00 h x 127 +exactly. Both land on the plan's IMAGING minutes to the point, and neither lands +on wall time. So the wall-clock theory is dead and the original "billed per +minute of exposure" documentation was right; what is wrong is the card's +per-scope numbers. Observed effective rates: **T59 127/hr** (card said 80), +**T32 80/hr even after a 25% moon discount**, implying a base near 107/hr (card +said 146). The pair looks transposed, but two samples cannot prove it. Rules: +do NOT apply any blanket multiplier; derive each scope's rate from its first +real bill; until then treat a card rate as +/-60%; and compute estimates from +the plan's exposure total, never from the reserved slot length. Paid imaging needs no reservation when a scope is idle: same walk-in ACP flow as the free scopes, points just deduct. Reservations (to guarantee a slot) go through lookup.itelescope.online, which is Cloudflare-protected: Playwright diff --git a/state/TODO.md b/state/TODO.md index 712a10c..612369e 100644 --- a/state/TODO.md +++ b/state/TODO.md @@ -26,30 +26,37 @@ (grid-verified), third attempt at the first-light test, runs 14:05-14:50 UTC 21 Jul, costs 0. +## Done (recent) + +- 2026-07-21 11:40 UTC: Cen A on T32 verified COMPLETE (billed 160, NGC5128 + images on the scope server), and queue #2 (Corona Australis on T8) booked for + the night of 22 Jul, 21:45-00:45 SSO local, which brackets the target's + culmination instead of chasing it down the western sky. Rate model rebuilt + from two actual bills. Details in the CAMPAIGN.md session note. + ## In progress -- T33 first-light test on its THIRD booking (749314). The two prior free - reservations (749228, 749229) expired unused with reschedule=No; the free-scope - auto-start appears not to fire. If 749314 also fails to run, stop rebooking and - either walk it in (POST plan.asp per plans/README.md) or drop the free objective. -- CEN A verify pending: reservation 749302 (T32) runs 08:50-11:50 UTC 21 Jul. - After 11:50 UTC, confirm images on t32.itelescope.net:8032, pull the actual - bill from Account/History.aspx, spot-check a preview, and refine the x1.6 rate - model in NOTES.md. -- cra-t8 (queue #2) NOT yet booked, deferred twice over: (1) quota held by Cen A - until ~11:50 UTC; (2) user hajo holds T8 00:25-02:25 SSO local that night - (res 749207), overlapping our planned 01:35-04:35. Resolution: prefer booking - the NEXT night (2026-07-23T01:35-04:35) to dodge hajo and keep altitude; see - the resolution note in CAMPAIGN.md. Scheduled job ae3af497 (~12:13 UTC) handles - Cen A verify + this booking with a live grid re-check. +- T33 first-light test on its THIRD booking (749314), which had NOT yet run as of + 11:40 UTC 21 Jul: it starts 14:05 UTC. Verify after 14:50 UTC (images and logs + on t33.itelescope.net:8033 were still empty/stale at 11:40, as expected). The + two prior free reservations (749228, 749229) expired unused with reschedule=No; + if 749314 also fails to run, stop rebooking and either walk it in (POST + plan.asp per plans/README.md) or drop the free objective. +- CrA on T8 runs 11:45-14:45 UTC 22 Jul. Verify after 14:45 UTC: images under + /images/qisback/T8/ on t8.itelescope.net:8008, then the actual bill from + account/history.aspx into the ledger. This is the first T8 bill, so it also + fixes T8's effective rate (card says 130/hr; trust nothing until observed). - DRAIN CAMPAIGN ACTIVE (see CAMPAIGN.md): spend the full balance by 10 Aug, then cancel before the 12 Aug renewal (user confirmation required for the - cancel itself). 381 of 2,638 spent; 2,257 remain. Estimates run ~1.6x low vs - actual billing (see NOTES rate correction). Reschedule flag never sticks (grid - always shows No): treat every reservation as one-shot and verify the morning - after. Download the NGC 6744 data from data.itelescope.net before the 10 Aug - cancellation sweep. Update the CAMPAIGN.md ledger after every session from - account/history.aspx. + cancel itself). 541 of 2,638 spent; 2,097 remain. The x1.6 estimate multiplier + is WITHDRAWN: billing is on plan imaging minutes, and per-scope rates must come + from actual bills (T59 127/hr, T32 80/hr observed; the NOTES rate card is + unreliable). On current numbers the campaign UNDER-spends by ~800: plan extra + or longer runs, do not trim. Reschedule flag never sticks (grid always shows + No): treat every reservation as one-shot and verify the morning after. + Download the NGC 6744 and NGC 5128 data from data.itelescope.net before the + 10 Aug cancellation sweep. Update the CAMPAIGN.md ledger after every session + from account/history.aspx. ## Pending -- 2.49.1