go-netops/CLAUDE.md
Snider 38819660ef
All checks were successful
Security Scan / security (pull_request) Successful in 7s
Test / test (pull_request) Successful in 1m38s
fix(unifi): DX audit — fix tests, add missing Commit(), improve coverage
- Fix SaveConfig: add cfg.Commit() so credentials actually persist to disk
- Fix TestResolveConfig and TestNewFromConfig: isolate from real config
  file by setting HOME to temp dir, preventing env/config bleed
- Add RouteTypeName, GetRoutes, and GetNetworks unit tests with httptest
  mocks (coverage 39% → 55%)
- Update CLAUDE.md: add error handling and test isolation conventions
- Update docs: fix Go version (1.25 → 1.26), remove stale replace
  directive references, add cmd/unifi/ to architecture diagram

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 08:44:07 +00:00

994 B

CLAUDE.md

UniFi network controller API client for querying devices, clients, networks, routes, and sites.

Module: forge.lthn.ai/core/go-netops

Commands

go test ./...               # run all tests
go test -race ./...         # race detector (required before commit)
go test -v -run Name ./...  # single test
go vet ./...                # vet check

Standards

  • UK English
  • go test -race ./... and go vet ./... must pass before commit
  • Conventional commits: type(scope): description
  • Co-Author: Co-Authored-By: Virgil <virgil@lethean.io>
  • Errors must use log.E() from go-log, never fmt.Errorf
  • Config tests must isolate from real ~/.core/config.yaml via t.Setenv("HOME", t.TempDir())

Docs

  • docs/architecture.md — package structure, key types, design decisions, API patterns
  • docs/development.md — prerequisites, build/test, test patterns, coding standards
  • docs/history.md — extraction origin, known limitations, future plans