How To: Use the filepath Worker Alpha

Run the filepath-backed worker path through the site docs.

What it proves

  • Gateproof still runs the proof locally.
  • filepath runs one bounded worker task against the workspace repo clone.
  • filepath returns a unified patch.
  • Gateproof applies that patch locally and reruns the proof.

Current scope

  • This is a real hello-world witness.
  • It is not the default public worker path.
  • The built-in worker remains the stable demo path.

Required configuration

  • GATEPROOF_FILEPATH_ENDPOINT
    • Base filepath URL such as https://myfilepath.com
    • A full /api/workspaces/:id/run URL also works
  • GATEPROOF_FILEPATH_API_KEY
    • filepath API key for the target account
  • GATEPROOF_FILEPATH_WORKSPACE_ID
    • workspace pointing at a Gateproof checkout that includes examples/hello-world
  • GATEPROOF_FILEPATH_HARNESS_ID
    • filepath harness for the worker task
  • GATEPROOF_FILEPATH_MODEL
    • use openai/gpt-4o for the current witness

filepath account requirements

  • Save the model provider key inside filepath itself.
  • In the current setup, that means saving an OpenRouter key in filepath Settings.
  • If runs fail because the stored provider key is missing or unreadable, re-save it in filepath before retrying.

Run the witness

bun run example:hello-world:filepath-worker

What success looks like

  • filepath returns status: "success"
  • filepath returns a non-empty patch
  • Gateproof applies the patch locally with git apply
  • the hello-world gate reruns to green
  • the temp repo ends at hello from filepath

Current runtime truth

  • filepath worker runs execute against a fresh repo clone for the workspace
  • the run proves the returned patch contract and local materialization path
  • it does not require the filepath workspace itself to stay mutated after the run

Common failure modes

  • no patch returned
  • patch does not apply locally
  • patch escapes scope
  • workspace does not point at a compatible Gateproof checkout
  • filepath provider key is missing or unreadable