cadenya 0.9.0 → 0.10.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.
Files changed (123) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +7 -7
  4. data/lib/cadenya/models/agent.rb +28 -1
  5. data/lib/cadenya/models/agent_archive_params.rb +26 -0
  6. data/lib/cadenya/models/agent_entry.rb +31 -1
  7. data/lib/cadenya/models/agent_list_params.rb +12 -12
  8. data/lib/cadenya/models/agent_publish_params.rb +26 -0
  9. data/lib/cadenya/models/agent_schedule_entry.rb +31 -1
  10. data/lib/cadenya/models/agent_spec.rb +1 -24
  11. data/lib/cadenya/models/agent_unarchive_params.rb +26 -0
  12. data/lib/cadenya/models/agent_unpublish_params.rb +26 -0
  13. data/lib/cadenya/models/agents/agent_schedule.rb +30 -1
  14. data/lib/cadenya/models/agents/agent_schedule_info.rb +1 -1
  15. data/lib/cadenya/models/agents/agent_schedule_spec.rb +1 -24
  16. data/lib/cadenya/models/agents/schedule_archive_params.rb +34 -0
  17. data/lib/cadenya/models/agents/schedule_pause_params.rb +34 -0
  18. data/lib/cadenya/models/agents/schedule_resume_params.rb +34 -0
  19. data/lib/cadenya/models/bulk_workspace_apply_data.rb +6 -7
  20. data/lib/cadenya/models/model.rb +25 -1
  21. data/lib/cadenya/models/model_disable_params.rb +26 -0
  22. data/lib/cadenya/models/model_enable_params.rb +26 -0
  23. data/lib/cadenya/models/model_list_params.rb +11 -11
  24. data/lib/cadenya/models/model_spec.rb +1 -23
  25. data/lib/cadenya/models/resource_metadata.rb +9 -1
  26. data/lib/cadenya/models/tool_entry.rb +31 -1
  27. data/lib/cadenya/models/tool_set.rb +27 -1
  28. data/lib/cadenya/models/tool_set_archive_params.rb +26 -0
  29. data/lib/cadenya/models/tool_set_list_params.rb +26 -1
  30. data/lib/cadenya/models/tool_set_unarchive_params.rb +26 -0
  31. data/lib/cadenya/models/tool_sets/tool.rb +28 -1
  32. data/lib/cadenya/models/tool_sets/tool_list_params.rb +11 -12
  33. data/lib/cadenya/models/tool_sets/tool_omit_params.rb +34 -0
  34. data/lib/cadenya/models/tool_sets/tool_restore_params.rb +34 -0
  35. data/lib/cadenya/models/tool_sets/tool_spec.rb +3 -23
  36. data/lib/cadenya/models.rb +16 -2
  37. data/lib/cadenya/resources/account.rb +1 -1
  38. data/lib/cadenya/resources/agents/schedules.rb +112 -0
  39. data/lib/cadenya/resources/agents.rb +126 -2
  40. data/lib/cadenya/resources/api_keys.rb +2 -2
  41. data/lib/cadenya/resources/models.rb +39 -13
  42. data/lib/cadenya/resources/tool_sets/tools.rb +77 -3
  43. data/lib/cadenya/resources/tool_sets.rb +73 -2
  44. data/lib/cadenya/version.rb +1 -1
  45. data/lib/cadenya.rb +13 -1
  46. data/rbi/cadenya/models/agent.rbi +34 -0
  47. data/rbi/cadenya/models/agent_archive_params.rbi +43 -0
  48. data/rbi/cadenya/models/agent_entry.rbi +41 -0
  49. data/rbi/cadenya/models/agent_list_params.rbi +22 -31
  50. data/rbi/cadenya/models/agent_publish_params.rbi +43 -0
  51. data/rbi/cadenya/models/agent_schedule_entry.rbi +52 -3
  52. data/rbi/cadenya/models/agent_spec.rbi +0 -41
  53. data/rbi/cadenya/models/agent_unarchive_params.rbi +43 -0
  54. data/rbi/cadenya/models/agent_unpublish_params.rbi +43 -0
  55. data/rbi/cadenya/models/agents/agent_schedule.rbi +54 -0
  56. data/rbi/cadenya/models/agents/agent_schedule_info.rbi +2 -2
  57. data/rbi/cadenya/models/agents/agent_schedule_spec.rbi +0 -59
  58. data/rbi/cadenya/models/agents/schedule_archive_params.rbi +53 -0
  59. data/rbi/cadenya/models/agents/schedule_pause_params.rbi +53 -0
  60. data/rbi/cadenya/models/agents/schedule_resume_params.rbi +53 -0
  61. data/rbi/cadenya/models/bulk_workspace_apply_data.rbi +12 -14
  62. data/rbi/cadenya/models/model.rbi +30 -0
  63. data/rbi/cadenya/models/model_disable_params.rbi +43 -0
  64. data/rbi/cadenya/models/model_enable_params.rbi +43 -0
  65. data/rbi/cadenya/models/model_list_params.rbi +20 -26
  66. data/rbi/cadenya/models/model_spec.rbi +3 -42
  67. data/rbi/cadenya/models/resource_metadata.rbi +14 -3
  68. data/rbi/cadenya/models/tool_entry.rbi +44 -3
  69. data/rbi/cadenya/models/tool_set.rbi +35 -0
  70. data/rbi/cadenya/models/tool_set_archive_params.rbi +43 -0
  71. data/rbi/cadenya/models/tool_set_list_params.rbi +44 -0
  72. data/rbi/cadenya/models/tool_set_unarchive_params.rbi +43 -0
  73. data/rbi/cadenya/models/tool_sets/tool.rbi +43 -0
  74. data/rbi/cadenya/models/tool_sets/tool_list_params.rbi +26 -27
  75. data/rbi/cadenya/models/tool_sets/tool_omit_params.rbi +50 -0
  76. data/rbi/cadenya/models/tool_sets/tool_restore_params.rbi +53 -0
  77. data/rbi/cadenya/models/tool_sets/tool_spec.rbi +3 -49
  78. data/rbi/cadenya/models.rbi +16 -2
  79. data/rbi/cadenya/resources/agents/schedules.rbi +70 -0
  80. data/rbi/cadenya/resources/agents.rbi +79 -3
  81. data/rbi/cadenya/resources/models.rbi +26 -10
  82. data/rbi/cadenya/resources/tool_sets/tools.rbi +46 -4
  83. data/rbi/cadenya/resources/tool_sets.rbi +44 -0
  84. data/sig/cadenya/models/agent.rbs +19 -0
  85. data/sig/cadenya/models/agent_archive_params.rbs +28 -0
  86. data/sig/cadenya/models/agent_entry.rbs +23 -0
  87. data/sig/cadenya/models/agent_list_params.rbs +15 -18
  88. data/sig/cadenya/models/agent_publish_params.rbs +28 -0
  89. data/sig/cadenya/models/agent_schedule_entry.rbs +26 -3
  90. data/sig/cadenya/models/agent_spec.rbs +0 -22
  91. data/sig/cadenya/models/agent_unarchive_params.rbs +28 -0
  92. data/sig/cadenya/models/agent_unpublish_params.rbs +28 -0
  93. data/sig/cadenya/models/agents/agent_schedule.rbs +19 -0
  94. data/sig/cadenya/models/agents/agent_schedule_spec.rbs +0 -26
  95. data/sig/cadenya/models/agents/schedule_archive_params.rbs +34 -0
  96. data/sig/cadenya/models/agents/schedule_pause_params.rbs +34 -0
  97. data/sig/cadenya/models/agents/schedule_resume_params.rbs +34 -0
  98. data/sig/cadenya/models/model.rbs +17 -0
  99. data/sig/cadenya/models/model_disable_params.rbs +28 -0
  100. data/sig/cadenya/models/model_enable_params.rbs +28 -0
  101. data/sig/cadenya/models/model_list_params.rbs +13 -16
  102. data/sig/cadenya/models/model_spec.rbs +3 -27
  103. data/sig/cadenya/models/resource_metadata.rbs +10 -3
  104. data/sig/cadenya/models/tool_entry.rbs +26 -3
  105. data/sig/cadenya/models/tool_set.rbs +17 -0
  106. data/sig/cadenya/models/tool_set_archive_params.rbs +28 -0
  107. data/sig/cadenya/models/tool_set_list_params.rbs +22 -1
  108. data/sig/cadenya/models/tool_set_unarchive_params.rbs +28 -0
  109. data/sig/cadenya/models/tool_sets/tool.rbs +22 -0
  110. data/sig/cadenya/models/tool_sets/tool_list_params.rbs +18 -18
  111. data/sig/cadenya/models/tool_sets/tool_omit_params.rbs +34 -0
  112. data/sig/cadenya/models/tool_sets/tool_restore_params.rbs +34 -0
  113. data/sig/cadenya/models/tool_sets/tool_spec.rbs +2 -26
  114. data/sig/cadenya/models.rbs +16 -2
  115. data/sig/cadenya/resources/agents/schedules.rbs +21 -0
  116. data/sig/cadenya/resources/agents.rbs +25 -1
  117. data/sig/cadenya/resources/models.rbs +8 -3
  118. data/sig/cadenya/resources/tool_sets/tools.rbs +15 -1
  119. data/sig/cadenya/resources/tool_sets.rbs +13 -0
  120. metadata +41 -5
  121. data/lib/cadenya/models/model_set_status_params.rb +0 -48
  122. data/rbi/cadenya/models/model_set_status_params.rbi +0 -95
  123. data/sig/cadenya/models/model_set_status_params.rbs +0 -55
