Skip to content

[ENG] Task Expose cst_letters_content_updates via authorized services #140077

@JoshingYou1

Description

@JoshingYou1

Feature

benefit-letters

Specify Feature (if "Other")

no response

Team

bmt-team-2 (Bee's Knees)

Specify Team (if "Other")

no response

Discipline

Engineering

Issue Type

Task

Summary

Send the cst_letters_content_updates state to the mobile client through /mobile/v0/user/authorized-services as cstLettersContentUpdates. Flag registration lives in Phase 2 (#140006); this ticket is auth-services exposure only.

Description / Context

This is Phase 3 of the initiative. After it ships, mobile can read authServices.cstLettersContentUpdates — it will return false for everyone until the flag is turned on, but the shape of the response is set, so Phase 7 (mobile FE) can start using it right away.

Scope

Add to Mobile::V0::UserAccessibleServices#service_auth_map (modules/mobile/app/models/mobile/v0/user_accessible_services.rb):

cstLettersContentUpdates: Flipper.enabled?(:cst_letters_content_updates, @user)

The actor must be @user (NOT icn_actor) so the same user always lands in the same bucket across mobile and web.

This follows the same pattern as secureMessagingOracleHealthEnabled on line 52 of the same file — plain Flipper check, @user actor, no ICN check (structured content doesn't need an ICN to show up).

Out of scope

  • No changes to Mobile::V0::LettersController or the letters response (Phase 4).
  • No description field added to the response yet (Phase 5).
  • No vets-website changes — web has no server-side work; the service-level flag check in Phase 2 handles it.
  • No frontend code uses the flag yet (Phase 6, Phase 7).

Risks / Dependencies

Design Details (if applicable)

no response

Accessibility Considerations (if applicable)

no response

Acceptance Criteria / Definition of Done

  • Mobile::V0::UserAccessibleServices#service_auth_map includes cstLettersContentUpdates: Flipper.enabled?(:cst_letters_content_updates, @user) using @user (not icn_actor).
  • Add/update unit and request tests covering cstLettersContentUpdates in both flag-on and flag-off states (follow the cstMultiClaimProvider pattern as a reference).
  • modules/mobile/spec/support/schemas/authorized_services.json includes the new key.

Links & Resources

Metadata

Metadata

Assignees

No one assigned

    Labels

    benefit-lettersBenefits Management Tools Team 2's benefit letters workbenefits-management-toolsincludes Claim Status Tool, Benefits Letters, Payment Historybmt-team-2Benefits Management Tools Team #2engineeringEngineering topicstask

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions