Commit graph

37 commits

Author SHA1 Message Date
Snider
618aee66a3 fix: migrate module paths from forge.lthn.ai to dappco.re
Some checks failed
Security Scan / security (push) Has been cancelled
Test / test (push) Has been cancelled
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-04 16:21:11 +01:00
Claude
0d5d780bcc
chore: update dependencies to dappco.re tagged versions
All checks were successful
Security Scan / security (push) Successful in 11s
Test / test (push) Successful in 2m37s
Security Scan / security (pull_request) Successful in 8s
Test / test (pull_request) Successful in 49s
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 01:10:25 +00:00
Claude
8a68ed5160
chore: migrate to dappco.re vanity import path
Some checks failed
Security Scan / security (push) Successful in 9s
Test / test (push) Failing after 23s
Module path: forge.lthn.ai/core/go-ai -> dappco.re/go/core/ai

Updated all .go imports for migrated sibling packages:
- forge.lthn.ai/core/go-log -> dappco.re/go/core/log
- forge.lthn.ai/core/go-io -> dappco.re/go/core/io
- forge.lthn.ai/core/go-i18n -> dappco.re/go/core/i18n

Added //go:build ignore to cmd/lab/cmd_lab.go (pre-existing broken
import: forge.lthn.ai/lthn/lem/pkg/lab was removed from LEM).

Packages not yet migrated (left as-is): cli, go-rag, go-scm,
go-process, mcp, api, go-crypt, go-inference, go-ml, go-mlx.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-21 23:52:57 +00:00
Snider
af8fd47e3f chore(deps): bump ecosystem deps to latest
Some checks failed
Security Scan / security (push) Successful in 9s
Test / test (push) Failing after 1m54s
go-crypt v0.1.10, go-i18n v0.1.6, go-io v0.1.5, go-log v0.0.4,
cli v0.3.5, go v0.3.1, go-inference v0.1.4

Note: cmd/lab and cmd/rag have unresolvable transitive deps
(lem/pkg/lab not published, go-rag still on old go/pkg/i18n path).

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 08:15:56 +00:00
Snider
be522ad68f chore: update dependencies
Some checks failed
Security Scan / security (push) Successful in 9s
Test / test (push) Failing after 1m26s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-15 15:43:29 +00:00
Snider
890769734a chore: sync go.mod dependencies
Some checks are pending
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-15 15:37:50 +00:00
Snider
18992a70d9 fix: align indirect dependency versions via go work sync
Some checks failed
Security Scan / security (push) Successful in 8s
Test / test (push) Failing after 2m1s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-14 13:42:30 +00:00
Snider
94ec6e3e0a fix: update stale import paths and dependency versions from extraction
Some checks are pending
Test / test (push) Waiting to run
Security Scan / security (push) Successful in 9s
Resolve stale forge.lthn.ai/core/cli v0.1.0 references (tag never existed,
earliest is v0.0.1) and regenerate go.sum via workspace-aware go mod tidy.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-14 13:38:59 +00:00
Snider
3f3faf3c9c refactor(api): update import path from go-api to core/api
Some checks failed
Security Scan / security (push) Successful in 11s
Test / test (push) Failing after 2m0s
Part of the polyglot merge — forge.lthn.ai/core/go-api is now
forge.lthn.ai/core/api.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-14 10:10:32 +00:00
Snider
16f8ffc22c chore: sync go.mod dependencies
Some checks failed
Security Scan / security (push) Successful in 9s
Test / test (push) Failing after 2m28s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-06 15:22:46 +00:00
Snider
badcfe9a78 refactor: swap pkg imports to standalone modules
Some checks failed
Security Scan / security (push) Successful in 11s
Test / test (push) Failing after 1m37s
- pkg/ws → go-ws
- pkg/webview → go-webview
- pkg/lab → lthn/lem/pkg/lab
- pkg/process → go-process (from prior session)

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-06 13:48:09 +00:00
Snider
dfe474a239 refactor: swap pkg/{io,log,i18n} imports to go-io/go-log/go-i18n
Some checks failed
Security Scan / security (push) Successful in 9s
Test / test (push) Failing after 3m8s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-06 12:35:42 +00:00
Snider
b36975097d feat: add brain-seed tool + TLS support for .lan domains
Some checks failed
Test / test (push) Failing after 43s
Security Scan / security (push) Failing after 14m3s
brain-seed imports Claude Code MEMORY.md files into OpenBrain by
embedding via Ollama and storing vectors in Qdrant. Supports dry-run,
plan docs, and configurable endpoints.

Also fixes embed-bench to use a shared HTTP client that trusts
self-signed certs for .lan domains behind Traefik.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-03 10:23:42 +00:00
Snider
a803603916 chore: bump forge.lthn.ai dep versions to latest tags
Some checks failed
Security Scan / security (push) Successful in 22s
Test / test (push) Failing after 8m45s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-26 05:34:22 +00:00
Snider
6dcb39e0ae chore: bump forge.lthn.ai dep versions to latest tags
All checks were successful
Security Scan / security (push) Successful in 14s
Test / test (push) Successful in 7m21s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-23 06:49:37 +00:00
Snider
bd2e2acd49 chore: refresh go.sum after upstream tag updates
Some checks failed
Security Scan / security (push) Successful in 8s
Test / test (push) Failing after 35s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-23 06:35:18 +00:00
Claude
2537aea96a
chore: refresh go.sum after upstream tag updates
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 23:36:25 +00:00
Snider
8a21d750bb refactor: migrate CLI imports from core/go to core/cli
Update imports from forge.lthn.ai/core/go/pkg/cli to
forge.lthn.ai/core/cli/pkg/cli following CLI package split.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-22 23:29:44 +00:00
Claude
5f120f8e90
chore: sync workspace dependency versions
Run go work sync to align dependency versions across workspace.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 21:42:15 +00:00
Snider
dff5fb23c5 refactor: apply go fix modernizers for Go 1.26
Automated fixes: interface{} → any, range-over-int, t.Context(),
wg.Go(), strings.SplitSeq, strings.Builder, slices.Contains,
maps helpers, min/max builtins.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-22 21:00:16 +00:00
Snider
6d07388407 chore: bump go directive to 1.26.0
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-22 20:33:48 +00:00
Snider
b2b4982e3c chore: pin forge deps to v0.0.1 tags for Go 1.26 compat
Go 1.26 rejects non-semver version strings (like 'main') in go.mod.
Tags v0.0.1 now exist on all forge repos — workspace still overrides
for local development.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-22 20:15:05 +00:00
Snider
ad865ab3b9 chore: use workspace-resolved versions, drop replace directives
Forge module versions now use main branch resolution via ~/Code/go.work
workspace. Removes local replace directives — the central go.work handles
all cross-repo resolution during development.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-22 19:49:36 +00:00
Snider
85e02297cc fix: update ml tool handlers for Result return type
go-ml's Backend.Generate() and Backend.Chat() now return ml.Result{Text, Metrics}
instead of (string, error). Updated mlGenerate and mlProbe handlers to unwrap
result.Text, and updated test mocks to match the new interface.

Added local replace directives for go-inference, go-ml, go-mlx while
these changes propagate through the dependency chain.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-22 19:24:32 +00:00
Snider
d962260b81 feat(cmd/rag): re-export go-rag CLI commands through go-ai
CLI should import RAG commands via go-ai (which already depends on
go-rag), not directly. This keeps the CLI's dependency tree clean.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-21 20:23:22 +00:00
Snider
c3de6c4935 feat: migrate daemon, mcpcmd, security commands from CLI
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-21 19:38:04 +00:00
Snider
bc9597c191 chore: resolve forge deps from registry, remove local replaces
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-21 19:22:32 +00:00
Snider
d20688d50b feat(mcp): add BridgeToAPI for MCP-to-REST conversion
Bridge converts MCP ToolRecords into go-api ToolBridge entries,
making MCP tools accessible as REST POST endpoints with OpenAPI
metadata. Each tool's RESTHandler closure captures the generic
input type at registration time, enabling type-safe JSON
unmarshalling without runtime reflection.

