• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

TOMToolkit / tom_jpl / 32398352241
91%
dev: 86%

Build:
Build:
LAST BUILD BRANCH: add-rubin-too-filter-fields
DEFAULT BRANCH: dev
Ran 20 Aug 2026 05:35PM UTC
Jobs 1
Files 18
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

20 Aug 2026 05:30PM UTC coverage: 90.666% (+4.6%) from 86.081%
32398352241

Pull #23

github

talister
Add individual-object fallback lookup for MPC designations

_fetch_mpc_prev_designations only scrapes the rolling ~100-entry "Previous
NEOCP Objects" table. If a FOMO outage outlasts that window, an object that
both left Scout and got designated during the gap scrolls off before the
next run ever sees it, and stays stuck under its Scout provisional name
forever -- nothing previously retried it individually.

The page's own "Submit" search box (a JS-driven AJAX POST to the same URL,
not a plain form submit -- confirmed via /static/neocp/js/neocp_prev_des.js
and tested end-to-end against a live object) supports exactly this: looking
up one trksub/designation directly. Add:

- _mpc_session_and_csrf_token(): GETs the page once to establish a session
  and scrape its CSRF token, reused across all individual lookups in a run
  rather than re-fetching per target.
- _fetch_mpc_prev_designation_for(session, csrf_token, trksub): POSTs the
  same request the page's button does and parses the returned JSON's HTML
  fragment (same table shape as the bulk page) via the row-parsing logic
  refactored out of _fetch_mpc_prev_designations into _parse_designation_rows
  so both paths share one implementation.
- Command._fallback_lookup_designations(): for every ScoutDetail(active=False)
  target not covered by this run's bulk table, does an individual lookup --
  skipping targets whose name already looks like a resolved IAU designation
  (contains a space or comet-style '/', which Scout trksubs never do), so
  already-resolved targets aren't re-queried forever. Merged into
  designation_map before the existing rename/collision-guard logic runs
  unchanged. Never raises: a failed session or a single failed lookup logs a
  warning and the rest of the run proceeds on whatever the bulk table found.

Verified against the live MPC page (a fallback canary test confirms the
individual-lookup endpoint agrees with the bulk table for a real object),
plus mocked unit/integration te... (continued)
Pull Request #23: Add Rubin ToO filter fields and ScoutHistory models

605 of 655 new or added lines in 7 files covered. (92.37%)

1253 of 1382 relevant lines covered (90.67%)

0.91 hits per line

Uncovered Changes

Lines Coverage ∆ File
38
26.56
-18.44% tom_jpl/tests/tests_canary.py
9
94.48
tom_jpl/management/commands/updatescout.py
2
61.19
4.05% tom_jpl/admin.py
1
95.83
-0.83% tom_jpl/models.py
Jobs
ID Job ID Ran Files Coverage
1 32398352241.1 20 Aug 2026 05:35PM UTC 18
90.67
GitHub Action Run
Source Files on build 32398352241
  • Tree
  • List 18
  • Changed 7
  • Source Changed 7
  • Coverage Changed 7
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #32398352241
  • Pull Request #23
  • PR Base - dev (#31042693609)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc