@robosystems/client 1.1.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/types.gen.d.ts CHANGED
@@ -55,6 +55,12 @@ export type ApiKeyInfo = {
55
55
  * Creation timestamp
56
56
  */
57
57
  created_at: string;
58
+ /**
59
+ * Graph Id
60
+ *
61
+ * Graph scope; null means account-wide
62
+ */
63
+ graph_id?: string | null;
58
64
  };
59
65
  /**
60
66
  * APIKeysResponse
@@ -630,6 +636,12 @@ export type BackfillPlanHistoryOperation = {
630
636
  * Override the sync-currency gate on each reclose. Historical months predate the last sync in the normal case, so this is rarely needed.
631
637
  */
632
638
  allow_stale_sync?: boolean;
639
+ /**
640
+ * Allow Stranded Obligations
641
+ *
642
+ * Override the stranded-obligation gate on each reclose. Only needed when a matured classified obligation without a drafted entry exists inside the backfill window and you have decided not to draft or void it first.
643
+ */
644
+ allow_stranded_obligations?: boolean;
633
645
  /**
634
646
  * Restamp
635
647
  *
@@ -883,6 +895,12 @@ export type BackupResponse = {
883
895
  * Allow Export
884
896
  */
885
897
  allow_export: boolean;
898
+ /**
899
+ * Download Extension
900
+ *
901
+ * Extension the download will carry, and therefore how to unpack it: '.lbug.zip' is a ZIP holding the LadybugDB database file, '.lbug.zst' is zstd-compressed (`zstd -d`). Null when the backup is encrypted and so cannot be downloaded.
902
+ */
903
+ download_extension?: string | null;
886
904
  /**
887
905
  * Created At
888
906
  */
@@ -949,50 +967,6 @@ export type BackupStatsResponse = {
949
967
  [key: string]: number;
950
968
  };
951
969
  };
952
- /**
953
- * BatchOperatorRequest
954
- *
955
- * Request for batch processing multiple queries.
956
- */
957
- export type BatchOperatorRequest = {
958
- /**
959
- * Queries
960
- *
961
- * List of queries to process (max 10)
962
- */
963
- queries: Array<OperatorRequest>;
964
- /**
965
- * Parallel
966
- *
967
- * Process queries in parallel
968
- */
969
- parallel?: boolean;
970
- };
971
- /**
972
- * BatchOperatorResponse
973
- *
974
- * Response for batch processing.
975
- */
976
- export type BatchOperatorResponse = {
977
- /**
978
- * Results
979
- *
980
- * List of operator responses (includes successes and failures)
981
- */
982
- results: Array<OperatorResponse>;
983
- /**
984
- * Total Execution Time
985
- *
986
- * Total execution time in seconds
987
- */
988
- total_execution_time: number;
989
- /**
990
- * Parallel Processed
991
- *
992
- * Whether queries were processed in parallel
993
- */
994
- parallel_processed: boolean;
995
- };
996
970
  /**
997
971
  * BillingCustomer
998
972
  *
@@ -1478,6 +1452,12 @@ export type ClosePeriodOperation = {
1478
1452
  * Override the sync-currency gate. Only use when you have manually verified that the source data for the period is complete.
1479
1453
  */
1480
1454
  allow_stale_sync?: boolean;
1455
+ /**
1456
+ * Allow Stranded Obligations
1457
+ *
1458
+ * Override the stranded-obligation gate — close even though matured classified obligations have no drafted closing entry, knowingly omitting those adjusting entries from the period. Prefer running promote-obligations with dispatch_handlers=true (which drafts them) or voiding the obligations instead. The override is recorded in the close audit note.
1459
+ */
1460
+ allow_stranded_obligations?: boolean;
1481
1461
  /**
1482
1462
  * Period
1483
1463
  *
@@ -1499,9 +1479,21 @@ export type ClosePeriodResponse = {
1499
1479
  /**
1500
1480
  * Entries Posted
1501
1481
  *
1502
- * Number of draft entries transitioned to posted
1482
+ * Total draft entries the close transitioned to posted, across both post paths (QB pre-publish + local bulk transition). See entries_published_to_qb / entries_posted_locally for the split.
1503
1483
  */
