Skip to content

Typed PRA#run #321

@tristan-f-r

Description

@tristan-f-r

Depending on #292 (and #296 would be nice for this, but not required), this handles nondeterministic algorithm collisions, type issues with the PRA class related to PRA#run, and better documents defaults in the generated parameters.yml.

In every single PRA method implementation, we should have a pydantic BaseModel which documents the algorithm parameters separately from the associated #run method. This gets rid of the need to use **kwargs for passing in run options.

For nondeterministic algorithms, we can have a parameter, _time, which defaults to the current time. (pydantic ignores fields beginning with an underscore): this parameter will still make it to before the parameters are hashed.

This has the final benefit of, in combination with #292, allowing for a fully featured configuration schema with all of the options it takes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions