Review: Update terraform refs: westside-app to westside-landing
Verdict: APPROVED
Template Completeness
- [x] Type — Feature
- [x] Lineage — Sub-ticket of
forgejo_admin/westside-app#109, depends on sub-ticket 1 - [x] Repo —
forgejo_admin/pal-e-services - [x] User Story — superadmin wants terraform refs updated to match renamed repo
- [x] Context — explains decomposition from #109, Harbor and Keycloak client_id exclusions documented
- [x] File Targets — 3 files with specific lines, plus explicit "do NOT touch" list
- [x] Acceptance Criteria — 6 criteria, all verifiable
- [x] Test Expectations — tofu fmt, validate, plan commands specified
- [x] Constraints — tofu lock=false, dependency on sub-ticket 1, Keycloak client_id exclusion
- [x] Checklist — PR, plan output, tests, no unrelated changes
- [x] Related — parent ticket, all 4 sub-tickets, project page
Traceability
- [x] story:WS-S26 — westside landing site story, present on board item #588
- [x] arch:landing-site — landing site architecture component, present on board item #588
- [x] Forgejo issue —
forgejo_admin/pal-e-services#41, open
File Targets
- [x]
terraform/k3s.tfvarsline 41 — verified:westside-app = {exists inkeycloak_clientsblock - [x]
terraform/k3s.tfvarsline 43 — verified:client_id = "westside-app"exists, correctly excluded from scope - [ ]
terraform/k3s.tfvars"line 130" — MINOR: issue says line 130 butforgejo_repo = "forgejo_admin/westside-app"is actually at line 141 (insidewestsidekingsandqueensservice block). Content is correct, line number is off by 11. Not a blocker — agent will find it by content match. - [x]
terraform/keycloak-import.shline 13 — verified: import command referenceswestside-appmap key - [x]
terraform/keycloak-import.shlines 28-29 — verified: protocol mapper echo and import referencewestside-app - [x]
terraform/services.tfline 173 — verified: comment referenceswestside-app-funnel - [x] Harbor
image_repo— verified unchanged:westsidekingsandqueens/appderives from hostname prefix, not repo name
Targets are specific enough for an agent to act on without guessing.
Repo Placement
Correct. Issue is filed on
forgejo_admin/pal-e-services and all file targets are in terraform/ within that repo. No cross-repo changes needed for this sub-ticket. The parent issue (#109) is correctly structured as a tracking issue with 4 child sub-tickets across different repos.Dependencies
- [x] Sub-ticket 1 (Forgejo repo rename, board item #587) — satisfied, column:
done - [x] Sub-ticket 3 (#589, pal-e-deployments overlays) — independent, in
backlog. No dependency. - [x] Sub-ticket 4 (#590, pal-e-platform blackbox probe) — independent, in
backlog. No dependency.
No unresolved blocking dependencies. Sub-tickets 2, 3, and 4 can run in parallel after sub-ticket 1.
Acceptance Criteria
All 6 criteria are testable and specific:
- Criteria 1-4: grep-verifiable string replacements in known files
- Criterion 5:
tofu plan -lock=falsewith explicit run command (cd terraform && tofu plan -lock=false -var-file=k3s.tfvars) - Criterion 6: grep-verifiable —
image_repoprefix iswestsidekingsandqueens, unchanged
No ambiguous language. All criteria are programmatically verifiable by an agent.
Blast Radius
SERVICE_ONBOARDING.mdline 127 referenceswestside-appas a Keycloak client_id example — this is documentation about the client_id (which stays unchanged), so no update needed.- The
keycloak_clientsmap key rename fromwestside-apptowestside-landingwill change terraform resource addresses (e.g.,keycloak_openid_client.this["westside-app"]becomeskeycloak_openid_client.this["westside-landing"]). This will show as destroy+recreate intofu planunless amovedblock is added. The issue's AC says "tofu plan shows expected changes (key rename + forgejo_repo)" which implies awareness of this. Agent should verify plan output carefully. - No other files in pal-e-services reference
westside-appoutside the targeted files. - Rollback is straightforward — revert the string replacements.
Decomposition Assessment
Three-thing limit: 3 file targets in 1 repo — within limit.
Five-minute rule: estimated agent work ~3 minutes (string replacements + tofu plan verification). Within limit.
No independent subtasks that would benefit from parallelization — all changes are in the same repo and logically coupled.
No decomposition needed.
Recommendation
[BODY]Minor: fix line number reference — "line 130" should be "line 141" forforgejo_repoin k3s.tfvars. Not a blocker; agent will match by content.
No blocking action needed. Ticket is well-scoped and ready for execution.