apiVersion: jenkins.io/v1 kind: PipelineActivity metadata: annotations: lighthouse.jenkins-x.io/cloneURI: https://github.com/greencapitaltrade/destiny.git lighthouse.jenkins-x.io/job: release pipeline.jenkins-x.io/traceID: ac63cf5e00a45d07c05efb83e72373fb creationTimestamp: "2026-05-13T09:13:50Z" generation: 8 labels: branch: main build: "37" context: release created-by-lighthouse: "true" event-GUID: 0affec7a-4eac-11f1-991f-1d41941240f0 lighthouse.jenkins-x.io/baseSHA: c7cf7bfdabd825d80150fe877d99d0223ac07c26 lighthouse.jenkins-x.io/branch: main lighthouse.jenkins-x.io/buildNum: "1778663629952" lighthouse.jenkins-x.io/context: release lighthouse.jenkins-x.io/id: apitaltrade-destiny-main-release-cjvh6 lighthouse.jenkins-x.io/job: release lighthouse.jenkins-x.io/lastCommitSHA: c7cf7bfdabd825d80150fe877d99d0223ac07c26 lighthouse.jenkins-x.io/refs.org: greencapitaltrade lighthouse.jenkins-x.io/refs.repo: destiny lighthouse.jenkins-x.io/type: postsubmit owner: greencapitaltrade podName: apitaltrade-destiny-main-release-qwbbv-from-build-pack-pod provider: github repository: destiny tekton.dev/pipeline: apitaltrade-destiny-main-release-qwbbv managedFields: - apiVersion: jenkins.io/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:labels: f:branch: {} f:context: {} f:owner: {} f:provider: {} f:repository: {} f:spec: f:lastCommitMessage: {} f:lastCommitSHA: {} f:releaseNotesURL: {} f:version: {} manager: jx-changelog-0.10.18 operation: Update time: "2026-05-13T09:19:05Z" - apiVersion: jenkins.io/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:lighthouse.jenkins-x.io/cloneURI: {} f:lighthouse.jenkins-x.io/job: {} f:pipeline.jenkins-x.io/traceID: {} f:labels: .: {} f:build: {} f:created-by-lighthouse: {} f:event-GUID: {} f:lighthouse.jenkins-x.io/baseSHA: {} f:lighthouse.jenkins-x.io/branch: {} f:lighthouse.jenkins-x.io/buildNum: {} f:lighthouse.jenkins-x.io/context: {} f:lighthouse.jenkins-x.io/id: {} f:lighthouse.jenkins-x.io/job: {} f:lighthouse.jenkins-x.io/lastCommitSHA: {} f:lighthouse.jenkins-x.io/refs.org: {} f:lighthouse.jenkins-x.io/refs.repo: {} f:lighthouse.jenkins-x.io/type: {} f:podName: {} f:tekton.dev/pipeline: {} f:spec: .: {} f:baseSHA: {} f:batchPipelineActivity: {} f:build: {} f:buildLogsUrl: {} f:completedTimestamp: {} f:context: {} f:gitBranch: {} f:gitOwner: {} f:gitRepository: {} f:gitUrl: {} f:message: {} f:pipeline: {} f:startedTimestamp: {} f:status: {} f:steps: {} manager: jx-build-controller operation: Update time: "2026-05-13T09:20:41Z" name: greencapitaltrade-destiny-main-37 namespace: jx resourceVersion: "18096319" uid: 82abd0e5-1878-4aa6-be73-7bf9add619ff spec: baseSHA: c7cf7bfdabd825d80150fe877d99d0223ac07c26 batchPipelineActivity: {} build: "37" buildLogsUrl: s3://logs-gct-prod-20260425045301534100000007/jenkins-x/logs/greencapitaltrade/destiny/main/37.log completedTimestamp: "2026-05-13T09:20:18Z" context: release gitBranch: main gitOwner: greencapitaltrade gitRepository: destiny gitUrl: https://github.com/greencapitaltrade/destiny.git lastCommitMessage: | feat: bank statement analyzer + admin endpoint Adds comprehensive Perfios-style analysis of bank statement transactions, computed automatically on insert and persisted in bank_statements.analysis (jsonb). helpers/bank_statement_analyzer.js sections: - snapshot (account info + monthwise credit/debit/closing-balance/bounces) - insights (counts, period, balance min/max/avg) - monthly_recap (per-month inflows/outflows + categories) - daily_snapshot (day-of-month avg balance grid) - salary_payments, payroll (recurring monthly credits) - emi_transactions (list + recurring detection) - loan_insights (borrowings + repayments) - expense_breakdown (inflow/outflow by category) - cash_movement (monthly cash in/out) - cash_flow_insights (top 5 debits/credits + top 10 counterparties) - transaction_parties (counterparty aggregation) - monthly_party_insights (per-party per-month) - upi_insights (P2P/P2M, apps, counterparties) - returned_cheques (inward + outward) - nach_transfers, internal_transfers, circular_transactions - scheduled_payments (recurring non-EMI debits) - fixed_deposits - cheque_transactions, cash_transactions - large_transactions (>= 1L threshold) - duplicate_transactions - exceptions (RTGS under 2L, holiday cheques, high cash:salary ratio) - current_balance, business_cash_flow Migration adds `analysis`, `analysis_version`, `analysis_at` columns to `bank_statements`. Sequelize beforeCreate/beforeUpdate hooks call `runAnalysis()` so any insert auto-populates. Admin endpoint `GET /v1/admin/bank_statements/:application_id` returns the rows with analysis included. No application_user scoping so admin tooling (Hulk Credit Manager) can fetch. Tests: 25 unit + integration covering each section with a synthetic 3-month dataset (salary, EMI, UPI P2P/P2M, cash deposit/withdrawal, cheque return, large RTGS, internal transfer pair, duplicate, NACH SIP). Full suite 136/136 in devcontainer. Co-Authored-By: Claude Sonnet 4.6 lastCommitSHA: b61a589f6a300f7c4b0eef9ffb7ebf5106139ad6 message: 'Tasks Completed: 1 (Failed: 0, Cancelled 0), Skipped: 0' pipeline: greencapitaltrade/destiny/main releaseNotesURL: https://github.com/greencapitaltrade/destiny/releases/tag/v1.53.0 startedTimestamp: "2026-05-13T09:13:50Z" status: Succeeded steps: - kind: Stage stage: completedTimestamp: "2026-05-13T09:20:18Z" name: from build pack startedTimestamp: "2026-05-13T09:14:59Z" status: Succeeded steps: - completedTimestamp: "2026-05-13T09:15:12Z" name: Git Clone startedTimestamp: "2026-05-13T09:14:59Z" status: Succeeded - completedTimestamp: "2026-05-13T09:15:18Z" name: Next Version startedTimestamp: "2026-05-13T09:15:13Z" status: Succeeded - completedTimestamp: "2026-05-13T09:16:00Z" name: Jx Variables startedTimestamp: "2026-05-13T09:15:56Z" status: Succeeded - completedTimestamp: "2026-05-13T09:17:24Z" name: Build Npm Install startedTimestamp: "2026-05-13T09:16:25Z" status: Succeeded - completedTimestamp: "2026-05-13T09:18:44Z" name: Build Container Build startedTimestamp: "2026-05-13T09:17:25Z" status: Succeeded - completedTimestamp: "2026-05-13T09:19:05Z" name: Promote Changelog startedTimestamp: "2026-05-13T09:18:44Z" status: Succeeded - completedTimestamp: "2026-05-13T09:19:09Z" name: Promote Helm Release startedTimestamp: "2026-05-13T09:19:06Z" status: Succeeded - completedTimestamp: "2026-05-13T09:20:18Z" name: Promote Jx Promote startedTimestamp: "2026-05-13T09:19:10Z" status: Succeeded - kind: Promote promote: environment: staging pullRequest: pullRequestURL: https://github.com/greencapitaltrade/mcu/pull/3818 startedTimestamp: "2026-05-13T09:19:50Z" status: Succeeded startedTimestamp: "2026-05-13T09:19:50Z" status: Succeeded - kind: Promote promote: environment: production pullRequest: pullRequestURL: https://github.com/greencapitaltrade/mcu/pull/3819 startedTimestamp: "2026-05-13T09:20:15Z" status: Succeeded startedTimestamp: "2026-05-13T09:20:15Z" status: Succeeded version: 1.53.0 status: {}