Skip to content

feat(runtime): close out PROJ-1 PHP 8.5 baseline with QA + deploy verification#10

Merged
Wachhund merged 3 commits intomasterfrom
chore/proj1-closeout-qa-deploy
Feb 18, 2026
Merged

feat(runtime): close out PROJ-1 PHP 8.5 baseline with QA + deploy verification#10
Wachhund merged 3 commits intomasterfrom
chore/proj1-closeout-qa-deploy

Conversation

@Wachhund
Copy link
Owner

Purpose

  • Documentation update
  • Bug fix
  • New feature
  • Refactor/maintenance
  • Security hardening
  • Other (explain below)

Related Features / Issues

  • PROJ: PROJ-1
  • Issue: n/a

Overview of Changes

This PR closes PROJ-1 by finalizing PHP 8.5 runtime baseline stability with verified QA and deploy evidence.

Implemented fixes:

  • Added idempotent migration to ensure legacy user_logs table exists:
    • db/migrate/20260218221000_ensure_user_logs_table_exists.php
  • Synced canonical schema/state artifacts:
    • db/schema.sql
    • db/table_schema/production/user_logs.php
  • Hardened tag subscription user partial to avoid PHP 8.5 warning-to-exception failures in account edit flow:
    • app/views/tag_subscription/_user_listing.php

QA / Verification

  • composer run ci:lint: pass
  • composer run test: pass (15 tests / 72 assertions)
  • composer run analyse: pass (project script skipped: no phpstan config)
  • composer run cs-check: pass (project script skipped: no php-cs-fixer config)
  • composer run assets:verify: pass
  • Manual checks (VPS):
    • GET / -> 200
    • GET /post -> 200
    • GET /post/show/1 -> 404 (expected on empty dataset; no fatal)
    • GET /help -> 200
    • GET /static/more -> 200
    • GET /user/login -> 200
    • GET /user/edit anonymous -> 302
    • POST /user/authenticate (qa user) -> 302
    • GET /user/edit authenticated -> 200
    • Log delta scan: no new fatal/parse/class-not-found warnings in smoke scope
    • Schema check: user_logs table + FK fk_user_logs__user_id present

Deployment Impact

  • No deploy impact
  • Requires deploy runbook update
  • Requires environment/config changes
  • Requires migration
  • Rollback notes:
    • Revert app commit and deploy previous release.
    • Migration is additive and backward-compatible; rollback can keep user_logs table.

Reviewer Focus

  • Migration idempotency and FK creation safety in mixed environments.
  • Partial fix in app/views/tag_subscription/_user_listing.php under PHP 8.5 warning/error behavior.
  • Consistency between migration, schema, and table schema cache artifacts.

Checklist

  • Scope matches linked PROJ / issue
  • No secrets or credentials committed
  • Docs updated where needed
  • Backward compatibility considered
  • Ready to merge

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR finalizes the PHP 8.5 runtime baseline by adding an idempotent migration for the user_logs table, syncing canonical schema artifacts, and hardening a view partial to prevent PHP 8.5 warnings in the account edit flow. The changes address infrastructure gaps and PHP 8.5 compatibility issues discovered during deployment verification.

Changes:

  • Added idempotent migration to ensure user_logs table exists with proper foreign key constraints
  • Synced canonical schema artifacts (schema.sql and table_schema cache)
  • Hardened tag subscription user listing partial with defensive null checks

Reviewed changes

Copilot reviewed 3 out of 4 changed files in this pull request and generated 1 comment.

File Description
db/migrate/20260218221000_ensure_user_logs_table_exists.php New idempotent migration to create user_logs table and FK constraint if missing
db/schema.sql Added user_logs table definition and foreign key constraint to canonical schema
db/table_schema/production/user_logs.php Added/updated table schema cache with normalized formatting
app/views/tag_subscription/_user_listing.php Added defensive null checks for user variables to prevent PHP 8.5 warnings

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 4 changed files in this pull request and generated 1 comment.

@Wachhund Wachhund merged commit f3962db into master Feb 18, 2026
7 checks passed
@Wachhund Wachhund deleted the chore/proj1-closeout-qa-deploy branch February 18, 2026 23:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants