cadenya 0.8.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 (155) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -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/objective.rb +116 -18
  26. data/lib/cadenya/models/objective_config_snapshot.rb +39 -0
  27. data/lib/cadenya/models/objective_create_params.rb +65 -4
  28. data/lib/cadenya/models/objective_info.rb +45 -29
  29. data/lib/cadenya/models/objective_secret.rb +15 -0
  30. data/lib/cadenya/models/objectives/objective_tool_call.rb +19 -19
  31. data/lib/cadenya/models/resource_metadata.rb +9 -1
  32. data/lib/cadenya/models/tool_entry.rb +31 -1
  33. data/lib/cadenya/models/tool_set.rb +27 -1
  34. data/lib/cadenya/models/tool_set_archive_params.rb +26 -0
  35. data/lib/cadenya/models/tool_set_list_params.rb +26 -1
  36. data/lib/cadenya/models/tool_set_unarchive_params.rb +26 -0
  37. data/lib/cadenya/models/tool_sets/tool.rb +28 -1
  38. data/lib/cadenya/models/tool_sets/tool_list_params.rb +11 -12
  39. data/lib/cadenya/models/tool_sets/tool_omit_params.rb +34 -0
  40. data/lib/cadenya/models/tool_sets/tool_restore_params.rb +34 -0
  41. data/lib/cadenya/models/tool_sets/tool_spec.rb +3 -23
  42. data/lib/cadenya/models.rb +19 -7
  43. data/lib/cadenya/resources/account.rb +1 -1
  44. data/lib/cadenya/resources/agents/schedules.rb +112 -0
  45. data/lib/cadenya/resources/agents.rb +126 -2
  46. data/lib/cadenya/resources/api_keys.rb +2 -2
  47. data/lib/cadenya/resources/models.rb +39 -13
  48. data/lib/cadenya/resources/objectives/tool_calls.rb +4 -4
  49. data/lib/cadenya/resources/objectives.rb +11 -5
  50. data/lib/cadenya/resources/tool_sets/tools.rb +77 -3
  51. data/lib/cadenya/resources/tool_sets.rb +73 -2
  52. data/lib/cadenya/version.rb +1 -1
  53. data/lib/cadenya.rb +15 -4
  54. data/rbi/cadenya/models/agent.rbi +34 -0
  55. data/rbi/cadenya/models/agent_archive_params.rbi +43 -0
  56. data/rbi/cadenya/models/agent_entry.rbi +41 -0
  57. data/rbi/cadenya/models/agent_list_params.rbi +22 -31
  58. data/rbi/cadenya/models/agent_publish_params.rbi +43 -0
  59. data/rbi/cadenya/models/agent_schedule_entry.rbi +52 -3
  60. data/rbi/cadenya/models/agent_spec.rbi +0 -41
  61. data/rbi/cadenya/models/agent_unarchive_params.rbi +43 -0
  62. data/rbi/cadenya/models/agent_unpublish_params.rbi +43 -0
  63. data/rbi/cadenya/models/agents/agent_schedule.rbi +54 -0
  64. data/rbi/cadenya/models/agents/agent_schedule_info.rbi +2 -2
  65. data/rbi/cadenya/models/agents/agent_schedule_spec.rbi +0 -59
  66. data/rbi/cadenya/models/agents/schedule_archive_params.rbi +53 -0
  67. data/rbi/cadenya/models/agents/schedule_pause_params.rbi +53 -0
  68. data/rbi/cadenya/models/agents/schedule_resume_params.rbi +53 -0
  69. data/rbi/cadenya/models/bulk_workspace_apply_data.rbi +12 -14
  70. data/rbi/cadenya/models/model.rbi +30 -0
  71. data/rbi/cadenya/models/model_disable_params.rbi +43 -0
  72. data/rbi/cadenya/models/model_enable_params.rbi +43 -0
  73. data/rbi/cadenya/models/model_list_params.rbi +20 -26
  74. data/rbi/cadenya/models/model_spec.rbi +3 -42
  75. data/rbi/cadenya/models/objective.rbi +172 -32
  76. data/rbi/cadenya/models/objective_config_snapshot.rbi +70 -0
  77. data/rbi/cadenya/models/objective_create_params.rbi +112 -6
  78. data/rbi/cadenya/models/objective_info.rbi +50 -56
  79. data/rbi/cadenya/models/objective_secret.rbi +26 -0
  80. data/rbi/cadenya/models/objectives/objective_tool_call.rbi +47 -57
  81. data/rbi/cadenya/models/profile_spec.rbi +2 -2
  82. data/rbi/cadenya/models/resource_metadata.rbi +14 -3
  83. data/rbi/cadenya/models/tool_entry.rbi +44 -3
  84. data/rbi/cadenya/models/tool_set.rbi +35 -0
  85. data/rbi/cadenya/models/tool_set_archive_params.rbi +43 -0
  86. data/rbi/cadenya/models/tool_set_list_params.rbi +44 -0
  87. data/rbi/cadenya/models/tool_set_unarchive_params.rbi +43 -0
  88. data/rbi/cadenya/models/tool_sets/tool.rbi +43 -0
  89. data/rbi/cadenya/models/tool_sets/tool_list_params.rbi +26 -27
  90. data/rbi/cadenya/models/tool_sets/tool_omit_params.rbi +50 -0
  91. data/rbi/cadenya/models/tool_sets/tool_restore_params.rbi +53 -0
  92. data/rbi/cadenya/models/tool_sets/tool_spec.rbi +3 -49
  93. data/rbi/cadenya/models.rbi +19 -7
  94. data/rbi/cadenya/resources/agents/schedules.rbi +70 -0
  95. data/rbi/cadenya/resources/agents.rbi +79 -3
  96. data/rbi/cadenya/resources/models.rbi +26 -10
  97. data/rbi/cadenya/resources/objectives.rbi +29 -1
  98. data/rbi/cadenya/resources/tool_sets/tools.rbi +46 -4
  99. data/rbi/cadenya/resources/tool_sets.rbi +44 -0
  100. data/sig/cadenya/models/agent.rbs +19 -0
  101. data/sig/cadenya/models/agent_archive_params.rbs +28 -0
  102. data/sig/cadenya/models/agent_entry.rbs +23 -0
  103. data/sig/cadenya/models/agent_list_params.rbs +15 -18
  104. data/sig/cadenya/models/agent_publish_params.rbs +28 -0
  105. data/sig/cadenya/models/agent_schedule_entry.rbs +26 -3
  106. data/sig/cadenya/models/agent_spec.rbs +0 -22
  107. data/sig/cadenya/models/agent_unarchive_params.rbs +28 -0
  108. data/sig/cadenya/models/agent_unpublish_params.rbs +28 -0
  109. data/sig/cadenya/models/agents/agent_schedule.rbs +19 -0
  110. data/sig/cadenya/models/agents/agent_schedule_spec.rbs +0 -26
  111. data/sig/cadenya/models/agents/schedule_archive_params.rbs +34 -0
  112. data/sig/cadenya/models/agents/schedule_pause_params.rbs +34 -0
  113. data/sig/cadenya/models/agents/schedule_resume_params.rbs +34 -0
  114. data/sig/cadenya/models/model.rbs +17 -0
  115. data/sig/cadenya/models/model_disable_params.rbs +28 -0
  116. data/sig/cadenya/models/model_enable_params.rbs +28 -0
  117. data/sig/cadenya/models/model_list_params.rbs +13 -16
  118. data/sig/cadenya/models/model_spec.rbs +3 -27
  119. data/sig/cadenya/models/objective.rbs +85 -15
  120. data/sig/cadenya/models/objective_config_snapshot.rbs +40 -0
  121. data/sig/cadenya/models/objective_create_params.rbs +45 -4
  122. data/sig/cadenya/models/objective_info.rbs +26 -38
  123. data/sig/cadenya/models/objective_secret.rbs +15 -0
  124. data/sig/cadenya/models/objectives/objective_tool_call.rbs +23 -27
  125. data/sig/cadenya/models/resource_metadata.rbs +10 -3
  126. data/sig/cadenya/models/tool_entry.rbs +26 -3
  127. data/sig/cadenya/models/tool_set.rbs +17 -0
  128. data/sig/cadenya/models/tool_set_archive_params.rbs +28 -0
  129. data/sig/cadenya/models/tool_set_list_params.rbs +22 -1
  130. data/sig/cadenya/models/tool_set_unarchive_params.rbs +28 -0
  131. data/sig/cadenya/models/tool_sets/tool.rbs +22 -0
  132. data/sig/cadenya/models/tool_sets/tool_list_params.rbs +18 -18
  133. data/sig/cadenya/models/tool_sets/tool_omit_params.rbs +34 -0
  134. data/sig/cadenya/models/tool_sets/tool_restore_params.rbs +34 -0
  135. data/sig/cadenya/models/tool_sets/tool_spec.rbs +2 -26
  136. data/sig/cadenya/models.rbs +19 -7
  137. data/sig/cadenya/resources/agents/schedules.rbs +21 -0
  138. data/sig/cadenya/resources/agents.rbs +25 -1
  139. data/sig/cadenya/resources/models.rbs +8 -3
  140. data/sig/cadenya/resources/objectives.rbs +4 -1
  141. data/sig/cadenya/resources/tool_sets/tools.rbs +15 -1
  142. data/sig/cadenya/resources/tool_sets.rbs +13 -0
  143. metadata +47 -14
  144. data/lib/cadenya/models/model_set_status_params.rb +0 -48
  145. data/lib/cadenya/models/objective_data.rb +0 -127
  146. data/lib/cadenya/models/objective_data_secret.rb +0 -21
  147. data/lib/cadenya/models/objective_status.rb +0 -37
  148. data/rbi/cadenya/models/model_set_status_params.rbi +0 -95
  149. data/rbi/cadenya/models/objective_data.rbi +0 -198
  150. data/rbi/cadenya/models/objective_data_secret.rbi +0 -32
  151. data/rbi/cadenya/models/objective_status.rbi +0 -75
  152. data/sig/cadenya/models/model_set_status_params.rbs +0 -55
  153. data/sig/cadenya/models/objective_data.rbs +0 -98
  154. data/sig/cadenya/models/objective_data_secret.rbs +0 -19
  155. data/sig/cadenya/models/objective_status.rbs +0 -47
