Files
anwar-pi-website/docs/live-ops-reconciliation.md

3.1 KiB

Live VPS source reconciliation

Source of truth

This reconciliation imports the already deployed application source from /root/anwarpi into web/. The owner explicitly confirmed that the VPS copy, including its package manifest and lockfile, is authoritative. It does not deploy or restart the website.

Included features:

  • Admin-only user creation and protected administrative user fields.
  • Free early-access reading with registration, checkout and notification signup disabled.
  • The exact trial banner, current policy pages and support contact.
  • Arabic branding «أنور پآي» and site-wide «محتوى» labels.
  • SEO titles/descriptions, utility-page noindex and absolute Article image URLs.
  • Most-read homepage cards based on the published collection's cumulative views.
  • Click-to-load privacy-enhanced YouTube embeds and same-origin inline raster images.
  • Bundled Readex Pro font with its OFL license.
  • The deployed daily backup script and cron definition under ops/.

Deliberate exclusions

Do not import .env files, secrets, database dumps, backups, uploads/media, private files, build output, dependency directories or TypeScript build caches into Git. Published article records remain in the production CMS database; they are not application-source files.

Generated payload-types.ts remains generated/ignored. The repository's existing removal of a hardcoded publishing key from web/docs/agent-publish-api.md is retained rather than copying that key back from an older live document.

Dependencies and security

The deployed web/package.json and web/package-lock.json are imported as requested. This replaces repository-only dependency/tooling edits and CVE overrides that were not on the live VPS. This release is a source reconciliation, not a security upgrade, and does not claim to resolve dependency advisories. Keep the existing recorded Next.js risk acceptance visible and evaluate upgrades separately.

Verification

Before publication, the reconciled application passed:

  • npm ci --ignore-scripts --no-audit --no-fund.
  • npm run test:launch: 10 tests passed, 0 failed.
  • npm run generate:types.
  • npx tsc --noEmit.
  • npm run build: Next.js production build completed successfully.

Added-line credential/injection screening found no literal credentials. Linting is skipped by the deployed build configuration; these results do not claim a separate lint pass or a remote CI run. The independent pre-publication review is recorded in the reconciliation's private evidence, not treated as a substitute for the commands above.

Operational files

ops/daily_backup.py is the deployed /root/anwarpy-daily-backup.py; ops/anwarpy-backup.cron is the deployed cron definition. Their paths and container names reflect the current installation. Merely merging these files does not install cron or run a backup.

Backup archives include runtime configuration and potentially sensitive data. Keep their destination root-only and never publish archive contents. This workflow did not read or change production data, invoke a backup, apply migrations, or deploy a replacement image.