Brings the portable pieces of mini's feat/main-session-work onto dev:
- context.go: Context.Metadata field — alias for Data, references the same
underlying map. Both fields interchangeable at read/write sites.
- responsive.go: responsiveVariant gains an optional media field for CSS
media-query hints (e.g. "(min-width: 1024px)"); new Responsive.Add(name,
layout, media...) method. Existing Variant(name, layout) becomes a thin
alias over Add.
- go.mod: drop stale dappco.re/go/core/{inference,log} indirect requires
(refreshed by go mod tidy — forge.lthn.ai/core/{go-inference,go-log}).
Mini's local deps/go-i18n/reversal grammar-vector rewrite does not apply to
dev: dev consumes reversal as an external package (dappco.re/go/core/i18n/reversal)
rather than an internal fork. That portion of the branch is left on
feat/main-session-work for future re-integration.
Verified: GOWORK=off go build ./... + go test ./... passes.
Co-Authored-By: Virgil <virgil@lethean.io>
Introduces textNode that renders through go-i18n's T() function with
automatic HTML escaping for safe-by-default output. Adds escapeHTML
utility, NewContextWithService for explicit service binding, and
Entitlements field on Context for upcoming conditional rendering.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Introduces the go-html module with a Node rendering interface, Raw and El
constructors, void element handling, and attribute escaping. Includes a
minimal Context stub and tests for all node types.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>