FAULTLINE
Deterministic browser failure reduction · WebMCP-native
READYWebMCP checkingr1

Causal debugging workbench

Reduce the failure. Keep the proof.

Load a browser failure, lock the condition that proves it, then let FAULTLINE minimize semantic units while preserving revision-bound evidence. The same deterministic engine is available to humans, browser APIs, and WebMCP agents.

ExecutionDeterministic
SurfaceBrowser + WebMCP
BoundarySandboxed
1

Load / edit case

Canonical source

Edit one source axis without losing the guarded revision history.

HTML · CSS · JS
Canonical source editorRevision-guarded writes
2

Define oracle

Live experiment

Measure one deterministic failure condition inside the isolated preview.

Used by “Set form value”; ignored by other action kinds.
Used by “Set checked state” for checkbox and radio controls.
For “Action sequence”, provide 1–8 ordered click, set_value, set_checked, or wait steps. Wait uses {"kind":"wait","durationMs":...}; total wait time is capped at 2000 ms.
3

Run / reduce

Reduction frontier

Probe one unit or automatically minimize an axis while preserving the failure.

0 units detected on active axisDeterministic ddmin
4

Evidence / export

Causal evidence trail

Every experiment remains tied to the exact revision that was actually tested.

No experiments yet.
    IntegrateBrowser API + WebMCP connection surfaceWebMCP tools

    Browser API

    The same canonical engine backs the UI and window.faultline. Inspect first, then load a complete case atomically or edit one axis with an expected revision.

    const state = await window.faultline.inspect()
    
    await window.faultline.loadCase({
      expectedRevision: state.revision,
      case: {
        html: '<main>...</main>',
        css: 'main { ... }',
        js: '...',
        oracle: {
          kind: 'dom_exists',
          selector: 'main',
          equals: true,
          action: { kind: 'none' }
        }
      }
    })
    
    await window.faultline.applySource({
      expectedRevision,
      targetAxis,
      source
    })

    WebMCP agent flow

    FAULTLINE exposes the registered WebMCP tool surface. Stale writes are rejected instead of silently mixing agent and human state.

    faultline_inspect
      ↓
    faultline_load_case({
      expectedRevision,
      case
    })
      ↓
    faultline_define_oracle
      ↓
    faultline_run
      ↓
    faultline_probe
      ↓
    faultline_reduce
      ↓
    faultline_autopilot
      ↓
    faultline_history / faultline_export