@@ -8,79 +8,65 @@ module Cadenya
8
8
  T.any(Cadenya::ObjectiveInfo, Cadenya::Internal::AnyHash)
9
9
  end
10
10
 
11
+ # A profile identifies a user or non-human principal (such as an API key) at the
12
+ # account level. Profiles are account-scoped and can be granted access to multiple
13
+ # workspaces.
14
+ sig { returns(Cadenya::Profile) }
15
+ attr_reader :created_by
16
+
17
+ sig { params(created_by: Cadenya::Profile::OrHash).void }
18
+ attr_writer :created_by
19
+
11
20
  # Standard metadata for persistent, named resources (e.g., agents, tools, prompts)
12
- sig { returns(T.nilable(Cadenya::ResourceMetadata)) }
21
+ sig { returns(Cadenya::ResourceMetadata) }
13
22
  attr_reader :agent
14
23
 
15
24
  sig { params(agent: Cadenya::ResourceMetadata::OrHash).void }
16
25
  attr_writer :agent
17
26
 
18
27
  # Standard metadata for persistent, named resources (e.g., agents, tools, prompts)
19
- sig { returns(T.nilable(Cadenya::ResourceMetadata)) }
28
+ sig { returns(Cadenya::ResourceMetadata) }
20
29
  attr_reader :agent_variation
21
30
 
22
31
  sig { params(agent_variation: Cadenya::ResourceMetadata::OrHash).void }
23
32
  attr_writer :agent_variation
24
33
 
25
- # A profile identifies a user or non-human principal (such as an API key) at the
26
- # account level. Profiles are account-scoped and can be granted access to multiple
27
- # workspaces.
28
- sig { returns(T.nilable(Cadenya::Profile)) }
29
- attr_reader :created_by
30
-
31
- sig { params(created_by: Cadenya::Profile::OrHash).void }
32
- attr_writer :created_by
34
+ # ID of the objective's current (most recent) context window. Hydrated on demand;
35
+ # empty when the objective has not yet produced a context window.
36
+ sig { returns(String) }
37
+ attr_accessor :current_context_window_id
33
38
 
34
39
  # The effective memory stack at objective creation time, flattened from the
35
- # variation's baseline plus ObjectiveData.memory_stack. Order is push order (last
36
- # = top). Returned on reads so clients can see exactly what stack the objective is
40
+ # variation's baseline plus Objective.memory_stack. Order is push order (last =
41
+ # top). Returned on reads so clients can see exactly what stack the objective is
37
42
  # using without having to re-join variation state.
38
- sig { returns(T.nilable(T::Array[Cadenya::MemoryReference])) }
39
- attr_reader :effective_memory_stack
40
-
41
- sig do
42
- params(
43
- effective_memory_stack: T::Array[Cadenya::MemoryReference::OrHash]
44
- ).void
45
- end
46
- attr_writer :effective_memory_stack
43
+ sig { returns(T::Array[Cadenya::MemoryReference]) }
44
+ attr_accessor :effective_memory_stack
47
45
 
48
46
  # Total number of context windows that this objective has generated
49
- sig { returns(T.nilable(Integer)) }
50
- attr_reader :total_context_windows
51
-
52
- sig { params(total_context_windows: Integer).void }
53
- attr_writer :total_context_windows
47
+ sig { returns(Integer) }
48
+ attr_accessor :total_context_windows
54
49
 
55
50
  # Total number of events generated during this objective's execution
56
- sig { returns(T.nilable(Integer)) }
57
- attr_reader :total_events
58
-
59
- sig { params(total_events: Integer).void }
60
- attr_writer :total_events
51
+ sig { returns(Integer) }
52
+ attr_accessor :total_events
61
53
 
62
54
  # Total input tokens consumed across all LLM completions across all context
63
55
  # windows
64
- sig { returns(T.nilable(Integer)) }
65
- attr_reader :total_input_tokens
56
+ sig { returns(Integer) }
57
+ attr_accessor :total_input_tokens
66
58
 
67
- sig { params(total_input_tokens: Integer).void }
68
- attr_writer :total_input_tokens
59
+ sig { returns(Integer) }
60
+ attr_accessor :total_iterations
69
61
 
70
62
  # Total output tokens generated across all LLM completions across all context
71
63
  # windows
72
- sig { returns(T.nilable(Integer)) }
73
- attr_reader :total_output_tokens
74
-
75
- sig { params(total_output_tokens: Integer).void }
76
- attr_writer :total_output_tokens
64
+ sig { returns(Integer) }
65
+ attr_accessor :total_output_tokens
77
66
 
78
67
  # Total number of tool calls made during execution
79
- sig { returns(T.nilable(Integer)) }
80
- attr_reader :total_tool_calls
81
-
82
- sig { params(total_tool_calls: Integer).void }
83
- attr_writer :total_tool_calls
68
+ sig { returns(Integer) }
69
+ attr_accessor :total_tool_calls
84
70
 
85
71
  # ObjectiveInfo provides read-only aggregated statistics about an objective's
86
72
  # execution
@@ -89,40 +75,46 @@ module Cadenya
89
75
  agent: Cadenya::ResourceMetadata::OrHash,
90
76
  agent_variation: Cadenya::ResourceMetadata::OrHash,
91
77
  created_by: Cadenya::Profile::OrHash,
78
+ current_context_window_id: String,
92
79
  effective_memory_stack: T::Array[Cadenya::MemoryReference::OrHash],
93
80
  total_context_windows: Integer,
94
81
  total_events: Integer,
95
82
  total_input_tokens: Integer,
83
+ total_iterations: Integer,
96
84
  total_output_tokens: Integer,
97
85
  total_tool_calls: Integer
98
86
  ).returns(T.attached_class)
99
87
  end
100
88
  def self.new(
101
89
  # Standard metadata for persistent, named resources (e.g., agents, tools, prompts)
102
- agent: nil,
90
+ agent:,
103
91
  # Standard metadata for persistent, named resources (e.g., agents, tools, prompts)
104
- agent_variation: nil,
92
+ agent_variation:,
105
93
  # A profile identifies a user or non-human principal (such as an API key) at the
106
94
  # account level. Profiles are account-scoped and can be granted access to multiple
107
95
  # workspaces.
108
- created_by: nil,
96
+ created_by:,
97
+ # ID of the objective's current (most recent) context window. Hydrated on demand;
98
+ # empty when the objective has not yet produced a context window.
99
+ current_context_window_id:,
109
100
  # The effective memory stack at objective creation time, flattened from the
110
- # variation's baseline plus ObjectiveData.memory_stack. Order is push order (last
111
- # = top). Returned on reads so clients can see exactly what stack the objective is
101
+ # variation's baseline plus Objective.memory_stack. Order is push order (last =
102
+ # top). Returned on reads so clients can see exactly what stack the objective is
112
103
  # using without having to re-join variation state.
113
- effective_memory_stack: nil,
104
+ effective_memory_stack:,
114
105
  # Total number of context windows that this objective has generated
115
- total_context_windows: nil,
106
+ total_context_windows:,
116
107
  # Total number of events generated during this objective's execution
117
- total_events: nil,
108
+ total_events:,
118
109
  # Total input tokens consumed across all LLM completions across all context
119
110
  # windows
120
- total_input_tokens: nil,
111
+ total_input_tokens:,
112
+ total_iterations:,
121
113
  # Total output tokens generated across all LLM completions across all context
122
114
  # windows
123
- total_output_tokens: nil,
115
+ total_output_tokens:,
124
116
  # Total number of tool calls made during execution
125
- total_tool_calls: nil
117
+ total_tool_calls:
126
118
  )
127
119
  end
128
120
 
@@ -132,10 +124,12 @@ module Cadenya
132
124
  agent: Cadenya::ResourceMetadata,
133
125
  agent_variation: Cadenya::ResourceMetadata,
134
126
  created_by: Cadenya::Profile,
127
+ current_context_window_id: String,
135
128
  effective_memory_stack: T::Array[Cadenya::MemoryReference],
136
129
  total_context_windows: Integer,
137
130
  total_events: Integer,
138
131
  total_input_tokens: Integer,
132
+ total_iterations: Integer,
139
133
  total_output_tokens: Integer,
140
134
  total_tool_calls: Integer
141
135
  }
@@ -0,0 +1,26 @@
1
+ # typed: strong
2
+
3
+ module Cadenya
4
+ module Models
5
+ class ObjectiveSecret < Cadenya::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Cadenya::ObjectiveSecret, Cadenya::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(T.nilable(String)) }
12
+ attr_reader :name
13
+
14
+ sig { params(name: String).void }
15
+ attr_writer :name
16
+
17
+ sig { params(name: String).returns(T.attached_class) }
18
+ def self.new(name: nil)
19
+ end
20
+
21
+ sig { override.returns({ name: String }) }
22
+ def to_hash
23
+ end
24
+ end
25
+ end
26
+ end
@@ -46,20 +46,10 @@ module Cadenya
46
46
 
47
47
  sig do
48
48
  returns(
49
- T.nilable(
50
- Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol
51
- )
49
+ Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol
52
50
  )
53
51
  end
54
- attr_reader :execution_status
55
-
56
- sig do
57
- params(
58
- execution_status:
59
- Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::OrSymbol
60
- ).void
61
- end
62
- attr_writer :execution_status
52
+ attr_accessor :execution_status
63
53
 
64
54
  # ObjectiveToolCall is a record of a tool call made during an objective's
65
55
  # execution. Tool calls are mutable — their status changes as they are approved,
@@ -67,21 +57,21 @@ module Cadenya
67
57
  sig do
68
58
  params(
69
59
  data: Cadenya::Objectives::ObjectiveToolCallData::OrHash,
70
- metadata: Cadenya::OperationMetadata::OrHash,
71
- status: Cadenya::Objectives::ObjectiveToolCall::Status::OrSymbol,
72
60
  execution_status:
73
61
  Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::OrSymbol,
62
+ metadata: Cadenya::OperationMetadata::OrHash,
63
+ status: Cadenya::Objectives::ObjectiveToolCall::Status::OrSymbol,
74
64
  info: Cadenya::Objectives::ObjectiveToolCallInfo::OrHash
75
65
  ).returns(T.attached_class)
76
66
  end
77
67
  def self.new(
78
68
  data:,
69
+ execution_status:,
79
70
  # Metadata for ephemeral operations and activities (e.g., objectives, executions,
80
71
  # runs)
81
72
  metadata:,
82
73
  # Current status of the tool call
83
74
  status:,
84
- execution_status: nil,
85
75
  info: nil
86
76
  )
87
77
  end
@@ -90,11 +80,11 @@ module Cadenya
90
80
  override.returns(
91
81
  {
92
82
  data: Cadenya::Objectives::ObjectiveToolCallData,
83
+ execution_status:
84
+ Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol,
93
85
  metadata: Cadenya::OperationMetadata,
94
86
  status:
95
87
  Cadenya::Objectives::ObjectiveToolCall::Status::TaggedSymbol,
96
- execution_status:
97
- Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol,
98
88
  info: Cadenya::Objectives::ObjectiveToolCallInfo
99
89
  }
100
90
  )
@@ -102,46 +92,48 @@ module Cadenya
102
92
  def to_hash
103
93
  end
104
94
 
105
- # Current status of the tool call
106
- module Status
95
+ module ExecutionStatus
107
96
  extend Cadenya::Internal::Type::Enum
108
97
 
109
98
  TaggedSymbol =
110
99
  T.type_alias do
111
- T.all(Symbol, Cadenya::Objectives::ObjectiveToolCall::Status)
100
+ T.all(
101
+ Symbol,
102
+ Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus
103
+ )
112
104
  end
113
105
  OrSymbol = T.type_alias { T.any(Symbol, String) }
114
106
 
115
- TOOL_CALL_STATUS_UNSPECIFIED =
107
+ TOOL_CALL_EXECUTION_STATUS_UNSPECIFIED =
116
108
  T.let(
117
- :TOOL_CALL_STATUS_UNSPECIFIED,
118
- Cadenya::Objectives::ObjectiveToolCall::Status::TaggedSymbol
109
+ :TOOL_CALL_EXECUTION_STATUS_UNSPECIFIED,
110
+ Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol
119
111
  )
120
- TOOL_CALL_STATUS_AUTO_APPROVED =
112
+ TOOL_CALL_EXECUTION_STATUS_PENDING =
121
113
  T.let(
122
- :TOOL_CALL_STATUS_AUTO_APPROVED,
123
- Cadenya::Objectives::ObjectiveToolCall::Status::TaggedSymbol
114
+ :TOOL_CALL_EXECUTION_STATUS_PENDING,
115
+ Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol
124
116
  )
125
- TOOL_CALL_STATUS_WAITING_FOR_APPROVAL =
117
+ TOOL_CALL_EXECUTION_STATUS_RUNNING =
126
118
  T.let(
127
- :TOOL_CALL_STATUS_WAITING_FOR_APPROVAL,
128
- Cadenya::Objectives::ObjectiveToolCall::Status::TaggedSymbol
119
+ :TOOL_CALL_EXECUTION_STATUS_RUNNING,
120
+ Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol
129
121
  )
