fermilink.drvloop.main module

class fermilink.drvloop.main.DrvloopConfig[source]

Bases: object

DrvloopConfig(repo_dir: ‘Path’, user_prompt: ‘str’, prompt_file: ‘str | None’ = None, max_iterations: ‘int’ = 30, sandbox: ‘str | None’ = None)

__init__(repo_dir, user_prompt, prompt_file=None, max_iterations=30, sandbox=None)
Parameters:
  • repo_dir (Path)

  • user_prompt (str)

  • prompt_file (str | None)

  • max_iterations (int)

  • sandbox (str | None)

Return type:

None

max_iterations: int = 30
prompt_file: str | None = None
repo_dir: Path
sandbox: str | None = None
user_prompt: str
fermilink.drvloop.main.build_drvloop_prompt(*, repo_dir, user_prompt, artifact_changes)[source]
Parameters:
  • repo_dir (Path)

  • user_prompt (str)

  • artifact_changes (list[dict[str, object]])

Return type:

str

fermilink.drvloop.main.cmd_drvloop(args)[source]
Parameters:

args (Namespace)

Return type:

int

fermilink.drvloop.main.main(argv=None)[source]
Parameters:

argv (list[str] | None)

Return type:

int

fermilink.drvloop.main.run_drvloop(config)[source]

Run the minimal derivation loop.

Parameters:

config (DrvloopConfig)

Return type:

int