Skip to content

Commit ecb5ede

Browse files
aksOpsclaude
andauthored
chore: drop Homebrew + delete stale Java-era docs (CLI + MCP only) (#138)
* chore: drop Homebrew + delete stale Java-era docs (CLI + MCP only) Three changes per the post-v0.3.0 cleanup goal: ## 1. Homebrew dropped - .goreleaser.yml: remove `brews:` block. - release-go.yml: remove HOMEBREW_TAP_OWNER/REPO/GITHUB_TOKEN env. - README.md: remove the `### Homebrew` install section. - shared/runbooks/release-go.md: remove `## Homebrew tap` section and related cross-references. - CHANGELOG.md / CLAUDE.md: scrub Homebrew mentions. Not pursuing a tap — pre-built binaries from Releases + Cosign-verified checksums cover the install surface. Saves repo creation + PAT churn. ## 2. Stale Java-era docs deleted The entire `docs/project/` tree (architecture.md, conventions.md, data-model.md, flows.md, ui.md, build-and-run.md) referenced Spring Boot, application.yml, REST controllers, the React SPA, Jacoco, etc. — all deleted in Phase 6 cutover. The content was wrong, not just stale. CLAUDE.md is the single source of truth. Updated PROJECT_SUMMARY.md links to point at CLAUDE.md instead. ## 3. `serve` subcommand decisively out of scope CLAUDE.md previously said `serve: (deferred — not ported in v0.3.0)`. Updated to state the position: codeiq has no REST API and no web UI. Consumers use the CLI or the stdio MCP server. Java's `codeiq serve` will not be reintroduced. The `golang-jwt/jwt/v5` dep is transitive via the MCP SDK's auth package (verified with `go mod why`) — not a serve-mode leftover. CLAUDE.md note corrected. Also drove (out-of-band) the branch-protection update: $ gh api -X POST .../branches/main/protection/required_status_checks/contexts \ -f 'contexts[]=vet / test / staticcheck / gosec / govulncheck' \ -f 'contexts[]=index perf gate (fixture-multi-lang)' → both Go gates now block merge on main. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * chore: scrub stale Homebrew/docs refs left over from cleanup PR #138 deleted docs/project/ and the brews: block, but missed: - README.md linked to docs/project/architecture.md + conventions.md - PROJECT_SUMMARY.md listed HOMEBREW_TAP_GITHUB_TOKEN as a runtime env - shared/runbooks/release-go.md still had "Homebrew tap PR fails" recovery - release-go.yml + .goreleaser.yml carried stale "darwin/arm64 deferred" comments after release-darwin.yml landed (#137) Pure docs/comments fix; no code or workflow behavior changes. --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent c6097e7 commit ecb5ede

13 files changed

Lines changed: 29 additions & 1457 deletions

File tree

.github/workflows/release-go.yml

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,14 @@
11
name: release-go
22

3-
# Tag-triggered release pipeline for the codeiq Go binary.
3+
# Tag-triggered release pipeline for the codeiq Go binary (linux/amd64
4+
# + linux/arm64). darwin/arm64 ships from `release-darwin.yml` on the
5+
# same tag.
46
#
57
# Trigger: push a tag matching `v*.*.*` (e.g. `git tag v0.3.0 && git push --tags`).
68
#
7-
# v0.3.0 scope: linux/amd64 + linux/arm64 only. Single ubuntu-latest
8-
# runner builds both via the linux→linux cross-compile with
9-
# gcc-aarch64-linux-gnu (CGO permits this cross — both kuzu and
10-
# go-sqlite3 build cleanly).
11-
#
12-
# darwin/arm64 deferred — needs a macos runner and separate matrix.
13-
# Follow-up: add a `release-darwin.yml` that attaches darwin binaries
14-
# to the same draft Release.
9+
# Single ubuntu-latest runner builds both linux archs via
10+
# linux→linux cross-compile with gcc-aarch64-linux-gnu (CGO permits
11+
# this cross — both kuzu and go-sqlite3 build cleanly).
1512

1613
on:
1714
push:
@@ -57,9 +54,6 @@ jobs:
5754
args: release --clean
5855
env:
5956
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
60-
HOMEBREW_TAP_OWNER: RandomCodeSpace
61-
HOMEBREW_TAP_REPO: homebrew-codeiq
62-
HOMEBREW_TAP_GITHUB_TOKEN: ${{ secrets.HOMEBREW_TAP_GITHUB_TOKEN }}
6357
- name: Attest release artifacts (build provenance)
6458
uses: actions/attest-build-provenance@a2bbfa25375fe432b6a289bc6b6cd05ecd0c4c32 # v4.1.0
6559
with:

.goreleaser.yml

Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,8 @@ builds:
6161
- -X 'github.com/randomcodespace/codeiq/go/internal/buildinfo.Dirty={{.IsGitDirty}}'
6262
goos: [linux]
6363
goarch: [arm64]
64-
# darwin/arm64 deferred — needs a macos runner. Follow-up:
65-
# release-darwin.yml attaches macOS binaries to the same draft Release.
64+
# darwin/arm64 ships from `release-darwin.yml` (macos-14 runner) and
65+
# attaches to the same Release that this config creates.
6666

6767
archives:
6868
- id: codeiq
@@ -114,28 +114,6 @@ signs:
114114
output: true
115115
signature: '${artifact}.cosign.bundle'
116116

117-
# Homebrew tap publish — opt-in via $HOMEBREW_TAP_GITHUB_TOKEN. When the
118-
# env var is empty (forks, dry runs), the upload is skipped so the same
119-
# .goreleaser.yml works for the owning org and downstream forks alike.
120-
brews:
121-
- name: codeiq
122-
repository:
123-
owner: '{{ envOrDefault "HOMEBREW_TAP_OWNER" "RandomCodeSpace" }}'
124-
name: '{{ envOrDefault "HOMEBREW_TAP_REPO" "homebrew-codeiq" }}'
125-
token: '{{ envOrDefault "HOMEBREW_TAP_GITHUB_TOKEN" "" }}'
126-
skip_upload: '{{ if eq (envOrDefault "HOMEBREW_TAP_GITHUB_TOKEN" "") "" }}true{{ else }}false{{ end }}'
127-
commit_author:
128-
name: codeiq-bot
129-
email: noreply@github.com
130-
directory: Formula
131-
homepage: 'https://github.com/RandomCodeSpace/codeiq'
132-
description: 'Deterministic code knowledge graph + MCP server'
133-
license: 'Apache-2.0'
134-
install: |
135-
bin.install "codeiq"
136-
test: |
137-
assert_match "codeiq", shell_output("#{bin}/codeiq --version")
138-
139117
release:
140118
github:
141119
owner: RandomCodeSpace

CHANGELOG.md

Lines changed: 0 additions & 563 deletions
Large diffs are not rendered by default.

CLAUDE.md

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,6 @@ landing) and `c630245` (release infra).
3636
helper.
3737
- **`spf13/cobra`** — CLI framework. Subcommand registration via
3838
`internal/cli` blank imports.
39-
- **`golang-jwt/jwt/v5`** — token validation surface (kept from a
40-
serve-mode prototype; serve isn't fully ported yet).
4139

4240
## Architecture
4341

@@ -46,10 +44,15 @@ landing) and `c630245` (release infra).
4644
```
4745
index: FileDiscovery → Parsers → Detectors (goroutine pool) → GraphBuilder → SQLite cache
4846
enrich: SQLite → Linkers → LayerClassifier → LexicalEnricher → LanguageEnricher → ServiceDetector → Kuzu (COPY FROM)
49-
serve: (deferred — not ported in v0.3.0)
5047
mcp: Kuzu → QueryService → 6 consolidated MCP tools + run_cypher escape hatch + review_changes
5148
```
5249

50+
codeiq has no REST API and no web UI surface — by design. Consumers
51+
interact through the CLI or through the stdio MCP server (read-only).
52+
The Java reference had a `codeiq serve` subcommand (Spring Boot REST
53+
+ React SPA); both were removed in the Go port and will not be
54+
reintroduced.
55+
5356
### Pipeline components
5457

5558
- **`internal/analyzer/file_discovery.go`**`git ls-files` first,
@@ -426,10 +429,8 @@ Release pipeline:
426429
- Release tag must be `v*.*.*`; pre-releases use the
427430
`vX.Y.Z-rc.N` form (Goreleaser `prerelease: auto` honors it).
428431
- Cosign keyless via GitHub OIDC — no long-lived key on the runner.
429-
Verification needs the cert + sig + the OIDC identity regex (see
430-
`shared/runbooks/release-go.md`).
431-
- Homebrew tap publish is opt-in via `HOMEBREW_TAP_GITHUB_TOKEN`.
432-
Forks leave the secret unset and the brew step skips silently.
432+
Verification needs the cosign bundle file + the OIDC identity regex
433+
(see `shared/runbooks/release-go.md`).
433434

434435
## Updating This File
435436

PROJECT_SUMMARY.md

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,8 @@
55
>
66
> **Canonical depth lives in [`CLAUDE.md`](CLAUDE.md)** (~16 KB,
77
> agent-oriented, hand-maintained). This file is a thin entry point
8-
> that links into `CLAUDE.md`, the runbooks under
9-
> [`shared/runbooks/`](shared/runbooks/), and the deep-dives under
10-
> [`docs/project/`](docs/project/).
8+
> that links into `CLAUDE.md` and the runbooks under
9+
> [`shared/runbooks/`](shared/runbooks/).
1110
1211
## Identity
1312

@@ -54,7 +53,7 @@ codeiq/
5453
│ │ ├── cli/ — cobra subcommands
5554
│ │ ├── detector/ — 100 detectors organized by category
5655
│ │ ├── flow/ — architecture-flow diagram engine
57-
│ │ ├── graph/ — Kuzu facade (read-only on serve path)
56+
│ │ ├── graph/ — Kuzu facade (read-only)
5857
│ │ ├── intelligence/ — lexical + language extractors + evidence + planner
5958
│ │ ├── mcp/ — MCP server + tool definitions
6059
│ │ ├── model/ — CodeNode, CodeEdge, kinds, Confidence
@@ -65,8 +64,7 @@ codeiq/
6564
│ ├── testdata/ — fixtures (fixture-minimal, fixture-multi-lang)
6665
│ ├── go.mod
6766
│ └── go.sum
68-
├── .github/workflows/ — go-ci, perf-gate, release-go, security, scorecard
69-
├── docs/project/ — architecture + conventions + flows deep-dives
67+
├── .github/workflows/ — go-ci, perf-gate, release-go, release-darwin, security, scorecard
7068
├── shared/runbooks/ — release-go.md + engineering-standards.md
7169
├── CHANGELOG.md
7270
├── CLAUDE.md — SSoT internals doc
@@ -104,8 +102,8 @@ CGO_ENABLED=1 go build -o /usr/local/bin/codeiq ./cmd/codeiq
104102
```
105103

106104
**Required env / external services**: none for build. At run-time the
107-
binary reads `OLLAMA_API_KEY` (optional) and `HOMEBREW_TAP_GITHUB_TOKEN`
108-
(release-side only).
105+
binary reads `OLLAMA_API_KEY` (optional, switches `codeiq review` to
106+
Ollama Cloud).
109107

110108
## Conventions an agent must respect
111109

@@ -126,8 +124,7 @@ binary reads `OLLAMA_API_KEY` (optional) and `HOMEBREW_TAP_GITHUB_TOKEN`
126124
boundary; detectors override only when they have higher-confidence
127125
evidence.
128126

129-
Full set in [`CLAUDE.md` §Code Conventions](CLAUDE.md#code-conventions)
130-
and [`docs/project/conventions.md`](docs/project/conventions.md).
127+
Full set in [`CLAUDE.md` §Code Conventions](CLAUDE.md#code-conventions).
131128

132129
## Gotchas
133130

@@ -147,8 +144,6 @@ and [`docs/project/conventions.md`](docs/project/conventions.md).
147144

148145
## Where to look next
149146

150-
- Architecture & components → [`docs/project/architecture.md`](docs/project/architecture.md)
151-
- Conventions (full) → [`docs/project/conventions.md`](docs/project/conventions.md)
152147
- Build & release → [`shared/runbooks/release-go.md`](shared/runbooks/release-go.md)
153148
- MCP integration → [`README.md#mcp-integration`](README.md#mcp-integration)
154149
- Internal SSoT → [`CLAUDE.md`](CLAUDE.md)

README.md

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -63,13 +63,6 @@ cosign verify-blob \
6363
checksums.sha256
6464
```
6565

66-
### Homebrew
67-
68-
```bash
69-
brew tap RandomCodeSpace/codeiq
70-
brew install codeiq
71-
```
72-
7366
### Build from source
7467

7568
Requires Go 1.25.10+ and a C toolchain (CGO).
@@ -153,11 +146,10 @@ the graph) are dropped at snapshot. Every run prints a
153146
"Deduped: N nodes, M edges Dropped: K phantom edges" line so graph
154147
hygiene is visible.
155148

156-
See [`docs/project/architecture.md`](docs/project/architecture.md) for
157-
the pipeline (FileDiscovery → tree-sitter / regex → detectors →
158-
GraphBuilder → linkers → LayerClassifier → Kuzu) and
159-
[`docs/project/conventions.md`](docs/project/conventions.md) for the
160-
detector authoring contract.
149+
Pipeline: FileDiscovery → tree-sitter / regex → detectors →
150+
GraphBuilder → linkers → LayerClassifier → Kuzu. See
151+
[`CLAUDE.md`](CLAUDE.md) for the full architecture and the detector
152+
authoring contract.
161153

162154
## Releases
163155

0 commit comments

Comments
 (0)