130
- TOOL_CALL_STATUS_APPROVED =
122
+ TOOL_CALL_EXECUTION_STATUS_COMPLETED =
131
123
  T.let(
132
- :TOOL_CALL_STATUS_APPROVED,
133
- Cadenya::Objectives::ObjectiveToolCall::Status::TaggedSymbol
124
+ :TOOL_CALL_EXECUTION_STATUS_COMPLETED,
125
+ Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol
134
126
  )
135
- TOOL_CALL_STATUS_DENIED =
127
+ TOOL_CALL_EXECUTION_STATUS_ERRORED =
136
128
  T.let(
137
- :TOOL_CALL_STATUS_DENIED,
138
- Cadenya::Objectives::ObjectiveToolCall::Status::TaggedSymbol
129
+ :TOOL_CALL_EXECUTION_STATUS_ERRORED,
130
+ Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol
139
131
  )
140
132
 
141
133
  sig do
142
134
  override.returns(
143
135
  T::Array[
144
- Cadenya::Objectives::ObjectiveToolCall::Status::TaggedSymbol
136
+ Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol
145
137
  ]
146
138
  )
147
139
  end
@@ -149,48 +141,46 @@ module Cadenya
149
141
  end
150
142
  end
151
143
 
152
- module ExecutionStatus
144
+ # Current status of the tool call
145
+ module Status
153
146
  extend Cadenya::Internal::Type::Enum
154
147
 
155
148
  TaggedSymbol =
156
149
  T.type_alias do
157
- T.all(
158
- Symbol,
159
- Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus
160
- )
150
+ T.all(Symbol, Cadenya::Objectives::ObjectiveToolCall::Status)
161
151
  end
162
152
  OrSymbol = T.type_alias { T.any(Symbol, String) }
163
153
 
164
- TOOL_CALL_EXECUTION_STATUS_UNSPECIFIED =
154
+ TOOL_CALL_STATUS_UNSPECIFIED =
165
155
  T.let(
166
- :TOOL_CALL_EXECUTION_STATUS_UNSPECIFIED,
167
- Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol
156
+ :TOOL_CALL_STATUS_UNSPECIFIED,
157
+ Cadenya::Objectives::ObjectiveToolCall::Status::TaggedSymbol
168
158
  )
169
- TOOL_CALL_EXECUTION_STATUS_PENDING =
159
+ TOOL_CALL_STATUS_AUTO_APPROVED =
170
160
  T.let(
171
- :TOOL_CALL_EXECUTION_STATUS_PENDING,
172
- Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol
161
+ :TOOL_CALL_STATUS_AUTO_APPROVED,
162
+ Cadenya::Objectives::ObjectiveToolCall::Status::TaggedSymbol
173
163
  )
174
- TOOL_CALL_EXECUTION_STATUS_RUNNING =
164
+ TOOL_CALL_STATUS_WAITING_FOR_APPROVAL =
175
165
  T.let(
176
- :TOOL_CALL_EXECUTION_STATUS_RUNNING,
177
- Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol
166
+ :TOOL_CALL_STATUS_WAITING_FOR_APPROVAL,
167
+ Cadenya::Objectives::ObjectiveToolCall::Status::TaggedSymbol
178
168
  )
179
- TOOL_CALL_EXECUTION_STATUS_COMPLETED =
169
+ TOOL_CALL_STATUS_APPROVED =
180
170
  T.let(
181
- :TOOL_CALL_EXECUTION_STATUS_COMPLETED,
182
- Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol
171
+ :TOOL_CALL_STATUS_APPROVED,
172
+ Cadenya::Objectives::ObjectiveToolCall::Status::TaggedSymbol
183
173
  )
184
- TOOL_CALL_EXECUTION_STATUS_ERRORED =
174
+ TOOL_CALL_STATUS_DENIED =
185
175
  T.let(
186
- :TOOL_CALL_EXECUTION_STATUS_ERRORED,
187
- Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol
176
+ :TOOL_CALL_STATUS_DENIED,
177
+ Cadenya::Objectives::ObjectiveToolCall::Status::TaggedSymbol
188
178
  )
189
179
 
190
180
  sig do
191
181
  override.returns(
192
182
  T::Array[
193
- Cadenya::Objectives::ObjectiveToolCall::ExecutionStatus::TaggedSymbol
183
+ Cadenya::Objectives::ObjectiveToolCall::Status::TaggedSymbol
194
184
  ]
195
185
  )
196
186
  end
@@ -7,7 +7,7 @@ module Cadenya
7
7
  T.type_alias { T.any(Cadenya::ProfileSpec, Cadenya::Internal::AnyHash) }
8
8
 
9
9
  # Whether this profile represents a human user, an API key, or a system principal.
10
- sig { returns(Cadenya::ProfileSpec::Type::OrSymbol) }
10
+ sig { returns(Cadenya::ProfileSpec::Type::TaggedSymbol) }
11
11
  attr_accessor :type
12
12
 
13
13
  # Email address of the profile. Required and unique within an account for user
@@ -47,7 +47,7 @@ module Cadenya
47
47
  sig do
48
48
  override.returns(
49
49
  {
50
- type: Cadenya::ProfileSpec::Type::OrSymbol,
50
+ type: Cadenya::ProfileSpec::Type::TaggedSymbol,
51
51
  email: String,
52
52
  name: String
53
53
  }
@@ -58,6 +58,13 @@ module Cadenya
58
58
  sig { returns(String) }
59
59
  attr_accessor :workspace_id
60
60
 
61
+ # Timestamp when this resource was last updated
62
+ sig { returns(T.nilable(Time)) }
63
+ attr_reader :updated_at
64
+
65
+ sig { params(updated_at: Time).void }
66
+ attr_writer :updated_at
67
+
61
68
  # Standard metadata for persistent, named resources (e.g., agents, tools, prompts)
62
69
  sig do
63
70
  params(
@@ -69,7 +76,8 @@ module Cadenya
69
76
  workspace_id: String,
70
77
  bundle_key: String,
71
78
  external_id: String,
72
- labels: T::Hash[Symbol, String]
79
+ labels: T::Hash[Symbol, String],
80
+ updated_at: Time
73
81
  ).returns(T.attached_class)
74
82
  end
75
83
  def self.new(
@@ -95,7 +103,9 @@ module Cadenya
95
103
  external_id: nil,
96
104
  # Arbitrary key-value pairs for categorization and filtering Examples:
97
105
  # {"environment": "production", "team": "platform", "version": "v2"}
98
- labels: nil
106
+ labels: nil,
107
+ # Timestamp when this resource was last updated
108
+ updated_at: nil
99
109
  )
100
110
  end
101
111
 
@@ -110,7 +120,8 @@ module Cadenya
110
120
  workspace_id: String,
111
121
  bundle_key: String,
112
122
  external_id: String,
113
- labels: T::Hash[Symbol, String]
123
+ labels: T::Hash[Symbol, String],
124
+ updated_at: Time
114
125
  }
115
126
  )
116
127
  end
@@ -21,14 +21,30 @@ module Cadenya
21
21
  sig { params(labels: T::Hash[Symbol, String]).void }
22
22
  attr_writer :labels
23
23
 
24
+ # Desired lifecycle state for the tool. Defaults to STATE_AVAILABLE when
25
+ # unspecified. STATE_ARCHIVED is server-managed and is rejected here.
26
+ sig { returns(T.nilable(Cadenya::ToolEntry::State::OrSymbol)) }
27
+ attr_reader :state
28
+
29
+ sig { params(state: Cadenya::ToolEntry::State::OrSymbol).void }
30
+ attr_writer :state
31
+
24
32
  sig do
25
33
  params(
26
34
  name: String,
27
35
  spec: Cadenya::ToolSets::ToolSpec::OrHash,
28
- labels: T::Hash[Symbol, String]
36
+ labels: T::Hash[Symbol, String],
37
+ state: Cadenya::ToolEntry::State::OrSymbol
29
38
  ).returns(T.attached_class)
30
39
  end
31
- def self.new(name:, spec:, labels: nil)
40
+ def self.new(
41
+ name:,
42
+ spec:,
43
+ labels: nil,
44
+ # Desired lifecycle state for the tool. Defaults to STATE_AVAILABLE when
45
+ # unspecified. STATE_ARCHIVED is server-managed and is rejected here.
46
+ state: nil
47
+ )
32
48
  end
33
49
 
34
50
  sig do
@@ -36,12 +52,37 @@ module Cadenya
36
52
  {
37
53
  name: String,
38
54
  spec: Cadenya::ToolSets::ToolSpec,
39
- labels: T::Hash[Symbol, String]
55
+ labels: T::Hash[Symbol, String],
56
+ state: Cadenya::ToolEntry::State::OrSymbol
40
57
  }
41
58
  )
42
59
  end
43
60
  def to_hash
44
61
  end
62
+
63
+ # Desired lifecycle state for the tool. Defaults to STATE_AVAILABLE when
64
+ # unspecified. STATE_ARCHIVED is server-managed and is rejected here.
65
+ module State
66
+ extend Cadenya::Internal::Type::Enum
67
+
68
+ TaggedSymbol = T.type_alias { T.all(Symbol, Cadenya::ToolEntry::State) }
69
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
70
+
71
+ STATE_UNSPECIFIED =
72
+ T.let(:STATE_UNSPECIFIED, Cadenya::ToolEntry::State::TaggedSymbol)
73
+ STATE_AVAILABLE =
74
+ T.let(:STATE_AVAILABLE, Cadenya::ToolEntry::State::TaggedSymbol)
75
+ STATE_OMITTED =
76
+ T.let(:STATE_OMITTED, Cadenya::ToolEntry::State::TaggedSymbol)
77
+ STATE_ARCHIVED =
78
+ T.let(:STATE_ARCHIVED, Cadenya::ToolEntry::State::TaggedSymbol)
79
+
80
+ sig do
81
+ override.returns(T::Array[Cadenya::ToolEntry::State::TaggedSymbol])
82
+ end
83
+ def self.values
84
+ end
85
+ end
45
86
  end
46
87
  end
47
88
  end
@@ -19,6 +19,12 @@ module Cadenya
19
19
  sig { params(spec: Cadenya::ToolSetSpec::OrHash).void }
20
20
  attr_writer :spec
21
21
 
22
+ # The current lifecycle state of the tool set. Output only. Tool sets are created
23
+ # STATE_ACTIVE; use the :archive and :unarchive actions to transition between
24
+ # states.
25
+ sig { returns(Cadenya::ToolSet::State::TaggedSymbol) }
26
+ attr_accessor :state
27
+
22
28
  # Tool set information
23
29
  sig { returns(T.nilable(Cadenya::ToolSetInfo)) }
24
30
  attr_reader :info
@@ -30,6 +36,7 @@ module Cadenya
30
36
  params(
31
37
  metadata: Cadenya::ResourceMetadata::OrHash,
32
38
  spec: Cadenya::ToolSetSpec::OrHash,
39
+ state: Cadenya::ToolSet::State::OrSymbol,
33
40
  info: Cadenya::ToolSetInfo::OrHash
34
41
  ).returns(T.attached_class)
35
42
  end
@@ -37,6 +44,10 @@ module Cadenya
37
44
  # Standard metadata for persistent, named resources (e.g., agents, tools, prompts)
38
45
  metadata:,
39
46
  spec:,
47
+ # The current lifecycle state of the tool set. Output only. Tool sets are created
48
+ # STATE_ACTIVE; use the :archive and :unarchive actions to transition between
49
+ # states.
50
+ state:,
40
51
  # Tool set information
41
52
  info: nil
42
53
  )
@@ -47,12 +58,36 @@ module Cadenya
47
58
  {
48
59
  metadata: Cadenya::ResourceMetadata,
49
60
  spec: Cadenya::ToolSetSpec,
61
+ state: Cadenya::ToolSet::State::TaggedSymbol,
50
62
  info: Cadenya::ToolSetInfo
51
63
  }
52
64
  )
53
65
  end
54
66
  def to_hash
55
67
  end
68
+
69
+ # The current lifecycle state of the tool set. Output only. Tool sets are created
70
+ # STATE_ACTIVE; use the :archive and :unarchive actions to transition between
71
+ # states.
72
+ module State
73
+ extend Cadenya::Internal::Type::Enum
74
+
75
+ TaggedSymbol = T.type_alias { T.all(Symbol, Cadenya::ToolSet::State) }
76
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
77
+
78
+ STATE_UNSPECIFIED =
79
+ T.let(:STATE_UNSPECIFIED, Cadenya::ToolSet::State::TaggedSymbol)
80
+ STATE_ACTIVE =
81
+ T.let(:STATE_ACTIVE, Cadenya::ToolSet::State::TaggedSymbol)
82
+ STATE_ARCHIVED =
83
+ T.let(:STATE_ARCHIVED, Cadenya::ToolSet::State::TaggedSymbol)
84
+
85
+ sig do
86
+ override.returns(T::Array[Cadenya::ToolSet::State::TaggedSymbol])
87
+ end
88
+ def self.values
89
+ end
90
+ end
56
91
  end
57
92
  end
58
93
  end
@@ -0,0 +1,43 @@
1
+ # typed: strong
2
+
3
+ module Cadenya
4
+ module Models
5
+ class ToolSetArchiveParams < Cadenya::Internal::Type::BaseModel
6
+ extend Cadenya::Internal::Type::RequestParameters::Converter
7
+ include Cadenya::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(Cadenya::ToolSetArchiveParams, Cadenya::Internal::AnyHash)
12
+ end
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :workspace_id
16
+
17
+ sig { returns(String) }
18
+ attr_accessor :id
19
+
20
+ sig do
21
+ params(
22
+ workspace_id: String,
23
+ id: String,
24
+ request_options: Cadenya::RequestOptions::OrHash
25
+ ).returns(T.attached_class)
26
+ end
27
+ def self.new(workspace_id:, id:, request_options: {})
28
+ end
29
+
30
+ sig do
31
+ override.returns(
32
+ {
33
+ workspace_id: String,
34
+ id: String,
35
+ request_options: Cadenya::RequestOptions
36
+ }
37
+ )
38
+ end
39
+ def to_hash
40
+ end
41
+ end
42
+ end
43
+ end