Skip to content

Commit

Permalink
Merge branch 'master' into 98250_eps_draft_appt_serializer
Browse files Browse the repository at this point in the history
  • Loading branch information
randomsync authored Jan 21, 2025
2 parents bd39401 + 1c386dc commit c1c2312
Show file tree
Hide file tree
Showing 102 changed files with 2,447 additions and 5,077 deletions.
3 changes: 3 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -469,6 +469,7 @@ app/services/users @department-of-veterans-affairs/octo-identity
app/swagger/readme.md @department-of-veterans-affairs/va-api-engineers @department-of-veterans-affairs/backend-review-group
app/swagger/swagger/requests/appeals @department-of-veterans-affairs/backend-review-group
app/swagger/swagger/requests/backend_statuses.rb @department-of-veterans-affairs/va-api-engineers @department-of-veterans-affairs/backend-review-group
app/swagger/swagger/requests/banners.rb @department-of-veterans-affairs/va-api-engineers @department-of-veterans-affairs/backend-review-group
app/swagger/swagger/requests/bb @department-of-veterans-affairs/vfs-vaos @department-of-veterans-affairs/va-api-engineers @department-of-veterans-affairs/backend-review-group
app/swagger/swagger/requests/bb/health_records.rb @department-of-veterans-affairs/vfs-vaos @department-of-veterans-affairs/va-api-engineers @department-of-veterans-affairs/backend-review-group
app/swagger/swagger/requests/benefits_reference_data.rb @department-of-veterans-affairs/va-api-engineers @department-of-veterans-affairs/backend-review-group
Expand Down Expand Up @@ -2059,6 +2060,8 @@ spec/support/va_profile @department-of-veterans-affairs/vfs-authenticated-experi
spec/support/vcr_cassettes/apps @department-of-veterans-affairs/lighthouse-pivot
spec/support/vcr_cassettes/ask_va_api/dynamics @department-of-veterans-affairs/ask-va-team @department-of-veterans-affairs/backend-review-group @department-of-veterans-affairs/va-api-engineers
spec/support/vcr_cassettes/avs @department-of-veterans-affairs/backend-review-group @department-of-veterans-affairs/after-visit-summary
spec/support/vcr_cassettes/banners/get_banners_success.yml @department-of-veterans-affairs/vfs-facilities-frontend @department-of-veterans-affairs/va-api-engineers @department-of-veterans-affairs/backend-review-group
spec/support/vcr_cassettes/banners/get_banners_with_type_success.yml @department-of-veterans-affairs/vfs-facilities-frontend @department-of-veterans-affairs/va-api-engineers @department-of-veterans-affairs/backend-review-group
spec/support/vcr_cassettes/bb_client @department-of-veterans-affairs/vfs-vaos @department-of-veterans-affairs/va-api-engineers @department-of-veterans-affairs/backend-review-group
spec/support/vcr_cassettes/bgs @department-of-veterans-affairs/benefits-dependents-management @department-of-veterans-affairs/va-api-engineers @department-of-veterans-affairs/backend-review-group
spec/support/vcr_cassettes/bgs/claims @department-of-veterans-affairs/va-api-engineers @department-of-veterans-affairs/backend-review-group
Expand Down
82 changes: 0 additions & 82 deletions .rubocop_todo.yml
Original file line number Diff line number Diff line change
Expand Up @@ -365,15 +365,6 @@ RSpecRails/HaveHttpStatus:
RSpecRails/InferredSpecType:
Enabled: false

# Offense count: 2
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: slashes, arguments
Rails/FilePath:
Exclude:
- 'modules/dhp_connected_devices/app/services/token_storage_service.rb'
- 'spec/sidekiq/evss/document_upload_spec.rb'

# Offense count: 14
Rails/I18nLocaleTexts:
Exclude:
Expand All @@ -385,73 +376,6 @@ Rails/I18nLocaleTexts:
- 'lib/va_profile/models/preferred_name.rb'
- 'modules/claims_api/app/mailers/claims_api/unsuccessful_report_mailer.rb'

# Offense count: 1
# This cop supports unsafe autocorrection (--autocorrect-all).
Rails/IgnoredColumnsAssignment:
Exclude:
- 'modules/test_user_dashboard/app/models/test_user_dashboard/tud_account.rb'

# Offense count: 20
# This cop supports unsafe autocorrection (--autocorrect-all).
Rails/Pluck:
Exclude:
- 'app/models/saved_claim/coe_claim.rb'
- 'app/models/saved_claim/dependency_claim.rb'
- 'app/services/medical_copays/zero_balance_statements.rb'
- 'app/sidekiq/facilities/access_data_download.rb'
- 'app/sidekiq/facilities/dental_service_reload_job.rb'
- 'app/sidekiq/facilities/mental_health_reload_job.rb'
- 'lib/decision_review/utilities/pdf_validation/service.rb'
- 'lib/webhooks/utilities.rb'
- 'modules/health_quest/app/services/health_quest/questionnaire_manager/questionnaire_formatter.rb'
- 'modules/mobile/lib/scripts/appointments_list_validation.rb'
- 'rakelib/decision_review_repl.rb'
- 'spec/controllers/v0/onsite_notifications_controller_spec.rb'
- 'spec/lib/lighthouse/veterans_health/integration/client_spec.rb'
- 'spec/services/users/profile_spec.rb'
- 'spec/support/request_helper.rb'

# Offense count: 9
# This cop supports unsafe autocorrection (--autocorrect-all).
Rails/RedundantPresenceValidationOnBelongsTo:
Exclude:
- 'app/models/account_login_stat.rb'
- 'app/models/appeal_submission_upload.rb'
- 'app/models/central_mail_submission.rb'
- 'app/models/deprecated_user_account.rb'
- 'app/models/education_benefits_submission.rb'
- 'app/models/mhv_opt_in_flag.rb'
- 'modules/claims_api/app/models/claims_api/supporting_document.rb'
- 'modules/dhp_connected_devices/app/models/veteran_device_record.rb'

# Offense count: 76
# This cop supports unsafe autocorrection (--autocorrect-all).
Rails/RootPathnameMethods:
Exclude:
- 'app/sidekiq/facilities/state_cemetery_reload_job.rb'
- 'config/initializers/flipper.rb'
- 'lib/decision_review/schemas.rb'
- 'modules/appeals_api/app/models/appeals_api/notice_of_disagreement.rb'
- 'modules/appeals_api/spec/support/schema_helpers.rb'
- 'modules/claims_api/spec/requests/v2/veterans/rswag_intent_to_file_request_spec.rb'
- 'modules/claims_api/spec/requests/v2/veterans/rswag_power_of_attorney_spec.rb'
- 'modules/claims_api/spec/support/swagger_shared_components/v1.rb'
- 'modules/claims_api/spec/support/swagger_shared_components/v2.rb'
- 'modules/mobile/spec/models/adapters/appointments_vaos_v2_adapter_spec.rb'
- 'modules/va_forms/app/sidekiq/va_forms/form_reloader.rb'
- 'modules/va_forms/lib/tasks/va_forms.rake'
- 'rakelib/connectivity.rake'
- 'spec/factories/health_care_application.rb'
- 'spec/factories/va0994.rb'
- 'spec/factories/va10203.rb'
- 'spec/factories/va1990s.rb'
- 'spec/factories/va1995.rb'
- 'spec/lib/decision_review/schemas_spec.rb'
- 'spec/lib/decision_review/service_spec.rb'
- 'spec/lib/hca/enrollment_system_spec.rb'
- 'spec/models/form_profile_spec.rb'
- 'spec/requests/swagger_spec.rb'

