New package @hanzo/gitlab mirrors @hanzo/github for the GitLab ecosystem (self-managed + gitlab.com). Webhook service over GitLab Project/Group webhooks + REST API v4, built on the published @hanzo/ai and @hanzo/iam. - webhook.ts: constant-time X-Gitlab-Token verify + X-Gitlab-Event routing (pure) - review.ts: GitLab changes → unified diff → windowing/truncation → note (pure) - triage.ts: issue → prompt; parse severity/labels ∩ project labels (pure) - mention.ts: MR/issue thread + @hanzo question → answer (pure) - gitlab-api.ts: thin REST v4 fetch wrappers (getMRChanges, listLabels, createMRNote/createIssueNote, addIssueLabels, getNotes) - hanzo.ts: one path to the model via @hanzo/ai (api.hanzo.ai /v1) - config.ts: env boundary (GITLAB_BASE_URL/TOKEN/WEBHOOK_SECRET, HANZO_API_KEY) - app.ts + server.ts: compose the pure cores; HTTP boundary with token gate, health probe, 202 ACK + graceful shutdown 97 vitest tests green, tsc --noEmit clean, build produces dist. Registered packages/gitlab in pnpm-workspace.yaml.
37 lines
744 B
YAML
37 lines
744 B
YAML
packages:
|
|
- 'packages/ai'
|
|
- 'packages/aci'
|
|
- 'packages/auth'
|
|
- 'packages/browser'
|
|
- 'packages/canva'
|
|
- 'packages/cards'
|
|
- 'packages/clio'
|
|
- 'packages/docusign'
|
|
- 'packages/dxt'
|
|
- 'packages/figma'
|
|
- 'packages/github'
|
|
- 'packages/gitlab'
|
|
- 'packages/gworkspace'
|
|
- 'packages/hubspot'
|
|
- 'packages/jetbrains'
|
|
- 'packages/jupyter'
|
|
- 'packages/mcp'
|
|
- 'packages/meetings'
|
|
- 'packages/notion'
|
|
- 'packages/office'
|
|
- 'packages/outlook'
|
|
- 'packages/pdf'
|
|
- 'packages/raycast'
|
|
- 'packages/salesforce'
|
|
- 'packages/shopify'
|
|
- 'packages/sketch'
|
|
- 'packages/slack'
|
|
- 'packages/teams'
|
|
- 'packages/tools'
|
|
- 'packages/vscode'
|
|
- 'packages/zendesk'
|
|
- 'apps/*'
|
|
|
|
onlyBuiltDependencies:
|
|
- better-sqlite3
|