From b0428256bd0067540f22b19f6b897583e6341e00 Mon Sep 17 00:00:00 2001 From: Elijah Duffy Date: Fri, 23 Oct 2026 14:46:56 -0700 Subject: [PATCH] chore: add module, license and repository guides Co-Authored-By: Claude Sonnet 5.5 --- AGENTS.md | 9 +++++++++ CLAUDE.md | 1 + LICENSE | 28 ++++++++++++++++++++++++++++ README.md | 28 ++++++++++++++++++++++++++++ go.mod | 8 ++++++++ go.sum | 4 ++++ 6 files changed, 78 insertions(+) create mode 100644 AGENTS.md create mode 100644 CLAUDE.md create mode 100644 LICENSE create mode 100644 go.mod create mode 100644 go.sum diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..ce6ee12 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,9 @@ +# AGENTS.md + +Go module `go.auvem.com/corestack`. Reading map: + +- Build and test: `go build ./...`, `go vet ./...`, `go test -race ./...`; format with `gofmt -w .`. +- Docs format (the spec `docs check` implements): `docs/docs-format.md`. +- Check records: `go run ./cmd/docs check`. Create one: `go run ./cmd/docs new adr|plan "Title"`. +- Decisions live in `docs/adr/`, plans in `docs/plans/`. Records are permanent; never rename them. +- Dependencies are limited to `go.yaml.in/yaml/v3` and `github.com/yuin/goldmark`. diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..8b7cbf4 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1 @@ +See [AGENTS.md](AGENTS.md). diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..61c60c3 --- /dev/null +++ b/LICENSE @@ -0,0 +1,28 @@ +BSD 3-Clause License + +Copyright (c) 2026, Elijah Duffy + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/README.md b/README.md index a9ecfc1..a8fa370 100644 --- a/README.md +++ b/README.md @@ -1 +1,29 @@ # corestack go + +Shared Go building blocks. The first one is `docs`, a checker for architecture decision records (ADRs) and implementation plans. + +## docs + +Install: + +```sh +go install go.auvem.com/corestack/cmd/docs@latest +``` + +Use, from a repository root: + +```sh +docs new adr "Use Example Queue for background jobs" # creates docs/adr/.md +docs new plan "Adopt Example Queue" # creates docs/plans/.md +docs check [--root DIR] # prints path:line: message; exit 1 on problems +``` + +The format is specified in [docs/docs-format.md](docs/docs-format.md); that document is the complete rule set. Exit status is `0` when every record is valid, `1` when problems are reported and `2` for usage errors. + +## Status + +No support is guaranteed. Breaking changes, including to the format rules, may happen before 1.0 and are listed in the release notes. + +## License + +BSD-3-Clause, see [LICENSE](LICENSE). diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..0218f6a --- /dev/null +++ b/go.mod @@ -0,0 +1,8 @@ +module go.auvem.com/corestack + +go 1.27.1 + +require ( + github.com/yuin/goldmark v1.8.6 + go.yaml.in/yaml/v3 v3.0.5 +) diff --git a/go.sum b/go.sum new file mode 100644 index 0000000..1b18895 --- /dev/null +++ b/go.sum @@ -0,0 +1,4 @@ +github.com/yuin/goldmark v1.8.6 h1:d0VcaP1sx9GkFVkoW+KtggpGi2KZ965i14b0+bDQST4= +github.com/yuin/goldmark v1.8.6/go.mod h1:ip/1k0VRfGynBgxOz0yCqHrbZXhcjxyuS66Brc7iBKg= +go.yaml.in/yaml/v3 v3.0.5 h1:N6y/pJk8buWs9NY5ERU2HSMfm+IuD/OtfdAnq6kESPw= +go.yaml.in/yaml/v3 v3.0.5/go.mod h1:HVTZu1O7/Vkt2N+BFy8Zza+lnLsABggaTM2ZpNIGuKg=