Commit graph

88 commits

Author SHA1 Message Date
Virgil
c6fd135239 fix(core): harden remaining nil-safe rendering paths
All checks were successful
Security Scan / security (push) Successful in 10s
Test / test (push) Successful in 50s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-30 00:09:50 +00:00
Virgil
cae46f9c61 chore(codegen): remove panic exits from cli path
All checks were successful
Security Scan / security (push) Successful in 9s
Test / test (push) Successful in 45s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-29 23:45:41 +00:00
Virgil
0318d73a12 fix(core): harden nil-safe rendering paths
All checks were successful
Security Scan / security (push) Successful in 15s
Test / test (push) Successful in 43s
- guard nil receivers and nodes in core render flows
- make Render() safe for nil input
- add compile-time Node contract for Responsive

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-29 23:10:48 +00:00
8c7a9de546 Merge pull request '[agent/codex] Update specs/codegen/RFC.md from codegen/*.go. Document ever...' (#13) from agent/ax-review--banned-imports--test-naming into dev
All checks were successful
Security Scan / security (push) Successful in 9s
Test / test (push) Successful in 56s
2026-03-27 21:50:48 +00:00
Virgil
33d9e0c516 docs(specs): add codegen RFC
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-27 21:50:33 +00:00
adc9403883 Merge pull request '[agent/codex] A specs/ folder has been injected into this workspace with R...' (#12) from agent/ax-review--banned-imports--test-naming into dev
All checks were successful
Security Scan / security (push) Successful in 7s
Test / test (push) Successful in 44s
2026-03-27 19:56:49 +00:00
Virgil
f21562c555 docs: add generated package specs
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-27 19:56:29 +00:00
Claude
adcb98ee2f
chore: bump i18n v0.2.0 → v0.2.1
All checks were successful
Security Scan / security (push) Successful in 7s
Test / test (push) Successful in 1m35s
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 07:26:33 +00:00
44e3478be0 Merge pull request '[agent/codex] Full AX v0.8.0 compliance review. Read CODEX.md and .core/re...' (#11) from agent/ax-review--banned-imports--test-naming into dev
All checks were successful
Security Scan / security (push) Successful in 8s
Test / test (push) Successful in 50s
2026-03-27 04:56:29 +00:00
Virgil
11f18a24d2 fix(tests): complete ax naming compliance
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-27 04:55:58 +00:00
1c61fde5fc Merge pull request '[agent/codex] VERIFICATION PASS — report findings only. grep ALL .go fil...' (#10) from agent/ax-review--banned-imports--test-naming into dev
All checks were successful
Security Scan / security (push) Successful in 11s
Test / test (push) Successful in 46s
2026-03-27 03:17:33 +00:00
Virgil
df5035c3c4 chore: verification pass
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-27 03:16:36 +00:00
df19b84051 Merge pull request '[agent/codex] AX v0.8.0 polish pass. Fix ALL violations — banned imports...' (#9) from agent/ax-review--banned-imports--test-naming into dev
All checks were successful
Security Scan / security (push) Successful in 8s
Test / test (push) Successful in 1m31s
2026-03-26 18:12:42 +00:00
Virgil
3616ad3a76 chore: polish ax v0.8.0 conventions
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-26 18:12:06 +00:00
2a5bd5cbba Merge pull request '[agent/codex] Upgrade this package to dappco.re/go/core v0.8.0-alpha.1. Re...' (#8) from agent/ax-review--banned-imports--test-naming into dev
All checks were successful
Security Scan / security (push) Successful in 9s
Test / test (push) Successful in 1m31s
2026-03-26 15:24:50 +00:00
Virgil
b8d06460d6 refactor(core): upgrade to v0.8.0-alpha.1
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-26 15:24:16 +00:00
Virgil
0e976b3a87 fix(wasm): keep server i18n out of js builds
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-26 11:31:31 +00:00
Virgil
8a3f28aff3 fix(conventions): isolate banned imports and clarify tests
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-26 11:15:24 +00:00
b3f622988d Merge pull request '[agent/claude] Update go.mod require lines from forge.lthn.ai to dappco.re ...' (#3) from agent/update-go-mod-require-lines-from-forge-l into main
Some checks failed
Security Scan / security (push) Successful in 9s
Test / test (push) Failing after 22s
2026-03-22 01:28:48 +00:00
Snider
c525437ed6 refactor(module): migrate module path from forge.lthn.ai to dappco.re
Some checks failed
Security Scan / security (pull_request) Successful in 9s
Test / test (pull_request) Failing after 20s
Update module path from forge.lthn.ai/core/go-html to dappco.re/go/core/html.
Migrate all .go import paths, update dependency versions (core v0.5.0,
log v0.1.0, io v0.2.0), and add replace directives for local development.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-22 01:28:30 +00:00
Snider
666e3a68c6 Merge remote-tracking branch 'github/dev'
All checks were successful
Security Scan / security (push) Successful in 8s
Test / test (push) Successful in 1m40s
2026-03-22 00:57:15 +00:00
Snider
913bbb555a Merge remote-tracking branch 'origin/main' 2026-03-22 00:57:15 +00:00
Snider
63714ec9a1 chore: sync dependencies for v0.1.8
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 17:55:33 +00:00
Snider
d8525255e0 chore: sync dependencies for v0.1.7
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 17:50:17 +00:00
Snider
0607c5b517 ci: add Core ecosystem CI workflow with CodeRabbit auto-fix
Uses dAppCore/build actions for test, auto-fix on CodeRabbit changes,
and auto-merge on CodeRabbit approval.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 14:05:43 +00:00
ba26232b27 Merge pull request '[agent/claude:opus] DX audit and fix. 1) Review CLAUDE.md — update any outdate...' (#1) from agent/dx-audit-and-fix--1--review-claude-md into main
All checks were successful
Security Scan / security (push) Successful in 11s
Test / test (push) Successful in 48s
2026-03-17 08:21:27 +00:00
Snider
e532c219b9 fix(dx): update CLAUDE.md size gate, sync Makefile limit, add coverage tests
All checks were successful
Security Scan / security (pull_request) Successful in 7s
Test / test (pull_request) Successful in 38s
- CLAUDE.md: correct WASM raw size gate from 3 MB to 3.5 MB (matches size_test.go)
- CLAUDE.md: document error handling (log.E) and file I/O (coreio.Local) conventions
- Makefile: sync WASM_RAW_LIMIT to 3670016 (3.5 MB) to match size_test.go
- Tests: add coverage for NewContextWithService, Attr through wrapper nodes,
  Unless(true), and Text.Render with i18n service — core package 95.8% → 99.4%

No fmt.Errorf or os.ReadFile/os.WriteFile violations found.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 08:21:15 +00:00
Snider
44b3f77806 chore: sync dependencies for v0.1.6
All checks were successful
Security Scan / security (push) Successful in 12s
Test / test (push) Successful in 1m43s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-16 22:20:53 +00:00
Snider
6e59bf8bf8 refactor(conventions): replace os.ReadFile with coreio.Local, fmt.Errorf with log.E
All checks were successful
Security Scan / security (push) Successful in 7s
Test / test (push) Successful in 1m33s
Replace os.ReadFile in cmd/wasm/size_test.go with coreio.Local.Read().
Replace fmt.Errorf/errors.New with log.E() in codegen, cmd/wasm/register,
and cmd/codegen. Add forge.lthn.ai/core/go-io as a dependency.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-16 19:17:34 +00:00
Snider
2d16ce9d69 fix(conventions): alias stdlib io, add interface checks, use go-log
All checks were successful
Security Scan / security (push) Successful in 7s
Test / test (push) Successful in 1m34s
- Alias stdlib `io` as `goio` in cmd/codegen/main.go to follow project conventions
- Add compile-time Node interface checks for all node types in node.go
  and Layout in layout.go
- Replace fmt.Fprintf stderr logging with go-log in cmd/codegen/main.go
- Replace fmt.Println with go-log in cmd/wasm/register.go

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-15 16:40:39 +00:00
Snider
176ef74dfd chore: sync go.mod dependencies
All checks were successful
Security Scan / security (push) Successful in 11s
Test / test (push) Successful in 1m58s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-15 15:36:04 +00:00
Snider
050f8d9967 chore: add .core/ and .idea/ to .gitignore
All checks were successful
Security Scan / security (push) Successful in 9s
Test / test (push) Successful in 50s
2026-03-15 10:17:49 +00:00
Snider
253cc75cf6 docs: remove completed Phase 4 plan files
All checks were successful
Security Scan / security (push) Successful in 7s
Test / test (push) Successful in 42s
CoreDeno sidecar fully implemented in core/ts.
Web Component codegen and WASM registration in go-html.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-14 08:25:06 +00:00
Snider
782edd0583 docs: mark Phase 4 CoreDeno/WebComponents plans as not yet implemented
Some checks are pending
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
CoreDeno sidecar, manifest loader, gRPC proto definitions, and
.core/view.yml discovery are not yet built. Codegen and WASM exist
but the Phase 4 vision is future work.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-14 08:22:16 +00:00
Snider
27c0d1fd09 docs: add CLAUDE.md project instructions
All checks were successful
Security Scan / security (push) Successful in 11s
Test / test (push) Successful in 38s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-13 13:38:01 +00:00
Snider
5bbacc54fe docs: add human-friendly documentation
All checks were successful
Security Scan / security (push) Successful in 7s
Test / test (push) Successful in 42s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-11 13:02:40 +00:00
Snider
473fda5894 security: use html.EscapeString for XSS protection in rendering
All checks were successful
Security Scan / security (push) Successful in 9s
Test / test (push) Successful in 46s
Replace manual string-replace escaping with stdlib html.EscapeString.
Escape tag names and attribute keys in elNode and Layout rendering.
Improve Attr() to traverse wrapper nodes (If, Unless, Entitled).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 08:29:54 +00:00
Snider
77dd329b01 chore: add .core/ build and release configs
All checks were successful
Security Scan / security (push) Successful in 7s
Test / test (push) Successful in 37s
Add go-devops build system configuration for standardised
build, test, and release workflows across the Go ecosystem.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-06 18:52:36 +00:00
Snider
11561aaaa0 chore: remove boilerplate Taskfile
All checks were successful
Security Scan / security (push) Successful in 6s
Test / test (push) Successful in 1m33s
All tasks (test, build, lint, fmt, vet, cov) are handled natively
by `core go` commands. Taskfile was redundant wrapper.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-06 14:45:49 +00:00
Snider
ffb3b9f4cd chore: bump forge.lthn.ai dep versions to latest tags
All checks were successful
Security Scan / security (push) Successful in 8s
Test / test (push) Successful in 2m43s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-26 05:34:23 +00:00
Snider
3ea5041375 fix: bump WASM raw size limit to 3.5MB for Go 1.26 runtime growth
All checks were successful
Security Scan / security (push) Successful in 15s
Test / test (push) Successful in 2m47s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-23 07:59:46 +00:00
Snider
95d83f52b3 chore: bump forge.lthn.ai dep versions to latest tags
Some checks failed
Security Scan / security (push) Successful in 15s
Test / test (push) Failing after 2m13s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-23 06:49:42 +00:00
Snider
13669defcd chore: add Go repo norms (badges, contributing, lint, taskfile, editorconfig)
Some checks are pending
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-23 06:45:38 +00:00
Snider
2ef2871b1e chore: refresh go.sum after upstream tag updates
Some checks are pending
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-23 06:35:19 +00:00
Snider
29bd63d751 fix: add stub main() for non-WASM builds in cmd/wasm
Some checks are pending
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
The WASM main.go is gated behind //go:build js && wasm, leaving
register.go (//go:build !js) as the only file on native builds —
but it had no main(). Adds a stub that prints a usage hint.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-23 06:31:14 +00:00
Snider
78d5b45b0c feat: modernise to Go 1.26 — iterators, slices/maps, EachSeq
Some checks failed
Security Scan / security (push) Successful in 10s
Test / test (push) Failing after 36s
- Add EachSeq[T](iter.Seq[T], fn) for iterator-based template rendering
- Use slices.Collect(maps.Keys()) + slices.Sort for deterministic attr output
- Use strings.SplitSeq in codegen TagToClassName and path parsing
- Use range over int in layout and pipeline loops
- Refresh go.sum

Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-23 05:11:22 +00:00
Claude
70980d7105
ci: add Forgejo Actions test and security scan workflows
Some checks failed
Security Scan / security (push) Successful in 9s
Test / test (push) Failing after 23s
Uses reusable workflows from core/go-devops for Go testing
(with race detector and coverage) and security scanning
(govulncheck, gitleaks, trivy).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 03:28:02 +00:00
Claude
7598b0e568
chore: refresh go.sum after upstream tag updates
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 23:36:25 +00:00
Claude
b986c6925d
chore: sync workspace dependency versions
Run go work sync to align dependency versions across workspace.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 21:41:54 +00:00
Snider
a905850b0b refactor: apply go fix modernizers for Go 1.26
Automated fixes: interface{} → any, range-over-int, t.Context(),
wg.Go(), strings.SplitSeq, strings.Builder, slices.Contains,
maps helpers, min/max builtins.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-22 21:00:16 +00:00