Subversion Repositories SmartDukaan

Rev

Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
37859 1 d 9 h amit /trunk/profitmandi-web/src/main/ fix(payment): send partners back to app.smartdukaan.com after wallet top-up via CCAvenue

r34902 moved angular.app.url to https://smartdukaan.com/, which does not serve the
partner app, so the post-payment redirect to pages/home/payment-status/{id} returned 404.
The payment itself was recorded; only the landing page was broken.

Also drops the extra slash in the redirect format (base URL already ends in /) and adds
the trailing slash to the dev value to match.
 
37856 1 d 15 h amit /trunk/profitmandi-web/src/main/resources/ docs(external-api): brandIdentifier is per itemId and returned on all SKU-level endpoints  
37733 16 d 15 h amit /trunk/profitmandi-web/src/main/ Remove dead third-party integrations: web

- PayU: /payu-pay and the payu-pay-response/cancelled handlers (bodies were
already commented out), PayuHandler, payment/ helpers, PayU POJOs, and the
PAYU PAY option served by checkout/payment-options.
PayuPayController stays: it holds the live CCAvenue, Razorpay and Pine Labs
callbacks.
- SmartPing: GET /click2call/{toMobile} (v1 + v2) and the caller-ID hook
/smartping/receipt + /v2/hookCallerID, which only logged
- HyperTrack: device location, partner location and geofence endpoints plus
HyperTrackService. The attendance endpoints (/getPunchHistory,
/employee/attendance) never called HyperTrack and are kept, moved to
EmployeeAttendanceController / V2EmployeeAttendanceController.
- Affiliate click-outs and live pricing (Amazon/Flipkart/Snapdeal via OMG):
ClicksController, LivePricingController and v2 wrappers. Live pricing was
already returning an empty list.
- Thriwe controller (fully commented out), SpiceMoney and FundFina v2 controllers
- Aramex branch of /track; tofee.* keys in dev/prod properties
 
37726 18 d 11 h amit /trunk/ sentry: stop developer laptops reporting to the live GlitchTip board

GlitchTip #586 was 57 events tagged environment=production whose stack read
/opt/homebrew/Cellar/tomcat@8/8.5.100/libexec/... with server_name set to a
developer's machine. Nothing was wrong on prod: a laptop was posting into the
production project and was indistinguishable from it.

Two things combined to allow that. The DSN lives in log4j2.xml, which ships inside
every build, so any machine running this code can report. And the Sentry SDK
defaults `environment` to "production" when it is not set -- which it never was --
so local runs arrived pre-labelled as prod.

Adds sentry.properties to each module, read off the classpath by the SDK itself
(io.sentry.config.PropertiesProviderFactory) and merged over the appender's config.
Both keys used here are honoured by io.sentry.ExternalOptions in 7.22.6 (verified
against the jar): `enabled` and `environment`.

The COMMITTED values are the safe ones -- enabled=false, environment=dev -- so a
plain local build is silent. build.gradle rewrites both from -Penv= alongside the
env.property it already writes, so only a deliberate -Penv=staging|prod build
reports, and it carries the right environment tag. tasks.build.doLast restores the
safe default afterwards, mirroring the existing handling of env.property.

Verified both directions: default build leaves enabled=false/environment=dev,
-Penv=prod yields enabled=true/environment=prod.

Note this makes the board trustworthy rather than merely quieter: events can now be
filtered on environment, and anything unlabelled is a build that predates this.
 
37495 36 d 12 h amit /trunk/profitmandi-web/src/main/resources/META-INF/ Fix Pine Labs affordability prod config: drop placeholder pinelabs.api.* overrides

r36839 re-added pinelabs.api.base.url/client.id/client.secret to the web module with
REPLACE_WITH_* values, reintroducing the duplication removed in r35832. AppConfig loads
shared-prod first and the module file second, so these shadowed the real credentials and
every affordability call failed with UnknownHostException on plural.v2.pinepg.in
(NXDOMAIN) - 1,254 errors in one week. Removing them restores the working values from
shared-prod.properties (api.pluralpay.in).