@@ -207,6 +207,118 @@ module Cadenya
207
207
  )
208
208
  end
209
209
 
210
+ # Some parameter documentations has been truncated, see
211
+ # {Cadenya::Models::Agents::ScheduleArchiveParams} for more details.
212
+ #
213
+ # Transitions a schedule to STATE_ARCHIVED and removes its underlying timer.
214
+ # Archiving is terminal: archived schedules never fire and cannot be reactivated;
215
+ # create a new schedule instead.
216
+ #
217
+ # @overload archive(id, workspace_id:, agent_id:, request_options: {})
218
+ #
219
+ # @param id [String] Schedule ID. Accepts the canonical `as_…` form or the `external_id:<value>` form
220
+ #
221
+ # @param workspace_id [String] Workspace ID.
222
+ #
223
+ # @param agent_id [String] Agent ID. Accepts the canonical `agent_…` form or the `external_id:<value>` form
224
+ #
225
+ # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
226
+ #
227
+ # @return [Cadenya::Models::Agents::AgentSchedule]
228
+ #
229
+ # @see Cadenya::Models::Agents::ScheduleArchiveParams
230
+ def archive(id, params)
231
+ parsed, options = Cadenya::Agents::ScheduleArchiveParams.dump_request(params)
232
+ workspace_id =
233
+ parsed.delete(:workspace_id) do
234
+ raise ArgumentError.new("missing required path argument #{_1}")
235
+ end
236
+ agent_id =
237
+ parsed.delete(:agent_id) do
238
+ raise ArgumentError.new("missing required path argument #{_1}")
239
+ end
240
+ @client.request(
241
+ method: :post,
242
+ path: ["v1/workspaces/%1$s/agents/%2$s/schedules/%3$s:archive", workspace_id, agent_id, id],
243
+ model: Cadenya::Agents::AgentSchedule,
244
+ options: options
245
+ )
246
+ end
247
+
248
+ # Some parameter documentations has been truncated, see
249
+ # {Cadenya::Models::Agents::SchedulePauseParams} for more details.
250
+ #
251
+ # Transitions a schedule to STATE_PAUSED. Paused schedules retain history but do
252
+ # not fire.
253
+ #
254
+ # @overload pause(id, workspace_id:, agent_id:, request_options: {})
255
+ #
256
+ # @param id [String] Schedule ID. Accepts the canonical `as_…` form or the `external_id:<value>` form
257
+ #
258
+ # @param workspace_id [String] Workspace ID.
259
+ #
260
+ # @param agent_id [String] Agent ID. Accepts the canonical `agent_…` form or the `external_id:<value>` form
261
+ #
262
+ # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
263
+ #
264
+ # @return [Cadenya::Models::Agents::AgentSchedule]
265
+ #
266
+ # @see Cadenya::Models::Agents::SchedulePauseParams
267
+ def pause(id, params)
268
+ parsed, options = Cadenya::Agents::SchedulePauseParams.dump_request(params)
269
+ workspace_id =
270
+ parsed.delete(:workspace_id) do
271
+ raise ArgumentError.new("missing required path argument #{_1}")
272
+ end
273
+ agent_id =
274
+ parsed.delete(:agent_id) do
275
+ raise ArgumentError.new("missing required path argument #{_1}")
276
+ end
277
+ @client.request(
278
+ method: :post,
279
+ path: ["v1/workspaces/%1$s/agents/%2$s/schedules/%3$s:pause", workspace_id, agent_id, id],
280
+ model: Cadenya::Agents::AgentSchedule,
281
+ options: options
282
+ )
283
+ end
284
+
285
+ # Some parameter documentations has been truncated, see
286
+ # {Cadenya::Models::Agents::ScheduleResumeParams} for more details.
287
+ #
288
+ # Transitions a paused schedule back to STATE_ACTIVE so it fires on its cadence
289
+ # again. Archived schedules cannot be resumed.
290
+ #
291
+ # @overload resume(id, workspace_id:, agent_id:, request_options: {})
292
+ #
293
+ # @param id [String] Schedule ID. Accepts the canonical `as_…` form or the `external_id:<value>` form
294
+ #
295
+ # @param workspace_id [String] Workspace ID.
296
+ #
297
+ # @param agent_id [String] Agent ID. Accepts the canonical `agent_…` form or the `external_id:<value>` form
298
+ #
299
+ # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
300
+ #
301
+ # @return [Cadenya::Models::Agents::AgentSchedule]
302
+ #
303
+ # @see Cadenya::Models::Agents::ScheduleResumeParams
304
+ def resume(id, params)
305
+ parsed, options = Cadenya::Agents::ScheduleResumeParams.dump_request(params)
306
+ workspace_id =
307
+ parsed.delete(:workspace_id) do
308
+ raise ArgumentError.new("missing required path argument #{_1}")
309
+ end
310
+ agent_id =
311
+ parsed.delete(:agent_id) do
312
+ raise ArgumentError.new("missing required path argument #{_1}")
313
+ end
314
+ @client.request(
315
+ method: :post,
316
+ path: ["v1/workspaces/%1$s/agents/%2$s/schedules/%3$s:resume", workspace_id, agent_id, id],
317
+ model: Cadenya::Agents::AgentSchedule,
318
+ options: options
319
+ )
320
+ end
321
+
210
322
  # @api private
