Use case
An interrupted ARC entity creation can leave a zero-byte canonical workbook such as assays/<id>/isa.assay.xlsx. A later ARC.tryLoadAsync fails while reading that workbook with an error containing data length = 0, leaving the ARC unusable until the file is manually repaired or removed.
Requested behavior
Please provide an ARCtrl recovery path for zero-byte canonical workbooks, or document the intended recovery API. For a canonical entity workbook whose identifier can be derived from its path, regenerating the empty workbook scaffold allows the ARC to load again.
This applies to canonical assay, study, workflow, and run workbooks. It should not silently replace non-empty corrupt files.
Current workaround
Swate has a temporary ARC.LoadAsyncSwateZeroByteRepair extension. It first loads normally, and only when loading reports the zero-byte ZIP error does it find zero-byte canonical workbooks, recreate their empty scaffold contracts, and retry loading. The workaround can be removed once an ARCtrl release handles this case.
Use case
An interrupted ARC entity creation can leave a zero-byte canonical workbook such as
assays/<id>/isa.assay.xlsx. A laterARC.tryLoadAsyncfails while reading that workbook with an error containingdata length = 0, leaving the ARC unusable until the file is manually repaired or removed.Requested behavior
Please provide an ARCtrl recovery path for zero-byte canonical workbooks, or document the intended recovery API. For a canonical entity workbook whose identifier can be derived from its path, regenerating the empty workbook scaffold allows the ARC to load again.
This applies to canonical assay, study, workflow, and run workbooks. It should not silently replace non-empty corrupt files.
Current workaround
Swate has a temporary
ARC.LoadAsyncSwateZeroByteRepairextension. It first loads normally, and only when loading reports the zero-byte ZIP error does it find zero-byte canonical workbooks, recreate their empty scaffold contracts, and retry loading. The workaround can be removed once an ARCtrl release handles this case.