Files
prautoblogger/scripts
peptiderepo 923f7124c3 ci: add PRAUTOBLOGGER_* constants guard (scripts/check-constants.php)
Wires a new required CI step — 'Check PRAUTOBLOGGER_* constants' — that
fails the build when any PRAUTOBLOGGER_* constant referenced in the
shipped plugin PHP is neither:
  (a) define()d in prautoblogger.php (including conditional OPIK defines), nor
  (b) protected by a defined() guard at the reference site.

This closes the regression class that caused the v0.19.0 admin-500 incident:
PR #156 deleted three constants from prautoblogger.php; CI stayed green because
tests/bootstrap.php holds fallback copies, masking the gap until prod boot.

Deliverables:
  - scripts/check-constants.php (212 lines, no Composer deps, PHP 8.1+)
  - .github/workflows/ci.yml: new 'check-constants' job
  - CHANGELOG.md: one-line note under [Unreleased - Internal]

No plugin version bump (CI-only; shipped artifact unchanged).

AC-1 verified locally (Python3 equivalent logic):
  - HEAD passes clean (0 violations)
  - Remove PRAUTOBLOGGER_DEFAULT_RUN_CEILING_USD -> 2 violations caught
  - Remove PRAUTOBLOGGER_DEFAULT_REQUEST_JSON_RETENTION_DAYS -> 3 violations caught
  - Remove PRAUTOBLOGGER_DEFAULT_REASONING_MAX_TOKENS -> 1 violation caught

Agent-Session: ci-constants-guard-20260614
2026-06-14 12:40:04 +00:00
..