Add frontend-to-backend deployment readiness contract across plan/integrate/deploy agents - #1651
Add frontend-to-backend deployment readiness contract across plan/integrate/deploy agents#1651Nathan (nturinski) wants to merge 6 commits into
Conversation
…egrate/deploy agents Prevents create-project flows from declaring success while the deployed app is non-functional (relative /api 404s, placeholder DATABASE_URL 500s, stubbed identity). Plan records production API topology, per-service Production Source, and identity transport; integrate preserves topology, forbids stubbed identity, marks local infra values dev-only, and writes a 'Deploy must resolve' hand-off; deploy provisions real dependencies and runs an authenticated post-deploy check.
There was a problem hiding this comment.
Pull request overview
This PR strengthens the Copilot-on-Rails create-project workflow by adding an explicit “frontend ↔ backend deployment readiness” contract that carries from plan → integrate → deploy, preventing flows from reporting success when the deployed app is still broken (e.g., /api 404s, placeholder DB config, stubbed identity).
Changes:
- Extends the project plan template to record production API topology, frontend API base, CORS responsibility, identity transport, and a per-env-var Production Source for deploy provisioning.
- Updates integrate guidance to preserve the planned production topology (no relying on local dev proxy), forbid stubbed identity, and record a “Deploy must resolve” hand-off.
- Updates deploy agent guidance to enforce final production routing/auth/data readiness and require a post-deploy browser-level verification step.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| resources/agents/azure-project-plan/plan.md | Adds production API connectivity + env-var Production Source contract to the plan template. |
| resources/agents/azure-project-integrate/references/wire-live-data.md | Documents production-safe API base configuration (e.g., VITE_API_BASE) and clarifies dev proxy limitations. |
| resources/agents/azure-project-integrate/instructions.md | Enforces topology preservation, bans stubbed identity, and requires a deploy hand-off section. |
| resources/agents/azure-deploy.agent.md | Makes deploy explicitly responsible for production frontend→API wiring, real dependencies, and an end-to-end post-deploy check. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot Autofix powered by AI <[email protected]>
Adds a framework mapping table (Vite, Next.js, SvelteKit, Angular, Astro/Nuxt) for the public env var, client access, production check, and build-config validation, keeping Vite as one worked example.
… identity vs Infra output)
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 4 out of 4 changed files in this pull request and generated no new comments.
Suppressed comments (1)
resources/agents/azure-project-plan/plan.md:114
- The
DATABASE_URLlocal default value is currently rendered as******localhost:5432/appdb, which drops the scheme/user info and looks like an unintended redaction. This makes the plan template unclear for users/agents and is inconsistent with a valid PostgreSQL connection-string format.
| {PostgreSQL} | {Primary data store} | {DATABASE_URL} | {postgresql://localdev:localdevpassword@localhost:5432/appdb} | {Infra output} | {Essential} |
|
Parts of this may still be useful for wiring in the live data so keeping for now. |
|
Copilot resolve the merge conflicts in this pull request |
…ess-contract # Conflicts: # resources/agents/azure-deploy.agent.md # resources/agents/azure-project-plan/plan.md Co-authored-by: nturinski <[email protected]>
Co-authored-by: nturinski <[email protected]>
Prevents create-project flows from declaring success while the deployed app is non-functional (relative /api 404s, placeholder DATABASE_URL 500s, stubbed identity).
Plan records production API topology, per-service Production Source, and identity transport; integrate preserves topology, forbids stubbed identity, marks local infra values dev-only, and writes a 'Deploy must resolve' hand-off; deploy provisions real dependencies and runs an authenticated post-deploy check.