cadenya 0.16.0 → 0.18.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 (69) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/cadenya/models/ai_provider_key.rb +17 -3
  5. data/lib/cadenya/models/ai_provider_key_list_params.rb +11 -1
  6. data/lib/cadenya/models/model.rb +13 -23
  7. data/lib/cadenya/models/model_list_params.rb +11 -1
  8. data/lib/cadenya/models/model_swap_params.rb +11 -1
  9. data/lib/cadenya/models/objectives/objective_tool_call_data.rb +11 -1
  10. data/lib/cadenya/models/objectives/objective_tool_call_info.rb +27 -1
  11. data/lib/cadenya/models/objectives/objective_tool_call_with_result.rb +11 -1
  12. data/lib/cadenya/models/objectives/resolved_secret.rb +43 -0
  13. data/lib/cadenya/models/tool_sets/secret_create_params.rb +50 -0
  14. data/lib/cadenya/models/tool_sets/secret_delete_params.rb +34 -0
  15. data/lib/cadenya/models/tool_sets/secret_list_params.rb +86 -0
  16. data/lib/cadenya/models/tool_sets/secret_retrieve_params.rb +34 -0
  17. data/lib/cadenya/models/tool_sets/secret_update_params.rb +65 -0
  18. data/lib/cadenya/models/tool_sets/tool_set_secret.rb +41 -0
  19. data/lib/cadenya/models/tool_sets/tool_set_secret_info.rb +34 -0
  20. data/lib/cadenya/models/tool_sets/tool_set_secret_spec.rb +19 -0
  21. data/lib/cadenya/resources/ai_provider_keys.rb +3 -1
  22. data/lib/cadenya/resources/models.rb +4 -1
  23. data/lib/cadenya/resources/tool_sets/secrets.rb +224 -0
  24. data/lib/cadenya/resources/tool_sets.rb +9 -0
  25. data/lib/cadenya/version.rb +1 -1
  26. data/lib/cadenya.rb +10 -0
  27. data/rbi/cadenya/models/ai_provider_key.rbi +23 -5
  28. data/rbi/cadenya/models/ai_provider_key_list_params.rbi +15 -0
  29. data/rbi/cadenya/models/model.rbi +21 -43
  30. data/rbi/cadenya/models/model_list_params.rbi +15 -0
  31. data/rbi/cadenya/models/model_swap_params.rbi +21 -4
  32. data/rbi/cadenya/models/objectives/objective_tool_call_data.rbi +19 -0
  33. data/rbi/cadenya/models/objectives/objective_tool_call_info.rbi +45 -3
  34. data/rbi/cadenya/models/objectives/objective_tool_call_with_result.rbi +19 -0
  35. data/rbi/cadenya/models/objectives/resolved_secret.rbi +104 -0
  36. data/rbi/cadenya/models/tool_sets/secret_create_params.rbi +76 -0
  37. data/rbi/cadenya/models/tool_sets/secret_delete_params.rbi +53 -0
  38. data/rbi/cadenya/models/tool_sets/secret_list_params.rbi +129 -0
  39. data/rbi/cadenya/models/tool_sets/secret_retrieve_params.rbi +53 -0
  40. data/rbi/cadenya/models/tool_sets/secret_update_params.rbi +93 -0
  41. data/rbi/cadenya/models/tool_sets/tool_set_secret.rbi +64 -0
  42. data/rbi/cadenya/models/tool_sets/tool_set_secret_info.rbi +55 -0
  43. data/rbi/cadenya/models/tool_sets/tool_set_secret_spec.rbi +33 -0
  44. data/rbi/cadenya/resources/ai_provider_keys.rbi +5 -0
  45. data/rbi/cadenya/resources/models.rbi +5 -0
  46. data/rbi/cadenya/resources/tool_sets/secrets.rbi +164 -0
  47. data/rbi/cadenya/resources/tool_sets.rbi +8 -0
  48. data/sig/cadenya/models/ai_provider_key.rbs +13 -3
  49. data/sig/cadenya/models/ai_provider_key_list_params.rbs +7 -0
  50. data/sig/cadenya/models/model.rbs +10 -25
  51. data/sig/cadenya/models/model_list_params.rbs +7 -0
  52. data/sig/cadenya/models/model_swap_params.rbs +16 -2
  53. data/sig/cadenya/models/objectives/objective_tool_call_data.rbs +9 -0
  54. data/sig/cadenya/models/objectives/objective_tool_call_info.rbs +20 -3
  55. data/sig/cadenya/models/objectives/objective_tool_call_with_result.rbs +9 -0
  56. data/sig/cadenya/models/objectives/resolved_secret.rbs +50 -0
  57. data/sig/cadenya/models/tool_sets/secret_create_params.rbs +43 -0
  58. data/sig/cadenya/models/tool_sets/secret_delete_params.rbs +34 -0
  59. data/sig/cadenya/models/tool_sets/secret_list_params.rbs +82 -0
  60. data/sig/cadenya/models/tool_sets/secret_retrieve_params.rbs +34 -0
  61. data/sig/cadenya/models/tool_sets/secret_update_params.rbs +63 -0
  62. data/sig/cadenya/models/tool_sets/tool_set_secret.rbs +38 -0
  63. data/sig/cadenya/models/tool_sets/tool_set_secret_info.rbs +27 -0
  64. data/sig/cadenya/models/tool_sets/tool_set_secret_spec.rbs +19 -0
  65. data/sig/cadenya/resources/ai_provider_keys.rbs +1 -0
  66. data/sig/cadenya/resources/models.rbs +1 -0
  67. data/sig/cadenya/resources/tool_sets/secrets.rbs +54 -0
  68. data/sig/cadenya/resources/tool_sets.rbs +2 -0
  69. metadata +32 -2
