Rename westside-landing → westside-app (full rename: Forgejo repo + k8s + monitoring) #208

Closed
opened 2026-04-04 00:01:35 +00:00 by forgejo_admin · 3 comments
Contributor

Type

Feature

User Story

As a platform operator, I want the westside SvelteKit frontend repo and k8s resources named westside-app (not westside-landing) so that the naming convention ({project}-app for authenticated frontends) is consistent and the codebase isn't half-renamed.

Lineage

  • Story: story:WS-S1 (platform operator hygiene)
  • Arch: arch:westside-app (authenticated SvelteKit frontend)
  • Board: board-westside-basketball item #920

Context

The repo was previously renamed FROM westside-app TO westside-landing, but only partially propagated. Local checkout is ~/westside-app, package.json name is westside-app, but Forgejo, k8s resources, and monitoring say westside-landing. Lucas defines landing as the public entry point (future separate concern per board-109). The current repo IS the app.

Repo

  • Primary: forgejo_admin/westside-landing (to be renamed westside-app)
  • Also touched: forgejo_admin/pal-e-deployments, forgejo_admin/pal-e-platform (separate PRs)

Scope

Rename (safe, zero user impact):

Surface Current Target Repo
Forgejo repo slug westside-landing westside-app Forgejo admin UI / API
k8s Deployment name westside-landing westside-app pal-e-deployments
k8s Service name westside-landing westside-app pal-e-deployments
k8s Ingress name westside-landing-funnel westside-app-funnel pal-e-deployments
k8s Secret refs in patch westside-landing-auth westside-app-auth pal-e-deployments
Env var values (7 active + 2 commented) westside-landing westside-app pal-e-deployments kustomization.yaml
Kustomization comment westside-landing env vars westside-app env vars pal-e-deployments kustomization.yaml
Dev overlay local path /home/ldraney/westside-landing /home/ldraney/westside-app pal-e-deployments dev/deployment.yaml
Monitoring probe westside-landing (name + label) westside-app pal-e-platform terraform/modules/monitoring/main.tf
Local remote URL westside-landing.git westside-app.git ~/westside-app (manual)

Leave alone (too dangerous or no benefit):

Surface Value Why
Keycloak client_id westside-landing Changing breaks OIDC sessions, needs coordinated app+terraform change
pal-e-services keycloak.tf westside-landing refs Terraform state surgery needed, deferred
Harbor image_repo westsidekingsandqueens/app Image migration not worth it
var.services key westsidekingsandqueens Destructive terraform rename
Namespace westsidekingsandqueens Brand name, stays
Public URL westsidekingsandqueens.tail5b443a.ts.net User-facing, stays
ArgoCD Application westsidekingsandqueens Source points to pal-e-deployments, not the app repo — unaffected

File Targets (verified via grep)

pal-e-deployments (4 files, 17 occurrences):

  • overlays/westsidekingsandqueens/prod/kustomization.yaml — lines 8, 17, 20, 23, 26, 37, 40, 43, 58, 61 (7 active values + comment + 2 commented values)
  • overlays/westsidekingsandqueens/prod/ingress.yaml — lines 4, 11 (resource name + service backend)
  • overlays/westsidekingsandqueens/prod/deployment-patch.yaml — lines 16, 21, 26, 35 (secret name refs)
  • overlays/westsidekingsandqueens/dev/deployment.yaml — line 50 (local path)

pal-e-platform (1 file, 2 occurrences):

  • terraform/modules/monitoring/main.tf — lines 401, 403 (probe name + service label)

Secrets Note

Namespace has BOTH westside-app-auth (24d old) and westside-landing-auth (13d old). Deployment patch currently references westside-landing-auth. After rename, patch will reference westside-app-auth which already exists. Verify contents match before applying — if they diverge, update westside-app-auth from current westside-landing-auth values.

Woodpecker / Webhooks

Forgejo repo rename preserves internal repo ID. Webhooks are ID-based, so Woodpecker CI should continue triggering without re-registration. Verify with a test push after rename.

Test Expectations

  • No code tests — this is pure infra rename (YAML string replacements)
  • kustomize build overlays/westsidekingsandqueens/prod/ must produce valid YAML with westside-app in all resource names
  • Post-deploy: kubectl get deploy,svc,ingress -n westsidekingsandqueens shows renamed resources
  • curl -sI https://westsidekingsandqueens.tail5b443a.ts.net returns 200

Decomposition

This ticket covers 2 repos + 1 manual step. Natural split for agents:

  1. pal-e-deployments PR — find-replace westside-landingwestside-app across 4 files (17 occurrences). Run kustomize build to validate.
  2. pal-e-platform PR — update 2 lines in monitoring/main.tf. Run tofu validate -lock=false.
  3. Manual — Forgejo repo rename via admin UI/API + local remote URL update + secret verification.

