forked from claude-did-this/claude-hub
- Add combined coverage script to merge lcov reports - Update GitHub workflows to generate and upload combined coverage - Install missing CLI dependencies (ora, yaml, cli-table3, mock-fs) - Add initial tests for SessionManager and IssueHandler - Exclude type-only files from coverage metrics - Update jest config to exclude type files from coverage This ensures Codecov receives coverage data from both the main project and CLI subdirectory, providing accurate overall project coverage metrics.
79 lines
2.8 KiB
JSON
79 lines
2.8 KiB
JSON
{
|
|
"name": "claude-github-webhook",
|
|
"version": "0.1.1",
|
|
"description": "A webhook endpoint for Claude to perform git and GitHub actions",
|
|
"main": "dist/index.js",
|
|
"scripts": {
|
|
"build": "tsc",
|
|
"build:watch": "tsc --watch",
|
|
"start": "node dist/index.js",
|
|
"start:dev": "node dist/index.js",
|
|
"dev": "ts-node src/index.ts",
|
|
"dev:watch": "nodemon --exec ts-node src/index.ts",
|
|
"clean": "rm -rf dist",
|
|
"typecheck": "tsc --noEmit",
|
|
"test": "jest --testPathPattern='test/(unit|integration).*\\.test\\.(js|ts)$'",
|
|
"test:unit": "jest --testMatch='**/test/unit/**/*.test.{js,ts}'",
|
|
"test:integration": "jest --testMatch='**/test/integration/**/*.test.{js,ts}'",
|
|
"test:e2e": "jest --testMatch='**/test/e2e/**/*.test.{js,ts}'",
|
|
"test:coverage": "jest --coverage",
|
|
"test:watch": "jest --watch",
|
|
"test:ci": "jest --ci --coverage --testPathPattern='test/(unit|integration).*\\.test\\.(js|ts)$'",
|
|
"test:combined-coverage": "./scripts/combine-coverage.js",
|
|
"test:docker": "docker-compose -f docker-compose.test.yml run --rm test",
|
|
"test:docker:integration": "docker-compose -f docker-compose.test.yml run --rm integration-test",
|
|
"test:docker:e2e": "docker-compose -f docker-compose.test.yml run --rm e2e-test",
|
|
"pretest": "./scripts/utils/ensure-test-dirs.sh",
|
|
"lint": "eslint src/ test/ --fix",
|
|
"lint:check": "eslint src/ test/",
|
|
"format": "prettier --write src/ test/",
|
|
"format:check": "prettier --check src/ test/",
|
|
"security:audit": "npm audit --audit-level=moderate",
|
|
"security:fix": "npm audit fix",
|
|
"setup:dev": "husky install",
|
|
"setup:hooks": "husky",
|
|
"prepare": "husky || true"
|
|
},
|
|
"dependencies": {
|
|
"@octokit/rest": "^22.0.0",
|
|
"axios": "^1.6.2",
|
|
"body-parser": "^2.2.0",
|
|
"commander": "^14.0.0",
|
|
"dotenv": "^16.3.1",
|
|
"express": "^5.1.0",
|
|
"express-rate-limit": "^7.5.0",
|
|
"pino": "^9.7.0",
|
|
"pino-pretty": "^13.0.0",
|
|
"typescript": "^5.8.3",
|
|
"uuid": "^11.1.0"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/core": "^7.27.3",
|
|
"@babel/preset-env": "^7.27.2",
|
|
"@jest/globals": "^30.0.0-beta.3",
|
|
"@types/body-parser": "^1.19.5",
|
|
"@types/express": "^5.0.2",
|
|
"@types/jest": "^29.5.14",
|
|
"@types/node": "^22.15.23",
|
|
"@types/supertest": "^6.0.3",
|
|
"@types/uuid": "^10.0.0",
|
|
"@typescript-eslint/eslint-plugin": "^8.33.0",
|
|
"@typescript-eslint/parser": "^8.33.0",
|
|
"babel-jest": "^29.7.0",
|
|
"eslint": "^9.27.0",
|
|
"eslint-config-node": "^4.1.0",
|
|
"eslint-config-prettier": "^10.1.5",
|
|
"husky": "^9.1.7",
|
|
"jest": "^29.7.0",
|
|
"jest-junit": "^16.0.0",
|
|
"nodemon": "^3.0.1",
|
|
"prettier": "^3.0.0",
|
|
"supertest": "^7.1.1",
|
|
"ts-jest": "^29.3.4",
|
|
"ts-node": "^10.9.2"
|
|
},
|
|
"engines": {
|
|
"node": ">=20.0.0"
|
|
}
|
|
}
|