Fixes for 4 defects from the unit-test expansion log: B20, B139, B141, B262.
The work is done and committed on the local branch fix/groupS-more, cut from tests/batch33-coverage90. Nothing is pushed yet — these branches can only land after the test-expansion stack (#1067, #1083, #1084, #1085), because every fix is verified against the xfail(strict=True) test that pins it.
What each commit says
7f6db61a fix: five defects in the datalayer type map and workflow comparison (B20, B139, B141, B262)
- B20 `typeDatatypeMap` is keyed on third-party *internal* module paths --
"pandas.core.frame.DataFrame" and "pandas.core.series.Series". pandas 3
re-exports both at the top level, so the real full names are
"pandas.DataFrame" and "pandas.Series" and neither key matched: a
DataFrame fell through to the object handler and was pickled instead of
written as parquet, silently against the policy in CLAUDE.md. Both
spellings are now keys, so an older pandas still resolves too.
- B139 `compareDataframeConfigurations` applied changeDotToUnderscore by
calling .replace on every entry of ret.T.columns -- which in long
format is the integer row index, because the frame has not been
pivoted. Every longFormat=True comparison died with "'int' object has
no attribute 'replace'". Only the string names are renamed now.
- B141 `findAvailableName` drew its id from the counter "simulations_<group>"
while addWorkflowToGroup draws from "<group>". The two never agreed, so
the "available" name it handed back was -- for any group populated the
normal way, always -- the name of a workflow that already exists.
- B262 `DataHandler_zarr_xarray.getData` opened the archive into `df` and then
wrote `resource.attrs = JSONToConfiguration(resource.attrs)`, where
`resource` is the store path it was handed, not the dataset. The
dataset's attributes were never converted and a str resource raised.
Unit layer: 5591 passed, 373 xfailed, 38 failed -- one fewer than baseline,
none new.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Verification
Full unit layer run after every commit, with the failure list diffed against a baseline captured before any edit: no regressions. The 39 baseline failures are environmental (no OpenFOAM, no current hermes, no gdal locally).
Fixes for 4 defects from the unit-test expansion log:
B20,B139,B141,B262.The work is done and committed on the local branch
fix/groupS-more, cut fromtests/batch33-coverage90. Nothing is pushed yet — these branches can only land after the test-expansion stack (#1067, #1083, #1084, #1085), because every fix is verified against thexfail(strict=True)test that pins it.What each commit says
7f6db61afix: five defects in the datalayer type map and workflow comparison (B20, B139, B141, B262)Verification
Full unit layer run after every commit, with the failure list diffed against a baseline captured before any edit: no regressions. The 39 baseline failures are environmental (no OpenFOAM, no current hermes, no gdal locally).