fix(tests): guard error_log/wp_json_encode stubs + document idempotency limitation

- tests/unit/test-migration-0004.php: wrap error_log() stub in
  function_exists() guard -- prevents PHP fatal redeclaration on
  PHP Lint (8.1/8.2/8.3) which runs php -l on all .php files.

- tests/bootstrap.php: update wp_json_encode stub to accept
  int $flags = 0 second arg (matches production call signature
  wp_json_encode($clean, JSON_UNESCAPED_UNICODE)); guard with
  function_exists().

- class-pr-core-migration-0004-backfill-peptide-meta.php: add
  code comment near idempotency check documenting the all-or-nothing
  limitation (post with legitimately empty aliases will re-run).

- CONVENTIONS.md: one-line note under migration conventions item 5
  documenting the idempotency caveat.

- CHANGELOG.md: add Fixed section under v0.6.0 for CI/test-stub fix.

Agent-Session: peptide-schema-backfill v0.6.0 P1 fix
This commit is contained in:
peptiderepo
2026-06-13 05:24:04 +00:00
parent 1e5999e663
commit 1880d1db1f
5 changed files with 19 additions and 5 deletions

View File

@@ -30,6 +30,10 @@ Format: [Semantic Versioning](https://semver.org/).
- `ARCHITECTURE.md` — §#6 JSON-LD rewritten; §2.9 uninstall spec updated; file tree updated for new classes.
- `CONVENTIONS.md` — schema-input meta convention added; Yoast JSON-LD extension pattern added.
### Fixed
- `tests/unit/test-migration-0004.php`: `error_log()` stub now guarded with `function_exists()` to prevent PHP fatal redeclaration error in CI PHP Lint (8.1/8.2/8.3).
- `tests/bootstrap.php`: `wp_json_encode` stub updated to accept `int $flags = 0` second argument, matching production call signature; guarded with `function_exists()`.
### Technical
- Schema version: `PR_CORE_TARGET_SCHEMA_VERSION` = 4.
- New test files: `tests/unit/test-migration-0004.php`, `tests/unit/test-jsonld.php`.