Skip to content

Merge to main release 3.12.0 - #168

Merged
drtechie merged 79 commits into
mainfrom
merge_to_main_release-3.12.0
Nov 2, 2026
Merged

drtechie merged 79 commits into
mainfrom
merge_to_main_release-3.12.0

Conversation

@sehjotsinghunthinkable

Copy link
Copy Markdown
Contributor

Merging branch release-3.12.0 to main branch

5Amogh and others added 30 commits July 21, 2025 11:57
* story: amm-1668 task - 1754 dto updated

* story: amm-1668 task - 1754
…tData. (#96)

* Update version in pom.xml to 3.4.0

* story: amm-1668 task - 1754

* story: amm-1668 task - 1754 dto updated (#92)

* story: amm-1668 task - 1754 dto updated (#93)

* story: amm-1668 task - 1754 dto updated

* story: amm-1668 task - 1754

* fix: amm-1879 doctor signature was not coming for ncdcare

---------

Co-authored-by: Amoghavarsh <93114621+5Amogh@users.noreply.github.com>
Co-authored-by: 5Amogh <amoghavarsh@navadhiti.com>
fix: aam-1896 prescribed quantity was not coming in the casesheet
3.4.0 to 3.4.1
fix: amm-1919 fix for update doctor data for higher refferal data
Fix the WASA Issue : IDOR Vulnerability
* fix: amm-1927 res headers based on origin via allowed cors

* fix: amm-1927 coderabbit comments resolved

* localhost regex added

* Update regex pattern for localhost in interceptor
* fix: add @PreAuthorize to RBAC

* fix: wasa RBAC implementation

* fix: remove duplicate dependency

* fix: coderabbit comments

* fix: update role

* fix: enable the request matcher
vishwab1 and others added 22 commits June 4, 2026 12:24
When mobile sends vanID=0 (placeholder), read correct vanID from Redis
(set by MMU login via camp:vanID key) and inject into request before
forwarding to Common-API/Identity-API for beneficiary creation.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Same fix as FLW-API's CampConfigService: registerBeneficiary() silently
forwarded registration requests without vanID when Redis had no
camp:vanID, instead of surfacing the misconfiguration. When
stoptb.enforce.vanid=true, registration now fails with a clear error
if camp is not configured.
…sponse

- Guard against null/missing 'data' in response before accessing beneficiaryRegID
- Return proper error message instead of crashing with NPE/JSONException
- Log error with full response body for easier debugging

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Allow users with the new Volunteer role (Stop TB serviceline) to authenticate
via /user login endpoints and to register new beneficiaries via
/registrarBeneficaryRegistrationNew. Mirrors existing ASHA access.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Confirmed via role trace that userId 4408 (and likely other
Registration Officer accounts) was hitting 403 on
registrarBeneficaryRegistrationNew because REGISTRATION_OFFICER
wasn't in the allowed-roles whitelist. Mirrors the existing
ASHA/VOLUNTEER access.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Sync release-3.8.3 with vb/trace: role grant
…it enforce.vanid config

- CommonBenStatusFlowServiceImpl.createBenFlowRecord: VanSerialNo was
  never set anywhere for i_ben_flow_outreach - now set to the row's own
  BenFlowID after save, matching the convention used elsewhere
  (e.g. IdentityService.regMap.setVanSerialNo(regMap.getBenRegId()))
- RegistrarServiceImpl: remove inline :false default from
  stoptb.enforce.vanid @value - every properties file must set this
  explicitly now, so a forgotten config fails loudly at startup instead
  of running fail-open

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
fix(stoptb): stamp VanSerialNo on i_ben_flow_outreach, require explic…
…client text

Stop TB's district/village IDs are Nikshay-scoped (m_nikshay_district,
m_nikshay_village), not AMRIT's general m_district/m_village numbering.
The two ID spaces overlap - e.g. ID 1 means 'Nicobars' in m_district but
'Alluri Sitharama Raju' in m_nikshay_district - and i_ben_flow_outreach
previously just stored whatever district/village name text the client
sent verbatim, with no server-side validation. Observed live: two
beneficiaries in the same actual village had different district/village
text stored for the same numeric IDs.

Gated on countNikshayMappedUsersForPSM() so only PSMs actually mapped to
a Nikshay TU go through this resolution - every other program (ANC/NCD/
cancer-screening/teleconsultation/etc.) sharing this same BenFlowStatus
code path is unaffected and keeps using client-sent text exactly as
before, since their IDs are already correctly AMRIT-scoped.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
fix(stoptb): resolve district/village names from Nikshay tables, not …
Redis (camp:vanID) was written once at MMU login and deleted globally,
unscoped, on ANY user's logout — a Redis outage or an unrelated user's
logout would silently break registration on this camp. Each camp/van
already runs its own dedicated backend instance, so which van this is
never actually changes at runtime.

registerBeneficiary() now injects vanID from the new stoptb.van.id
property (no inline default, every properties file must set it
explicitly, same convention as stoptb.enforce.vanid) instead of an
inline Redis lookup. Removed the now-unused RedisConnection/
LettuceConnectionFactory dependency from this class.

Scope: vanID only, parkingPlaceID is not part of this change.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
fix(stoptb): read vanID from stoptb.van.id property instead of Redis
- Add hasRole('COUNSELLOR') to registrarBeneficaryRegistrationNew
  authorization; also fixes a dangling trailing '||' left in the
  existing @PreAuthorize expression.
- Add TRACE diagnostics around benRegID/providerServiceMapID/villageID/
  vanID in registerBeneficiary and createBenFlowRecord to verify van ID
  propagation.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
feat(registrar): allow COUNSELLOR role for beneficiary registration
On a Stop TB camp server (stoptb.van.id > 0) the doctor master drug list
(itemMaster) is read from the store of the configured van, whatever
vanID/facilityID the app sends. Servers with stoptb.van.id=0 keep the
current behaviour.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
feat(stoptb): camp van drug list and release-3.8.2 StopTB fixes into release-3.12.0
@coderabbitai

coderabbitai Bot commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

Important

  • Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 76598a54-c292-407f-b9ad-ed324b84f10f
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@drtechie drtechie left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove claude files

@sehjotsinghunthinkable

Copy link
Copy Markdown
Contributor Author

Removed

@sonarqubecloud

sonarqubecloud Bot commented Nov 2, 2026

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
5.0% Duplication on New Code (required ≤ 3%)

See analysis details on SonarQube Cloud

@drtechie
drtechie merged commit 969c9a9 into main Nov 2, 2026
2 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants