No description
Find a file
Snider da7e55d920
Some checks failed
CI / test (push) Has been cancelled
CI / auto-fix (push) Has been cancelled
CI / auto-merge (push) Has been cancelled
feat(go): add service.go — Core service registration (Mantis #1336)
Wires the cache.Cache surface into Core's service-registration plumbing
behind a *core.ServiceRuntime[CacheConfig]. NewService() factory builds
the underlying *Cache via the existing New() constructor and returns a
*Service ready for c.Service() registration.

Action handlers exposed via OnStartup:
  cache.delete       — opts.key
  cache.delete_many  — opts.keys ([]string)
  cache.path         — opts.key → on-disk path
  cache.invalidate   — opts.trigger
  cache.clear_scope  — opts.origin

Get/Set/SetBinary/GetBinary stay direct method calls because they need
typed `dest any` arguments that don't round-trip through Options
cleanly.

Triplets + examples included (8 audit findings → 0; verdict COMPLIANT).

Co-authored-by: Hephaestus <hephaestus@lthn.ai>
2026-05-01 16:13:27 +01:00
.core chore: add .core/ build and release configs 2026-03-06 18:52:36 +00:00
.github/workflows ci: add Core ecosystem CI workflow with CodeRabbit auto-fix 2026-03-17 14:05:26 +00:00
docs Sync cache docs with implemented API 2026-04-15 09:23:10 +01:00
external chore(repo): refresh submodules + go.work hygiene (Phase 2 cascade unblock) 2026-05-01 09:39:17 +01:00
go feat(go): add service.go — Core service registration (Mantis #1336) 2026-05-01 16:13:27 +01:00
.gitignore chore(cache): migrate to dappco.re vanity import path 2026-03-22 01:24:52 +00:00
.gitmodules refactor(go): restructure to /go/ subtree + audit COMPLIANT (Mantis #1227) 2026-04-30 21:44:36 +01:00
.woodpecker.yml ci: woodpecker pipeline (Go) — golangci-lint/eslint/phpstan + sonar.lthn.sh 2026-04-29 00:03:00 +01:00
AGENTS.md refactor(go): restructure to /go/ subtree + audit COMPLIANT (Mantis #1227) 2026-04-30 21:44:36 +01:00
CLAUDE.md docs(cache): fix module path note 2026-04-15 09:28:50 +01:00
go.work chore(repo): refresh submodules + go.work hygiene (Phase 2 cascade unblock) 2026-05-01 09:39:17 +01:00
LICENCE chore: add EUPL-1.2 LICENCE file (UK English canonical) 2026-05-01 08:33:40 +01:00
README.md refactor(go): restructure to /go/ subtree + audit COMPLIANT (Mantis #1227) 2026-04-30 21:44:36 +01:00
sonar-project.properties ci: woodpecker pipeline (Go) — golangci-lint/eslint/phpstan + sonar.lthn.sh 2026-04-28 23:33:16 +01:00
threats.md docs(cache): threat-model audit Section 3 (TOCTOU + invalidation race) (#924 Cerberus) 2026-04-25 12:32:14 +01:00

go-cache

dappco.re/go/cache provides a storage-agnostic cache backed by dappco.re/go/io media. It stores JSON entries, binary sidecars, scoped caches, and request/response metadata for HTTP cache workflows.

Development

The module lives in go/.

cd go
GOWORK=off GOPROXY=direct GOSUMDB=off go test -count=1 -short ./...

The repository is v0.9.0 audit-driven; the release contract is:

bash /Users/snider/Code/core/go/tests/cli/v090-upgrade/audit.sh .