Repository navigation
feat(ledger): schedule facade takes custom curves, loans, preview, and an edited definition - #279
Merged
Merged
Conversation
…d an edited definition `create_schedule` carries the whole definition the operations take since robosystems v1.20.0: `method` (`straight_line` / `custom` / `effective_interest`), `periodic_amounts`, `loan_terms`, the entry's `legs` and `dimension_ids`; `monthly_amount` is optional, required only for straight-line. `preview_schedule` runs the generator without keeping it and returns the roll-forward, the warnings and, with `replaces_structure_id`, what the schedule being edited has posted. `rebuild_schedule` takes the edited definition, which is how a schedule is saved back while nothing has posted. Generated tier unchanged (2.31.0 already carried the operations). Claude-Session: https://claude.ai/code/session_01WaJSHXWM1Lnpdrf5P7wiYW
5 tasks done
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The schedule operations grew in robosystems v1.20.0 (deployed 2026-10-22): custom curves, loan amortization (
effective_interest, withloan_termsand the entry'slegs),preview-schedule, andrebuild-scheduletaking an edited definition. 2.31.0 regenerated the generated tier for all of it, but the facade still took the straight-line shape only. This closes that gap, in step with the TypeScript client (RoboFinSystems/robosystems-typescript-client#295):create_schedulecarries the whole definition:method(straight_line/custom/effective_interest),periodic_amounts,loan_terms, the entry'slegsanddimension_ids.monthly_amountis now optional (required only for straight-line, which the server enforces).preview_scheduleruns the generator without keeping it: the provisional envelope, the roll-forward (with a loan's interest, payment, principal, current portion), the overlap warnings, and withreplaces_structure_idwhat the schedule being edited has posted and whether the change is arebuildorterminate_and_succeed.rebuild_scheduletakes the definition fields, which is how a schedule is saved back while nothing has posted. The old(graph_id, structure_id, idempotency_key=...)call is unchanged.Generated tier untouched. A client minor (additive facade surface); none of the integration template's imports move.
Test plan
create_schedulesends a custom curve withoutmonthly_amount, and a loan's terms and legspreview_scheduleforwardsreplaces_structure_idand sends only what was setrebuild_schedulesends only the definition fields given🤖 Generated with Claude Code