Skip to content

Commit 91c7785

Browse files
authored
Merge pull request #7 from topcoder-platform/dev
March 2026 Prod Release
2 parents cb2af26 + dc1b0a3 commit 91c7785

File tree

245 files changed

+16509
-2230
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

245 files changed

+16509
-2230
lines changed

.circleci/config.yml

Lines changed: 0 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,6 @@ defaults: &defaults
99
docker:
1010
- image: cimg/python:3.13.2-browsers
1111

12-
node_defaults: &node_defaults
13-
docker:
14-
- image: cimg/node:22.13
15-
1612
install_dependency: &install_dependency
1713
name: Installation of build and deployment dependencies.
1814
command: |
@@ -63,42 +59,6 @@ jobs:
6359
DEPLOYMENT_ENVIRONMENT: "prod"
6460
steps: *builddeploy_steps
6561

66-
deployment-validation-dev:
67-
<<: *node_defaults
68-
environment:
69-
DEPLOYMENT_VALIDATION_ENABLED: "true"
70-
DEPLOYMENT_SMOKE_ENABLED: "false"
71-
V6_BASE_URL: "${DEPLOYMENT_VALIDATION_DEV_BASE_URL}"
72-
steps:
73-
- checkout
74-
- run:
75-
name: Enable pnpm
76-
command: corepack enable
77-
- run:
78-
name: Install dependencies
79-
command: pnpm install --frozen-lockfile
80-
- run:
81-
name: Run deployment validation tests
82-
command: pnpm test:deployment
83-
84-
deployment-validation-prod:
85-
<<: *node_defaults
86-
environment:
87-
DEPLOYMENT_VALIDATION_ENABLED: "true"
88-
DEPLOYMENT_SMOKE_ENABLED: "false"
89-
V6_BASE_URL: "${DEPLOYMENT_VALIDATION_PROD_BASE_URL}"
90-
steps:
91-
- checkout
92-
- run:
93-
name: Enable pnpm
94-
command: corepack enable
95-
- run:
96-
name: Install dependencies
97-
command: pnpm install --frozen-lockfile
98-
- run:
99-
name: Run deployment validation tests
100-
command: pnpm test:deployment
101-
10262
workflows:
10363
version: 2
10464
build-dev:
@@ -109,14 +69,6 @@ workflows:
10969
branches:
11070
only:
11171
- dev
112-
- deployment-validation-dev:
113-
context: org-global
114-
requires:
115-
- build-dev
116-
filters:
117-
branches:
118-
only:
119-
- dev
12072

12173
build-prod:
12274
jobs:
@@ -126,11 +78,3 @@ workflows:
12678
branches:
12779
only:
12880
- master
129-
- deployment-validation-prod:
130-
context: org-global
131-
requires:
132-
- build-prod
133-
filters:
134-
branches:
135-
only:
136-
- master

.env.example

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,19 @@ AUTH0_PROXY_SERVER_URL="https://auth0proxy.topcoder-dev.com"
1212
AUTH0_CLIENT_ID=""
1313
AUTH0_CLIENT_SECRET=""
1414

15-
# Kafka Event Bus
15+
# Bus API client configuration (via tc-bus-api-wrapper)
16+
# KAFKA_URL is retained only for compatibility with shared env packs;
17+
# current wrapper initialization does not use it.
1618
KAFKA_URL="localhost:9092"
19+
KAFKA_ERROR_TOPIC="common.error.reporting"
1720
KAFKA_CLIENT_CERT=""
1821
KAFKA_CLIENT_CERT_KEY=""
1922
BUSAPI_URL="https://api.topcoder-dev.com/v5"
2023

21-
# Project event topics (only active topics)
24+
# Project event topics
2225
KAFKA_PROJECT_CREATED_TOPIC="project.created"
2326
KAFKA_PROJECT_UPDATED_TOPIC="project.updated"
27+
KAFKA_PROJECT_BILLING_ACCOUNT_UPDATED_TOPIC="project.action.billingAccount.update"
2428
KAFKA_PROJECT_DELETED_TOPIC="project.deleted"
2529
KAFKA_PROJECT_MEMBER_ADDED_TOPIC="project.member.added"
2630
KAFKA_PROJECT_MEMBER_REMOVED_TOPIC="project.member.removed"
@@ -55,9 +59,17 @@ INVITE_EMAIL_SECTION_TITLE=""
5559
COPILOT_PORTAL_URL=""
5660
WORK_MANAGER_URL=""
5761
ACCOUNTS_APP_URL=""
62+
# Dedicated project-invite templates:
63+
# - known user (Join/Decline flow): SENDGRID_PROJECT_INVITATION_KNOWN_USER_TEMPLATE_ID
64+
# - unknown email (Register flow): SENDGRID_PROJECT_INVITATION_UNKNOWN_USER_TEMPLATE_ID
65+
# Legacy fallback for both invite types:
5866
SENDGRID_TEMPLATE_PROJECT_MEMBER_INVITED=""
67+
SENDGRID_PROJECT_INVITATION_KNOWN_USER_TEMPLATE_ID=""
68+
SENDGRID_PROJECT_INVITATION_UNKNOWN_USER_TEMPLATE_ID=""
5969
SENDGRID_TEMPLATE_COPILOT_ALREADY_PART_OF_PROJECT=""
6070
SENDGRID_TEMPLATE_INFORM_PM_COPILOT_APPLICATION_ACCEPTED=""
71+
SENDGRID_TEMPLATE_COPILOT_REQUEST_CREATED=""
72+
COPILOTS_SLACK_EMAIL=""
6173
UNIQUE_GMAIL_VALIDATION=false
6274

