# Task 14 — Educax LibreWolf integration

Audience: AI coding agents first.

## Outcome
Install trusted Educax theme at `themes/educax/`; package `dist/educax.zip`; commit clean validated result without push.

## Status
DONE — installed, packaged, validated, and committed locally; not pushed.

## Task ID
14

## Source request
Integrate Educax end-to-end in isolated worktree. Independently hostile-validate supplied archive and fully read supplied installer before execution. Inspect complete theme against `reference/educax` and current `PROMPT.md`; run PHP/JS/JSON/Gutenberg/demo-import/security checks and repository tests; make only bounded evidence-based fixes; install at `themes/educax` and package `dist/educax.zip` using `tools/theme_factory.py`; ensure `reference/**` unchanged. Commit terse imperative message, no coauthor. Do not push. Do not dispatch agents/models.

## Acceptance criteria
- Archive passes independent hostile validation before extraction or installer execution.
- Candidate inspection covers `reference/educax` and current `PROMPT.md`.
- PHP, JS, JSON, Gutenberg, demo-import, security, and repository tests pass.
- `themes/educax/` and `dist/educax.zip` generated using `tools/theme_factory.py`.
- `reference/**` unchanged.
- Local terse commit, no coauthor, no push.

## Preserved WIP
Active worktree: `/home/user/Projects/Press.zone/ThemeFactory/.claude/worktrees/agent-a73a67825ed314a95`.

## Constraints
Read installer fully. Independently validate archive. Only evidence-based fixes. Never alter `reference/**`. No agents/models. Do not push.

## Execution steps
1. Read project guidance and prompt; record plan.
2. Independently validate archive before installer.
3. Compare theme with reference and prompt; run required checks.
4. Apply bounded evidence-based fixes.
5. Build, audit, test, commit, record receipt.

## Current receipt
- `/caveman ultra` activated before response; installer fully read before execution.
- Independent hostile archive validation passed: SHA-256 `78483f93eae7c85ffae37cbb1b45ff6aec76616fa00106f4fbce330416281349`; 405 regular entries; one `educax/` root; 12,252,299 expanded bytes; CRC clean; no path, encryption, collision, or compression-ratio defects.
- Installer independently ran after validation; installed `themes/educax/`; its archive, PHP, and JavaScript checks passed.
- Full candidate/reference inventory checked: all 21 reference HTML pages map to importer source markers; no `core/html` block markup; Gutenberg block registration present; capability, nonce, confined bundled-media, and idempotent importer paths inspected.
- PHP, JavaScript, and `theme.json` syntax checks passed. Static security scan found no executable PHP sink; only JavaScript `RegExp.exec` call.
- `tools/theme_factory.py` packaged, audited, and validated `dist/educax.zip` using a clean temporary one-root container. Package: one `educax/` root, 405 entries, CRC clean, 9,610,598 bytes, SHA-256 `e4aa46f82f857afc9e9e41adbc65a8956a0bde70f450d243a1f74ac6f545dc65`.
- `python3 tests/test_theme_factory.py` and `python3 tests/test_gptbridge_download.py` passed cleanly.
- `reference/**` unchanged. No source correction warranted by evidence.

## Next executable action
None. Local commit complete; do not push.
