PR Vision v0.2.0: clear CI blockers (P1-A/B/C/D/E + P2 CONTEXT)

P1-A: Remove defined()/constant() declarations from tests/bootstrap.php
  - Both shadow PHP built-ins → 'Cannot redeclare' fatal on PHP 8.x
  - Killed PHP Lint (8.2) job and cancelled 8.1/8.3 jobs
  - Full bootstrap audit: no other PHP built-in shadows remain

P1-B: Re-escape pre-escaped vars at echo site (class-prv-model-manager-table)
  - $prov, $slug, $note: esc_html() at output (was only at assignment)
  - $id: esc_attr() at every output site (3 places)
  - $checked_attr/$toggle_attrs: phpcs:ignore -- hard-coded attribute strings
  - render_health_badge(): phpcs:ignore -- returns pre-escaped HTML markup

P1-C: phpcs:disable/enable NonceVerification.Missing (class-prv-settings-page)
  - Wraps all four handle_*() POST blocks
  - Justification inline: nonce verified via require_admin_nonce() private helper

P1-D/E: Auto-fixable PHPCS violations (array formatting + style)
  - class-prv-config.php: expand 12 inline associative peptide arrays to multi-line
  - class-prv-probe-runner.php: expand inline {probed,errors} array; align param docs
  - class-prv-model-test-ajax.php: multi-line wp_send_json_success/error calls
  - class-prv-settings-renderer.php: extract cadence options array to variable
  - class-prv-model-registry.php: capitalise docblock first word; align param spacing

P2: CONTEXT.md v0.2.0 -- add 7 new domain terms
  - Config Version, Run Lock, Model Registry, Run Health, Projected Cost,
    Config-version Stamp, Truncation State

Agent-Session: pr-vision admin v0.2.0 CI fix
This commit is contained in:
peptiderepo
2026-06-14 07:10:35 +00:00
parent 8274d54a5e
commit a09bda0181
10 changed files with 136 additions and 38 deletions

View File

@@ -169,7 +169,12 @@ class PRV_Settings_Renderer {
$next_str = $next_ts ? gmdate( 'Y-m-d H:i T', (int) $next_ts ) : 'Not scheduled';
echo '<div class="prv-field"><label class="prv-label" for="prv_cadence">' . esc_html__( 'Probe cadence', 'pr-vision' ) . '</label>';
echo '<select class="prv-input" id="prv_cadence" name="prv_cadence" data-scoring-relevant="1" style="max-width:200px">';
foreach ( array( 'weekly' => 'Weekly', 'twicedaily' => 'Twice daily', 'daily' => 'Daily' ) as $v => $l ) {
$cadence_options = array(
'weekly' => 'Weekly',
'twicedaily' => 'Twice daily',
'daily' => 'Daily',
);
foreach ( $cadence_options as $v => $l ) {
echo '<option value="' . esc_attr( $v ) . '"' . selected( $cadence, $v, false ) . '>' . esc_html( $l ) . '</option>';
}
echo '</select>';