Acceptance Criteria

  • Forgejo repo accessible at forgejo_admin/westside-app
  • kubectl get deploy -n westsidekingsandqueens shows westside-app
  • kubectl get svc -n westsidekingsandqueens shows westside-app
  • kubectl get ingress -n westsidekingsandqueens shows westside-app-funnel
  • https://westsidekingsandqueens.tail5b443a.ts.net still loads
  • ArgoCD synced + healthy
  • Woodpecker CI triggers on push to renamed repo
  • Monitoring probe resolves to new service name

Rollback

Revert commits in pal-e-deployments + pal-e-platform. Rename Forgejo repo back. ArgoCD re-syncs. Brief churn (~30s), zero data loss.

### Type Feature ### User Story As a **platform operator**, I want the westside SvelteKit frontend repo and k8s resources named `westside-app` (not `westside-landing`) so that the naming convention (`{project}-app` for authenticated frontends) is consistent and the codebase isn't half-renamed. ### Lineage - **Story:** `story:WS-S1` (platform operator hygiene) - **Arch:** `arch:westside-app` (authenticated SvelteKit frontend) - **Board:** `board-westside-basketball` item #920 ### Context The repo was previously renamed FROM `westside-app` TO `westside-landing`, but only partially propagated. Local checkout is `~/westside-app`, `package.json` name is `westside-app`, but Forgejo, k8s resources, and monitoring say `westside-landing`. Lucas defines **landing** as the public entry point (future separate concern per board-109). The current repo IS the app. ### Repo - **Primary:** `forgejo_admin/westside-landing` (to be renamed `westside-app`) - **Also touched:** `forgejo_admin/pal-e-deployments`, `forgejo_admin/pal-e-platform` (separate PRs) ### Scope **Rename (safe, zero user impact):** | Surface | Current | Target | Repo | |---|---|---|---| | Forgejo repo slug | `westside-landing` | `westside-app` | Forgejo admin UI / API | | k8s Deployment name | `westside-landing` | `westside-app` | pal-e-deployments | | k8s Service name | `westside-landing` | `westside-app` | pal-e-deployments | | k8s Ingress name | `westside-landing-funnel` | `westside-app-funnel` | pal-e-deployments | | k8s Secret refs in patch | `westside-landing-auth` | `westside-app-auth` | pal-e-deployments | | Env var values (7 active + 2 commented) | `westside-landing` | `westside-app` | pal-e-deployments kustomization.yaml | | Kustomization comment | `westside-landing env vars` | `westside-app env vars` | pal-e-deployments kustomization.yaml | | Dev overlay local path | `/home/ldraney/westside-landing` | `/home/ldraney/westside-app` | pal-e-deployments dev/deployment.yaml | | Monitoring probe | `westside-landing` (name + label) | `westside-app` | pal-e-platform terraform/modules/monitoring/main.tf | | Local remote URL | `westside-landing.git` | `westside-app.git` | ~/westside-app (manual) | **Leave alone (too dangerous or no benefit):** | Surface | Value | Why | |---|---|---| | Keycloak client_id | `westside-landing` | Changing breaks OIDC sessions, needs coordinated app+terraform change | | pal-e-services keycloak.tf | `westside-landing` refs | Terraform state surgery needed, deferred | | Harbor image_repo | `westsidekingsandqueens/app` | Image migration not worth it | | var.services key | `westsidekingsandqueens` | Destructive terraform rename | | Namespace | `westsidekingsandqueens` | Brand name, stays | | Public URL | `westsidekingsandqueens.tail5b443a.ts.net` | User-facing, stays | | ArgoCD Application | `westsidekingsandqueens` | Source points to pal-e-deployments, not the app repo — unaffected | ### File Targets (verified via grep) **pal-e-deployments** (4 files, 17 occurrences): - `overlays/westsidekingsandqueens/prod/kustomization.yaml` — lines 8, 17, 20, 23, 26, 37, 40, 43, 58, 61 (7 active values + comment + 2 commented values) - `overlays/westsidekingsandqueens/prod/ingress.yaml` — lines 4, 11 (resource name + service backend) - `overlays/westsidekingsandqueens/prod/deployment-patch.yaml` — lines 16, 21, 26, 35 (secret name refs) - `overlays/westsidekingsandqueens/dev/deployment.yaml` — line 50 (local path) **pal-e-platform** (1 file, 2 occurrences): - `terraform/modules/monitoring/main.tf` — lines 401, 403 (probe name + service label) ### Secrets Note Namespace has BOTH `westside-app-auth` (24d old) and `westside-landing-auth` (13d old). Deployment patch currently references `westside-landing-auth`. After rename, patch will reference `westside-app-auth` which already exists. Verify contents match before applying — if they diverge, update `westside-app-auth` from current `westside-landing-auth` values. ### Woodpecker / Webhooks Forgejo repo rename preserves internal repo ID. Webhooks are ID-based, so Woodpecker CI should continue triggering without re-registration. Verify with a test push after rename. ### Test Expectations - No code tests — this is pure infra rename (YAML string replacements) - `kustomize build overlays/westsidekingsandqueens/prod/` must produce valid YAML with `westside-app` in all resource names - Post-deploy: `kubectl get deploy,svc,ingress -n westsidekingsandqueens` shows renamed resources - `curl -sI https://westsidekingsandqueens.tail5b443a.ts.net` returns 200 ### Decomposition This ticket covers 2 repos + 1 manual step. Natural split for agents: 1. **pal-e-deployments PR** — find-replace `westside-landing` → `westside-app` across 4 files (17 occurrences). Run `kustomize build` to validate. 2. **pal-e-platform PR** — update 2 lines in monitoring/main.tf. Run `tofu validate -lock=false`. 3. **Manual** — Forgejo repo rename via admin UI/API + local remote URL update + secret verification. ### Acceptance Criteria - [ ] Forgejo repo accessible at `forgejo_admin/westside-app` - [ ] `kubectl get deploy -n westsidekingsandqueens` shows `westside-app` - [ ] `kubectl get svc -n westsidekingsandqueens` shows `westside-app` - [ ] `kubectl get ingress -n westsidekingsandqueens` shows `westside-app-funnel` - [ ] `https://westsidekingsandqueens.tail5b443a.ts.net` still loads - [ ] ArgoCD synced + healthy - [ ] Woodpecker CI triggers on push to renamed repo - [ ] Monitoring probe resolves to new service name ### Rollback Revert commits in pal-e-deployments + pal-e-platform. Rename Forgejo repo back. ArgoCD re-syncs. Brief churn (~30s), zero data loss.
forgejo_admin changed title from Rename westside-landing to westside-app across all infrastructure to Rename westside-landing → westside-app (full rename: Forgejo repo + k8s + monitoring) 2026-04-12 16:55:12 +00:00
Author
Contributor

