No description
Find a file
Claude 97f9c758d1
chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests
- compose.go: remove fmt import, use local stringer interface + core.Sprint
- hooks.go: replace stdlib log with dappco.re/go/core/log
- localise.go: replace os.Getenv with core.Env
- loader.go: replace strings.CutPrefix with core.HasPrefix/TrimPrefix
- reversal/tokeniser.go: replace strings.Fields with local splitFields helper
- validate.go: rename sb → builder (AX naming)
- calibrate.go, classify.go: rename cfg → configuration (AX naming)
- numbers.go: rename local fmt variable → numberFormat
- All test files: add Good/Bad/Ugly triads per AX test naming convention

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-31 08:42:40 +01:00
.core chore: add .core/ build and release configs 2026-03-06 18:52:36 +00:00
.forgejo/workflows ci: add Forgejo Actions test and security scan workflows 2026-02-23 03:28:02 +00:00
docs chore: migrate to dappco.re vanity import path 2026-03-21 23:49:15 +00:00
integration feat: upgrade to core v0.8.0-alpha.1, replace banned stdlib imports 2026-03-30 05:35:51 +00:00
locales feat: add grammar table spec and French locale 2026-02-19 17:57:22 +00:00
reversal chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
.editorconfig chore: add Go repo norms (badges, contributing, lint, taskfile, editorconfig) 2026-02-23 06:45:39 +00:00
.gitignore chore: add .core/ and .idea/ to .gitignore 2026-03-15 10:17:49 +00:00
.golangci.yml chore: add Go repo norms (badges, contributing, lint, taskfile, editorconfig) 2026-02-23 06:45:39 +00:00
calibrate.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
calibrate_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
classify.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
classify_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
CLAUDE.md chore: migrate to dappco.re vanity import path 2026-03-21 23:49:15 +00:00
compose.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
compose_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
context.go feat: grammar-aware i18n module extracted from core 2026-02-16 19:51:27 +00:00
context_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
CONTRIBUTING.md chore: add Go repo norms (badges, contributing, lint, taskfile, editorconfig) 2026-02-23 06:45:39 +00:00
core_service.go feat: upgrade to core v0.8.0-alpha.1, replace banned stdlib imports 2026-03-30 05:35:51 +00:00
debug.go feat: grammar-aware i18n module extracted from core 2026-02-16 19:51:27 +00:00
debug_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
go.mod feat: upgrade to core v0.8.0-alpha.1, replace banned stdlib imports 2026-03-30 05:35:51 +00:00
go.sum feat: upgrade to core v0.8.0-alpha.1, replace banned stdlib imports 2026-03-30 05:35:51 +00:00
grammar.go feat: upgrade to core v0.8.0-alpha.1, replace banned stdlib imports 2026-03-30 05:35:51 +00:00
grammar_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
handler.go feat: upgrade to core v0.8.0-alpha.1, replace banned stdlib imports 2026-03-30 05:35:51 +00:00
handler_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
hooks.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
hooks_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
i18n.go feat: upgrade to core v0.8.0-alpha.1, replace banned stdlib imports 2026-03-30 05:35:51 +00:00
i18n_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
language.go feat: grammar-aware i18n module extracted from core 2026-02-16 19:51:27 +00:00
language_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
loader.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
loader_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
localise.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
localise_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
numbers.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
numbers_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
README.md chore: migrate to dappco.re vanity import path 2026-03-21 23:49:15 +00:00
REVIEW.md review: post-implementation findings for dual-class disambiguation 2026-02-19 16:50:18 +00:00
service.go feat: upgrade to core v0.8.0-alpha.1, replace banned stdlib imports 2026-03-30 05:35:51 +00:00
service_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
time.go feat: upgrade to core v0.8.0-alpha.1, replace banned stdlib imports 2026-03-30 05:35:51 +00:00
time_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
transform.go feat: grammar-aware i18n module extracted from core 2026-02-16 19:51:27 +00:00
transform_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
types.go feat: extend irregular verb coverage and add benchmarks 2026-02-19 17:41:29 +00:00
types_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
validate.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00
validate_test.go chore(ax): AX compliance sweep — banned imports, naming, Good/Bad/Ugly tests 2026-03-31 08:42:40 +01:00

Go Reference License: EUPL-1.2 Go Version

go-i18n

Grammar engine for Go. Provides forward composition primitives (PastTense, Gerund, Pluralize, Article, composite progress and label functions), a T() translation entry point with namespace key handlers, and a reversal engine that recovers base forms and grammatical roles from inflected text. The reversal package produces GrammarImprint feature vectors for semantic similarity scoring, builds reference domain distributions, performs anomaly detection, and includes a 1B model pre-sort pipeline for training data classification. Consumers bring their own translation keys; this library provides the grammatical machinery.

Module: dappco.re/go/core/i18n Licence: EUPL-1.2 Language: Go 1.25

Quick Start

import "dappco.re/go/core/i18n"

// Grammar primitives
fmt.Println(i18n.PastTense("delete"))   // "deleted"
fmt.Println(i18n.Gerund("build"))       // "building"
fmt.Println(i18n.Pluralize("file", 3))  // "files"

// Translation with auto-composed output
fmt.Println(i18n.T("i18n.progress.build"))  // "Building..."
fmt.Println(i18n.T("i18n.done.delete", "file"))  // "File deleted"

// Reversal: recover grammar from text
tokeniser := reversal.NewTokeniser()
tokens := tokeniser.Tokenise("deleted the files")
imprint := reversal.NewImprint(tokens)

Documentation

  • Architecture — grammar primitives, T() handlers, reversal engine, GrammarImprint, reference distributions, 1B pipeline
  • Development Guide — building, testing, grammar table structure (critical: do not flatten JSON)
  • Project History — completed phases and known limitations

Build & Test

go test ./...
go test -v ./reversal/
go test -bench=. ./...
go build ./...

Licence

European Union Public Licence 1.2 — see LICENCE for details.