fix(security): Pods-Meta nur lesbar, wenn Pods aktiv, aber nicht nutzbar

Ist Pods aktiv, seine API aber nicht nutzbar, melden gesampelte und registrierte Meta-Schlüssel READONLY statt schreibbar. Sonst würden Pods-Felder (auch über Pods' register_meta-Integration) an Pods vorbei geschrieben.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Jan-Niclas Loosen
2026-11-06 11:30:05 +01:00
co-authored by Claude Opus 5.5
parent 8f3a4e76eb
commit 234fd1edac
5 changed files with 39 additions and 4 deletions
@@ -43,6 +43,16 @@ final class RegisteredMetaSourceTest extends TestCase
self::assertFalse($fields['footnotes']['multiple']);
}
public function testReadOnlyMakesEveryRegisteredKeyReadOnly(): void
{
Functions\when('get_registered_meta_keys')->justReturn(['city' => ['type' => 'string']]);
Functions\when('is_protected_meta')->justReturn(false);
$fields = (new RegisteredMetaSource(readOnly: true))->fieldsFor('lit_person');
self::assertSame(FieldDefinition::READONLY, $fields[0]->status);
}
public function testProtectedMetaHiddenFromRestIsReadonly(): void
{
$fields = $this->fieldsByKey();