One promotion-only model. Three active shared repos adopt it now; the Rust server is approved but deferred; the repo-product line follows as it matures. Approve this before we cut branches and wire CI/CD. It unblocks the UI re-skin (PR #6) and every future change.
We are consolidating the team onto shared repos. Here is the branch & release regime to approve before we cut branches and wire CI/CD. One model (promotion-only, environment-mapped), adopted now by the three active shared repos (Rust deferred), with the repo-product line following as it matures. It unblocks the UI re-skin and every future change.
Three long-lived branches, promotion-only. No direct commits to any. Every move up is a PR plus review.
Each long-lived branch auto-deploys to one environment. We do not create extra branches per person or per environment.
| Branch | Environment | URL / target | Owner |
|---|---|---|---|
| dev | Dev / preview | preview | Team |
| staging | External demo | demo-deploy | Dennis |
| main | Production | stable.ascend.gl (pre-release) | Manny/CPO |
Three active shared repos adopt the structure now; the Rust server is approved but deferred; the repo-product line follows as it matures.
| Repo | Adopts | Notes |
|---|---|---|
| Active shared repos: branches cut now | ||
| ascend-react-ui | Now | Hosts the blocked UI re-skin (PR #6). |
| ascend-nodejs-server | Now | Shared backend. |
| ascend-protocol | Now | Contract source of truth. |
| Approved, deferred | ||
| ascend-rust-server | Deferred | Experiment, not in production. No branches/tags cut now; adopts when it ships. |
| Repo-product line: adopts as it matures | ||
| ascend-repo-ui | As it matures | Repo-product line; same regime. |
| ascend-nodejs-repo-server | As it matures | Repo-product line; same regime. |
Forward note: the UI repo may later decouple client and admin into separate repos, both consuming the shared design system via a package in the product/ spoke. To be decided. Not now.
Consolidate everything on Google Cloud. Drop Vercel and Railway. One platform across the apps, the server, and the chain infra: one IAM, secrets, billing, DNS, logging, and deploy surface. That is the right footprint for a two-person team, and it aligns with Dennis's preference for the gcloud monolith.
CHANGELOG.md with an [Unreleased] section plus dated version sections.Approve the model, or request changes: branch model, promotion flow, CI/CD ownership, v1.0.0-rc.1, changelogs, and guardrails. Once approved, the same model goes for final sign-off before any branches are cut. One approval unblocks the whole pipeline.