Commit graph

27 commits

Author SHA1 Message Date
Snider
907c5fa64c fix(devops): address CodeRabbit findings on PR #2
15+ findings dispositioned. AX-6-conformant — no testify reintroduced.

Code fixes:
- cmd/dev/service.go: no-op now returns OK:true, unchecked prompt type assertion guarded
- cmd/workspace/config.go: relative parent traversal blocked + regression test, fmt.Errorf wrapping
- cmd/dev/cmd_issues.go + cmd_reviews.go: import ordering
- tests/cli/devops/main.go: raw WalkDir errors wrapped
- tests/cli/devops/Taskfile.yaml: strict shell flags
- cmd/vanity-import/Dockerfile + docs/development.md: Go 1.26 alignment
- locales/embed.go: missing dappco.re/go/i18n checksum

Test infra:
- New local test helpers in cmd/dev, cmd/setup, devkit, snapshot
- All testify usages already absent — local stdlib helpers preferred
  per AX-6 ban
- Test naming aligned (Test{Filename}_{Function}_{Good,Bad,Ugly} per AX-10)

Disposition replies (RESOLVED-COMMENT, no testify added):
- cmd/dev/cmd_apply_test.go, cmd/setup/cmd_ci_test.go, snapshot_test.go,
  devkit/coverage_test.go: CodeRabbit testify suggestions get reasoning
  reply per AX-6 ban; local helpers are convention.
- SonarCloud/GHAS: no PR checks/annotations found; code-scanning API
  returned no analysis, secret scanning disabled.

Verification: gofmt clean, git diff --check clean, no testify imports.
Targeted go vet + go test pass for cmd/workspace + devkit + snapshot.
Full go vet ./... blocked by pre-existing dappco.re/go/scm
codeberg.org/forgejo/go-sdk auth/replacement issue (out of scope).

Closes findings on https://github.com/dAppCore/go-devops/pull/2

Co-authored-by: Codex <noreply@openai.com>
2026-04-27 15:07:24 +01:00
Snider
c43090e2ca feat(ax-10): bring go-devops to v0.8.0-alpha.1 + CLI test scaffold
- Bump dappco.re/go/* deps to v0.8.0-alpha.1 in go.mod (any forge.lthn.ai/core/* paths migrated to canonical dappco.re/go/* form)
- Update Go source imports across 55 .go files

Co-Authored-By: Athena <athena@lthn.ai>
2026-04-24 23:44:02 +01:00
Codex
da527c657f chore(go-devops): migrate module path to dappco.re/go/devops
Dropped the embedded "core" segment per RFC, aligning with graduated
repos. Updated go.mod + 11 *.go self-imports across cmd/setup/,
cmd/docs/, cmd/gitcmd/, cmd/dev/, deploy/coolify/. `go build ./...`
passes.

Closes tasks.lthn.sh/view.php?id=753

Co-authored-by: Codex <noreply@openai.com>
2026-04-24 20:10:17 +01:00
Codex
096cb1bab2 fix(go-devops): replace testify with stdlib testing patterns (AX-6)
Removes testify + indirect deps from go.mod/go.sum; rewrites
assert/require calls across cmd/dev/*, cmd/setup/*, devkit/* _test.go
to stdlib t.Fatalf patterns. go vet clean. TestRunTestGen_Good fails
pre-existing (missing cmd/dev/pkg/ env) at dev tip — unrelated to
this PR.

Closes tasks.lthn.sh/view.php?id=754

Co-authored-by: Codex <noreply@openai.com>
Via-codex-lane: Cyclops-754 dispatch
2026-04-24 18:51:16 +01:00
Snider
b19a0dfe25 fix: migrate module paths from forge.lthn.ai to dappco.re
Update all import paths and go.mod deps to dappco.re equivalents.
Fix API compat for core v0.8.0-alpha.1: RegisterTask→RegisterAction,
core.Task→core.Message handler signatures.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-07 12:46:35 +01:00
Virgil
93c8eef876 feat(dev): support glob targets in apply command
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 09:02:04 +00:00
Virgil
af9887217a fix(setup): broaden GitHub remote parsing
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 07:25:34 +00:00
Virgil
04d8a17dc7 fix(setup): prefer node project detection over php
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 06:54:39 +00:00
Virgil
0179ddf4f2 feat(setup): add repo subcommand
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 06:49:34 +00:00
Virgil
b5d32ade33 fix(setup): apply type filter in package wizard
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 06:34:22 +00:00
Virgil
24fd01dc26 fix(setup): repair scoop bucket default
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 06:26:16 +00:00
Virgil
ba08cac5ef feat(dev): expose vm status command
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-01 06:19:31 +00:00
Claude
129199a5e0
chore: migrate to dappco.re vanity import path
Update module path from forge.lthn.ai/core/go-devops to
dappco.re/go/core/devops. Migrate all imports for packages
that have already moved to dappco.re:

- go-io -> dappco.re/go/core/io
- go-log -> dappco.re/go/core/log
- go-scm -> dappco.re/go/core/scm
- go-i18n -> dappco.re/go/core/i18n
- agent -> dappco.re/go/agent

Packages not yet migrated (cli, go-container) left as-is.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 00:04:10 +00:00
Snider
c2adc7d9dc fix(dx): audit and fix build, error handling, and CLAUDE.md
- Fix cli.RegisterCommands signature mismatch (cli v0.3.5 takes
  single CommandRegistration, not variadic localeFS); register
  locales via i18n.RegisterLocales in locales/embed.go init()
- Replace fmt.Errorf inside log.E with plain string concat in
  deploy/python and deploy/coolify
- Remove unused fmt import from deploy/coolify/client.go
- Update CLAUDE.md: correct LOC count, clarify cmd/community and
  cmd/gitcmd descriptions, add locales package, fix error convention
  from core.E/fmt.Errorf to log.E

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 08:18:32 +00:00
Snider
0f50f98a95 fix: defer i18n.T() for package-level command vars
Package-level var declarations run at import time, before i18n is
initialised. Move Short/Long assignment to AddCommands functions
which run after Core startup.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 02:21:52 +00:00
Snider
4c5e12c9f8 refactor: replace os.ReadFile/WriteFile and fmt.Errorf/errors.New with framework equivalents
Replace os.ReadFile with coreio.Local.Read for consistent filesystem abstraction.
Replace fmt.Errorf/errors.New with log.E() from go-log for structured error context.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-16 19:17:34 +00:00
Snider
a3f6b76337 fix: update go-agentic imports to core/agent
go-agentic → core/agent/pkg/lifecycle (aliased as agentic)
go-agentic/cmd/workspace → core/agent/cmd/workspace

All cmd/ packages now build cleanly.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-09 12:35:25 +00:00
Snider
d97db89866 refactor: replace all cobra imports with core/cli
19 files migrated from github.com/spf13/cobra to
forge.lthn.ai/core/cli/pkg/cli. All cmd/ and build/ packages
now use cli.Command exclusively. Zero direct cobra dependencies
remain in application code.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-09 12:05:13 +00:00
Snider
3fcefd5edc refactor: swap pkg/repos import to go-scm/repos
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-06 13:48:08 +00:00
Snider
278e89e292 refactor: swap pkg/{io,log} imports to go-io/go-log
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-06 12:35:24 +00:00
Snider
8e8d356616 refactor: use core/go-i18n module instead of core/go/pkg/i18n
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-06 09:09:07 +00:00
Claude
31985fa801
chore: use slices.Sorted(maps.Keys()) for ordered iteration 2026-02-24 15:45:03 +00:00
Claude
f4848deda6
chore: sort.Strings → slices.Sort 2026-02-24 15:44:09 +00:00
Claude
efa2f59e6e
chore: replace interface{} with any (Go 1.18+ alias) 2026-02-24 15:37:42 +00:00
Snider
f9eb54b856 refactor: modernise to Go 1.26 — iterators, slices, maps, strings
- Add ParsePlaybookIter, ParseTasksIter, GetHostsIter, AllHostsIter (ansible)
- Add ListTemplatesIter (container), TargetsIter (build), LanguagesIter (sdk)
- Replace sort.Slice with slices.SortFunc across cmd/dev, cmd/qa, cmd/monitor, cmd/setup
- Replace manual map-key-sort with slices.Sorted(maps.Keys(...))
- Replace strings.Split with strings.SplitSeq where result is iterated (devkit)
- Replace range-over-int in complexity_test, ansible/modules, devops
- Remove redundant manual min() in favour of built-in
- 22 files, all tests pass

Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-23 06:24:37 +00:00
Snider
ac6cff9b18 refactor: migrate CLI imports from core/go to core/cli
Update 58 files from forge.lthn.ai/core/go/pkg/cli to
forge.lthn.ai/core/cli/pkg/cli. Also fix pre-existing broken
imports: cmd/workspace → go-agentic, cmd/dev → self-reference.

Resolves circular dependency that caused qa docblock stub in core/go.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-22 23:28:58 +00:00
Snider
1c27bc4ca9 feat: absorb dev tooling commands from CLI
cmd/dev — multi-repo workflow (work, push, pull, commit, health)
cmd/setup — project bootstrap, CI, GitHub config
cmd/qa — code quality, review, docblock checking
cmd/docs — docs scan/sync/list
cmd/gitcmd — git helpers
cmd/monitor — monitoring

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-21 21:45:58 +00:00