readProjectFile('tools/codex-skills/core-guardrails/SKILL.md'); $this->assertStringContainsString('name: core-guardrails', $skill); $this->readProjectFile('tools/codex-skills/core-guardrails/references/boundaries-core.md'); $this->readProjectFile('tools/codex-skills/core-guardrails/references/boundaries-ui.md'); $this->readProjectFile('tools/codex-skills/core-guardrails/references/quality-gates.md'); $this->readProjectFile('tools/codex-skills/core-guardrails/references/source-map.md'); } public function testStarterkitPlannerSkillAndReferencesExist(): void { $skill = $this->readProjectFile('tools/codex-skills/starterkit-planner/SKILL.md'); $this->assertStringContainsString('name: starterkit-planner', $skill); $this->readProjectFile('tools/codex-skills/starterkit-planner/references/plan-template.md'); $this->readProjectFile('tools/codex-skills/starterkit-planner/references/tradeoff-matrix.md'); } public function testStarterkitGridStandardsSkillAndReferencesExist(): void { $skill = $this->readProjectFile('tools/codex-skills/starterkit-grid-standards/SKILL.md'); $this->assertStringContainsString('name: starterkit-grid-standards', $skill); $this->readProjectFile('tools/codex-skills/starterkit-grid-standards/references/list-checklist.md'); $this->readProjectFile('tools/codex-skills/starterkit-grid-standards/references/row-interaction-standard.md'); $this->readProjectFile('tools/codex-skills/starterkit-grid-standards/references/page-size-standard.md'); } public function testStarterkitPhpStyleCiSkillExists(): void { $skill = $this->readProjectFile('tools/codex-skills/starterkit-php-style-ci/SKILL.md'); $this->assertStringContainsString('name: starterkit-php-style-ci', $skill); } public function testCodexPromptsDocumentationReferencesBothSkills(): void { $prompts = $this->readProjectFile('docs/reference-codex-prompts.md'); $this->assertStringContainsString('core-guardrails', $prompts); $this->assertStringContainsString('starterkit-planner', $prompts); } public function testDocsIndexReferencesCodexPrompts(): void { $index = $this->readProjectFile('docs/index.md'); $this->assertStringContainsString('/docs/reference-codex-prompts.md', $index); } public function testCodexSkillsSyncScriptSupportsCheckAndApply(): void { $script = $this->readProjectFile('bin/codex-skills-sync.sh'); $this->assertStringContainsString('--check', $script); $this->assertStringContainsString('--apply', $script); $this->assertStringContainsString('mode="check"', $script); } }