pinelabs.account.* deliberately left in place: the web module pins merchant 11467 while
shared-prod has 356460, so removing those would switch the live payment merchant.
 
37491 36 d 15 h amit /trunk/ errors: ship ERROR events to GlitchTip via the log4j2 Sentry appender

io.sentry:sentry-log4j2:7.22.6 in all three deployables. Pinned to 7.x because
8.x drops Java 8; verified class major version 52.

minimumEventLevel=ERROR is load-bearing. It only became safe after r37490 moved
business validations to WARN -- 32% of the ERROR stream was HTTP 400s where the
user is simply told what to fix, and sending those would have made "insufficient
balance" the top issue and buried real bugs. Breadcrumbs come from INFO so an
issue arrives with the log lines that preceded it.

Attached to the application loggers only; framework noise is not our bug.

web's log4j2.xml is committed here. cron's and fofo's are held back: both carry
uncommitted local development paths (a user.home expansion, and an absolute
/Users path) that would break production logging and the Alloy log tailing.
Their Sentry blocks are staged locally and should land with whoever owns those
path edits.
 
37412 42 d 14 h vikas /trunk/profitmandi-web/src/main/ Whatsapp Apis  
37367 49 d 7 h amit /trunk/profitmandi-web/src/main/ Mail: raise SMTP timeouts and rotate the sdtech app password

The 10s read timeout was cutting off larger attachment sends (policy PDFs, invoice
attachments) and surfacing as a send failure the outbox then retried. Raised to 30s
connect / 120s read-write on both senders. App password rotated to match the current
Google account credential.

Also fills in new.solr.url and store.app.url in staging.properties - staging carries no
fallback to dev/prod, so a missing key stops the context from starting.
 
37296 56 d 12 h amit /trunk/profitmandi-web/src/main/resources/ external api v2: docs - color removed from all record shapes  
37291 57 d 16 h amit /trunk/profitmandi-web/src/main/resources/ external api v2: docs - parameters-at-a-glance table, per-endpoint optional/required params, clamp semantics  
37280 58 d 12 h amit /trunk/profitmandi-web/src/main/resources/ external api v2: document addedOn field for new-SKU partial sync  
37224 64 d 10 h amit /trunk/profitmandi-web/src/main/ external api v2: paginated storeMaster endpoint + docs  
37219 64 d 12 h amit /trunk/profitmandi-web/src/main/resources/ external api v2: docs page - categoryMaster, gst, categorySpecs, item fields, paginated stock  
37150 72 d 13 h amit /trunk/profitmandi-web/src/main/ External partner API (web): /external/v1 endpoints (catalogMaster, catalogSkuMaster, skuMaster, storeMaster + catalogs/catalogSkus/stock lookups), X-Api-Key ApiKeyInterceptor on /external/** (excluded from JWT/CORS/post interceptors), hosted partner docs at /external/v1/docs. Requires migration_external_api_client.sql (r37149) on DB before deploy.  
37069 86 d 10 h vikas /trunk/profitmandi-web/src/main/ Added revisit option  
36963 99 d 12 h vikas /trunk/profitmandi-web/src/main/ Updated WhatsApp APIs  
36957 99 d 14 h aman /trunk/ Add AI assistant lead intake endpoint (POST /add/lead) tagging source=AI Assistant in Lead Management  
36852 113 d 13 h ranu /trunk/ code committed by some bug fix in pjp  
36839 117 d 8 h vikas /trunk/profitmandi-web/src/main/resources/META-INF/ Prod Properties  
35847 224 d 13 h amit /trunk/profitmandi-web/src/main/ fix: change order/create from GET to POST to enable duplicate order prevention via PostInterceptor idempotency check  

Show All