211
323
  #
212
324
  # @param client [Cadenya::Client]
@@ -125,7 +125,7 @@ module Cadenya
125
125
  #
126
126
  # Lists all agents in the workspace
127
127
  #
128
- # @overload list(workspace_id, bundle_key: nil, cursor: nil, include_info: nil, limit: nil, prefix: nil, query: nil, sort_order: nil, status: nil, variation_selection_mode: nil, request_options: {})
128
+ # @overload list(workspace_id, bundle_key: nil, cursor: nil, include_info: nil, limit: nil, prefix: nil, query: nil, sort_order: nil, state: nil, variation_selection_mode: nil, request_options: {})
129
129
  #
130
130
  # @param workspace_id [String] Workspace ID.
131
131
  #
@@ -143,7 +143,7 @@ module Cadenya
143
143
  #
144
144
  # @param sort_order [String] Sort order for results (asc or desc by creation time)
145
145
  #
146
- # @param status [Symbol, Cadenya::Models::AgentListParams::Status] Filter by agent publication status
146
+ # @param state [Symbol, Cadenya::Models::AgentListParams::State] Filter by agent lifecycle state
147
147
  #
148
148
  # @param variation_selection_mode [Symbol, Cadenya::Models::AgentListParams::VariationSelectionMode] Filter by variation selection mode
149
149
  #
@@ -200,6 +200,130 @@ module Cadenya
200
200
  )
201
201
  end
202
202
 
203
+ # Some parameter documentations has been truncated, see
204
+ # {Cadenya::Models::AgentArchiveParams} for more details.
205
+ #
206
+ # Transitions an agent to STATE_ARCHIVED. Archived agents are hidden from list
207
+ # results and cannot be used for objectives; active schedules are paused.
208
+ #
209
+ # @overload archive(id, workspace_id:, request_options: {})
210
+ #
211
+ # @param id [String] Agent ID. Accepts the canonical `agent_…` form or the `external_id:<value>` form
212
+ #
213
+ # @param workspace_id [String] Workspace ID.
214
+ #
215
+ # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
216
+ #
217
+ # @return [Cadenya::Models::Agent]
218
+ #
219
+ # @see Cadenya::Models::AgentArchiveParams
220
+ def archive(id, params)
221
+ parsed, options = Cadenya::AgentArchiveParams.dump_request(params)
222
+ workspace_id =
223
+ parsed.delete(:workspace_id) do
224
+ raise ArgumentError.new("missing required path argument #{_1}")
225
+ end
226
+ @client.request(
227
+ method: :post,
228
+ path: ["v1/workspaces/%1$s/agents/%2$s:archive", workspace_id, id],
229
+ model: Cadenya::Agent,
230
+ options: options
231
+ )
232
+ end
233
+
234
+ # Some parameter documentations has been truncated, see
235
+ # {Cadenya::Models::AgentPublishParams} for more details.
236
+ #
237
+ # Transitions an agent to STATE_PUBLISHED, making it available for objectives. The
238
+ # agent must have at least one variation.
239
+ #
240
+ # @overload publish(id, workspace_id:, request_options: {})
241
+ #
242
+ # @param id [String] Agent ID. Accepts the canonical `agent_…` form or the `external_id:<value>` form
243
+ #
244
+ # @param workspace_id [String] Workspace ID.
245
+ #
246
+ # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
247
+ #
248
+ # @return [Cadenya::Models::Agent]
249
+ #
250
+ # @see Cadenya::Models::AgentPublishParams
251
+ def publish(id, params)
252
+ parsed, options = Cadenya::AgentPublishParams.dump_request(params)
253
+ workspace_id =
254
+ parsed.delete(:workspace_id) do
255
+ raise ArgumentError.new("missing required path argument #{_1}")
256
+ end
257
+ @client.request(
258
+ method: :post,
259
+ path: ["v1/workspaces/%1$s/agents/%2$s:publish", workspace_id, id],
260
+ model: Cadenya::Agent,
261
+ options: options
262
+ )
263
+ end
264
+
265
+ # Some parameter documentations has been truncated, see
266
+ # {Cadenya::Models::AgentUnarchiveParams} for more details.
267
+ #
268
+ # Transitions an archived agent back to STATE_DRAFT. Publish the agent again to
269
+ # make it available for objectives.
270
+ #
271
+ # @overload unarchive(id, workspace_id:, request_options: {})
272
+ #
273
+ # @param id [String] Agent ID. Accepts the canonical `agent_…` form or the `external_id:<value>` form
274
+ #
275
+ # @param workspace_id [String] Workspace ID.
276
+ #
277
+ # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
278
+ #
279
+ # @return [Cadenya::Models::Agent]
280
+ #
281
+ # @see Cadenya::Models::AgentUnarchiveParams
282
+ def unarchive(id, params)
283
+ parsed, options = Cadenya::AgentUnarchiveParams.dump_request(params)
284
+ workspace_id =
285
+ parsed.delete(:workspace_id) do
286
+ raise ArgumentError.new("missing required path argument #{_1}")
287
+ end
288
+ @client.request(
289
+ method: :post,
290
+ path: ["v1/workspaces/%1$s/agents/%2$s:unarchive", workspace_id, id],
291
+ model: Cadenya::Agent,
292
+ options: options
293
+ )
294
+ end
295
+
296
+ # Some parameter documentations has been truncated, see
297
+ # {Cadenya::Models::AgentUnpublishParams} for more details.
298
+ #
299
+ # Transitions a published agent back to STATE_DRAFT. Active schedules for the
300
+ # agent are paused until it is published again.
301
+ #
302
+ # @overload unpublish(id, workspace_id:, request_options: {})
303
+ #
304
+ # @param id [String] Agent ID. Accepts the canonical `agent_…` form or the `external_id:<value>` form
305
+ #
306
+ # @param workspace_id [String] Workspace ID.
307
+ #
308
+ # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
309
+ #
310
+ # @return [Cadenya::Models::Agent]
311
+ #
312
+ # @see Cadenya::Models::AgentUnpublishParams
313
+ def unpublish(id, params)
314
+ parsed, options = Cadenya::AgentUnpublishParams.dump_request(params)
315
+ workspace_id =
316
+ parsed.delete(:workspace_id) do
317
+ raise ArgumentError.new("missing required path argument #{_1}")
318
+ end
319
+ @client.request(
320
+ method: :post,
321
+ path: ["v1/workspaces/%1$s/agents/%2$s:unpublish", workspace_id, id],
322
+ model: Cadenya::Agent,
323
+ options: options
324
+ )
325
+ end
326
+
203
327
  # @api private
