Validation: #49 Schema ownership transfer

validation-49-2026-06-22 Doc

validation pass

Validation Result: PASS

Issue: paldocs#49 — Schema ownership transfer
PR: paldocs#60 — feat: transfer database schema ownership to Rails
QA Review: APPROVED (agent a9108894c8fd7ff46)

What was validated

  • pg_dump of production schema captured as db/structure.sql (841 lines, all tables/indexes/triggers/FK constraints)
  • config.active_record.schema_format switched from :ruby to :sql
  • neighbor gem added for pgvector vector(2560) column on blocks
  • First Rails migration: add status VARCHAR(50) to projects — proves migration authority
  • 6 rspec tests passing (3 scope tests, 1 default value, 2 column property tests)
  • ci_schema.sql updated for CI compatibility (vanilla postgres:17, no pgvector)
  • No regressions — 21 pre-existing request spec failures identical on main
  • Migration is purely additive — pal-e-docs backward compatibility preserved

Nits (non-blocking)

  • by_status scope could benefit from enum validation for self-documentation
  • structure.sql intentionally omits new migration version — load pattern worth documenting
  • Migration spec typing minor
  • No automated CI schema drift detection yet

CI Note

Nokogiri bumped 1.19.3 → 1.19.4 (6 CVEs) in same PR branch before merge. Resolved bundler-audit failures across all branches.