Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ebe2079a83 |
@@ -27,7 +27,7 @@ problem, usable independently or together.
|
||||
### Module Path
|
||||
|
||||
```
|
||||
git.wntrmute.dev/kyle/mcdsl
|
||||
git.wntrmute.dev/mc/mcdsl
|
||||
```
|
||||
|
||||
### Dependencies
|
||||
@@ -39,7 +39,7 @@ git.wntrmute.dev/kyle/mcdsl
|
||||
| `github.com/pelletier/go-toml/v2` | TOML config parsing |
|
||||
| `google.golang.org/grpc` | gRPC server |
|
||||
| `github.com/klauspost/compress/zstd` | Zstandard compression for archives |
|
||||
| `git.wntrmute.dev/kyle/mcias/clients/go` | MCIAS client library |
|
||||
| `git.wntrmute.dev/mc/mcias/clients/go` | MCIAS client library |
|
||||
|
||||
All dependencies are already used by existing services. MCDSL adds no new
|
||||
dependencies to the platform.
|
||||
|
||||
12
CLAUDE.md
12
CLAUDE.md
@@ -6,7 +6,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
|
||||
|
||||
MCDSL (Metacircular Dynamics Standard Library) is the shared Go library for the Metacircular platform. It extracts common patterns from production services into reusable, tested packages. MCDSL is not a deployed service — it is imported by other services.
|
||||
|
||||
**Module path:** `git.wntrmute.dev/kyle/mcdsl`
|
||||
**Module path:** `git.wntrmute.dev/mc/mcdsl`
|
||||
|
||||
## Build Commands
|
||||
|
||||
@@ -44,11 +44,11 @@ Services import individual packages with aliased imports:
|
||||
|
||||
```go
|
||||
import (
|
||||
mcdslauth "git.wntrmute.dev/kyle/mcdsl/auth"
|
||||
mcdsldb "git.wntrmute.dev/kyle/mcdsl/db"
|
||||
mcdslconfig "git.wntrmute.dev/kyle/mcdsl/config"
|
||||
"git.wntrmute.dev/kyle/mcdsl/httpserver"
|
||||
"git.wntrmute.dev/kyle/mcdsl/grpcserver"
|
||||
mcdslauth "git.wntrmute.dev/mc/mcdsl/auth"
|
||||
mcdsldb "git.wntrmute.dev/mc/mcdsl/db"
|
||||
mcdslconfig "git.wntrmute.dev/mc/mcdsl/config"
|
||||
"git.wntrmute.dev/mc/mcdsl/httpserver"
|
||||
"git.wntrmute.dev/mc/mcdsl/grpcserver"
|
||||
)
|
||||
```
|
||||
|
||||
|
||||
@@ -91,11 +91,11 @@ Remaining mcat-specific code:
|
||||
- `web/` — templates and static assets (unchanged)
|
||||
|
||||
Dependencies removed:
|
||||
- `git.wntrmute.dev/kyle/mcias/clients/go` (mcdsl/auth handles MCIAS directly)
|
||||
- `git.wntrmute.dev/mc/mcias/clients/go` (mcdsl/auth handles MCIAS directly)
|
||||
- `github.com/pelletier/go-toml/v2` (now indirect via mcdsl/config)
|
||||
|
||||
Dependencies added:
|
||||
- `git.wntrmute.dev/kyle/mcdsl` (local replace directive)
|
||||
- `git.wntrmute.dev/mc/mcdsl` (local replace directive)
|
||||
|
||||
Result: vet clean, lint 0 issues, builds successfully.
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ code first).
|
||||
|
||||
## Phase 0: Project Setup
|
||||
|
||||
- [ ] Initialize Go module (`git.wntrmute.dev/kyle/mcdsl`)
|
||||
- [ ] Initialize Go module (`git.wntrmute.dev/mc/mcdsl`)
|
||||
- [ ] Create `.golangci.yaml` (matching platform standard)
|
||||
- [ ] Create `Makefile` with standard targets (build, test, vet, lint, all)
|
||||
- [ ] Create `.gitignore`
|
||||
|
||||
10
README.md
10
README.md
@@ -25,7 +25,7 @@ it and provide only their service-specific logic.
|
||||
## Module Path
|
||||
|
||||
```
|
||||
git.wntrmute.dev/kyle/mcdsl
|
||||
git.wntrmute.dev/mc/mcdsl
|
||||
```
|
||||
|
||||
## Packages
|
||||
@@ -46,10 +46,10 @@ git.wntrmute.dev/kyle/mcdsl
|
||||
|
||||
```go
|
||||
import (
|
||||
"git.wntrmute.dev/kyle/mcdsl/auth"
|
||||
"git.wntrmute.dev/kyle/mcdsl/db"
|
||||
"git.wntrmute.dev/kyle/mcdsl/config"
|
||||
"git.wntrmute.dev/kyle/mcdsl/httpserver"
|
||||
"git.wntrmute.dev/mc/mcdsl/auth"
|
||||
"git.wntrmute.dev/mc/mcdsl/db"
|
||||
"git.wntrmute.dev/mc/mcdsl/config"
|
||||
"git.wntrmute.dev/mc/mcdsl/httpserver"
|
||||
)
|
||||
|
||||
// Load config with standard sections + service-specific fields.
|
||||
|
||||
@@ -20,7 +20,7 @@ import (
|
||||
|
||||
"github.com/klauspost/compress/zstd"
|
||||
|
||||
"git.wntrmute.dev/kyle/mcdsl/db"
|
||||
"git.wntrmute.dev/mc/mcdsl/db"
|
||||
)
|
||||
|
||||
// defaultExcludePatterns are always excluded from snapshots.
|
||||
|
||||
@@ -7,7 +7,7 @@ import (
|
||||
"path/filepath"
|
||||
"testing"
|
||||
|
||||
"git.wntrmute.dev/kyle/mcdsl/db"
|
||||
"git.wntrmute.dev/mc/mcdsl/db"
|
||||
)
|
||||
|
||||
// setupServiceDir creates a realistic /srv/<service>/ directory.
|
||||
|
||||
@@ -34,7 +34,7 @@ import (
|
||||
|
||||
"github.com/pelletier/go-toml/v2"
|
||||
|
||||
"git.wntrmute.dev/kyle/mcdsl/auth"
|
||||
"git.wntrmute.dev/mc/mcdsl/auth"
|
||||
)
|
||||
|
||||
// Base contains the configuration sections common to all Metacircular
|
||||
|
||||
2
go.mod
2
go.mod
@@ -1,4 +1,4 @@
|
||||
module git.wntrmute.dev/kyle/mcdsl
|
||||
module git.wntrmute.dev/mc/mcdsl
|
||||
|
||||
go 1.25.7
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ import (
|
||||
"google.golang.org/grpc/metadata"
|
||||
"google.golang.org/grpc/status"
|
||||
|
||||
"git.wntrmute.dev/kyle/mcdsl/auth"
|
||||
"git.wntrmute.dev/mc/mcdsl/auth"
|
||||
)
|
||||
|
||||
// MethodMap classifies gRPC methods for access control.
|
||||
|
||||
@@ -13,7 +13,7 @@ import (
|
||||
"google.golang.org/grpc/metadata"
|
||||
"google.golang.org/grpc/status"
|
||||
|
||||
"git.wntrmute.dev/kyle/mcdsl/auth"
|
||||
"git.wntrmute.dev/mc/mcdsl/auth"
|
||||
)
|
||||
|
||||
func mockMCIAS(t *testing.T) *httptest.Server {
|
||||
|
||||
@@ -10,7 +10,7 @@ import (
|
||||
|
||||
"google.golang.org/grpc"
|
||||
|
||||
"git.wntrmute.dev/kyle/mcdsl/db"
|
||||
"git.wntrmute.dev/mc/mcdsl/db"
|
||||
)
|
||||
|
||||
func TestHandlerHealthy(t *testing.T) {
|
||||
|
||||
@@ -13,7 +13,7 @@ import (
|
||||
|
||||
"github.com/go-chi/chi/v5"
|
||||
|
||||
"git.wntrmute.dev/kyle/mcdsl/config"
|
||||
"git.wntrmute.dev/mc/mcdsl/config"
|
||||
)
|
||||
|
||||
// Server wraps a chi router and an http.Server with the standard
|
||||
|
||||
@@ -9,7 +9,7 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"git.wntrmute.dev/kyle/mcdsl/config"
|
||||
"git.wntrmute.dev/mc/mcdsl/config"
|
||||
)
|
||||
|
||||
func testConfig() config.ServerConfig {
|
||||
|
||||
@@ -8,7 +8,7 @@ import (
|
||||
"io/fs"
|
||||
"net/http"
|
||||
|
||||
"git.wntrmute.dev/kyle/mcdsl/auth"
|
||||
"git.wntrmute.dev/mc/mcdsl/auth"
|
||||
)
|
||||
|
||||
// SetSessionCookie sets a session cookie with the standard Metacircular
|
||||
|
||||
@@ -9,7 +9,7 @@ import (
|
||||
"testing"
|
||||
"testing/fstest"
|
||||
|
||||
"git.wntrmute.dev/kyle/mcdsl/auth"
|
||||
"git.wntrmute.dev/mc/mcdsl/auth"
|
||||
)
|
||||
|
||||
func TestSetSessionCookie(t *testing.T) {
|
||||
|
||||
Reference in New Issue
Block a user