{
  "name": "rhachet-roles-ghlitch",
  "author": "ehmpathy",
  "description": "observability, deployment, diagnostics, budgets, alerts, and security roles and skills, via rhachet",
  "private": false,
  "version": "0.4.0",
  "repository": "ehmpathy/rhachet-roles-ghlitch",
  "homepage": "https://github.com/ehmpathy/rhachet-roles-ghlitch",
  "keywords": [
    "rhachet",
    "roles",
    "observability",
    "deployment",
    "diagnostics",
    "budgets",
    "alerts",
    "security"
  ],
  "bugs": "https://github.com/ehmpathy/rhachet-roles-ghlitch/issues",
  "license": "MIT",
  "main": "dist/index.js",
  "exports": {
    ".": "./dist/index.js",
    "./cli": "./dist/contract/cli/index.js",
    "./package.json": "./package.json"
  },
  "engines": {
    "node": ">=8.0.0"
  },
  "files": [
    "/dist",
    "rhachet.repo.yml"
  ],
  "scripts": {
    "build:ts": "tsc -p ./tsconfig.build.json",
    "commit:with-cli": "npx cz",
    "fix:format:biome": "biome check --write",
    "fix:format": "npm run fix:format:biome",
    "fix:lint": "biome check --write",
    "fix": "npm run fix:format && npm run fix:lint",
    "build:clean:bun": "rm -f ./bin/*.bc",
    "build:clean:tsc": "(chmod -R u+w dist 2>/dev/null || true) && rm -rf dist/",
    "build:clean": "npm run build:clean:tsc && npm run build:clean:bun",
    "build:compile:tsc": "tsc -p ./tsconfig.build.json && tsc-alias -p ./tsconfig.build.json",
    "build:compile": "npm run build:compile:tsc && npm run build:compile:bun --if-present",
    "build:complete:dist": "rsync -a --prune-empty-dirs --include='*/' --exclude='**/.route/**' --exclude='**/.scratch/**' --exclude='**/.behavior/**' --exclude='**/__test_assets__/**' --exclude='**/*.test.sh' --include='**/readme.md' --include='**/*.template.md' --include='**/briefs/**/*.md' --include='**/briefs/**/*.min' --include='**/briefs/*.md' --include='**/briefs/*.min' --include='**/skills/**/*.sh' --include='**/skills/*.sh' --include='**/skills/**/*.ts' --include='**/skills/*.ts' --include='**/skills/**/*.jsonc' --include='**/skills/*.jsonc' --include='**/skills/**/*.stone' --include='**/skills/**/*.guard' --include='**/inits/**/*.sh' --include='**/inits/*.sh' --include='**/inits/**/*.jsonc' --include='**/inits/*.jsonc' --include='**/keyrack.yml' --include='**/boot.yml' --exclude='*' src/ dist/",
    "build:complete:repo": "npx rhachet repo introspect",
    "build:complete": "npm run build:complete:dist && npm run build:complete:repo",
    "build": "npm run build:clean && npm run build:compile && npm run build:complete --if-present",
    "start:testdb": "docker compose -f provision/docker/testdb/docker-compose.yml up -d --wait",
    "stop:testdb": "docker compose -f provision/docker/testdb/docker-compose.yml down",
    "test:commits": "LAST_TAG=$(git describe --tags --abbrev=0 @^ 2> /dev/null || git rev-list --max-parents=0 HEAD) && npx commitlint --from $LAST_TAG --to HEAD --verbose",
    "test:types": "tsc -p ./tsconfig.json --noEmit",
    "test:format:biome": "biome format",
    "test:format": "npm run test:format:biome",
    "test:lint:deps": "npx depcheck -c ./.depcheckrc.yml",
    "test:integration:hold": "jest -c ./jest.integration.config.ts --forceExit --verbose --passWithNoTests $([ -z $THOROUGH ] && echo '--changedSince=main')",
    "test:lint:biome": "biome check --diagnostic-level=error",
    "test:lint:biome:all": "biome check",
    "test:lint": "npm run test:lint:biome && npm run test:lint:cycles && npm run test:lint:deps",
    "test:unit": "set -eu && jest -c ./jest.unit.config.ts --forceExit --verbose --passWithNoTests $([ -n \"${CI:-}\" ] && echo '--ci') $([ \"${THOROUGH:-}\" != \"true\" ] && echo '--changedSince=main') $([ \"${RESNAP:-}\" = \"true\" ] && echo '--updateSnapshot')",
    "test:integration": "set -eu && jest -c ./jest.integration.config.ts --forceExit --verbose --passWithNoTests $([ -n \"${CI:-}\" ] && echo '--ci') $([ \"${THOROUGH:-}\" != \"true\" ] && echo '--changedSince=main') $([ \"${RESNAP:-}\" = \"true\" ] && echo '--updateSnapshot')",
    "test:acceptance:locally": "set -eu && npm run build && LOCALLY=true jest -c ./jest.acceptance.config.ts --forceExit --verbose --runInBand --passWithNoTests $([ \"${RESNAP:-}\" = \"true\" ] && echo '--updateSnapshot')",
    "test": "set -eu && npm run test:commits && npm run test:types && npm run test:format && npm run test:lint && npm run test:unit && npm run test:integration && npm run test:acceptance:locally",
    "test:acceptance": "set -eu && npm run build && jest -c ./jest.acceptance.config.ts --forceExit --verbose --runInBand --passWithNoTests $([ -n \"${CI:-}\" ] && echo '--ci') $([ \"${RESNAP:-}\" = \"true\" ] && echo '--updateSnapshot')",
    "prepush": "npm run test && npm run build",
    "prepublish": "npm run build",
    "preversion": "npm run prepush",
    "postversion": "git push origin HEAD --tags --no-verify",
    "prepare:husky": "husky install && chmod ug+x .husky/*",
    "prepare:rhachet": "npm run build && rhachet init --keys --hooks --roles mechanic behaver driver reviewer librarian ergonomist architect dispatcher observer operator deployer",
    "prepare": "if [ -e .git ] && [ -z $CI ]; then npm run prepare:husky && npm run prepare:rhachet; fi",
    "test:lint:cycles": "dpdm --no-warning --no-tree --transform --exit-code circular:1 --exclude \"$(yq -r '.exclude | join(\"|\") // \"^$\"' .dpdmrc.yaml)\" 'src/**/!(*.test).ts'",
    "upgrade:rhachet": "rhachet upgrade"
  },
  "dependencies": {
    "as-procedure": "1.1.7",
    "declastruct-aws": "1.5.2",
    "declastruct-unix-network": "1.0.5",
    "domain-objects": "0.31.13",
    "helpful-errors": "1.7.3",
    "type-fns": "1.21.3",
    "zod": "4.3.4"
  },
  "devDependencies": {
    "@biomejs/biome": "2.3.8",
    "@commitlint/cli": "19.5.0",
    "@commitlint/config-conventional": "19.5.0",
    "@jest/globals": "30.2.0",
    "@swc/core": "1.15.3",
    "@swc/jest": "0.2.39",
    "@tsconfig/node20": "20.1.5",
    "@tsconfig/strictest": "2.0.5",
    "@types/jest": "30.0.0",
    "@types/node": "22.15.21",
    "@types/pg": "8.11.6",
    "cz-conventional-changelog": "3.3.0",
    "declapract": "0.13.27",
    "declapract-typescript-ehmpathy": "0.49.3",
    "declastruct": "1.9.1",
    "declastruct-github": "1.4.0",
    "depcheck": "1.4.3",
    "dpdm": "4.0.1",
    "esbuild-register": "3.6.0",
    "husky": "8.0.3",
    "jest": "30.2.0",
    "pg": "8.13.0",
    "playwright": "1.60.0",
    "rhachet": "1.50.1",
    "rhachet-brains-anthropic": "0.4.3",
    "rhachet-brains-fireworksai": "0.2.3",
    "rhachet-brains-openrouter": "0.1.4",
    "rhachet-brains-xai": "0.3.3",
    "rhachet-roles-bhrain": "0.42.4",
    "rhachet-roles-bhrowser": "0.1.0",
    "rhachet-roles-bhuild": "0.24.0",
    "rhachet-roles-ehmpathy": "1.41.0",
    "rhachet-roles-ghlitch": "0.3.0",
    "rhachet-roles-rhachet": "0.1.7",
    "test-fns": "1.15.8",
    "tsc-alias": "1.8.10",
    "tsx": "4.20.6",
    "typescript": "5.4.5",
    "yalc": "1.0.0-pre.53"
  },
  "config": {
    "commitizen": {
      "path": "./node_modules/cz-conventional-changelog"
    }
  },
  "packageManager": "pnpm@10.24.0"
}