1504
1484
  entries_posted?: number;
1485
+ /**
1486
+ * Entries Published To Qb
1487
+ *
1488
+ * Drafts published to QuickBooks by the close's pre-publish step (each is promoted to posted at publish time).
1489
+ */
1490
+ entries_published_to_qb?: number;
1491
+ /**
1492
+ * Entries Posted Locally
1493
+ *
1494
+ * Drafts posted by the local bulk transition (entries that don't publish to QuickBooks, e.g. native-only graphs or local-only sources).
1495
+ */
1496
+ entries_posted_locally?: number;
1505
1497
  /**
1506
1498
  * Target Auto Advanced
1507
1499
  *
@@ -2069,6 +2061,12 @@ export type CreateApiKeyRequest = {
2069
2061
  * Optional expiration date in ISO format (e.g. 2024-12-31T23:59:59Z)
2070
2062
  */
2071
2063
  expires_at?: string | null;
2064
+ /**
2065
+ * Graph Id
2066
+ *
2067
+ * Optional graph scope. A scoped key works only for this graph (and its subgraphs) and is the only kind of key accepted in an MCP connector URL. Omit for an account-wide key.
2068
+ */
2069
+ graph_id?: string | null;
2072
2070
  };
2073
2071
  /**
2074
2072
  * CreateAPIKeyResponse
@@ -4805,6 +4803,12 @@ export type EventBlockEnvelope = {
4805
4803
  metadata: {
4806
4804
  [key: string]: unknown;
4807
4805
  };
4806
+ /**
4807
+ * Payload Drift
4808
+ *
4809
+ * True when a source re-sync surfaced a changed upstream payload for an event whose GL is already posted (committed/fulfilled are immutable to sync). The live payload and GL are untouched; the incoming payload is stashed in `metadata.drift_payload` with `metadata.drift_detected_at`. Drifted events need operator reconciliation — the local books no longer mirror the source.
4810
+ */
4811
+ payload_drift?: boolean;
4808
4812
  /**
4809
4813
  * Dimension Ids
4810
4814
  *
@@ -5501,7 +5505,7 @@ export type FiscalCalendarResponse = {
5501
5505
  /**
5502
5506
  * Blockers
5503
5507
  *
5504
- * Structured blocker codes when closeable_now is False: 'sequence_violation', 'period_incomplete', 'sync_stale', 'calendar_not_initialized', 'period_already_closed', 'pending_obligations'
5508
+ * Structured blocker codes when closeable_now is False: 'sequence_violation', 'period_incomplete', 'sync_stale', 'calendar_not_initialized', 'period_already_closed', 'pending_obligations', 'stranded_obligations'
5505
5509
  */
5506
5510
  blockers?: Array<string>;
5507
5511
  /**
@@ -5528,6 +5532,18 @@ export type FiscalCalendarResponse = {
5528
5532
  * Days the most recent sync is stale relative to the period to close. Populated only when `sync_stale` is in `blockers` and last_sync_at exists (null when there's a connection but no sync has ever run).
5529
5533
  */
5530
5534
  sync_stale_days?: number | null;
5535
+ /**
5536
+ * Stranded Obligation Count
5537
+ *
5538
+ * Matured schedule_entry_due events already at 'classified' with no drafted closing entry for their (schedule, period) — adjusting entries a close would silently omit. Resolve by running promote-obligations with dispatch_handlers=true (which reaches them) or voiding the obligation.
5539
+ */
5540
+ stranded_obligation_count?: number;
5541
+ /**
5542
+ * Stranded Obligation Sample
5543
+ *
5544
+ * Sample of up to 5 stranded obligations (schedule_id, schedule_name, period, event_id) ordered by occurred_at.
5545
+ */
5546
+ stranded_obligation_sample?: Array<PendingObligationDetailResponse>;
5531
5547
  /**
5532
5548
  * Last Close At
5533
5549
  */