204
328
  #
205
329
  # @param client [Cadenya::Client]
@@ -171,8 +171,8 @@ module Cadenya
171
171
  # @see Cadenya::Models::APIKeyRotateParams
172
172
  def rotate(id, params = {})
173
173
  @client.request(
174
- method: :put,
175
- path: ["v1/account/api_keys/%1$s/rotate", id],
174
+ method: :post,
175
+ path: ["v1/account/api_keys/%1$s:rotate", id],
176
176
  model: Cadenya::APIKey,
177
177
  options: params[:request_options]
178
178
  )
@@ -38,7 +38,7 @@ module Cadenya
38
38
  #
39
39
  # Lists all models in the workspace
40
40
  #
41
- # @overload list(workspace_id, ai_provider_key_id: nil, bundle_key: nil, cursor: nil, include_info: nil, limit: nil, prefix: nil, query: nil, sort_order: nil, status: nil, request_options: {})
41
+ # @overload list(workspace_id, ai_provider_key_id: nil, bundle_key: nil, cursor: nil, include_info: nil, limit: nil, prefix: nil, query: nil, sort_order: nil, state: nil, request_options: {})
42
42
  #
43
43
  # @param workspace_id [String] Workspace ID.
44
44
  #
@@ -58,7 +58,7 @@ module Cadenya
58
58
  #
59
59
  # @param sort_order [String] Sort order for results (asc or desc by creation time)
60
60
  #
61
- # @param status [Symbol, Cadenya::Models::ModelListParams::Status] Filter by model status
61
+ # @param state [Symbol, Cadenya::Models::ModelListParams::State] Filter by model state
62
62
  #
63
63
  # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
64
64
  #
@@ -83,31 +83,57 @@ module Cadenya
83
83
  )
84
84
  end
85
85
 
86
- # Enables or disables a model in the workspace
86
+ # Transitions a model to STATE_DISABLED. Fails while agent variations are still
87
+ # provisioned on the model; use :swapModelOnVariations to move them first.
87
88
  #
88
- # @overload set_status(id, workspace_id:, status: nil, request_options: {})
89
+ # @overload disable(id, workspace_id:, request_options: {})
89
90
  #
90
- # @param id [String] Path param: Model ID
91
+ # @param id [String] Model ID
92
+ #
93
+ # @param workspace_id [String] Workspace ID.
94
+ #
95
+ # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
96
+ #
97
+ # @return [Cadenya::Models::Model]
98
+ #
99
+ # @see Cadenya::Models::ModelDisableParams
100
+ def disable(id, params)
101
+ parsed, options = Cadenya::ModelDisableParams.dump_request(params)
102
+ workspace_id =
103
+ parsed.delete(:workspace_id) do
104
+ raise ArgumentError.new("missing required path argument #{_1}")
105
+ end
106
+ @client.request(
107
+ method: :post,
108
+ path: ["v1/workspaces/%1$s/models/%2$s:disable", workspace_id, id],
109
+ model: Cadenya::Model,
110
+ options: options
111
+ )
112
+ end
113
+
114
+ # Transitions a model to STATE_ENABLED, making it available for agent variations
115
+ # in the workspace
116
+ #
117
+ # @overload enable(id, workspace_id:, request_options: {})
91
118
  #
92
- # @param workspace_id [String] Path param: Workspace ID.
119
+ # @param id [String] Model ID
93
120
  #
94
- # @param status [Symbol, Cadenya::Models::ModelSetStatusParams::Status] Body param: The new status for the model
121
+ # @param workspace_id [String] Workspace ID.
95
122
  #
96
123
  # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
97
124
  #
98
125
  # @return [Cadenya::Models::Model]
99
126
  #
100
- # @see Cadenya::Models::ModelSetStatusParams
101
- def set_status(id, params)
102
- parsed, options = Cadenya::ModelSetStatusParams.dump_request(params)
127
+ # @see Cadenya::Models::ModelEnableParams
128
+ def enable(id, params)
129
+ parsed, options = Cadenya::ModelEnableParams.dump_request(params)
103
130
  workspace_id =
104
131
  parsed.delete(:workspace_id) do
105
132
  raise ArgumentError.new("missing required path argument #{_1}")
106
133
  end
107
134
  @client.request(
108
- method: :put,
109
- path: ["v1/workspaces/%1$s/models/%2$s/status", workspace_id, id],
110
- body: parsed,
135
+ method: :post,
136
+ path: ["v1/workspaces/%1$s/models/%2$s:enable", workspace_id, id],
111
137
  model: Cadenya::Model,
112
138
  options: options
113
139
  )
@@ -115,7 +115,7 @@ module Cadenya
115
115
  raise ArgumentError.new("missing required path argument #{_1}")
116
116
  end
