jellycell.config¶
Pydantic schemas for jellycell.toml and TOML I/O helpers.
The schema here is the source of truth for the project-level config. PEP-723
[tool.jellycell] overrides at file scope are merged on top of this at
runtime (handled by the format layer, not here).
Module Contents¶
Classes¶
The |
|
The |
|
The |
|
The |
|
The |
|
The |
|
The |
|
Full jellycell.toml schema. |
Functions¶
Produce a default jellycell.toml for a new project. |
Data¶
API¶
- class jellycell.config.ProjectInfo(/, **data: Any)¶
Bases:
pydantic.BaseModelThe
[project]table.Initialization
Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.selfis explicitly positional-only to allowselfas a field name.- model_config¶
‘ConfigDict(…)’
- class jellycell.config.PathsConfig(/, **data: Any)¶
Bases:
pydantic.BaseModelThe
[paths]table. All paths are relative to the project root.Initialization
Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.selfis explicitly positional-only to allowselfas a field name.- model_config¶
‘ConfigDict(…)’
- class jellycell.config.RunConfig(/, **data: Any)¶
Bases:
pydantic.BaseModelThe
[run]table.Initialization
Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.selfis explicitly positional-only to allowselfas a field name.- model_config¶
‘ConfigDict(…)’
- class jellycell.config.ViewerConfig(/, **data: Any)¶
Bases:
pydantic.BaseModelThe
[viewer]table.Initialization
Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.selfis explicitly positional-only to allowselfas a field name.- model_config¶
‘ConfigDict(…)’
- class jellycell.config.LintConfig(/, **data: Any)¶
Bases:
pydantic.BaseModelThe
[lint]table.Initialization
Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.selfis explicitly positional-only to allowselfas a field name.- model_config¶
‘ConfigDict(…)’
- jellycell.config.ArtifactLayout¶
None
- class jellycell.config.JournalConfig(/, **data: Any)¶
Bases:
pydantic.BaseModelThe
[journal]table — analysis-trajectory log.When enabled,
jellycell runappends a one-section entry tomanuscripts/journal.mdper invocation: timestamp, notebook, cell-change summary, any new/invalidated artifacts, optional--messagecommentary. Opt-out-by-default because the audit trail is usually more valuable than clean.Initialization
Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.selfis explicitly positional-only to allowselfas a field name.- model_config¶
‘ConfigDict(…)’
- enabled: bool¶
True
Write to
<manuscripts_dir>/journal.mdon everyjellycell run.Turn off (
enabled = false) for transient exploration projects that don’t want the trail, or when the journal lives outside this project.
- class jellycell.config.ArtifactsConfig(/, **data: Any)¶
Bases:
pydantic.BaseModelThe
[artifacts]table — how jellycell picks default artifact paths.Only affects path-less
jc.figure()/jc.table()calls where jellycell chooses the location. Explicit paths (jc.save(x, "artifacts/foo.json")) always win unchanged.Initialization
Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.selfis explicitly positional-only to allowselfas a field name.- model_config¶
‘ConfigDict(…)’
- layout: jellycell.config.ArtifactLayout¶
‘flat’
Default artifact layout:
flat(default):artifacts/<name>.<ext>. Simplest; fine for single-notebook projects.by_notebook:artifacts/<notebook-stem>/<name>.<ext>. Good when one project has many notebooks producing similarly-named artifacts.by_cell:artifacts/<notebook-stem>/<cell-name>/<name>.<ext>. Every artifact’s path makes its producer obvious to agents and humans without opening the manifest.
- class jellycell.config.Config(/, **data: Any)¶
Bases:
pydantic.BaseModelFull jellycell.toml schema.
Initialization
Create a new model by parsing and validating input data from keyword arguments.
Raises [
ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.selfis explicitly positional-only to allowselfas a field name.- model_config¶
‘ConfigDict(…)’
- project: jellycell.config.ProjectInfo¶
None
- paths: jellycell.config.PathsConfig¶
‘Field(…)’
- run: jellycell.config.RunConfig¶
‘Field(…)’
- viewer: jellycell.config.ViewerConfig¶
‘Field(…)’
- lint: jellycell.config.LintConfig¶
‘Field(…)’
- artifacts: jellycell.config.ArtifactsConfig¶
‘Field(…)’
- journal: jellycell.config.JournalConfig¶
‘Field(…)’
- classmethod load(path: pathlib.Path) jellycell.config.Config¶
Read and validate a
jellycell.tomlfrom disk.
- classmethod loads(text: str) jellycell.config.Config¶
Parse and validate a
jellycell.tomlfrom a string.
- dump(path: pathlib.Path) None¶
Write this config to
pathas TOML.
- jellycell.config.default_config(name: str) jellycell.config.Config¶
Produce a default jellycell.toml for a new project.