Skip to content

fix(javascript): support explicit browser host grants - #132

Merged
howlcipher merged 1 commit into
mainfrom
fix/howl-e2e-ux-001-browser-capabilities
Oct 12, 2026
Merged

howlcipher merged 1 commit into
mainfrom
fix/howl-e2e-ux-001-browser-capabilities

Conversation

@howlcipher

Copy link
Copy Markdown
Owner

HowlBoard could pass its backend tests while its browser never sent an API request: generated fetch grants read Node process.env, and bootstrap error handling called process.exit in browsers. The JavaScript helper now supports an explicit host browser grant while keeping the Node environment authoritative. Missing, invalid, empty, and unrelated grants still deny before fetch; browser bootstrap preserves the original error.

Verification: five browser-context cases failed before repair. The JavaScript suite passes, including real Node precedence and original-error identity regressions; full go test ./..., go vet ./..., go build ./..., formatting, SEO, and the eight benchmark harness tests pass. Claude independently reviewed security/correctness and returned CLEAN; its suggested Node precedence/error identity coverage and documentation clarifications were added. Actual HowlBoard browser tests pass at desktop 1280px and mobile 390px with the paired consumer changes. No VM, interpreter, filesystem, or process policy was weakened.

Test impact: retain existing Node fetch/host-capability coverage; add generated-code browser denial and allowed-request contracts plus Node authority and error identity invariants. Browser grants are live page configuration, not an OS sandbox or deployment authority.

@howlcipher
howlcipher merged commit 7631ce5 into main Oct 12, 2026
1 check passed
@howlcipher
howlcipher deleted the fix/howl-e2e-ux-001-browser-capabilities branch October 12, 2026 14:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant