Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
128 commits
Select commit Hold shift + click to select a range
44ea61e
feat(ghl): add fleet server, Helm chart, Dockerfile, and REPOS.yaml
himanshuranjann Apr 14, 2026
4a9e457
chore(repos): regenerate REPOS.yaml from live GoHighLevel GitHub org
himanshuranjann Apr 14, 2026
3fa3263
feat(ghl): fix hosted MCP transport for Cloud Run
himanshuranjann Apr 15, 2026
d928888
docs: add CBM vs Project Orion comparison
himanshuranjann Apr 15, 2026
7693862
Update CBM_VS_PROJECT_ORION_COMPARISON.md
himanshuranjann Apr 15, 2026
64d788f
feat: speed up fleet indexing and scope local registry
himanshuranjann Apr 15, 2026
f8e2b27
fix: reuse cached clones when github auth is unavailable
himanshuranjann Apr 15, 2026
45545ea
chore: shrink cloud build context
himanshuranjann Apr 15, 2026
9528642
fix: move cbm sqlite cache back to local disk
himanshuranjann Apr 15, 2026
b8f3158
fix: restore fleet indexing from local clone cache
himanshuranjann Apr 15, 2026
46dd569
fix: use stable local clone path for project discovery
himanshuranjann Apr 15, 2026
f0b8925
feat: add repo discovery MCP tool
himanshuranjann Apr 15, 2026
4995912
fix: replace timed out discovery clients
himanshuranjann Apr 15, 2026
4fd2314
fix: replenish timed out discovery clients asynchronously
himanshuranjann Apr 15, 2026
9e0d716
fix: bound discovery candidate probing
himanshuranjann Apr 15, 2026
b7da336
chore: add platform-core to local fleet manifest
himanshuranjann Apr 15, 2026
974f23e
feat: add github org auth for ghl fleet
himanshuranjann Apr 15, 2026
44fa46e
fix(mcp): correct project metadata and snippet paths
himanshuranjann Apr 16, 2026
1214473
fix(ghl): pool bridge MCP clients and shed overload
himanshuranjann Apr 16, 2026
02b14ae
Merge branch 'feature/cbm-mcp-scale' into feature/uptrace-codebase-me…
himanshuranjann Apr 16, 2026
5a8f459
fix(ghl): retire dead indexer clients and add GCS artifact persistence
himanshuranjann Apr 17, 2026
8751b27
Merge pull request #2 from himanshuranjann/feature/uptrace-codebase-m…
himanshuranjann Apr 17, 2026
b0a7a7a
feat(indexer): add OnAllComplete callback for post-fleet processing
himanshuranjann Apr 17, 2026
fe76124
chore: add modernc.org/sqlite pure-Go dependency
himanshuranjann Apr 17, 2026
06994f4
feat(cachepersist): add PersistOrgGraph and HydrateOrgGraph for org.d…
himanshuranjann Apr 17, 2026
32c57c9
feat(enricher): add regex-based NestJS decorator and InternalRequest …
himanshuranjann Apr 17, 2026
607dc48
feat(orgdb): add org.db schema with 10 tables for cross-repo intellig…
himanshuranjann Apr 17, 2026
01291b1
feat(enricher): add EnrichRepo orchestrator walking repos for NestJS …
himanshuranjann Apr 17, 2026
1456607
feat(orgdb): add UpsertRepo and UpsertTeamOwnership CRUD methods
himanshuranjann Apr 17, 2026
2ac2366
feat(orgdb): add package.json dependency parser for GHL internal scopes
himanshuranjann Apr 17, 2026
098588a
feat(orgdb): add bulk write methods for enrichment data
himanshuranjann Apr 17, 2026
c45a5c2
feat(orgdb): add query methods for dependents, blast radius, flow tra…
himanshuranjann Apr 17, 2026
5e8dd8f
feat(orgtools): add org tool service with 5 MCP tool handlers
himanshuranjann Apr 17, 2026
888b0df
feat(bridge): wire org tools into MCP bridge routing
himanshuranjann Apr 17, 2026
2743856
feat(main): wire org graph, enricher, and org tools into fleet server
himanshuranjann Apr 17, 2026
b6db83f
feat(orgdiscovery): add GitHub API-based org repo scanner replacing R…
himanshuranjann Apr 17, 2026
3ed2bc7
feat(orgdiscovery): add CODEOWNERS ownership, framework detection, an…
himanshuranjann Apr 18, 2026
8839c08
feat(main): wire orgdiscovery replacing REPOS.yaml with GitHub API-dr…
himanshuranjann Apr 18, 2026
75f655e
fix(main): move org discovery to background goroutine to prevent star…
himanshuranjann Apr 18, 2026
6e561f7
fix(main): add GITHUB_ORG_SCAN_TOKEN for full org discovery + replace…
himanshuranjann Apr 18, 2026
cf425aa
fix(cachepersist): implement PersistOrgDB/HydrateOrgDB on GCS backend
himanshuranjann Apr 18, 2026
391dda0
fix(main): persist org.db to GCS every 50 repos to survive container …
himanshuranjann Apr 18, 2026
e2d6e97
fix: persist org.db every 10 repos instead of 50 for Cloud Run resili…
himanshuranjann Apr 18, 2026
8a31bb7
fix(orgdiscovery): accurate team mapping from GitHub Teams API + name…
himanshuranjann Apr 18, 2026
ecabbe5
feat(orgdiscovery): 98.5% team coverage via Teams API + name inferenc…
himanshuranjann Apr 18, 2026
e950996
fix(pipeline): populate org.db from hydrated project DBs, not source …
himanshuranjann Apr 18, 2026
4b85342
fix: use discoveryPool for org.db population (bridgePool crashes with…
himanshuranjann Apr 18, 2026
70c8e0d
fix: correct project name prefix stripping and JSON field mapping for…
himanshuranjann Apr 18, 2026
1d5f81a
fix: simplify org.db population to single list_projects call (no per-…
himanshuranjann Apr 18, 2026
751ae9c
fix(pipeline): read project .db files directly from disk instead of M…
himanshuranjann Apr 18, 2026
93aa5f2
fix: remove direct .db file reading that crashes C binary bridge pool
himanshuranjann Apr 18, 2026
4fe21be
feat(pipeline): 3-phase org.db population with get_architecture for r…
himanshuranjann Apr 18, 2026
cbdc4e6
fix(pool): bridge pool retires dead C binary clients + phase 2 circui…
himanshuranjann Apr 18, 2026
2b96ff9
feat(pipeline): wait for GCS data readiness before phase 2
himanshuranjann Apr 18, 2026
c9ca31c
fix(pipeline): use search_graph(label=Route) instead of get_architecture
himanshuranjann Apr 18, 2026
acc48c8
feat(pipeline): 4-phase org.db population with consumer contracts + p…
himanshuranjann Apr 18, 2026
2646189
fix(pipeline): robust InternalRequest parsing for consumer contracts
himanshuranjann Apr 18, 2026
61ff350
fix(org): prevent scheduled indexer from destroying startup pipeline …
himanshuranjann Apr 19, 2026
173d24e
feat(pipeline): add PopulateRepoData and org enrichment tests
himanshuranjann Apr 19, 2026
c613350
perf(pipeline): full parallelism — 8 workers per phase, all phases co…
himanshuranjann Apr 19, 2026
476b506
fix(org): re-open org.db after GCS hydration to ensure schema exists
himanshuranjann Apr 19, 2026
8002fde
fix(org): convert __ path separators to / for cross-reference matching
himanshuranjann Apr 19, 2026
f9e31a8
fix(org): call FixRoutePaths before CrossReferenceContracts in pipeline
himanshuranjann Apr 19, 2026
3cf130f
debug(org): add cross-reference debug logging + fix INSTR in FixRoute…
himanshuranjann Apr 19, 2026
15fcf27
debug(org): enhanced cross-ref logging with prefix overlap analysis
himanshuranjann Apr 19, 2026
aff6189
fix(org): two-pass cross-reference with prefix-only fallback + ANY me…
himanshuranjann Apr 19, 2026
21cf5c0
fix(reliability): multi-pod production hardening for 1000-dev scale
himanshuranjann Apr 19, 2026
0b331c5
fix(org): SetDB on OrgService for safe DB swap during periodic sync
himanshuranjann Apr 19, 2026
221932c
fix(indexer): remove stale .git/index.lock before git reset
himanshuranjann Apr 19, 2026
ecb3a04
feat(org): add org_code_search — cross-repo code search with fan-out
himanshuranjann Apr 19, 2026
abeb8c5
fix(indexer): also remove HEAD.lock and config.lock stale files
himanshuranjann Apr 19, 2026
5521c23
fix(org): prefix project names for C binary in org_code_search
himanshuranjann Apr 19, 2026
e3b0263
debug(org): add logging to org_code_search for diagnosis
himanshuranjann Apr 19, 2026
c3fe5b1
fix(org): fallback to all repos when node_count is unpopulated
himanshuranjann Apr 19, 2026
926d42f
fix(indexer): persist .db to GCS after manual/webhook index
himanshuranjann Apr 19, 2026
2a72843
fix(indexer): add 10-min timeout + start log for manual index
himanshuranjann Apr 19, 2026
e8ef360
fix(indexer): auto-recover from corrupt git clone (nuke + re-clone)
himanshuranjann Apr 19, 2026
7656c5b
fix(indexer): increase timeouts for large monorepo cloning on GCS Fuse
himanshuranjann Apr 19, 2026
489f6c5
fix(mcp): increase scanner buffer from 4MB to 64MB for large monorepos
himanshuranjann Apr 19, 2026
d938ee1
debug(mcp): capture C binary stderr for crash diagnostics
himanshuranjann Apr 19, 2026
0179510
feat: parallel hydration (32 workers) + disable mmap + 64MB scanner
himanshuranjann Apr 19, 2026
ec60028
feat(indexer): PROJECT_NAME_PREFIX env var for consistent naming on t…
himanshuranjann Apr 19, 2026
b0b236f
fix(indexer): rename .db from C binary name to prefix name before per…
himanshuranjann Apr 19, 2026
85eb07f
fix(indexer): update internal SQLite project name after .db rename
himanshuranjann Apr 19, 2026
6f470ff
fix(indexer): pass project name to C binary, skip stale repos
himanshuranjann Apr 20, 2026
15e063c
chore: add cloudbuild config
himanshuranjann Apr 20, 2026
8ece039
merge origin/main: include all packages (auth, bridge, manifest, webh…
himanshuranjann Apr 20, 2026
3bc2c57
fix: hardcode org graph to always-on, remove env flag
himanshuranjann Apr 20, 2026
210561f
fix: remove SetOrgDB call (method doesn't exist on Discoverer)
himanshuranjann Apr 20, 2026
7dd8fcb
fix: hardcode projectNamePrefix, remove all ENV flags
himanshuranjann Apr 20, 2026
30127f9
fix: prevent C binary crashes on large projects
himanshuranjann Apr 20, 2026
a48e383
feat: MCP progress notifications for long-running tools
himanshuranjann Apr 20, 2026
c68f7bd
feat: org_code_search uses FTS5 indexes instead of grep fan-out
himanshuranjann Apr 20, 2026
4fbe4ff
fix(auth): use /orgs/members endpoint instead of /user/memberships
himanshuranjann Apr 20, 2026
9c52126
fix: remove clone timeout — large repos need unlimited time
himanshuranjann Apr 20, 2026
c68686b
fix: remove hard heap limit + clone timeout for large repos
himanshuranjann Apr 20, 2026
05a824c
fix: increase C binary memory budget from 50% to 90% for large repos
himanshuranjann Apr 20, 2026
85e939d
fix: pass project name override to C binary pipeline
himanshuranjann Apr 20, 2026
19cabd1
fix: properly override project name via cbm_pipeline_set_project_name
himanshuranjann Apr 20, 2026
45ff27a
fix: hardcode GitHub auth to always-on, remove env flag
himanshuranjann Apr 20, 2026
5d91ef1
fix: hardcode scheduled indexing + auth to always-on, remove all env …
himanshuranjann Apr 20, 2026
4f847bb
Merge remote-tracking branch 'origin/main' into feat/cbm-org-tools-re…
himanshuranjann Apr 20, 2026
d1500ed
Merge pull request #3 from himanshuranjann/feat/cbm-org-tools-reliabi…
himanshuranjann Apr 20, 2026
368e316
fix: hardcode OrgGraphEnabled=true — org.db was never populated
himanshuranjann Apr 20, 2026
831a920
perf: direct SQL org.db population — ~30s instead of ~20min
himanshuranjann Apr 20, 2026
cf4e36e
perf(search_code): 15s grep timeout + reduce match ceiling to 100
himanshuranjann Apr 20, 2026
d5cabbf
perf: increase bridge clients to 8, reduce acquire timeout to 3s
himanshuranjann Apr 20, 2026
650cf3f
perf(search_code): label-aware file pre-filtering for grep
himanshuranjann Apr 20, 2026
334697f
perf: add 60s result cache for search_code/search_graph
himanshuranjann Apr 20, 2026
e76a189
fix: direct SQL uses edges instead of source files for org.db population
himanshuranjann Apr 21, 2026
99d0945
fix: read package.json from GCS Fuse for dependency graph population
himanshuranjann Apr 21, 2026
e0d93f4
fix: 20s hard timeout on C binary tool calls + context-aware reads
himanshuranjann Apr 21, 2026
a6cd8fe
revert: remove C-side grep timeout (caused search_code to hang)
himanshuranjann Apr 21, 2026
77ea496
fix: 60s timeout for search_code (GCS Fuse grep is slow), 20s for rest
himanshuranjann Apr 21, 2026
738c726
feat(search_code): Go-native parallel file scan — bypass C binary for…
himanshuranjann Apr 21, 2026
aa03e2a
fix(search_code): avoid json_extract on malformed properties rows
himanshuranjann Apr 21, 2026
584a325
fix: backfill package_deps on stale org.db + LIKE fallback for org_co…
himanshuranjann Apr 21, 2026
d407221
fix(orgdb): return empty slice (not nil) from org queries — no more null
himanshuranjann Apr 21, 2026
a2efba6
chore(org): deprecate org-level tools, hydration, and DB
himanshuranjann Apr 22, 2026
4bd4731
chore(org): deprecate org-level tools, hydration, and DB
himanshuranjann Apr 22, 2026
92bb32b
feat(enricher): customer-surface enrichers (product map + Vue + FE fe…
himanshuranjann Apr 22, 2026
20ba304
feat(mcp): register customer_surface composite tool [TDD]
himanshuranjann Apr 22, 2026
4ea6a15
feat(enricher): backfill product_map.yaml — full 480-repo GHL fleet c…
himanshuranjann Apr 22, 2026
1a2baac
feat(enricher): product_map.yaml — 100% GHL fleet coverage (480/480 r…
himanshuranjann Apr 22, 2026
d7fbb74
feat(enricher): bidirectional MFA app + DTO contract surface for PR i…
himanshuranjann Apr 23, 2026
e7c0fa3
feat(customer-surface): 9-layer dynamic customer-impact enrichment
himanshuranjann Apr 23, 2026
fee8a03
feat(enricher): enum tracker — extracts definitions + dot-chain refer…
himanshuranjann Apr 23, 2026
4a76c2e
Merge remote-tracking branch 'origin/main' into feat/customer-surface…
himanshuranjann Apr 23, 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
14 changes: 14 additions & 0 deletions .gcloudignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
**
!Dockerfile.ghl
!cloudbuild.ghl.yaml
!Makefile.cbm
!REPOS.yaml
!REPOS.local.yaml
!src
!src/**
!internal
!internal/**
!vendored
!vendored/**
!ghl
!ghl/**
90 changes: 90 additions & 0 deletions Dockerfile.ghl
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
# Dockerfile.ghl — GHL fleet server
#
# Multi-stage build:
# stage 1 (cbm): download pre-built codebase-memory-mcp binary for linux/amd64
# stage 2 (build): compile the Go fleet server
# stage 3 (run): minimal runtime image

# ── Stage 1: codebase-memory-mcp binary ──────────────────────────
FROM debian:12-slim AS cbm

RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
ca-certificates \
git \
pkg-config \
zlib1g-dev \
&& rm -rf /var/lib/apt/lists/*

WORKDIR /src

COPY Makefile.cbm ./
COPY src/ ./src/
COPY internal/ ./internal/
COPY vendored/ ./vendored/

RUN make -f Makefile.cbm cbm && \
install -m 0755 build/c/codebase-memory-mcp /usr/local/bin/codebase-memory-mcp

# ── Stage 2: Go fleet server ──────────────────────────────────────
FROM golang:1.25-alpine AS build

WORKDIR /src

# Cache dependencies first
COPY ghl/go.mod ghl/go.sum ./
RUN go mod download

# Copy source
COPY ghl/ ./

RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 \
go build -trimpath -ldflags="-s -w" \
-o /app/ghl-fleet ./cmd/server

# ── Stage 3: Runtime ──────────────────────────────────────────────
# Use debian-slim (not distroless) so git is available for repo cloning
FROM debian:12-slim

RUN apt-get update && apt-get install -y --no-install-recommends \
git \
ca-certificates \
openssh-client \
&& rm -rf /var/lib/apt/lists/*

# Copy binaries
COPY --from=cbm /usr/local/bin/codebase-memory-mcp /app/codebase-memory-mcp
COPY --from=build /app/ghl-fleet /app/ghl-fleet

# Copy default manifest
COPY REPOS.yaml /app/REPOS.yaml
COPY REPOS.local.yaml /app/REPOS.local.yaml

# Git: trust all dirs (needed when running as non-root in containers)
RUN git config --global --add safe.directory '*'

WORKDIR /app

# ── Defaults (all overridable via env) ───────────────────────────
ENV PORT=8080 \
CBM_MMAP_SIZE=0 \
CBM_BINARY=/app/codebase-memory-mcp \
CBM_CACHE_DIR=/tmp/codebase-memory-mcp \
CBM_ARTIFACT_DIR=/data/fleet-cache/indexes \
FLEET_CACHE_DIR=/tmp/fleet-repos \
PROJECT_NAME_PREFIX=data-fleet-cache-repos \
REPOS_MANIFEST=/app/REPOS.local.yaml \
BRIDGE_CLIENTS=8 \
BRIDGE_ACQUIRE_TIMEOUT_MS=3000 \
FLEET_CONCURRENCY=8 \
INDEXER_CLIENTS=8 \
STARTUP_INDEX_ENABLED=false \
SCHEDULED_INDEXING_ENABLED=false \
CRON_INCREMENTAL="0 */6 * * *" \
CRON_FULL="0 2 * * 0"

EXPOSE 8080

VOLUME ["/data/fleet-cache"]

ENTRYPOINT ["/app/ghl-fleet"]
236 changes: 236 additions & 0 deletions REPOS.local.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,236 @@
# REPOS.local.yaml — generated local fleet manifest
# workspace_root: /Users/himanshuranjan/Documents/highlevel
# source_manifest: ../REPOS.yaml
# Regenerate from ./ghl with: go run ./cmd/genlocalmanifest
repos:
- name: clientportal-core
github_url: https://github.com/GoHighLevel/clientportal-core.git
team: platform
type: library
tags:
- vue
- vue3
- platform
- name: ghl-agentic-workspace
github_url: https://github.com/GoHighLevel/ghl-agentic-workspace.git
team: platform
type: service
tags:
- typescript
- nestjs
- platform
- name: ghl-awesome-studio
github_url: https://github.com/GoHighLevel/ghl-awesome-studio.git
team: platform
type: frontend
tags:
- vue
- vue3
- platform
- name: ghls-pr
github_url: https://github.com/GoHighLevel/ghls-pr.git
team: platform
type: service
tags:
- typescript
- nestjs
- platform
- name: i18n-analysis
github_url: https://github.com/GoHighLevel/i18n-analysis.git
team: platform
type: service
tags:
- javascript
- nestjs
- platform
- name: image-processing-service
github_url: https://github.com/GoHighLevel/image-processing-service.git
team: platform
type: service
tags:
- go
- platform
- name: infrastructure-as-a-code
github_url: https://github.com/GoHighLevel/infrastructure-as-a-code.git
team: platform
type: infra
tags:
- hcl
- platform
- name: MoltClaw-by-HighLevel
github_url: https://github.com/GoHighLevel/MoltClaw-by-HighLevel.git
team: platform
type: service
tags:
- typescript
- nestjs
- platform
- name: platform-backend
github_url: https://github.com/GoHighLevel/platform-backend.git
team: platform
type: service
tags:
- typescript
- nestjs
- platform
- name: platform-core
github_url: https://github.com/GoHighLevel/platform-core.git
team: platform
type: library
tags:
- typescript
- platform
- name: platform-devtools-backend
github_url: https://github.com/GoHighLevel/platform-devtools-backend.git
team: platform
type: service
tags:
- typescript
- nestjs
- platform
- name: platform-devtools-frontend
github_url: https://github.com/GoHighLevel/platform-devtools-frontend.git
team: platform
type: frontend
tags:
- typescript
- platform
- name: platform-docs
github_url: https://github.com/GoHighLevel/platform-docs.git
team: platform
type: docs
tags:
- html
- platform
- name: platform-jenkins-shared-library
github_url: https://github.com/GoHighLevel/platform-jenkins-shared-library.git
team: platform
type: library
tags:
- groovy
- platform
- name: project-orion
github_url: https://github.com/GoHighLevel/project-orion.git
team: platform
type: other
tags:
- html
- platform
- name: quality-gates
github_url: https://github.com/GoHighLevel/quality-gates.git
team: platform
type: service
tags:
- typescript
- nestjs
- platform
- name: automation-am-client-portal
github_url: https://github.com/GoHighLevel/automation-am-client-portal.git
team: revex
type: frontend
tags:
- vue
- vue3
- revex
- name: ghl-membership-frontend
github_url: https://github.com/GoHighLevel/ghl-membership-frontend.git
team: revex
type: frontend
tags:
- typescript
- revex
- name: ghl-revex-backend
github_url: https://github.com/GoHighLevel/ghl-revex-backend.git
team: revex
type: service
tags:
- typescript
- nestjs
- revex
- name: ghl-revex-frontend
github_url: https://github.com/GoHighLevel/ghl-revex-frontend.git
team: revex
type: frontend
tags:
- vue
- vue3
- revex
- name: membership-backend
github_url: https://github.com/GoHighLevel/membership-backend.git
team: revex
type: service
tags:
- typescript
- nestjs
- revex
- name: membership-hmi-app
github_url: https://github.com/GoHighLevel/membership-hmi-app.git
team: revex
type: frontend
tags:
- vue
- vue3
- revex
- name: membership-hmi-preview
github_url: https://github.com/GoHighLevel/membership-hmi-preview.git
team: revex
type: frontend
tags:
- vue
- vue3
- revex
- name: ghl-crm-frontend
github_url: https://github.com/GoHighLevel/ghl-crm-frontend.git
team: crm
type: frontend
tags:
- vue
- vue3
- crm
- name: ghl-email-builder
github_url: https://github.com/GoHighLevel/ghl-email-builder.git
team: conversations
type: frontend
tags:
- vue
- vue3
- conversations
- name: spm-ts
github_url: https://github.com/GoHighLevel/spm-ts.git
team: funnels
type: frontend
tags:
- vue
- vue3
- funnels
- name: automation-workflows-frontend
github_url: https://github.com/GoHighLevel/automation-workflows-frontend.git
team: marketing
type: frontend
tags:
- typescript
- marketing
- name: marketplace-backend
github_url: https://github.com/GoHighLevel/marketplace-backend.git
team: saas
type: service
tags:
- typescript
- nestjs
- saas
- name: ai-backend
github_url: https://github.com/GoHighLevel/ai-backend.git
team: ai
type: service
tags:
- typescript
- nestjs
- ai
- name: ai-frontend
github_url: https://github.com/GoHighLevel/ai-frontend.git
team: ai
type: frontend
tags:
- vue
- vue3
- ai
Loading