Class: RailsAiBridge::Registry::PackDefinition

Inherits:
Data
  • Object
show all
Defined in:
lib/rails_ai_bridge/registry/pack_definition.rb

Overview

Immutable value object describing a single pack's source and loading behaviour.

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#always_loadedBoolean (readonly)

Returns whether this pack is unconditionally loaded.

Returns:

  • (Boolean)

    whether this pack is unconditionally loaded



18
19
20
21
# File 'lib/rails_ai_bridge/registry/pack_definition.rb', line 18

PackDefinition = Data.define(:source, :tile, :always_loaded, :depends_on, :ref) do
  # @return [Boolean]
  def always_loaded? = always_loaded
end

#depends_onArray<String> (readonly)

Returns names of packs this pack depends on.

Returns:

  • (Array<String>)

    names of packs this pack depends on



18
19
20
21
# File 'lib/rails_ai_bridge/registry/pack_definition.rb', line 18

PackDefinition = Data.define(:source, :tile, :always_loaded, :depends_on, :ref) do
  # @return [Boolean]
  def always_loaded? = always_loaded
end

#refString? (readonly)

Returns optional git ref (branch, tag, or SHA) to pin the pack version; nil means use the default branch (HEAD).

Returns:

  • (String, nil)

    optional git ref (branch, tag, or SHA) to pin the pack version; nil means use the default branch (HEAD)



18
19
20
21
# File 'lib/rails_ai_bridge/registry/pack_definition.rb', line 18

PackDefinition = Data.define(:source, :tile, :always_loaded, :depends_on, :ref) do
  # @return [Boolean]
  def always_loaded? = always_loaded
end

#sourceString (readonly)

Returns pack source — local path, full git URL, or "owner/repo" shorthand.

Returns:

  • (String)

    pack source — local path, full git URL, or "owner/repo" shorthand



18
19
20
21
# File 'lib/rails_ai_bridge/registry/pack_definition.rb', line 18

PackDefinition = Data.define(:source, :tile, :always_loaded, :depends_on, :ref) do
  # @return [Boolean]
  def always_loaded? = always_loaded
end

#tileString (readonly)

Returns relative path to the pack's tile manifest, usually "directory.json".

Returns:

  • (String)

    relative path to the pack's tile manifest, usually "directory.json"



18
19
20
21
# File 'lib/rails_ai_bridge/registry/pack_definition.rb', line 18

PackDefinition = Data.define(:source, :tile, :always_loaded, :depends_on, :ref) do
  # @return [Boolean]
  def always_loaded? = always_loaded
end

Instance Method Details

#always_loaded?Boolean

Returns:

  • (Boolean)


20
# File 'lib/rails_ai_bridge/registry/pack_definition.rb', line 20

def always_loaded? = always_loaded