Skip to content

Releases: RoboFinSystems/robosystems

Release v1.4.65

16 Apr 23:54

Choose a tag to compare

RoboSystems Service v1.4.65

A significant release focused on API documentation alignment, refactoring of the extensions materialization pipeline, and enhanced graph operations—accompanied by substantial dependency updates and internal restructuring of extension models.

Key Features & Improvements

  • Enhanced graph operations & idempotency handling — New operations module (robosystems/middleware/operations.py, robosystems/models/api/graphs/operations.py) with improved idempotency support for graph creation and mutations (#624)
  • Extensions materialization overhaul — Refactored materialization process to use a dedicated ExtensionsMaterializer, added user_graph_extensions_materialized_source Dagster asset for better pipeline observability
  • Transaction & journal entry models — Added transaction creation/response models and enhanced the journal entry command (robosystems/models/api/extensions/journal_entries.py, updated transactions.py)
  • API & Swagger documentation alignment — Comprehensive error response documentation across endpoints, new OpenAPI tags for Connections and Subscriptions, refined descriptions for Graph Operations and Queries (#627)
  • StrategySelector execution strategy refactoring — Cleaner handling of execution strategy selection
  • CreateGraphRequest validation improvements — Stricter validation with updated documentation, refined examples, and added initial entity support in graph creation test data
  • New API tagsConnections and Subscriptions tags added to OpenAPI configuration for better API discoverability

⚠️ Breaking Changes

  • Legacy environment variable fallbacks removedrobosystems/config/env.py no longer falls back to deprecated env vars; ensure your deployment uses the current variable names
  • Extension models restructured — Several models moved from robosystems/models/extensions/roboledger/ up to robosystems/models/extensions/ (e.g., association.py, classification_rule.py, dimension.py, element.py, structure.py, taxonomy.py). Direct imports from the old paths will break.
  • Document service path changedrobosystems/operations/documents/service.py relocated to robosystems/operations/document_service.py; the documents/__init__.py package was removed
  • Removed dependenciesasync_timeout and python-slugify have been dropped from the project

Notable Technical Changes

  • robosystems-client upgraded through multiple versions — Stepped from 0.3.3 → 0.3.4 → 0.3.5 → 0.3.6 → 0.3.7 → 0.3.8, with a new SDK update task added to the justfile
  • New entity_taxonomy.py model and dimension_junctions.py added to support richer taxonomy and dimensional relationships in extensions
  • Improved database health check logging — More informative log output in health.py for diagnosing connectivity issues
  • Tier change tests added — New test coverage for graph tier change operations

Bug Fixes

  • Fixed asset key for extensions materialization reporting
  • Improved error response handling across multiple API endpoints to return consistent, well-documented error envelopes

Security & Dependency Updates

  • 🔒 Bumped Mako from 1.3.10 to 1.3.11 (via Dependabot, #626) — includes upstream security and stability fixes

📊 Release Statistics

  • Commits: 50
  • Files Changed: 171
  • Lines Added: 10210
  • Lines Deleted: 8069
  • Previous Release: v1.4.64

🔗 Links


🤖 Generated with Claude Code

Release v1.4.64

15 Apr 07:57

Choose a tag to compare

RoboSystems Service v1.4.64

This release enhances database infrastructure with RDS Proxy support, adds Graph API cycle protection, and improves observability and operational resilience across the platform.

✨ Features & Improvements

  • RDS Proxy Support — Added configurable RDS Proxy integration with connection borrow timeout, updated PostgreSQL configuration, database endpoint handling in CI/CD workflows, and Lambda rotation scripts (#620)
  • Graph API Cycle Protection — Refactored sensitive path handling and enhanced auto_map_elements_op logic to guard against cycles in graph operations (#619)
  • Instance Busy Counter — New instance_busy middleware module to track and manage destructive operation concurrency, with dedicated test coverage
  • API Response Caching & Metrics — Extended metrics functionality with enhanced API response caching, OpenTelemetry improvements, and better error handling in extensions (#618)
  • Async Lifecycle Management — Implemented async lifecycle management for the RoboSystems API entry point

🔧 Technical Changes

  • Refactored table operation management in background tasks for cleaner separation of concerns
  • Refactored refresh actions and health check scripts across GitHub Actions workflows (refresh-graph-asg, refresh-graph-containers, graph-asg-refresh, service-refresh)
  • Updated deployment workflows (prod.yml, staging.yml, deploy-postgres.yml) to support new database endpoint configuration
  • Enhanced materialize and direct_materialization operation extensions with improved metrics and error handling
  • Updated CloudFormation Postgres template to accommodate RDS Proxy settings

🐛 Bug Fixes

  • Fixed edge cases in sensitive path handling within the Graph API router
  • Improved robustness of health check scripts for graph instances

⚠️ Breaking Changes

  • Database endpoint configuration in workflows has changed — teams with custom deployment pipelines referencing Postgres endpoints should verify compatibility with the new RDS Proxy-aware configuration

📊 Release Stats

Metric Value
Files Changed 35
Lines Added 2,345
Lines Deleted 825
PRs Merged 3

📊 Release Statistics

  • Commits: 18
  • Files Changed: 35
  • Lines Added: 2345
  • Lines Deleted: 825
  • Previous Release: v1.4.63

🔗 Links


🤖 Generated with Claude Code

Release v1.4.63

15 Apr 02:20

Choose a tag to compare

RoboSystems Service v1.4.63

This release introduces a new Extensions GraphQL API with investor and ledger operations, alongside dependency updates and improved documentation.

✨ Features & Improvements

  • Extensions GraphQL endpoint — New GraphQL API layer supporting graph-scoped endpoints, pagination validation, and a mapped trial balance feature (#617)
  • RoboInvestor operations module — Added command and read operations for portfolios, positions, securities, and holdings
  • Authorization & error handling — Refactored auth flow and error handling across GraphQL operations with enhanced idempotency support
  • New environment variables — Added configuration options to support extensions and GraphQL feature flags
  • Documentation overhaul — New and updated READMEs for GraphQL, API models, extensions models, and core models; clarified URL structure and feature flags in the main README

🔧 Technical Changes

  • Updated robosystems-client to 0.3.1 and arelle-release to 2.39.5
  • Updated development and testing dependencies
  • Refactored API structure for extensions to align with the new GraphQL architecture
  • Updated Content Security Policy (CSP) to accommodate the GraphQL endpoint
  • Refactored ValkeyDatabase allocation and updated corresponding tests
  • Improved CI compatibility by dynamically deriving main.py path in tests

🐛 Bug Fixes

  • Fixed test suite to reflect changes in Valkey database allocation behavior

🔒 Security

  • Updated SECURITY.md and refined authorization logic in GraphQL operations

⚠️ Breaking Changes

  • API restructuring for extensions — Existing extensions API routes may have changed as part of the refactor to support GraphQL; consumers of extensions endpoints should verify compatibility
  • ValkeyDatabase allocation changes — Database allocation behavior has been updated; services depending on specific database indices should be reviewed

📊 Release Statistics

  • Commits: 15
  • Files Changed: 157
  • Lines Added: 16721
  • Lines Deleted: 12076
  • Previous Release: v1.4.62

🔗 Links


🤖 Generated with Claude Code

Release v1.4.62

14 Apr 00:05

Choose a tag to compare

RoboSystems Service v1.4.62

This is a maintenance release focused on secrets rotation bug fixes and a dependency update.

🔧 Bug Fixes

  • Secrets rotation workflow improvements — Enhanced the GitHub Actions secrets rotation workflow and refined PostgreSQL rotation logic for more reliable secret lifecycle management (#615)
  • Valkey rotation adjustments — Updated Valkey rotation lambda alongside PostgreSQL fixes to ensure consistent rotation behavior

📦 Dependency Updates

  • Bumped Pillow from 12.1.1 to 12.2.0 (#616)

🔒 Security & Infrastructure

  • Secrets rotation pipeline hardened with improved workflow definitions and rotation logic across both PostgreSQL and Valkey lambdas — critical for maintaining secure credential hygiene in production environments

⚠️ Breaking Changes

None.

Technical Notes

  • Changes span the rotation lambdas (postgres_rotation.py, valkey_rotation.py), the secrets rotation workflow (.github/workflows/secrets-rotation.yml), and lock files (pyproject.toml, uv.lock)
  • Modest changeset (81 lines added / 66 deleted) indicating targeted refinements rather than major rewrites

📊 Release Statistics

  • Commits: 5
  • Files Changed: 5
  • Lines Added: 81
  • Lines Deleted: 66
  • Previous Release: v1.4.61

🔗 Links


🤖 Generated with Claude Code

Release v1.4.61

13 Apr 16:48

Choose a tag to compare

RoboSystems Service v1.4.61

A substantial release focused on RoboLedger closing cadence, embeddings materialization, and improvements to ledger workflows and graph infrastructure.

Key Features & Improvements

  • Fiscal period closing cadence — Full support for closing prior periods to retained earnings, including new fiscal calendar models, closing book extensions, and account rollup logic under the RoboLedger namespace (#612, #613)
  • Closing demo — New examples/close_demo/ walkthrough for Cascade Advisory Group LLC demonstrating the end-to-end period close flow with OLTP writing, mappings, and policies
  • Embeddings materialization & vector indexing — Added materialization support for embeddings with HNSW vector index identifier validation and chunked materialization options (#607)
  • Auto-reverse schedules — Schedules now support auto-reverse functionality with enhanced schedule models (#610)
  • Provenance tracking — Ledger entries now carry provenance metadata with improved error handling (#612)
  • Graph ID generation overhaul — Switched to ULID-based graph IDs for time-ordering, with custom exceptions for graph ID collisions and allocation race conditions (#611)
  • Enhanced financial statement tool — Refactored report generation logic and improved API documentation for cash flow handling

Bug Fixes

  • Taxonomy seeding fix — Refactored Docker Compose configuration and corrected taxonomy extension seeding logic (#608)

Security

  • cryptography bumped from 46.0.6 → 46.0.7 (#609)

⚠️ Breaking Changes

  • Fiscal calendar and schedule operations have been refactored into the RoboLedger namespace — consumers of the previous fiscal calendar or schedule APIs/models may need to update imports and references
  • Graph ID generation now uses ULID instead of the previous scheme, which may affect any code that parses or depends on graph ID format

Notable Technical Changes

  • robosystems-client updated to 0.2.48 with refined fiscal calendar error handling
  • Document ID handling improved with parent document ID extraction and new test coverage
  • R2 backup service enhanced with better zstd compression error handling and updated documentation
  • Task deduplication logic refactored with updated task labels
  • preserve_duckdb option added to database deletion flows
  • 109 files changed across 31 commits (+13,513 / −1,421 lines)

📊 Release Statistics

  • Commits: 31
  • Files Changed: 109
  • Lines Added: 13513
  • Lines Deleted: 1421
  • Previous Release: v1.4.60

🔗 Links


🤖 Generated with Claude Code

Release v1.4.60

07 Apr 16:33

Choose a tag to compare

RoboSystems Service v1.4.60

This release improves OpenSearch index management, adds new search filtering options, and enhances DuckDB schema evolution support.

✨ Features & Improvements

  • New force-merge command — The drop-index command has been renamed to force-merge, now compacting index segments, purging deleted document tombstones, and reclaiming memory with improved user prompts and feedback.
  • before_date filter for search delete — Added a before_date option to the search delete command, enabling more targeted document removal by date.
  • skip_embeddings config optionSECNarrativeIndexConfig and SECiXBRLIndexConfig now support a skip_embeddings flag, allowing pipelines to bypass embedding generation when not needed.

🐛 Bug Fixes

  • DuckDB schema evolution fix — Removed an unnecessary column refresh after ALTER in DuckDBTableManager, resolving issues with staging table evolution (#605).
  • OpenSearch bulk reindex removal — Fixed OpenSearch reindex bulk mode behavior (#604).

⚠️ Breaking Changes

  • The drop-index CLI command has been renamed to force-merge. Any scripts or workflows referencing the old command name will need to be updated.

🔧 Technical Changes

  • Refactored query_os function for cleaner OpenSearch query construction.
  • Refactored sec_narratives_indexed function for improved clarity and efficiency.
  • Refactored DuckDB table management internals to properly support schema evolution, ensuring ALTER TABLE operations propagate correctly without redundant refreshes.

📊 Release Statistics

  • Commits: 10
  • Files Changed: 8
  • Lines Added: 155
  • Lines Deleted: 30
  • Previous Release: v1.4.59

🔗 Links


🤖 Generated with Claude Code

Release v1.4.59

07 Apr 02:01

Choose a tag to compare

RoboSystems Service v1.4.59

This release introduces graph tier upgrade functionality and resolves subscription management issues related to caching and access enforcement.

✨ Features & Improvements

  • Graph tier upgrades — Added dedicated graph tier upgrade workflow, including tier validation logic, upgrade task orchestration, and a new API endpoint for managing upgrades (#602)
  • Enhanced subscription management — Improved error handling during graph tier upgrades with better fallback and recovery behavior
  • Improved entity ticker handling — Updated how entity tickers are resolved during graph access enforcement

🐛 Bug Fixes

  • Graph subscription cache invalidation — Fixed issues with stale cache entries in subscription management that could lead to incorrect access enforcement (#603)
  • Improved cache invalidation logging — Added detailed logging around cache invalidation to aid in debugging subscription state issues

🔧 Technical Changes

  • Added new modules: graph_tier_upgrade.py (task), tier_validation.py (validation logic)
  • Removed deprecated upgrade.py billing model in favor of consolidated subscription model handling
  • Expanded test coverage across graph tier upgrades, tier validation, access enforcement, and document tools (6 new/modified test files)
  • Updated CloudFormation templates for graph volumes and worker infrastructure
  • Updated billing enforcement middleware to align with new subscription and tier logic
  • Dependency lock file updated (uv.lock)

⚠️ Breaking Changes

  • Removed robosystems/models/api/billing/upgrade.py — Upgrade model has been deleted; consumers importing from this module must migrate to the updated subscription models in robosystems/models/api/billing/subscription.py

📊 Release Statistics

  • Commits: 8
  • Files Changed: 38
  • Lines Added: 2846
  • Lines Deleted: 213
  • Previous Release: v1.4.58

🔗 Links


🤖 Generated with Claude Code

Release v1.4.58

06 Apr 02:44

Choose a tag to compare

RoboSystems Service v1.4.58

This release refactors API documentation, enhances vector search functionality, and updates the robosystems-client dependency.

Improvements

  • Enhanced vector search functionality — Refined vector search capabilities in the databases API for improved query handling
  • API tags refactored — Updated OpenAPI tag definitions for better API documentation organization and clarity
  • Dependency update — Bumped robosystems-client to version 0.2.45

Notable Technical Changes

  • Significant code cleanup across multiple routers (credits, materialize), with a net reduction of ~194 lines — indicating simplified or consolidated logic
  • Updated tests for the credits graph router to reflect refactored endpoints
  • Lock file (uv.lock) updated to align with dependency changes

Breaking Changes

⚠️ API tag restructuring — If consumers rely on specific OpenAPI tag names for filtering or documentation generation, verify compatibility with the updated tag definitions in openapi_tags.py.

⚠️ Router changes to credits & materialize endpoints — The substantial code removal in credits.py and materialize.py may indicate changed or removed endpoints. Review the updated API docs before upgrading.

Bug Fixes

  • No explicit bug fixes identified in this release.

📊 Release Statistics

  • Commits: 4
  • Files Changed: 7
  • Lines Added: 70
  • Lines Deleted: 264
  • Previous Release: v1.4.57

🔗 Links


🤖 Generated with Claude Code

Release v1.4.57

06 Apr 01:18

Choose a tag to compare

RoboSystems Service v1.4.57

This release refactors storage limit handling, improves search defaults, and fixes a bug in repository credit allocation. The net deletion of over 1,000 lines reflects a significant cleanup of deprecated storage limit endpoints and related tests.

✨ Features & Improvements

  • Hybrid semantic search capability — Added hybrid semantic search and clarified default search modes across the search client and service (#599)
  • Instance storage limit in service offerings — Storage limit information is now returned as part of the service offerings response, replacing the previous dedicated endpoint (#600)
  • User repository credit allocation — Added a new operation for user repository credit allocation (#598)

🐛 Bug Fixes

  • Repository credit allocation logic — Refactored and corrected user repository credit allocation logic to resolve allocation issues (#598)

⚠️ Breaking Changes

  • Removed StorageLimitResponse and dedicated storage limit endpoints — The standalone storage limits API and its response model have been removed. Consumers should now retrieve instance storage limits from the service offerings endpoint instead (#600)
  • Search default mode change — Default search behavior has been updated to use BM25; clients relying on the previous default should verify their search integration (#599)

🔧 Technical Changes

  • Upgraded robosystems-client dependency to v0.2.44
  • Removed obsolete test suites: test_storage_limits_ops.py and test_storage_limits.py
  • Refactored billing and credit router logic for cleaner credit allocation handling
  • Updated and added tests for search client/service, credit allocation, and file upload routers

📊 Release Statistics

  • Commits: 14
  • Files Changed: 20
  • Lines Added: 292
  • Lines Deleted: 1355
  • Previous Release: v1.4.56

🔗 Links


🤖 Generated with Claude Code

Release v1.4.56

05 Apr 07:13

Choose a tag to compare

RoboSystems Service v1.4.56

A substantial release focused on simplifying graph provisioning, introducing graph-scoped agents, and optimizing data ingestion performance.

✨ Features & Improvements

  • Graph-Scoped Agents — Added GraphScope and matches_graph_scope filtering, enabling agents to be scoped and matched to specific graphs (#595)
  • Bulk Write Mode for OpenSearch — Implemented bulk write mode in the OpenSearch client to significantly optimize indexing performance, with enhanced logging and error handling (#594)
  • Memory Subgraph Support — Added memory subgraph creation example and integrated reporting into Dagster (#596)
  • New MCP Tool Modules — Added dedicated document_tools, materialization_tools, and schedule_tools, replacing the monolithic semantic_memory module
  • Database Swap Router — Added new database swap endpoint for graph databases
  • Materialization Lock — Introduced materialization_lock for safer concurrent materialization handling
  • Usage Monitoring Sensors — New Dagster sensors for usage monitoring and asset materialization tracking

⚠️ Breaking Changes

  • Removed GRAPH_PROVISION_QUEUE_ENABLED — All references to the graph provision queue flag have been removed; graph lifecycle management is now streamlined without queue-based provisioning (#597)
  • Removed semantic_memory MCP tool module — Replaced by document_tools, materialization_tools, and schedule_tools; any direct imports will break
  • Removed Dagster graph queue sensor (dagster/sensors/graph_queue.py deleted) — Replaced by new materialization and usage monitor sensors
  • Bulk export configuration removed from service offerings — update any integrations relying on this config
  • Dagster reporting refactored — Dagster asset materialization reporting removed from graph/subgraph creation tasks and replaced with a new centralized dagster/reporting.py module (#591)

🔧 Notable Technical Changes

  • Refactored billing plan configurations, AI billing config, and agent token cost handling for credits cost alignment (#590)
  • Refactored document tier limits and graph storage monitoring/constraints (#592)
  • Streamlined agent and task registry management with new loading mechanisms for graph operation tasks
  • Updated initial schema migration (0001_initial_schema.py)
  • Refactored ingestion limit checks and graph allocation management logic
  • Enhanced SearchService and offering retrieval logic

🐛 Bug Fixes

  • Fixed Dagster worker reporting integration issues (#591)
  • Improved error handling in memory subgraph operations
  • Enhanced logging in OpenSearch bulk write operations for better debugging

📊 Release Statistics

  • Commits: 64
  • Files Changed: 132
  • Lines Added: 9032
  • Lines Deleted: 3349
  • Previous Release: v1.4.55

🔗 Links


🤖 Generated with Claude Code