117
117
  @client.request(
118
- method: :put,
118
+ method: :patch,
119
119
  path: ["v1/workspaces/%1$s/tool_sets/%2$s/tools/%3$s", workspace_id, tool_set_id, id],
120
120
  body: parsed,
121
121
  model: Cadenya::ToolSets::Tool,
@@ -128,7 +128,7 @@ module Cadenya
128
128
  #
129
129
  # Lists all tools in the tool set
130
130
  #
131
- # @overload list(tool_set_id, workspace_id:, bundle_key: nil, cursor: nil, include_info: nil, limit: nil, names: nil, prefix: nil, query: nil, requires_approval: nil, sort_order: nil, statuses: nil, request_options: {})
131
+ # @overload list(tool_set_id, workspace_id:, bundle_key: nil, cursor: nil, include_info: nil, limit: nil, names: nil, prefix: nil, query: nil, requires_approval: nil, sort_order: nil, states: nil, request_options: {})
132
132
  #
133
133
  # @param tool_set_id [String] Path param: Tool set ID. Accepts the canonical ts\_… form or the
134
134
  #
@@ -152,7 +152,7 @@ module Cadenya
152
152
  #
153
153
  # @param sort_order [String] Query param: Sort order for results (asc or desc by creation time)
154
154
  #
155
- # @param statuses [Array<Symbol, Cadenya::Models::ToolSets::ToolListParams::Status>] Query param: Filter by tool status. Multiple values are OR'd together.
155
+ # @param states [Array<Symbol, Cadenya::Models::ToolSets::ToolListParams::State>] Query param: Filter by tool state. Multiple values are OR'd together.
156
156
  #
157
157
  # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
158
158
  #
@@ -217,6 +217,80 @@ module Cadenya
217
217
  )
218
218
  end
219
219
 
220
+ # Some parameter documentations has been truncated, see
221
+ # {Cadenya::Models::ToolSets::ToolOmitParams} for more details.
222
+ #
223
+ # Transitions a tool to STATE_OMITTED, excluding it from agent use. Fails if the
224
+ # tool is currently assigned to agent variations.
225
+ #
226
+ # @overload omit(id, workspace_id:, tool_set_id:, request_options: {})
227
+ #
228
+ # @param id [String] Tool ID. Accepts the canonical tool\_… form or the
229
+ #
230
+ # @param workspace_id [String] Workspace ID.
231
+ #
232
+ # @param tool_set_id [String] Tool set ID. Accepts the canonical ts\_… form or the
233
+ #
234
+ # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
235
+ #
236
+ # @return [Cadenya::Models::ToolSets::Tool]
237
+ #
238
+ # @see Cadenya::Models::ToolSets::ToolOmitParams
239
+ def omit(id, params)
240
+ parsed, options = Cadenya::ToolSets::ToolOmitParams.dump_request(params)
241
+ workspace_id =
242
+ parsed.delete(:workspace_id) do
243
+ raise ArgumentError.new("missing required path argument #{_1}")
244
+ end
245
+ tool_set_id =
246
+ parsed.delete(:tool_set_id) do
247
+ raise ArgumentError.new("missing required path argument #{_1}")
248
+ end
249
+ @client.request(
250
+ method: :post,
251
+ path: ["v1/workspaces/%1$s/tool_sets/%2$s/tools/%3$s:omit", workspace_id, tool_set_id, id],
252
+ model: Cadenya::ToolSets::Tool,
253
+ options: options
254
+ )
255
+ end
256
+
257
+ # Some parameter documentations has been truncated, see
258
+ # {Cadenya::Models::ToolSets::ToolRestoreParams} for more details.
259
+ #
260
+ # Transitions an omitted tool back to STATE_AVAILABLE. For managed tool sets, the
261
+ # next sync may omit the tool again if its filters still exclude it.
262
+ #
263
+ # @overload restore(id, workspace_id:, tool_set_id:, request_options: {})
264
+ #
265
+ # @param id [String] Tool ID. Accepts the canonical tool\_… form or the
266
+ #
267
+ # @param workspace_id [String] Workspace ID.
268
+ #
269
+ # @param tool_set_id [String] Tool set ID. Accepts the canonical ts\_… form or the
270
+ #
271
+ # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
272
+ #
273
+ # @return [Cadenya::Models::ToolSets::Tool]
274
+ #
275
+ # @see Cadenya::Models::ToolSets::ToolRestoreParams
276
+ def restore(id, params)
277
+ parsed, options = Cadenya::ToolSets::ToolRestoreParams.dump_request(params)
278
+ workspace_id =
279
+ parsed.delete(:workspace_id) do
280
+ raise ArgumentError.new("missing required path argument #{_1}")
281
+ end
282
+ tool_set_id =
283
+ parsed.delete(:tool_set_id) do
284
+ raise ArgumentError.new("missing required path argument #{_1}")
285
+ end
286
+ @client.request(
287
+ method: :post,
288
+ path: ["v1/workspaces/%1$s/tool_sets/%2$s/tools/%3$s:restore", workspace_id, tool_set_id, id],
289
+ model: Cadenya::ToolSets::Tool,
290
+ options: options
291
+ )
292
+ end
293
+
220
294
  # @api private
221
295
  #
222
296
  # @param client [Cadenya::Client]
@@ -104,7 +104,7 @@ module Cadenya
104
104
  raise ArgumentError.new("missing required path argument #{_1}")
