create-form-tab-layout — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited create-form-tab-layout (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
This is NOT the default form pattern. Most entity forms are simple single-page forms usingTranslatorAwareTypeorAbstractType. Only useNavigationTabTypewhen the entity has many fields that benefit from tab organization (e.g. Carrier with general, shipping, size/weight tabs).
{Domain}Type, declare NavigationTabType as the parent type via getParent(): public function getParent(): string
{
return NavigationTabType::class;
}Then in buildForm(), add each tab as a sub-form — each child is rendered as a tab.
{Domain}GeneralTabType.php, {Domain}ShippingTabType.php, etc.TranslatorAwareType with its own buildForm() containing only that tab's fields.Reference: src/PrestaShopBundle/Form/Admin/Shipping/Carrier/CarrierType.php, src/PrestaShopBundle/Form/Admin/Sell/Product/EditProductFormType.php
Conventions (NavigationTabType is PS-specific, tab anchor IDs for JS error nav) are in Forms/CONTEXT.md. Skill-specific reminders:
$this->trans() for translation~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.