# Offense count: 2
# Configuration parameters: ForbiddenMethods, AllowedMethods.
# ForbiddenMethods: decrement!, decrement_counter, increment!, increment_counter, insert, insert!, insert_all, insert_all!, toggle!, touch, touch_all, update_all, update_attribute, update_column, update_columns, update_counters, upsert, upsert_all
Expand All @@ -460,12 +384,6 @@ Rails/SkipsModelValidations:
- 'spec/models/form526_job_status_spec.rb'
- 'spec/sidekiq/evss/disability_compensation_form/submit_form526_all_claim_spec.rb'

# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
Rails/StripHeredoc:
Exclude:
- 'lib/common/exceptions/backend_service_exception.rb'

# Offense count: 3
# Configuration parameters: Include.
# Include: app/models/**/*.rb
Expand Down
6 changes: 3 additions & 3 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -237,7 +237,7 @@ GEM
attr_extras (7.1.0)
awesome_print (1.9.2)
aws-eventstream (1.3.0)
aws-partitions (1.1038.0)
aws-partitions (1.1039.0)
aws-sdk-core (3.216.0)
aws-eventstream (~> 1, >= 1.3.0)
aws-partitions (~> 1, >= 1.992.0)
Expand All @@ -246,8 +246,8 @@ GEM
aws-sdk-kms (1.97.0)
aws-sdk-core (~> 3, >= 3.216.0)
aws-sigv4 (~> 1.5)
aws-sdk-s3 (1.177.0)
aws-sdk-core (~> 3, >= 3.210.0)
aws-sdk-s3 (1.178.0)
aws-sdk-core (~> 3, >= 3.216.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.5)
aws-sdk-sns (1.93.0)
Expand Down
5 changes: 5 additions & 0 deletions app/controllers/v0/apidocs_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,10 @@ class ApidocsController < ApplicationController
key :name, 'medical_copays'
key :description, 'Veteran Medical Copay information for VA facilities'
end
tag do
key :name, 'Banners'
key :description, 'VAMC Situation Update Banners'
end
key :host, Settings.hostname
key :schemes, %w[https http]
key :basePath, '/'
Expand Down Expand Up @@ -120,6 +124,7 @@ class ApidocsController < ApplicationController
Swagger::Requests::Appointments,
Swagger::Requests::ContactUs::Inquiries,
Swagger::Requests::BackendStatuses,
Swagger::Requests::Banners,
Swagger::Requests::BB::HealthRecords,
Swagger::Requests::BurialClaims,
Swagger::Requests::BenefitsReferenceData,
Expand Down
2 changes: 1 addition & 1 deletion app/controllers/v0/map_services_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ def token
result = MAP::SecurityToken::Service.new.token(application: params[:application].to_sym, icn:, cache: false)

render json: result, status: :ok
rescue Common::Client::Errors::ClientError, Common::Exceptions::GatewayTimeout
rescue Common::Client::Errors::ClientError, Common::Exceptions::GatewayTimeout, JWT::DecodeError
render json: sts_client_error, status: :bad_gateway
rescue MAP::SecurityToken::Errors::ApplicationMismatchError
render json: application_mismatch_error, status: :bad_request
Expand Down
2 changes: 0 additions & 2 deletions app/controllers/v0/profile/address_validation_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,6 @@ def create
VAProfile::Models::ValidationAddress.new(address_params)
end

Rails.logger.info("Staging Address params: #{address_params}") if Settings.vsp_environment == 'staging'
Rails.logger.info("Staging validation Address: #{address}") if Settings.vsp_environment == 'staging'
Rails.logger.info("Staging Address valid: #{address.valid?}") if Settings.vsp_environment == 'staging'

raise Common::Exceptions::ValidationErrors, address unless address.valid?
Expand Down
2 changes: 1 addition & 1 deletion app/models/account_login_stat.rb
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ class AccountLoginStat < ApplicationRecord
VERIFICATION_LEVELS = %w[loa1 loa3 ial1 ial2].freeze

