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.
Load / edit case
Canonical source
Edit one source axis without losing the guarded revision history.
Define oracle
Live experiment
Measure one deterministic failure condition inside the isolated preview.
Run / reduce
Reduction frontier
Probe one unit or automatically minimize an axis while preserving the failure.
Evidence / export
Causal evidence trail
Every experiment remains tied to the exact revision that was actually tested.
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