Around saving new or changed records in admin/marc_subfields_structure we have this construction: if (defined($liblibrarian) && $liblibrarian ne "") { my $is_demo = C4::Context->config('demo') || ''; if ( $is_demo ne '1' ) { So if you have no liblibrarian text or demo is set, your changes are lost. We could do better than that ! Note that the demo config variable is only used a couple of times in Koha in the context of changing biblio or auth fields and subfields. Do we need it ?
I think we should remove it - I doubt that the current implementation is still working correctly and in use. Should we create an omnibus? I found a note in Auth.pm: # DEMO => the demo user is allowed to do everything (if demo set to 1 in koha.conf