Co-Authored-By: Virgil <virgil@lethean.io>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 01:06:33 +00:00
Claude
65ff6c6647
fix(go.mod): correct replace path for core/go
Was ../core (wrong), now ../go matching workspace layout.

Co-Authored-By: Charon <charon@lethean.io>
2026-02-20 14:20:33 +00:00
Snider
4d73fa250c feat(ml): Phase 2 — migrate ml_backends to go-inference registry
- Make go-inference a direct dependency (was indirect)
- Rewrite mlBackends() to use inference.List()/Get()/Default()
  instead of ml.Service.Backends()/Backend()/DefaultBackend()
- Add documentation comments clarifying generation flow
- mlGenerate/mlScore/mlProbe unchanged (work via go-ml.Service)

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-20 06:01:30 +00:00
Snider
4665bea75e fix: post-split cleanup — remove test script, fix tests, update docs
- Delete test-mlx.go (standalone test script, not library code)
- Fix TestSandboxing_Symlinks_Followed to match security behaviour
  (renamed to TestSandboxing_Symlinks_Blocked — asserts sandbox
  correctly blocks symlinks escaping the workspace root)
- Fix TestNewTCPTransport_Warning by adding missing security warning
  to NewTCPTransport when binding to 0.0.0.0 (all interfaces)
- Update CLAUDE.md dependency table (go-mlx, duckdb, parquet, ollama,
  qdrant now indirect via go-ml/go-rag)
- Tidy go.mod (direct vs indirect aligned with actual imports)
- Verify go build, go vet, go test all pass

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-20 01:18:27 +00:00
Snider
0af152eaef refactor: extract ml/ to standalone core/go-ml module
go-ai is now a meta package: ai/ facade + mcp/ hub that imports
go-ml, go-rag, go-mlx, and go-agentic as separate modules.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-19 18:32:42 +00:00
Snider
2886ffaa4c refactor: extract rag/ to standalone core/go-rag module
Update ai/rag.go and mcp/tools_rag.go imports to reference new module.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-19 18:30:37 +00:00
Snider
34d0f9ce41 refactor: extract mlx/ to standalone core/go-mlx module
Remove mlx/ directory (now lives at forge.lthn.ai/core/go-mlx).
Update ml/backend_mlx.go imports to reference the new module.
Add replace directive for local development.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-19 18:24:32 +00:00
Snider
906a535899 chore: update module paths and add gitignore
Sync module imports across agentic, mcp, ml, and rag packages.
Add .gitignore for mlx build artifacts.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-17 19:19:38 +00:00
3916633f4d test: validate MLX inference and scoring pipeline on M3 Ultra
Fixes #2

- Run complete test suite: all 84 tests passing (100%)
- Verify Metal 4 GPU support and hardware capabilities
- Test scoring pipeline (heuristic + judge + engine)
- Confirm GGUF model directory with 9 models (40.43 GB)
- Document MLX backend build requirements
- Update module imports from forge.lthn.ai/core/go to forge.lthn.ai/core/cli
- Add comprehensive TEST-RESULTS.md with findings

Platform: M3 Ultra (60 GPU cores, 96GB RAM, Metal 4)
Results: All tests passing, scoring pipeline operational, MLX ready to build

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-16 17:24:36 +00:00
Claude
e84d6ad3c9
feat: extract AI/ML packages from core/go
LEM scoring pipeline, native MLX Metal bindings, Claude SDK wrapper,
RAG with Qdrant/Ollama, unified AI facade, and MCP protocol server.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 15:25:55 +00:00