7T data - fMRIPrep keep failing during CIFTI surface mapping

Summary of what happened:

fMRIPrep CIFTI run fails at “Creating fsLR registration sphere” (new_sphere = [ ]) on 7T data

I consistently encounter the following error when running fMRIPrep with CIFTI output on 7T data:

ANAT Stage 9: Creating fsLR registration sphere
TraitError: new_sphere = [ ]

The NIfTI-only pipeline (no --cifti-output) runs successfully.

Command used (and if a helper script was used, a link to the helper script or the command generated):

Troubleshooting I’ve tried:

  • NIFTI will run through (can take my FS8 recon-all outputs)
  • supply my own FS recon-all outputs (freesurfer/8.1.0) or let fMRIPrep runs its own (FreeSurfer 7.4.1).
    • add --fs-subjects-dir and -B ${FS_SUBJECTS_DIR}:/fsdir (supply FS8 recon-all: failed)
    • remove --fs-subjects-dir and -B ${FS_SUBJECTS_DIR}:/fsdir (internal FS7: failed)
    • add --fs-no-resume (internal FS7 + fs-no-resume made progress in one run, but stuck at later stage)
  • disable MSM-Sulc
    • add --no-msm \ (still failed)
  • also made sure WORK dir and OUT dir are clean for each run
  • verified fsaverage presence, check needed subject sphere and pial files, all present and correct sizes

Below is the script used in my latest attempt:

	apptainer run --cleanenv \
  	-B ${BIDS_ROOT}:/data \
  	-B ${OUTPUT_DIR}:/out \
  	-B ${WORK_DIR}:/work \
 	-B ${FS_LICENSE}:/opt/freesurfer/license.txt \
	  ${fmriprep_CONTAINER} \
 	 /data /out \
 	 participant \
 	--participant-label ${SUB} \
 	--session-label ${SES} \
	--fs-no-resume \
 	--output-spaces MNI152NLin2009cAsym \
	--cifti-output 91k \
  	--work-dir /work \
 	--dummy-scans 3 \
 	2>&1 | tee -a "$LOGFILE"

Version:

tried fMRIPrep 25.2.3 and 25.2.5, neither worked

Environment (Docker, Singularity / Apptainer, custom installation)

  • fMRIPrep: 25.2.3 and 25.2.5 (both tested)
  • Container: Apptainer
  • FreeSurfer:
    • internal (FS 7.x via fMRIPrep)
    • external FS 8.1.0 recon-all also tested
  • Linux HPC

Data formatted according to a validatable standard? Please provide the output of the validator:

  • 7T fMRI data
  • BIDS formatted and passes validation
  • 7T T1w available (no T2w)

Relevant log outputs (up to 20 lines):

260407-11:30:02,371 nipype.workflow INFO:
	 ANAT Stage 9: Creating fsLR registration sphere
260407-11:30:02,376 nipype.workflow INFO:
	 ANAT Stage 10: Creating MSM-Sulc registration sphere
260407-11:30:02,383 nipype.workflow INFO:
	 ANAT Stage 11: Creating cortical surface mask
...
traits.trait_errors.TraitError: Each element of the 'new_sphere' trait of a DynamicTraitedSpec
instance must be a pathlike object or string representing an existing file, but a value of '[]' 
<class 'str'> was specified.

Screenshots / relevant information: none

Thank you in advance!
Shuqing