Class: Cadenya::Models::Objectives::ObjectiveTool

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/cadenya/models/objectives/objective_tool.rb

Overview

Instance Attribute Summary collapse

Method Summary

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, #initialize, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, #inspect, inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

This class inherits a constructor from Cadenya::Internal::Type::BaseModel

Instance Attribute Details

#metadataCadenya::Models::BareMetadata

BareMetadata contains the minimal metadata for a resource: the ID and an optional human-readable name. These are used for reference fields where the full metadata (account scoping, timestamps, labels, external IDs) is not needed —e.g., the tool references inside an agent variation spec or the tools assigned to an objective. Both fields are server-populated; clients provide IDs through sibling fields rather than by constructing a BareMetadata themselves.



17
# File 'lib/cadenya/models/objectives/objective_tool.rb', line 17

required :metadata, -> { Cadenya::BareMetadata }

#snapshotCadenya::Models::ToolSets::Tool?

Snapshot of the tool at the time it was assigned to the objective. Because tools can change over time, snapshots are used to ensure tools don’t change unexpectedly during an objective’s lifecycle.



25
# File 'lib/cadenya/models/objectives/objective_tool.rb', line 25

optional :snapshot, -> { Cadenya::ToolSets::Tool }