@@ -44,6 +44,15 @@ module Cadenya
44
44
  sig { params(include_info: T::Boolean).void }
45
45
  attr_writer :include_info
46
46
 
47
+ # Filter models to only ones assigned to an active agent variation/agent. Draft
48
+ # agents count as assigned; archived agents do not. Assignment does not imply
49
+ # recent traffic — see ModelInfo.last_used_at for that.
50
+ sig { returns(T.nilable(T::Boolean)) }
51
+ attr_reader :is_assigned
52
+
53
+ sig { params(is_assigned: T::Boolean).void }
54
+ attr_writer :is_assigned
55
+
47
56
  # Maximum number of results to return
48
57
  sig { returns(T.nilable(Integer)) }
49
58
  attr_reader :limit
@@ -86,6 +95,7 @@ module Cadenya
86
95
  bundle_key: String,
87
96
  cursor: String,
88
97
  include_info: T::Boolean,
98
+ is_assigned: T::Boolean,
89
99
  limit: Integer,
90
100
  prefix: String,
91
101
  query: String,
@@ -106,6 +116,10 @@ module Cadenya
106
116
  # When true, populate each item's info (e.g. the AI provider), at the cost of
107
117
  # extra lookups.
108
118
  include_info: nil,
119
+ # Filter models to only ones assigned to an active agent variation/agent. Draft
120
+ # agents count as assigned; archived agents do not. Assignment does not imply
121
+ # recent traffic — see ModelInfo.last_used_at for that.
122
+ is_assigned: nil,
109
123
  # Maximum number of results to return
110
124
  limit: nil,
111
125
  # Filter by name prefix
@@ -128,6 +142,7 @@ module Cadenya
128
142
  bundle_key: String,
129
143
  cursor: String,
130
144
  include_info: T::Boolean,
145
+ is_assigned: T::Boolean,
131
146
  limit: Integer,
132
147
  prefix: String,
133
148
  query: String,
@@ -68,6 +68,13 @@ module Cadenya
68
68
  sig { params(current_model_id: String).void }
69
69
  attr_writer :current_model_id
70
70
 
71
+ # Whether to disable the current model after the swap.
72
+ sig { returns(T.nilable(T::Boolean)) }
73
+ attr_reader :disable_current_after_swap
74
+
75
+ sig { params(disable_current_after_swap: T::Boolean).void }
76
+ attr_writer :disable_current_after_swap
77
+
71
78
  # The model to move variations to. Accepts an id or "external_id:" slug.
72
79
  sig { returns(T.nilable(String)) }
73
80
  attr_reader :next_model_id
@@ -76,20 +83,30 @@ module Cadenya
76
83
  attr_writer :next_model_id
77
84
 
78
85
  sig do
79
- params(current_model_id: String, next_model_id: String).returns(
80
- T.attached_class
81
- )
86
+ params(
87
+ current_model_id: String,
88
+ disable_current_after_swap: T::Boolean,
89
+ next_model_id: String
90
+ ).returns(T.attached_class)
82
91
  end
83
92
  def self.new(
84
93
  # The model variations are currently on. Accepts an id or "external_id:" slug.
85
94
  current_model_id: nil,
95
+ # Whether to disable the current model after the swap.
96
+ disable_current_after_swap: nil,
86
97
  # The model to move variations to. Accepts an id or "external_id:" slug.
87
98
  next_model_id: nil
88
99
  )
89
100
  end
90
101
 
91
102
  sig do
92
- override.returns({ current_model_id: String, next_model_id: String })
103
+ override.returns(
104
+ {
105
+ current_model_id: String,
106
+ disable_current_after_swap: T::Boolean,
107
+ next_model_id: String
108
+ }
109
+ )
93
110
  end
94
111
  def to_hash
95
112
  end
@@ -38,6 +38,20 @@ module Cadenya
38
38
  sig { params(memo: String).void }
39
39
  attr_writer :memo
40
40
 
41
+ # List of resolved secrets used by the tool call
42
+ sig do
43
+ returns(T.nilable(T::Array[Cadenya::Objectives::ResolvedSecret]))
44
+ end
45
+ attr_reader :resolved_secrets
46
+
47
+ sig do
48
+ params(
49
+ resolved_secrets:
50
+ T::Array[Cadenya::Objectives::ResolvedSecret::OrHash]
51
+ ).void
52
+ end
53
+ attr_writer :resolved_secrets
54
+
41
55
  # A profile identifies a user or non-human principal (such as an API key) at the
42
56
  # account level. Profiles are account-scoped and can be granted access to multiple
43
57
  # workspaces.
@@ -52,6 +66,8 @@ module Cadenya
52
66
  callable: Cadenya::CallableTool::OrHash,
53
67
  arguments: T::Hash[Symbol, T.anything],
54
68
  memo: String,
69
+ resolved_secrets:
70
+ T::Array[Cadenya::Objectives::ResolvedSecret::OrHash],
55
71
  status_changed_by: Cadenya::Profile::OrHash
56
72
  ).returns(T.attached_class)
57
73
  end
@@ -65,6 +81,8 @@ module Cadenya
65
81
  arguments: nil,
66
82
  # A memo supplied by the reviewer when denying the tool call
67
83
  memo: nil,
84
+ # List of resolved secrets used by the tool call
85
+ resolved_secrets: nil,
68
86
  # A profile identifies a user or non-human principal (such as an API key) at the
69
87
  # account level. Profiles are account-scoped and can be granted access to multiple
70
88
  # workspaces.
@@ -78,6 +96,7 @@ module Cadenya
78
96
  callable: Cadenya::CallableTool,
79
97
  arguments: T::Hash[Symbol, T.anything],
80
98
  memo: String,
99
+ resolved_secrets: T::Array[Cadenya::Objectives::ResolvedSecret],
81
100
  status_changed_by: Cadenya::Profile
82
101
  }
83
102
  )
@@ -31,10 +31,36 @@ module Cadenya
31
31
  sig { params(objective: Cadenya::OperationMetadata::OrHash).void }
32
32
  attr_writer :objective
33
33
 
34
+ # BareMetadata contains the minimal metadata for a resource: the ID and an
35
+ # optional human-readable name. These are used for reference fields where the full
36
+ # metadata (account scoping, timestamps, labels, external IDs) is not needed —
37
+ # e.g., the tool references inside an agent variation spec or the tools assigned
38
+ # to an objective. Both fields are server-populated; clients provide IDs through
39
+ # sibling fields rather than by constructing a BareMetadata themselves.
40
+ sig { returns(T.nilable(Cadenya::BareMetadata)) }
41
+ attr_reader :tool
42
+
43
+ sig { params(tool: Cadenya::BareMetadata::OrHash).void }
44
+ attr_writer :tool
45
+
46
+ # BareMetadata contains the minimal metadata for a resource: the ID and an
47
+ # optional human-readable name. These are used for reference fields where the full
48
+ # metadata (account scoping, timestamps, labels, external IDs) is not needed —
49
+ # e.g., the tool references inside an agent variation spec or the tools assigned
50
+ # to an objective. Both fields are server-populated; clients provide IDs through
51
+ # sibling fields rather than by constructing a BareMetadata themselves.
52
+ sig { returns(T.nilable(Cadenya::BareMetadata)) }
53
+ attr_reader :tool_set
54
+
55
+ sig { params(tool_set: Cadenya::BareMetadata::OrHash).void }
56
+ attr_writer :tool_set
57
+
34
58
  sig do
