Skip to content

RSO inspection scenario#274

Merged
Mark2000 merged 8 commits into
developfrom
feature/144-rso-scenario
Jun 17, 2025
Merged

RSO inspection scenario#274
Mark2000 merged 8 commits into
developfrom
feature/144-rso-scenario

Conversation

@Mark2000

@Mark2000 Mark2000 commented Jun 11, 2025

Copy link
Copy Markdown
Contributor

Description

Closes #144

Adds dynamics, fsw, scenarios, data, examples, and utilities for the RSO scenario.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

How should this pull request be reviewed?

  • By commit
  • All changes at once

How Has This Been Tested?

Adding tests for components.

Future Work

None.

Checklist

  • I have performed a self-review of my code
  • I have commented my code in hard-to-understand areas
  • I have made corresponding changes to the documentation and release notes
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works

@Mark2000
Mark2000 changed the base branch from develop to feature/266-oe-obs June 11, 2025 22:21
@Mark2000
Mark2000 force-pushed the feature/266-oe-obs branch from 8c3e4dc to a4189a0 Compare June 12, 2025 00:05
Base automatically changed from feature/266-oe-obs to develop June 12, 2025 00:14
@Mark2000
Mark2000 force-pushed the feature/144-rso-scenario branch 2 times, most recently from b5b19a1 to 183bc9f Compare June 12, 2025 21:55
@Mark2000
Mark2000 changed the base branch from develop to feature/noncircular-orbits June 12, 2025 21:55
@Mark2000
Mark2000 force-pushed the feature/144-rso-scenario branch from 183bc9f to 2964ecb Compare June 12, 2025 22:07
Base automatically changed from feature/noncircular-orbits to develop June 12, 2025 22:51
@Mark2000
Mark2000 force-pushed the feature/144-rso-scenario branch from 2964ecb to 751e707 Compare June 13, 2025 18:19
@Mark2000
Mark2000 force-pushed the feature/144-rso-scenario branch 2 times, most recently from 200635f to 2c70bc8 Compare June 16, 2025 16:52
@Mark2000
Mark2000 marked this pull request as ready for review June 16, 2025 16:53
Copilot AI review requested due to automatic review settings June 16, 2025 16:53

This comment was marked as outdated.

@Mark2000
Mark2000 force-pushed the feature/144-rso-scenario branch 8 times, most recently from 44ddbee to 0cd318e Compare June 16, 2025 22:30
@Mark2000
Mark2000 requested a review from Copilot June 16, 2025 22:30

This comment was marked as outdated.

@Mark2000
Mark2000 force-pushed the feature/144-rso-scenario branch from 38cd932 to 486794c Compare June 16, 2025 22:35
@Mark2000
Mark2000 requested a review from Copilot June 16, 2025 22:36

This comment was marked as outdated.

@Mark2000
Mark2000 force-pushed the feature/144-rso-scenario branch from 486794c to 0bad28d Compare June 16, 2025 22:55
@Mark2000
Mark2000 requested a review from Copilot June 16, 2025 23:07

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Adds a new RSO (Resident Space Object) inspection scenario, including scenario definitions, dynamics and FSW models, data recording and reward logic, observation utilities, tests, examples, and documentation updates.

  • Introduce RSOPoints and SphericalRSO scenario with Fibonacci‐sphere point generation
  • Add RSODynModel, RSOInspectorDynModel, and RSOInspectorFSWModel for inspection dynamics and control
  • Implement RSOInspectionData, RSOInspectionDataStore, and RSOInspectionReward with corresponding tests and integration example

Reviewed Changes

Copilot reviewed 19 out of 19 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
tests/unittest/scene/test_rso_points.py Tests for RSOPoints reset logic and SphericalRSO point generation
tests/unittest/obs/test_relative_observations.py Tests for new rso_imaged_regions observation function
tests/unittest/data/test_rso_inspection_data.py Tests for RSOInspectionData addition, datastore, and reward logic
tests/integration/test_int_rso_env.py Integration test for the full RSO inspection environment
src/bsk_rl/utils/orbital.py Added random_unit_vector and fibonacci_sphere utilities
src/bsk_rl/sim/fsw/rso_inspection.py New ContinuousImagingFSWModel subclass for RSO inspection
src/bsk_rl/sim/fsw/init.py Export RSOInspectorFSWModel
src/bsk_rl/sim/dyn/rso_inspection.py New RSODynModel and RSOInspectorDynModel
src/bsk_rl/sim/dyn/base.py Fixed orbital element property names and beta_angle references
src/bsk_rl/sim/dyn/init.py Export new RSO inspection dynamics models
src/bsk_rl/scene/rso_points.py Scenario classes RSOPoints and SphericalRSO
src/bsk_rl/scene/init.py Import and document new RSO scenarios
src/bsk_rl/obs/relative_observations.py Added rso_imaged_regions utility and imports
src/bsk_rl/data/rso_inspection.py DataStore and GlobalReward classes for RSO inspection
src/bsk_rl/data/init.py Export RSOInspectionReward and update docs
src/bsk_rl/act/continuous_actions.py Consolidate logging calls and fix logger usage
examples/_default.rst Add RSO Inspection to examples TOC
docs/source/release_notes.rst Document release notes for RSO inspection feature
Comments suppressed due to low confidence (4)

src/bsk_rl/sim/dyn/rso_inspection.py:31

  • The parameter name 'range' shadows the built-in function. Consider renaming it to 'range_max' or similar for clarity.
    def add_rso_point(

tests/unittest/data/test_rso_inspection_data.py:15

  • [nitpick] Using 'sum' as a parameter name shadows the built-in sum() function. Consider renaming it to 'expected'.
    "a, b, sum",

src/bsk_rl/data/rso_inspection.py:42

  • Docstring says 'boolean AND' but the implementation uses logical OR to accumulate statuses. Update the doc to reflect OR logic.
    def __add__(self, other: "RSOInspectionData"):

src/bsk_rl/data/init.py:69

  • [nitpick] The reST table separator line is missing leading '|' characters, which may break formatting. Ensure each table row and separator starts with '|'.
-----------------------------+-------------------------------------------------------------------------+---------------------------------------------------------------------+

Comment thread src/bsk_rl/obs/relative_observations.py
Comment thread src/bsk_rl/sim/fsw/rso_inspection.py
Comment thread src/bsk_rl/sim/fsw/rso_inspection.py
@Mark2000
Mark2000 force-pushed the feature/144-rso-scenario branch 3 times, most recently from 5a8f031 to 3e6b96d Compare June 17, 2025 15:39
@Mark2000
Mark2000 requested a review from dhutererprats June 17, 2025 15:44
@Mark2000 Mark2000 mentioned this pull request Jun 17, 2025

@dhutererprats dhutererprats left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only minor changes suggested and some comments left here and there.
In the future if we want to look at self- and inspector-to-RSO shadowing, we might want to change some of the architecture, for example pointing to a region on RSO rather than center and also changing the range requirement from being point dependent to being dependent on the instrument on the Inspector.

Great work overall!

Comment thread src/bsk_rl/bsk_version_req.txt
Comment thread src/bsk_rl/data/rso_inspection.py Outdated
Comment thread src/bsk_rl/data/rso_inspection.py Outdated
Comment thread src/bsk_rl/data/rso_inspection.py
Comment thread src/bsk_rl/data/rso_inspection.py
Comment thread src/bsk_rl/scene/__init__.py Outdated
Comment thread src/bsk_rl/scene/rso_points.py
Comment thread src/bsk_rl/scene/rso_points.py Outdated
Comment thread src/bsk_rl/sim/fsw/rso_inspection.py
Comment thread src/bsk_rl/sim/fsw/rso_inspection.py Outdated
@Mark2000
Mark2000 force-pushed the feature/144-rso-scenario branch from b9dc991 to 426b609 Compare June 17, 2025 21:10
@Mark2000
Mark2000 force-pushed the feature/144-rso-scenario branch from 426b609 to a26c37a Compare June 17, 2025 21:15
@Mark2000
Mark2000 requested a review from dhutererprats June 17, 2025 21:15
@Mark2000

Copy link
Copy Markdown
Contributor Author

@dhutererprats should be good for a rereview

Comment thread src/bsk_rl/scene/rso_points.py

@dhutererprats dhutererprats left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good now!

@Mark2000
Mark2000 merged commit 9d39668 into develop Jun 17, 2025
5 checks passed
@Mark2000
Mark2000 deleted the feature/144-rso-scenario branch June 17, 2025 21:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Inspection/Evasion tasks roadmap

3 participants