Scope Review: NEEDS_REFINEMENT

Review note: review-920-2026-04-12
Scope is well-written with excellent safe/leave-alone breakdown and all 5 file targets verified (19 occurrences across 2 repos). However, refinement needed before dispatch:

  • [SCOPE] Architecture note arch-westside-app does not exist in pal-e-docs — create it
  • [SCOPE] Duplicate board item #780 superseded by #920 — close or remove
  • [BODY] Missing template sections: User Story, Lineage, Repo header, Test Expectations
  • [BODY] Woodpecker webhook handling unclear — clarify if Forgejo auto-redirect suffices
  • [BODY] ArgoCD Application source repo URL not in file targets — verify and add if needed
  • [DECOMPOSE] 8 AC across 3 systems (pal-e-deployments, pal-e-platform, Forgejo admin) exceeds 5-minute rule. Route to skill-decompose-ticket for sub-board creation.
## Scope Review: NEEDS_REFINEMENT Review note: `review-920-2026-04-12` Scope is well-written with excellent safe/leave-alone breakdown and all 5 file targets verified (19 occurrences across 2 repos). However, refinement needed before dispatch: - **[SCOPE]** Architecture note `arch-westside-app` does not exist in pal-e-docs — create it - **[SCOPE]** Duplicate board item #780 superseded by #920 — close or remove - **[BODY]** Missing template sections: User Story, Lineage, Repo header, Test Expectations - **[BODY]** Woodpecker webhook handling unclear — clarify if Forgejo auto-redirect suffices - **[BODY]** ArgoCD Application source repo URL not in file targets — verify and add if needed - **[DECOMPOSE]** 8 AC across 3 systems (pal-e-deployments, pal-e-platform, Forgejo admin) exceeds 5-minute rule. Route to `skill-decompose-ticket` for sub-board creation.
Author
Contributor

Scope refinement (2026-04-12): Updated issue body per review-920-2026-04-12 findings:

  • Added user story, lineage, repo header, test expectations sections
  • Verified ArgoCD app source is pal-e-deployments (unaffected by Forgejo rename)
  • Verified Woodpecker webhooks are repo-ID-based (rename-safe)
  • Discovered both westside-app-auth and westside-landing-auth secrets exist — added verification step
  • Added decomposition: 2 agent PRs + 1 manual step
  • Removed duplicate board item #780 (superseded by #920)
**Scope refinement (2026-04-12):** Updated issue body per review-920-2026-04-12 findings: - Added user story, lineage, repo header, test expectations sections - Verified ArgoCD app source is pal-e-deployments (unaffected by Forgejo rename) - Verified Woodpecker webhooks are repo-ID-based (rename-safe) - Discovered both `westside-app-auth` and `westside-landing-auth` secrets exist — added verification step - Added decomposition: 2 agent PRs + 1 manual step - Removed duplicate board item #780 (superseded by #920)
Author
Contributor

Scope Review: APPROVED

Review note: review-920-2026-04-12-rerev
Re-review passes. All 6 prior findings resolved. File targets verified (19 occurrences across 5 files in 2 repos match claims). Traceability complete. Decomposition clear (2 PRs + 1 manual step). Ready for execution.

## Scope Review: APPROVED Review note: `review-920-2026-04-12-rerev` Re-review passes. All 6 prior findings resolved. File targets verified (19 occurrences across 5 files in 2 repos match claims). Traceability complete. Decomposition clear (2 PRs + 1 manual step). Ready for execution.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ldraney/westside-app#208
No description provided.