35
59
  params(
36
60
  created_by: Cadenya::Profile::OrHash,
37
- objective: Cadenya::OperationMetadata::OrHash
61
+ objective: Cadenya::OperationMetadata::OrHash,
62
+ tool: Cadenya::BareMetadata::OrHash,
63
+ tool_set: Cadenya::BareMetadata::OrHash
38
64
  ).returns(T.attached_class)
39
65
  end
40
66
  def self.new(
@@ -44,7 +70,21 @@ module Cadenya
44
70
  created_by: nil,
45
71
  # Metadata for ephemeral operations and activities (e.g., objectives, executions,
46
72
  # runs)
47
- objective: nil
73
+ objective: nil,
74
+ # BareMetadata contains the minimal metadata for a resource: the ID and an
75
+ # optional human-readable name. These are used for reference fields where the full
76
+ # metadata (account scoping, timestamps, labels, external IDs) is not needed —
77
+ # e.g., the tool references inside an agent variation spec or the tools assigned
78
+ # to an objective. Both fields are server-populated; clients provide IDs through
79
+ # sibling fields rather than by constructing a BareMetadata themselves.
80
+ tool: nil,
81
+ # BareMetadata contains the minimal metadata for a resource: the ID and an
82
+ # optional human-readable name. These are used for reference fields where the full
83
+ # metadata (account scoping, timestamps, labels, external IDs) is not needed —
84
+ # e.g., the tool references inside an agent variation spec or the tools assigned
85
+ # to an objective. Both fields are server-populated; clients provide IDs through
86
+ # sibling fields rather than by constructing a BareMetadata themselves.
87
+ tool_set: nil
48
88
  )
49
89
  end
50
90
 
@@ -52,7 +92,9 @@ module Cadenya
52
92
  override.returns(
53
93
  {
54
94
  created_by: Cadenya::Profile,
55
- objective: Cadenya::OperationMetadata
95
+ objective: Cadenya::OperationMetadata,
96
+ tool: Cadenya::BareMetadata,
97
+ tool_set: Cadenya::BareMetadata
56
98
  }
57
99
  )
58
100
  end
@@ -53,6 +53,20 @@ module Cadenya
53
53
  end
54
54
  attr_accessor :execution_status
55
55
 
56
+ # List of resolved secrets used by the tool call
57
+ sig do
58
+ returns(T.nilable(T::Array[Cadenya::Objectives::ResolvedSecret]))
59
+ end
60
+ attr_reader :resolved_secrets
61
+
62
+ sig do
63
+ params(
64
+ resolved_secrets:
65
+ T::Array[Cadenya::Objectives::ResolvedSecret::OrHash]
66
+ ).void
67
+ end
68
+ attr_writer :resolved_secrets
69
+
56
70
  # ObjectiveToolCallResult is the content a tool returned after execution. Tools
57
71
  # can return multiple content blocks, and blocks can be multi-modal (text, image,
58
72
  # audio). Media blocks are stored by Cadenya and served as short-lived signed URLs
@@ -78,6 +92,8 @@ module Cadenya
78
92
  metadata: Cadenya::OperationMetadata::OrHash,
79
93
  status:
80
94
  Cadenya::Objectives::ObjectiveToolCallWithResult::Status::OrSymbol,
95
+ resolved_secrets:
96
+ T::Array[Cadenya::Objectives::ResolvedSecret::OrHash],
81
97
  result: Cadenya::Objectives::ObjectiveToolCallResult::OrHash
82
98
  ).returns(T.attached_class)
83
99
  end
@@ -90,6 +106,8 @@ module Cadenya
90
106
  metadata:,
91
107
  # Current status of the tool call
92
108
  status:,
109
+ # List of resolved secrets used by the tool call
110
+ resolved_secrets: nil,
93
111
  # ObjectiveToolCallResult is the content a tool returned after execution. Tools
94
112
  # can return multiple content blocks, and blocks can be multi-modal (text, image,
95
113
  # audio). Media blocks are stored by Cadenya and served as short-lived signed URLs
@@ -108,6 +126,7 @@ module Cadenya
108
126
  metadata: Cadenya::OperationMetadata,
109
127
  status:
110
128
  Cadenya::Objectives::ObjectiveToolCallWithResult::Status::TaggedSymbol,
129
+ resolved_secrets: T::Array[Cadenya::Objectives::ResolvedSecret],
111
130
  result: Cadenya::Objectives::ObjectiveToolCallResult
112
131
  }
113
132
  )
@@ -0,0 +1,104 @@
1
+ # typed: strong
2
+
3
+ module Cadenya
4
+ module Models
5
+ module Objectives
6
+ class ResolvedSecret < Cadenya::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Cadenya::Objectives::ResolvedSecret,
11
+ Cadenya::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig { returns(T.nilable(String)) }
16
+ attr_reader :key
17
+
18
+ sig { params(key: String).void }
19
+ attr_writer :key
20
+
21
+ sig do
22
+ returns(
23
+ T.nilable(Cadenya::Objectives::ResolvedSecret::Source::TaggedSymbol)
24
+ )
25
+ end
26
+ attr_reader :source
27
+
28
+ sig do
29
+ params(
30
+ source: Cadenya::Objectives::ResolvedSecret::Source::OrSymbol
31
+ ).void
32
+ end
33
+ attr_writer :source
34
+
35
+ # ResolvedSecret is a resolved secret value from the workspace, toolset, or
36
+ # objective. When a tool is called, it will rely on secrets in the order of:
37
+ #
38
+ # - Objective
39
+ # - Toolset
40
+ # - Workspace
41
+ sig do
42
+ params(
43
+ key: String,
44
+ source: Cadenya::Objectives::ResolvedSecret::Source::OrSymbol
45
+ ).returns(T.attached_class)
46
+ end
47
+ def self.new(key: nil, source: nil)
48
+ end
49
+
50
+ sig do
51
+ override.returns(
52
+ {
53
+ key: String,
54
+ source: Cadenya::Objectives::ResolvedSecret::Source::TaggedSymbol
55
+ }
56
+ )
57
+ end
58
+ def to_hash
59
+ end
60
+
61
+ module Source
62
+ extend Cadenya::Internal::Type::Enum
63
+
64
+ TaggedSymbol =
65
+ T.type_alias do
66
+ T.all(Symbol, Cadenya::Objectives::ResolvedSecret::Source)
67
+ end
68
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
69
+
70
+ RESOLVED_SECRET_SOURCE_UNSPECIFIED =
71
+ T.let(
72
+ :RESOLVED_SECRET_SOURCE_UNSPECIFIED,
73
+ Cadenya::Objectives::ResolvedSecret::Source::TaggedSymbol
74
+ )
75
+ RESOLVED_SECRET_SOURCE_WORKSPACE =
76
+ T.let(
77
+ :RESOLVED_SECRET_SOURCE_WORKSPACE,
78
+ Cadenya::Objectives::ResolvedSecret::Source::TaggedSymbol
79
+ )
80
+ RESOLVED_SECRET_SOURCE_TOOLSET =
81
+ T.let(
82
+ :RESOLVED_SECRET_SOURCE_TOOLSET,
83
+ Cadenya::Objectives::ResolvedSecret::Source::TaggedSymbol
84
+ )
85
+ RESOLVED_SECRET_SOURCE_OBJECTIVE =
86
+ T.let(
87
+ :RESOLVED_SECRET_SOURCE_OBJECTIVE,
88
+ Cadenya::Objectives::ResolvedSecret::Source::TaggedSymbol
89
+ )
90
+
91
+ sig do
92
+ override.returns(
93
+ T::Array[
94
+ Cadenya::Objectives::ResolvedSecret::Source::TaggedSymbol
95
+ ]
96
+ )
97
+ end
98
+ def self.values
99
+ end
100
+ end
101
+ end
102
+ end
103
+ end
104
+ end
@@ -0,0 +1,76 @@
1
+ # typed: strong
2
+
3
+ module Cadenya
4
+ module Models
5
+ module ToolSets
6
+ class SecretCreateParams < Cadenya::Internal::Type::BaseModel
7
+ extend Cadenya::Internal::Type::RequestParameters::Converter
8
+ include Cadenya::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ Cadenya::ToolSets::SecretCreateParams,
14
+ Cadenya::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ sig { returns(String) }
19
+ attr_accessor :workspace_id
20
+
21
+ sig { returns(String) }
22
+ attr_accessor :tool_set_id
23
+
24
+ # CreateResourceMetadata contains the user-provided fields for creating a
25
+ # workspace-scoped resource. Read-only fields (id, account_id, workspace_id,
26
+ # profile_id, created_at) are excluded since they are set by the server.
27
+ sig { returns(Cadenya::CreateResourceMetadata) }
28
+ attr_reader :metadata
29
+
30
+ sig { params(metadata: Cadenya::CreateResourceMetadata::OrHash).void }
31
+ attr_writer :metadata
32
+
33
+ sig { returns(Cadenya::ToolSets::ToolSetSecretSpec) }
34
+ attr_reader :spec
35
+
36
+ sig { params(spec: Cadenya::ToolSets::ToolSetSecretSpec::OrHash).void }
37
+ attr_writer :spec
38
+
39
+ sig do
40
+ params(
41
+ workspace_id: String,
42
+ tool_set_id: String,
43
+ metadata: Cadenya::CreateResourceMetadata::OrHash,
44
+ spec: Cadenya::ToolSets::ToolSetSecretSpec::OrHash,
45
+ request_options: Cadenya::RequestOptions::OrHash
46
+ ).returns(T.attached_class)
47
+ end
48
+ def self.new(
49
+ workspace_id:,
50
+ tool_set_id:,
51
+ # CreateResourceMetadata contains the user-provided fields for creating a
52
+ # workspace-scoped resource. Read-only fields (id, account_id, workspace_id,
53
+ # profile_id, created_at) are excluded since they are set by the server.
54
+ metadata:,
55
+ spec:,
56
+ request_options: {}
57
+ )
58
+ end
59
+
60
+ sig do
61
+ override.returns(
62
+ {
63
+ workspace_id: String,
64
+ tool_set_id: String,
65
+ metadata: Cadenya::CreateResourceMetadata,
66
+ spec: Cadenya::ToolSets::ToolSetSecretSpec,
67
+ request_options: Cadenya::RequestOptions
68
+ }
69
+ )
70
+ end
71
+ def to_hash
72
+ end
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,53 @@
1
+ # typed: strong
2
+
3
+ module Cadenya
4
+ module Models
5
+ module ToolSets
6
+ class SecretDeleteParams < Cadenya::Internal::Type::BaseModel
7
+ extend Cadenya::Internal::Type::RequestParameters::Converter
8
+ include Cadenya::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ Cadenya::ToolSets::SecretDeleteParams,
14
+ Cadenya::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ sig { returns(String) }
19
+ attr_accessor :workspace_id
20
+
21
+ sig { returns(String) }
22
+ attr_accessor :tool_set_id
23
+
24
+ sig { returns(String) }
25
+ attr_accessor :id
26
+
27
+ sig do
28
+ params(
29
+ workspace_id: String,
30
+ tool_set_id: String,
31
+ id: String,
32
+ request_options: Cadenya::RequestOptions::OrHash
33
+ ).returns(T.attached_class)
34
+ end
35
+ def self.new(workspace_id:, tool_set_id:, id:, request_options: {})
36
+ end
37
+
38
+ sig do
39
+ override.returns(
40
+ {
41
+ workspace_id: String,
42
+ tool_set_id: String,
43
+ id: String,
44
+ request_options: Cadenya::RequestOptions
45
+ }
46
+ )
47
+ end
48
+ def to_hash
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,129 @@
1
+ # typed: strong
2
+
3
+ module Cadenya
4
+ module Models
5
+ module ToolSets
6
+ class SecretListParams < Cadenya::Internal::Type::BaseModel
7
+ extend Cadenya::Internal::Type::RequestParameters::Converter
8
+ include Cadenya::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ Cadenya::ToolSets::SecretListParams,
14
+ Cadenya::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ sig { returns(String) }
19
+ attr_accessor :workspace_id
20
+
21
+ sig { returns(String) }
22
+ attr_accessor :tool_set_id
23
+
24
+ # Filter by bundle_key — return only resources owned by this bundle.
25
+ sig { returns(T.nilable(String)) }
26
+ attr_reader :bundle_key
27
+
28
+ sig { params(bundle_key: String).void }
29
+ attr_writer :bundle_key
30
+
31
+ # Pagination cursor from previous response
32
+ sig { returns(T.nilable(String)) }
33
+ attr_reader :cursor
34
+
35
+ sig { params(cursor: String).void }
36
+ attr_writer :cursor
37
+
38
+ # When set to true you may use more of your alloted API rate-limit
39
+ sig { returns(T.nilable(T::Boolean)) }
40
+ attr_reader :include_info
41
+
42
+ sig { params(include_info: T::Boolean).void }
43
+ attr_writer :include_info
44
+
45
+ # Maximum number of results to return
46
+ sig { returns(T.nilable(Integer)) }
47
+ attr_reader :limit
48
+
49
+ sig { params(limit: Integer).void }
50
+ attr_writer :limit
51
+
52
+ # Filter expression (query param: prefix)
53
+ sig { returns(T.nilable(String)) }
54
+ attr_reader :prefix
55
+
56
+ sig { params(prefix: String).void }
57
+ attr_writer :prefix
58
+
59
+ # Free-form search query
60
+ sig { returns(T.nilable(String)) }
61
+ attr_reader :query
62
+
63
+ sig { params(query: String).void }
64
+ attr_writer :query
65
+
66
+ # Sort order for results (asc or desc by creation time)
67
+ sig { returns(T.nilable(String)) }
68
+ attr_reader :sort_order
69
+
70
+ sig { params(sort_order: String).void }
71
+ attr_writer :sort_order
72
+
73
+ sig do
74
+ params(
75
+ workspace_id: String,
76
+ tool_set_id: String,
77
+ bundle_key: String,
78
+ cursor: String,
79
+ include_info: T::Boolean,
80
+ limit: Integer,
81
+ prefix: String,
82
+ query: String,
83
+ sort_order: String,
84
+ request_options: Cadenya::RequestOptions::OrHash
85
+ ).returns(T.attached_class)
86
+ end
87
+ def self.new(
88
+ workspace_id:,
89
+ tool_set_id:,
90
+ # Filter by bundle_key — return only resources owned by this bundle.
91
+ bundle_key: nil,
92
+ # Pagination cursor from previous response
93
+ cursor: nil,
94
+ # When set to true you may use more of your alloted API rate-limit
95
+ include_info: nil,
96
+ # Maximum number of results to return
97
+ limit: nil,
98
+ # Filter expression (query param: prefix)
99
+ prefix: nil,
100
+ # Free-form search query
101
+ query: nil,
102
+ # Sort order for results (asc or desc by creation time)
103
+ sort_order: nil,
104
+ request_options: {}
105
+ )
106
+ end
107
+
108
+ sig do
109
+ override.returns(
110
+ {
111
+ workspace_id: String,
112
+ tool_set_id: String,
113
+ bundle_key: String,
114
+ cursor: String,
115
+ include_info: T::Boolean,
116
+ limit: Integer,
117
+ prefix: String,
118
+ query: String,
119
+ sort_order: String,
120
+ request_options: Cadenya::RequestOptions
121
+ }
122
+ )
123
+ end
124
+ def to_hash
125
+ end
126
+ end
127
+ end
128
+ end
129
+ end
@@ -0,0 +1,53 @@
1
+ # typed: strong
2
+
3
+ module Cadenya
4
+ module Models
5
+ module ToolSets
6
+ class SecretRetrieveParams < Cadenya::Internal::Type::BaseModel
7
+ extend Cadenya::Internal::Type::RequestParameters::Converter
8
+ include Cadenya::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ Cadenya::ToolSets::SecretRetrieveParams,
14
+ Cadenya::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ sig { returns(String) }
19
+ attr_accessor :workspace_id
20
+
21
+ sig { returns(String) }
22
+ attr_accessor :tool_set_id
23
+
24
+ sig { returns(String) }
25
+ attr_accessor :id
26
+
27
+ sig do
28
+ params(
29
+ workspace_id: String,
30
+ tool_set_id: String,
31
+ id: String,
32
+ request_options: Cadenya::RequestOptions::OrHash
33
+ ).returns(T.attached_class)
34
+ end
35
+ def self.new(workspace_id:, tool_set_id:, id:, request_options: {})
36
+ end
37
+
38
+ sig do
39
+ override.returns(
40
+ {
41
+ workspace_id: String,
42
+ tool_set_id: String,
43
+ id: String,
44
+ request_options: Cadenya::RequestOptions
45
+ }
46
+ )
47
+ end
48
+ def to_hash
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end