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.
This commit is contained in:
Laurence 2026-07-21 12:43:11 +01:00
parent f94ecce678
commit cd3de71361
4 changed files with 105 additions and 29 deletions

View file

@ -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 | 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-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-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 **Rate correction (2026-07-21, supersedes the 2026-07-20 x1.6 warning).** Two
(381 vs ~240). Either billing is on wall-clock session time (Time Used matched paid runs now bracket the question, and both bill EXACTLY the plan's imaging
start-to-end, not the 180 min of exposure) or the rate card's 80/hr for T59 is minutes, not wall-clock:
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 | Scope | Plan imaging | Wall (Time Used) | Billed | Points per imaging hour |
(~1,700 est) actually covers the full 2,257 balance nicely. |---|---|---|---|---|
| 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) ## 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) | | 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) | | 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 | | 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) | | 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 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 | | # | 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 | | 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.) | | 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.) | | 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 | | 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) for Cen A and CrA land, trim Phase 3 (shorten Tarantula #6 or the SMC slot)
to land the balance near zero. 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 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 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 server returns, book #7 as-is. Check the go.itelescope.net status line before

View file

@ -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 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. 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 Rules learned: maximum reservation length 4:00; recommended duration 1.5x total
imaging time; the attached plan is auto-started by iTelescope at reservation imaging time; the attached plan is auto-started by iTelescope at reservation
start (no walk-in POST needed); RescheduleCheckbox auto-rebooks the identical start (no walk-in POST needed); RescheduleCheckbox auto-rebooks the identical

View file

@ -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 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. 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. 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 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 as the free scopes, points just deduct. Reservations (to guarantee a slot) go
through lookup.itelescope.online, which is Cloudflare-protected: Playwright through lookup.itelescope.online, which is Cloudflare-protected: Playwright

View file

@ -26,30 +26,37 @@
(grid-verified), third attempt at the first-light test, runs 14:05-14:50 UTC (grid-verified), third attempt at the first-light test, runs 14:05-14:50 UTC
21 Jul, costs 0. 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 ## In progress
- T33 first-light test on its THIRD booking (749314). The two prior free - T33 first-light test on its THIRD booking (749314), which had NOT yet run as of
reservations (749228, 749229) expired unused with reschedule=No; the free-scope 11:40 UTC 21 Jul: it starts 14:05 UTC. Verify after 14:50 UTC (images and logs
auto-start appears not to fire. If 749314 also fails to run, stop rebooking and on t33.itelescope.net:8033 were still empty/stale at 11:40, as expected). The
either walk it in (POST plan.asp per plans/README.md) or drop the free objective. two prior free reservations (749228, 749229) expired unused with reschedule=No;
- CEN A verify pending: reservation 749302 (T32) runs 08:50-11:50 UTC 21 Jul. if 749314 also fails to run, stop rebooking and either walk it in (POST
After 11:50 UTC, confirm images on t32.itelescope.net:8032, pull the actual plan.asp per plans/README.md) or drop the free objective.
bill from Account/History.aspx, spot-check a preview, and refine the x1.6 rate - CrA on T8 runs 11:45-14:45 UTC 22 Jul. Verify after 14:45 UTC: images under
model in NOTES.md. /images/qisback/T8/ on t8.itelescope.net:8008, then the actual bill from
- cra-t8 (queue #2) NOT yet booked, deferred twice over: (1) quota held by Cen A account/history.aspx into the ledger. This is the first T8 bill, so it also
until ~11:50 UTC; (2) user hajo holds T8 00:25-02:25 SSO local that night fixes T8's effective rate (card says 130/hr; trust nothing until observed).
(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.
- DRAIN CAMPAIGN ACTIVE (see CAMPAIGN.md): spend the full balance by 10 Aug, - 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 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 cancel itself). 541 of 2,638 spent; 2,097 remain. The x1.6 estimate multiplier
actual billing (see NOTES rate correction). Reschedule flag never sticks (grid is WITHDRAWN: billing is on plan imaging minutes, and per-scope rates must come
always shows No): treat every reservation as one-shot and verify the morning from actual bills (T59 127/hr, T32 80/hr observed; the NOTES rate card is
after. Download the NGC 6744 data from data.itelescope.net before the 10 Aug unreliable). On current numbers the campaign UNDER-spends by ~800: plan extra
cancellation sweep. Update the CAMPAIGN.md ledger after every session from or longer runs, do not trim. Reschedule flag never sticks (grid always shows
account/history.aspx. 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 ## Pending