Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
469b618
feat(company): add company package and integrate into various apps
carhartlewis Feb 12, 2026
01acf22
feat(app-shell): update company section to tasks and adjust sidebar
carhartlewis Feb 12, 2026
26911fe
feat(documents): add document management features and update routing
carhartlewis Feb 13, 2026
5da9e52
style(policy): simplify button formatting and improve layout consistency
carhartlewis Feb 13, 2026
832c6a3
feat(org-chart): add email extension and integrate into build process
carhartlewis Feb 13, 2026
2eef30c
feat(documents): add concise form descriptions and refactor usage
carhartlewis Feb 13, 2026
ba3beec
docs(openapi): update org chart and evidence forms endpoints
carhartlewis Feb 13, 2026
2803246
Merge branch 'main' into lewis/comp-company-tasks
carhartlewis Feb 13, 2026
29a22fe
feat(tasks): pass organizationId to PolicyImageUploadModal
carhartlewis Feb 13, 2026
3a68a08
feat(tasks): pass organizationId to PolicyImageUploadModal
carhartlewis Feb 13, 2026
de65b33
fix(automation): clarify automation agent's data retrieval capabiliti…
github-actions[bot] Feb 12, 2026
1f540b1
fix: policy version API content bug + published version protection (#…
github-actions[bot] Feb 12, 2026
2e5c1c2
chore(release): 1.82.3 [skip ci]
semantic-release-bot Feb 12, 2026
b34e05b
feat(portal): add form visibility toggles and improve form layout
carhartlewis Feb 13, 2026
338a924
Merge branch 'lewis/comp-company-tasks' of https://github.com/trycomp…
carhartlewis Feb 13, 2026
0d9ef3a
fix(evidence-forms): add validation for submission status before review
carhartlewis Feb 13, 2026
a129c50
feat(findings): add support for evidence submissions in findings
carhartlewis Feb 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
259 changes: 128 additions & 131 deletions apps/api/package.json
Original file line number Diff line number Diff line change
@@ -1,134 +1,131 @@
{
"name": "@comp/api",
"description": "",
"version": "0.0.1",
"author": "",
"dependencies": {
"@ai-sdk/anthropic": "^2.0.53",
"@ai-sdk/groq": "^2.0.32",
"@ai-sdk/openai": "^2.0.65",
"@aws-sdk/client-s3": "^3.859.0",
"@aws-sdk/client-securityhub": "^3.948.0",
"@aws-sdk/client-sts": "^3.948.0",
"@aws-sdk/s3-request-presigner": "^3.859.0",
"@browserbasehq/sdk": "^2.6.0",
"@browserbasehq/stagehand": "^3.0.5",
"@comp/integration-platform": "workspace:*",
"@mendable/firecrawl-js": "^4.9.3",
"@nestjs/common": "^11.0.1",
"@nestjs/config": "^4.0.2",
"@nestjs/core": "^11.0.1",
"@nestjs/platform-express": "^11.1.5",
"@nestjs/swagger": "^11.2.0",
"@nestjs/throttler": "^6.5.0",
"@prisma/client": "6.18.0",
"@prisma/instrumentation": "^6.13.0",
"@react-email/components": "^0.0.41",
"@trigger.dev/build": "4.0.6",
"@trigger.dev/sdk": "4.0.6",
"@trycompai/db": "1.3.22",
"@trycompai/email": "workspace:*",
"@upstash/redis": "^1.34.2",
"@upstash/vector": "^1.2.2",
"adm-zip": "^0.5.16",
"ai": "^5.0.60",
"archiver": "^7.0.1",
"axios": "^1.12.2",
"better-auth": "^1.3.27",
"class-transformer": "^0.5.1",
"class-validator": "^0.14.2",
"dotenv": "^17.2.3",
"esbuild": "^0.27.1",
"exceljs": "^4.4.0",
"express": "^4.21.2",
"helmet": "^8.1.0",
"jose": "^6.0.12",
"jspdf": "^3.0.3",
"mammoth": "^1.8.0",
"nanoid": "^5.1.6",
"pdf-lib": "^1.17.1",
"playwright-core": "^1.57.0",
"prisma": "6.18.0",
"react": "^19.1.1",
"react-dom": "^19.1.0",
"reflect-metadata": "^0.2.2",
"resend": "^6.4.2",
"rxjs": "^7.8.1",
"safe-stable-stringify": "^2.5.0",
"swagger-ui-express": "^5.0.1",
"xlsx": "^0.18.5",
"zod": "^4.0.14"
},
"devDependencies": {
"@eslint/eslintrc": "^3.2.0",
"@eslint/js": "^9.18.0",
"@nestjs/cli": "^11.0.0",
"@nestjs/schematics": "^11.0.0",
"@nestjs/testing": "^11.0.1",
"@types/adm-zip": "^0.5.7",
"@types/archiver": "^6.0.3",
"@types/express": "^5.0.0",
"@types/jest": "^30.0.0",
"@types/multer": "^1.4.12",
"@types/node": "^24.0.3",
"@types/supertest": "^6.0.2",
"@types/swagger-ui-express": "^4.1.8",
"eslint": "^9.18.0",
"eslint-config-prettier": "^10.0.1",
"eslint-plugin-prettier": "^5.2.2",
"globals": "^16.0.0",
"jest": "^30.0.0",
"prettier": "^3.5.3",
"source-map-support": "^0.5.21",
"supertest": "^7.0.0",
"ts-jest": "^29.2.5",
"ts-loader": "^9.5.2",
"ts-node": "^10.9.2",
"tsconfig-paths": "^4.2.0",
"typescript": "^5.8.3",
"typescript-eslint": "^8.20.0"
},
"jest": {
"moduleFileExtensions": [
"js",
"json",
"ts"
],
"rootDir": "src",
"testRegex": ".*\\.spec\\.ts$",
"transform": {
"^.+\\.(t|j)s$": "ts-jest"
"name": "@comp/api",
"description": "",
"version": "0.0.1",
"author": "",
"dependencies": {
"@ai-sdk/anthropic": "^2.0.53",
"@ai-sdk/groq": "^2.0.32",
"@ai-sdk/openai": "^2.0.65",
"@aws-sdk/client-s3": "^3.859.0",
"@aws-sdk/client-securityhub": "^3.948.0",
"@aws-sdk/client-sts": "^3.948.0",
"@aws-sdk/s3-request-presigner": "^3.859.0",
"@browserbasehq/sdk": "^2.6.0",
"@browserbasehq/stagehand": "^3.0.5",
"@comp/company": "workspace:*",
"@comp/integration-platform": "workspace:*",
"@mendable/firecrawl-js": "^4.9.3",
"@nestjs/common": "^11.0.1",
"@nestjs/config": "^4.0.2",
"@nestjs/core": "^11.0.1",
"@nestjs/platform-express": "^11.1.5",
"@nestjs/swagger": "^11.2.0",
"@nestjs/throttler": "^6.5.0",
"@prisma/client": "6.18.0",
"@prisma/instrumentation": "^6.13.0",
"@react-email/components": "^0.0.41",
"@trigger.dev/build": "4.0.6",
"@trigger.dev/sdk": "4.0.6",
"@trycompai/db": "1.3.22",
"@trycompai/email": "workspace:*",
"@upstash/redis": "^1.34.2",
"@upstash/vector": "^1.2.2",
"adm-zip": "^0.5.16",
"ai": "^5.0.60",
"archiver": "^7.0.1",
"axios": "^1.12.2",
"better-auth": "^1.3.27",
"class-transformer": "^0.5.1",
"class-validator": "^0.14.2",
"dotenv": "^17.2.3",
"esbuild": "^0.27.1",
"exceljs": "^4.4.0",
"express": "^4.21.2",
"helmet": "^8.1.0",
"jose": "^6.0.12",
"jspdf": "^3.0.3",
"mammoth": "^1.8.0",
"nanoid": "^5.1.6",
"pdf-lib": "^1.17.1",
"playwright-core": "^1.57.0",
"prisma": "6.18.0",
"react": "^19.1.1",
"react-dom": "^19.1.0",
"reflect-metadata": "^0.2.2",
"resend": "^6.4.2",
"rxjs": "^7.8.1",
"safe-stable-stringify": "^2.5.0",
"swagger-ui-express": "^5.0.1",
"xlsx": "^0.18.5",
"zod": "^4.0.14"
},
"collectCoverageFrom": [
"**/*.(t|j)s"
],
"coverageDirectory": "../coverage",
"testEnvironment": "node"
},
"license": "UNLICENSED",
"private": true,
"scripts": {
"build": "nest build",
"build:docker": "bunx prisma generate && nest build",
"db:generate": "bun run db:getschema && bunx prisma generate",
"db:getschema": "node ../../packages/db/scripts/combine-schemas.js && cp ../../packages/db/dist/schema.prisma prisma/schema.prisma",
"db:migrate": "cd ../../packages/db && bunx prisma migrate dev && cd ../../apps/api",
"deploy:trigger-prod": "npx trigger.dev@4.0.6 deploy",
"dev": "bunx concurrently --kill-others --names \"nest,trigger\" --prefix-colors \"green,blue\" \"nest start --watch\" \"bunx trigger.dev@4.0.6 dev\"",
"dev:nest": "nest start --watch",
"dev:trigger": "bunx trigger.dev@4.0.6 dev",
"format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
"lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix",
"prebuild": "bun run db:generate",
"start": "nest start",
"start:debug": "nest start --debug --watch",
"start:dev": "nest start --watch",
"start:prod": "node dist/main",
"test": "jest",
"test:cov": "jest --coverage",
"test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
"test:e2e": "jest --config ./test/jest-e2e.json",
"test:watch": "jest --watch",
"typecheck": "tsc --noEmit"
}
"devDependencies": {
"@eslint/eslintrc": "^3.2.0",
"@eslint/js": "^9.18.0",
"@nestjs/cli": "^11.0.0",
"@nestjs/schematics": "^11.0.0",
"@nestjs/testing": "^11.0.1",
"@types/adm-zip": "^0.5.7",
"@types/archiver": "^6.0.3",
"@types/express": "^5.0.0",
"@types/jest": "^30.0.0",
"@types/multer": "^1.4.12",
"@types/node": "^24.0.3",
"@types/supertest": "^6.0.2",
"@types/swagger-ui-express": "^4.1.8",
"eslint": "^9.18.0",
"eslint-config-prettier": "^10.0.1",
"eslint-plugin-prettier": "^5.2.2",
"globals": "^16.0.0",
"jest": "^30.0.0",
"prettier": "^3.5.3",
"source-map-support": "^0.5.21",
"supertest": "^7.0.0",
"ts-jest": "^29.2.5",
"ts-loader": "^9.5.2",
"ts-node": "^10.9.2",
"tsconfig-paths": "^4.2.0",
"typescript": "^5.8.3",
"typescript-eslint": "^8.20.0"
},
"jest": {
"moduleFileExtensions": [
"js", "json", "ts"
],
"rootDir": "src",
"testRegex": ".*\\.spec\\.ts$",
"transform": {
"^.+\\.(t|j)s$": "ts-jest"
},
"collectCoverageFrom": ["**/*.(t|j)s"],
"coverageDirectory": "../coverage",
"testEnvironment": "node"
},
"license": "UNLICENSED",
"private": true,
"scripts": {
"build": "nest build",
"build:docker": "bunx prisma generate && nest build",
"db:generate": "bun run db:getschema && bunx prisma generate",
"db:getschema": "node ../../packages/db/scripts/combine-schemas.js && cp ../../packages/db/dist/schema.prisma prisma/schema.prisma",
"db:migrate": "cd ../../packages/db && bunx prisma migrate dev && cd ../../apps/api",
"deploy:trigger-prod": "npx trigger.dev@4.0.6 deploy",
"dev": "bunx concurrently --kill-others --names \"nest,trigger\" --prefix-colors \"green,blue\" \"nest start --watch\" \"bunx trigger.dev@4.0.6 dev\"",
"dev:nest": "nest start --watch",
"dev:trigger": "bunx trigger.dev@4.0.6 dev",
"format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
"lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix",
"prebuild": "bun run db:generate",
"start": "nest start",
"start:debug": "nest start --debug --watch",
"start:dev": "nest start --watch",
"start:prod": "node dist/main",
"test": "jest",
"test:cov": "jest --coverage",
"test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
"test:e2e": "jest --config ./test/jest-e2e.json",
"test:watch": "jest --watch",
"typecheck": "tsc --noEmit"
}
}
2 changes: 2 additions & 0 deletions apps/api/src/app.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ import { TaskManagementModule } from './task-management/task-management.module';
import { AssistantChatModule } from './assistant-chat/assistant-chat.module';
import { OrgChartModule } from './org-chart/org-chart.module';
import { TrainingModule } from './training/training.module';
import { EvidenceFormsModule } from './evidence-forms/evidence-forms.module';

@Module({
imports: [
Expand Down Expand Up @@ -82,6 +83,7 @@ import { TrainingModule } from './training/training.module';
AssistantChatModule,
TrainingModule,
OrgChartModule,
EvidenceFormsModule,
],
controllers: [AppController],
providers: [
Expand Down
Loading