105
105
  end
106
106
  @client.request(
107
- method: :put,
107
+ method: :patch,
108
108
  path: ["v1/workspaces/%1$s/tool_sets/%2$s", workspace_id, id],
109
109
  body: parsed,
110
110
  model: Cadenya::ToolSet,
@@ -112,9 +112,12 @@ module Cadenya
112
112
  )
113
113
  end
114
114
 
115
+ # Some parameter documentations has been truncated, see
116
+ # {Cadenya::Models::ToolSetListParams} for more details.
117
+ #
115
118
  # Lists all tool sets in the workspace
116
119
  #
117
- # @overload list(workspace_id, bundle_key: nil, cursor: nil, include_info: nil, limit: nil, prefix: nil, query: nil, sort_order: nil, request_options: {})
120
+ # @overload list(workspace_id, bundle_key: nil, cursor: nil, include_info: nil, limit: nil, prefix: nil, query: nil, sort_order: nil, state: nil, request_options: {})
118
121
  #
119
122
  # @param workspace_id [String] Workspace ID.
120
123
  #
@@ -132,6 +135,8 @@ module Cadenya
132
135
  #
133
136
  # @param sort_order [String] Sort order for results (asc or desc by creation time)
134
137
  #
138
+ # @param state [Symbol, Cadenya::Models::ToolSetListParams::State] Filter by tool set lifecycle state. Defaults to STATE_ACTIVE when
139
+ #
135
140
  # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
136
141
  #
137
142
  # @return [Cadenya::Internal::CursorPagination<Cadenya::Models::ToolSet>]
@@ -184,6 +189,40 @@ module Cadenya
184
189
  )
185
190
  end
186
191
 
192
+ # Some parameter documentations has been truncated, see
193
+ # {Cadenya::Models::ToolSetArchiveParams} for more details.
194
+ #
195
+ # Transitions a tool set to STATE_ARCHIVED. Syncing stops, the tool set is hidden
196
+ # from list results, its tools are no longer offered to objectives, and new
197
+ # variation assignments are rejected. Existing assignments are retained, and
198
+ # history is preserved — unlike delete, archiving works while the tool set is
199
+ # still assigned to agent variations.
200
+ #
201
+ # @overload archive(id, workspace_id:, request_options: {})
202
+ #
203
+ # @param id [String] Tool set ID. Accepts the canonical ts\_… form or the
204
+ #
205
+ # @param workspace_id [String] Workspace ID.
206
+ #
207
+ # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
208
+ #
209
+ # @return [Cadenya::Models::ToolSet]
210
+ #
211
+ # @see Cadenya::Models::ToolSetArchiveParams
212
+ def archive(id, params)
213
+ parsed, options = Cadenya::ToolSetArchiveParams.dump_request(params)
214
+ workspace_id =
215
+ parsed.delete(:workspace_id) do
216
+ raise ArgumentError.new("missing required path argument #{_1}")
217
+ end
218
+ @client.request(
219
+ method: :post,
220
+ path: ["v1/workspaces/%1$s/tool_sets/%2$s:archive", workspace_id, id],
221
+ model: Cadenya::ToolSet,
222
+ options: options
223
+ )
224
+ end
225
+
187
226
  # Some parameter documentations has been truncated, see
188
227
  # {Cadenya::Models::ToolSetGetOpenAPISpecParams} for more details.
189
228
  #
@@ -256,6 +295,38 @@ module Cadenya
256
295
  )
257
296
  end
258
297
 
298
+ # Some parameter documentations has been truncated, see
299
+ # {Cadenya::Models::ToolSetUnarchiveParams} for more details.
300
+ #
301
+ # Transitions an archived tool set back to STATE_ACTIVE. Managed tool sets resume
302
+ # syncing on their next cycle and their tools become available to objectives
303
+ # again.
304
+ #
305
+ # @overload unarchive(id, workspace_id:, request_options: {})
306
+ #
307
+ # @param id [String] Tool set ID. Accepts the canonical ts\_… form or the
308
+ #
309
+ # @param workspace_id [String] Workspace ID.
310
+ #
311
+ # @param request_options [Cadenya::RequestOptions, Hash{Symbol=>Object}, nil]
312
+ #
313
+ # @return [Cadenya::Models::ToolSet]
314
+ #
315
+ # @see Cadenya::Models::ToolSetUnarchiveParams
316
+ def unarchive(id, params)
317
+ parsed, options = Cadenya::ToolSetUnarchiveParams.dump_request(params)
318
+ workspace_id =
319
+ parsed.delete(:workspace_id) do
320
+ raise ArgumentError.new("missing required path argument #{_1}")
321
+ end
322
+ @client.request(
323
+ method: :post,
324
+ path: ["v1/workspaces/%1$s/tool_sets/%2$s:unarchive", workspace_id, id],
325
+ model: Cadenya::ToolSet,
326
+ options: options
327
+ )
328
+ end
329
+
259
330
  # @api private
260
331
  #
261
332
  # @param client [Cadenya::Client]
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Cadenya
4
- VERSION = "0.9.0"
4
+ VERSION = "0.10.0"
5
5
  end
data/lib/cadenya.rb CHANGED
@@ -61,11 +61,13 @@ require_relative "cadenya/models/account_retrieve_params"
61
61
  require_relative "cadenya/models/account_rotate_webhook_signing_key_params"
