Snider
29e5d1bd37
Align webview console and evaluate behavior
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-15 16:47:59 +01:00
Snider
284d39de18
Align console warning types with RFC
2026-04-15 14:29:06 +01:00
Snider
75ed16743a
Align console handling with AX principles
2026-04-15 14:27:13 +01:00
Snider
f5d14bb39d
Align console capture with RFC semantics
2026-04-15 14:25:33 +01:00
Snider
f6e235d83e
Align webview behavior with RFC
2026-04-15 14:21:23 +01:00
Snider
d6fcd6a2f4
fix(console): defer limit trimming until append
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-15 14:19:00 +01:00
Snider
f4a094e87c
Align console filters with spec
2026-04-15 14:17:21 +01:00
Snider
3002b4801d
feat(webview): CDP history nav + deterministic console limits + exception text
...
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
- webview.go: back/forward navigation uses Page.getNavigationHistory +
navigateToHistoryEntry (bounds-checked, load-wait) — replaces deprecated
Page.goBackOrForward
- console.go + webview.go: console limits deterministic, clamp negative limits
to 0, zero-retention supported, error counting normalised, multiple
ConsoleWatcher filters compose as intersection
- webview.go + console.go + angular.go: JS exception text propagation, Angular
router/query param map[string]string per RFC
- audit_issue2_test.go + webview_test.go: history nav, exception text, filter
composition, retention trimming coverage
Verified: GOWORK=off go test ./... passes
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-14 18:35:10 +01:00
Snider
7a4450cf9f
feat(webview): console watcher additions + canonical type normalisation
...
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
Spark draft + opus-style fixes during integration:
- normalizeConsoleType applied consistently across FormatConsoleOutput
+ Errors/ErrorsAll + Warnings/WarningsAll iterators — previously raw
"warning" inputs missed the "warn" comparisons silently
- core.Trim instead of non-existent core.TrimSpace
Spark feature work preserved (Errors/Warnings iterators, formatted
console output, type normalisation helper).
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-14 15:09:57 +01:00
Virgil
e6a7ecf4f5
chore(webview): align console buffers with RFC defaults
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-03 07:37:51 +00:00
Claude
96f18346d9
feat: upgrade to core v0.8.0-alpha.1, replace banned stdlib imports
...
Security Scan / security (push) Successful in 8s
Test / test (push) Successful in 1m15s
Replace fmt, errors, strings, encoding/json with Core primitives.
Keep strings.EqualFold, json.NewEncoder (no core equivalents).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 13:53:43 +00:00
Virgil
dff3d576fa
fix(cdp): resolve issue 2 audit findings
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-23 07:34:16 +00:00
Snider
900cb750cf
fix(console): buffer trim panic when limit < 100, add unit tests
...
Security Scan / security (pull_request) Successful in 10s
Test / test (pull_request) Successful in 30s
CLAUDE.md: update error wrapping guidance to reflect coreerr.E() convention.
Console buffer trimming in both Webview.addConsoleMessage and
ConsoleWatcher.addMessage panicked with slice bounds out of range
when consoleLimit was smaller than 100. Use min(100, len) for safe
batch trimming.
Added 22 unit tests covering pure functions (FormatConsoleOutput,
containsString, findString, formatJSValue, getString), ConsoleWatcher
filter/count/handler logic, ExceptionWatcher operations, WaitAction
context handling, and buffer limit enforcement. Coverage: 3.2% → 16.1%.
DX audit findings:
- Error handling: clean (all coreerr.E(), no fmt.Errorf)
- File I/O: clean (no os.ReadFile/os.WriteFile — package uses HTTP/WS only)
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-17 08:54:22 +00:00
Snider
d0dd96d115
feat: modernise to Go 1.26 iterators and stdlib helpers
...
Security Scan / security (push) Successful in 9s
Test / test (push) Successful in 1m42s
Add iter.Seq iterators (MessagesAll, FilteredMessagesAll, ErrorsAll,
WarningsAll, ExceptionsAll, GetConsoleAll, QuerySelectorAllAll,
ListTargetsAll) for streaming. Use slices.Clone for handler copies,
range-over-int in findString.
Co-Authored-By: Gemini <noreply@google.com>
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-23 05:26:44 +00:00
Snider
095dada85c
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:17 +00:00
Snider
45f119b9ac
feat: extract go-webview from core/go pkg/webview
...
Chrome DevTools Protocol client for browser automation.
Zero external dependencies (stdlib only).
Module: forge.lthn.ai/core/go-webview
Co-Authored-By: Virgil <virgil@lethean.io>
2026-02-19 16:09:11 +00:00