This issue is an omnibus for keeping track of design review notes for the refresh.
Interface
[x] #182
[x] There are almost no guard rails on the CLI
[x] Each stage can only be called once per turnkey call #176
[x] Unhelpful error when no stages are entered #175
[x] misspelled stage names trigger a weird error (incorrect argument, file not found, etc.)
[x] #183
[x] The hidden --inputs arg to frontend stages is awkward. Can it added to a base class so that developers dont need to explicitly add it?
[x] #179
Naming schemes
[x] #180
[x] #184
[x] #185
[x] filesystem.py is getting really long. Should State or some other member come out into its own module? (Moving State would incur a lot of file changes for all the imports!)
[x] report.py is in the cli directory, even though it is a flexible ManagementTool now. Move it, and management_tools.py to some other folder?
[x] #193
API structure
[x] #198
Nitpicks
[ ] turnkey cache --list --all is annoying and unintuitive because all doesn't add anything meaningful to the notion of list. Making it a separate tool/command would be annoying too. Not sure what to do.
[x] #202
[ ] Modelnfo and UniqueInvocationInfo are really heavy for the non-discover frontends to support. Can they be simplified?
[x] Investigate whether the benchmarking_args struct in files_api.py is still useful, and possibly get rid of it.
This issue is an omnibus for keeping track of design review notes for the refresh.
Interface
--inputs
arg to frontend stages is awkward. Can it added to a base class so that developers dont need to explicitly add it?Naming schemes
filesystem.py
is getting really long. ShouldState
or some other member come out into its own module? (MovingState
would incur a lot of file changes for all the imports!)management_tools.py
to some other folder?API structure
Nitpicks
turnkey cache --list --all
is annoying and unintuitive becauseall
doesn't add anything meaningful to the notion oflist
. Making it a separate tool/command would be annoying too. Not sure what to do.Modelnfo
andUniqueInvocationInfo
are really heavy for the non-discover frontends to support. Can they be simplified?benchmarking_args
struct infiles_api.py
is still useful, and possibly get rid of it.