62
62
  require_relative "cadenya/models/account_spec"
63
63
  require_relative "cadenya/models/agent"
64
+ require_relative "cadenya/models/agent_archive_params"
64
65
  require_relative "cadenya/models/agent_create_params"
65
66
  require_relative "cadenya/models/agent_delete_params"
66
67
  require_relative "cadenya/models/agent_entry"
67
68
  require_relative "cadenya/models/agent_info"
68
69
  require_relative "cadenya/models/agent_list_params"
70
+ require_relative "cadenya/models/agent_publish_params"
69
71
  require_relative "cadenya/models/agent_retrieve_params"
70
72
  require_relative "cadenya/models/agents/agent_schedule"
71
73
  require_relative "cadenya/models/agents/agent_schedule_info"
@@ -81,12 +83,15 @@ require_relative "cadenya/models/agents/agent_variation_spec_progressive_discove
81
83
  require_relative "cadenya/models/agents/compaction_config_summarization_strategy"
82
84
  require_relative "cadenya/models/agents/compaction_config_tool_result_clearing_strategy"
83
85
  require_relative "cadenya/models/agents/feedback_list_params"
86
+ require_relative "cadenya/models/agents/schedule_archive_params"
84
87
  require_relative "cadenya/models/agents/schedule_calendar"
85
88
  require_relative "cadenya/models/agents/schedule_create_params"
86
89
  require_relative "cadenya/models/agents/schedule_delete_params"
87
90
  require_relative "cadenya/models/agents/schedule_interval"
88
91
  require_relative "cadenya/models/agents/schedule_list_params"
92
+ require_relative "cadenya/models/agents/schedule_pause_params"
89
93
  require_relative "cadenya/models/agents/schedule_range"
94
+ require_relative "cadenya/models/agents/schedule_resume_params"
90
95
  require_relative "cadenya/models/agents/schedule_retrieve_params"
91
96
  require_relative "cadenya/models/agents/schedule_update_params"
92
97
  require_relative "cadenya/models/agents/variation_add_assignment_params"
@@ -106,6 +111,8 @@ require_relative "cadenya/models/agents/webhook_delivery_data"
106
111
  require_relative "cadenya/models/agents/webhook_delivery_list_params"
107
112
  require_relative "cadenya/models/agent_schedule_entry"
108
113
  require_relative "cadenya/models/agent_spec"
114
+ require_relative "cadenya/models/agent_unarchive_params"
115
+ require_relative "cadenya/models/agent_unpublish_params"
109
116
  require_relative "cadenya/models/agent_update_params"
110
117
  require_relative "cadenya/models/agent_variation_entry"
111
118
  require_relative "cadenya/models/ai_provider_key"
@@ -179,9 +186,10 @@ require_relative "cadenya/models/memory_layer_update_params"
179
186
  require_relative "cadenya/models/memory_read"
180
187
  require_relative "cadenya/models/memory_reference"
181
188
  require_relative "cadenya/models/model"
189
+ require_relative "cadenya/models/model_disable_params"
190
+ require_relative "cadenya/models/model_enable_params"
182
191
  require_relative "cadenya/models/model_list_params"
183
192
  require_relative "cadenya/models/model_retrieve_params"
184
- require_relative "cadenya/models/model_set_status_params"
185
193
  require_relative "cadenya/models/model_spec"
186
194
  require_relative "cadenya/models/model_swap_params"
187
195
  require_relative "cadenya/models/model_swap_response"
@@ -250,6 +258,7 @@ require_relative "cadenya/models/tool_set_adapter"
250
258
  require_relative "cadenya/models/tool_set_adapter_http"
251
259
  require_relative "cadenya/models/tool_set_adapter_mcp"
252
260
  require_relative "cadenya/models/tool_set_adapter_openapi"
261
+ require_relative "cadenya/models/tool_set_archive_params"
253
262
  require_relative "cadenya/models/tool_set_create_params"
254
263
  require_relative "cadenya/models/tool_set_delete_params"
255
264
  require_relative "cadenya/models/tool_set_entry"
@@ -269,11 +278,14 @@ require_relative "cadenya/models/tool_sets/tool_create_params"
269
278
  require_relative "cadenya/models/tool_sets/tool_delete_params"
270
279
  require_relative "cadenya/models/tool_sets/tool_info"
271
280
  require_relative "cadenya/models/tool_sets/tool_list_params"
281
+ require_relative "cadenya/models/tool_sets/tool_omit_params"
282
+ require_relative "cadenya/models/tool_sets/tool_restore_params"
272
283
  require_relative "cadenya/models/tool_sets/tool_retrieve_params"
273
284
  require_relative "cadenya/models/tool_sets/tool_spec"
274
285
  require_relative "cadenya/models/tool_sets/tool_spec_config"
275
286
  require_relative "cadenya/models/tool_sets/tool_update_params"
276
287
  require_relative "cadenya/models/tool_set_spec"
288
+ require_relative "cadenya/models/tool_set_unarchive_params"
277
289
  require_relative "cadenya/models/tool_set_update_params"
278
290
  require_relative "cadenya/models/unsafe_unwrap_webhook_event"
279
291
  require_relative "cadenya/models/unwrap_webhook_event"