Review: Add feature_flags:sync to deploy initContainer (pal-e-deployments)

review-1368-2026-06-06 Review

review ready

Verdict: READY

Template Completeness

  • [x] Type
  • [x] Lineage
  • [x] Repo
  • [x] User Story
  • [x] Context
  • [x] File Targets
  • [x] Acceptance Criteria
  • [x] Test Expectations
  • [x] Constraints
  • [x] Checklist
  • [x] Related
All required sections for Feature type are present and filled.

Traceability

  • [x] story:auth label present
  • [ ] story note MISSING — no "auth" entry in project-landscaping-assistant user-stories table. Current stories: address-lookup, property-crud, service-tracking, special-notes, work-queue, weekly-tracking, schedule-upload. [SCOPE] Create "auth" user story entry on project-landscaping-assistant user-stories section.
  • [x] arch:k8s-deploy label present
  • [ ] arch note MISSING — search for "arch-k8s-deploy" returned no results in pal-e-docs. [SCOPE] Create architecture note arch-k8s-deploy for the Kubernetes deployment component.
  • [x] Forgejo issue — ldraney/landscaping-assistant#140, open

File Targets

  • [x] overlays/landscaping-assistant/prod/deployment-patch.yaml — verified exists in pal-e-deployments. InitContainer currently runs command: ["bin/rails", "db:prepare"], confirming the change target is accurate.

Repo Placement

Issue filed on landscaping-assistant but fix is in pal-e-deployments. The issue explicitly documents this in the ### Repo section (ldraney/pal-e-deployments) and in ### File Targets ("Files NOT to touch: Anything in landscaping-assistant repo"). Cross-repo tracking is acceptable.

Dependencies

  • [x] Blocker #130 (FeatureFlag model + rake task) — CLOSED. Board item #1354 is in done column.
  • [x] Rake task feature_flags:sync exists at lib/tasks/feature_flags.rake and is idempotent (uses find_or_create_by!).
  • [x] FeatureFlag model exists at app/models/feature_flag.rb.
All dependencies are resolved. No remaining blockers.

Acceptance Criteria

3 criteria, all verifiable by an agent:
  • [x] InitContainer command change — verifiable via file diff
  • [x] ArgoCD sync — verifiable post-deploy (requires prod access)
  • [x] Flags appear in DB — verifiable via the provided kubectl exec command, which is real and correct
Criteria are well-scoped and testable.

Blast Radius

Minimal. Single-line change in one kustomize overlay. No other overlays or services affected. The rake task is idempotent — safe to run on every deploy. No downstream consumers impacted.

Decomposition Assessment

1 file target, 1 repo, 3 AC, estimated <1 minute agent work. No decomposition needed.

Recommendations

  • [SCOPE] Create user story entry "auth" on project-landscaping-assistant user-stories section. This story is referenced by 10+ board items but has no backing entry.
  • [SCOPE] Create architecture note arch-k8s-deploy for the Kubernetes deployment component. Referenced by multiple board items (e.g., #1291 ServiceMonitor, #1368 this ticket).
Note: Both missing notes are systemic gaps affecting many tickets, not specific to this ticket. The ticket scope itself is solid.