6375
# API Configuration
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: AI PR Reviewer
2+
3+
on:
4+
pull_request:
5+
types:
6+
- opened
7+
- synchronize
8+
permissions:
9+
pull-requests: write
10+
jobs:
11+
tc-ai-pr-review:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Checkout Repo
15+
uses: actions/checkout@v3
16+
17+
- name: TC AI PR Reviewer
18+
uses: topcoder-platform/tc-ai-pr-reviewer@master
19+
with:
20+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # The GITHUB_TOKEN is there by default so you just need to keep it like it is and not necessarily need to add it as secret as it will throw an error. [More Details](https://docs.github.com/en/actions/security-guides/automatic-token-authentication#about-the-github_token-secret)
21+
LAB45_API_KEY: ${{ secrets.LAB45_API_KEY }}
22+
exclude: '**/*.json, **/*.md, **/*.jpg, **/*.png, **/*.jpeg, **/*.bmp, **/*.webp' # Optional: exclude patterns separated by commas

.github/workflows/trivy.yaml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: Trivy Scanner
2+
3+
permissions:
4+
contents: read
5+
security-events: write
6+
7+
on:
8+
push:
9+
branches:
10+
- dev
11+
pull_request:
12+
13+
jobs:
14+
trivy-scan:
15+
name: Use Trivy
16+
runs-on: ubuntu-24.04
17+
steps:
18+
- name: Checkout code
19+
uses: actions/checkout@v4
20+
21+
- name: Run Trivy scanner in repo mode
22+
uses: aquasecurity/trivy-action@0.34.0
23+
with:
24+
scan-type: fs
25+
ignore-unfixed: true
26+
format: sarif
27+
output: trivy-results.sarif
28+
severity: CRITICAL,HIGH,UNKNOWN
29+
scanners: vuln,secret,misconfig,license
30+
github-pat: ${{ secrets.GITHUB_TOKEN }}
31+
32+
- name: Upload Trivy scan results to GitHub Security tab
33+
uses: github/codeql-action/upload-sarif@v3
34+
with:
35+
sarif_file: trivy-results.sarif

Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
FROM node:22.13.1-alpine
44

5-
RUN apk add --no-cache bash
5+
RUN apk add --no-cache bash git
66
RUN apk update
77

88
ARG RESET_DB_ARG=false
@@ -17,4 +17,4 @@ RUN npm install pnpm -g
1717
RUN pnpm install
1818
RUN pnpm run build
1919
RUN chmod +x appStartUp.sh
20-
CMD ./appStartUp.sh
20+
CMD ./appStartUp.sh

LISTENERS.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
# Kafka Listener Audit for `projects-api-v6` Topics
22

3-
Date: 2026-02-08
3+
Date: 2026-03-04
44
Scope: all top-level services/apps in this monorepo.
55
Excluded per request: `projects-api-v6`, `tc-project-service`.
66

77
## Active topics in `projects-api-v6/.env.example`
88

99
- `project.created`
1010
- `project.updated`
11+
- `project.action.billingAccount.update`
1112
- `project.deleted`
1213
- `project.member.added`
1314
- `project.member.removed`
@@ -22,6 +23,7 @@ No non-excluded service in this monorepo statically subscribes to these topics.
2223
|---|---|---|---|
2324
| `KAFKA_PROJECT_CREATED_TOPIC` | `project.created` | None found | N/A |
2425
| `KAFKA_PROJECT_UPDATED_TOPIC` | `project.updated` | None found | N/A |
26+
| `KAFKA_PROJECT_BILLING_ACCOUNT_UPDATED_TOPIC` | `project.action.billingAccount.update` | None found | N/A |
2527
| `KAFKA_PROJECT_DELETED_TOPIC` | `project.deleted` | None found | N/A |
2628
| `KAFKA_PROJECT_MEMBER_ADDED_TOPIC` | `project.member.added` | None found | N/A |
2729
| `KAFKA_PROJECT_MEMBER_REMOVED_TOPIC` | `project.member.removed` | None found | N/A |

0 commit comments

Comments
 (0)