Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
137 commits
Select commit Hold shift + click to select a range
22b237a
feat: add warm-started sweep functionality and enhance coupling evalu…
leon-k-martin Jul 9, 2026
886a464
Merge branch 'dev' into feat/taher2019
leon-k-martin Jul 9, 2026
e4cc7a9
Merge pull request #61 from virtual-twin/feat/taher2019
leon-k-martin Jul 9, 2026
3410347
feat: add support for environment variable exports in SLURM workflow
leon-k-martin Jul 9, 2026
050ba07
Merge branch 'dev' of https://github.com/virtual-twin/tvbo into dev
leon-k-martin Jul 9, 2026
df1ab2c
Refactor code structure for improved readability and maintainability
leon-k-martin Jul 9, 2026
b0f2717
feat: add tests for engine dispatch and workflow execution in CLI
leon-k-martin Jul 9, 2026
45d8b89
feat: add support for Slurm array submissions in workflow execution
leon-k-martin Jul 9, 2026
3b1da81
feat: enhance SLURM workflow to support automatic chunking for array …
leon-k-martin Jul 9, 2026
6b903cb
feat: add --array-throttle option to limit concurrent Slurm array tasks
leon-k-martin Jul 9, 2026
1c52a5b
feat: update n_parallel handling for backend-agnostic batch size in t…
leon-k-martin Jul 10, 2026
3fb6c46
feat: add documentation for distributed workflows and enhance workflo…
leon-k-martin Jul 10, 2026
db6bdf0
feat: enhance workflow configuration handling and graph representatio…
leon-k-martin Jul 10, 2026
e73b801
feat: add test for frozen spec capturing merged workflow for reproduc…
leon-k-martin Jul 10, 2026
5500e74
feat: add self-contained provenance record for workflow kit and repro…
leon-k-martin Jul 10, 2026
3d837b8
feat: enhance analysis observables and result handling in workflow
leon-k-martin Jul 10, 2026
6da763e
feat: implement self-contained YAML spec generation with frozen conne…
leon-k-martin Jul 10, 2026
39ea618
feat: add handling for network observations in SimulationExperiment
leon-k-martin Jul 10, 2026
c470a6d
feat: remove irrelevant empirical observations from experiment result…
leon-k-martin Jul 10, 2026
2650629
feat: update experiment result roundtrip test to use simplified simul…
leon-k-martin Jul 10, 2026
69212b1
feat: enhance experiment result handling to support non-grid observat…
leon-k-martin Jul 10, 2026
7a8a483
feat: central, switchable logging across CLI, run(), and generated ba…
leon-k-martin Jul 10, 2026
f4b4d46
feat: enhance experiment resolution to include ID and improve error h…
leon-k-martin Jul 10, 2026
53a031a
feat: update CLI options to use --shard instead of --slurm-chunk and …
leon-k-martin Jul 10, 2026
a0764df
feat: unify experiment selection in CLIs and enhance observation hand…
leon-k-martin Jul 10, 2026
e3fb4cd
feat: enhance result_entities to use short model name for description…
leon-k-martin Jul 10, 2026
2e505cb
feat: bundle custom callable modules into the kit and update Slurm sc…
leon-k-martin Jul 10, 2026
ca1d1cf
feat: update documentation to clarify the structure of custom callabl…
leon-k-martin Jul 10, 2026
0228ba1
feat: enhance documentation to clarify the handling of custom callabl…
leon-k-martin Jul 10, 2026
dff3c91
refactor: apply logging review cleanup
leon-k-martin Jul 10, 2026
d39c951
feat: add BIDS descriptors and builder axis support in tvbo templates…
leon-k-martin Jul 10, 2026
f140ea6
Enhance workflow and run command functionality
leon-k-martin Jul 10, 2026
75e157f
feat: add BIDS entity handling and improve workflow command generation
leon-k-martin Jul 13, 2026
f3482b2
feat: update slurm workflow handling for single-task arrays and enhan…
leon-k-martin Jul 13, 2026
503a47d
feat: enhance recipe handling by making custom code subdirectory impo…
leon-k-martin Jul 13, 2026
8a99fe0
feat: enhance observation recording and saving functionality in Exper…
leon-k-martin Jul 13, 2026
f115e60
feat: improve PYTHONPATH handling in Slurm and Snakemake templates
leon-k-martin Jul 13, 2026
d2158d9
feat: add functionality to submit already-emitted kits to their respe…
leon-k-martin Jul 13, 2026
c3af1ae
Add new configuration options and improve workflow setup handling
leon-k-martin Jul 13, 2026
78cdd5b
feat: hardcode conda base path in workflow setup to prevent failures …
leon-k-martin Jul 13, 2026
116bdc3
feat: enhance YAML key stripping to handle block sequences and indent…
leon-k-martin Jul 13, 2026
30ea72d
feat: implement network command to build connectomes from tractograms…
leon-k-martin Jul 13, 2026
994aa20
feat: add network command to build connectomes; enhance CLI documenta…
leon-k-martin Jul 13, 2026
df0c7e8
refactor: streamline connectome processing; replace subprocess calls …
leon-k-martin Jul 13, 2026
e7b9301
feat: enhance documentation for network building methods and add refe…
leon-k-martin Jul 13, 2026
9391d9e
Refactor code structure for improved readability and maintainability
leon-k-martin Jul 13, 2026
4db7ff0
Add ranked centers for Desikan-Killiany and Destrieux atlases in MNI1…
leon-k-martin Jul 13, 2026
a93296e
Add alternate names for left and right brain regions in MNI152NLin200…
leon-k-martin Jul 13, 2026
d594909
feat: update Schaefer2018 atlas YAML files to streamline coordinate s…
leon-k-martin Jul 13, 2026
ffafdfe
fix(ci): graceful streaming-reducer fallback + float-facet typing for…
leon-k-martin Jul 13, 2026
4ed770d
fix(tvboptim): analysis solves must not inherit TBPTT grad_horizon
leon-k-martin Jul 13, 2026
05cd838
Add dynamics support for co-integrated auxiliary state in observations
leon-k-martin Jul 13, 2026
5c0e028
feat: enhance dynamics handling in observations and templates with ne…
leon-k-martin Jul 13, 2026
bff5b6d
feat: implement streaming reduction functionality in observation and …
leon-k-martin Jul 13, 2026
20a4095
feat: enhance initial state handling with from_working_point and from…
leon-k-martin Jul 13, 2026
18b9f9a
feat: add runtime initial condition seeding from external dynamics
leon-k-martin Jul 13, 2026
81f3124
feat: implement initial condition seeding from sibling experiments
leon-k-martin Jul 13, 2026
6db7f94
feat: enhance initial condition handling with named state variable ov…
leon-k-martin Jul 13, 2026
8dc752b
feat: add first-passage aggregation and dependency handling in workflow
leon-k-martin Jul 13, 2026
bd47054
fix: harden CLI logging entry points and algorithm progress guard
leon-k-martin Jul 14, 2026
2a85902
feat: Implement runtime-sized axes for branch-restart explorations
leon-k-martin Jul 14, 2026
5be2a81
feat: add parameter sourcing from previous experiment operating points
leon-k-martin Jul 14, 2026
dfa3c48
feat: log tvboptim optimizer progress through the central logger
leon-k-martin Jul 14, 2026
389012b
feat: enhance numerical stability in windowed covariance and add sour…
leon-k-martin Jul 14, 2026
410f033
Merge remote-tracking branch 'origin/dev' into feat/central-logging
leon-k-martin Jul 14, 2026
f074be7
feat: enhance Snakemake integration with SLURM profile support and re…
leon-k-martin Jul 14, 2026
63df6b0
fix: escape braces in PYTHONPATH export for Snakemake shell command
leon-k-martin Jul 14, 2026
d7bd23a
Merge pull request #63 from virtual-twin/feat/central-logging
leon-k-martin Jul 14, 2026
7ffb991
feat: add force option to re-extract kits in _resolve_kit_dir and sub…
leon-k-martin Jul 14, 2026
39b0382
feat: key parcellation networks by region + support length-target tra…
leon-k-martin Jul 14, 2026
cb1b1ca
docs: rewrite README around the TVB-O framework, with figures
leon-k-martin Jul 14, 2026
b7ade54
feat: codegen-emit sliding-window streaming reducers from declarative…
leon-k-martin Jul 14, 2026
f0df9ab
feat: streaming median reduction for Observation.dynamics
leon-k-martin Jul 14, 2026
c698aab
chore(workflow): route per-rule SLURM logs to <kit>/logs via snakemak…
leon-k-martin Jul 14, 2026
6577ac2
feat(exploration): resolve an exploration axis from its domain (lo/hi…
leon-k-martin Jul 14, 2026
386541f
fix(codegen): resolve network.weight(s)/length(s) to embedded connect…
leon-k-martin Jul 15, 2026
8eb8535
refactor(codegen): compute edge_label once in the derived-observation…
leon-k-martin Jul 15, 2026
6aab527
feat(codegen): emit SparseGraph for instantaneous vectorized couplings
leon-k-martin Jul 15, 2026
f6fee12
feat(workflow): --pack emits only the tarball; portable dataset kits …
leon-k-martin Jul 15, 2026
afcd731
feat(continuation): whole-brain network + constraint-defined free-par…
leon-k-martin Jul 15, 2026
cfa9930
test(codegen): cover Network.graph_representation sparse graph selection
leon-k-martin Jul 15, 2026
d423d22
feat(result): serialize continuation branches through the native resu…
leon-k-martin Jul 15, 2026
2fd06bd
feat(analysis): symbolic network Jacobian from dfun metadata (linear …
leon-k-martin Jul 15, 2026
f548108
fix(codegen): align delay-graph codegen with tvboptim delay-exposure API
leon-k-martin Jul 15, 2026
99f1919
refactor(analysis): reuse canonical derived-var inliner; clarify orac…
leon-k-martin Jul 15, 2026
c51634b
feat(analysis): emit backend code for the network Jacobian at an oper…
leon-k-martin Jul 15, 2026
96da227
fix(analysis): index per-node (heterogeneous) params in the emitted J…
leon-k-martin Jul 15, 2026
02d722d
simplify(analysis): drop redundant max(n_cpl, 1) in render_jacobian_code
leon-k-martin Jul 15, 2026
a786905
feat(analysis): emit deterministic network vector field (operating-po…
leon-k-martin Jul 15, 2026
cea9a71
feat(codegen): stream exploration-grid progress via JAX-native debug.…
leon-k-martin Jul 15, 2026
e144d7f
refactor(analysis): move linear-response code structure to a Mako par…
leon-k-martin Jul 15, 2026
3ab6b08
simplify(analysis): reuse the RHS from jacobian_terms in linear_respo…
leon-k-martin Jul 15, 2026
9a3dd42
feat(analysis): lr_covariance Mako partial — stationary covariance vi…
leon-k-martin Jul 15, 2026
28941f9
feat(workflow): `tvbo workflow submit --out` to extract/run a kit in …
leon-k-martin Jul 15, 2026
84ba769
feat(codegen): stream Lyapunov-sweep progress via progress_ticker
leon-k-martin Jul 15, 2026
89514cf
feat(codegen): lower the `covariance` analysis observation (Deco 2014…
leon-k-martin Jul 15, 2026
9801997
feat(codegen): share the operating point across linear-response obs; …
leon-k-martin Jul 15, 2026
f5bb4a5
feat(tvboptim-codegen): network-scope coord labels + array-valued bui…
leon-k-martin Jul 15, 2026
eee45a6
feat(skills): add replicating-studies skill + per-skill assets pipeline
leon-k-martin Jul 16, 2026
7210fb2
feat(warm-start): from_experiment parameter warm-start — estimate__<p…
leon-k-martin Jul 16, 2026
79753f4
feat(ontology): add bifurcation TTL to ontology generation process
leon-k-martin Jul 16, 2026
2f8418d
feat(skill-cost): implement skill-cost benchmark framework with harne…
leon-k-martin Jul 16, 2026
bd3925d
Refactor code structure for improved readability and maintainability
leon-k-martin Jul 16, 2026
0b534b5
feat(run): --results-root flag + $TVBO_RESULTS_ROOT kit wiring for fr…
leon-k-martin Jul 16, 2026
244fa5f
feat(codegen): covariance analysis `return: correlation` — Deco Fig 5 Q
leon-k-martin Jul 16, 2026
6de1dda
feat(docs): enhance replication documentation and add pipeline overview
leon-k-martin Jul 16, 2026
12324e3
feat(recipe): decouple spec from code via a declarable CodeSource (lo…
leon-k-martin Jul 16, 2026
76e7c1d
feat(workflow): self-contained per-subject kits via --bundle-dataset
leon-k-martin Jul 16, 2026
cee4bc5
feat(figures): declarative Figure spec + bsplot codegen for replication
leon-k-martin Jul 16, 2026
5f25453
feat(tests): add tests for relative path error handling and network c…
leon-k-martin Jul 16, 2026
4d2aff8
feat(dynamics): add baseline parameter for differential reporting in …
leon-k-martin Jul 16, 2026
8534e12
Enhance linear response analysis and algorithm observation handling
leon-k-martin Jul 16, 2026
ce488de
feat(figure): replace guard with placeholder in figure schema and rel…
leon-k-martin Jul 16, 2026
cf1b285
fix(figures): make the bsplot adapter datamodel-flavor-agnostic
leon-k-martin Jul 16, 2026
436db4f
refactor(figures): constrain panel-number placement to a Corner enum
leon-k-martin Jul 16, 2026
73132d1
feat(grill-me): remove grill-me skill and related instructions
leon-k-martin Jul 16, 2026
36fc5c8
refactor(replication): enhance documentation for data provenance and …
leon-k-martin Jul 16, 2026
58d4376
refactor(replication): update documentation for data provenance and i…
leon-k-martin Jul 16, 2026
a3cf8ad
refactor(docs): update SKILL.md files for clarity and consistency; ad…
leon-k-martin Jul 16, 2026
638819a
refactor(docs): enhance documentation clarity and detail across vario…
leon-k-martin Jul 16, 2026
aaabeb3
feat(docs): add documentation for custom figure panels and update ind…
leon-k-martin Jul 16, 2026
2f3d396
feat(schema): add code_modules to figure spec and AxisReduction class…
leon-k-martin Jul 16, 2026
97acfa3
refactor(docs): update SKILL.md and related templates for clarity and…
leon-k-martin Jul 16, 2026
c9b05ef
refactor(docs): clarify pytest marker registration process in SKILL.m…
leon-k-martin Jul 16, 2026
9880997
feat(template): register custom panels and transforms in bsplot figur…
leon-k-martin Jul 16, 2026
7441643
feat(sync): enhance sync command with linting and reference checks fo…
leon-k-martin Jul 16, 2026
f01c607
feat(schema): declare a Parameter's array data by provenance, never b…
leon-k-martin Jul 17, 2026
71da8ae
feat(data): materialise a produced constant to a content-addressed ar…
leon-k-martin Jul 17, 2026
b8da8d8
refactor(bsplot): make the figure adapter a generic engine
leon-k-martin Jul 17, 2026
0c9e353
fix(data): make param_io.materialise emit a readable (file, key), enf…
leon-k-martin Jul 17, 2026
02c3745
docs(skill): replicating-studies — declare large/derived array consta…
leon-k-martin Jul 17, 2026
e7b193a
feat(schema): add unit slot to Observation
leon-k-martin Jul 17, 2026
f3afccb
feat(workflow): declarative container env + metadata-native dataset b…
leon-k-martin Jul 17, 2026
53e3225
feat(workflow): declarative container env + metadata-native dataset b…
leon-k-martin Jul 17, 2026
150942e
Merge branch 'dev' of https://github.com/virtual-twin/tvbo into dev
leon-k-martin Jul 17, 2026
fa77f90
feat(schema): add Surrogate class and surrogate slot for permutation …
leon-k-martin Jul 17, 2026
0bd2751
feat(statistics): add support for permutation-significance surrogates…
leon-k-martin Jul 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
149 changes: 0 additions & 149 deletions .claude/skills/anti-ai-slop/SKILL.md

This file was deleted.

2 changes: 1 addition & 1 deletion .claude/skills/codegen-templates/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ Adapters wrap *external* simulators (TVB, Julia, NeuroML, PyRates, BifurcationKi

1. Add the adapter under `tvbo/adapters/<backend>.py` extending the base class.
2. Add the template tree under `tvbo/templates/<backend>/`.
3. Add a `backend_<backend>` pytest marker in `[tool.pytest.ini_options].markers` (see the `tests-and-backends` skill).
3. Register a `backend_<backend>` pytest marker (see the `tests-and-backends` skill).
4. Wire dispatch in `tvbo/codegen/templater.py`.
5. Ensure the optional dependency lives in `pyproject.toml` under `[project.optional-dependencies]`.

Expand Down
12 changes: 0 additions & 12 deletions .claude/skills/grill-me/SKILL.md

This file was deleted.

13 changes: 7 additions & 6 deletions .claude/skills/linkml-schema/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,23 +11,24 @@ The TVBO datamodel is defined in **LinkML** YAML in `schema/` and *generated* in
## What is canonical

- `schema/common.yaml`, `schema/SANDS.yaml`, `schema/openMINDS_tvbo/**` — hand-written LinkML definitions.
- `tvbo/datamodel/pydantic.py`, `tvbo/datamodel/schema.py` — **generated**. Do not edit.
- `tvbo/datamodel/pydantic.py`, `tvbo/datamodel/schema.py`, `tvbo/datamodel/tvbo_datamodel.schema.json`
— **generated** at build time by `hatch_build.py` and **gitignored**. Do not edit.

`pyproject.toml` makes this explicit:

- `tool.ruff.extend-exclude` includes `tvbo/datamodel/**`
- `tool.ruff.lint.exclude` includes `tvbo/datamodel/**`
- `tool.mypy.exclude` includes `tvbo/datamodel/`

If your diff touches `tvbo/datamodel/**` *and* anything else, that is a bug — split the change.

## Editing the schema

1. Edit the appropriate `schema/*.yaml`.
2. Regenerate the Python types via the LinkML pipeline (see `Makefile` / CI).
3. Commit both the schema change *and* the regenerated `tvbo/datamodel/**` in the same commit.
2. Regenerate the Python types via the LinkML pipeline (see `Makefile` / CI). A build
regenerates them automatically through the hatch build hook.

Never patch the generated file directly — the next regeneration will silently revert it.
The generated types are untracked, so a schema change has nothing to stage alongside it —
`schema/*.yaml` is the whole diff. Never patch a generated file directly: it is not in
git, and the next build silently overwrites it.

## When in doubt

Expand Down
3 changes: 1 addition & 2 deletions .claude/skills/overview/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,7 @@ A discussion / Q&A layer for the community is on the roadmap. See the `platform`
## Installation

```bash
pip install tvbo # core
pip install tvbo[jax] # JAX backend
pip install tvbo # core — includes the JAX backend
pip install tvbo[tvb] # The Virtual Brain backend
pip install tvbo[pyrates] # PyRates backend
pip install tvbo[julia] # juliacall + Julia backends
Expand Down
Loading
Loading