Skip to content

Adjustable legacy builder#142

Merged
ian-ross merged 3 commits into
MIT-LAE:mainfrom
ian-ross:adjustable-legacy-builder
Apr 30, 2026
Merged

Adjustable legacy builder#142
ian-ross merged 3 commits into
MIT-LAE:mainfrom
ian-ross:adjustable-legacy-builder

Conversation

@ian-ross

Copy link
Copy Markdown
Member

Adds a new trajectory builder type, AdjustableLegacyBuilder. This defaults to the same behavior as the main legacy builder intended to replicate MATLAB AEIC v2 behavior, but it exposes a number of hooks to adjust various aspects of the trajectory simulation.

ian-ross and others added 2 commits April 30, 2026 06:55
Co-authored-by: GPT-5.5 <openai-codex-gpt-5.5@pi.local>
Pi-Model: openai-codex/gpt-5.5

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 an AdjustableLegacyBuilder trajectory builder that preserves LegacyBuilder’s default AEIC v2 behavior while allowing per-mission adjustments (fixed or callable) for key geometry and fuel-policy assumptions.

Changes:

  • Introduces AdjustableLegacyBuilder / AdjustableLegacyContext with adjustment hooks for altitudes, descent planning, and reserve/divert/hold policy.
  • Adds a dedicated test suite covering default-equivalence to legacy behavior, fixed adjustments, callable adjustments, clamping, and validation errors.
  • Updates builder exports and documentation; also hardens context cleanup in Builder.fly and fixes a legacy error-message typo.

Reviewed changes

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

Show a summary per file
File Description
src/AEIC/trajectories/builders/adjustable_legacy.py New adjustable legacy builder/context implementation with adjustment plumbing and legacy-equivalent integration logic.
tests/test_adjustable_legacy_builder.py New tests validating equivalence, adjustment behavior, clamping, and error handling.
src/AEIC/trajectories/builders/base.py Makes context cleanup resilient to context-construction failures.
src/AEIC/trajectories/builders/legacy.py Fixes a spacing typo in an error message.
src/AEIC/trajectories/builders/__init__.py Re-exports AdjustableLegacyBuilder.
docs/src/trajectories/trajectory_builders.md Documents the new builder, its adjustment arguments, and validation/clamping rules.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/AEIC/trajectories/builders/adjustable_legacy.py Outdated
Comment thread src/AEIC/trajectories/builders/adjustable_legacy.py Outdated
Comment thread src/AEIC/trajectories/builders/adjustable_legacy.py Outdated
Co-authored-by: GPT-5.5 <openai-codex-gpt-5.5@pi.local>
Pi-Model: openai-codex/gpt-5.5

@lrobion lrobion 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.

Added flexibility is great and covers a lot more stuff than altitude thanks! I left a few code related comments for structure etc... I think functionality is great!

Comment thread src/AEIC/trajectories/builders/adjustable_legacy.py
Comment thread src/AEIC/trajectories/builders/adjustable_legacy.py
Comment thread src/AEIC/trajectories/builders/adjustable_legacy.py
@ian-ross ian-ross merged commit 7a40973 into MIT-LAE:main Apr 30, 2026
4 checks passed
@ian-ross

Copy link
Copy Markdown
Member Author

@lrobion I've merged this, so you can get at it by installing from the main branch. It will end up in the v1.0 release, which might even happen next week or the week after, depending...

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.

3 participants