@@ -5967,6 +5983,10 @@ export type GraphLimitsResponse = {
5967
5983
  * Knowledge-base document usage and tier cap (user graphs only)
5968
5984
  */
5969
5985
  documents?: DocumentLimits | null;
5986
+ /**
5987
+ * Subgraph count and tier cap (parent user graphs only)
5988
+ */
5989
+ subgraphs?: SubgraphLimits | null;
5970
5990
  /**
5971
5991
  * Per-operation materialization limits (if applicable)
5972
5992
  */
@@ -10442,83 +10462,6 @@ export type OperatorMetadataResponse = {
10442
10462
  * Operator execution modes.
10443
10463
  */
10444
10464
  export type OperatorMode = 'quick' | 'standard' | 'extended' | 'streaming';
10445
- /**
10446
- * OperatorRecommendation
10447
- *
10448
- * Single operator recommendation.
10449
- */
10450
- export type OperatorRecommendation = {
10451
- /**
10452
- * Operator Type
10453
- *
10454
- * Operator type identifier
10455
- */
10456
- operator_type: string;
10457
- /**
10458
- * Operator Name
10459
- *
10460
- * Operator display name
10461
- */
10462
- operator_name: string;
10463
- /**
10464
- * Confidence
10465
- *
10466
- * Confidence score (0-1)
10467
- */
10468
- confidence: number;
10469
- /**
10470
- * Capabilities
10471
- *
10472
- * Operator capabilities
10473
- */
10474
- capabilities: Array<string>;
10475
- /**
10476
- * Reason
10477
- *
10478
- * Reason for recommendation
10479
- */
10480
- reason?: string | null;
10481
- };
10482
- /**
10483
- * OperatorRecommendationRequest
10484
- *
10485
- * Request for operator recommendations.
10486
- */
10487
- export type OperatorRecommendationRequest = {
10488
- /**
10489
- * Query
10490
- *
10491
- * Query to analyze
10492
- */
10493
- query: string;
10494
- /**
10495
- * Context
10496
- *
10497
- * Additional context
10498
- */
10499
- context?: {
10500
- [key: string]: unknown;
10501
- } | null;
10502
- };
10503
- /**
10504
- * OperatorRecommendationResponse
10505
- *
10506
- * Response for operator recommendations.
10507
- */
10508
- export type OperatorRecommendationResponse = {
10509
- /**
10510
- * Recommendations
10511
- *
10512
- * List of operator recommendations sorted by confidence
10513
- */
10514
- recommendations: Array<OperatorRecommendation>;
10515
- /**
10516
- * Query
10517
- *
10518
- * The analyzed query
10519
- */
10520
- query: string;
10521
- };
10522
10465
  /**
10523
10466
  * OperatorRequest
10524
10467
  *
@@ -11693,7 +11636,9 @@ export type PreviewEventBlockResponse = {
11693
11636
  * Flips matured ``pending`` ``schedule_entry_due`` events (period boundary
11694
11637
  * passed) to ``classified``; with ``dispatch_handlers`` it also drafts the
11695
11638
  * closing entries in the same transaction (idempotent — reconciles to an
11696
- * existing draft).
11639
+ * existing draft). The sweep also reaches *stranded* obligations —
11640
+ * already ``classified`` (by an earlier flip-only sweep) but with no
11641
+ * closing entry ever drafted — dispatching them in the same pass.
11697
11642
  */
11698
11643
  export type PromoteObligationsRequest = {
11699
11644
  /**
@@ -11727,10 +11672,22 @@ export type PromoteObligationsResponse = {
11727
11672
  * Per-obligation handler errors (non-fatal).
11728
11673
  */
11729
11674
  error_count: number;
11675
+ /**
11676
+ * Stranded Count
11677
+ *
11678
+ * Matured obligations found already at 'classified' with no drafted closing entry. With dispatch_handlers=true they were drafted this run (included in dispatched_count); with dispatch_handlers=false they still have no draft — re-run with dispatch_handlers=true or void them.
11679
+ */
11680
+ stranded_count?: number;
11730
11681
  /**
11731
11682
  * Classified Event Ids
11732
11683
  */
11733
11684
  classified_event_ids?: Array<string>;
11685
+ /**
11686
+ * Stranded Event Ids
11687
+ *
11688
+ * Event ids of the stranded obligations found this sweep.
11689
+ */
11690
+ stranded_event_ids?: Array<string>;
11734
11691
  /**
11735
11692
  * Errors
11736
11693
  *
@@ -13877,53 +13834,39 @@ export type StructureUpdatePatch = {
13877
13834
  } | null;
13878
13835
  };
13879
13836
  /**
13880
- * SubgraphQuotaResponse
13837
+ * SubgraphLimits
13838
+ *
13839
+ * Subgraph count against the parent graph tier's cap.
13881
13840
  *
13882
- * Response model for subgraph quota information.
13841
+ * Subgraphs are refused at the tier cap regardless of how small they are,
13842
+ * so this is a count axis independent of the storage one — ``instance``
13843
+ * already itemizes their footprint.
13883
13844
  */
13884
- export type SubgraphQuotaResponse = {
13885
- /**
13886
- * Parent Graph Id
13887
- *
13888
- * Parent graph identifier
13889
- */
13890
- parent_graph_id: string;
13891
- /**
13892
- * Tier
13893
- *
13894
- * Graph tier
13895
- */
13896
- tier: string;
13845
+ export type SubgraphLimits = {
13897
13846
  /**
13898
13847
  * Current Count
13899
13848
  *
13900
- * Current number of subgraphs
13849
+ * Subgraphs currently provisioned under this graph
13901
13850
  */
13902
13851
  current_count: number;
13903
13852
  /**
13904
13853
  * Max Allowed
13905
13854
  *
13906
- * Maximum allowed subgraphs (None = unlimited)
13855
+ * Maximum subgraphs for this tier (null when uncapped)
13907
13856
  */
13908
13857
  max_allowed?: number | null;
13909
13858
  /**
13910
13859
  * Remaining
13911
13860
  *
13912
- * Remaining subgraphs that can be created
13861
+ * Subgraphs that can still be created (null when uncapped)
13913
13862
  */
13914
13863
  remaining?: number | null;
13915
13864
  /**
13916
- * Total Size Mb
13917
- *
13918
- * Total size of all subgraphs
13919
- */
13920
- total_size_mb?: number | null;
13921
- /**
13922
- * Max Size Mb
13865
+ * Approaching Limit
13923
13866
  *
13924
- * Maximum allowed total size
13867
+ * Whether approaching subgraph limit (>80%)
13925
13868
  */
13926
- max_size_mb?: number | null;
13869
+ approaching_limit: boolean;
13927
13870
  };
13928
13871
  /**
13929
13872
  * SubgraphResponse
@@ -18764,108 +18707,6 @@ export type ExecuteSpecificOperatorResponses = {
18764
18707
  202: unknown;
18765
18708
  };
18766
18709
  export type ExecuteSpecificOperatorResponse = ExecuteSpecificOperatorResponses[keyof ExecuteSpecificOperatorResponses];
18767
- export type BatchProcessQueriesData = {
18768
- body: BatchOperatorRequest;
18769
- path: {
18770
- /**
18771
- * Graph Id
18772
- */
18773
- graph_id: string;
18774
- };
18775
- query?: never;
18776
- url: '/v1/graphs/{graph_id}/operator/batch';
18777
- };
18778
- export type BatchProcessQueriesErrors = {
18779
- /**
18780
- * Invalid request
18781
- */
18782
- 400: ErrorResponse;
18783
- /**
18784
- * Authentication required
18785
- */
18786
- 401: ErrorResponse;
18787
- /**
18788
- * Insufficient credits
18789
- */
18790
- 402: unknown;
18791
- /**
18792
- * Access denied
18793
- */
18794
- 403: ErrorResponse;
18795
- /**
18796
- * Resource not found
18797
- */
18798
- 404: ErrorResponse;
18799
- /**
18800
- * Validation Error
18801
- */
18802
- 422: HttpValidationError;
18803
- /**
18804
- * Rate limit exceeded
18805
- */
18806
- 429: ErrorResponse;
18807
- /**
18808
- * Internal server error
18809
- */
18810
- 500: ErrorResponse;
18811
- };
18812
- export type BatchProcessQueriesError = BatchProcessQueriesErrors[keyof BatchProcessQueriesErrors];
18813
- export type BatchProcessQueriesResponses = {
18814
- /**
18815
- * Successful Response
18816
- */
18817
- 200: BatchOperatorResponse;
18818
- };
18819
- export type BatchProcessQueriesResponse = BatchProcessQueriesResponses[keyof BatchProcessQueriesResponses];
18820
- export type RecommendOperatorData = {
18821
- body: OperatorRecommendationRequest;
18822
- path: {
18823
- /**
18824
- * Graph Id
18825
- */
18826
- graph_id: string;
18827
- };
18828
- query?: never;
18829
- url: '/v1/graphs/{graph_id}/operator/recommend';
18830
- };
18831
- export type RecommendOperatorErrors = {
18832
- /**
18833
- * Invalid request
18834
- */
18835
- 400: ErrorResponse;
18836
- /**
18837
- * Authentication required
18838
- */
18839
- 401: ErrorResponse;
18840
- /**
18841
- * Access denied
18842
- */
18843
- 403: ErrorResponse;
18844
- /**
18845
- * Resource not found
18846
- */
18847
- 404: ErrorResponse;
18848
- /**
18849
- * Validation Error
18850
- */
18851
- 422: HttpValidationError;
18852
- /**
18853
- * Rate limit exceeded
18854
- */
18855
- 429: ErrorResponse;
18856
- /**
18857
- * Internal server error
18858
- */
18859
- 500: ErrorResponse;
18860
- };
18861
- export type RecommendOperatorError = RecommendOperatorErrors[keyof RecommendOperatorErrors];
18862
- export type RecommendOperatorResponses = {
18863
- /**
18864
- * Successful Response
18865
- */
18866
- 200: OperatorRecommendationResponse;
18867
- };
18868
- export type RecommendOperatorResponse = RecommendOperatorResponses[keyof RecommendOperatorResponses];
18869
18710
  export type ListMcpToolsData = {
18870
18711
  body?: never;
18871
18712
  path: {
@@ -20130,55 +19971,6 @@ export type GetSubgraphInfoResponses = {
20130
19971
  200: SubgraphResponse;
20131
19972
  };
20132
19973
  export type GetSubgraphInfoResponse = GetSubgraphInfoResponses[keyof GetSubgraphInfoResponses];
20133
- export type GetSubgraphQuotaData = {
20134
- body?: never;
20135
- path: {
20136
- /**
20137
- * Graph Id
20138
- */
20139
- graph_id: string;
20140
- };
20141
- query?: never;
20142
- url: '/v1/graphs/{graph_id}/subgraphs/quota';
20143
- };
20144
- export type GetSubgraphQuotaErrors = {
20145
- /**
20146
- * Invalid request
20147
- */
20148
- 400: ErrorResponse;
20149
- /**
20150
- * Authentication required
20151
- */
20152
- 401: ErrorResponse;
20153
- /**
20154
- * Access denied
20155
- */
20156
- 403: ErrorResponse;
20157
- /**
20158
- * Resource not found
20159
- */
20160
- 404: ErrorResponse;
20161
- /**
20162
- * Validation Error
20163
- */
20164
- 422: HttpValidationError;
20165
- /**
20166
- * Rate limit exceeded
20167
- */
20168
- 429: ErrorResponse;
20169
- /**
20170
- * Internal server error
20171
- */
20172
- 500: ErrorResponse;
20173
- };
20174
- export type GetSubgraphQuotaError = GetSubgraphQuotaErrors[keyof GetSubgraphQuotaErrors];
20175
- export type GetSubgraphQuotaResponses = {
20176
- /**
20177
- * Successful Response
20178
- */
20179
- 200: SubgraphQuotaResponse;
20180
- };
20181
- export type GetSubgraphQuotaResponse = GetSubgraphQuotaResponses[keyof GetSubgraphQuotaResponses];
20182
19974
  export type GetGraphSubscriptionData = {
20183
19975
  body?: never;
20184
19976
  path: {