Repository navigation
feat: opening balances - #276
Merged
Merged
Conversation
The regeneration for robosystems #1852: the record-opening-balance operation and its types, and omitted_periods on the live statement response. LedgerClient.recordOpeningBalance(graphId, body) beside the journal entries, with a test. Claude-Session: https://claude.ai/code/session_01M6TRefZ8MTAxax6pMxer4q
The queued-run tests slept 5ms and assumed the client had opened its stream by then. On a slow runner it had not, so the simulated drop hit nothing and the run fell back to status. They now wait on the stream being open. Claude-Session: https://claude.ai/code/session_01M6TRefZ8MTAxax6pMxer4q
jfrench9
added a commit
to RoboFinSystems/robosystems-python-client
that referenced
this pull request
Oct 18, 2026
## Summary The regeneration for robosystems RoboFinSystems/robosystems#1852, opening balances, taken against the local stack running `main` at its merge. A ledger whose history does not come with it records the balance sheet it starts from as one `opening` entry dated the day before its first fiscal month, and the live statement now says which columns it left out because they reach back before the books begin. A client minor; the version moves at publish. The TypeScript twin is RoboFinSystems/robosystems-typescript-client#276. ## Changes - **Generated tier**: - The `record-opening-balance` operation and its models: `RecordOpeningBalanceRequest` and `OpeningBalanceInput`. - `omitted_periods` on `LiveFinancialStatementResponse`: the columns left out because they would show a partial figure, not the months before the books. - No other drift: the GraphQL schema is unchanged. - **Facade**: `LedgerClient.record_opening_balance(graph_id, balances=..., equity_element_id=..., entity_id=...)` beside the journal entries, returning the `JournalEntryResponse`, with a test. ## Breaking Changes None. Additive in both tiers. ## Testing 693 passed, 17 skipped; lint, format and typecheck clean. The operation exists on the server only from **robosystems v1.18.8**, the release carrying #1852 and migration 0054. Until that deploys, the new method gets a 404 from production. Nothing else changes, and the apps pin the client by lockfile. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01M6TRefZ8MTAxax6pMxer4q
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 regeneration for robosystems RoboFinSystems/robosystems#1852, opening balances, taken against the local stack running
mainat its merge. A ledger whose history does not come with it records the balance sheet it starts from as oneopeningentry dated the day before its first fiscal month, and the live statement now says which columns it left out because they reach back before the books begin. A client minor; the version moves at publish. The Python twin is RoboFinSystems/robosystems-python-client#260.Changes
Generated tier (
/sdk):recordOpeningBalanceoperation and its types:RecordOpeningBalanceRequestandOpeningBalanceInput.omitted_periodsonLiveFinancialStatementResponse: the columns left out because they would show a partial figure, not the months before the books.liveFinancialStatementpasses it through unchanged.Facade:
LedgerClient.recordOpeningBalance(graphId, body)beside the journal entries, returning theJournalEntryResponse, with a test.Test flake: the queued-run tests in
OperatorClient.test.tsslept a fixed 5ms and assumed the stream had opened; on a slow runner it had not (CI failed on the Node 22 leg). They now wait on the stream being open.Breaking Changes
None. Additive in both tiers.
Testing
448 passed; format, lint and typecheck clean. The operation exists on the server only from robosystems v1.18.8, the release carrying #1852 and migration 0054. Until that deploys, the new method gets a 404 from production. Nothing else changes, and the apps pin the client by lockfile.
🤖 Generated with Claude Code
https://claude.ai/code/session_01M6TRefZ8MTAxax6pMxer4q