Skip to content

Consolidate Vercel projects around canonical support371-gem-enterprise #33

Description

@support371

Problem

main still receives deployment status contexts from multiple Vercel projects and teams. Even when those statuses are successful, they create release noise and obscure the authoritative production source.

Canonical production source of truth

  • Vercel project: support371-gem-enterprise
  • Project ID: prj_VDGqnA7wZt2E65LLvT94ZOpnYc2Z
  • Canonical team: team_7lMXW95WSLeyK4yAObe8FptW
  • Production domains:
    • www.gemcybersecurityassist.com
    • gemcybersecurityassist.com
  • Current verified READY production deployment: dpl_CafbKRd94gfskrB7gR2FDMJS8B3Q
  • Current verified production artifact commit: 05e272049f51ff8c15ffab213129c8659163a433
  • Repository-side consolidation merge: 0d25db1a1b38782c1b26830fcc993ec3ac0b7ff8 (PR Harden canonical Vercel project consolidation #174)

The repository-side consolidation merge contains documentation and regression tests only. Its new Vercel build was rejected before checkout by the free-account build-rate limit, so the live runtime correctly remains on the previously verified READY production artifact.

Repository-side safeguards completed

  • Keep support371-gem-enterprise documented as the only authoritative production project.
  • Enforce canonical project ID prj_VDGqnA7wZt2E65LLvT94ZOpnYc2Z in scripts/vercel-ignore.mjs.
  • Fail closed for explicit non-canonical projects and unknown Vercel/CI identities.
  • Preserve normal local development behavior.
  • Add src/__tests__/vercel-canonical-project.test.ts.
  • Verify all six guard scenarios independently with Vitest: 6/6 passed.
  • Inventory observed legacy GitHub deployment status contexts in docs/VERCEL_CANONICAL_PROJECT.md.
  • Document production and preview routing and external-owner cleanup requirements.
  • Confirm both production domains remain attached to the canonical project.
  • Confirm /app/command-center remains protected and routes unauthenticated visitors to /client-login?next=/app/command-center.
  • Make no project deletions, domain changes, environment-variable changes, database changes, or paid-resource changes.

Observed legacy status contexts

Current commits may still receive contexts including:

  • gem-enterprise
  • gem-enterprise-in
  • gem-enterprise-jx
  • gem-enterprise-xf
  • v0-continue-conversation
  • v0-continue-conversation-3875
  • v0-deployment-alignment-task
  • v0-image-analysis
  • v0-my-website
  • v0-v0-geraldhoeven-4141-ff89f7f-5

These projects belong to Vercel teams that are not connected to the current workspace. Their owners must disconnect the Git integration from support371/gem-enterprise. Repository code cannot remove another team owner's integration.

Remaining external cleanup

  • Owners of every legacy Vercel team review domains, environment variables, deployment history, and ownership.
  • Owners disconnect support371/gem-enterprise from stale projects before any archival or deletion.
  • Stale projects stop reporting Git deployment statuses against this repository.
  • main receives deployment status only from Vercel – support371-gem-enterprise.

Acceptance criteria

  • main receives an authoritative production status only from support371-gem-enterprise.
  • stale projects no longer report Git deployment statuses against this repository.
  • www.gemcybersecurityassist.com and gemcybersecurityassist.com remain attached to project ID prj_VDGqnA7wZt2E65LLvT94ZOpnYc2Z.
  • production and preview routing are documented and unambiguous.
  • no environment variables, domains, or deployment history are lost during repository-side cleanup.

Safety note

The previous issue text incorrectly named gem-enterprise as canonical. That instruction is superseded by the verified canonical project above.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions