Skip to content

Supported platforms and verification limits ​

SurfaceLoom is an experimental framework with no stable API guarantee. A declared interface, a contract test, and a live test establish different things.

Evidence levels ​

LevelMeaning
declaredAn interface, manifest, or implementation exists
contract-testedAutomated protocol, fake, or in-memory behavior tests provide evidence
live-fixture-testedA real backend operated a repository-owned neutral fixture
target-app-testedRecorded execution against a real product adapter provides evidence

Current public scope ​

AreaWhat is establishedImportant limit
Browser approval workflowReal Chrome/Chromium, Playwright v3, approval/effect assertions, cleanup, and Reporter v3 evidenceDeterministic repository-owned reference agent
Core, Reporter, service, JudgeCross-platform contracts, execution, reporting, service/MCP, and evidence-bound Judge adaptersPrimarily contract-tested; real model use is explicit opt-in
Windows nativeSeparate C# client-to-UIA fixture with real WPF lifecycle CasesDoes not prove the TypeScript-to-UIA path
macOS nativeSwift AX/AppKit and native-host contracts, including a subprocess handshakeNo live TypeScript-to-AX proof through TCC
Component catalogQueryable, contract-checked manifestsA manifest does not establish executable component behavior
Real target productsNo public target-app-tested claimProduct adapters and credentials stay downstream

The detailed capability matrix records the source and test evidence. The framework SSOT owns execution semantics and the roadmap. Planned work is not delivered capability.

Installation and execution boundaries ​

  • All nine TypeScript packages are private and unpublished; use a repository checkout.
  • The default verified example does not require an LLM API key or an external service.
  • Real models, real external effects, invasive permission flows, parallelism, sharding, and watch mode are outside the default verified path.
  • Native live GUI tests require a suitable interactive desktop and explicit permissions. The framework does not automatically accept system permission prompts.
  • The browser backend cleans up processes it owns and does not take over your existing browser session.
  • A timeout bounds waiting; it does not prove an uncooperative task has stopped. Cleanup needs its own evidence.

Choosing an entry point ​

Start with the browser showcase to see the strongest public end-to-end example. For platform setup and integration contracts, use the reference index. Review the security policy before running real tools or sharing captured evidence.

Experimental framework · MIT licensed · No stable API guarantee