Agentic WebView is in breaking development. Changes should strengthen the typed architecture instead of restoring prototype compatibility.
Use JDK 17, Android SDK 37, and Node 20.
cd web-runtime
npm ci
npm run check
cd ..
node scripts/validate-architecture.mjs
node scripts/validate-doc-links.mjs
./gradlew check :browser-api:jar :agent-tools:jar :integrations:jsonrpc:jar :integrations:koog:jar :browser-webview:assembleRelease :browser-compose:assembleRelease :samples:android:assembleDebug
node scripts/check-artifact-sizes.mjs --require-builtDeterministic tests are required for pull requests. Emulator and live-agent tests must remain separate from deterministic SDK correctness checks.
browser-apiis pure Kotlin and cannot depend on Android UI or an agent framework.browser-webviewimplementsbrowser-apiand owns all WebView internals.browser-composeonly adapts host ownership and lifecycle.agent-toolsdepends on public contracts, never the Android implementation.- framework adapters only translate definitions, JSON arguments, and results.
web-runtimecommunicates through the versioned protocol only.
- Preserve document/frame scoping and structured error behavior.
- Register runtime requests before dispatch and terminate each request exactly once.
- Treat webpage text as untrusted data; do not interpolate it into authority-bearing prompts.
- Add fixture coverage for frames, Shadow DOM, controlled inputs, stale references, and protocol failures when relevant.
- Modify TypeScript source and rebuild; never edit
agentic_runtime.min.jsdirectly. - Do not add an external dependency without prior maintainer agreement.
- Update canonical Markdown docs in
docs/; the website should link to those sources rather than fork examples.
Explain the public behavior, failure modes, tests, security impact, and any protocol or artifact-size change. Protocol-breaking changes require a version bump and updated fixtures under protocol-fixtures/.