belongs_to :account, inverse_of: :login_stats
validates :account_id, presence: true, uniqueness: true
validates :account_id, uniqueness: true
validates :current_verification, inclusion: { in: VERIFICATION_LEVELS, allow_nil: true }
end
2 changes: 1 addition & 1 deletion app/models/appeal_submission_upload.rb
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# frozen_string_literal: true

class AppealSubmissionUpload < ApplicationRecord
validates :decision_review_evidence_attachment_guid, :appeal_submission_id, presence: true
validates :decision_review_evidence_attachment_guid, presence: true

belongs_to :appeal_submission
has_one :decision_review_evidence_attachment,
Expand Down
1 change: 0 additions & 1 deletion app/models/central_mail_submission.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,4 @@ class CentralMailSubmission < ApplicationRecord
belongs_to(:central_mail_claim, inverse_of: :central_mail_submission, foreign_key: 'saved_claim_id')

validates(:state, presence: true, inclusion: %w[success failed pending])
validates(:central_mail_claim, presence: true)
end
3 changes: 0 additions & 3 deletions app/models/deprecated_user_account.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,4 @@
class DeprecatedUserAccount < ApplicationRecord
belongs_to :user_verification, dependent: nil
belongs_to :user_account, dependent: :destroy

validates :user_account, presence: true
validates :user_verification, presence: true
end
2 changes: 1 addition & 1 deletion app/models/education_benefits_submission.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

class EducationBenefitsSubmission < ApplicationRecord
# don't delete this table, we need to keep the data for a report
validates(:region, :education_benefits_claim, presence: true)
validates(:region, presence: true)
validates(:region, inclusion: EducationForm::EducationFacility::REGIONS.map(&:to_s))
validates(:status, inclusion: %w[processed submitted])
validates(:form_type, inclusion: EducationBenefitsClaim::FORM_TYPES)
Expand Down
2 changes: 1 addition & 1 deletion app/models/mhv_opt_in_flag.rb
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@ class MHVOptInFlag < ApplicationRecord
attribute :user_account_id
attribute :feature

validates :user_account_id, :feature, presence: true
validates :feature, presence: true
validates :feature, inclusion: { in: FEATURES }
end
5 changes: 3 additions & 2 deletions app/models/saved_claim.rb
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,8 @@ def form_matches_schema

schema_errors = validate_schema(schema)
unless schema_errors.empty?
Rails.logger.error('SavedClaim schema failed validation! Attempting to clear cache.', { errors: schema_errors })
Rails.logger.error('SavedClaim schema failed validation! Attempting to clear cache.',
{ form_id:, errors: schema_errors })
clear_cache = true
end

Expand All @@ -97,7 +98,7 @@ def form_matches_schema
end

unless validation_errors.empty?
Rails.logger.error('SavedClaim form did not pass validation', { guid:, errors: validation_errors })
Rails.logger.error('SavedClaim form did not pass validation', { form_id:, guid:, errors: validation_errors })
end

schema_errors.empty? && validation_errors.empty?
Expand Down
2 changes: 1 addition & 1 deletion app/models/saved_claim/coe_claim.rb
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ def periods_of_service(form_copy)
def process_attachments!
supporting_documents = parsed_form['files']
if supporting_documents.present?
files = PersistentAttachment.where(guid: supporting_documents.map { |doc| doc['confirmationCode'] })
files = PersistentAttachment.where(guid: supporting_documents.pluck('confirmationCode'))
files.find_each { |f| f.update(saved_claim_id: id) }

prepare_document_data
Expand Down
2 changes: 1 addition & 1 deletion app/models/saved_claim/dependency_claim.rb
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ def process_attachments!
# add the two arrays together but also account for nil arrays
supporting_documents = [child_documents, spouse_documents].compact.reduce([], :|)
if supporting_documents.present?
files = PersistentAttachment.where(guid: supporting_documents.map { |doc| doc['confirmation_code'] })
files = PersistentAttachment.where(guid: supporting_documents.pluck('confirmation_code'))
files.find_each { |f| f.update(saved_claim_id: id) }
end
end
Expand Down
2 changes: 1 addition & 1 deletion app/services/medical_copays/zero_balance_statements.rb
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ def facilities_ids
# @return [Array<String>]
#
def statements_facilities_ids
statements.map { |i| i['pS_FACILITY_NUM'] }
statements.pluck('pS_FACILITY_NUM')
end

##
Expand Down
1 change: 0 additions & 1 deletion app/sidekiq/benefits_intake_status_job.rb
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,6 @@ def handle_response(response)
# submission was successfully uploaded into a Veteran's eFolder within VBMS
form_submission_attempt.update(lighthouse_updated_at:)
form_submission_attempt.vbms!
monitor_success(form_id, saved_claim_id, uuid)
log_result('success', form_id, uuid, time_to_transition)
monitor_success(form_id, saved_claim_id, uuid)
elsif time_to_transition > STALE_SLA.days
Expand Down
68 changes: 68 additions & 0 deletions app/swagger/swagger/requests/banners.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# frozen_string_literal: true

module Swagger
module Requests
class Banners
include Swagger::Blocks

swagger_path '/v0/banners' do
operation :get do
key :description, 'Returns banners that match the specified path and banner type'
key :operationId, 'getBannersByPath'
key :tags, ['banners']

parameter do
key :name, 'path'
key :in, :query
key :description, 'Path to match banners against'
key :required, true
key :type, :string
end

parameter do
key :name, 'type'
key :in, :query
key :description, 'Banner type to filter by (default: "full_width_banner_alert")'
key :required, false
key :type, :string
end

response 200 do
key :description, 'Banners retrieved successfully'
schema do
property :banners do
key :type, :array
items do
property :id, type: :integer
property :entity_bundle, type: :string
property :context do
key :type, :array
items do
property :entity do
property :entityUrl do
property :path, type: :string
end
end
end
end
end
end
property :path, type: :string
property :banner_type, type: :string
end
end

response 422 do
key :description, 'Unprocessable Entity'
schema do
property :error do
key :type, :string
key :example, 'Path parameter is required'
end
end
end
end
end
end
end
end
3 changes: 3 additions & 0 deletions config/betamocks/services_config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -908,6 +908,9 @@
- :method: :post
:path: "/sts/oauth/v1/token"
:file_path: "map/secure_token_service/token"
- :method: :get
:path: "/sts/oauth/v1/jwks"
:file_path: "map/secure_token_service/jwks"

# Sign Up Service Terms API
- :name: "MAP SUS"
Expand Down
2 changes: 1 addition & 1 deletion config/initializers/flipper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
require 'flipper/ui/action_patch'
require 'flipper/instrumentation/event_subscriber'

FLIPPER_FEATURE_CONFIG = YAML.safe_load(File.read(Rails.root.join('config', 'features.yml')))
FLIPPER_FEATURE_CONFIG = YAML.safe_load(Rails.root.join('config', 'features.yml').read)

Rails.application.configure do
config.flipper.test_help = false
Expand Down
1 change: 1 addition & 0 deletions config/routes.rb
Original file line number Diff line number Diff line change
Expand Up @@ -460,6 +460,7 @@
mount AccreditedRepresentativePortal::Engine, at: '/accredited_representative_portal'
mount AskVAApi::Engine, at: '/ask_va_api'
mount Avs::Engine, at: '/avs'
mount Burials::Engine, at: '/burials'
mount CheckIn::Engine, at: '/check_in'
mount DebtsApi::Engine, at: '/debts_api'
mount DhpConnectedDevices::Engine, at: '/dhp_connected_devices'
Expand Down
2 changes: 1 addition & 1 deletion lib/common/exceptions/backend_service_exception.rb
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ def va900_warning
end

def va900_hint
<<-MESSAGE.strip_heredoc
<<~MESSAGE
Add the following to exceptions.en.yml
#{response_values[:code]}:
code: '#{response_values[:code]}'
Expand Down
Loading

0 comments on commit c1c2312

Please sign in to comment.